| | |
| | | updateOutsourceIssueLine, |
| | | } from '#/api/mes/wm/outsourceissue/line'; |
| | | import { $t } from '#/locales'; |
| | | import { |
| | | getEnterUnitRate, |
| | | omitLineTempFields, |
| | | } from '#/views/wls/utils/item-unit-convert'; |
| | | |
| | | import { useLineFormSchema } from '../data'; |
| | | |
| | |
| | | labelWidth: 90, |
| | | }, |
| | | layout: 'horizontal', |
| | | schema: useLineFormSchema(), |
| | | schema: [], |
| | | showDefaultActions: false, |
| | | wrapperClass: 'grid-cols-3', |
| | | }); |
| | |
| | | return; |
| | | } |
| | | modalApi.lock(); |
| | | // 提交表单 |
| | | const data = |
| | | (await formApi.getValues()) as MesWmOutsourceIssueLineApi.OutsourceIssueLine; |
| | | // 提交表单(剔除仅用于前端换算/展示的临时字段) |
| | | const data = omitLineTempFields( |
| | | (await formApi.getValues()) as MesWmOutsourceIssueLineApi.OutsourceIssueLine, |
| | | ); |
| | | data.issueId = issueId.value; |
| | | try { |
| | | await (formData.value?.id |
| | |
| | | formData.value = undefined; |
| | | return; |
| | | } |
| | | formApi.setState({ schema: useLineFormSchema(formApi) }); |
| | | // 加载数据 |
| | | const data = modalApi.getData<{ |
| | | id?: number; |
| | |
| | | } |
| | | modalApi.lock(); |
| | | try { |
| | | formData.value = await getOutsourceIssueLine(data.id); |
| | | // 设置到 values |
| | | await formApi.setValues(formData.value); |
| | | const line = await getOutsourceIssueLine(data.id); |
| | | formData.value = line; |
| | | // 设置到 values;详情里的 unitMeasureId/unitMeasureName 即物料主单位,补到前端换算用的隐藏字段上 |
| | | await formApi.setValues({ |
| | | ...line, |
| | | itemPrimaryUnitId: line.unitMeasureId, |
| | | itemPrimaryUnitName: line.unitMeasureName, |
| | | }); |
| | | // 回显录入单位时补齐换算比率(前端预览换算需要) |
| | | if (line.enterUnitMeasureId) { |
| | | await formApi.setFieldValue( |
| | | 'enterUnitRate', |
| | | await getEnterUnitRate( |
| | | line.itemId, |
| | | line.itemModelId, |
| | | line.enterUnitMeasureId, |
| | | ), |
| | | ); |
| | | } |
| | | } finally { |
| | | modalApi.unlock(); |
| | | } |