diff --git a/src/views/ne/neConfig/components/CheckSyncNe/index.vue b/src/views/ne/neConfig/components/CheckSyncNe/index.vue
new file mode 100644
index 00000000..1acf3536
--- /dev/null
+++ b/src/views/ne/neConfig/components/CheckSyncNe/index.vue
@@ -0,0 +1,191 @@
+
+
+
+
+
+ {{ t('views.ne.neConfig.checkSync.tip') }}
+
+
+
+
+
+ {{ t('views.ne.neConfig.checkSync.title') }}
+
+
+
+
+
+
+
+
{{ k }}
+
+ {{ t('views.ne.neConfig.checkSync.selectProvince') }}
+
+
+
+
+
+
+
+
+
+ {{ t('views.ne.neConfig.checkSync.sync') }}
+
+
+
+
+
+
diff --git a/src/views/ne/neConfig/hooks/useConfigArray.ts b/src/views/ne/neConfig/hooks/useConfigArray.ts
index b0823043..ffe3e946 100644
--- a/src/views/ne/neConfig/hooks/useConfigArray.ts
+++ b/src/views/ne/neConfig/hooks/useConfigArray.ts
@@ -4,19 +4,20 @@ import {
editNeConfigData,
} from '@/api/ne/neConfig';
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
-import { Modal,message } from 'ant-design-vue/es';
+import { Modal, message } from 'ant-design-vue/es';
import { SizeType } from 'ant-design-vue/es/config-provider';
import { reactive, watch } from 'vue';
/**
* 参数配置array类型
- * @param param 父级传入 { t, treeState, neTypeSelect, fnActiveConfigNode, ruleVerification, modalState, fnModalCancel}
+ * @param param 父级传入 { t, treeState, neTypeSelect, neIdSelect, fnActiveConfigNode, ruleVerification, modalState, fnModalCancel}
* @returns
*/
export default function useConfigArray({
t,
treeState,
neTypeSelect,
+ neIdSelect,
fnActiveConfigNode,
ruleVerification,
modalState,
@@ -130,29 +131,61 @@ export default function useConfigArray({
data[key] = from[key]['value'];
}
- // 发送
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ editNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc: loc,
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ editNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc: loc,
+ })
+ );
+ }
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ arrayEditClose();
+ return;
+ }
+
const hide = message.loading(t('common.loading'), 0);
- editNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- paramData: data,
- loc: loc,
- })
- .then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.warning({
+ content: t('views.ne.neConfig.updateItemErr'),
+ duration: 3,
+ });
+ } else {
message.success({
content: t('views.ne.neConfig.updateItem', {
num: modalState.title,
}),
duration: 3,
});
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
fnActiveConfigNode('#');
- } else {
- message.warning({
- content: t('views.ne.neConfig.updateItemErr'),
- duration: 3,
- });
}
})
.finally(() => {
@@ -172,28 +205,65 @@ export default function useConfigArray({
num: title,
}),
onOk() {
- delNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- loc: loc,
- }).then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
- message.success({
- content: t('views.ne.neConfig.delItemOk', {
- num: title,
- }),
- duration: 2,
- });
- arrayEditClose();
- fnActiveConfigNode('#');
- } else {
- message.error({
- content: `${res.msg}`,
- duration: 2,
- });
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ delNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ loc: loc,
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ delNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ loc: loc,
+ })
+ );
}
- });
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ arrayEditClose();
+ return;
+ }
+
+ const hide = message.loading(t('common.loading'), 0);
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.error({
+ content: `${rejected.reason}`,
+ duration: 2,
+ });
+ } else {
+ message.success({
+ content: t('views.ne.neConfig.delItemOk', {
+ num: title,
+ }),
+ duration: 2,
+ });
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
+ fnActiveConfigNode('#');
+ }
+ })
+ .finally(() => {
+ hide();
+ arrayEditClose();
+ });
},
});
}
@@ -264,29 +334,61 @@ export default function useConfigArray({
data[key] = from[key]['value'];
}
- // 发送
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ addNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc: `${from['index']['value']}`,
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ addNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc: `${from['index']['value']}`,
+ })
+ );
+ }
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ arrayEditClose();
+ return;
+ }
+
const hide = message.loading(t('common.loading'), 0);
- addNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- paramData: data,
- loc: `${from['index']['value']}`,
- })
- .then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.warning({
+ content: t('views.ne.neConfig.addItemErr'),
+ duration: 3,
+ });
+ } else {
message.success({
content: t('views.ne.neConfig.addItemOk', {
num: modalState.title,
}),
duration: 3,
});
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
fnActiveConfigNode('#');
- } else {
- message.warning({
- content: t('views.ne.neConfig.addItemErr'),
- duration: 3,
- });
}
})
.finally(() => {
diff --git a/src/views/ne/neConfig/hooks/useConfigArrayChild.ts b/src/views/ne/neConfig/hooks/useConfigArrayChild.ts
index ee58b178..24428ca9 100644
--- a/src/views/ne/neConfig/hooks/useConfigArrayChild.ts
+++ b/src/views/ne/neConfig/hooks/useConfigArrayChild.ts
@@ -10,13 +10,14 @@ import { nextTick, reactive } from 'vue';
/**
* 参数配置array类型的嵌套array
- * @param param 父级传入 { t, treeState, neTypeSelect, fnActiveConfigNode, ruleVerification, modalState, arrayState, arrayInitEdit, arrayInitAdd, arrayEditClose}
+ * @param param 父级传入 { t, treeState, neTypeSelect, neIdSelect, fnActiveConfigNode, ruleVerification, modalState, arrayState, arrayInitEdit, arrayInitAdd, arrayEditClose}
* @returns
*/
export default function useConfigArrayChild({
t,
treeState,
neTypeSelect,
+ neIdSelect,
fnActiveConfigNode,
ruleVerification,
modalState,
@@ -198,29 +199,61 @@ export default function useConfigArrayChild({
data[key] = from[key]['value'];
}
- // 发送
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ editNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc,
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ editNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc,
+ })
+ );
+ }
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ arrayEditClose();
+ return;
+ }
+
const hide = message.loading(t('common.loading'), 0);
- editNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- paramData: data,
- loc,
- })
- .then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.warning({
+ content: t('views.ne.neConfig.updateItemErr'),
+ duration: 3,
+ });
+ } else {
message.success({
content: t('views.ne.neConfig.updateItem', {
num: modalState.title,
}),
duration: 3,
});
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
fnActiveConfigNode('#');
- } else {
- message.warning({
- content: t('views.ne.neConfig.updateItemErr'),
- duration: 3,
- });
}
})
.finally(() => {
@@ -241,28 +274,65 @@ export default function useConfigArrayChild({
num: title,
}),
onOk() {
- delNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- loc,
- }).then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
- message.success({
- content: t('views.ne.neConfig.delItemOk', {
- num: title,
- }),
- duration: 2,
- });
- arrayEditClose();
- fnActiveConfigNode('#');
- } else {
- message.error({
- content: `${res.msg}`,
- duration: 2,
- });
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ delNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ loc,
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ delNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ loc,
+ })
+ );
}
- });
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ arrayEditClose();
+ return;
+ }
+
+ const hide = message.loading(t('common.loading'), 0);
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.error({
+ content: `${rejected.reason}`,
+ duration: 2,
+ });
+ } else {
+ message.success({
+ content: t('views.ne.neConfig.delItemOk', {
+ num: title,
+ }),
+ duration: 2,
+ });
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
+ fnActiveConfigNode('#');
+ }
+ })
+ .finally(() => {
+ hide();
+ arrayEditClose();
+ });
},
});
}
@@ -309,29 +379,61 @@ export default function useConfigArrayChild({
data[key] = from[key]['value'];
}
- // 发送
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ addNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc,
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ addNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ paramData: data,
+ loc,
+ })
+ );
+ }
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ arrayEditClose();
+ return;
+ }
+
const hide = message.loading(t('common.loading'), 0);
- addNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- paramData: data,
- loc,
- })
- .then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.warning({
+ content: t('views.ne.neConfig.addItemErr'),
+ duration: 3,
+ });
+ } else {
message.success({
content: t('views.ne.neConfig.addItemOk', {
num: modalState.title,
}),
duration: 3,
});
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
fnActiveConfigNode('#');
- } else {
- message.warning({
- content: t('views.ne.neConfig.addItemErr'),
- duration: 3,
- });
}
})
.finally(() => {
diff --git a/src/views/ne/neConfig/hooks/useConfigList.ts b/src/views/ne/neConfig/hooks/useConfigList.ts
index 37ed3aee..143f5574 100644
--- a/src/views/ne/neConfig/hooks/useConfigList.ts
+++ b/src/views/ne/neConfig/hooks/useConfigList.ts
@@ -6,13 +6,14 @@ import { reactive, toRaw } from 'vue';
/**
* list类型参数处理
- * @param param 父级传入 {t, treeState, neTypeSelect, ruleVerification}
+ * @param param 父级传入 {t, treeState, neTypeSelect, neIdSelect, ruleVerification}
* @returns
*/
export default function useConfigList({
t,
treeState,
neTypeSelect,
+ neIdSelect,
ruleVerification,
}: any) {
/**单列表状态类型 */
@@ -83,25 +84,64 @@ export default function useConfigList({
return;
}
- // 发送
+ // 请求
+ const reqArr = [];
+ if (neTypeSelect.value[1] !== 'SYNC') {
+ reqArr.push(
+ editNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neTypeSelect.value[1],
+ paramName: treeState.selectNode.paramName,
+ paramData: {
+ [from['name']]: from['value'],
+ },
+ })
+ );
+ } else {
+ for (const neId of neIdSelect.value) {
+ reqArr.push(
+ editNeConfigData({
+ neType: neTypeSelect.value[0],
+ neId: neId,
+ paramName: treeState.selectNode.paramName,
+ paramData: {
+ [from['name']]: from['value'],
+ },
+ })
+ );
+ }
+ }
+ // 无请求提示
+ if (reqArr.length === 0) {
+ message.warning({
+ content: t('views.ne.neConfig.neIdSyncPleace'),
+ duration: 3,
+ });
+ listState.confirmLoading = false;
+ listState.editRecord = {};
+ return;
+ }
+
listState.confirmLoading = true;
const hide = message.loading(t('common.loading'), 0);
- editNeConfigData({
- neType: neTypeSelect.value[0],
- neId: neTypeSelect.value[1],
- paramName: treeState.selectNode.paramName,
- paramData: {
- [from['name']]: from['value'],
- },
- })
- .then(res => {
- if (res.code === RESULT_CODE_SUCCESS) {
+ Promise.allSettled(reqArr)
+ .then(resArr => {
+ const rejected = resArr.find(res => res.status === 'rejected');
+ if (rejected) {
+ message.warning({
+ content: t('views.ne.neConfig.updateValueErr'),
+ duration: 3,
+ });
+ } else {
message.success({
content: t('views.ne.neConfig.updateValue', {
num: from['display'],
}),
duration: 3,
});
+ }
+ const fulfilled = resArr.find(res => res.status === 'fulfilled');
+ if (fulfilled) {
// 改变表格数据
const item = listState.data.find(
(item: Record) => from['name'] === item['name']
@@ -109,11 +149,6 @@ export default function useConfigList({
if (item) {
Object.assign(item, listState.editRecord);
}
- } else {
- message.warning({
- content: t('views.ne.neConfig.updateValueErr'),
- duration: 3,
- });
}
})
.finally(() => {
diff --git a/src/views/ne/neConfig/index.vue b/src/views/ne/neConfig/index.vue
index 0c8b6bf0..42abcf29 100644
--- a/src/views/ne/neConfig/index.vue
+++ b/src/views/ne/neConfig/index.vue
@@ -1,11 +1,20 @@