hookehuyr

fix 编辑和流程模式下,显示的数据不是完整的历史数据需要合并提交

1 <!-- 1 <!--
2 * @Date: 2022-07-18 10:22:22 2 * @Date: 2022-07-18 10:22:22
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2024-07-12 09:54:41 4 + * @LastEditTime: 2024-07-13 19:08:45
5 * @FilePath: /data-table/src/views/index.vue 5 * @FilePath: /data-table/src/views/index.vue
6 * @Description: 首页 6 * @Description: 首页
7 --> 7 -->
...@@ -182,6 +182,7 @@ const PHeader_title = ref(""); ...@@ -182,6 +182,7 @@ const PHeader_title = ref("");
182 const mockData = ref([]); 182 const mockData = ref([]);
183 const formData = ref([]); 183 const formData = ref([]);
184 const postData = ref({}); 184 const postData = ref({});
185 +const historyData = ref({});
185 186
186 // 编辑模式不能提交操作 187 // 编辑模式不能提交操作
187 const model = $route.query.model; 188 const model = $route.query.model;
...@@ -266,10 +267,6 @@ const onClickFloatingBubble = () => { ...@@ -266,10 +267,6 @@ const onClickFloatingBubble = () => {
266 } 267 }
267 const myForm = ref(null); 268 const myForm = ref(null);
268 const approval_actions = ref([]); 269 const approval_actions = ref([]);
269 -setTimeout(() => {
270 - // 审核操作列表数据
271 - approval_actions.value = formSetting.value.flow_node_action_list?.map((item) => { return { name: item.btnText, id: item.id } });
272 -}, 1000);
273 const onApprovalSelect = (item) => { 270 const onApprovalSelect = (item) => {
274 flow_node_action_id.value = item.id; 271 flow_node_action_id.value = item.id;
275 if (page_type === 'add') { // 新增页面统一处理为提交 272 if (page_type === 'add') { // 新增页面统一处理为提交
...@@ -554,6 +551,7 @@ onMounted(async () => { ...@@ -554,6 +551,7 @@ onMounted(async () => {
554 const history_data = await queryFormDataAPI({ form_code: $route.query.code, data_id, openid: iframe_openid }); 551 const history_data = await queryFormDataAPI({ form_code: $route.query.code, data_id, openid: iframe_openid });
555 if (history_data.code) { 552 if (history_data.code) {
556 let object = history_data.data; // 表单数据 553 let object = history_data.data; // 表单数据
554 + console.log("🚀 ~ file: index.vue:553 ~ onMounted ~ object:", object);
557 formData.value.forEach((item) => { // 把对应数据赋值到表单 555 formData.value.forEach((item) => { // 把对应数据赋值到表单
558 for (const key in object) { 556 for (const key in object) {
559 const element = object[key]; 557 const element = object[key];
...@@ -567,6 +565,7 @@ onMounted(async () => { ...@@ -567,6 +565,7 @@ onMounted(async () => {
567 } 565 }
568 } 566 }
569 }); 567 });
568 + historyData.value = history_data.data; // 历史表单字段数据
570 } 569 }
571 if (!history_data) { 570 if (!history_data) {
572 PCommit.value.visible = false; // 查询数据错误,提交按钮隐藏 571 PCommit.value.visible = false; // 查询数据错误,提交按钮隐藏
...@@ -679,6 +678,13 @@ onMounted(async () => { ...@@ -679,6 +678,13 @@ onMounted(async () => {
679 submitStatus.value = true; 678 submitStatus.value = true;
680 } 679 }
681 } 680 }
681 +
682 +
683 + setTimeout(() => {
684 + // 审核操作列表数据
685 + approval_actions.value = formSetting.value.flow_node_action_list?.map((item) => { return { name: item.btnText, id: item.id } });
686 + console.log("🚀 ~ file: index.vue:683 ~ setTimeout ~ formSetting.value:", formSetting.value);
687 + }, 1000);
682 }); 688 });
683 689
684 // 打开轮询用户是否关注 690 // 打开轮询用户是否关注
...@@ -1012,6 +1018,12 @@ const onSubmit = async (values) => { ...@@ -1012,6 +1018,12 @@ const onSubmit = async (values) => {
1012 submitStatus.value = false; 1018 submitStatus.value = false;
1013 } 1019 }
1014 } else if (page_type === 'edit') { // 编辑表单提交 1020 } else if (page_type === 'edit') { // 编辑表单提交
1021 + // 把historyData历史数据合并到postData.value提交数据里面
1022 + for (let key in historyData.value) {
1023 + if (!(key in postData.value)) {
1024 + postData.value[key] = historyData.value[key];
1025 + }
1026 + }
1015 // 编辑模式表单提交 1027 // 编辑模式表单提交
1016 const result = await modiFormDataAPI({ 1028 const result = await modiFormDataAPI({
1017 form_code: $route.query.code, 1029 form_code: $route.query.code,
...@@ -1033,6 +1045,12 @@ const onSubmit = async (values) => { ...@@ -1033,6 +1045,12 @@ const onSubmit = async (values) => {
1033 submitStatus.value = false; 1045 submitStatus.value = false;
1034 } 1046 }
1035 } else if (page_type === 'flow') { // 流程表单提交 1047 } else if (page_type === 'flow') { // 流程表单提交
1048 + // 把historyData历史数据合并到postData.value提交数据里面
1049 + for (let key in historyData.value) {
1050 + if (!(key in postData.value)) {
1051 + postData.value[key] = historyData.value[key];
1052 + }
1053 + }
1036 const result = await flowFormDataAPI({ 1054 const result = await flowFormDataAPI({
1037 form_code: $route.query.code, 1055 form_code: $route.query.code,
1038 data: postData.value, 1056 data: postData.value,
......