From 2a43cb4d91827fa6e2ce9a20fb788f40b94448ce Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期四, 26 十二月 2024 14:33:08 +0800
Subject: [PATCH] 完成标准物质验收迁移

---
 src/components/view/a7-standard-method.vue |   94 ++++++++++++++++++++++++++++++-----------------
 1 files changed, 60 insertions(+), 34 deletions(-)

diff --git a/src/components/view/a7-standard-method.vue b/src/components/view/a7-standard-method.vue
index 60a635d..d40bad2 100644
--- a/src/components/view/a7-standard-method.vue
+++ b/src/components/view/a7-standard-method.vue
@@ -40,8 +40,11 @@
   <div class="standard_method">
     <div>
       <el-row class="title">
-        <el-col :span="12" style="padding-left: 20px;">鏍囧噯鏂规硶</el-col>
+        <el-col :span="12" style="padding-left: 20px;text-align: left;">鏍囧噯鏂规硶</el-col>
         <el-col :span="12" style="text-align: right;">
+          <el-button size="medium" @click="$refs.ValueTable.openUpload()" v-if="inPower">
+                        <i class="el-icon-upload2" style="color: #3A7BFA;"></i>
+                        <span style="color: #3A7BFA;">瀵煎叆</span></el-button>
           <el-button size="medium" type="primary" @click="openAdd" v-if="addPower">鏂板</el-button>
         </el-col>
       </el-row>
@@ -65,7 +68,7 @@
     <div class="table">
       <ValueTable ref="ValueTable" :url="$api.standardMethod.selectStandardMethodList"
         :delUrl="$api.standardMethod.delStandardMethod" :upUrl="$api.standardMethod.upStandardMethod"
-        :componentData="componentData" :key="upIndex" />
+        :componentData="componentData" :key="upIndex" :inputUrl="$api.standardMethod.importStandardDetails"/>
     </div>
   </div>
 </template>
@@ -95,7 +98,7 @@
             font: '缂栬緫',
             type: 'text',
             method: 'doDiy',
-            field: ['sampleType', 'createUserName', 'updateUserName', '妫�楠屽璞�=structureTestObjectId']
+            field: ['createUserName', 'updateUserName']
           }, {
             id: 'delete',
             font: '鍒犻櫎',
@@ -103,9 +106,6 @@
             method: 'doDiy'
           }],
           tagField: {
-            structureTestObjectId: {
-              select: []
-            },
             isProduct: {
               select: [{
                 value: 0,
@@ -126,14 +126,11 @@
                 label: '鏄�'
               }]
             },
-            qualificationId:{
+            qualificationId: {
               select: []
             }
           },
           selectField: {
-            structureTestObjectId: {
-              select: []
-            },
             isProduct: {
               select: [{
                 value: 0,
@@ -154,30 +151,48 @@
                 label: '鏄�'
               }]
             },
-            qualificationId:{
+            qualificationId: {
               select: []
             }
           },
-          requiredAdd: ['code', 'name', 'structureTestObjectId', 'isProduct','isUse','nameEn'],
-          requiredUp: ['code', 'name', 'structureTestObjectId', 'isProduct','isUse','nameEn']
+          cascaderField: {
+            structureTestObjectId: {
+              tree: []
+            },
+            // 瀛楁閰嶇疆
+            props: {
+              value: 'value',
+              label: 'label',
+              checkStrictly: true,
+              multiple: true
+            },
+          },
+          requiredAdd: ['code', 'name', 'isProduct', 'isUse', 'nameEn'],
+          requiredUp: ['code', 'name', 'isProduct', 'isUse', 'nameEn'],
+          accept:聽'.xlsx',
+          needSort: ['createTime', 'updateTime', 'field'],
+          inputType:聽'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
         },
         entityCopy: {},
         upIndex: 0,
         addDia: false,
-        addPower: true
+        addPower: true,
+        inPower: true,
       }
     },
     mounted() {
       this.entityCopy = this.HaveJson(this.componentData.entity)
       this.getPower()
-      this.selectTestObjectByName()
       this.getQualificationList()
+      this.selectTestObjectByName()
     },
     methods: {
       refreshTable() {
         this.$refs['ValueTable'].selectList()
+        this.selectTestObjectByName()
       },
       refresh() {
+        this.selectTestObjectByName()
         this.componentData.entity = this.HaveJson(this.entityCopy)
         this.upIndex++
       },
@@ -187,6 +202,7 @@
         let up = false
         let del = false
         let add = false
+        let inPower = false
         for (var i = 0; i < power.length; i++) {
           if (power[i].menuMethod == 'addStandardMethod') {
             add = true
@@ -197,6 +213,9 @@
           if (power[i].menuMethod == 'upStandardMethod') {
             up = true
           }
+          if (power[i].menuMethod == 'importStandardDetails') {
+            inPower = true
+          }
         }
         if (!del) {
           this.componentData.do.splice(1, 1)
@@ -205,31 +224,19 @@
           this.componentData.do.splice(0, 1)
         }
         this.addPower = add
+        this.inPower = inPower
       },
       openAdd() {
         this.$refs.ValueTable.openAddDia(this.$api.standardMethod.addStandardMethod);
       },
-      selectTestObjectByName() {
-        this.$axios.get(this.$api.capacityScope.selectTestObjectByName).then(res => {
-          let data = []
-          res.data.forEach(a => {
-            data.push({
-              label: a.specimenName,
-              value: a.id
-            })
-          })
-          this.componentData.selectField.structureTestObjectId.select = data
-          this.componentData.tagField.structureTestObjectId.select = data
-        })
-      },
-      getQualificationList(){
+      getQualificationList() {
         this.$axios.post(this.$api.enums.selectEnumByCategory, {
-					category: "璧勮川鍚嶇О"
-				}).then(res => {
-					let list = res.data
+          category: "璧勮川鍚嶇О"
+        }).then(res => {
+          let list = res.data
           this.componentData.selectField.qualificationId.select = list
           this.componentData.tagField.qualificationId.select = list
-				})
+        })
         // this.$axios.post(this.$api.certification.getCertificationDetail,{
         //     page: {
         //       current: -1,
@@ -252,7 +259,26 @@
         //       this.componentData.tagField.qualificationId.select = list
         //     }
         //   })
-      }
+      },
+      selectTestObjectByName() {
+        this.$axios.get(this.$api.standardTree.getStandardTree2).then(res => {
+          res.data.forEach(a => {
+            this.cascaderFieldData(a)
+          })
+          this.componentData.cascaderField.structureTestObjectId.tree = res.data
+        })
+      },
+      cascaderFieldData(val) {
+        if (val.children === undefined) {
+          return
+        } else if (val.children.length == 0) {
+          delete val.children
+        } else {
+          val.children.forEach(a => {
+            this.cascaderFieldData(a)
+          })
+        }
+      },
     }
   }
 </script>

--
Gitblit v1.9.3