From e5454b769d44a34af423bf87ac8a740bf8c20341 Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期二, 29 四月 2025 13:25:29 +0800
Subject: [PATCH] Merge branch 'dev' into dev_tides

---
 src/views/structural/capabilityAndLaboratory/capability/index.vue |   92 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 68 insertions(+), 24 deletions(-)

diff --git a/src/views/structural/capabilityAndLaboratory/capability/index.vue b/src/views/structural/capabilityAndLaboratory/capability/index.vue
index 1bb6202..19f9318 100644
--- a/src/views/structural/capabilityAndLaboratory/capability/index.vue
+++ b/src/views/structural/capabilityAndLaboratory/capability/index.vue
@@ -13,7 +13,7 @@
                      style="display: inline;margin-right: 8px"
                      :action="uploadAction1"
                      :before-upload="beforeUpload1" :headers="token" :on-error="onError1"
-                     :on-success="handleSuccessUp" :show-file-list="false" accept='.doc,.docx,.xls,.xlsx'>
+                     :on-success="handleSuccessUp1" :show-file-list="false" accept='.doc,.docx,.xls,.xlsx'>
             <el-button size="small" type="primary">瀵煎叆</el-button>
           </el-upload>
           <el-button size="small" type="primary" v-if="radio === 1" @click="uploadDia = true">瀵煎叆</el-button>
@@ -33,14 +33,24 @@
                     v-model="itemParameterForm.inspectionItemSubclass" @keyup.enter.native="refreshTable()">
           </el-input>
         </el-form-item>
-        <el-form-item label="妫�楠屽璞�" prop="sample">
+        <el-form-item label="妫�楠屽璞�" prop="sample" v-if="radio===0">
           <el-input size="small" placeholder="璇疯緭鍏�" clearable
                     v-model="itemParameterForm.sample" @keyup.enter.native="refreshTable()">
           </el-input>
         </el-form-item>
+        <el-form-item label="妫�楠屽璞�" prop="specimenName" v-if="radio===1">
+          <el-input size="small" placeholder="璇疯緭鍏�" clearable
+                    v-model="itemParameterForm.specimenName" @keyup.enter.native="refreshTable()">
+          </el-input>
+        </el-form-item>
+        <el-form-item label="闆朵欢鍙�" prop="partNo" v-if="radio===1">
+          <el-input size="small" placeholder="璇疯緭鍏�" clearable
+                    v-model="itemParameterForm.partNo" @keyup.enter.native="refreshTable()">
+          </el-input>
+        </el-form-item>
         <el-form-item>
-          <el-button type="primary" icon="el-icon-search" size="mini" @click="refreshTable">鏌� 璇�</el-button>
-          <el-button icon="el-icon-refresh" size="mini" @click="refresh">閲� 缃�</el-button>
+          <el-button type="primary" size="mini" @click="refreshTable">鏌ヨ</el-button>
+          <el-button size="mini" @click="refresh">閲嶇疆</el-button>
         </el-form-item>
       </el-form>
 <!--      妫�楠岄」鐩弬鏁拌〃鏍�-->
@@ -59,6 +69,7 @@
     <!--浜у搧缁存姢寮规-->
     <el-dialog title="浜у搧缁存姢" :visible.sync="diaProduct" width="900px">
       <lims-table :tableData="productData" :column="productColumn" height="460"
+                  @pagination="productPagination"
                   :page="productPage" :tableLoading="productableLoading"></lims-table>
       <span slot="footer" class="dialog-footer">
         <el-button @click="diaProduct = false">鍙� 娑�</el-button>
@@ -123,8 +134,10 @@
 import EditForm from "@/views/structural/capabilityAndLaboratory/capabilityComponents/EditForm.vue";
 import testObjectEditForm from "@/views/structural/capabilityAndLaboratory/capabilityComponents/testObjectEditForm.vue";
 import {getToken} from "@/utils/auth";
