From 7abc95a191d2c1a9bb9ff8fd7fb05470a0d4e86b Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期五, 02 八月 2024 10:04:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 web/src/views/modules/basicInfo/XhProductModel.vue |   97 +++++++++++++++++++++++++++++++++---------------
 1 files changed, 66 insertions(+), 31 deletions(-)

diff --git a/web/src/views/modules/basicInfo/XhProductModel.vue b/web/src/views/modules/basicInfo/XhProductModel.vue
index b1444f6..418481b 100644
--- a/web/src/views/modules/basicInfo/XhProductModel.vue
+++ b/web/src/views/modules/basicInfo/XhProductModel.vue
@@ -3,12 +3,13 @@
     <el-row :gutter="5">
       <el-col :span="5">
         <div class="fa-card-a" style="margin-right: 5px;height: calc(100vh - 123px)">
-          <product-model-tree @on-selected="onProductSelected" showXdy="true" ref="ProductModelTree"/>
+          <product-model-tree @on-selected="onProductSelected" @on-default="onDefault" showXdy="true"
+                              ref="ProductModelTree"/>
         </div>
       </el-col>
       <el-col :span="19">
         <div class="mod-basicInfo-xhProductModel fa-card-a" style="margin-left: 5px;">
-          <zt-table-wraper ref="tableObj"  defaultNotQuery="true" query-url="/basicInfo/XhProductModel/page"
+          <zt-table-wraper ref="tableObj" defaultNotQuery="true" query-url="/basicInfo/XhProductModel/page"
                            delete-url="/basicInfo/XhProductModel/ "
                            :paging='false'
                            v-slot="{ table }">
@@ -19,6 +20,8 @@
               <el-form-item>
                 <zt-button v-if="productType && productType!=='10'" type="query" @click="table.query()"/>
                 <zt-button v-if="productType && productType!=='10'" type="add" @click="add()"/>
+                <zt-button v-if="productType==='1'" size="small" type="primary" @click="exportProduct()">瀵煎嚭妯℃澘
+                </zt-button>
                 <zt-button v-if="productType==='3'" type="primary" @click="addCell()">鏂板铏氬崟鍏�</zt-button>
                 <zt-button v-if="productType && productType!=='10'" type="delete" @click="table.deleteHandle()"/>
               </el-form-item>
@@ -26,20 +29,28 @@
             <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:30}"
                       row-key="id"
                       @selection-change="table.selectionChangeHandle"
-            >
+                      :header-cell-style="{'text-align':'center'}">
               <el-table-column prop="name" label="鍚嶇О"/>
+              <el-table-column v-if="productType==='3'|| productType==='4'" prop="equipType" label="璁惧绫诲瀷"/>
               <zt-table-column-dict prop="productType" label="鑺傜偣绫诲瀷" dict="product"/>
               <el-table-column prop="operatImg" label="杩愯鍥剧墖" align="center">
                 <template v-slot="{ row }">
                   <el-image v-if="row.operatImg" :src="url+row.operatImg" style="height: 50px;width: 50px"></el-image>
                 </template>
               </el-table-column>
-              <el-table-column prop="sort" label="鎺掑簭" width="100px"/>
-              <zt-table-column-handle :table="table" width="150px"/>
+              <el-table-column prop="sort" label="鎺掑簭" width="100px" align="center"/>
+              <zt-table-column-handle :table="table" width="180px">
+                <template v-slot="{ row }">
+                  <zt-table-button v-if="productType==='1'" size="small" type="primary"
+                                   @click="importData(row)">瀵煎叆
+                  </zt-table-button>
+                </template>
+              </zt-table-column-handle>
             </el-table>
             <!-- 寮圭獥, 鏂板 / 淇敼 -->
-            <add-or-update @refreshDataList="refreshData" ref="AddOrUpdate"/>
-            <select-ty-model @refreshDataList="refreshData" ref="SelectTyModel"/>
+            <add-or-update @refreshDataList="refreshData('product')" ref="AddOrUpdate"/>
+            <select-ty-model @refreshDataList="refreshData('tree')" ref="SelectTyModel"/>
+            <product-import @refreshDataList="refreshData('import')" ref="ProductImport"/>
           </zt-table-wraper>
         </div>
       </el-col>
