From ba3262fa23ca4e6d55caa7bb809e48183311bc33 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 05 三月 2026 16:11:50 +0800
Subject: [PATCH] fix: 批量删除危险物料管控记录时却只能删除一个
---
src/views/qualityManagement/nonconformingManagement/components/formDia.vue | 53 ++++++++++++++++++++++++++++++++++-------------------
1 files changed, 34 insertions(+), 19 deletions(-)
diff --git a/src/views/qualityManagement/nonconformingManagement/components/formDia.vue b/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
index 13a231d..2cc3ee4 100644
--- a/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
+++ b/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
@@ -9,14 +9,6 @@
<el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef">
<el-row :gutter="30">
<el-col :span="12">
- <el-form-item label="鐘舵�侊細" prop="inspectState">
- <el-select v-model="form.inspectState">
- <el-option label="寰呭鐞�" :value="0" />
- <el-option label="宸插鐞�" :value="1" />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
<el-form-item label="绫诲埆锛�" prop="inspectType">
<el-select v-model="form.inspectType">
<el-option label="鍘熸潗鏂欐楠�" :value="0" />
@@ -43,7 +35,10 @@
</el-col>
<el-col :span="12">
<el-form-item label="瑙勬牸鍨嬪彿锛�" prop="model">
- <el-input v-model="form.model" placeholder="璇疯緭鍏�" clearable/>
+ <el-select v-model="form.model" placeholder="璇烽�夋嫨" clearable :disabled="operationType === 'edit'"
+ filterable readonly @change="handleChangeModel">
+ <el-option v-for="item in modelOptions" :key="item.id" :label="item.model" :value="item.id" />
+ </el-select>
</el-form-item>
</el-col>
</el-row>
@@ -62,7 +57,10 @@
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="妫�楠屽憳锛�" prop="checkName">
- <el-input v-model="form.checkName" placeholder="璇疯緭鍏�" clearable/>
+ <el-select v-model="form.checkName" placeholder="璇烽�夋嫨" clearable filterable style="width: 100%">
+ <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName"
+ :value="item.nickName"/>
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -87,14 +85,19 @@
</el-col>
<el-col :span="12">
<el-form-item label="澶勭悊缁撴灉锛�" prop="dealResult">
- <el-input v-model="form.dealResult" placeholder="璇疯緭鍏�" clearable/>
+ <el-select v-model="form.dealResult" placeholder="璇烽�夋嫨" clearable>
+ <el-option :label="item.label" :value="item.value" v-for="item in rejection_handling" :key="item.value" />
+ </el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="澶勭悊浜猴細" prop="dealName">
- <el-input v-model="form.dealName" placeholder="璇疯緭鍏�" clearable/>
+ <el-select v-model="form.dealName" placeholder="璇烽�夋嫨" clearable filterable style="width: 100%">
+ <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName"
+ :value="item.nickName"/>
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -123,18 +126,20 @@
</template>
<script setup>
-import {ref} from "vue";
-import {productTreeList} from "@/api/basicData/product.js";
+import {ref, reactive, toRefs, getCurrentInstance} from "vue";
+import {modelList, productTreeList} from "@/api/basicData/product.js";
import {
getQualityUnqualifiedInfo,
qualityUnqualifiedAdd,
qualityUnqualifiedUpdate
} from "@/api/qualityManagement/nonconformingManagement.js";
+import {userListNoPage} from "@/api/system/user.js";
const { proxy } = getCurrentInstance()
const emit = defineEmits(['close'])
const dialogFormVisible = ref(false);
const operationType = ref('')
+const { rejection_handling } = proxy.useDict("rejection_handling")
const data = reactive({
form: {
checkTime: "",
@@ -147,7 +152,6 @@
quantity: "",
checkCompany: "",
checkResult: "",
- inspectState: '',
inspectType: '',
defectivePhenomena: '',
dealResult: '',
@@ -157,7 +161,7 @@
process: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
checkName: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
productId: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
- model: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
+ model: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
unit: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
quantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
@@ -165,17 +169,23 @@
},
});
const { form, rules } = toRefs(data);
+const userList = ref([]);
const productOptions = ref([]);
+const modelOptions = ref([])
// 鎵撳紑寮规
const openDialog = (type, row) => {
operationType.value = type;
+ userListNoPage().then(res => {
+ userList.value = res.data || [];
+ })
dialogFormVisible.value = true;
form.value = {}
getProductOptions();
if (operationType.value === 'edit') {
getQualityUnqualifiedInfo(row.id).then(res => {
- form.value = {...res.data}
+ const { inspectState, ...rest } = (res.data || {})
+ form.value = { ...rest }
})
}
}
@@ -186,6 +196,9 @@
};
const getModels = (value) => {
form.value.productName = findNodeById(productOptions.value, value);
+ modelList({ id: value }).then((res) => {
+ modelOptions.value = res;
+ })
};
const findNodeById = (nodes, productId) => {
for (let i = 0; i < nodes.length; i++) {
@@ -219,13 +232,15 @@
const submitForm = () => {
proxy.$refs.formRef.validate(valid => {
if (valid) {
+ // 鐘舵�佸瓧娈典笉鍦ㄨ〃鍗曞~鍐欙紝涔熶笉浼犵粰鍚庣
+ const { inspectState, ...payload } = (form.value || {})
if (operationType.value === "add") {
- qualityUnqualifiedAdd(form.value).then(res => {
+ qualityUnqualifiedAdd(payload).then(res => {
proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
closeDia();
})
} else {
- qualityUnqualifiedUpdate(form.value).then(res => {
+ qualityUnqualifiedUpdate(payload).then(res => {
proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
closeDia();
})
--
Gitblit v1.9.3