From 5e39c16fa7ebf060d20b8e23da7e5ee60ea6f2c4 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期二, 10 十月 2023 16:40:20 +0800
Subject: [PATCH] feat: 合同管理、服务合同、客户服务单、服务回访单 列表和新建弹窗样式调整

---
 src/views/sales/masterOrder/AddMasterOrderDialog.vue |  132 +++++++++++++++++++++++++------------------
 1 files changed, 76 insertions(+), 56 deletions(-)

diff --git a/src/views/sales/masterOrder/AddMasterOrderDialog.vue b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
index 6a4213d..666e60f 100644
--- a/src/views/sales/masterOrder/AddMasterOrderDialog.vue
+++ b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
@@ -13,7 +13,7 @@
         :model="editConfig.infomation"
         :rules="rules"
         label-position="right"
-        label-width="308px"
+        label-width="120px"
         size="mini"
       >
         <!-- 淇℃伅 -->
@@ -27,15 +27,23 @@
                   <div class="custom-name">
                     <el-autocomplete
                       v-model="editConfig.infomation.client_name"
-                      :fetch-suggestions="querySearchAsync"
+                      :fetch-suggestions="
+                        (queryString, callback) => {
+                          querySearchAsync(queryString, callback, 'client')
+                        }
+                      "
                       value-key="name"
-                      @select="handleSelectClient"
+                      @select="handleSelectClient('client', $event)"
                     ></el-autocomplete>
-                    <div class="common-select-btn" @click="selClientClick">
+                    <div class="common-select-btn" @click="selClientClick('client')">
                       <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i>
                     </div>
-                    <div class="common-select-btn" @click="clearupClient">
-                      <i class="el-icon-edit-outline" title="娓呴櫎"></i>
+                    <div
+                      v-if="editConfig.infomation.client_name && editConfig.infomation.client_name.length > 0"
+                      class="common-select-btn"
+                      @click="clearupClient('client')"
+                    >
+                      <i class="el-icon-remove-outline" title="娓呴櫎"></i>
                     </div>
                   </div>
                 </el-form-item>
@@ -51,7 +59,7 @@
                     v-model="editConfig.infomation.member_id"
                     placeholder="璇烽�夋嫨"
                     size="mini"
-                    style="width: 63%"
+                    style="width: 100%"
                   >
                     <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                     </el-option>
@@ -63,6 +71,7 @@
                   <el-date-picker
                     v-model="editConfig.infomation.start_time"
                     value-format="yyyy-MM-dd HH:mm:ss"
+                    style="width: 100%"
                     type="datetime"
                     placeholder="閫夋嫨鏃ユ湡"
                   >
@@ -75,6 +84,7 @@
                     v-model="editConfig.infomation.end_time"
                     value-format="yyyy-MM-dd HH:mm:ss"
                     type="datetime"
+                    style="width: 100%"
                     placeholder="閫夋嫨鏃ユ湡"
                   >
                   </el-date-picker>
@@ -82,7 +92,14 @@
               </el-col>
               <el-col :span="12">
                 <el-form-item label="鍚堝悓閲戦" prop="money">
-                  <el-input v-model="editConfig.infomation.money"></el-input>
+                  <el-input-number
+                    v-model="editConfig.infomation.money"
+                    placeholder="璇疯緭鍏�"
+                    :min="0"
+                    :precision="2"
+                    :controls="false"
+                    style="width: 100%"
+                  ></el-input-number>
                 </el-form-item>
               </el-col>
             </el-row>
