4.2 KiB
4.2 KiB
1. Contract and API Types
- 1.1 新增
src/types/api/employeeCollection.ts:收款方式、账单、核销申请、统计、查询参数与请求/响应类型;列表统一使用items/total/page/size。 - 1.2 定义账单状态(
0待核销 /1部分核销 /2已核销 /3已关闭)与申请状态(0审批中 /1已通过 /2已驳回 /3已撤销或已关闭)数字枚举,并保留后端*_name展示字段。 - 1.3 金额字段以「分」传输;附件字段使用
payment_voucher_keys对象存储 Key 数组,展示复用预签名下载接口。 - 1.4 新增
src/api/modules/employeeCollection.ts并在src/api/modules/index.ts、src/types/api/index.ts导出。 - 1.5 按后端实际契约收敛字段:账单详情为
{ bill, refunds, allocations, applications },核销申请详情为{ application, allocations, attempts },付款金额/付款方/付款时间/外部交易流水号以paid_amount/payer_name/paid_at/external_transaction_no提交。
2. Permissions, Routes, and Menu
- 2.1 新增
src/config/constants/augustIteration.ts,集中声明页面与按钮权限编码。 - 2.2 在
src/router/routesAlias.ts与src/router/routes/asyncRoutes.ts的财务管理下新增账单、核销申请、收款方式路由。 - 2.3 在
src/locales/langs/zh.json、en.json的menus.financialManagement下补充菜单文案。
3. Payment Methods Page
- 3.1 实现收款方式列表(名称、编码、排序、状态、备注、创建时间);接口返回
{ items, page, size, total },复用ArtTableFullScreen/ArtSearchBar/ArtTableHeader/ArtTable。 - 3.2 实现新增/编辑弹窗;编辑时允许提交
code,被核销申请引用时由后端拒绝并提示。 - 3.3 实现删除操作,被引用的方式给出提示并引导停用。
4. Bills Pages
- 4.1 实现账单统计卡片(应收、已核销、未核销、待处理账单数量),数据来自
GET /api/admin/employee-collection-bills/statistics。 - 4.2 实现账单列表与筛选(来源、来源单号、状态、客户/店铺、创建时间范围),展示账单号、来源、关联单号、负责员工、客户/店铺、应收/已核销/未核销金额与状态。
- 4.3 实现账单详情,展示账单信息、退款冲销、核销分摊与关联核销申请(关联申请可展开查看审批尝试记录)。
- 4.4 实现超管关闭账单弹窗,关闭原因必填;存在审批中申请时禁用关闭并给出说明。
- 4.5 列表「创建核销申请」入口按权限与账单状态控制可用性。
5. Applications Pages
- 5.1 实现核销申请列表与筛选(状态、收款方式、创建时间),展示申请编号、收款方式、付款金额、状态与提交时间。
- 5.2 实现创建/重新提交弹窗:选择 1~N 张可核销账单、按账单录入分摊金额、填写付款金额/付款方名称/付款时间/外部交易流水号、选择收款方式并上传付款凭证。
- 5.3 超管代办时必须填写
acting_reason,否则禁止提交。 - 5.4 实现申请详情,展示申请信息、分摊账单、付款凭证与全部审批尝试记录;历史记录只读,不被重新提交覆盖。
- 5.5 仅已驳回申请展示「修改并重新提交」,提交成功后生成新的审批实例并刷新详情。
- 5.6 统一处理 503「企微审批场景未配置」等业务错误,保留用户已填内容。
6. WeCom Scene and Order Rule
- 6.1 扩展
WecomBusinessType增加employee_collection_approval,并在企微审批场景页面新增可选业务类型。 - 6.2 场景保存复用既有
inspectTemplate、getBusinessFields、saveScene接口,无需新增企微接口。 - 6.3 调整线下订单创建:平台账号操作、非赠送且实际收款金额大于 0 时
payment_voucher_key非必填,字段结构不变。
7. Verification
- 7.1 运行
npm run build(含vue-tsc --noEmit)与npm run check:encoding,确保类型与编码通过。 - 7.2 校验普通员工与超管的菜单、列与操作可见性差异。
- 7.3 校验金额分/元转换、附件预签名展示与 503 错误兜底。