diff --git a/src/views/supermarketerp/retailManagement/smErpRetailBack/form.vue b/src/views/supermarketerp/retailManagement/smErpRetailBack/form.vue index 2690eb5..e439dd6 100644 --- a/src/views/supermarketerp/retailManagement/smErpRetailBack/form.vue +++ b/src/views/supermarketerp/retailManagement/smErpRetailBack/form.vue @@ -315,7 +315,7 @@ const handleClickLinkCode = () => linkCgPlanDialogRef.value.openLinkCodeDialog() const getSelectedLinkCode = (selectionRows: any) => { console.log("被选择的关联数据", selectionRows) - baseDataForm.linkCode = selectionRows.planCode + baseDataForm.linkCode = selectionRows.inventoryCode state.editableTableData = selectionRows.items state.erpSpuItemsMemo = selectionRows.items state.linkCgPlanDialogVisible = false diff --git a/src/views/wallet/mch-manage/form.vue b/src/views/wallet/mch-manage/form.vue index 6e002a6..eb0b1df 100644 --- a/src/views/wallet/mch-manage/form.vue +++ b/src/views/wallet/mch-manage/form.vue @@ -14,12 +14,6 @@ - - @@ -30,7 +24,7 @@ - + @@ -47,15 +41,40 @@ - + + + + + + + + @@ -79,15 +98,12 @@ import { useDict } from "/@/hooks/dict" import { useMessage } from "/@/hooks/message" import { getObj, addObj, putObj } from "/@/api/wallet/mch-manage" -import { rule } from "/@/utils/validate" -import { parseTime } from "/@/utils/formatTime" const emit = defineEmits(["refresh"]) // 定义变量内容 const dataFormRef = ref() const visible = ref(false) const loading = ref(false) -//定义业务变量内容 // 定义字典 const { merchant_type } = useDict("merchant_type") @@ -104,57 +120,53 @@ const form = reactive({ phone: "", businessTime: "", address: "", - jobStartTime: "", - jobEndTime: "", - rangeDate: [], - hardGroupId: "", +}) +const jobTime = reactive<{ + [key: string]: string[] +}>({ + morning: [], + noon: [], + evening: [], }) // 定义校验规则 const dataRules = ref({ name: [{ required: true, message: "商户名不能为空", trigger: "blur" }], - types: [{ required: true, message: "请选择商户类型", trigger: "change" }], - logoPic: [{ required: true, message: "请上传商户logo", trigger: "change" }], - swiperPic: [{ required: true, message: "请上传商户轮播图", trigger: "change" }], - rangeDate: [{ required: true, message: "请选择营业时间", trigger: "change" }], - deptId: [{ required: true, message: "请选择部门", trigger: "change" }], - merchantType: [{ required: true, message: "请选择商户类型", trigger: "change" }], - hardGroupId: [{ required: true, message: "请选择硬件分组", trigger: "change" }], + types: [{ required: true, message: "请选择商户类型", trigger: "blur" }], + logoPic: [{ required: true, message: "请上传商户logo", trigger: "blur" }], + swiperPic: [{ required: true, message: "请上传商户轮播图", trigger: "blur" }], + rangeDate: [{ required: true, message: "请选择营业时间", trigger: "blur" }], + deptId: [{ required: true, message: "请选择部门", trigger: "blur" }], + // merchantType: [{ required: true, message: "请选择商户类型", trigger: "blur" }], + // jobTime: [{ required: true, message: "请选择营业时间", trigger: "blur" }], }) // 打开弹窗 -const openDialog = (id: string) => { +const openDialog = async (id: string) => { visible.value = true form.id = "" // 重置表单数据 dataFormRef.value?.resetFields() + for (const key in jobTime) { + jobTime[key] = [] + } // 获取merchantInfo信息 if (id) { form.id = id - getmerchantInfoData(id) + await getmerchantInfoData(id) } } -const parseDate = (timeString: string) => { - const now = new Date() - const [hours, minutes] = timeString.split(":").map(Number) - now.setHours(hours) - now.setMinutes(minutes) - now.setSeconds(0) - now.setMilliseconds(0) - return parseTime(now, "{h}:{i}:{s}") -} - // 提交 const onSubmit = async () => { const valid = await dataFormRef.value.validate().catch(() => {}) if (!valid) return false - const _pa = { ...form, types: form.merchantType } - if (_pa.rangeDate && _pa.rangeDate.length) { - _pa.jobStartTime = parseDate(_pa.rangeDate[0]) - _pa.jobEndTime = parseDate(_pa.rangeDate[1]) + const _pa = { + ...form, + types: form.merchantType, + jobTime: jobTime.morning.join(",") + ";" + jobTime.noon.join(",") + ";" + jobTime.evening.join(","), } try { loading.value = true @@ -170,20 +182,25 @@ const onSubmit = async () => { } // 初始化表单数据 -const getmerchantInfoData = (id: string) => { - // 获取数据 +const getmerchantInfoData = async (id: string) => { loading.value = true - getObj(id) - .then((res: any) => { + try { + const res = await getObj(id) + if (res.code === 0) { const data = res.data + const resJobTime = data.jobTime?.split(";") Object.assign(form, data, { merchantType: data.types, - rangeDate: [data.jobStartTime, data.jobEndTime], }) - }) - .finally(() => { - loading.value = false - }) + jobTime.morning = resJobTime ? resJobTime[0]?.split(",") : [] + jobTime.noon = resJobTime ? resJobTime[1]?.split(",") : [] + jobTime.evening = resJobTime ? resJobTime[2]?.split(",") : [] + } + } catch (error: any) { + useMessage().error(error.msg) + } finally { + loading.value = false + } } // 暴露变量 diff --git a/src/views/wallet/mch-manage/index.vue b/src/views/wallet/mch-manage/index.vue index a341697..d212e77 100644 --- a/src/views/wallet/mch-manage/index.vue +++ b/src/views/wallet/mch-manage/index.vue @@ -58,7 +58,7 @@ - + @@ -93,12 +105,13 @@ import { BasicTableProps, useTable } from "/@/hooks/table" import { pageJoin, delObjs } from "/@/api/wallet/mch-manage" import { useMessage, useMessageBox } from "/@/hooks/message" import { useDict } from "/@/hooks/dict" -import { parseDate } from "/@/utils/formatTime" import FormDialog from "./form.vue" +import Setting from "./setting.vue" const { merchant_type } = useDict("merchant_type") // 定义变量内容 const formDialogRef = ref() +const settingDialogRef = ref() // 搜索变量 const queryRef = ref() const showSearch = ref(true) diff --git a/src/views/wallet/mch-manage/setting.vue b/src/views/wallet/mch-manage/setting.vue new file mode 100644 index 0000000..8405bc1 --- /dev/null +++ b/src/views/wallet/mch-manage/setting.vue @@ -0,0 +1,99 @@ + + +