From 9b47c9bed54972f0dff5796a0fdb9dcbe363a9a2 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 06 三月 2025 13:32:52 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 src/views/structural/capabilityAndLaboratory/capabilityComponents/testObjectEditForm.vue |  142 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 142 insertions(+), 0 deletions(-)

diff --git a/src/views/structural/capabilityAndLaboratory/capabilityComponents/testObjectEditForm.vue b/src/views/structural/capabilityAndLaboratory/capabilityComponents/testObjectEditForm.vue
new file mode 100644
index 0000000..e92119c
--- /dev/null
+++ b/src/views/structural/capabilityAndLaboratory/capabilityComponents/testObjectEditForm.vue
@@ -0,0 +1,142 @@
+<template>
+  <div>
+    <el-dialog :title="operationType === 'add' ? '鏂板' : '缂栬緫'" :visible.sync="editFormDia" width="500px" @close="closeDia">
+      <el-form ref="editForm" :model="editForm" :rules="editFormRules" label-width="120px" label-position="right">
+        <el-form-item label="鍦烘墍锛�" prop="laboratoryId">
+          <el-select v-model="editForm.laboratoryId" clearable placeholder="璇烽�夋嫨" size="small" style="width: 100%">
+            <el-option v-for="item in laboratoryList" :key="item.value" :label="item.label" :value="item.value"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="妫�楠屽璞★細" prop="specimenName">
+          <el-input v-model="editForm.specimenName" clearable size="small"></el-input>
+        </el-form-item>
+        <el-form-item label="妫�楠屽璞N锛�" prop="specimenNameEn">
+          <el-input v-model="editForm.specimenNameEn" clearable size="small"></el-input>
+        </el-form-item>
+        <el-form-item label="瀵硅薄浠e彿锛�" prop="code">
+          <el-input v-model="editForm.code" clearable size="small"></el-input>
+        </el-form-item>
+        <el-form-item label="瀵硅薄绫诲瀷锛�" prop="objectType">
+          <el-select v-model="editForm.objectType" clearable placeholder="璇烽�夋嫨" size="small" style="width: 100%">
+            <el-option v-for="item in dict.type.object_type" :key="item.value" :label="item.label" :value="item.value"></el-option>
+          </el-select>
+        </el-form-item>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="closeDia">鍙� 娑�</el-button>
+        <el-button :loading="editLoad" type="primary" @click="handleEdit">鎻� 浜�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+
+import {obtainItemParameterList} from "@/api/structural/laboratoryScope";
+import {addTestObject, upTestObject} from "@/api/structural/capability";
+
+export default {
+  name: "EditForm",
+  // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+  dicts: ['object_type'],
+  components: {},
+  data() {
+    // 杩欓噷瀛樻斁鏁版嵁
+    return {
+      editFormDia: false,
+      editLoad: false,
+      editForm: {
+        id: '',
+        laboratoryId: '', // 鍦烘墍
+        specimenName: '', // 妫�楠屽璞�
+        specimenNameEn: '', // 妫�楠屽璞N
+        code: '', // 瀵硅薄浠e彿
+        objectType: '', // 瀵硅薄绫诲瀷
+      },
+      laboratoryList: [],
+      editFormRules: {
+        laboratoryId: [
+          { required: true, message: '璇烽�夋嫨鍦烘墍', trigger: 'change' }
+        ],
+        specimenName: [
+          { required: true, message: '璇疯緭鍏ユ楠屽璞�', trigger: 'blur' }
+        ],
+        code: [
+          { required: true, message: '璇疯緭鍏ュ璞′唬鍙�', trigger: 'blur' }
+        ],
+      },
+      operationType: ''
+    }
+  },
+  // 鏂规硶闆嗗悎
+  methods: {
+    openDia (type, row) {
+      this.operationType = type
+      this.obtainItemParameterList()
+      this.editFormDia = true
+      if (type === 'add') {
+        this.resetForm("editForm");
+      } else {
+        this.editForm = {...row}
+      }
+    },
+    // 鎻愪氦缂栬緫
+    handleEdit () {
+      this.$refs.editForm.validate(valid => {
+        if (valid) {
+          this.editLoad = true
+          if(this.editForm.id){
+            // 淇敼
+            upTestObject(this.editForm).then(res => {
+              this.editLoad = false
+              if (res.code === 500) {
+                return
+              }
+              this.$message.success('淇敼鎴愬姛')
+              this.closeDia()
+              this.$emit('refreshList')
+            }).catch(e => {
+              this.editLoad = false
+            })
+          }else{
+            // 鏂板
+            addTestObject(this.editForm).then(res => {
+              this.editLoad = false
+              if (res.code === 500) {
+                return
+              }
+              this.$message.success('娣诲姞鎴愬姛')
+              this.closeDia()
+              this.$emit('refreshList')
+            }).catch(e => {
+              this.editLoad = false
+            })
+          }
+        }
+      })
+    },
+    // 鍏抽棴寮规
+    closeDia () {
+      this.editFormDia = false
+      this.resetForm("editForm");
+    },
+    // 鑾峰彇鍦烘墍涓嬫媺妗嗙殑鍊�
+    obtainItemParameterList() {
+      obtainItemParameterList().then(res => {
+        let data = []
+        res.data.forEach(a => {
+          data.push({
+            label: a.laboratoryName,
+            value: a.id
+          })
+        })
+        this.laboratoryList = data
+      })
+    },
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

--
Gitblit v1.9.3