From b8ee898cfa6e3fe1e26930604b53696ba7b6003a Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期五, 03 七月 2026 13:01:53 +0800
Subject: [PATCH] 销售退货新增页面基本信息加上发货类型下拉框,可选货车或者快递。货车 展示发货车牌号,选择快递则展示快递公司,快递单号。对应的列表也要加上相应的字段,采购退货也是一样加下

---
 src/views/salesManagement/returnOrder/components/formDia.vue |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/src/views/salesManagement/returnOrder/components/formDia.vue b/src/views/salesManagement/returnOrder/components/formDia.vue
index 40c98dc..4fc0859 100644
--- a/src/views/salesManagement/returnOrder/components/formDia.vue
+++ b/src/views/salesManagement/returnOrder/components/formDia.vue
@@ -69,6 +69,31 @@
               </el-form-item>
             </el-col>
             <el-col :span="4">
+              <el-form-item label="鍙戣揣绫诲瀷锛�" prop="shippingType">
+                <el-select v-model="form.shippingType" placeholder="璇烽�夋嫨鍙戣揣绫诲瀷" @change="handleShippingTypeChange">
+                  <el-option label="璐ц溅" :value="1" />
+                  <el-option label="蹇��" :value="2" />
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="4" v-if="form.shippingType === 1">
+              <el-form-item label="鍙戣揣杞︾墝鍙凤細" prop="truckPlateNo">
+                <el-input v-model="form.truckPlateNo" placeholder="璇疯緭鍏ュ彂璐ц溅鐗屽彿" />
+              </el-form-item>
+            </el-col>
+            <template v-else-if="form.shippingType === 2">
+              <el-col :span="4">
+                <el-form-item label="蹇�掑叕鍙革細" prop="expressCompany">
+                  <el-input v-model="form.expressCompany" placeholder="璇疯緭鍏ュ揩閫掑叕鍙�" />
+                </el-form-item>
+              </el-col>
+              <el-col :span="4">
+                <el-form-item label="蹇�掑崟鍙凤細" prop="expressNo">
+                  <el-input v-model="form.expressNo" placeholder="璇疯緭鍏ュ揩閫掑崟鍙�" />
+                </el-form-item>
+              </el-col>
+            </template>
+            <el-col :span="4">
               <el-form-item label="閫�娆炬�婚锛�" prop="refundAmount">
                 <el-input v-model="form.refundAmount" disabled placeholder="鑷姩璁$畻" />
               </el-form-item>
@@ -186,6 +211,10 @@
     returnNo: "",
     customerId: "",
     shippingId: "",
+    shippingType: "",
+    truckPlateNo: "",
+    expressCompany: "",
+    expressNo: "",
     projectId: "",
     maker: "",
     makeTime: "",
@@ -203,6 +232,7 @@
     }],
     customerId: [{ required: true, message: "璇烽�夋嫨瀹㈡埛", trigger: "change" }],
     shippingId: [{ required: true, message: "璇烽�夋嫨鍏宠仈鍑哄簱鍗曞彿", trigger: "change" }],
+    shippingType: [{ required: true, message: "璇烽�夋嫨鍙戣揣绫诲瀷", trigger: "change" }],
   }
 });
 const { form, rules } = toRefs(data);
@@ -491,6 +521,10 @@
       returnNo: "",
       customerId: "",
       shippingId: "",
+      shippingType: "",
+      truckPlateNo: "",
+      expressCompany: "",
+      expressNo: "",
       projectId: "",
       maker: "",
       makeTime: "",
@@ -537,6 +571,11 @@
     const payload = { ...form.value, returnSaleProducts };
     delete payload.returnNoCheckbox;
     if (operationType.value === "add" && form.value.returnNoCheckbox) delete payload.returnNo;
+    if (payload.shippingType !== 1) payload.truckPlateNo = "";
+    if (payload.shippingType !== 2) {
+      payload.expressCompany = "";
+      payload.expressNo = "";
+    }
     if (operationType.value === "add") {
       returnManagementAdd(payload).then(() => {
         proxy.$modal.msgSuccess("鏂板鎴愬姛");
@@ -560,6 +599,10 @@
         returnNo: "",
         customerId: "",
         shippingId: "",
+        shippingType: "",
+        truckPlateNo: "",
+        expressCompany: "",
+        expressNo: "",
         projectId: "",
         maker: "",
         makeTime: "",
@@ -603,6 +646,19 @@
   formRef.value?.validateField('returnNo');
 };
 
+const handleShippingTypeChange = (val) => {
+  if (val === 1) {
+    form.value.expressCompany = "";
+    form.value.expressNo = "";
+  } else if (val === 2) {
+    form.value.truckPlateNo = "";
+  } else {
+    form.value.truckPlateNo = "";
+    form.value.expressCompany = "";
+    form.value.expressNo = "";
+  }
+};
+
 const customerNameChange = async (val, clearDownstream = true) => {
   // val is customerId now
   if (clearDownstream) {

--
Gitblit v1.9.3