From c216803eca7bfed76aceffa597ee227b58a63108 Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期二, 10 九月 2024 14:01:23 +0800 Subject: [PATCH] 1.新增筛选:已加价/未加价2.新增“售价”字段,售价=底价+加价 --- pages/mark-up/goods.vue | 104 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 79 insertions(+), 25 deletions(-) diff --git a/pages/mark-up/goods.vue b/pages/mark-up/goods.vue index b42d169..230517c 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,10 @@ { 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 }, + { label: '售价(元)', prop: 'sellPrice', minWidth: 100, fixed: 'right'}, ], searchForm: [ { @@ -72,18 +67,77 @@ clearable: true, }, }, + { + label: '加价', + id: 'isFee', + type: 'bus-select-dict', + el: { + code: 'GOODS_IS_FEE', + clearable: true, + style: 'width:100%', + }, + }, ], + }, + ], + 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