From 8f9e65a587ee29b607010f83025456ee28c9b0d6 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期二, 13 一月 2026 16:28:35 +0800
Subject: [PATCH] 修改产品结构详情

---
 src/views/basicData/product/index.vue |   81 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 75 insertions(+), 6 deletions(-)

diff --git a/src/views/basicData/product/index.vue b/src/views/basicData/product/index.vue
index b88d678..e652c53 100644
--- a/src/views/basicData/product/index.vue
+++ b/src/views/basicData/product/index.vue
@@ -146,7 +146,19 @@
             <el-form-item label="瑙勬牸鍨嬪彿锛�" prop="model">
               <el-input
                 v-model="modelForm.model"
-                placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�"
+                placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�(g*琚嬫暟)"
+                clearable
+                @keydown.enter.prevent
+              />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="24">
+            <el-form-item label="鍏朵粬瑙勬牸鍨嬪彿锛�" prop="otherModel">
+              <el-input
+                v-model="modelForm.otherModel"
+                placeholder="璇疯緭鍏ュ叾浠栬鏍煎瀷鍙�"
                 clearable
                 @keydown.enter.prevent
               />
@@ -165,6 +177,24 @@
             </el-form-item>
           </el-col>
         </el-row>
+<!--        <el-row>-->
+<!--          <el-col :span="24">-->
+<!--            <el-form-item label="缁戝畾鏈哄櫒锛�" prop="speculativeTradingName">-->
+<!--              <el-select-->
+<!--                v-model="modelForm.speculativeTradingName"-->
+<!--                placeholder="璇烽�夋嫨缁戝畾鏈哄櫒"-->
+<!--                multiple-->
+<!--                clearable-->
+<!--                style="width: 100%"-->
+<!--              >-->
+<!--                <el-option label="鐐掓満1" value="鐐掓満1" />-->
+<!--                <el-option label="鐐掓満2" value="鐐掓満2" />-->
+<!--                <el-option label="鐐掓満3" value="鐐掓満3" />-->
+<!--                <el-option label="鐐掓満4" value="鐐掓満4" />-->
+<!--              </el-select>-->
+<!--            </el-form-item>-->
+<!--          </el-col>-->
+<!--        </el-row>-->
       </el-form>
       <template #footer>
         <div class="dialog-footer">
@@ -205,6 +235,10 @@
 const expandedKeys = ref([]);
 const tableColumn = ref([
   {
+    label: "浜у搧瑙勬牸缂栧彿",
+    prop: "productCode",
+  },
+  {
     label: "瑙勬牸鍨嬪彿",
     prop: "model",
   },
@@ -212,6 +246,10 @@
     label: "鍗曚綅",
     prop: "unit",
   },
+  // {
+  //   label: "缁戝畾鏈哄櫒",
+  //   prop: "speculativeTradingName",
+  // },
   {
     dataType: "action",
     label: "鎿嶄綔",
@@ -244,12 +282,22 @@
     productName: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
   },
   modelForm: {
+    otherModel:'',
     model: "",
     unit: "",
+    speculativeTradingName: [],
   },
   modelRules: {
-    model: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
-    unit: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+    model: [
+      // { required: true, message: "璇疯緭鍏�", trigger: "blur" },
+      { 
+        pattern: /^[0-9*]*$/, 
+        message: "鍙兘杈撳叆鏁板瓧鍜�*鍙�", 
+        trigger: "blur" 
+      }
+    ],
+    // unit: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+    // speculativeTradingName: [{ required: false, message: "璇烽�夋嫨缁戝畾鏈哄櫒", trigger: "change" }],
   },
 });
 const { form, rules, modelForm, modelRules } = toRefs(data);
@@ -286,10 +334,15 @@
   modelOperationType.value = type;
   modelDia.value = true;
   modelForm.value.model = "";
-  modelForm.value.model = "";
+  modelForm.value.unit = "";
+  modelForm.value.speculativeTradingName = [];
   modelForm.value.id = "";
   if (type === "edit") {
     modelForm.value = { ...data };
+    // 濡傛灉鍚庣杩斿洖鐨勬槸瀛楃涓诧紝闇�瑕佽浆鎹负鏁扮粍
+    if (data.speculativeTradingName && typeof data.speculativeTradingName === 'string') {
+      modelForm.value.speculativeTradingName = data.speculativeTradingName.split(',');
+    }
   }
 };
 // 鎻愪氦浜у搧鍚嶇О淇敼
@@ -358,8 +411,24 @@
 const submitModelForm = () => {
   proxy.$refs.modelFormRef.validate((valid) => {
     if (valid) {
-      modelForm.value.productId = currentId.value;
-      addOrEditProductModel(modelForm.value).then((res) => {
+      let _modelForm = { ...modelForm.value };
+
+      if(_modelForm.otherModel){
+        _modelForm.model = _modelForm.otherModel;
+      }
+      delete _modelForm.otherModel;
+      // 纭繚 speculativeTradingName 鏄暟缁勭被鍨嬶紝鐒跺悗杞崲涓洪�楀彿鍒嗛殧鐨勫瓧绗︿覆
+      let speculativeTradingNameValue = modelForm.value.speculativeTradingName;
+      if (!Array.isArray(speculativeTradingNameValue)) {
+        // 濡傛灉涓嶆槸鏁扮粍锛岃浆鎹负鏁扮粍
+        speculativeTradingNameValue = speculativeTradingNameValue.split(',').filter(item => item);
+      }
+      const submitData = {
+        ..._modelForm,
+        productId: currentId.value,
+        speculativeTradingName: speculativeTradingNameValue.join(',')
+      };
+      addOrEditProductModel(submitData).then((res) => {
         proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
         closeModelDia();
         getModelList();

--
Gitblit v1.9.3