From c1b92c8821e62bbf151d747a0ec630e18677438b Mon Sep 17 00:00:00 2001
From: qx <1084500556@qq.com>
Date: 星期二, 15 七月 2025 09:21:39 +0800
Subject: [PATCH] qx

---
 src/views/system/tijian/index.vue |  350 ++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 194 insertions(+), 156 deletions(-)

diff --git a/src/views/system/tijian/index.vue b/src/views/system/tijian/index.vue
index 97c63ae..51025ed 100644
--- a/src/views/system/tijian/index.vue
+++ b/src/views/system/tijian/index.vue
@@ -181,7 +181,7 @@
                 trigger: 'blur',
               },
             ]">
-              <el-input v-model="form.cusPhone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" :disabled="isDisabled"
+              <el-input v-model="form.cusPhone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" :disabled="isDisabled" maxlength="11"
                 @input="form.cusPhone = $event.replace(/\s/g, '')" />
             </el-form-item>
 
@@ -285,7 +285,8 @@
       <el-tabs type="border-card" style="height: 560px; margin: 0 10px; width: 100%" v-model="activeNames"
         @tab-click="handleClick">
         <el-tab-pane label="濂楅" name="first">
-          <el-form :model="queryParam" ref="queryForm" size="small" :inline="true" v-if="showSearch" label-width="auto">
+          <el-form :model="queryParam" ref="queryForm" size="small" :inline="true" v-if="showSearch" label-width="auto"
+            @submit.native.prevent="handle">
             <el-form-item label="濂楅鍚嶇О" prop="pacName">
               <el-input v-model="queryParam.pacName" placeholder="璇疯緭鍏ュ椁愬悕绉�" clearable @keyup.enter.native="handle" />
             </el-form-item>
@@ -420,6 +421,31 @@
             </el-col>
           </el-row>
         </el-tab-pane>
+        <el-tab-pane label="浜插睘濂楅" name="four">
+          <el-form :model="queryParam" ref="queryForm" size="small" :inline="true" v-if="showSearch" label-width="auto"
+            @submit.native.prevent="handle">
+            <el-form-item label="濮撳悕" prop="pacName">
+              <el-input v-model="queryParam.pacName" placeholder="璇疯緭鍏ュ鍚�" clearable @keyup.enter.native="handle" />
+            </el-form-item>
+             <el-form-item label="韬唤璇�" prop="pacName">
+              <el-input v-model="queryParam.pacName" placeholder="璇疯緭鍏ヨ韩浠借瘉" clearable @keyup.enter.native="handle" />
+            </el-form-item>
+            <el-form-item>
+              <el-button type="primary" icon="el-icon-search" size="mini" @click="handle">鏌ヨ</el-button>
+            </el-form-item>
+          </el-form>
+          <div class="tab4">
+            <div class="grid-content bg-purple" style="margin-left: 5px; width: 98%">
+              <el-table v-loading="loading" element-loading-text="姝e湪鍔犺浇涓�..." element-loading-spinner="el-icon-loading"
+                border :data="newpacName" @selection-change="handleSelectionChange" height="450px" ref="tb">
+                <el-table-column type="selection" width="40px" align="center" label="閫夋嫨" />
+                <el-table-column label="濂楅鍚嶇О" align="center" prop="pacName" width="120px" />
+                <el-table-column label="濂楅浠锋牸" align="center" prop="price" width="120px" />
+                <el-table-column label="濂楅鏄庣粏" align="center" prop="allProName" :show-overflow-tooltip="true" />
+              </el-table>
+            </div>
+          </div>
+        </el-tab-pane>
       </el-tabs>
       <span slot="footer" class="dialog-footer">
         <el-button @click="cancel">鍙� 娑�</el-button>
@@ -478,8 +504,11 @@
                   :max="10" :min="0" @change="debounceNumberChange" :disabled="isfalse"></el-input-number>
               </el-form-item>
               <el-form-item label="瀹炴敹閲戦">
-                <el-input placeholder="瀹炴敹閲戦" v-model="TotalPrice" style="width: 206px" @input="changeXianjia"
+                <el-input placeholder="瀹炴敹閲戦" v-model="TotalPrice" style="width: 205px" @input="changeXianjia"
                   @blur="numberChangeXianPrice(discount, discount)" />