+import { obtainItemParameterList } from '@/api/structural/laboratoryScope'
 
 export default {
+  name: 'Capability',
   components: {limsTable, EditForm, testObjectEditForm, BindPartDialog, BindSupplierDensityDialog},
   data() {
     return {
@@ -187,17 +200,23 @@
           prop: 'laboratoryId',
           minWidth: '130',
           formatData: (params) => {
-            if (params == 1) {
-              return '瑁呭鐢电紗璇曢獙瀹�'
-            } else if (params == 5) {
-              return '閫氫俊浜у搧瀹為獙瀹�'
-            } else if (params == 6) {
-              return '鐢靛姏浜у搧瀹為獙瀹�'
-            } else if (params == 8) {
-              return '鍌ㄨ兘浜у搧瀹為獙瀹�'
-            } else {
-              return '灏勯绾跨紗瀹為獙瀹�'
+            let index = this.laboratoryList.findIndex(item => item.value == params)
+            if(index > -1) {
+              return this.laboratoryList[index].label
+            }else {
+              return null
             }
+            // if (params == 1) {
+            //   return '瑁呭鐢电紗璇曢獙瀹�'
+            // } else if (params == 5) {
+            //   return '閫氫俊浜у搧瀹為獙瀹�'
+            // } else if (params == 6) {
+            //   return '鐢靛姏浜у搧瀹為獙瀹�'
+            // } else if (params == 8) {
+            //   return '鍌ㄨ兘浜у搧瀹為獙瀹�'
+            // } else {
+            //   return '灏勯绾跨紗瀹為獙瀹�'
+            // }
           },
           formatType: (params) => {
             if (params == 1) {
@@ -209,7 +228,7 @@
             } else if (params == 8) {
               return 'danger'
             } else {
-              return ''
+              return null
             }
           }
         },
@@ -289,7 +308,9 @@
       itemParameterForm: {
         inspectionItem: null,
         inspectionItemSubclass: null,
-        sample: null
+        sample: null,
+        specimenName: null,
+        partNo: null
       },
       radio: 0,
       productLoad: false,
@@ -336,7 +357,8 @@
       productPage: {
         total:0,
         size:10,
-        current:0,
+        current:1,
+        partNo: null,
         layout: 'total, prev, pager, next'
       },
       productableLoading: false,
@@ -361,10 +383,12 @@
       currentSupplierDensityRow: {}, // 閫夋嫨闆朵欢缁戝畾鏈潯鏁版嵁鐨勪俊鎭�
       bindSupplierDensityDialog: false,
       bindPartDialog: false,
-      type: null,  // 闆朵欢缁戝畾鐨勭被鍨�--0锛氭楠屽璞★紝1锛氫骇鍝佺淮鎶�
+      type: null,  // 闆朵欢缁戝畾鐨勭被鍨�--0锛氭楠屽璞★紝1锛氫骇鍝佺淮鎶�,
+      laboratoryList:[]
     }
   },
   created() {
+    this.getItemParameterList()
     this.refreshTable()
   },
   computed: {
@@ -385,8 +409,8 @@
       this.$refs.upload.clearFiles()
       this.uploadDia = false
       this.uploading = false
-      if (response.code === 201) {
-        this.$message.error(response.message)
+      if (response.code !== 200) {
+        this.$message.error(response.msg)
         return
       }
       this.$message.success('涓婁紶鎴愬姛')
@@ -421,10 +445,10 @@
         return true;
       }
     },
-    handleSuccessUp (response, file, fileList) {
-      this.$refs.upload.clearFiles()
-      if (response.code === 201) {
-        this.$message.error(response.message)
+    handleSuccessUp1 (response, file, fileList) {
+      this.$refs.upload1.clearFiles()
+      if (response.code !== 200) {
+        this.$message.error(response.msg)
         return
       }
       this.$message.success('涓婁紶鎴愬姛')
@@ -529,8 +553,11 @@
     upProduct(row) {
       this.diaProduct = true
       this.objectId = row.id
+      this.productPage.current = 1
+      this.productPage.partNo = this.itemParameterForm.partNo
       this.getProductList(row)
     },
+    // 鏌ヨ浜у搧缁存姢鍒楄〃鏁版嵁
     getProductList () {
       const params = {
         objectId: this.objectId,
@@ -543,6 +570,11 @@
       }).catch(err => {
         this.productableLoading = false
       })
+    },
+    // 浜у搧缁存姢鍒楄〃鍒嗛〉
+    productPagination(page) {
+      this.productPage.current = page.page
+      this.getProductList()
     },
     // 浜у搧缁存姢-鏂板-缂栬緫
     editProduct (type, row) {
@@ -636,6 +668,18 @@
     closeBindSupplierDensityDialog () {
       this.bindSupplierDensityDialog = false
     },
+    getItemParameterList(){
+      obtainItemParameterList().then(res => {
+        let data = []
+        res.data.forEach(a => {
+          data.push({
+            label: a.laboratoryName,
+            value: a.id
+          })
+        })
+        this.laboratoryList = data
+      })
+    }
   }
 }
 </script>

--
Gitblit v1.9.3