@@ -162,7 +179,7 @@
   },
   data() {
     return {
-      dialogWidth: "80%",
+      dialogWidth: "50%",
       editConfig: this.editCommonConfig,
       rules: {
         number: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
@@ -175,7 +192,8 @@
         editVisible: false,
         title: "",
         infomation: {}
-      }
+      },
+      clientId: this.editCommonConfig.infomation.client_id
     }
   },
   created() {
@@ -200,37 +218,23 @@
           const params = this.saveParams()
           console.log(params)
           if (this.editConfig.title === "鏂板缓") {
-            getAddMasterOrder(params)
-              .then((res) => {
-                console.log(res)
-                this.editConfig.visible = false
-                if (res.code === 200) {
-                  this.$message({
-                    message: "娣诲姞鎴愬姛",
-                    type: "success"
-                  })
-                  this.$parent.getData()
-                }
-              })
-              .catch((err) => {
-                console.log(err)
-              })
+            getAddMasterOrder(params).then((res) => {
+              console.log(res)
+              this.editConfig.visible = false
+              if (res.code === 200) {
+                this.$message.success("娣诲姞鎴愬姛")
+                this.$parent.getData()
+              }
+            })
           } else {
-            getUpdateMasterOrder(params)
-              .then((res) => {
-                console.log(res)
-                this.editConfig.visible = false
-                if (res.code === 200) {
-                  this.$message({
-                    message: "缂栬緫鎴愬姛",
-                    type: "success"
-                  })
-                  this.$parent.getData()
-                }
-              })
-              .catch((err) => {
-                console.log(err)
-              })
+            getUpdateMasterOrder(params).then((res) => {
+              console.log(res)
+              this.editConfig.visible = false
+              if (res.code === 200) {
+                this.$message.success("缂栬緫鎴愬姛")
+                this.$parent.getData()
+              }
+            })
           }
         } else {
           console.log("error submit")
@@ -242,10 +246,10 @@
       let data = this.editConfig.infomation
       let params = {
         id: this.editConfig.title === "鏂板缓" ? 0 : data.id,
-        client_id: parseInt(data.client_id) || 0,
+        client_id: this.clientId || 0,
         end_time: data.end_time || "",
         member_id: data.member_id || 0,
-        money: parseFloat(data.money) || "0",
+        money: data.money || 0,
         number: data.number || "",
         start_time: data.start_time || ""
       }
@@ -254,9 +258,12 @@
     handleClose() {
       this.editConfig.visible = false
     },
-    // 閫夋嫨瀹㈡埛鐩稿叧鏂规硶
-    querySearchAsync(queryString, cb) {
-      var restaurants = this.clientList
+    // 閫夋嫨鐢ㄦ埛鐩稿叧鏂规硶
+    querySearchAsync(queryString, cb, value) {
+      var restaurants = []
+      if (value === "client") {
+        restaurants = this.clientList
+      }
       var results = queryString ? restaurants.filter(this.createStateFilter(queryString)) : restaurants
       cb(results)
     },
@@ -265,21 +272,31 @@
         return state.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0
       }
     },
-    handleSelectClient(item) {
-      this.editConfig.infomation.client_id = item.id
+    handleSelectClient(value, item) {
+      if (value === "client") {
+        this.clientId = item.id
+      }
     },
-    selClientClick() {
-      this.editSelectClientConfig.editVisible = true
+    selClientClick(value) {
+      if (value === "client") {
+        this.editSelectClientConfig.editVisible = true
+      }
     },
-    selClient(row) {
-      console.log(row)
-      this.editConfig.infomation.client_name = row.name
-      this.editConfig.infomation.client_id = row.id
+    selClient(row, value) {
+      if (value === "client") {
+        this.editConfig.infomation.client_name = row.name
+        this.clientId = row.id
+      }
     },
     // 娓呴櫎宸查�夋嫨鐢ㄦ埛
-    clearupClient() {
-      this.editConfig.infomation.client_name = ""
-      this.editConfig.infomation.client_id = 0
+    clearupClient(value) {
+      if (value === "client") {
+        this.editConfig.infomation.client_name = ""
+        this.clientId = 0
+      } else if (value === "contact") {
+        this.editConfig.infomation.contact_name = ""
+        this.contactId = 0
+      }
     },
     // 娣诲姞闄勪欢
     addAnnexClick() {},
@@ -323,6 +340,9 @@
             font-size: 18px;
             cursor: pointer;
           }
+          .el-autocomplete{
+            flex: 1;
+          }
         }
       }
       .address-view {

--
Gitblit v1.8.0