Commit ec28962b8db457f05d080f31132e8cf041b58692

Authored by fengtao
1 parent b8846b3c

fix:修改通知管理-重复提交问题方式问题

... ... @@ -119,7 +119,9 @@
119 119 openDrawerAdd(true, {
120 120 isUpdate: false,
121 121 });
122   - NotifyManagerDrawerRef.value.setFieldsValue({ content: '' });
  122 + nextTick(() => {
  123 + NotifyManagerDrawerRef.value.setFieldsValue({ content: '' });
  124 + });
123 125 }
124 126
125 127 const handleView = (record: Recordable) => {
... ...
... ... @@ -10,8 +10,8 @@
10 10 <BasicForm @register="registerForm" />
11 11 <template #footer>
12 12 <a-button @click="handleCancel">取消</a-button>
13   - <a-button @click="handleSaveDraft">保存草稿</a-button>
14   - <a-button type="primary" @click="handleSend">发布通知</a-button>
  13 + <a-button :disabled="draftDisable" @click="handleSaveDraft">保存草稿</a-button>
  14 + <a-button :disabled="sendDisable" type="primary" @click="handleSend">发布通知</a-button>
15 15 </template>
16 16 </BasicDrawer>
17 17 </div>
... ... @@ -31,6 +31,8 @@
31 31 components: { BasicDrawer, BasicForm },
32 32 emits: ['success', 'register'],
33 33 setup(_, { emit }) {
  34 + const draftDisable = ref(false);
  35 + const sendDisable = ref(false);
34 36 const { createMessage } = useMessage();
35 37 const isUpdate = ref<Boolean>();
36 38 const getTitle = computed(() => (!unref(isUpdate) ? '新增通知' : '编辑通知'));
... ... @@ -41,9 +43,9 @@
41 43 showActionButtonGroup: false,
42 44 });
43 45 const [registerDrawer, { setDrawerProps, closeDrawer }] = useDrawerInner(async (data) => {
44   - setDrawerProps({ confirmLoading: false });
45 46 await resetFields();
46   - isUpdate.value = data.isUpdate;
  47 + setDrawerProps({ confirmLoading: false });
  48 + isUpdate.value = !!data.isUpdate;
47 49 //编辑
48 50 if (data.isUpdate) {
49 51 noticeId.value = data.record.id;
... ... @@ -58,13 +60,13 @@
58 60 });
59 61 // 发布通知
60 62 const handleSend = async () => {
  63 + sendDisable.value = true;
61 64 const valid = await validate();
62 65 if (!valid) return;
63 66 const field = getFieldsValue();
64 67 const pointId = field.receiverType === 1 ? field.organizationId + '' : null;
65 68 // 新增情况
66 69 try {
67   - setDrawerProps({ confirmLoading: true });
68 70 const editNotice = {
69 71 ...field,
70 72 pointId,
... ... @@ -74,15 +76,17 @@
74 76 emit('success');
75 77 closeDrawer();
76 78 createMessage.success('发布成功');
  79 + setTimeout(() => {
  80 + sendDisable.value = false;
  81 + }, 300);
77 82 } catch {
78 83 } finally {
79   - setDrawerProps({ confirmLoading: false });
80 84 }
81 85 };
82 86 // 保存草稿
83 87 const handleSaveDraft = async () => {
  88 + draftDisable.value = true;
84 89 try {
85   - setDrawerProps({ confirmLoading: true });
86 90 await validate();
87 91 const field = getFieldsValue();
88 92 const pointId = field.receiverType === 1 ? field.organizationId + '' : null;
... ... @@ -103,9 +107,11 @@
103 107 emit('success');
104 108 closeDrawer();
105 109 createMessage.success('保存草稿成功');
  110 + setTimeout(() => {
  111 + draftDisable.value = false;
  112 + }, 300);
106 113 } catch {
107 114 } finally {
108   - setDrawerProps({ confirmLoading: false });
109 115 }
110 116 };
111 117 const handleCancel = () => {
... ... @@ -113,6 +119,8 @@
113 119 closeDrawer();
114 120 };
115 121 return {
  122 + draftDisable,
  123 + sendDisable,
116 124 getTitle,
117 125 handleSend,
118 126 handleCancel,
... ...