From d3e09bace1db01d68a9a7a434c07b4331e1b15b7 Mon Sep 17 00:00:00 2001 From: mayf <m13160102112@163.com> Date: 星期一, 02 九月 2024 21:09:25 +0800 Subject: [PATCH] 商品加价调整 --- pages/mark-up/goods.vue | 93 ++++++++++++++++++++++++++++++++++------------ package.json | 2 config/default-dev.json5 | 2 3 files changed, 70 insertions(+), 27 deletions(-) diff --git a/config/default-dev.json5 b/config/default-dev.json5 index 6dfcbf5..36520fe 100644 --- a/config/default-dev.json5 +++ b/config/default-dev.json5 @@ -1,3 +1,3 @@ { - httpBaseUri: 'http://106.14.123.210:8080', + httpBaseUri: 'http://localhost:8080', } diff --git a/package.json b/package.json index c62714d..88340a0 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "scripts": { - "start": "cross-env NODE_APP_INSTANCE=test NODE_ENV=development nuxt", + "start": "cross-env NODE_APP_INSTANCE=dev NODE_ENV=development nuxt", "build:dev": "cross-env NODE_APP_INSTANCE=dev NODE_ENV=production nuxt build", "build:prod": "cross-env NODE_APP_INSTANCE=prod NODE_ENV=production nuxt build", "launch": "nuxt start", diff --git a/pages/mark-up/goods.vue b/pages/mark-up/goods.vue index b42d169..a0b96cd 100644 --- a/pages/mark-up/goods.vue +++ b/pages/mark-up/goods.vue @@ -1,35 +1,29 @@ <template> - <el-bus-crud v-bind="tableConfig" /> + <el-bus-crud ref="crud" v-bind="tableConfig" /> </template> <script> -import { - getGoodsListConfig, - getGoodsCategoryListConfig, -} from '@/utils/form-item-config' +import { getGoodsCategoryListConfig } from '@/utils/form-item-config' export default { data() { return { tableConfig: { - url: 'flower/api/flower/markup/sp/list', - newUrl: 'flower/api/flower/markup/sp/list/save', - editUrl: 'flower/api/flower/markup/sp/list/save', - onDelete: (row) => { - return this.$elBusHttp.request( - 'flower/api/flower/markup/sp/list/delete', - { - params: { - flowerId: row.flowerId, - }, - } - ) + url: 'flower/api/flower/markup/sp/flower/list', + hasNew: false, + hasEdit: false, + hasDelete: false, + hasView: false, + persistSelection: true, + afterRequest: (list) => { + return list.map((i) => ({ ...i, id: i.flowerId })) }, operationAttrs: { - width: '140px', + width: '80px', fixed: 'right', }, columns: [ + { label: '', type: 'selection', minWidth: 60, fixed: 'left' }, { label: '商品名称', prop: 'name', minWidth: 150, fixed: 'left' }, { label: '商品封面', @@ -45,9 +39,9 @@ { label: '标签', prop: 'tags', minWidth: 120 }, { label: '供应商', prop: 'supplierName', minWidth: 100 }, { label: '底价(元)', prop: 'price', minWidth: 100 }, - { label: '加价(元)', prop: 'fee', minWidth: 100 }, { label: '销量', prop: 'sales', minWidth: 100 }, { label: '库存', prop: 'stock', minWidth: 100 }, + { label: '加价(元)', prop: 'fee', minWidth: 100, fixed: 'right' }, ], searchForm: [ { @@ -75,15 +69,64 @@ ], }, ], + extraDialogs: [ + { + title: '商品加价', + form: [], + atConfirm: async (val) => { + const { code } = await this.$elBusHttp.request( + 'flower/api/flower/markup/sp/flower/list/save', + { + method: 'post', + data: val, + } + ) + if (code === 0) { + this.$message.success('操作成功') + this.$refs.crud.clearSelection() + } else { + return false + } + }, + }, + ], + extraButtons: [ + { + text: '设置加价', + atClick: (row) => { + this.$refs.crud.$refs.extraDialog[0].show({ + flowerIds: [row.flowerId], + fee: row.fee ?? undefined, + }) + return false + }, + }, + ], + headerButtons: [ + { + text: '批量设置加价', + type: 'primary', + disabled: (selected) => selected.length === 0, + atClick: (selected) => { + this.$refs.crud.$refs.extraDialog[0].show({ + flowerIds: selected.map((i) => i.flowerId), + fee: + selected.length === 1 + ? selected[0].fee ?? undefined + : undefined, + }) + return false + }, + }, + ], form: [ { - ...getGoodsListConfig(), - rules: { required: true, message: '请选择商品' }, - str: true, - strKey: 'name', - readonly: (row, item, mode) => { - return mode === 'edit' + id: 'flowerIds', + type: 'select', + el: { + multiple: true, }, + hidden: () => true, }, { label: '加价:', -- Gitblit v1.9.3