From af0cf2bbb3a339f2777e6a5a452f369bab2693c1 Mon Sep 17 00:00:00 2001 From: weiwei Date: Tue, 29 Apr 2025 17:04:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/supermarketerp/stockTaking.ts | 11 +- src/hooks/smProcessFormAction.ts | 59 +++++++++ .../purchaseManagement/smErpCgBack/form.vue | 85 ++----------- .../purchaseManagement/smErpCgDd/form.vue | 85 ++----------- .../smErpCgInventory/form.vue | 85 ++----------- .../purchaseManagement/smErpCgPlan/form.vue | 114 ++---------------- .../retailManagement/smErpRetailBack/form.vue | 86 ++----------- .../smErpRetailDelivery/form.vue | 86 ++----------- src/views/supermarketerp/stockTaking/form.vue | 85 ++----------- 9 files changed, 135 insertions(+), 561 deletions(-) create mode 100644 src/hooks/smProcessFormAction.ts diff --git a/src/api/supermarketerp/stockTaking.ts b/src/api/supermarketerp/stockTaking.ts index 28901f0..b208261 100644 --- a/src/api/supermarketerp/stockTaking.ts +++ b/src/api/supermarketerp/stockTaking.ts @@ -1,7 +1,16 @@ import request from "/@/utils/request" // 库存盘点新增 -export function stockTakingAdd(data?: object) { +export function addObj(data?: object) { + return request({ + url: "/supermarket/smErpInventoryRecords/savePD", + method: "post", + data, + }) +} + +// 库存盘点修改 +export function putObj(data?: object) { return request({ url: "/supermarket/smErpInventoryRecords/savePD", method: "post", diff --git a/src/hooks/smProcessFormAction.ts b/src/hooks/smProcessFormAction.ts new file mode 100644 index 0000000..009621d --- /dev/null +++ b/src/hooks/smProcessFormAction.ts @@ -0,0 +1,59 @@ +import { Ref } from "vue" +import { useMessage } from "./message" + +export function useSmProcessFormAction() { + // 校验 成功返回true 失败返回false + const formValidate = async (baseDataFormRef: any, editableTableRef: any, editableTableData: any) => { + const valid = await baseDataFormRef.value.validate().catch(() => {}) + if (!valid) return false + + if (editableTableData.length <= 0) { + useMessage().warning("请选择商品") + return false + } + + const $table = editableTableRef.value + if ($table) { + const errMap = await $table.validate(true) + if (errMap) { + console.log("全量校验失败!") + return false + } + } + + return true + } + + // 提交数据 成功返回 true 失败返回 false + const submitData = async (baseDataForm: any, cgPlanSpuItems: Ref, loading: Ref, putObj: any, addObj: any) => { + try { + loading.value = true + + const _pa = { + ...baseDataForm, + items: cgPlanSpuItems.value, + } + + console.log("提交的数据:", _pa) + + const res = baseDataForm.id ? await putObj(_pa) : await addObj(_pa) + if (res.code == 0) { + useMessage().success(baseDataForm.id ? "修改成功" : "添加成功") + return true + } else { + useMessage().error(res.msg) + return false + } + } catch (err: any) { + useMessage().error(err.msg) + loading.value = false + return false + } finally { + loading.value = false + } + } + return { + formValidate, + submitData, + } +} diff --git a/src/views/supermarketerp/purchaseManagement/smErpCgBack/form.vue b/src/views/supermarketerp/purchaseManagement/smErpCgBack/form.vue index 4bdbb5c..25b3425 100644 --- a/src/views/supermarketerp/purchaseManagement/smErpCgBack/form.vue +++ b/src/views/supermarketerp/purchaseManagement/smErpCgBack/form.vue @@ -1,5 +1,5 @@