| | |
| | | createTenderProject, |
| | | getTenderProject, |
| | | updateTenderProject, |
| | | updateTenderProjectPartial, |
| | | } from '#/api/srm/tender'; |
| | | import { $t } from '#/locales'; |
| | | |
| | | import { TENDER_STATUS } from '../../enums'; |
| | | import { useFormSchema } from '../data'; |
| | | |
| | | const emit = defineEmits(['success']); |
| | | const formData = ref<SrmTenderApi.TenderProjectVO>(); |
| | | const isPartial = computed(() => { |
| | | const data = formData.value; |
| | | return data?.id && data.tenderStatus !== undefined && data.tenderStatus !== TENDER_STATUS.DRAFT; |
| | | }); |
| | | const getTitle = computed(() => { |
| | | if (isPartial.value) return '编辑招标信息'; |
| | | return formData.value?.id |
| | | ? $t('ui.actionTitle.edit', ['招标项目']) |
| | | : $t('ui.actionTitle.create', ['招标项目']); |
| | |
| | | modalApi.lock(); |
| | | const data = (await formApi.getValues()) as SrmTenderApi.TenderProjectVO; |
| | | try { |
| | | await (formData.value?.id |
| | | ? updateTenderProject(data) |
| | | : createTenderProject(data)); |
| | | if (isPartial.value) { |
| | | await updateTenderProjectPartial({ |
| | | id: data.id!, |
| | | tenderDesc: data.tenderDesc, |
| | | qualificationRequirements: data.qualificationRequirements, |
| | | }); |
| | | } else { |
| | | await (formData.value?.id |
| | | ? updateTenderProject(data) |
| | | : createTenderProject(data)); |
| | | } |
| | | await modalApi.close(); |
| | | emit('success'); |
| | | message.success($t('ui.actionMessage.operationSuccess')); |
| | |
| | | modalApi.lock(); |
| | | try { |
| | | formData.value = await getTenderProject(data.id); |
| | | await formApi.setValues(formData.value); |
| | | const partial = formData.value.tenderStatus !== undefined |
| | | && formData.value.tenderStatus !== TENDER_STATUS.DRAFT; |
| | | await formApi.setValues({ ...formData.value, _partial: partial || undefined }); |
| | | } finally { |
| | | modalApi.unlock(); |
| | | } |