From d4f4c52402b91cb8e17c1845da71c5e39662fde0 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期三, 03 一月 2024 15:28:06 +0800
Subject: [PATCH] 销售报价单列表页增加统计内容及接口联调、添加报价单天天客户名称及对应限制功能

---
 src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue |   90 ++++++++++++++++++++++++++++++---------------
 1 files changed, 60 insertions(+), 30 deletions(-)

diff --git a/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue b/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
index cde48e1..2d04051 100644
--- a/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
+++ b/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
@@ -25,12 +25,24 @@
             <el-row>
               <el-col :span="12">
                 <el-form-item label="鏈嶅姟鍗曠紪鍙�" prop="serviceNumber">
-                  <!-- <el-input v-model="editConfig.infomation.serviceNumber" style="width: 100%"></el-input> -->
-                  <WordInput
+                  <el-input
+                    v-if="
+                      editConfig.title == '缂栬緫' ||
+                      (editConfig.title == '鏂板缓' && codenumer && (explain != '' || isIdDisabled))
+                    "
+                    :disabled="editConfig.title == '缂栬緫'"
+                    v-model="editConfig.infomation.serviceNumber"
+                    placeholder="璇疯緭鍏ョ紪鐮�"
+                  >
+                  </el-input>
+                  <span v-else-if="editConfig.title == '鏂板缓'" style="color: #f56c6c"
+                    >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+                  >
+                  <!-- <WordInput
                     v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
                     :codenumer="codenumer"
                     :sum="sum"
-                    :disabled="editConfig.infomation.id || isIdDisabled"
+                    :disabled="editConfig.title !== '鏂板缓' || isIdDisabled"
                     :inputValue="inputValue"
                     @codeList="codeList"
                   />
@@ -39,7 +51,7 @@
                   >
                   <span v-else>{{
                     editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.serviceNumber
-                  }}</span>
+                  }}</span> -->
                 </el-form-item>
               </el-col>
               <el-col :span="12">
@@ -264,10 +276,10 @@
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="涓ラ噸绋嬪害" prop="severity">
+                <el-form-item label="涓ラ噸绋嬪害" prop="severityId">
                   <div class="common-select">
                     <el-select
-                      v-model="editConfig.infomation.severity"
+                      v-model="editConfig.infomation.severityId"
                       placeholder="璇烽�夋嫨"
                       class="common-select-sel"
                       size="mini"
@@ -689,11 +701,11 @@
       dialogWidth: "50%",
       editConfig: this.editCommonConfig,
       rules: {
-        serviceNumber: [{ required: true, message: "璇疯緭鍏ユ湇鍔″崟缂栧彿", trigger: "blur" }],
+        serviceNumber: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }],
         client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
         subject: [{ required: true, message: "璇疯緭鍏ヤ富棰�", trigger: "blur" }],
         // productCategory: [{ required: true, message: "璇烽�夋嫨浜у搧绫诲埆", trigger: "change" }],
-        serviceManId: [{ required: true, message: "璇烽�夋嫨浜у搧绫诲埆", trigger: "change" }],
+        serviceManId: [{ required: true, validator: this.validateMemberId, trigger: "change" }],
         serviceOrderStatusId: [{ required: true, message: "璇烽�夋嫨鏁呴殰绫诲埆", trigger: "change" }],
         problemDesc: [{ required: true, message: "璇疯緭鍏ラ棶棰樻弿杩�", trigger: "blur" }]
       },
@@ -774,9 +786,6 @@
       if (val) {
         this.formInfo()
       }
-    },
-    "editCommonConfig.infomation.codeStandID"() {
-      this.formInfo()
     }
   },
   methods: {
@@ -803,8 +812,15 @@
     },
     getCommonData() {
       getAllData().then((res) => {
-        this.memberOptions = res.data.member
         this.serviceManOptions = res.data.member
+        if (this.editConfig.title === "鏂板缓") {
+          let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1")
+          this.serviceManOptions.map((item) => {
+            if (item.username == username) {
+              this.$set(this.editConfig.infomation, "serviceManId", item.id)
+            }
+          })
+        }
         this.reportSourceOptions = res.data.reportSource
       })
       this.getServiceTypeList()
@@ -876,14 +892,13 @@
         serviceManId: data.serviceManId || 0,
         serviceNumber: data.serviceNumber || "",
         serviceTypeId: data.serviceTypeId || 0,
-        severity: data.severity || 0,
+        severityId: data.severityId || 0,
         solution: data.solution || "",
         solutionRemark: data.solutionRemark || "",
         serviceOrderStatusId: data.serviceOrderStatusId || 0,
         subject: data.subject || "",
         timeSpentId: data.timeSpentId || 0,
-        codeStandID: data.ID,
-        codeRule: this.codeRule
+        codeStandID: data.ID
       }
       return params
     },
@@ -1012,34 +1027,49 @@
       }
     },
     // 鏁呴殰绫诲埆
-    async getFaultTypeList() {
-      await getFaultTypeList().then((res) => {
-        this.faultTypeOptions = res.data.data
+    getFaultTypeList() {
+      getFaultTypeList().then((res) => {
+        this.faultTypeOptions = res.data.data ? res.data.data : []
+        this.$set(this.editConfig.infomation, "faultTypeId", this.editConfig.infomation.faultTypeId)
       })
     },
     // 鏈嶅姟鏂瑰紡
-    async getServiceTypeList() {
-      await getServiceTypeList().then((res) => {
-        this.serviceTypeOptions = res.data.data
+    getServiceTypeList() {
+      getServiceTypeList().then((res) => {
+        this.serviceTypeOptions = res.data.data ? res.data.data : []
+        this.$set(this.editConfig.infomation, "serviceTypeId", this.editConfig.infomation.serviceTypeId)
       })
     },
     // 涓ラ噸绋嬪害
-    async getSeverityList() {
-      await getSeverityList().then((res) => {
-        this.severityOptions = res.data.data
+    getSeverityList() {
+      getSeverityList().then((res) => {
+        this.severityOptions = res.data.data ? res.data.data : []
+
+        this.$set(this.editConfig.infomation, "severityId", this.editConfig.infomation.severityId)
       })
     },
     // 浼樺厛绾у埆
-    async getPriorityLevelList() {
-      await getPriorityLevelList().then((res) => {
-        this.priorityLevelOptions = res.data.data
+    getPriorityLevelList() {
+      getPriorityLevelList().then((res) => {
+        this.priorityLevelOptions = res.data.data ? res.data.data : []
+
+        this.$set(this.editConfig.infomation, "priorityLevelId", this.editConfig.infomation.priorityLevelId)
       })
     },
     // 鑺辫垂鏃堕棿
-    async getTimeSpentList() {
-      await getTimeSpentList().then((res) => {
-        this.timeSpentOptions = res.data.data
+    getTimeSpentList() {
+      getTimeSpentList().then((res) => {
+        this.timeSpentOptions = res.data.data ? res.data.data : []
+        this.$set(this.editConfig.infomation, "timeSpentId", this.editConfig.infomation.timeSpentId)
       })
+    },
+    // 鏈嶅姟浜哄憳鑷畾涔夋牎楠岃鍒�
+    validateMemberId(rule, value, callback) {
+      if (this.editConfig.infomation?.serviceManId > 0) {
+        callback()
+      } else {
+        callback(new Error("璇烽�夋嫨鏈嶅姟浜哄憳"))
+      }
     }
   }
 }

--
Gitblit v1.8.0