seimin 2 年之前
父節點
當前提交
316d0c0233
共有 1 個文件被更改,包括 210 次插入376 次删除
  1. 210 376
      src/views/newIncident.vue

+ 210 - 376
src/views/newIncident.vue

@@ -27,14 +27,11 @@
27 27
     >
28 28
       <cube-form-group>
29 29
         <cube-form-item
30
-          :field="fields[24]"
31
-          class="btn_plcaeholde"
32
-        ></cube-form-item>
33
-        <cube-form-item
34 30
           :field="fields[20]"
35 31
           v-if="valConfig == 2"
36 32
           class="btn_plcaeholde btn_local"
37 33
         >
34
+          <!-- <cube-button @click="showPlacePicker()">{{selectedPlaceTxt?selectedPlaceTxt:'请输入故障地点'}}</cube-button> -->
38 35
           <input
39 36
             type="text"
40 37
             class="inp_local"
@@ -45,20 +42,6 @@
45 42
           />
46 43
         </cube-form-item>
47 44
         <cube-form-item
48
-          :field="fields[25]"
49
-          v-if="valConfig == 2"
50
-          class="btn_plcaeholde btn_local"
51
-        >
52
-          <input
53
-            type="text"
54
-            class="inp_local"
55
-            placeholder="请输入报修人"
56
-            v-model="userInpVal"
57
-            @input="changeUserList()"
58
-            @click="showUserPicker()"
59
-          />
60
-        </cube-form-item>
61
-        <cube-form-item
62 45
           v-if="valConfig == 1"
63 46
           :field="fields[0]"
64 47
         ></cube-form-item>
@@ -69,20 +52,43 @@
69 52
         <cube-form-item :field="fields[1]"></cube-form-item>
70 53
         <cube-form-item :field="fields[2]" class="btn_plcaeholde">
71 54
           <cube-button @click="showPlacePicker()">{{
72
-            selectedPlaceTxt ? selectedPlaceTxt : "请选择院区楼栋"
55
+            selectedPlaceTxt ? selectedPlaceTxt : "请选择区域地点"
73 56
           }}</cube-button>
74 57
         </cube-form-item>
75 58
         <cube-form-item :field="fields[23]" v-if="ifRoom == 1"></cube-form-item>
59
+        <!-- 故障地点: -->
60
+        <!-- <cube-form-item :field="fields[19]" class="btn_plcaeholde btn_local"> -->
61
+        <!-- <cube-button @click="showPlacePicker()">{{selectedPlaceTxt?selectedPlaceTxt:'请输入故障地点'}}</cube-button> -->
62
+        <!-- <input
63
+            type="text"
64
+            class="inp_local"
65
+            placeholder="请输入故障地点"
66
+            v-model="inpLocalVal"
67
+            @input="changeLocalList()"
68
+            @click="showPlacePicker()"
69
+          />
70
+        </cube-form-item> -->
76 71
         <cube-form-item :field="fields[3]"></cube-form-item>
77 72
         <cube-form-item :field="fields[4]" class="btn_plcaeholde">
78 73
           <cube-button @click="showCategoryPicker()">{{
79
-            selectedCategoryTxt ? selectedCategoryTxt : "请选择故障现象"
74
+            selectedCategoryTxt ? selectedCategoryTxt : "请选择事件分类"
80 75
           }}</cube-button>
81 76
         </cube-form-item>
82 77
         <cube-form-item
83 78
           :field="fields[5]"
84 79
           class="btn_plcaeholde"
85 80
         ></cube-form-item>
81
+        <!-- <cube-form-item :field="fields[6]" class="btn_plcaeholde incidentTitle">
82
+          <div class="titleRefer">
83
+            <textarea
84
+              class="titleTxtArea fl"
85
+              placeholder="请输入事件主题"
86
+              v-model="incidentTitle"
87
+              @input="inpTitle()"
88
+            ></textarea>
89
+            <span class="abtn fl" @click="referKnowledge()">引入知识库</span>
90
+          </div>
91
+        </cube-form-item>-->
86 92
         <cube-form-item :field="fields[7]"></cube-form-item>
87 93
         <div class="label formLabel">
88 94
           报修图片
@@ -90,8 +96,7 @@
90 96
         </div>
91 97
         <div class="uplod">
92 98
           <cube-upload
93
-            ref="upload" 
94
-            v-model="imgFiles"
99
+            ref="upload"
95 100
             :max="3"
96 101
             :action="action"
97 102
             :simultaneous-uploads="3"
@@ -99,6 +104,8 @@
99 104
             @file-submitted="fileSubmitted"
100 105
           />
101 106
         </div>
107
+        <!-- <cube-form-item :field="fields[8]" class="btn_plcaeholde"></cube-form-item>
108
+        <cube-form-item :field="fields[9]" class="btn_plcaeholde"></cube-form-item>-->
102 109
         <cube-form-item
103 110
           :field="fields[10]"
104 111
           class="btn_plcaeholde"
@@ -110,11 +117,6 @@
110 117
           ></cube-form-item>
111 118
           <span class="icon dash dash-saoyisao zc-sao" @click="scan()"></span>
112 119
         </div>
113
-        <cube-form-item :field="fields[26]" class="btn_plcaeholde">
114
-          <cube-button @click="showTimePicker()">{{
115
-            selectedYytimeTxt ? selectedYytimeTxt : "请选择预约时间"
116
-          }}</cube-button>
117
-        </cube-form-item>
118 120
         <div class="label" id="handlerInfo">处理信息</div>
