瀏覽代碼

分院区派单

seimin 2 年之前
父節點
當前提交
434614d69e
共有 4 個文件被更改,包括 207 次插入105 次删除
  1. 3 3
      src/views/incidentList.vue
  2. 4 4
      src/views/indes.vue
  3. 163 62
      src/views/newIncident.vue
  4. 37 36
      src/views/processing.vue

+ 3 - 3
src/views/incidentList.vue

@@ -550,12 +550,12 @@ export default {
550 550
     this.getData();
551 551
 
552 552
     localStorage.removeItem("modelData");
553
-    localStorage.removeItem("category");
554
-    localStorage.removeItem("categoryVal");
553
+    // localStorage.removeItem("category");
554
+    // localStorage.removeItem("categoryVal");
555 555
     localStorage.removeItem("referenceInfo");
556 556
     localStorage.removeItem("order");
557 557
     localStorage.removeItem("model");
558
-    localStorage.removeItem("selectedCategoryTxt");
558
+    // localStorage.removeItem("selectedCategoryTxt");
559 559
   }
560 560
 };
561 561
 </script>

+ 4 - 4
src/views/indes.vue

@@ -406,12 +406,12 @@ export default {
406 406
       0,
407 407
       that.candidateGroups.length - 1
408 408
     );
409
-    localStorage.removeItem("category");
410
-    localStorage.removeItem("categoryVal");
411
-    localStorage.removeItem("selectedCategoryTxt");
409
+    // localStorage.removeItem("category");
410
+    // localStorage.removeItem("categoryVal");
411
+    // localStorage.removeItem("selectedCategoryTxt");
412 412
     localStorage.removeItem("model");
413 413
     localStorage.removeItem("modelData");
414
-    localStorage.removeItem("place");
414
+    // localStorage.removeItem("place");
415 415
     localStorage.removeItem("referenceInfo");
416 416
     localStorage.removeItem("solution");
417 417
     localStorage.removeItem("order");

+ 163 - 62
src/views/newIncident.vue

@@ -217,7 +217,8 @@ const solution = {
217 217
       initVal: JSON.parse(localStorage.getItem("solution")) || [0, 0, 0],
218 218
       allPlace: {}, //存放请求到的所有区域地点
219 219
       sleectHouseNumber: {}, //区域地点
220
-      initSjList: [] //原始事件列表
220
+      initSjList: [], //原始事件列表
221
+      initAreaList: [], //原始区域列表
221 222
     };
222 223
   },
223 224
   render(createElement) {
@@ -764,12 +765,12 @@ export default {
764 765
     }
765 766
   },
