Browse Source

统一事件列表格式

seimin 3 years ago
parent
commit
03b55e2cb4
1 changed files with 76 additions and 28 deletions
  1. 76 28
      src/views/incidentList.vue

+ 76 - 28
src/views/incidentList.vue

@@ -19,34 +19,74 @@
19
             @pulling-up="onPullingUp"
19
             @pulling-up="onPullingUp"
20
           >
20
           >
21
             <div class="conentBox">
21
             <div class="conentBox">
22
-              <div class="conent" v-for="item in items" @click="toIncidentDetails(item)">
22
+              <div
23
+                class="conent"
24
+                v-for="item in items"
25
+                @click="toIncidentDetails(item)"
26
+              >
23
                 <div class="head">
27
                 <div class="head">
24
                   <p>
28
                   <p>
25
                     <i class="iconfont icon-zuixinbaoxiu newPapir"></i>
29
                     <i class="iconfont icon-zuixinbaoxiu newPapir"></i>
26
-                    事件编号:{{item.incidentsign}}
30
+                    事件编号:{{ item.incidentsign }}
27
                     <span
31
                     <span
28
-                      :class="{'btn':true, 'daipingjia':item.state.name=='待评价', 'daijiedan':(item.state.name=='待接单'&&item.handlerUser&&!item.candidateGroups), 'daiqiangdan':(item.state.name=='待接单'&&!item.handlerUser&&item.candidateGroups), 'chulizhong':item.state.name=='处理中', 'yijiejue':item.state.name=='已解决', 'yiguanbi':item.state.name=='已关闭', 'chongxinzhipai':item.state.name=='重新指派'}"
29
-                    >{{item.state.name=='待接单'?((item.handlerUser&&!item.candidateGroups)?'待接单':'待抢单'):item.state.name}}</span>
32
+                      :class="{
33
+                        btn: true,
34
+                        daipingjia: item.state.name == '待评价',
35
+                        daijiedan:
36
+                          item.state.name == '待接单' &&
37
+                          item.handlerUser &&
38
+                          !item.candidateGroups,
39
+                        daiqiangdan:
40
+                          item.state.name == '待接单' &&
41
+                          !item.handlerUser &&
42
+                          item.candidateGroups,
43
+                        chulizhong: item.state.name == '处理中',
44
+                        yijiejue: item.state.name == '已解决',
45
+                        yiguanbi: item.state.name == '已关闭',
46
+                        chongxinzhipai: item.state.name == '重新指派'
47
+                      }"
48
+                      >{{
49
+                        item.state.name == "待接单"
50
+                          ? item.handlerUser && !item.candidateGroups
51
+                            ? "待接单"
52
+                            : "待抢单"
53
+                          : item.state.name
54
+                      }}</span
55
+                    >
30
                   </p>
56
                   </p>
31
                 </div>
57
                 </div>
32
                 <div class="center">
58
                 <div class="center">
33
                   <p class="desc">
59
                   <p class="desc">
34
                     <span class="fl">事件描述:</span>
60
                     <span class="fl">事件描述:</span>
35
-                    <span class="grayFont overflowEllipsis2" v-html="item.description"></span>
61
+                    <span
62
+                      class="grayFont overflowEllipsis2"
63
+                      v-html="item.description"
64
+                    ></span>
36
                   </p>
65
                   </p>
37
                   <p>
66
                   <p>
38
-                    报修<span>{{valConfig==1?'人':'科室'}}</span> :
39
-                    <span class="grayFont">{{item.contacts}}</span>
67
+                    报修<span>{{ valConfig == 1 ? "人" : "科室" }}</span> :
68
+                    <span class="grayFont">{{ item.contacts }}</span>
69
+                    <span @click.stop v-if="item.contactsInformation"
70
+                      ><a :href="'tel:' + item.contactsInformation"
71
+                        >(<i class="iconfont icon-shouji"></i
72
+                        >{{ item.contactsInformation }})</a
73
+                      ></span
74
+                    >
40
                   </p>