119 121
         <div class="handleRadio">
120 122
           <cube-radio-group
@@ -126,11 +128,11 @@
126 128
           />
127 129
         </div>
128 130
         <!-- 直接处理 begin -->
129
-        <!-- <cube-form-item
131
+        <cube-form-item
130 132
           v-if="order == 1"
131 133
           :field="fields[11]"
132 134
           class="btn_plcaeholde"
133
-        ></cube-form-item> -->
135
+        ></cube-form-item>
134 136
         <cube-form-item
135 137
           v-if="order == 1"
136 138
           :field="fields[12]"
@@ -141,7 +143,7 @@
141 143
           :field="fields[13]"
142 144
           class="btn_plcaeholde"
143 145
         ></cube-form-item>
144
-        <!-- <div v-if="order == 1" class="label formLabel">
146
+        <div v-if="order == 1" class="label formLabel">
145 147
           报修图片
146 148
           <span>(最多可上传3张JPG或PNG,每张不能超过10M)</span>
147 149
         </div>
@@ -154,8 +156,8 @@
154 156
             @files-added="filesAdded1"
155 157
             @file-submitted="fileSubmitted1"
156 158
           />
157
-        </div> -->
158
-        <!-- <cube-form-item v-if="order == 1" :field="fields[14]"></cube-form-item> -->
159
+        </div>
160
+        <cube-form-item v-if="order == 1" :field="fields[14]"></cube-form-item>
159 161
         <cube-form-item
160 162
           v-if="order == 1 && model.knowledge == true"
161 163
           :field="fields[15]"
@@ -190,7 +192,6 @@
190 192
   </div>
191 193
 </template>
192 194
 <script>
193
-import dateFormat from 'seiminutils/es/dateFormat';
194 195
 import seiminModel from "./../custom/seiminModel";
195 196
 import CubePage from "./../components/cube-page.vue";
196 197
 import CubeButtonGroup from "./../components/cube-button-group.vue";
@@ -213,7 +214,7 @@ const solution = {
213 214
     return {
214 215
       selected: [],
215 216
       selectData: [],
216
-      initVal: [0, 0, 0],
217
+      initVal: JSON.parse(localStorage.getItem("solution")) || [0, 0, 0],
217 218
       allPlace: {}, //存放请求到的所有区域地点
218 219
       sleectHouseNumber: {}, //区域地点
219 220
       initSjList: [], //原始事件列表
@@ -250,6 +251,7 @@ const solution = {
250 251
       });
251 252
       this.selected = selected;
252 253
       this.$emit("input", selectedVal);
254
+      localStorage.setItem("solution", JSON.stringify(selectedIndex));
253 255
     },
254 256
     // 获取事件分类数据
