Browse Source

no message

linwenxin 8 months ago
parent
commit
1c2f17f835

+ 27 - 13
src/views/workOrder/workOrderPool/detail.vue

@@ -2,12 +2,24 @@
   <div class="yemiansize">
     <el-tabs v-model="activeName" type="card" :lazy="true" @tab-click="handleClick">
       <el-tab-pane label="工单信息" name="workOrderInfo" key="workOrderInfo"> </el-tab-pane>
-      <el-tab-pane label="操作明细" name="operationDetails" key="operationDetails"> </el-tab-pane>
-      <el-tab-pane label="完工明细" name="detailsCompletion" key="detailsCompletion"></el-tab-pane>
-      <el-tab-pane label="支付费用" name="payFee" key="payFee"></el-tab-pane>
-      <el-tab-pane v-if="EvaluationShow" label="评价信息" name="Evaluation" key="Evaluation"> </el-tab-pane>
-      <el-tab-pane v-if="SettleAccountsShow" label="费用结算" name="SettleAccounts" key="SettleAccounts"> </el-tab-pane>
-      <el-tab-pane v-if="PartsApplicationShow" label="配件申请" name="PartsApplication" key="PartsApplication">
+      <el-tab-pane v-if="!isThreeOrder" label="操作明细" name="operationDetails" key="operationDetails"> </el-tab-pane>
+      <el-tab-pane v-if="!isThreeOrder" label="完工明细" name="detailsCompletion" key="detailsCompletion"></el-tab-pane>
+      <el-tab-pane v-if="!isThreeOrder" label="支付费用" name="payFee" key="payFee"></el-tab-pane>
+      <el-tab-pane v-if="!isThreeOrder && EvaluationShow" label="评价信息" name="Evaluation" key="Evaluation">
+      </el-tab-pane>
+      <el-tab-pane
+        v-if="!isThreeOrder && SettleAccountsShow"
+        label="费用结算"
+        name="SettleAccounts"
+        key="SettleAccounts"
+      >
+      </el-tab-pane>
+      <el-tab-pane
+        v-if="!isThreeOrder && PartsApplicationShow"
+        label="配件申请"
+        name="PartsApplication"
+        key="PartsApplication"
+      >
       </el-tab-pane>
     </el-tabs>
     <div class="view_div">
