From 653a7a72f7d6a816b4b5e24a07b7d2f450cfb287 Mon Sep 17 00:00:00 2001
From: 董国庆 <364620639@qq.com>
Date: 星期五, 16 五月 2025 14:41:04 +0800
Subject: [PATCH] 实验中止审批
---
laboratory/src/components/DynamicComponent/addTableData.vue | 45 +++++++++++++++++++++++++++++++++++++--------
1 files changed, 37 insertions(+), 8 deletions(-)
diff --git a/laboratory/src/components/DynamicComponent/addTableData.vue b/laboratory/src/components/DynamicComponent/addTableData.vue
index 95267e6..22fcbb7 100644
--- a/laboratory/src/components/DynamicComponent/addTableData.vue
+++ b/laboratory/src/components/DynamicComponent/addTableData.vue
@@ -144,6 +144,8 @@
</template>
<script>
+import { listByRole } from './service';
+
export default {
name: "AddDialog",
props: {
@@ -173,13 +175,7 @@
photoList: [],
spectrumList: [],
defaultImageUrl: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', // 默认图片地址
- userOptions: [
- { value: '1', label: '用户1' },
- { value: '2', label: '用户2' },
- { value: '3', label: '用户3' },
- { value: '4', label: '用户4' },
- { value: '5', label: '用户5' }
- ]
+ userOptions: []
};
},
computed: {
@@ -228,6 +224,20 @@
},
},
methods: {
+ getUserOptions() {
+ listByRole().then(res => {
+ if (res) {
+ this.userOptions = res.map(user => ({
+ value: user.userId,
+ label: user.nickName || user.userName
+ }));
+ } else {
+ this.$message.error('获取用户列表失败');
+ }
+ }).catch(err => {
+ console.error('获取用户列表失败', err);
+ });
+ },
checkEditPermission(header) {
if (!header.role || !Array.isArray(header.role)) {
return true;
@@ -348,6 +358,21 @@
photos: this.photoList,
spectrums: this.spectrumList,
};
+
+ // 为用户类型字段添加用户完整信息
+ if (this.headerList && this.headerList.length) {
+ this.headerList.forEach(header => {
+ if (header.type === 'user' && Array.isArray(submitData[header.name])) {
+ // 为每个用户类型字段添加userInfo属性,包含用户完整信息
+ submitData[`${header.name}_userInfo`] = submitData[header.name].map(userId => {
+ const userInfo = this.userOptions.find(user => user.value === userId);
+ return userInfo ? userInfo : { value: userId, label: userId };
+ });
+ }
+ });
+ }
+
+ console.log(submitData,'修改的数据')
this.$emit("success", submitData);
this.handleClose();
} else {
@@ -370,7 +395,9 @@
// 同时更新form中对应的字段值以通过表单验证
const imageHeader = this.headerList.find(h => h.type === 'image');
if (imageHeader && imageHeader.name) {
- this.$set(this.form, imageHeader.name, '默认图片');
+ // 保存图片URL,这样在表格中可以直接使用
+ this.$set(this.form, imageHeader.name, this.defaultImageUrl);
+ console.log('设置图片字段:', imageHeader.name, this.defaultImageUrl);
}
this.$refs.form.validateField("spectrums");
@@ -381,6 +408,8 @@
},
mounted() {
+ // 获取用户列表数据
+ this.getUserOptions();
},
};
</script>
--
Gitblit v1.7.1