From fcf7609a66c1bc481a32f9cbcc7f7bceb3be1f36 Mon Sep 17 00:00:00 2001 From: weiwei Date: Tue, 12 Aug 2025 16:57:55 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat:=20=E7=BA=BF=E4=B8=8A=E9=A2=84?= =?UTF-8?q?=E8=AE=A2=E8=8F=9C=E5=93=81=E6=94=AF=E6=8C=81=E4=BB=8E=E6=AF=8F?= =?UTF-8?q?=E6=97=A5=E8=8F=9C=E5=93=81=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/canteen/canteenCategory/index.vue | 4 +- .../canteen/canteenOnlineSpu/export-form.vue | 191 ++++++++++++++++++ src/views/canteen/canteenOnlineSpu/index.vue | 21 +- src/views/canteen/canteenSpu/form.vue | 34 ++-- src/views/canteen/canteenSpu/index.vue | 36 ++-- .../components/select-dialog.vue | 29 ++- .../smErpRetailBack/index.vue | 9 +- .../supermarketerp/supermarketSpu/index.vue | 11 +- 8 files changed, 284 insertions(+), 51 deletions(-) create mode 100644 src/views/canteen/canteenOnlineSpu/export-form.vue diff --git a/src/views/canteen/canteenCategory/index.vue b/src/views/canteen/canteenCategory/index.vue index d6883ef..e67f37e 100644 --- a/src/views/canteen/canteenCategory/index.vue +++ b/src/views/canteen/canteenCategory/index.vue @@ -66,8 +66,8 @@ - - + + @@ -120,12 +131,13 @@ import { useDict } from "/@/hooks/dict" import { displayPrice } from "/@/utils/formatMoney" import { fetchList as getCanteenOnlineCategory } from "/@/api/canteen/canteenOnlineCategory" -// 引入组件 const FormDialog = defineAsyncComponent(() => import("./form.vue")) +const ExportFormDialog = defineAsyncComponent(() => import("./export-form.vue")) const { spu_status } = useDict("spu_status") // 定义变量内容 const formDialogRef = ref() +const exportFormDialogRef = ref() // 搜索变量 const queryRef = ref() const showSearch = ref(true) @@ -147,9 +159,12 @@ onMounted(async () => { } }) -// table hook const { getDataList, currentChangeHandle, sizeChangeHandle, sortChangeHandle, downBlobFile, tableStyle } = useTable(state) +const getSelectedRows = (selectRows: any) => { + console.log(selectRows) +} + // 清空搜索条件 const resetQuery = () => { // 清空搜索条件 diff --git a/src/views/canteen/canteenSpu/form.vue b/src/views/canteen/canteenSpu/form.vue index c089607..60f17b9 100644 --- a/src/views/canteen/canteenSpu/form.vue +++ b/src/views/canteen/canteenSpu/form.vue @@ -8,17 +8,17 @@ - - + + - + - + @@ -30,7 +30,7 @@ - + {{ item.label }} @@ -38,8 +38,8 @@ - - + + @@ -74,8 +74,8 @@ - - + + @@ -131,24 +131,24 @@ const form = reactive({ // 定义校验规则 const dataRules = ref({ - categoryId: [{ required: true, message: "商品分类不能为空", trigger: "blur" }], + categoryId: [{ required: true, message: "菜品分类不能为空", trigger: "blur" }], merchantId: [{ required: true, message: "商户不能为空", trigger: "blur" }], - name: [{ required: true, message: "商品名称不能为空", trigger: "blur" }], - picUrl: [{ required: true, message: "商品封面图不能为空", trigger: "blur" }], - status: [{ required: true, message: "商品状态不能为空", trigger: "blur" }], + name: [{ required: true, message: "菜品名称不能为空", trigger: "blur" }], + picUrl: [{ required: true, message: "菜品封面图不能为空", trigger: "blur" }], + status: [{ required: true, message: "菜品状态不能为空", trigger: "blur" }], sort: [{ validator: rule.number, trigger: "blur" }], price: [ { validator: rule.number, trigger: "blur" }, - { required: true, message: "商品状态不能为空", trigger: "blur" }, + { required: true, message: "菜品状态不能为空", trigger: "blur" }, ], marketPrice: [ { validator: rule.number, trigger: "blur" }, - { required: true, message: "商品状态不能为空", trigger: "blur" }, + { required: true, message: "菜品状态不能为空", trigger: "blur" }, ], costPrice: [{ validator: rule.number, trigger: "blur" }], stock: [ { validator: rule.number, trigger: "blur" }, - { required: true, message: "商品状态不能为空", trigger: "blur" }, + { required: true, message: "菜品状态不能为空", trigger: "blur" }, ], giveIntegral: [{ validator: rule.number, trigger: "blur" }], salesCount: [{ validator: rule.number, trigger: "blur" }], @@ -205,7 +205,7 @@ const getcanteenSpuData = (id: string) => { loading.value = false }) } -const categoryList = ref([]) // 商品分类树 +const categoryList = ref([]) // 菜品分类树 onMounted(async () => { const data = await getAllSimple() categoryList.value = data.data diff --git a/src/views/canteen/canteenSpu/index.vue b/src/views/canteen/canteenSpu/index.vue index d65384f..644c506 100644 --- a/src/views/canteen/canteenSpu/index.vue +++ b/src/views/canteen/canteenSpu/index.vue @@ -3,10 +3,10 @@
- - + + - + @@ -51,30 +51,30 @@ > - - + + - + - + - - - - + + + + @@ -84,10 +84,10 @@ {{ displayPrice(scope.row.marketPrice) }} - - + + - + @@ -126,7 +126,7 @@ import { getAllSimple as getCanteenCategory } from "/@/api/canteen/canteenCatego // 引入组件 const FormDialog = defineAsyncComponent(() => import("./form.vue")) -const { spu_status,is_show } = useDict("spu_status","is_show") +const { spu_status, is_show } = useDict("spu_status", "is_show") // 定义变量内容 const formDialogRef = ref() // 搜索变量 @@ -135,7 +135,7 @@ const showSearch = ref(true) // 多选变量 const selectObjs = ref([]) as any const multiple = ref(true) -const categoryOptions = ref([]) // 商品分类选项 +const categoryOptions = ref([]) // 菜品分类选项 const state: BasicTableProps = reactive({ queryForm: {}, diff --git a/src/views/supermarketerp/components/select-dialog.vue b/src/views/supermarketerp/components/select-dialog.vue index ae2ea7d..f704570 100644 --- a/src/views/supermarketerp/components/select-dialog.vue +++ b/src/views/supermarketerp/components/select-dialog.vue @@ -25,18 +25,20 @@ :row-key="(row:any) => row.id" :reserve-selection="true" @selection-change="" + :cell-style="tableStyle.cellStyle" + :header-cell-style="tableStyle.headerCellStyle" > - - - - + + + + - - - + + + - + - + @@ -174,6 +176,15 @@ onMounted(async () => { // } }) +const tableStyle = { + cellStyle: { textAlign: "center" }, + headerCellStyle: { + textAlign: "center", + background: "var(--el-table-row-hover-bg-color)", + color: "var(--el-text-color-primary)", + }, +} + defineExpose({ openDialog, }) diff --git a/src/views/supermarketerp/retailManagement/smErpRetailBack/index.vue b/src/views/supermarketerp/retailManagement/smErpRetailBack/index.vue index 149641e..443823b 100644 --- a/src/views/supermarketerp/retailManagement/smErpRetailBack/index.vue +++ b/src/views/supermarketerp/retailManagement/smErpRetailBack/index.vue @@ -31,7 +31,14 @@
- + 新 增 + ~盘点导入~
- + +
@@ -193,6 +201,7 @@ import { fetchList, delObjs, getSupermarketCategory, getSupermarketBrand } from import { useMessage, useMessageBox } from "/@/hooks/message" import { useDict } from "/@/hooks/dict" import UploadExcel from "./components/upload-excel.vue" +import UploadExcelUpdate from "./components/upload-excel-update.vue" import { displayPrice } from "/@/utils/formatMoney" import { getSupplierSimpleAll } from "/@/api/supermarketerp/smErpSupplier" From 1d5413b5e5fb1b7926942483ac0f58f8eea36044 Mon Sep 17 00:00:00 2001 From: weiwei Date: Tue, 12 Aug 2025 17:45:02 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat:=20=E7=BA=BF=E4=B8=8A=E8=8F=9C?= =?UTF-8?q?=E5=93=81=E5=88=86=E7=B1=BB=E7=9A=84=E9=A4=90=E6=AE=B5=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/canteen/canteenOnlineSpu.ts | 55 +++++++++++-------- src/views/canteen/canteenCategory/form.vue | 7 +-- .../canteen/canteenOnlineCategory/form.vue | 18 +++++- .../canteen/canteenOnlineCategory/index.vue | 9 +++ .../canteen/canteenOnlineSpu/export-form.vue | 33 +++++++++-- src/views/canteen/canteenOnlineSpu/index.vue | 16 ++---- 6 files changed, 91 insertions(+), 47 deletions(-) diff --git a/src/api/canteen/canteenOnlineSpu.ts b/src/api/canteen/canteenOnlineSpu.ts index fc63d22..35d14d3 100644 --- a/src/api/canteen/canteenOnlineSpu.ts +++ b/src/api/canteen/canteenOnlineSpu.ts @@ -1,41 +1,48 @@ import request from "/@/utils/request" export function fetchList(query?: Object) { - return request({ - url: '/canteen/canteenOnlineSpu/page', - method: 'get', - params: query - }) + return request({ + url: "/canteen/canteenOnlineSpu/page", + method: "get", + params: query, + }) } export function addObj(obj?: Object) { - return request({ - url: '/canteen/canteenOnlineSpu', - method: 'post', - data: obj - }) + return request({ + url: "/canteen/canteenOnlineSpu", + method: "post", + data: obj, + }) } export function getObj(id?: string) { - return request({ - url: '/canteen/canteenOnlineSpu/' + id, - method: 'get' - }) + return request({ + url: "/canteen/canteenOnlineSpu/" + id, + method: "get", + }) } export function delObjs(ids?: Object) { - return request({ - url: '/canteen/canteenOnlineSpu', - method: 'delete', - data: ids - }) + return request({ + url: "/canteen/canteenOnlineSpu", + method: "delete", + data: ids, + }) } export function putObj(obj?: Object) { - return request({ - url: '/canteen/canteenOnlineSpu', - method: 'put', - data: obj - }) + return request({ + url: "/canteen/canteenOnlineSpu", + method: "put", + data: obj, + }) } +export function saveCanteenSpuBatch(obj?: Object) { + return request({ + url: "/canteen/canteenOnlineSpu/saveCanteenSpuBatch", + method: "post", + data: obj, + }) +} diff --git a/src/views/canteen/canteenCategory/form.vue b/src/views/canteen/canteenCategory/form.vue index fa647d3..7fc0de3 100644 --- a/src/views/canteen/canteenCategory/form.vue +++ b/src/views/canteen/canteenCategory/form.vue @@ -10,12 +10,7 @@ - + diff --git a/src/views/canteen/canteenOnlineCategory/form.vue b/src/views/canteen/canteenOnlineCategory/form.vue index b5e0d67..150de8b 100644 --- a/src/views/canteen/canteenOnlineCategory/form.vue +++ b/src/views/canteen/canteenOnlineCategory/form.vue @@ -12,6 +12,13 @@ + + + + + + + @@ -44,8 +51,11 @@ import { useMessage } from "/@/hooks/message" import { getObj, addObj, putObj } from "/@/api/canteen/canteenOnlineCategory" import { rule } from "/@/utils/validate" +import { useDict } from "/@/hooks/dict" const emit = defineEmits(["refresh"]) +const { daily_menu } = useDict("daily_menu") + // 定义变量内容 const dataFormRef = ref() const visible = ref(false) @@ -61,6 +71,7 @@ const form = reactive({ sort: 0, status: "", deptId: "", + categoryType: [], }) // 定义校验规则 @@ -71,6 +82,7 @@ const dataRules = ref({ { required: true, message: "分类排序不能为空", trigger: "blur" }, { validator: rule.number, trigger: "blur" }, ], + categoryType: [{ required: true, message: "餐段类型不能为空", trigger: "blur" }], }) // 打开弹窗 @@ -95,7 +107,9 @@ const onSubmit = async () => { try { loading.value = true - form.id ? await putObj(form) : await addObj(form) + form.id + ? await putObj({ ...form, categoryType: form.categoryType.join(",") }) + : await addObj({ ...form, categoryType: form.categoryType.join(",") }) useMessage().success(form.id ? "修改成功" : "添加成功") visible.value = false emit("refresh") @@ -112,7 +126,7 @@ const getcanteenOnlineCategoryData = (id: string) => { loading.value = true getObj(id) .then((res: any) => { - Object.assign(form, res.data) + Object.assign(form, res.data, { categoryType: res.data.categoryType.split(",") }) }) .finally(() => { loading.value = false diff --git a/src/views/canteen/canteenOnlineCategory/index.vue b/src/views/canteen/canteenOnlineCategory/index.vue index 228a219..e641599 100644 --- a/src/views/canteen/canteenOnlineCategory/index.vue +++ b/src/views/canteen/canteenOnlineCategory/index.vue @@ -55,12 +55,18 @@ + + + + - - - - - + + + + + @@ -119,7 +119,7 @@ - + @@ -161,10 +161,6 @@ onMounted(async () => { const { getDataList, currentChangeHandle, sizeChangeHandle, sortChangeHandle, downBlobFile, tableStyle } = useTable(state) -const getSelectedRows = (selectRows: any) => { - console.log(selectRows) -} - // 清空搜索条件 const resetQuery = () => { // 清空搜索条件 From 5c7b2c7081b0077c921923be4dc4f4b30fe4ff85 Mon Sep 17 00:00:00 2001 From: weiwei Date: Tue, 12 Aug 2025 19:01:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20=E8=A1=A8=E6=A0=BC=E5=88=86=E9=A1=B5?= =?UTF-8?q?=E5=8B=BE=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../canteen/canteenInventoryRecords/select-dialog.vue | 3 +-- src/views/canteen/canteenOnlineSpu/export-form.vue | 8 ++++---- src/views/supermarketerp/components/select-dialog.vue | 1 - 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/views/canteen/canteenInventoryRecords/select-dialog.vue b/src/views/canteen/canteenInventoryRecords/select-dialog.vue index e58e616..e87a90c 100644 --- a/src/views/canteen/canteenInventoryRecords/select-dialog.vue +++ b/src/views/canteen/canteenInventoryRecords/select-dialog.vue @@ -17,11 +17,10 @@ :data="dataList" v-loading="loading" :row-key="(row:any) => row.id" - :reserve-selection="true" @row-click="rowClick" :row-style="{ cursor: 'pointer' }" > - + diff --git a/src/views/canteen/canteenOnlineSpu/export-form.vue b/src/views/canteen/canteenOnlineSpu/export-form.vue index ca67642..73a7dde 100644 --- a/src/views/canteen/canteenOnlineSpu/export-form.vue +++ b/src/views/canteen/canteenOnlineSpu/export-form.vue @@ -17,8 +17,9 @@ - 查询 + 查询 重置 + 取消所有勾选 @@ -28,12 +29,11 @@ :data="dataList" v-loading="loading" :row-key="(row:any) => row.id" - :reserve-selection="true" @selection-change="" :cell-style="tableStyle.cellStyle" :header-cell-style="tableStyle.headerCellStyle" > - + @@ -79,7 +79,7 @@