766 767
   methods: {
767
-    // 切换处理方式liaomingming
768
+    // 切换处理方式
768 769
     changeHandleTypes() {
769 770
       let reverseArr = this.model.category.filter(Boolean).reverse(); //数组翻转,取第一项不为空的
770 771
       let sjId = reverseArr[0]; //事件Id baba
771 772
       let sj = this.initSjList.filter(v => v.id == sjId)[0];
772
-      console.log(this.order,sj);
773
+      console.log(this.order, sj);
773 774
       this.isShowDes = !(this.order == 1 && sj && sj.hasSimple == 1);
774 775
     },
775 776
     //扫资产
@@ -1020,7 +1021,9 @@ export default {
1020 1021
       that.modelData.incident.description = that.model.description;
1021 1022
       // that.modelData.incident.emergency = { id: that.model.emergency };
1022 1023
       // that.modelData.incident.influence = { id: that.model.influence };
1023
-      that.modelData.incident.priority = { id: that.model.priority };
1024
+      if(that.model.priority){
1025
+        that.modelData.incident.priority = { id: that.model.priority };
1026
+      }
1024 1027
       that.modelData.incident.alarmType = false;
1025 1028
       if (that.order == 1) {
1026 1029
         // 直接处理
@@ -1156,16 +1159,16 @@ export default {
1156 1159
         that.order = localStorage.getItem("order") - 0;
1157 1160
       }
1158 1161
 
1159
-      if (localStorage.getItem("category")) {
1160
-        that.selectedCategoryTxt = JSON.parse(
1161
-          localStorage.getItem("category")
1162
-        ).txt;
1163
-        console.log(that.selectedCategoryTxt);
1164
-      }
1165
-      if (localStorage.getItem("place")) {
1166
-        that.selectedPlaceTxt = JSON.parse(localStorage.getItem("place")).txt;
1167
-        console.log(that.selectedPlaceTxt);
1168
-      }
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
+      // }
1169 1172
     },
1170 1173
     // 提交
1171 1174
     submitHandler() {
@@ -1248,10 +1251,10 @@ export default {
1248 1251
           }
1249 1252
         })
1250 1253
         .show();
1251
-      localStorage.removeItem("category");
1254
+      // localStorage.removeItem("category");
1252 1255
       localStorage.removeItem("model");
1253 1256
       localStorage.removeItem("modelData");
1254
-      localStorage.removeItem("placeIndex");
1257
+      // localStorage.removeItem("placeIndex");
1255 1258
       localStorage.removeItem("referenceInfo");
1256 1259
       localStorage.removeItem("solution");
1257 1260
       localStorage.removeItem("order");
@@ -1411,6 +1414,8 @@ export default {
1411 1414
     },
1412 1415
     // 选择事件分类
1413 1416
     selectCategoryHandler(selectedVal, selectedIndex, selectedTxt) {
1417
+      // console.log(this.initSjList, "事件分类列表");
1418
+      // console.log(this.model.category.slice(-1)[0], "事件分类");
1414 1419
       var selected = [];
1415 1420
       selectedTxt.forEach(function(v, i) {
1416 1421
         if (v != "") {
@@ -1420,40 +1425,86 @@ export default {
1420 1425
       this.selectedCategoryTxt = this.model.title = this.model.description = this.incidentTitle =
1421 1426
         selected[selected.length - 1];
1422 1427
       this.model.category = selectedVal;
1423
-      var category = {
1424
-        index: selectedIndex,
1425
-        txt: this.selectedCategoryTxt
1426
-      };
1427
-      localStorage.setItem("category", JSON.stringify(category));
1428
+      // var category = {
1429
+      //   index: selectedIndex,
1430
+      //   txt: this.selectedCategoryTxt
1431
+      // };
1432
+      // localStorage.setItem("category", JSON.stringify(category));
1428 1433
       // ----------------------回显其他数据---------------------
1429 1434
       console.log(selectedVal, "seimin");
1430 1435
       let reverseArr = selectedVal.filter(Boolean).reverse(); //数组翻转,取第一项不为空的
1431 1436
       let sjId = reverseArr[0]; //事件Id baba
1432 1437
       let sj = this.initSjList.filter(v => v.id == sjId)[0];
1433 1438
       console.log(sj);
1434
-      this.model.priority = sj.priority.id;
1435
-      if (sj.userOrGroupType === 1) {
1436
-        //派人
1437
-        this.order = 2;
1438
-        this.model.handleUserOrGroup = true;
1439
-        this.model.handlerUser = sj.handleUser ? sj.handleUser.id : "";
1440
-      } else if (sj.userOrGroupType === 2) {
1441
-        //派组
1442
-        this.order = 2;
1443
-        this.model.handleUserOrGroup = false;
1444
-        this.model.candidateGroups = sj.group ? sj.group.id : "";
1445
-      } else {
1446
-        this.order = 1;
1447
-        this.model.handleUserOrGroup = false;
1448
-        this.model.handlerUser = "";
1449
-        this.model.candidateGroups = "";
1439
+      this.model.priority = sj.priority?sj.priority.id:null;
1440
+      if (sj.branchType == 0) {
1441
+        if (sj.userOrGroupType === 1) {
1442
+          //派人
1443
+          this.order = 2;
1444
+          this.model.handleUserOrGroup = true;
1445
+          this.model.handlerUser = sj.handleUser ? sj.handleUser.id : "";
1446
+        } else if (sj.userOrGroupType === 2) {
1447
+          //派组
1448
+          this.order = 2;
1449
+          this.model.handleUserOrGroup = false;
1450
+          this.model.candidateGroups = sj.group ? sj.group.id : "";
1451
+        } else {
1452
+          this.order = 1;
1453
+          this.model.handleUserOrGroup = false;
1454
+          this.model.handlerUser = "";
1455
+          this.model.candidateGroups = "";
1456
+        }
1457
+      } else if (sj.branchType == 1) {
1458
+        // 分院区
1459
+        // liaomingming
1460
+        let areaId = this.model.placeValue[0]; //区域id
1461
+        console.log(this.initAreaList);
1462
+        if (areaId) {
1463
+          // 选择了区域
1464
+          let areaObj = this.initAreaList.find(v => v.id == areaId);
1465
+          if (areaObj) {
1466
+            let branchId = areaObj.branch;
1467
+            let branchUserGroup =
1468
+              sj.branchUserGroups.find(v => v.branchId == branchId) || {};
1469
+            if (branchUserGroup.branchUserOrGroupType == 1) {
1470
+              //派人
1471
+              this.order = 2;
1472
+              this.model.handleUserOrGroup = true;
1473
+              this.model.handlerUser = branchUserGroup.userId
1474
+                ? branchUserGroup.userId
1475
+                : undefined;
1476
+            } else if (branchUserGroup.branchUserOrGroupType === 2) {
1477
+              //派组
1478
+              this.order = 2;
1479
+              this.model.handleUserOrGroup = false;
1480
+              this.model.candidateGroups = branchUserGroup.groupId
1481
+                ? branchUserGroup.groupId
1482
+                : undefined;
1483
+            } else {
1484
+              this.order = 1;
1485
+              this.model.handleUserOrGroup = false;
1486
+              this.model.handlerUser = "";
1487
+              this.model.candidateGroups = "";
1488
+            }
1489
+          } else {
1490
+            this.order = 1;
1491
+            this.model.handleUserOrGroup = false;
1492
+            this.model.handlerUser = "";
1493
+            this.model.candidateGroups = "";
1494
+          }
1495
+        } else {
1496
+          this.order = 1;
1497
+          this.model.handleUserOrGroup = false;
1498
+          this.model.handlerUser = "";
1499
+          this.model.candidateGroups = "";
1500
+        }
1450 1501
       }
1502
+
1451 1503
       console.log(this.order, sj.hasSimple);
1452 1504
       if (this.order == 1 && sj.hasSimple == 1) {
1453 1505
         // 直接处理 && 简单处理
1454
-        // liaomingming
1455 1506
         this.isShowDes = false;
1456
-      }else{
1507
+      } else {
1457 1508
         this.isShowDes = true;
1458 1509
       }
1459 1510
     },
@@ -1507,9 +1558,10 @@ export default {
1507 1558
           that.categoryPicker = that.$createCascadePicker({
1508 1559
             title: "事件分类选择",
1509 1560
             data: that.selectData,
1510
-            selectedIndex: localStorage.getItem("category")
1511
-              ? JSON.parse(localStorage.getItem("category")).index
1512
-              : [0, 0, 0],
1561
+            // selectedIndex: localStorage.getItem("category")
1562
+            //   ? JSON.parse(localStorage.getItem("category")).index
1563
+            //   : [0, 0, 0],
1564
+            selectedIndex:[0, 0, 0],
1513 1565
             onSelect: that.selectCategoryHandler
1514 1566
           });
1515 1567
           that.loadShow = false;
@@ -1542,25 +1594,73 @@ export default {
1542 1594
     },
1543 1595
     selectPlaceHandler(selectedVal, selectedIndex, selectedTxt) {
1544 1596
       console.log(selectedVal, selectedIndex, selectedTxt);
1545
-      // this.inpLocalVal = this.model.address = selectedTxt; //seimin
1546
-      // console.log(this.allPlace, "allPlace");
1547
-      // this.allPlace.forEach(item => {
1548
-      //   if (item.id == selectedVal && item.place) {
1549
-      //     //如果存在地点
1550
-      //     this.selectHouseNumber = this.allPlace[selectedIndex];
1551
-      //   }
1552
-      // });
1553
-      // console.log(this.selectHouseNumber, 2222);
1597
+      console.log(selectedVal[0], "区域");
1598
+      console.log(this.initSjList, "事件分类列表");
1599
+      console.log(this.model.category.slice(-1)[0], "事件分类");
1554 1600
       if (this.ifRoom == 1) {
1555 1601
         this.getRoomData(selectedVal[1]);
1556 1602
       }
1557 1603
       this.model.placeValue = selectedVal;
1558 1604
       this.selectedPlaceTxt = selectedTxt.join(" ");
1559
-      var place = {
1560
-        index: selectedIndex,
1561
-        txt: this.model.houseNumber
1562
-      };
1563
-      localStorage.setItem("place", JSON.stringify(place));
1605
+      // 分院区
1606
+      // --------------------start---------------------
1607
+      let categoryId = this.model.category.slice(-1)[0];
1608
+      if (categoryId) {
1609
+        // 选择了事件分类 liaomingming
1610
+        let categoryObj = this.initSjList.find(v => v.id == categoryId);
1611
+        if (categoryObj) {
1612
+          if (categoryObj.branchType == 1) {
1613
+            // 分院区开关打开的情况下
1614
+            let areaId = this.model.placeValue[0]; //区域id
1615
+            let areaObj = this.initAreaList.find(v => v.id == areaId);
1616
+            let branchId = areaObj.branch;
1617
+            let branchUserGroup =
1618
+              categoryObj.branchUserGroups.find(v => v.branchId == branchId) ||
1619
+              {};
1620
+            if (branchUserGroup.branchUserOrGroupType == 1) {
1621
+              //派人
1622
+              this.order = 2;
1623
+              this.model.handleUserOrGroup = true;
1624
+              this.model.handlerUser = branchUserGroup.userId
1625
+                ? branchUserGroup.userId
1626
+                : undefined;
1627
+            } else if (branchUserGroup.branchUserOrGroupType === 2) {
1628
+              //派组
1629
+              this.order = 2;
1630
+              this.model.handleUserOrGroup = false;
1631
+              this.model.candidateGroups = branchUserGroup.groupId
1632
+                ? branchUserGroup.groupId
1633
+                : undefined;
1634
+            } else {
1635
+              this.order = 1;
1636
+              this.model.handleUserOrGroup = false;
1637
+              this.model.handlerUser = "";
1638
+              this.model.candidateGroups = "";
1639
+            }
1640
+          } else {
1641
+            this.order = 1;
1642
+            this.model.handleUserOrGroup = false;
1643
+            this.model.handlerUser = "";
1644
+            this.model.candidateGroups = "";
1645
+          }
1646
+        } else {
1647
+          this.order = 1;
1648
+          this.model.handleUserOrGroup = false;
1649
+          this.model.handlerUser = "";
1650
+          this.model.candidateGroups = "";
1651
+        }
1652
+      } else {
1653
+        this.order = 1;
1654
+        this.model.handleUserOrGroup = false;
1655
+        this.model.handlerUser = "";
1656
+        this.model.candidateGroups = "";
1657
+      }
1658
+      // --------------------end---------------------
1659
+      // var place = {
1660
+      //   index: selectedIndex,
1661
+      //   txt: this.model.houseNumber
1662
+      // };
1663
+      // localStorage.setItem("place", JSON.stringify(place));
1564 1664
     },
1565 1665
     // 报修科室
1566 1666
     showDeptPicker() {
@@ -1607,7 +1707,6 @@ export default {
1607 1707
       // localStorage.setItem("place", JSON.stringify(place));
1608 1708
     },
1609 1709
     getAreaData() {
1610
-      var that = this;
1611 1710
       this.$http
1612 1711
         .post("service/user/data/fetchDataList/area", {
1613 1712
           idx: 0,
@@ -1616,10 +1715,11 @@ export default {
1616 1715
             wechatArea: true
1617 1716
           }
1618 1717
         })
1619
-        .then(function(res) {
1718
+        .then(res => {
1719
+          this.initAreaList = JSON.parse(JSON.stringify(res.data.list));
1620 1720
           var data = res.data.list;
1621 1721
           for (var i = 0; i < data.length; i++) {
1622
-            that.placeSelectData.push({
1722
+            this.placeSelectData.push({
1623 1723
               text: data[i].area,
1624 1724
               value: data[i].id,
1625 1725
               children: []
@@ -1653,9 +1753,10 @@ export default {
1653 1753
           that.placePicker = that.$createCascadePicker({
1654 1754
             title: "区域地点选择",
1655 1755
             data: that.placeSelectData,
1656
-            selectedIndex: localStorage.getItem("place")
1657
-              ? JSON.parse(localStorage.getItem("place")).index
1658
-              : [0, 0],
1756
+            // selectedIndex: localStorage.getItem("place")
1757
+            //   ? JSON.parse(localStorage.getItem("place")).index
1758
+            //   : [0, 0],
1759
+            selectedIndex: [0, 0],
1659 1760
             onSelect: that.selectPlaceHandler
1660 1761
           });
1661 1762
         });

+ 37 - 36
src/views/processing.vue

@@ -985,12 +985,12 @@ export default {
985 985
           ? selected[selected.length - 1]
986 986
           : "";
987 987
         this.model.category = selectedVal;
988
-        localStorage.setItem("category", JSON.stringify(selectedIndex));
989
-        localStorage.setItem("categoryVal", JSON.stringify(selectedVal));
990
-        localStorage.setItem(
991
-          "selectedCategoryTxt",
992
-          JSON.stringify(this.selectedCategoryTxt)
993
-        );
988
+        // localStorage.setItem("category", JSON.stringify(selectedIndex));
989
+        // localStorage.setItem("categoryVal", JSON.stringify(selectedVal));
990
+        // localStorage.setItem(
991
+        //   "selectedCategoryTxt",
992
+        //   JSON.stringify(this.selectedCategoryTxt)
993
+        // );
994 994
       }
995 995
     },
996 996
     // 获取处理进度
@@ -1220,11 +1220,11 @@ export default {
1220 1220
       if (localStorage.getItem("order")) {
1221 1221
         that.order = localStorage.getItem("order") - 0;
1222 1222
       }
1223
-      if (localStorage.getItem("selectedCategoryTxt")) {
1224
-        that.selectedCategoryTxt = JSON.parse(
1225
-          localStorage.getItem("selectedCategoryTxt")
1226
-        );
1227
-      }
1223
+      // if (localStorage.getItem("selectedCategoryTxt")) {
1224
+      //   that.selectedCategoryTxt = JSON.parse(
1225
+      //     localStorage.getItem("selectedCategoryTxt")
1226
+      //   );
1227
+      // }
1228 1228
       that.getProgressInfo();
1229 1229
     },
1230 1230
     // 事件分类
@@ -1247,12 +1247,12 @@ export default {
1247 1247
         ? selected[selected.length - 1]
1248 1248
         : "";
1249 1249
       this.model.category = selectedVal;
1250
-      localStorage.setItem("category", JSON.stringify(selectedIndex));
1251
-      localStorage.setItem("categoryVal", JSON.stringify(selectedVal));
1252
-      localStorage.setItem(
1253
-        "selectedCategoryTxt",
1254
-        JSON.stringify(this.selectedCategoryTxt)
1255
-      );
1250
+      // localStorage.setItem("category", JSON.stringify(selectedIndex));
1251
+      // localStorage.setItem("categoryVal", JSON.stringify(selectedVal));
1252
+      // localStorage.setItem(
1253
+      //   "selectedCategoryTxt",
1254
+      //   JSON.stringify(this.selectedCategoryTxt)
1255
+      // );
1256 1256
       if (this.order == 1 && sj.hasSimple == 1) {
1257 1257
         this.isShowDes = false;
1258 1258
       }else{
@@ -1304,7 +1304,8 @@ export default {
1304 1304
             }
1305 1305
           });
1306 1306
 
1307
-          if (!localStorage.getItem("category")) {
1307
+          // if (!localStorage.getItem("category")) {
1308
+          if (true) {
1308 1309
             let cate = that.modelData.incident.category;
1309 1310
             let cateGrand =
1310 1311
               cate.parentCategory &&
@@ -1363,22 +1364,22 @@ export default {
1363 1364
               );
1364 1365
             }, 500);
1365 1366
           } else {
1366
-            that.selectData = tree;
1367
-            // 获取事件分类并设置
1368
-            that.setCategory();
1369
-            that.categoryPicker = that.$createCascadePicker({
1370
-              title: "事件分类选择",
1371
-              data: that.selectData,
1372
-              selectedIndex: JSON.parse(localStorage.getItem("category")) || [
1373
-                0,
1374
-                0,
1375
-                0
1376
-              ],
1377
-              onSelect: that.selectCategoryHandler
1378
-            });
1379
-            that.model.category = JSON.parse(
1380
-              localStorage.getItem("categoryVal")
1381
-            );
1367
+            // that.selectData = tree;
1368
+            // // 获取事件分类并设置
1369
+            // that.setCategory();
1370
+            // that.categoryPicker = that.$createCascadePicker({
1371
+            //   title: "事件分类选择",
1372
+            //   data: that.selectData,
1373
+            //   selectedIndex: JSON.parse(localStorage.getItem("category")) || [
1374
+            //     0,
1375
+            //     0,
1376
+            //     0
1377
+            //   ],
1378
+            //   onSelect: that.selectCategoryHandler
1379
+            // });
1380
+            // that.model.category = JSON.parse(
1381
+            //   localStorage.getItem("categoryVal")
1382
+            // );
1382 1383
           }
1383 1384
           that.loadShow = false;
1384 1385
         });
@@ -1547,7 +1548,7 @@ export default {
1547 1548
                   }
1548 1549
                 })
1549 1550
                 .show();
1550
-              localStorage.removeItem("category");
1551
+              // localStorage.removeItem("category");
1551 1552
               localStorage.removeItem("model");
1552 1553
               localStorage.removeItem("modelData");
1553 1554
               localStorage.removeItem("referenceInfo");
@@ -1605,7 +1606,7 @@ export default {
1605 1606
                   }
1606 1607
                 })
1607 1608
                 .show();
1608
-              localStorage.removeItem("category");
1609
+              // localStorage.removeItem("category");
1609 1610
               localStorage.removeItem("model");
1610 1611
               localStorage.removeItem("modelData");
1611 1612
               localStorage.removeItem("referenceInfo");