|
1 | 1 | import {useEffect} from "react"; |
2 | 2 | import {FormInstance} from "antd/es/form/hooks/useForm"; |
3 | 3 | import {FlowData, FlowSubmitResultBuilder, FlowTrySubmitResultBuilder} from "@/components/Flow/flow/data"; |
4 | | -import {custom, postponed, recall, saveFlow, startFlow, submitFlow, transfer, trySubmitFlow, urge} from "@/api/flow"; |
| 4 | +import { |
| 5 | + custom, |
| 6 | + postponed, |
| 7 | + recall, |
| 8 | + removeFlow, |
| 9 | + saveFlow, |
| 10 | + startFlow, |
| 11 | + submitFlow, |
| 12 | + transfer, |
| 13 | + trySubmitFlow, |
| 14 | + urge |
| 15 | +} from "@/api/flow"; |
5 | 16 | import {message} from "antd"; |
6 | 17 | import {useDispatch, useSelector} from "react-redux"; |
7 | 18 | import { |
@@ -132,59 +143,62 @@ export const registerEvents = (id: string, |
132 | 143 |
|
133 | 144 | // 提交流程 |
134 | 145 | const handleSubmitFlow = (flowState: boolean, callback: (res: any) => void, operatorIds?: any[]) => { |
135 | | - const advice = adviceForm.getFieldValue('advice'); |
136 | | - setRequestLoading(true); |
| 146 | + adviceForm.validateFields().then((adviceData)=>{ |
| 147 | + const advice = adviceData.advice; |
| 148 | + setRequestLoading(true); |
| 149 | + form.validateFields().then((formData) => { |
| 150 | + const flowData = data.getFlowData(); |
| 151 | + const body = { |
| 152 | + recordId, |
| 153 | + advice: advice, |
| 154 | + operatorIds: operatorIds, |
| 155 | + success: flowState, |
| 156 | + formData: { |
| 157 | + ...flowData, |
| 158 | + ...formData, |
| 159 | + } |
| 160 | + } |
137 | 161 |
|
138 | | - form.validateFields().then((formData) => { |
| 162 | + submitFlow(body).then(res => { |
| 163 | + if (res.success) { |
| 164 | + message.success('流程已提交').then(); |
| 165 | + callback(res); |
| 166 | + } |
| 167 | + }).finally(() => { |
| 168 | + setRequestLoading(false) |
| 169 | + }) |
| 170 | + }).catch(e => { |
| 171 | + console.log(e); |
| 172 | + setRequestLoading(false); |
| 173 | + }) |
| 174 | + }).catch((e)=>{}); |
| 175 | + } |
| 176 | + |
| 177 | + // 自定义流程 |
| 178 | + const handleCustomFlow = (buttonId: string) => { |
| 179 | + adviceForm.validateFields().then((adviceData)=> { |
| 180 | + const advice = adviceData.advice; |
| 181 | + const formData = form.getFieldsValue(); |
139 | 182 | const flowData = data.getFlowData(); |
140 | 183 | const body = { |
141 | 184 | recordId, |
| 185 | + buttonId, |
142 | 186 | advice: advice, |
143 | | - operatorIds: operatorIds, |
144 | | - success: flowState, |
145 | 187 | formData: { |
146 | 188 | ...flowData, |
147 | 189 | ...formData, |
148 | 190 | } |
149 | 191 | } |
150 | | - |
151 | | - submitFlow(body).then(res => { |
| 192 | + custom(body).then(res => { |
152 | 193 | if (res.success) { |
153 | | - message.success('流程已提交').then(); |
154 | | - callback(res); |
| 194 | + const flowResult = res.data; |
| 195 | + dispatch(showResult({ |
| 196 | + closeFlow: flowResult.closeable, |
| 197 | + result: flowResult |
| 198 | + })); |
155 | 199 | } |
156 | | - }).finally(() => { |
157 | | - setRequestLoading(false) |
158 | | - }) |
159 | | - }).catch(e => { |
160 | | - console.log(e); |
161 | | - setRequestLoading(false); |
162 | | - }) |
163 | | - } |
164 | | - |
165 | | - // 自定义流程 |
166 | | - const handleCustomFlow = (buttonId: string) => { |
167 | | - const advice = adviceForm.getFieldValue('advice'); |
168 | | - const formData = form.getFieldsValue(); |
169 | | - const flowData = data.getFlowData(); |
170 | | - const body = { |
171 | | - recordId, |
172 | | - buttonId, |
173 | | - advice: advice, |
174 | | - formData: { |
175 | | - ...flowData, |
176 | | - ...formData, |
177 | | - } |
178 | | - } |
179 | | - custom(body).then(res => { |
180 | | - if (res.success) { |
181 | | - const flowResult = res.data; |
182 | | - dispatch(showResult({ |
183 | | - closeFlow: flowResult.closeable, |
184 | | - result: flowResult |
185 | | - })); |
186 | | - } |
187 | | - }) |
| 200 | + }); |
| 201 | + }).catch((e)=>{}); |
188 | 202 | } |
189 | 203 |
|
190 | 204 | // 预提交 |
@@ -231,6 +245,24 @@ export const registerEvents = (id: string, |
231 | 245 | }) |
232 | 246 | } |
233 | 247 |
|
| 248 | + |
| 249 | + // 删除流程 |
| 250 | + const handleRemoveFlow = () => { |
| 251 | + const body = { |
| 252 | + recordId, |
| 253 | + } |
| 254 | + setRequestLoading(true); |
| 255 | + removeFlow(body).then(res => { |
| 256 | + if (res.success) { |
| 257 | + message.success('流程已删除').then(); |
| 258 | + closeFlow(); |
| 259 | + } |
| 260 | + }).finally(() => { |
| 261 | + setRequestLoading(false) |
| 262 | + }) |
| 263 | + } |
| 264 | + |
| 265 | + |
234 | 266 | // 延期流程 |
235 | 267 | const handlePostponedFlow = () => { |
236 | 268 | const body = { |
@@ -418,6 +450,10 @@ export const registerEvents = (id: string, |
418 | 450 | handleRecallFlow(); |
419 | 451 | break; |
420 | 452 | } |
| 453 | + case 'REMOVE': { |
| 454 | + handleRemoveFlow(); |
| 455 | + break; |
| 456 | + } |
421 | 457 | case 'URGE': { |
422 | 458 | handlerUrgeFlow(); |
423 | 459 | break; |
|
0 commit comments