255 257
     getTree() {
@@ -316,11 +318,8 @@ const solution = {
316 318
 export default {
317 319
   data() {
318 320
     return {
319
-      imgFiles: [],
320
-      selectDeptIndex:[0],
321
-      selectUserIndex:[0],
322
-      selectedPlaceIndex:[0, 0],
323 321
       validity: {},
322
+
324 323
       valid: undefined,
325 324
       action: {
326 325
         target:
@@ -350,28 +349,22 @@ export default {
350 349
       incidentTitle: "", //事件主题
351 350
       referenceInfo: {}, //引用信息
352 351
       placeSelectData: [], //区域地点下拉框选项
353
-      // inpLocalVal: "", //故障地点输入框
352
+      inpLocalVal: "", //故障地点输入框
354 353
       faultLocationList: [], //区域地点拼接下拉框选项
355 354
       deptInpVal: "", //报修科室输入框
356 355
       deptList: [], //报修科室下拉选项
357 356
       deptRes: "", //下拉框科室信息
358
-      userInpVal: "", //报修人输入框
359
-      userList: [], //报修人下拉选项
360
-      userRes: "", //下拉框报修人信息
361 357
       model: {
362
-        contacts: "",
363 358
         contactsInformation: "",
364 359
         placeValue: [],
365 360
         address: "", //故障地点
366 361
         requester: "", //报修科室
367
-        requesterUser: "", //报修人
368 362
         houseNumber: "", //详细地址
369 363
         description: "", //事件描述
370 364
         // bxcode: "",
371 365
         assetId: "", //资产
372 366
         category: [],
373 367
         source: "", //事件来源
374
-        branch: "", //院区
375 368
         title: "", //事件主题
376 369
         priority: "", //优先级
377 370
         emergency: "", //紧急度
@@ -384,17 +377,14 @@ export default {
384 377
         candidateGroups: "", //处理组
385 378
         solutionType: [], //知识库类型
386 379
         handleUserOrGroup: false, //处理人or处理组
387
-        room: "", //房间号
380
+        room: "" //房间号
388 381
       },
389 382
       selectedCategoryTxt: "", //事件分类选中展示
390 383
       selectedPlaceTxt: "", //区域地点选中展示
391
-      selectedYytimeTxt: dateFormat(Date.now(),'yyyy-MM-dd hh:mm'), //预约时间
392
-      selectedYytimeStamp: 0, //预约时间戳
393 384
       // showPrompting:false,
394 385
       promptingConent: "",
395 386
       promptingStatus: "",
396 387
       order: 1, //处理方式  1:直接处理,2:派单
397
-      branchArr: [], //院区数组
398 388
       sourceArr: [], //事件来源数组
399 389
       priorityArr: [], //优先级数组
400 390
       emergencyArr: [], //紧急度数组
@@ -441,12 +431,12 @@ export default {
441 431
         {
442 432
           component: "button",
443 433
           modelKey: "placeValue",
444
-          label: "院区楼栋:",
434
+          label: "区域地点:",
445 435
           rules: {
446 436
             required: false
447 437
           },
448 438
           messages: {
449
-            required: "请选择院区楼栋"
439
+            required: "请选择区域地点"
450 440
           }
451 441
         },
452 442
         {
@@ -464,7 +454,7 @@ export default {
464 454
         {
465 455
           component: "button",
466 456
           modelKey: "category",
467
-          label: "故障现象:",
457
+          label: "事件分类:",
468 458
           rules: {
469 459
             required: true
470 460
           }
@@ -482,7 +472,7 @@ export default {
482 472
             placeholder: "请选择事件来源"
483 473
           },
484 474
           rules: {
485
-            required: false
475
+            required: true
486 476
           }
487 477
         },
488 478
         {
@@ -500,7 +490,7 @@ export default {
500 490
         {
501 491
           type: "textarea",
502 492
           modelKey: "description",
503
-          label: "故障描述:",
493
+          label: "事件描述:",
504 494
           props: {
505 495
             placeholder: "请详细描述故障,并上传故障图片,例如:网络故障。"
506 496
           },
@@ -704,7 +694,7 @@ export default {
704 694
           modelKey: "requester",
705 695
           label: "报修科室:",
706 696
           props: {
707
-            options: [],
697
+            options: this.requesterList,
708 698
             title: "请选择报修科室",
709 699
             placeholder: "请选择报修科室"
710 700
           },
@@ -746,56 +736,7 @@ export default {
746 736
           rules: {
747 737
             required: false
748 738
           }
749
-        },
750
-        {
751
-          type: "select",
752
-          modelKey: "branch",
753
-          label: "院区:",
754
-          props: {
755
-            options: this.branchArr,
756
-            title: "请选择院区",
757
-            placeholder: "请选择院区"
758
-          },
759
-          events: {
760
-            change: (value, index, text) => {
761
-              console.log(value, index, text);
762
-              console.log(this.model);
763
-              if (this.valConfig == 2) {
764
-                this.getDept();
765
-                this.getAreaData();
766
-                this.model.contactsInformation = '';
767
-                this.model.requester = '';
768
-                this.deptInpVal = '';
769
-                this.model.placeValue = [];
770
-                this.selectedPlaceTxt = '';
771
-              }
772
-            }
773
-          },
774
-          rules: {
775
-            required: true
776
-          }
777
-        },
778
-        {
779
-          type: "select",
780
-          modelKey: "requesterUser",
781
-          label: "报修人:",
782
-          props: {
783
-            options: [],
784
-            title: "请选择报修人",
785
-            placeholder: "请选择报修人"
786
-          },
787
-          rules: {
788
-            required: false
789
-          }
790
-        },
791
-        {
792
-          component: "button",
793
-          modelKey: "yyTime",
794
-          label: "预约时间:",
795
-          rules: {
796
-            required: false
797
-          }
798
-        },
739
+        }
799 740
       ]
800 741
     };
801 742
   },
@@ -824,28 +765,11 @@ export default {
824 765
     }
825 766
   },
826 767
   methods: {
827
-    // 选择预约时间
828
-    showTimePicker() {
829
-      let timePicker = this.$createTimePicker({
830
-        title: '选择预约时间',
831
-        showNow: false,
832
-        delay: 1,
833
-        minuteStep: 1,
834
-        onSelect: (selectedTime, selectedText, formatedTime) => {
835
-          console.log(selectedTime, selectedText, formatedTime);
836
-          this.selectedYytimeTxt = formatedTime;
837
-          this.selectedYytimeStamp = selectedTime;
838
-        },
839
-        onCancel: () => {}
840
-      }).show();
841
-      timePicker.setTime(this.selectedYytimeStamp)
842
-    },
843 768
     // 切换处理方式
844 769
     changeHandleTypes() {
845
-      // let reverseArr = this.model.category.filter(Boolean).reverse(); //数组翻转,取第一项不为空的
846
-      // let sjId = reverseArr[0]; //事件Id baba
847
-      // let sj = this.initSjList.filter(v => v.id == sjId)[0];
848
-      let sj = this.model.category;
770
+      let reverseArr = this.model.category.filter(Boolean).reverse(); //数组翻转,取第一项不为空的
771
+      let sjId = reverseArr[0]; //事件Id baba
772
+      let sj = this.initSjList.filter(v => v.id == sjId)[0];
849 773
       console.log(this.order, sj);
850 774
       this.isShowDes = !(this.order == 1 && sj && sj.hasSimple == 1);
851 775
     },
@@ -899,33 +823,6 @@ export default {
899 823
             });
900 824
           });
901 825
           that.fields[5].props.options = that.sourceArr;
902
-          that.model.source = 1547;//默认电话
903
-        });
904
-    },
905
-    // 获取院区
906
-    getBranch() {
907
-      this.$http
908
-        .post("service/user/data/fetchDataList/branch", {"idx":0,"sum":100})
909
-        .then((res) => {
910
-          if(res.data.status == 200){
911
-            res.data.list.forEach((v) => {
912
-              this.branchArr.push({
913
-                text: v.hosName,
914
-                value: v.id
915
-              });
916
-            });
917
-            this.fields[24].props.options = this.branchArr;
918
-            if(this.loginUser.duty){
919
-              this.model.branch = this.loginUser.duty.branch;
920
-            }else if(this.loginUser.branch){
921
-              this.model.branch = this.loginUser.branch.id;
922
-            }
923
-            // 获取报修科室
924
-            if (this.valConfig == 2) {
925
-              this.getDept();
926
-              this.getAreaData();
927
-            }
928
-          }
929 826
         });
930 827
     },
931 828
     // 获取优先级
@@ -1016,7 +913,6 @@ export default {
1016 913
             });
1017 914
           });
1018 915
           that.fields[12].props.options = that.closecodeArr;
1019
-          that.model.closecode = 1572;//设计如此,默认“完全解决”
1020 916
         });