+              </el-form-item>
+              <el-form-item label="鏄惁鏇挎" v-if="tjtype">
+                <el-input placeholder="鏄惁鏇挎" v-model="sftj" style="width: 150px"></el-input>
               </el-form-item>
               <br />
 
@@ -922,6 +951,8 @@
       proIds: [],
       // 鏄剧ず鎼滅储鏉′欢
       showSearch: true,
+      tjtype: false,
+      sftj:null,
       activeNames: "first",
       // 鏍戠姸褰㈢姸
       Treedata: [],
@@ -957,6 +988,7 @@
       // valueUrl: "ws://192.168.1.3:6789/websocket",
       valueUrl: "ws://127.0.0.1:6789/websocket",
       valueUrls: "ws://127.0.0.1:6789/websocket",
+      
       // valueUrls: "ws://"+getIp() +":6789/websocket",
       webSocket: null,
       // 韬唤璇侀渶瑕�
@@ -1229,6 +1261,7 @@
       this.title = "娣诲姞浣撴鍗曚綅淇℃伅缁存姢";
     },
     idFn1() {
+      this.tjtype = true
       if (this.form.firmName) {
         const originalCompId = this.form.firmId;
         this.CompanyList.forEach((item) => {
@@ -1289,7 +1322,8 @@
       // }
       if (!value) return true;
       if (data.proName.indexOf(value) !== -1) return true;
-      if (data.proEngName.indexOf(value) !== -1) return true;
+      let values = value.toLowerCase();
+      if (data.proEngName.indexOf(values) !== -1) return true;
       // 鍖归厤灏忓啓
       let arr = data.proName.spell('low', 'array');
       let spell = arr.join('');
@@ -1313,7 +1347,8 @@
       if (data.zhmc.indexOf(value) !== -1) {
         return data.zhmc.indexOf(value) !== -1;
       } else {
-        return data.pym.indexOf(value) !== -1;
+        let values = value.toLowerCase();
+        return data.pym.indexOf(values) !== -1;
       }
     },
     beforeDestroy() {
@@ -1707,46 +1742,57 @@
     },
     /** 鐧昏鎻愪氦鎸夐挳 */
     /** 鐧昏鎻愪氦鎸夐挳 */
-    submitForm() { 
-      let _this = this;
-      if (!this.form.cusPhone || !this.form.cusName) {
-        this.$message.warning("璇峰~閫夊繀濉」");
-      } else {
-        this.$refs["form"].validate((valid) => {
-          if (valid) {
-            // 鍒涘缓琛ㄥ崟鏁版嵁鐨勫壇鏈苟鍘婚櫎绌烘牸
-            const formData = { ...this.form };
-            formData.cusName = formData.cusName ? formData.cusName.replace(/\s/g, '') : '';
-            formData.cusPhone = formData.cusPhone ? formData.cusPhone.replace(/\s/g, '') : '';
-            formData.cusIdcard = formData.cusIdcard ? formData.cusIdcard.replace(/\s/g, '') : '';
+  submitForm() {
+  let _this = this;
+  if (!this.form.cusPhone || !this.form.cusName) {
+    this.$message.warning("璇峰~閫夊繀濉」");
+    return;
+  }
 
-            // 澶勭悊鎬у埆鍊�
-            if (formData.cusSex === "濂�") {
-              formData.cusSex = 1;
-            }
-            if (formData.cusSex === "鐢�") {
-              formData.cusSex = 0;
-            }
-            if (formData.cusSex === "鏈煡") {
-              formData.cusSex = 2;
-            }
-            if (formData.tjType === "") {
-              formData.tjType = this.dict.type.dict_team[0].value;
-            
-            }
+  this.$refs["form"].validate((valid) => {
+    if (valid) {
+      // 鍒涘缓琛ㄥ崟鏁版嵁鐨勫壇鏈苟鍘婚櫎绌烘牸
+      const formData = { ...this.form };
+      formData.cusName = formData.cusName ? formData.cusName.replace(/\s/g, '') : '';
+      formData.cusPhone = formData.cusPhone ? formData.cusPhone.replace(/\s/g, '') : '';
+      formData.cusIdcard = formData.cusIdcard ? formData.cusIdcard.replace(/\s/g, '') : '';
+      // 娣诲姞 sfzImg 瀛楁
+      formData.sfzImg = this.imageUrl || ''; // 浣跨敤 base64 鏍煎紡鐨勫ご鍍忔暟鎹紝鑻ヤ负绌哄垯浼犵┖瀛楃涓�
 
-            addCustomer(formData).then((response) => {
-              this.responseList = response.data;
-              this.form.tjType = this.dict.type.dict_team[0].value;
-              this.$modal.msgSuccess("鏂板鎴愬姛");
-              _this.tcShow = true;
-              _this.isDisabled = true;
-              _this.top = false;
-            });
-          }
-        });
+      // 澶勭悊鎬у埆鍊�
+      if (formData.cusSex === "濂�") {
+        formData.cusSex = 1;
       }
-    },
+      if (formData.cusSex === "鐢�") {
+        formData.cusSex = 0;
+      }
+      if (formData.cusSex === "鏈煡") {
+        formData.cusSex = 2;
+      }
+      if (formData.tjType === "") {
+        formData.tjType = this.dict.type.dict_team[0].value;
+      }
+
+      // 鍙�夛細妫�鏌� sfzImg 鏄惁瀛樺湪
+      // if (!formData.sfzImg) {
+      //   this.$message.warning("璇峰厛鑾峰彇韬唤璇佸ご鍍�");
+      //   return;
+      // }
+
+      addCustomer(formData).then((response) => {
+        this.responseList = response.data;
+        this.form.tjType = this.dict.type.dict_team[0].value;
+        this.$modal.msgSuccess("鏂板鎴愬姛");
+        _this.tcShow = true;
+        _this.isDisabled = true;
+        _this.top = false;
+      }).catch((error) => {
+        this.$modal.msgError("鐧昏澶辫触锛岃妫�鏌ユ暟鎹�");
+        console.error("Error in addCustomer:", error);
+      });
+    }
+  });
+},
 
     getmailType() {
       if (this.getType == "2") {
@@ -1924,11 +1970,15 @@
     // 鏈�鏂颁娇鐢╳ebSocket閫氫俊
     readCardWebSocket(resultObj) {
       let _this = this;
-
+      const isChineseChar = (char) => /[\u4E00-\u9FA5]/.test(char)
       if (resultObj.code === 200 && resultObj.data.name != null) {
         //鍥炴樉鐩稿叧鏁版嵁
         _this.form.cusName = resultObj.data.name;
-        _this.form.cusSex = resultObj.data.sex == "0" ? "濂�" : "鐢�";
+        if (isChineseChar(resultObj.data.sex)) {
+          _this.form.cusSex = resultObj.data.sex == "濂�" ? 1 : 0
+        } else {
+          _this.form.cusSex = resultObj.data.sex;
+        }
         _this.form.cusNational = resultObj.data.mz;
         _this.form.cusBrithday = resultObj.data.csrq;
         if (_this.form.cusBrithday) {
@@ -1983,7 +2033,7 @@
           //鍥炴樉鐩稿叧鏁版嵁
           _this.form.cusName = resultObj.resultContent.partyName;
           _this.form.cusSex =
-            resultObj.resultContent.gender == "0" ? "濂�" : "鐢�";
+            resultObj.resultContent.gender;
           _this.form.cusNational = resultObj.resultContent.nation;
           _this.form.cusBrithday = resultObj.resultContent.bornDay;
           if (_this.form.cusBrithday) {
@@ -2233,11 +2283,6 @@
       this.form.cusIdcard = params[0].sfzh;
       this.handleQuery();
     },
-
-    // 涓婁紶澶村儚
-    handleAvatarSuccess(res, file) {
-      this.imageUrl = URL.createObjectURL(file.raw);
-    },
     beforeAvatarUpload(file) {
       const isJPG = file.type === "image/jpeg";
       const isLt2M = file.size / 1024 / 1024 < 2;
@@ -2280,7 +2325,8 @@
         dwId: this.form.firmId,
       };
       if (this.name) {
-        getPackageListName(this.name).then((response) => {
+        let name = this.name.toLowerCase()
+        getPackageListName(name).then((response) => {
           this.newpacName = response.data;
           this.loading = false;
         });
@@ -2931,15 +2977,17 @@
 
     // 澶勭悊璁㈠崟椤圭洰
     processOrderItems(cusId) {
-      console.log(11222)
       getTransitionList1(cusId).then((response) => {
-        this.tableData1 = response.data;
+       this.tableData1 = response.data;
+        // if (response.data.tjCategory != null) {
+        //   this.tjCategory = response.data.tjCategory;
+        // }
         let Price = 0;
         if (this.tableData1) {
           this.tableData1.forEach((item) => {
-            if (typeof item.nowPrice  === 'number') {
-              item.nowPrice  = Number(item.nowPrice.toFixed(2));
-          }
+            if (typeof item.nowPrice === 'number') {
+              item.nowPrice = Number(item.nowPrice.toFixed(3));
+            }
             if (item.tjCategory != null) {
               this.tjCategory = item.tjCategory;
             }
@@ -2953,7 +3001,7 @@
             Price += item.nowPrice || 0; // 绱姞瀹炴敹閲戦
             this.TotalPrice = Price.toFixed(2);
           });
-          console.log( this.TotalPrice1,this.TotalPrice)
+          console.log(this.TotalPrice1, this.TotalPrice)
           // 璁$畻鎶樻墸
           this.discount = this.TotalPrice1 > 0 ?
             (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) * 10 : 0;
@@ -3240,110 +3288,100 @@
     },
 
     // 鏈�鍚庢彁浜ゆ寜閽�
-    submitPrice() {
-      let _this = this;
-      this.loadingSubmit = true;
-      if (_this.tjCategory !== "") {
-        let List = _this.tableData1; //鍗曚釜椤圭洰淇℃伅
-        if (this.responseList.cusId) {
-          var userId = this.responseList.cusId;
-        } else {
-          var userId = _this.form.cusId;
-        }
-        let tjType = _this.form.tjType;
-        if (this.tableData[0]) {
-          var pacId = this.tableData[0].pacId;
-        }
+  submitPrice() {
+  let _this = this;
+  this.loadingSubmit = true;
+  if (_this.tjCategory !== "") {
+    let List = _this.tableData1; // 鍗曚釜椤圭洰淇℃伅
+    if (this.responseList.cusId) {
+      var userId = this.responseList.cusId;
+    } else {
+      var userId = _this.form.cusId;
+    }
+    let tjType = _this.form.tjType;
+    if (this.tableData[0]) {
+      var pacId = this.tableData[0].pacId;
+    }
 
-        //tjOrderList//杩欎釜鏄鐞嗗畬鐨勬瘡涓�椤瑰椁愪俊鎭�
-        List.forEach((item) => {
-          if (item.list) {
-            item.list.forEach((item1) => {
-              this.tjOrderList.push({
-                proName: item1.proName,
-                proPrice: item1.nowPrice,
-                proId: item1.proId,
-              });
-            });
-          } else if (item.tjProjectList) {
-            item.tjProjectList.forEach((item1) => {
-              this.tjOrderList.push({
-                proName: item1.proName,
-                proPrice: item1.priceNow,
-                proId: item1.proId,
-              });
-            });
-          } else {
-            this.tjOrderList.push({
-              proName: item.proName,
-              proPrice: item.ysPrice,
-              proId: item.proId,
-            });
-          }
+    // tjOrderList 澶勭悊
+    List.forEach((item) => {
+      if (item.list) {
+        item.list.forEach((item1) => {
+          this.tjOrderList.push({
+            proName: item1.proName,
+            proPrice: item1.nowPrice,
+            proId: item1.proId,
+          });
         });
-        let copeWith = this.TotalPrice1;
-        let paidIn = this.TotalPrice.toString();
-        let discount = this.discount;
-        this.tjFlowingWater = { copeWith, paidIn, discount };
-        const newArray = this.tableData1
-          .filter((item) => item.discount < 10) // 杩囨护鍑� discount < 10 鐨勯」
-          .map((item) => ({
-            discount: item.discount,
-            parentProId: item.parentProId,
-            cusIdCard: item.cusId,
-            yhj: item.nowPrice
-          })); // 鍒涘缓鏂扮殑瀵硅薄锛屽寘鍚� discount 鍜� id
-        gaibianzhekou(newArray).then((res) => {
-          this.loadingSubmit = false;
-          if (res.code === 200) {
-
-            let data;
-
-            if (pacId || this.tjOrderList.length > 0) {
-              data = {
-                photo: this.srcUrl,
-                pacId,
-                tjOrderList: this.tjOrderList,
-                tjFlowingWater: this.tjFlowingWater,
-                userId,
-                tjType,
-                tjCategory: this.tjCategory,
-                firmId: this.form.firmId,
-                firmName: this.form.firmName,
-                firmDeptName: this.form.firmDeptName,
-              };
-
-              this.listgetOrder(data);
-            } else if (pacId || this.tjOrderList.length > 0) {
-              data = {
-                photo: this.srcUrl,
-                tjOrderList: this.tjOrderList,
-                tjFlowingWater: this.tjFlowingWater,
-                userId,
-                tjType,
-                tjCategory: this.tjCategory,
-                firmId: this.form.firmId,
-                firmName: this.form.firmName,
-                firmDeptName: this.form.firmDeptName,
-              };
-              this.listgetOrder(data);
-            } else {
-              this.loadingSubmit = false;
-              this.$message({
-                type: "warning ",
-                message: "璇烽�夋嫨濂楅!",
-              });
-            }
-          } else {
-            this.loadingSubmit = false;
-            this.$modal.msgError("鏀瑰彉鎶樻墸閿欒");
-          }
+      } else if (item.tjProjectList) {
+        item.tjProjectList.forEach((item1) => {
+          this.tjOrderList.push({
+            proName: item1.proName,
+            proPrice: item1.priceNow,
+            proId: item1.proId,
+          });
         });
       } else {
-        this.loadingSubmit = false;
-        this.$modal.msgError("璇烽�夋嫨浣撴绫诲埆");
+        this.tjOrderList.push({
+          proName: item.proName,
+          proPrice: item.ysPrice,
+          proId: item.proId,
+        });
       }
-    },
+    });
+
+    let copeWith = this.TotalPrice1;
+    let paidIn = this.TotalPrice.toString();
+    let discount = this.discount;
+    this.tjFlowingWater = { copeWith, paidIn, discount };
+
+    const newArray = this.tableData1
+      .filter((item) => item.discount < 10)
+      .map((item) => ({
+        discount: item.discount,
+        parentProId: item.parentProId,
+        cusIdCard: item.cusId,
+        yhj: item.nowPrice,
+      }));
+
+    gaibianzhekou(newArray).then((res) => {
+      this.loadingSubmit = false;
+      if (res.code === 200) {
+        let data;
+
+        if (pacId || this.tjOrderList.length > 0) {
+          data = {
+            photo: this.srcUrl, // 淇濈暀鍘熸湁 photo 瀛楁锛堝鏋滃悗绔粛闇�瑕侊級
+            sfzImg: this.imageUrl, // 娣诲姞 sfzImg 瀛楁锛屼紭鍏堜娇鐢ㄦ湇鍔″櫒URL锛岃嫢鏃犲垯浣跨敤base64
+            pacId,
+            tjOrderList: this.tjOrderList,
+            tjFlowingWater: this.tjFlowingWater,
+            userId,
+            tjType,
+            tjCategory: this.tjCategory,
+            firmId: this.form.firmId,
+            firmName: this.form.firmName,
+            firmDeptName: this.form.firmDeptName,
+          };
+
+          this.listgetOrder(data);
+        } else {
+          this.loadingSubmit = false;
+          this.$message({
+            type: "warning",
+            message: "璇烽�夋嫨濂楅!",
+          });
+        }
+      } else {
+        this.loadingSubmit = false;
+        this.$modal.msgError("鏀瑰彉鎶樻墸閿欒");
+      }
+    });
+  } else {
+    this.loadingSubmit = false;
+    this.$modal.msgError("璇烽�夋嫨浣撴绫诲埆");
+  }
+},
   },
 };
 </script>

--
Gitblit v1.8.0