75
                   </p>
41
                 </div>
76
                 </div>
42
-                <div class="bottom" @click.stop>
43
-                  <span class="fl" v-if="!item.contactsInformation"><span>{{valConfig==1?'联系电话':'科室电话'}}</span>:</span>
44
-                  <span class="fl" v-if="item.contactsInformation"><span>{{valConfig==1?'联系电话':'科室电话'}}</span>:<a :href="'tel:'+item.contactsInformation"><i class="iconfont icon-shouji"></i>{{item.contactsInformation}}</a></span>
45
-                  <span class="fr">报修时间:{{item.acceptDate}}</span>
77
+                <div class="bottom">
78
+                  <span v-if="!item.place"></span>
79
+                  <span
80
+                    v-if="item.place"
81
+                    style="width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;"
82
+                    >{{ item.place.area.area }} {{ item.place.place }}
83
+                    {{ item.houseNumber }}</span
84
+                  >
85
+                  <span>{{ item.acceptDate | timeFormat("MM-dd HH:mm") }}</span>
46
                 </div>
86
                 </div>
47
               </div>
87
               </div>
48
               <div class="wushuju" v-show="wushuju">
88
               <div class="wushuju" v-show="wushuju">
49
-                <img src="./../../static/images/wushuju.svg" alt>
89
+                <img src="./../../static/images/wushuju.svg" alt />
50
                 <p>暂无事件</p>
90
                 <p>暂无事件</p>
51
               </div>
91
               </div>
52
             </div>
92
             </div>
@@ -59,9 +99,14 @@
59
                 <div
99
                 <div
60
                   v-show="props.beforePullDown"
100
                   v-show="props.beforePullDown"
61
                   class="before-trigger"
101
                   class="before-trigger"
62
-                  :style="{paddingTop: props.bubbleY + 'px'}"
102
+                  :style="{ paddingTop: props.bubbleY + 'px' }"
63
                 >
103
                 >
64
-                  <span :class="{rotate: props.bubbleY > pullDownRefreshThreshold - 80}">↓</span>
104
+                  <span
105
+                    :class="{
106
+                      rotate: props.bubbleY > pullDownRefreshThreshold - 80
107
+                    }"
108
+                    >↓</span
109
+                  >
65
                 </div>
110
                 </div>
66
                 <div class="after-trigger" v-show="!props.beforePullDown">
111
                 <div class="after-trigger" v-show="!props.beforePullDown">
67
                   <div v-show="props.isPullingDown" class="loading">
112
                   <div v-show="props.isPullingDown" class="loading">
@@ -77,7 +122,7 @@
77
         </div>
122
         </div>
78
       </div>
123
       </div>
79
     </div>
124
     </div>
80
-    <load-ing v-show="!items.length&&!wushuju"></load-ing>
125
+    <load-ing v-show="!items.length && !wushuju"></load-ing>
81
   </div>
126
   </div>
82
 </template>
127
 </template>
83
 <script>
128
 <script>
