平台管理后台已有账单管理页面(Billing/billing/index),但商家前端(foodie-store)缺少账单功能。需要为商家前端新增"财务管理"模块,包含账单查询功能。
| userType | 角色 | 账单可见范围 |
|---|---|---|
| 1 | 商家 | 自己名下所有门店的账单(user_id 查询,可选按 mdId 筛选) |
| 4 | 摊位主/门店 | 仅自己关联门店的账单(md_id 过滤) |
已有 md_id 字段,账单记录创建时会写入门店 ID。
| type | 含义 |
|---|---|
| 0 | 分成(收入) |
| 1 | 充值 |
| 2 | 提现 |
| 3 | 消费 |
| 4 | 金额冻结 |
| 5 | 金额解冻 |
| 6 | 抽成返还 |
| state | 含义 |
|---|---|
| 0 | 完成 |
| 1 | 退回 |
| 2 | 作废 |
| 3 | 未支付 |
参数:
mdId(可选)— 按门店筛选type(可选)— 账单类型startDate / endDate(可选)— 时间范围pageNum / pageSize — 分页权限逻辑:
user_billing WHERE user_id = 当前用户,可选按 mdId 筛选info_user.store_id 获取门店 → 查 user_billing WHERE md_id = 门店ID返回:分页账单列表 + 门店信息
参数同上。
返回:{ totalAmount, totalDivvy, netIncome }
现有 getzddaylist、getzdmeeklist、getzdmatlist 查询需增加 mdId 可选过滤条件。
新增参数:
mdId(可选)— 按门店筛选影响范围:
UserBillingMapper.getdaylist — SQL 增加 (#{mdId} IS NULL OR md_id = #{mdId})UserBillingMapper.getdaysum — SQL 增加 (#{mdId} IS NULL OR md_id = #{mdId})UserBillingMapper.getShDaysum — SQL 增加 (#{mdId} IS NULL OR b.md_id = #{mdId})新增参数:
mdId(可选)— 按门店筛选影响范围:
UserBillingMapper.getmeeklist — SQL 增加 (#{mdId} IS NULL OR md_id = #{mdId})UserBillingMapper.getmeeksum — SQL 增加 (#{mdId} IS NULL OR md_id = #{mdId})UserBillingMapper.getShMeeksum — SQL 增加 (#{mdId} IS NULL OR b.md_id = #{mdId})新增参数:
mdId(可选)— 按门店筛选影响范围:
UserBillingMapper.getmatlist — SQL 增加 (#{mdId} IS NULL OR md_id = #{mdId})UserBillingMapper.getmatsum — SQL 增加 (#{mdId} IS NULL OR md_id = #{mdId})UserBillingMapper.getshMonthsum — SQL 增加 (#{mdId} IS NULL OR b.md_id = #{mdId})财务管理
└── 账单管理
筛选条件
汇总区域
账单列表表格
权限区分
E:\QtwCode\foodie\foodie-storeE:\QtwCode\foodie\foodie-admin-vue\src\views\Billing\billing\index.vue| 接口 | 状态 | 说明 |
|---|---|---|
GET /billing/storeBillingList |
已完成 | 商家端账单列表,分页、筛选、权限逻辑 |
GET /billing/storeBillingSummary |
已完成 | 账单汇总,返回 totalAmount/totalDivvy/netIncome |
GET /billing/getzddaylist |
已完成 | 日账单,支持 mdId 可选过滤 |
GET /billing/getzdmeeklist |
已完成 | 周账单,支持 mdId 可选过滤 |
GET /billing/getzdmatlist |
已完成 | 月账单,支持 mdId 可选过滤 |
ruoyi-admin/src/main/java/com/ruoyi/app/pay/UserBillingController.java — 控制器ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserBillingMapper.java — Mapper SQLmdId 过滤采用 (#{mdId} IS NULL OR md_id = #{mdId}) 模式,mdId 不传时查询全部数据,传入时按门店过滤。涉及 join 查询的方法使用表别名前缀 b.md_id。