@@ -67,15 +79,17 @@ export default {
       activeName: this?.$route?.params?.pagePam || 'workOrderInfo',
       EvaluationShow: false,
       SettleAccountsShow: false,
-      PartsApplicationShow: true
+      PartsApplicationShow: true,
+      isThreeOrder: false
     }
   },
   created() {
     orderBaseDetail({
       orderBaseId: this.id
     }).then(res => {
+      this.isThreeOrder = res?.data?.isThreeOrder
       if (
-        !['DYY'].includes(this?.orderInfo?.orderStatus) &&
+        !['DYY'].includes(res?.data?.orderStatus) &&
         ![
           'DSHPG',
           'CJ',
@@ -93,11 +107,11 @@ export default {
           'ZBBH',
           'FZXBH',
           'FL'
-        ].includes(this?.orderInfo?.orderStatus) &&
-        !['DWDPG', 'DWDPD', 'WDBH'].includes(this?.orderInfo?.orderStatus) &&
-        !['DJD', 'DSM', 'YZP'].includes(this?.orderInfo?.orderStatus) &&
-        !['FWZ', 'GCSZT', 'BFWG'].includes(this?.orderInfo?.orderStatus) &&
-        !['YQX', 'FWZT', 'YCGB', 'FWQX'].includes(this?.orderInfo?.orderStatus)
+        ].includes(res?.data?.orderStatus) &&
+        !['DWDPG', 'DWDPD', 'WDBH'].includes(res?.data?.orderStatus) &&
+        !['DJD', 'DSM', 'YZP'].includes(res?.data?.orderStatus) &&
+        !['FWZ', 'GCSZT', 'BFWG'].includes(res?.data?.orderStatus) &&
+        !['YQX', 'FWZT', 'YCGB', 'FWQX'].includes(res?.data?.orderStatus)
       ) {
         this.EvaluationShow = true
         this.SettleAccountsShow = true

+ 102 - 56
src/views/workOrder/workOrderPool/detailModule/workOrderInfo/mixins/workOrderLogic.js

@@ -1,4 +1,12 @@
-import { required, mobileRequired, mobileRequired2, mobileRequired3, mobile, httpUrl, email } from '@/components/template/rules_verify.js'
+import {
+  required,
+  mobileRequired,
+  mobileRequired2,
+  mobileRequired3,
+  mobile,
+  httpUrl,
+  email
+} from '@/components/template/rules_verify.js'
 import { orderBaseDetail, orderBaseProductList } from '@/api/workOrderPool.js'
 
 var initdata_ = {
@@ -102,7 +110,7 @@ export default {
       },
       deep: true,
       immediate: true
-    },
+    }
   },
   computed: {
     // 用户信息
@@ -119,35 +127,55 @@ export default {
     btnRestrict() {
       // 1,保存 2,过程反馈 3,设为异常 4,加急 5,不加急 6,取消工单 7,回访 8,新建工单 9,工单驳回 10,激活工单
       var btns = []
-
-      if (["DYY"].includes(this?.orderInfo?.orderStatus)) {
+      if (this?.orderInfo?.isThreeOrder) {
+        return []
+      } else if (['DYY'].includes(this?.orderInfo?.orderStatus)) {
         // 待预约
         btns = [20]
-      } else if (["DQD"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['DQD'].includes(this?.orderInfo?.orderStatus)) {
         // 待抢单
         btns = [1, 2, 4, 5, 6, 20]
-      } else if (["DSHPG", "CJ", "YPD", "DXSPD", "DZBPG", "DWDSPGP", "DXSSPGP", "DTJXSSPGP", "DZBSPGP", "DFZXPD", "DFZXSPGP", 'XSBH', "TJXSBH", "ZBBH", "FZXBH", "FL"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (
+        [
+          'DSHPG',
+          'CJ',
+          'YPD',
+          'DXSPD',
+          'DZBPG',
+          'DWDSPGP',
+          'DXSSPGP',
+          'DTJXSSPGP',
+          'DZBSPGP',
+          'DFZXPD',
+          'DFZXSPGP',
+          'XSBH',
+          'TJXSBH',
+          'ZBBH',
+          'FZXBH',
+          'FL'
+        ].includes(this?.orderInfo?.orderStatus)
+      ) {
         // 待商户派工
         btns = [1, 2, 4, 5, 6, 20]
-      } else if (["DWDPG", "DWDPD", "WDBH"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['DWDPG', 'DWDPD', 'WDBH'].includes(this?.orderInfo?.orderStatus)) {
         // 待网点派工
         btns = [1, 2, 4, 5, 6, 20]
-      } else if (["DJD", "DSM", "YZP"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['DJD', 'DSM', 'YZP'].includes(this?.orderInfo?.orderStatus)) {
         // 待接单
         btns = [1, 2, 4, 5, 6, 20]
-      } else if (["FWZ", "GCSZT", "BFWG"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['FWZ', 'GCSZT', 'BFWG'].includes(this?.orderInfo?.orderStatus)) {
         // 服务中
         btns = [1, 2, 3, 4, 5, 6, 20]
-      } else if (["YCD"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['YCD'].includes(this?.orderInfo?.orderStatus)) {
         // 异常单
         btns = [1, 2, 6, 20]
-      } else if (["YWG", "GCSZX", "WDWG", "YWGO"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['YWG', 'GCSZX', 'WDWG', 'YWGO'].includes(this?.orderInfo?.orderStatus)) {
         // 已完工待结算
         btns = [7, 8, 9, 20]
-      } else if (["YJS", "LRCD"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['YJS', 'LRCD'].includes(this?.orderInfo?.orderStatus)) {
         // 已结算
         btns = [20]
-      } else if (["YQX", "FWZT", "YCGB", "FWQX"].includes(this?.orderInfo?.orderStatus)) {
+      } else if (['YQX', 'FWZT', 'YCGB', 'FWQX'].includes(this?.orderInfo?.orderStatus)) {
         // 已取消
         btns = [10, 20]
       }
@@ -165,21 +193,39 @@ export default {
     },
     // 处理每个字段是否可编辑
     formOptions() {
+      // 3.0工单禁止编辑
+      var isThreeOrder = !this?.orderInfo?.isThreeOrder
+
       // 已完工, 已结算, 已取消
-      var finish = (
-        ["YWG", "GCSZX", "WDWG", "YWGO"].includes(this?.orderInfo?.orderStatus) ||
-        ["YJS", "LRCD"].includes(this?.orderInfo?.orderStatus) ||
-        ["YQX", "FWZT", "YCGB", "FWQX"].includes(this?.orderInfo?.orderStatus)
-      );
+      var finish =
+        ['YWG', 'GCSZX', 'WDWG', 'YWGO'].includes(this?.orderInfo?.orderStatus) ||
+        ['YJS', 'LRCD'].includes(this?.orderInfo?.orderStatus) ||
+        ['YQX', 'FWZT', 'YCGB', 'FWQX'].includes(this?.orderInfo?.orderStatus)
 
       // 待商户派工, 待网点派工, 待接单, 待预约
-      var isQD = (
-        ["DSHPG", "CJ", "YPD", "DXSPD", "DZBPG", "DWDSPGP", "DXSSPGP", "DTJXSSPGP", "DZBSPGP", "DFZXPD", "DFZXSPGP", 'XSBH', "TJXSBH", "ZBBH", "FZXBH", "FL"].includes(this?.orderInfo?.orderStatus) ||
-        ["DWDPG", "DWDPD", "WDBH"].includes(this?.orderInfo?.orderStatus) ||
-        ["DJD", "DSM", "YZP"].includes(this?.orderInfo?.orderStatus) ||
-        ["DQD"].includes(this?.orderInfo?.orderStatus) ||
+      var isQD =
+        [
+          'DSHPG',
+          'CJ',
+          'YPD',
+          'DXSPD',
+          'DZBPG',
+          'DWDSPGP',
+          'DXSSPGP',
+          'DTJXSSPGP',
+          'DZBSPGP',
+          'DFZXPD',
+          'DFZXSPGP',
+          'XSBH',
+          'TJXSBH',
+          'ZBBH',
+          'FZXBH',
+          'FL'
+        ].includes(this?.orderInfo?.orderStatus) ||
+        ['DWDPG', 'DWDPD', 'WDBH'].includes(this?.orderInfo?.orderStatus) ||
+        ['DJD', 'DSM', 'YZP'].includes(this?.orderInfo?.orderStatus) ||
+        ['DQD'].includes(this?.orderInfo?.orderStatus) ||
         undefined === this?.orderInfo?.orderStatus
-      )
 
       // 非新创建
       var notNewOrder = this.id ? false : true
@@ -188,72 +234,72 @@ export default {
         // 基础信息--------------------
         // 维保项目
         rpProjectRepairId: {
-          isEdit: notNewOrder,
+          isEdit: isThreeOrder && notNewOrder,
           isShow: this.workOrderType == 4,
           isRules: [...required]
         },
         // 工程项目
         projectNo: {
-          isEdit: notNewOrder,
+          isEdit: isThreeOrder && notNewOrder,
           isShow: this.workOrderType == 2,
           isRules: [...required]
         },
         projectName: {
-          isEdit: notNewOrder,
+          isEdit: isThreeOrder && notNewOrder,
           isShow: this.workOrderType == 2,
           isRules: [...required]
         },
         // 客户名称
         userName: {
-          isEdit: !!~[1, 3].indexOf(this?.workOrderType) && !finish,
+          isEdit: isThreeOrder && !!~[1, 3].indexOf(this?.workOrderType) && !finish,
           isShow: true,
           isRules: [...required]
         },
         // 联系人
         linkName: {
-          isEdit: !!~[1, 3].indexOf(this?.workOrderType) && !finish,
+          isEdit: isThreeOrder && !!~[1, 3].indexOf(this?.workOrderType) && !finish,
           isShow: true,
           isRules: [...required]
         },
         // 客户电话
         userMobile: {
-          isEdit: !!~[1, 3].indexOf(this?.workOrderType) && !finish,
+          isEdit: isThreeOrder && !!~[1, 3].indexOf(this?.workOrderType) && !finish,
           isShow: true,
           isRules: [...mobileRequired2]
         },
         // 客户电话2
         userMobile2: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: [...mobileRequired3]
         },
         // gps地址
         gpsAddress: {
-          isEdit: !!~[1, 3].indexOf(this?.workOrderType) && !finish,
+          isEdit: isThreeOrder && !!~[1, 3].indexOf(this?.workOrderType) && !finish,
           isShow: true,
           isRules: [...required]
         },
         // 详细地址
         address: {
-          isEdit: !!~[1, 3].indexOf(this?.workOrderType) && !finish,
+          isEdit: isThreeOrder && !!~[1, 3].indexOf(this?.workOrderType) && !finish,
           isShow: true,
           isRules: []
         },
         // 服务信息--------------------------------
         // 工单类型
         orderSmallType: {
-          isEdit: notNewOrder,
+          isEdit: isThreeOrder && notNewOrder,
           isShow: true,
           isRules: [...required]
         },
         orderChannelId: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: [...required]
         },
         // 预约上门日期
         appointmentTime: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
@@ -263,101 +309,101 @@ export default {
           isRules: [...required]
         },
         saleCompany: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         source: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         // 产品信息------------------------
         orderProducts: {
-          isEdit: !finish && !this.orderInfo.isCj,
+          isEdit: isThreeOrder && !finish && !this.orderInfo.isCj,
           isShow: true,
           isRules: [...required]
         },
         // 其它信息------------------------
         // 备注
         remark: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         // 派单信息-----------------------------
         // 服务商网点
         websitId: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: [...required]
         },
         isQd: {
-          isEdit: isQD,
+          isEdit: isThreeOrder && isQD,
           isShow: true,
           isRules: [...required]
         },
         workerId: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: this.userInfo.type != 1 && !this.orderInfo.isQd ? [...required] : []
         },
         orderWorkers: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: this.userInfo.type != 1 && !this.orderInfo.isQd ? [...required] : []
         },
         // ------------------------------
         serviceStatus: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         salesPlatform: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         salesOrderId: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         serviceOrderId: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         urgent: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         complaint: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         evaluate: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         reqStatus: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         reqType: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
         },
         reqText: {
-          isEdit: !finish,
+          isEdit: isThreeOrder && !finish,
           isShow: true,
           isRules: []
-        },
+        }
       }
     },
     // 表单校验规则
@@ -382,7 +428,7 @@ export default {
             ...res.data,
             orderWorkers_cp: [...(res.data.orderWorkers || []).map(item => ({ ...item }))],
             orderProducts: res1.data || [],
-            workerId_fz: '',
+            workerId_fz: ''
           }
           cb && cb(this.orderInfo)
         })