From 5a4edca45d9d966560c276b6b158f2e65a96f72c Mon Sep 17 00:00:00 2001
From: 祖安之光 <11848914+light-of-zuan@user.noreply.gitee.com>
Date: Fri, 30 Jan 2026 16:39:34 +0800
Subject: [PATCH] 添加产品修改

---
 src/views/license/licenseInfo/components/licenseDelayForm.vue |   12 +++++
 src/views/license/licenseInfo/components/licenseModForm.vue   |    9 ++++
 src/views/login/index.vue                                     |    1 
 src/api/product.js                                            |   11 +++++
 src/views/license/licenseInfo/index.vue                       |    1 
 src/views/usermng/product.vue                                 |   35 +++++++++++------
 src/views/license/licenseInfo/components/licenseInfoForm.vue  |   11 +++++
 7 files changed, 64 insertions(+), 16 deletions(-)

diff --git a/src/api/product.js b/src/api/product.js
index 4240f9e..fb2730f 100644
--- a/src/api/product.js
+++ b/src/api/product.js
@@ -45,6 +45,17 @@
   })
 }
 
+export function updateOldProduct(data) {
+    return request({
+        headers:{
+            'Authorization': getToken()
+        },
+        url: process.env.BASE_API+'/product/updateProduct',
+        method: 'post',
+        data:data
+    })
+}
+
 export function deleteProduct(data) {
   return request({
     headers:{
diff --git a/src/views/license/licenseInfo/components/licenseDelayForm.vue b/src/views/license/licenseInfo/components/licenseDelayForm.vue
index 8212082..c92723f 100644
--- a/src/views/license/licenseInfo/components/licenseDelayForm.vue
+++ b/src/views/license/licenseInfo/components/licenseDelayForm.vue
@@ -231,6 +231,7 @@
                         <!--                </el-col>-->
                     </el-row>
                     <el-row>
+                        <el-col :span="8">
                         <el-form-item label="经济类型:" prop="economictype" >
                             <el-select v-model.trim="dataForm.economictype"  placeholder="" clearable class="enterpriseBasicInformation_input"  :disabled="true">
                                 <el-option
@@ -242,6 +243,13 @@
                                 </el-option>
                             </el-select>
                         </el-form-item>
+                        </el-col>
+                        <el-col :span="16">
+                            <el-form-item label="许可证编号:" prop="licensecode">
+                                <el-input v-model.trim="dataForm.licensecode" class="carrierLicense_select">
+                                </el-input>
+                            </el-form-item>
+                        </el-col>
                     </el-row>
 
                     <div v-if="roleType==='烟花爆竹批发经营' || type === 2 "  :disabled="true">
@@ -717,6 +725,7 @@
                 effectdate:'',
                 noeffectdate:'',
                 economictype:'',
+                licensecode: '',
                 licenseStorage:[
 
                 ],
@@ -915,7 +924,8 @@
                         issuingunit:this.dataForm.issuingunit,
                         issuingdate:this.dataForm.issuingdate,
                         validstarttime:this.validTime[0],
-                        validendtime:this.validTime[1]
+                        validendtime:this.validTime[1],
+                        licensecode: this.dataForm.licensecode
 
           }).then(res=>{
             this.isSending = false
diff --git a/src/views/license/licenseInfo/components/licenseInfoForm.vue b/src/views/license/licenseInfo/components/licenseInfoForm.vue
index 89bf377..9bc6364 100644
--- a/src/views/license/licenseInfo/components/licenseInfoForm.vue
+++ b/src/views/license/licenseInfo/components/licenseInfoForm.vue
@@ -242,6 +242,7 @@
                         <!--                </el-col>-->
                     </el-row>
                     <el-row>
+                        <el-col :span="8">
                         <el-form-item label="经济类型:" prop="economictype">
                             <el-select v-model.trim="dataForm.economictype" placeholder="" clearable
                                        class="enterpriseBasicInformation_input">
@@ -254,6 +255,13 @@
                                 </el-option>
                             </el-select>
                         </el-form-item>
+                        </el-col>
+                        <el-col :span="16">
+                        <el-form-item label="许可证编号:" prop="licensecode">
+                            <el-input v-model.trim="dataForm.licensecode" class="carrierLicense_select">
+                            </el-input>
+                        </el-form-item>
+                        </el-col>
                     </el-row>
 
                     <div v-if="roleType==='烟花爆竹批发经营' || type === 2 ? true : false">
@@ -748,6 +756,7 @@
                 effectdate: '',
                 noeffectdate: '',
                 economictype: '',
+                licensecode: '',
                 licenseStorage: [],
                 remark: '',
             },
@@ -895,6 +904,8 @@
                     issuingdate: '',
                     effectdate: '',
                     noeffectdate: '',
+                    economictype: '',
+                    licensecode: '',
                     licenseStorage: [],
                     remark: '',
                 }
diff --git a/src/views/license/licenseInfo/components/licenseModForm.vue b/src/views/license/licenseInfo/components/licenseModForm.vue
index 492b323..e4a63a5 100644
--- a/src/views/license/licenseInfo/components/licenseModForm.vue
+++ b/src/views/license/licenseInfo/components/licenseModForm.vue
@@ -229,6 +229,7 @@
                         <!--                </el-col>-->
                     </el-row>
                     <el-row>
+                        <el-col :span="8">
                         <el-form-item label="经济类型:" prop="economictype" >
                             <el-select v-model.trim="dataForm.economictype"  placeholder="" clearable class="enterpriseBasicInformation_input">
                                 <el-option
@@ -240,6 +241,13 @@
                                 </el-option>
                             </el-select>
                         </el-form-item>
+                        </el-col>
+                        <el-col :span="16">
+                            <el-form-item label="许可证编号:" prop="licensecode">
+                                <el-input v-model.trim="dataForm.licensecode" class="carrierLicense_select">
+                                </el-input>
+                            </el-form-item>
+                        </el-col>
                     </el-row>
 
                     <div v-if="roleType==='烟花爆竹批发经营' || type === 2 ? true : false">
@@ -720,6 +728,7 @@
                 effectdate:'',
                 noeffectdate:'',
                 economictype:'',
+                licensecode: '',
                 licenseStorage:[
 
                 ],
diff --git a/src/views/license/licenseInfo/index.vue b/src/views/license/licenseInfo/index.vue
index c69fbb2..d445835 100644
--- a/src/views/license/licenseInfo/index.vue
+++ b/src/views/license/licenseInfo/index.vue
@@ -985,7 +985,6 @@
             },
             //打印正本
             giveData(val) {
-                console.log(JSON.parse(val.licenseStorage)[0],'>>>>')
                 this.code = val.code
                 this.name = val.name
                 this.mainpersonname = val.mainpersonname
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index b997653..af1345a 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -288,7 +288,6 @@
       // 根据服务器推送的消息做自己的业务处理
       let jsonMsg = JSON.parse(event.data)
       let _this = this
-      console.log(jsonMsg)
       if (jsonMsg.type === 'notify') {
         _this.$notify.warning({
           message: jsonMsg.message,
diff --git a/src/views/usermng/product.vue b/src/views/usermng/product.vue
index 9a22f0f..781739b 100644
--- a/src/views/usermng/product.vue
+++ b/src/views/usermng/product.vue
@@ -136,7 +136,8 @@
         </el-table-column>
         <el-table-column label="操作" align="center" width="240" class-name="small-padding fixed-width">
           <template slot-scope="scope">
-            <el-button v-if="getBtnPermission('edit')" type="text" @click="showEditHandle(scope.row)">查看</el-button>
+              <el-button v-if="getBtnPermission('edit')" type="text" @click="showEditHandle('update',scope.row)">修改</el-button>
+            <el-button v-if="getBtnPermission('edit')" type="text" @click="showEditHandle('editor',scope.row)">查看</el-button>
             <el-button v-if="getBtnPermission('delete')" type="text" style="color:red;"
                        @click="deleteHandle(scope.row)">删除
             </el-button>
@@ -157,7 +158,7 @@
         @current-change="handleCurrentChange"
       />
     </div>
-    <el-dialog :title="dialogStatus==='create'|| dialogStatus === 'createNew'?'新增':'查看'" :visible.sync="dialogFormVisible"
+    <el-dialog :title="dialogStatus==='create'|| dialogStatus === 'createNew'?'新增':dialogStatus === 'update'?'修改':'查看'" :visible.sync="dialogFormVisible"
                :modal-append-to-body="false" :close-on-click-modal="false" width="700px">
       <el-form ref="dataForm" :rules="dataFormRules" :model="dataForm" label-position="right" label-width="140px"
                style="margin-left:50px;width:500px;" element-loading-text="保存中...">
@@ -178,7 +179,7 @@
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="产品小类:" prop="type">
+        <el-form-item label="产品小类:" prop="secondaryType">
           <el-select v-model="dataForm.secondaryType" clearable placeholder="请选择" :disabled="dialogStatus==='editor'"
                      @change="selectChange">
             <el-option
@@ -256,7 +257,7 @@
       deleteProduct,
       getMajorCategoryTree,
       getManufacturerTree, getPermitLevelTree, getSecondaryCategoryTree,
-      productList,
+      productList, updateOldProduct,
       updateProduct
   } from "../../api/product";
   import {parseError} from "../../utils/messageDialog";
@@ -339,14 +340,14 @@
         'username'
       ]),
         debouncedSubmit() {
-            return this.debounce(this.submitHandle, 1000);
+            return this.debounce(this.submitHandle, 800);
         }
     },
     methods: {
-      async selectChange(){
+      async selectChange(second){
         this.$forceUpdate();
         this.dataForm.level = '';
-        let res = await getPermitLevelTree(this.dataForm.secondaryType);
+        let res = await getPermitLevelTree(second || this.dataForm.secondaryType);
         this.permitLevelOptions = res.data;
       },
       getProductMajorCategory(){
@@ -430,8 +431,7 @@
           }else if (this.dialogStatus === 'createNew') {
               this.createNewHandle();
           }else {
-              // this.updateHandle();
-              this.dialogFormVisible = false;
+              this.updateHandle();
           }
       },
       createHandle: function () {
@@ -536,6 +536,7 @@
           id: '',
           name: '',
           type: '',
+        secondaryType: '',
           directionCode: '',
           manufacturer: '',
           specification: '',
@@ -569,7 +570,7 @@
             const userName = Cookies.get('userName');
             const name = Cookies.get('name');
             _this.dataForm['modifiedBy'] = name + '(' + userName + ')';
-            updateProduct(_this.dataForm).then(response => {
+              updateOldProduct(_this.dataForm).then(response => {
               const res = response.data
               if (res.code == 200) {
                 _this.dialogFormVisible = false
@@ -587,10 +588,17 @@
           }
         })
       },
-      showEditHandle: function (row) {
+      showEditHandle: async function (type,row) {
         this.resetDataForm();
-        this.dialogStatus = 'editor';
-        this.dataFormSetValue(row);
+          if(type == 'editor'){
+              this.dialogStatus = 'editor';
+          }else{
+              this.dialogStatus = 'update';
+          }
+          await this.getProductSecondaryCategory(row.type)
+
+          await this.selectChange(row.secondaryType)
+          await this.dataFormSetValue(row);
         this.dialogFormVisible = true;
         this.$nextTick(() => {
           this.$refs['dataForm'].clearValidate()
@@ -600,6 +608,7 @@
         this.dataForm.id = row.id;
         this.dataForm.name = row.name;
         this.dataForm.type = row.type;
+          this.dataForm.secondaryType = row.secondaryType;
         this.dataForm.directionCode = row.directionCode;
         this.dataForm.manufacturer = row.companyNumber;
         this.dataForm.specification = row.specification;

--
Gitblit v1.9.2