@@ -53,65 +64,89 @@
   import ProductModelTree from "./ProductModelTree";
   import Cookies from "js-cookie";
   import TyProductModel from "./TyProductModel-AddOrUpdate";
+  import ProductImport from "./ProductImport";
 
   export default {
     data() {
       return {
         url: `${window.SITE_CONFIG['apiURL']}/sysPictureBase/getSvgImage?token=${Cookies.get('token')}&id=`,
         productType: '',
+        shipId: '',
         dataForm: {
           name: '',
-          type:'',
+          type: '',
           pid: '',
-          srcId:'',
+          srcId: '',
         }
       }
     },
     components: {
+      ProductImport,
       TyProductModel,
       ProductModelTree,
       AddOrUpdate,
       SelectTyModel
     },
+    mounted() {
+      this.$refs.ProductModelTree.getProductList()
+    },
     methods: {
       add() {
-        this.dataForm.type=this.productType
-        if (this.dataForm.type !== '3') {
-          console.log(1111)
-          console.log(this.dataForm.type,'add() {')
-          this.dataForm.type = this.dataForm.type - 1
-        } else if (this.dataForm.type === '3') {
-          console.log(2222)
-          console.log(this.dataForm.type,'add() {')
-          this.dataForm.type = this.dataForm.type - 2
-        }else if (this.dataForm.type === '0'){
-          console.log(this.dataForm.type,'add() {')
-          this.$alert("褰撳墠鑺傜偣涓嶅彲鏂板瀛愯妭鐐癸紝璇烽噸鏂拌缃�")
-          return
+        this.dataForm.type = this.productType
+        if (this.dataForm.type !== '1') {
+          this.$refs.SelectTyModel.$refs.dialog.init(null, {
+            type: this.dataForm.type,
+            id: this.dataForm.pid,
+            shipId: this.shipId
+          })
+        } else {
+          this.$refs.AddOrUpdate.$refs.dialog.init(null, {id: null, type: 'zt', pid: this.dataForm.pid})
         }
-        this.$refs.SelectTyModel.$refs.dialog.init(null,{type:this.dataForm.type,id:this.dataForm.pid})
       },
-      addCell(){
-        this.$refs.AddOrUpdate.$refs.dialog.init(null,{type:10,pid:this.dataForm.pid})
+      addCell() {
+        this.$refs.AddOrUpdate.$refs.dialog.init(null, {
+          type: 10, pid: this.dataForm.pid, shipId: this.shipId
+        })
       },
       cellStyle({column}) {
         if (column.label === '鍚嶇О') {
           return 'text-align: left !important;'
         }
       },
-      refreshData(){
-        this.$refs.tableObj.query()
-        this.$refs.ProductModelTree.getProductList()
+      refreshData(param) {
+        if (param === 'import') {
+          this.$refs.tableObj.query()
+          this.$refs.ProductModelTree.getProductList()
+        } else if (param === 'tree') {
+          this.$refs.ProductModelTree.getProductList()
+        } else {
+          this.$refs.tableObj.query()
+        }
       },
       onProductSelected(data) {
-        console.log(data)
+        console.log(data, 'onProductSelected')
+        this.shipId = data.shipId
         this.dataForm.pid = data.id
         this.dataForm.type = data.productType
         this.productType = data.productType
-        if(data.productType!=='10'){
+        if (data.productType !== '10') {
           this.$refs.tableObj.query()
         }
-      }
+        console.log(data.productType, ' data.productType')
+        console.log(this.productType, ' data.productType')
+      },
+      importData(row) {
+        this.$refs.ProductImport.$refs.dialog.init(row)
+      },
+      exportProduct() {
+        window.location.href = './浜у搧缁撴瀯鏍戝鍏ユā鏉�.xlsx'
+      },
+      onDefault(defaultId) {
+        this.dataForm.pid = defaultId
+        this.dataForm.type = 2
+        this.productType = 2
+        this.$refs.tableObj.query()
+      },
     }
   }
 </script>

--
Gitblit v1.9.1