1021 917
     },
1022 918
     // 获取处理人
@@ -1067,7 +963,12 @@ export default {
1067 963
         a2 = [],
1068 964
         category = [],
1069 965
         solutionType = [];
1070
-      category = that.model.category;
966
+      that.model.category.forEach(function(v, i) {
967
+        if (v) {
968
+          a1.push(v);
969
+        }
970
+      });
971
+      category = a1;
1071 972
       that.model.solutionType.forEach(function(v, i) {
1072 973
         if (v) {
1073 974
           a2.push(v);
@@ -1188,6 +1089,9 @@ export default {
1188 1089
       var that = this;
1189 1090
       if (!that.model.title) return;
1190 1091
       that.setLocalStroageData();
1092
+      localStorage.setItem("modelData", JSON.stringify(that.modelData));
1093
+      localStorage.setItem("model", JSON.stringify(that.model));
1094
+      localStorage.setItem("order", that.order);
1191 1095
 
1192 1096
       this.$router.push({
1193 1097
         name: "ReferenceList",
@@ -1216,12 +1120,55 @@ export default {
1216 1120
         if (inspecInfo.handlerUser) {
1217 1121
           that.model.handlerUser = inspecInfo.handlerUser.id;
1218 1122
         }
1123
+        // that.modelData.incident.handlingPersonnelUser = {
1124
+        //   id: that.model.handlerUser
1125
+        // };
1219 1126
 
1220 1127
         if (that.$route.params.abnormal) {
1221 1128
           that.model.description = that.modelData.incident.description =
1222 1129
             that.$route.params.abnormal;
1223 1130
         }
1224
-      } else {}
1131
+      } else {
1132
+        that.name = that.loginUser.name;
1133
+        that.model.contactsInformation = that.loginUser.phone;
1134
+        that.model.contacts = that.loginUser.name;
1135
+        that.model.houseNumber = that.loginUser.houseNumber;
1136
+      }
1137
+      if (that.loginUser.place && that.loginUser.place.length) {
1138
+        if (that.loginUser.place.id) {
1139
+          if (that.loginUser.place.area) {
1140
+            that.model.placeValue[0] = that.loginUser.place.area.id;
1141
+          }
1142
+          that.model.placeValue[1] = that.loginUser.place.id;
1143
+        }
1144
+      }
1145
+
1146
+      if (localStorage.getItem("model")) {
1147
+        that.model = JSON.parse(localStorage.getItem("model"));
1148
+        that.incidentTitle = that.model.title;
1149
+      }
1150
+      if (localStorage.getItem("modelData")) {
1151
+        that.modelData = JSON.parse(localStorage.getItem("modelData"));
1152
+      }
1153
+      if (localStorage.getItem("referenceInfo")) {
1154
+        that.referenceInfo = JSON.parse(localStorage.getItem("referenceInfo"));
1155
+        that.incidentTitle = that.model.title = that.referenceInfo.title;
1156
+        that.model.handleDescription = that.referenceInfo.content;
1157
+      }
1158
+      if (localStorage.getItem("order")) {
1159
+        that.order = localStorage.getItem("order") - 0;
1160
+      }
1161
+
1162
+      // if (localStorage.getItem("category")) {
1163
+      //   that.selectedCategoryTxt = JSON.parse(
1164
+      //     localStorage.getItem("category")
1165
+      //   ).txt;
1166
+      //   console.log(that.selectedCategoryTxt);
1167
+      // }
1168
+      // if (localStorage.getItem("place")) {
1169
+      //   that.selectedPlaceTxt = JSON.parse(localStorage.getItem("place")).txt;
1170
+      //   console.log(that.selectedPlaceTxt);
1171
+      // }
1225 1172
     },
1226 1173
     // 提交
1227 1174
     submitHandler() {
@@ -1403,6 +1350,15 @@ export default {
1403 1350
 
1404 1351
       that.validity = result.validity;
1405 1352
       that.valid = result.valid;
1353
+      // if (that.vali == true) {
1354
+      //   $("#fade").fadeIn();
1355
+      //   that.promptingConent = "提交失败,请填写必填信息!";
1356
+      //   that.promptingStatus = false;
1357
+      //   setTimeout(function() {
1358
+      //     $("#fade").fadeOut();
1359
+      //   }, 2000);
1360
+      // }
1361
+      // that.vali = false;
1406 1362
     },
1407 1363
 
1408 1364
     dateSelectHandler(selectedVal) {
@@ -1414,7 +1370,7 @@ export default {
1414 1370
     },
1415 1371
     filesAdded(files) {
1416 1372
       let hasIgnore = false;
1417
-      const maxSize = 10000 * 1024 * 1024; // 1M
1373
+      const maxSize = 1000 * 1024 * 1024; // 1M
1418 1374
       for (let k in files) {
1419 1375
         const file = files[k];
1420 1376
         if (file.size > maxSize) {
@@ -1426,7 +1382,7 @@ export default {
1426 1382
         this.$createToast({
1427 1383
           type: "warn",
1428 1384
           time: 1000,
1429
-          txt: "不能上传超过10M的文件"
1385
+          txt: "不能上传超过100M的文件"
1430 1386
         }).show();
1431 1387
     },
1432 1388
     filesAdded1(files) {
@@ -1454,51 +1410,31 @@ export default {
1454 1410
     },
1455 1411
     // 展示事件分类选择器
1456 1412
     showCategoryPicker() {
1457
-      let other = {
1458
-        selectedPlaceTxt: this.selectedPlaceTxt,
1459
-        userInpVal: this.userInpVal,
1460
-        deptInpVal: this.deptInpVal,
1461
-        selectUserIndex: this.selectUserIndex,
1462
-        selectDeptIndex: this.selectDeptIndex,
1463
-        selectedPlaceIndex: this.selectedPlaceIndex,
1464
-        order: this.order,
1465
-        imgFiles: this.imgFiles,
1466
-        selectedYytimeTxt: this.selectedYytimeTxt,
1467
-        selectedYytimeStamp: this.selectedYytimeStamp,
1468
-      }
1469
-      console.log(this.model, '传');
1470
-      console.log(this.imgFiles);
1471
-      console.log(other)
1472
-      this.$router.push(`/searchDept?model=${JSON.stringify(this.model)}&other=${JSON.stringify(other)}`)
1473
-      // this.categoryPicker.show();
1413
+      this.categoryPicker.show();
1474 1414
     },
1475 1415
     // 选择事件分类
1476
-    selectCategoryHandler() {
1477
-      this.$createDialog({
1478
-        type: 'confirm',
1479
-        icon: 'cubeic-alert',
1480
-        title: '提示',
1481
-        content: '是否覆盖故障描述?',
1482
-        confirmBtn: {
1483
-          text: '确认覆盖',
1484
-          active: true,
1485
-          disabled: false,
1486
-          href: 'javascript:;'
1487
-        },
1488
-        cancelBtn: {
1489
-          text: '取消操作',
1490
-          active: false,
1491
-          disabled: false,
1492
-          href: 'javascript:;'
1493
-        },
1494
-        onConfirm: () => {
1495
-          this.model.description = this.model.title = this.incidentTitle = this.model.category.mutiCategory;
1496
-        },
1497
-        onCancel: () => {}
1498
-      }).show()
1499
-      this.selectedCategoryTxt = this.model.category.mutiCategory;
1416
+    selectCategoryHandler(selectedVal, selectedIndex, selectedTxt) {
1417
+      // console.log(this.initSjList, "事件分类列表");
1418
+      // console.log(this.model.category.slice(-1)[0], "事件分类");
1419
+      var selected = [];
1420
+      selectedTxt.forEach(function(v, i) {
1421
+        if (v != "") {
1422
+          selected.push(v);
1423
+        }
1424
+      });
1425
+      this.selectedCategoryTxt = this.model.title = this.model.description = this.incidentTitle =
1426
+        selected[selected.length - 1];
1427
+      this.model.category = selectedVal;
1428
+      // var category = {
1429
+      //   index: selectedIndex,
1430
+      //   txt: this.selectedCategoryTxt
1431
+      // };
1432
+      // localStorage.setItem("category", JSON.stringify(category));
1500 1433
       // ----------------------回显其他数据---------------------
1501
-      let sj = this.model.category;
1434
+      console.log(selectedVal, "seimin");
1435
+      let reverseArr = selectedVal.filter(Boolean).reverse(); //数组翻转,取第一项不为空的
1436
+      let sjId = reverseArr[0]; //事件Id baba
1437
+      let sj = this.initSjList.filter(v => v.id == sjId)[0];
1502 1438
       console.log(sj);
1503 1439
       this.model.priority = sj.priority?sj.priority.id:null;
1504 1440
       if (sj.branchType == 0) {
@@ -1622,7 +1558,9 @@ export default {
1622 1558
           that.categoryPicker = that.$createCascadePicker({
1623 1559
             title: "事件分类选择",
1624 1560
             data: that.selectData,
1625
-            // selectedIndex: [0, 0, 0],
1561
+            // selectedIndex: localStorage.getItem("category")
1562
+            //   ? JSON.parse(localStorage.getItem("category")).index
1563
+            //   : [0, 0, 0],
1626 1564
             selectedIndex:[0, 0, 0],
1627 1565
             onSelect: that.selectCategoryHandler
1628 1566
           });
@@ -1658,8 +1596,7 @@ export default {
1658 1596
       console.log(selectedVal, selectedIndex, selectedTxt);
1659 1597
       console.log(selectedVal[0], "区域");
1660 1598
       console.log(this.initSjList, "事件分类列表");
1661
-      this.selectedPlaceIndex = selectedIndex;
1662
-      // console.log(this.model.category.slice(-1)[0], "事件分类");
1599
+      console.log(this.model.category.slice(-1)[0], "事件分类");
1663 1600
       if (this.ifRoom == 1) {
1664 1601
         this.getRoomData(selectedVal[1]);
1665 1602
       }
@@ -1667,11 +1604,10 @@ export default {
1667 1604
       this.selectedPlaceTxt = selectedTxt.join(" ");
1668 1605
       // 分院区
1669 1606
       // --------------------start---------------------
1670
-      // let categoryId = this.model.category.slice(-1)[0];
1671
-      let categoryId = this.model.category.id;
1607
+      let categoryId = this.model.category.slice(-1)[0];
1672 1608
       if (categoryId) {
1673
-        // 选择了事件分类
1674
-        let categoryObj = this.model.category;
1609
+        // 选择了事件分类 liaomingming
1610
+        let categoryObj = this.initSjList.find(v => v.id == categoryId);
1675 1611
         if (categoryObj) {
1676 1612
           if (categoryObj.branchType == 1) {
1677 1613
             // 分院区开关打开的情况下
@@ -1720,42 +1656,40 @@ export default {
1720 1656
         this.model.candidateGroups = "";
1721 1657
       }
1722 1658
       // --------------------end---------------------
1659
+      // var place = {
1660
+      //   index: selectedIndex,
1661
+      //   txt: this.model.houseNumber
1662
+      // };
1663
+      // localStorage.setItem("place", JSON.stringify(place));
1723 1664
     },
1724 1665
     // 报修科室
1725 1666
     showDeptPicker() {
1726
-      this.deptList = [];
1727 1667
       this.deptPicker.show();
1728
-      this.getDept(true);
1729
-    },
1730
-    // 报修人
1731
-    showUserPicker() {
1732
-      this.userList = [];
1733
-      this.userPicker.show();
1734
-      this.getUser(true);
1735 1668
     },
1736 1669
     // 选中报修科室
1737 1670
     selectDeptHandler(selectedVal, selectedIndex, selectedTxt) {
1738 1671
       console.log(selectedVal, selectedIndex, selectedTxt);
1739
-      this.deptInpVal = selectedTxt[0];
1740
-      this.selectDeptIndex = selectedIndex;
1741
-      if(!selectedVal[0]){
1742
-        return;
1743
-      }
1744
-      let index = selectedIndex[0].toString();
1745
-      this.model.requester = this.deptRes[index];
1746
-      console.log(this.deptRes[index]);
1747
-      console.log(this.model);
1748
-      if(this.deptRes[index].place){
1749
-        console.log(this.placeSelectData);
1750
-        this.model.placeValue = [this.deptRes[index].place.area.id, this.deptRes[index].place.id];
1751
-        this.selectedPlaceTxt = `${this.deptRes[index].place.area.area} ${this.deptRes[index].place.place}`;
1752
-        let areaIndex = this.placeSelectData.findIndex(v=>v.value == this.deptRes[index].place.area.id);
1753
-        let placeIndex = this.placeSelectData[areaIndex].children.findIndex(v=>v.value == this.deptRes[index].place.id);
1754
-        this.placePicker.setData(this.placeSelectData, [areaIndex, placeIndex]);
1755
-      }
1756
-      if (this.deptRes[index].phone) {
1757
-        this.model.contactsInformation = this.deptRes[index].phone;
1672
+      this.deptInpVal = selectedTxt;
1673
+      this.model.requester = this.deptRes[selectedIndex];
1674
+      console.log(this.deptRes[selectedIndex]);
1675
+      this.inpLocalVal = this.model.address = this.deptRes[selectedIndex].place
1676
+        .area
1677
+        ? this.deptRes[selectedIndex].place.area.area
1678
+          ? this.deptRes[selectedIndex].place.place
1679
+            ? this.deptRes[selectedIndex].place.area.area +
1680
+              this.deptRes[selectedIndex].place.place
1681
+            : this.deptRes[selectedIndex].place.area.area
1682
+          : this.deptRes[selectedIndex].place.area
1683
+        : this.deptRes[selectedIndex].place.place;
1684
+      if (this.deptRes[selectedIndex].phone) {
1685
+        this.model.contactsInformation = this.deptRes[selectedIndex].phone;
1758 1686
       }
1687
+      // this.model.houseNumber = this.selectedPlaceTxt = selectedTxt.join(" ");
1688
+      // var place = {
1689
+      //   index: selectedIndex,
1690
+      //   txt: this.model.houseNumber
1691
+      // };
1692
+      // localStorage.setItem("place", JSON.stringify(place));
1759 1693
     },
1760 1694
     // 取消选中报修科室
1761 1695
     cancelDeptHandler() {
@@ -1765,53 +1699,12 @@ export default {
1765 1699
         this.deptInpVal = "";
1766 1700
         this.model.requester = "";
1767 1701
       }
1768
-    },
1769
-    // 选中报修人
1770
-    selectUserHandler(selectedVal, selectedIndex, selectedTxt) {
1771
-      console.log(selectedVal, selectedIndex, selectedTxt);
1772
-      this.userInpVal = selectedTxt[0];
1773
-      this.selectUserIndex = selectedIndex;
1774
-      if(!selectedVal[0]){
1775
-        return;
1776
-      }
1777
-      let index = selectedIndex[0].toString();
1778
-      console.log(this.model,'model');
1779
-      this.model.contacts = this.userRes[index].name;
1780
-      this.model.requesterUser = this.userRes[index];
1781
-      console.log(this.userRes[index]);
1782
-      // if (this.userRes[index].mphone) {
1783
-      this.$createDialog({
1784
-        type: 'confirm',
1785
-        icon: 'cubeic-alert',
1786
-        title: '提示',
1787
-        content: '是否覆盖联系电话?',
1788
-        confirmBtn: {
1789
-          text: '确认覆盖',
1790
-          active: true,
1791
-          disabled: false,
1792
-          href: 'javascript:;'
1793
-        },
1794
-        cancelBtn: {
1795
-          text: '取消操作',
1796
-          active: false,
1797
-          disabled: false,
1798
-          href: 'javascript:;'
1799
-        },
1800
-        onConfirm: () => {
1801
-          this.model.contactsInformation = this.userRes[index].mphone;
1802
-        },
1803
-        onCancel: () => {}
1804
-      }).show()
1805
-      // }
1806
-    },
1807
-    // 取消选中报修人
1808
-    cancelUserHandler() {
1809
-      if (this.model.requesterUser) {
1810
-        this.userInpVal = this.model.requesterUser.name + '('+ this.model.requesterUser.account +')';
1811
-      } else if (!this.model.requesterUser) {
1812
-        this.userInpVal = "";
1813
-        this.model.requesterUser = "";
1814
-      }
1702
+      // this.model.houseNumber = this.selectedPlaceTxt = selectedTxt.join(" ");
1703
+      // var place = {
1704
+      //   index: selectedIndex,
1705
+      //   txt: this.model.houseNumber
1706
+      // };
1707
+      // localStorage.setItem("place", JSON.stringify(place));
1815 1708
     },
1816 1709
     getAreaData() {
1817 1710
       this.$http
@@ -1819,14 +1712,12 @@ export default {
1819 1712
           idx: 0,
1820 1713
           sum: 1000,
1821 1714
           area: {
1822
-            branch: this.model.branch,
1823 1715
             wechatArea: true
1824 1716
           }
1825 1717
         })
1826 1718
         .then(res => {
1827 1719
           this.initAreaList = JSON.parse(JSON.stringify(res.data.list));
1828 1720
           var data = res.data.list;
1829
-          this.placeSelectData = [];
1830 1721
           for (var i = 0; i < data.length; i++) {
1831 1722
             this.placeSelectData.push({
1832 1723
               text: data[i].area,
@@ -1834,7 +1725,6 @@ export default {
1834 1725
               children: []
1835 1726
             });
1836 1727
           }
1837
-          this.getPlaceData();
1838 1728
         });
1839 1729
     },
1840 1730
     getPlaceData() {
@@ -1847,7 +1737,7 @@ export default {
1847 1737
             wechatAreaId: ""
1848 1738
           }
1849 1739
         })
1850
-        .then((res) => {
1740
+        .then(function(res) {
1851 1741
           var data = res.data.list;
1852 1742
           for (var i = 0; i < data.length; i++) {
1853 1743
             for (var j = 0; j < that.placeSelectData.length; j++) {
@@ -1861,37 +1751,14 @@ export default {
1861 1751
           }
1862 1752
 
1863 1753
           that.placePicker = that.$createCascadePicker({
1864
-            title: "院区楼栋选择",
1754
+            title: "区域地点选择",
1865 1755
             data: that.placeSelectData,
1866
-            selectedIndex: this.selectedPlaceIndex || [0, 0],
1756
+            // selectedIndex: localStorage.getItem("place")
1757
+            //   ? JSON.parse(localStorage.getItem("place")).index
1758
+            //   : [0, 0],
1867 1759
             selectedIndex: [0, 0],
1868 1760
             onSelect: that.selectPlaceHandler
1869 1761
           });
1870
-          console.log(this.$route,'路由参数');
1871
-          if(this.$route.params.id){
1872
-            let other = this.$route.params.other;
1873
-            this.model = this.$route.params.model;
1874
-            this.selectedPlaceTxt = other.selectedPlaceTxt;
1875
-            this.userInpVal = other.userInpVal;
1876
-            this.deptInpVal = other.deptInpVal;
1877
-            this.selectUserIndex = other.selectUserIndex;
1878
-            this.selectDeptIndex = other.selectDeptIndex;
1879
-            this.selectedPlaceIndex = other.selectedPlaceIndex;
1880
-            this.order = other.order;
1881
-            this.imgFiles = other.imgFiles;
1882
-            this.selectedYytimeTxt = other.selectedYytimeTxt,
1883
-            this.selectedYytimeStamp = other.selectedYytimeStamp,
1884
-
1885
-
1886
-            this.placePicker.setData(this.placeSelectData, this.selectedPlaceIndex);
1887
-            console.log(this.model);
1888
-            console.log(other);
1889
-            this.selectCategoryHandler();
1890
-            //回显事件分类
1891
-            // this.$http.get(`service/bpm/data/fetchData/incidentcategory/${this.$route.query.id}`).then(res=>{
1892
-            //   console.log(res);
1893
-            // })
1894
-          }
1895 1762
         });
1896 1763
     },
1897 1764
     // 故障地点
@@ -1926,7 +1793,9 @@ export default {
1926 1793
           that.placePicker = that.$createCascadePicker({
1927 1794
             title: "区域地点选择",
1928 1795
             data: that.faultLocationList,
1929
-            // selectedIndex: [0, 0],
1796
+            // selectedIndex: localStorage.getItem("place")
1797
+            //   ? JSON.parse(localStorage.getItem("place")).index
1798
+            //   : [0, 0],
1930 1799
             onSelect: that.selectPlaceHandler
1931 1800
           });
1932 1801
           // that.fields[19].props.options = that.faultLocationList;
@@ -1943,85 +1812,47 @@ export default {
1943 1812
       }, 600);
1944 1813
     },
1945 1814
     // 报修科室
1946
-    getDept(isFirst) {
1815
+    getDept(type) {
1816
+      var that = this;
1947 1817
       this.$http
1948 1818
         .post("service/user/data/fetchDataList/department", {
1949 1819
           idx: 0,
1950
-          sum: 1000,
1951
-          department: {
1952
-            branch: this.model.branch,
1953
-            selectType:"pinyin_qs",
1954
-            dept: isFirst ? '': (this.deptInpVal || "")
1955
-          }
1820
+          sum: 50,
1821
+          department: { dept: that.deptInpVal || "" }
1956 1822
         })
1957
-        .then((res) => {
1823
+        .then(function(res) {
1958 1824
           var data = res.data.list;
1959
-          this.deptRes = res.data.list;
1960
-          this.deptList = [];
1961
-          for (var i = 0; i < data.length; i++) {
1962
-            this.deptList.push({
1963
-              text: data[i].dept,
1964
-              value: data[i].id
1965
-            });
1966
-          }
1967
-          console.log(this.deptList)
1968
-          this.deptPicker.setData(this.deptList, isFirst?this.selectDeptIndex:[0])
1969
-        });
1970
-    },
1971
-    // 报修人
1972
-    getUser(isFirst) {
1973
-      this.$http
1974
-        .post("service/user/data/fetchDataList/requester", {
1975
-          idx: 0,
1976
-          sum: 1000,
1977
-          requester: {
1978
-            searchKey: isFirst ? '': (this.userInpVal || "")
1825
+          if (type == 1) {
1826
+            that.deptList.length = 0;
1827
+            that.$set(that.deptList, true, []);
1828
+            that.deptList;
1979 1829
           }
1980
-        })
1981
-        .then((res) => {
1982
-          var data = res.data.list;
1983
-          this.userRes = res.data.list;
1984
-          this.userList = [];
1830
+          that.deptRes = res.data.list;
1985 1831
           for (var i = 0; i < data.length; i++) {
1986
-            this.userList.push({
1987
-              text: data[i].name + '('+ data[i].account +')',
1832
+            that.deptList.push({
1833
+              text: data[i].dept,
1988 1834
               value: data[i].id
1989 1835
             });
1990 1836
           }
1991
-          console.log(this.userList)
1992
-          this.userPicker.setData(this.userList, isFirst?this.selectUserIndex:[0])
1837
+
1838
+          that.deptPicker = that.$createCascadePicker({
1839
+            title: "报修科室选择",
1840
+            data: that.deptList,
1841
+            onSelect: that.selectDeptHandler,
1842
+            onCancel: that.cancelDeptHandler
1843
+          });
1993 1844
         });
1994 1845
     },
1995 1846
     changeDeptList() {
1996 1847
       var that = this;
1997 1848
       clearTimeout(that.timer);
1998 1849
       that.timer = setTimeout(() => {
1999
-        this.getDept();
2000
-      }, 600);
2001
-    },
2002
-    changeUserList() {
2003
-      clearTimeout(this.timer);
2004
-      this.timer = setTimeout(() => {
2005
-        this.getUser();
1850
+        this.getDept(1);
2006 1851
       }, 600);
2007 1852
     }
2008 1853
   },
2009 1854
   created() {
2010 1855
     console.log(this.$route.params.data);
2011
-    this.deptPicker = this.$createCascadePicker({
2012
-      title: "报修科室选择",
2013
-      data: this.deptList,
2014
-      onSelect: this.selectDeptHandler,
2015
-      onCancel: this.cancelDeptHandler
2016
-    });
2017
-    this.userPicker = this.$createCascadePicker({
2018
-      title: "报修人选择",
2019
-      data: this.userList,
2020
-      onSelect: this.selectUserHandler,
2021
-      onCancel: this.cancelUserHandler
2022
-    });
2023
-    //获取院区
2024
-    this.getBranch();
2025 1856
     //获取事件来源
2026 1857
     this.getSource();
2027 1858
     // 优先级
@@ -2043,11 +1874,14 @@ export default {
2043 1874
     // 事件单号
2044 1875
     this.getsjnum();
2045 1876
     // 事件分类
2046
-    // this.getIncidentcategory();
2047
-    // this.getAreaData();
2048
-    // this.getPlaceData();
1877
+    this.getIncidentcategory();
1878
+    this.getAreaData();
1879
+    this.getPlaceData();
2049 1880
     // 获取故障地点
2050 1881
     // this.getFaultLocation();
1882
+    if (this.valConfig == 2) {
1883
+      this.getDept();
1884
+    }
2051 1885
   },
2052 1886
   beforeRouteLeave(to, from, next) {
2053 1887
     console.log(to);
@@ -2091,9 +1925,9 @@ export default {
2091 1925
   border: none;
2092 1926
 }
2093 1927
 
2094
-/* .btn_local {
2095
-  z-index: 101;
2096
-} */
1928
+.btn_local {
1929
+  /* z-index: 101; */
1930
+}
2097 1931
 .inp_local {
2098 1932
   outline: none;
2099 1933
   width: 100%;