@@ -93,7 +138,7 @@ export default {
93
     return {
138
     return {
94
       //   items: _foods,
139
       //   items: _foods,
95
       loginUser: JSON.parse(localStorage.getItem("loginUser")),
140
       loginUser: JSON.parse(localStorage.getItem("loginUser")),
96
-      valConfig: JSON.parse(localStorage.getItem("valConfig"))-0,//报修主体
141
+      valConfig: JSON.parse(localStorage.getItem("valConfig")) - 0, //报修主体
97
       items: [],
142
       items: [],
98
       pullDownRefresh: true,
143
       pullDownRefresh: true,
99
       pullDownRefreshThreshold: 60,
144
       pullDownRefreshThreshold: 60,
@@ -184,7 +229,7 @@ export default {
184
       console.log(1111111);
229
       console.log(1111111);
185
       console.log(data);
230
       console.log(data);
186
       var name = "";
231
       var name = "";
187
-      if (data.state.value == 'pending') {
232
+      if (data.state.value == "pending") {
188
         if (data.handlerUser && !data.candidateGroups) {
233
         if (data.handlerUser && !data.candidateGroups) {
189
           // 指派给人 接单
234
           // 指派给人 接单
190
           name = "Order";
235
           name = "Order";
@@ -194,17 +239,17 @@ export default {
194
         }
239
         }
195
       } else if (data.state.value == "reassign") {
240
       } else if (data.state.value == "reassign") {
196
         name = "AgainAssign";
241
         name = "AgainAssign";
197
-      } else if (data.state.value == 'handler') {
242
+      } else if (data.state.value == "handler") {
198
         name = "Processing";
243
         name = "Processing";
199
-      } else if (data.state.value == 'resolved') {
244
+      } else if (data.state.value == "resolved") {
200
         name = "Solved";
245
         name = "Solved";
201
-      } else if (data.state.value == 'close') {
246
+      } else if (data.state.value == "close") {
202
         name = "Closed";
247
         name = "Closed";
203
       }
248
       }
204
       this.$router.push({
249
       this.$router.push({
205
         name: name,
250
         name: name,
206
         params: {
251
         params: {
207
-          data: data,
252
+          data: data
208
         }
253
         }
209
       });
254
       });
210
     },
255
     },
@@ -219,7 +264,7 @@ export default {
219
           searchType: that.searchType,
264
           searchType: that.searchType,
220
           idx: that.idx,
265
           idx: that.idx,
221
           sum: that.sum,
266
           sum: that.sum,
222
-          incident: {temporary:true}
267
+          incident: { temporary: true }
223
         })
268
         })
224
         .then(function(res) {
269
         .then(function(res) {
225
           if (res.data.data.length > 0) {
270
           if (res.data.data.length > 0) {
@@ -231,7 +276,7 @@ export default {
231
               );
276
               );
232
             }
277
             }
233
             that.items = that.items.concat(res.data.data);
278
             that.items = that.items.concat(res.data.data);
234
-          } else if(res.data.data.length <= 0) {
279
+          } else if (res.data.data.length <= 0) {
235
             that.wushuju = true;
280
             that.wushuju = true;
236
           }
281
           }
237
           that.loadShow = false;
282
           that.loadShow = false;
@@ -412,7 +457,7 @@ export default {
412
   }
457
   }
413
 }
458
 }
414
 </style>
459
 </style>
415
-<style lang='less' scoped>
460
+<style lang="less" scoped>
416
 .cont {
461
 .cont {
417
   margin-top: 1.86rem;
462
   margin-top: 1.86rem;
418
 }
463
 }
@@ -570,9 +615,9 @@ export default {
570
       border-bottom: 0.01rem solid #e6e6e6;
615
       border-bottom: 0.01rem solid #e6e6e6;
571
       padding: 0.24rem 0.48rem;
616
       padding: 0.24rem 0.48rem;
572
       p {
617
       p {
573
-        &.desc{
574
-        overflow: hidden;
575
-        max-height: .88rem;
618
+        &.desc {
619
+          overflow: hidden;
620
+          max-height: 0.88rem;
576
         }
621
         }
577
         .grayFont {
622
         .grayFont {
578
           overflow-x: scroll;
623
           overflow-x: scroll;
@@ -581,8 +626,11 @@ export default {
581
       }
626
       }
582
     }
627
     }
583
     .bottom {
628
     .bottom {
629
+      display: flex;
630
+      justify-content: space-between;
631
+      align-items: center;
584
       overflow: hidden;
632
       overflow: hidden;
585
-      line-height: 0.86rem;
633
+      height: 0.86rem;
586
       border-bottom: 0.01rem solid #e6e6e6;
634
       border-bottom: 0.01rem solid #e6e6e6;
587
       font-size: 0.24rem;
635
       font-size: 0.24rem;
588
       color: #999;
636
       color: #999;