feat(商品模式): 添加商品模式字段及相关功能

- 在商店管理页面添加商品模式列显示
- 在商店表单中增加商品模式选择字段
- 更新API接口定义包含商品模式字段
- 在智能柜相关页面统一商品模式显示和编辑功能
This commit is contained in:
dzq 2025-06-11 16:25:04 +08:00
parent 15bb35c029
commit 1d2cd48a7f
7 changed files with 52 additions and 21 deletions

View File

@ -4,6 +4,8 @@ import { http } from '@/utils/http';
export interface ShopQuery extends BasePageQuery {
shopName?: string;
corpid?: string;
/** 归属类型0-借还柜 1-固资通) */
belongType?: number;
}
/** 商店DTO */
@ -11,12 +13,16 @@ export interface ShopDTO {
shopId: number;
shopName: string;
corpid?: string;
/** 归属类型0-借还柜 1-固资通) */
belongType?: number;
}
/** 新增商店命令 */
export interface AddShopCommand {
shopName: string;
corpid: string;
/** 归属类型0-借还柜 1-固资通) */
belongType?: number;
}
/** 更新商店命令 */
@ -24,6 +30,8 @@ export interface UpdateShopCommand {
corpid: string;
shopId: number;
shopName: string;
/** 归属类型0-借还柜 1-固资通) */
belongType?: number;
}
/** 获取商店列表 */

View File

@ -166,6 +166,11 @@ getList();
<el-table-column type="selection" width="55" />
<el-table-column label="地址ID" prop="shopId" width="100" />
<el-table-column label="地址名称" prop="shopName" />
<el-table-column label="商品模式" prop="belongType" width="120">
<template #default="{ row }">
{{ row.belongType === 0 ? '借还模式' : '固资模式' }}
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }">
<el-button type="primary" link :icon="useRenderIcon(EditPen)" @click="handleEdit(row)">

View File

@ -23,11 +23,13 @@ const formRef = ref();
const formData = ref<UpdateShopCommand>({
corpid: wxStore.corpid,
shopId: 0,
shopName: ""
shopName: "",
belongType: undefined
});
const rules = {
shopName: [{ required: true, message: "请输入地址名称", trigger: "blur" }]
shopName: [{ required: true, message: "请输入地址名称", trigger: "blur" }],
belongType: [{ required: true, message: "请选择商品模式", trigger: "change" }]
};
watch(
@ -85,6 +87,12 @@ const handleClose = () => {
<el-form-item label="地址名称" prop="shopName">
<el-input v-model="formData.shopName" placeholder="请输入地址名称" />
</el-form-item>
<el-form-item label="商品模式" prop="belongType">
<el-select v-model="formData.belongType" placeholder="请选择归属类型">
<el-option label="借还模式" :value="0" />
<el-option label="固资模式" :value="1" />
</el-select>
</el-form-item>
</el-form>
<template #footer>
<el-button @click="handleClose">取消</el-button>

View File

@ -304,9 +304,9 @@ onMounted(() => {
</el-button></el-descriptions-item>
<el-descriptions-item label="借呗支付">{{ getBalanceEnableText(cabinetInfo.balanceEnable)
}}</el-descriptions-item>
<!-- <el-descriptions-item label="归属类型">
{{ cabinetInfo.belongType === 0 ? '借还柜' : '固资通' }}
</el-descriptions-item> -->
<el-descriptions-item label="商品模式">
{{ cabinetInfo.belongType === 0 ? '借还模式' : '固资模式' }}
</el-descriptions-item>
</el-descriptions>
</div>
@ -351,7 +351,7 @@ onMounted(() => {
<!-- <div class="goods-name">{{ item.goodsId ? item.goodsName : '未配置商品' }}</div> -->
</div>
<div class="line-num">
<el-divider direction="horizontal" class="vertical-divider"/>
<el-divider direction="horizontal" class="vertical-divider" />
<span class="line-number">{{ item.cellNo }}</span>
</div>
<div class="action-buttons">

View File

@ -104,21 +104,21 @@ watch(() => props.cabinetInfo, (newVal) => {
</el-select>
</el-form-item>
<!-- <el-form-item label="归属类型" prop="belongType">
<el-select v-model="formData.belongType" placeholder="请选择归属类型">
<el-option label="借还" :value="0" />
<el-option label="固资" :value="1" />
<el-form-item label="商品模式" prop="belongType">
<el-select v-model="formData.belongType" placeholder="请选择商品模式">
<el-option label="借还模式" :value="0" />
<el-option label="固资模式" :value="1" />
</el-select>
</el-form-item> -->
</el-form-item>
<el-form-item label="运行模式" prop="mode">
<!-- <el-form-item label="运行模式" prop="mode">
<el-select v-model="formData.mode" placeholder="请选择运行模式">
<el-option label="支付模式" :value="0" />
<el-option label="审批模式" :value="1" />
<el-option label="借还模式" :value="2" />
<el-option label="会员模式" :value="3" />
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item label="借呗支付" prop="balanceEnable">
<el-select v-model="formData.balanceEnable" placeholder="请选择借呗支付状态">

View File

@ -103,21 +103,21 @@ const templateOptions = Object.entries(CabinetImgMap).map(([value, item]) => ({
</el-select>
</el-form-item>
<!-- <el-form-item label="归属类型" prop="belongType">
<el-select v-model="formData.belongType" placeholder="请选择归属类型">
<el-option label="借还" :value="0" />
<el-option label="固资" :value="1" />
<el-form-item label="商品模式" prop="belongType">
<el-select v-model="formData.belongType" placeholder="请选择商品模式">
<el-option label="借还模式" :value="0" />
<el-option label="固资模式" :value="1" />
</el-select>
</el-form-item> -->
</el-form-item>
<el-form-item label="运行模式" prop="mode">
<!-- <el-form-item label="运行模式" prop="mode">
<el-select v-model="formData.mode" placeholder="请选择运行模式">
<el-option label="支付模式" :value="0" />
<el-option label="审批模式" :value="1" />
<el-option label="借还模式" :value="2" />
<el-option label="会员模式" :value="3" />
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item label="借呗支付" prop="balanceEnable">
<el-select v-model="formData.balanceEnable" placeholder="请选择借呗支付状态">

View File

@ -216,7 +216,17 @@ onSearch().then(() => {
statusList[item].label }}</el-radio>
</el-radio-group>
</el-form-item> -->
<el-form-item label="菜单权限" prop="menuIds" class="form-input">
<el-form-item prop="menuIds" class="form-input">
<template #label>
<div class="menu-label">
<span>菜单权限</span>
<!-- <el-checkbox-group v-model="formData.menuIds" class="checkbox-group">
<el-checkbox v-model="formData.menuIds" label="all" class="menu-checkbox">
全部
</el-checkbox>
</el-checkbox-group> -->
</div>
</template>
<el-checkbox-group v-model="formData.menuIds" class="checkbox-group">
<template v-for="menu in processedMenuOptions" :key="menu.categoryName">
<span class="menu-category">{{ menu.categoryName }}</span>