4250 Commits

Author SHA1 Message Date
吴昊天
aa82159d43 fix(资金流水): 读取侧只展示现金渠道,交易类型下拉改由后端下发
- CapitalFlow 新增 searchCashOnlyAttr 搜索器:列表、导出、账单统计统一
  whereNotIn('pay_type', ['', 'yue', 'admin']),历史遗留的站内结算流水不再展示,
  与写入侧 PayServices::isCashChannel() 口径对齐。
- CapitalFlowServices::getList()/getFlowRecord() 注入 cash_only,trading_type
  文案改为按值映射(不再依赖数组下标,历史下线类型回退「其他」)。
- 新增 type_options(全部/订单支付/订单退款/购买会员/线下收银)供前端下拉,
  同时保留 status 全量文案兼容旧前端。
- 后台资金流水页:筛选改用 trading_type + typeOptions,支付方式直接取
  pay_type_name,移除本地硬编码的支付方式表。
- 同步 .crmeb 售后文档的资金流水读取侧口径说明。
2026-10-24 18:22:22 +08:00
吴昊天
90b1877806 fix(商品): 更新软删除逻辑,确保商品下架并失效购物车商品及分类关联 2026-10-24 18:22:22 +08:00
吴昊天
36bd2597e0 fix(管理端): 修正订单退款状态文案与支付状态映射
- 订单详情页去掉后端从未返回的 is_all_refund 判断,退款申请中统一显示"退款中"
- 订单中台列表支付状态对齐 OrderCenter::PAY_STATUS_MAP:2 为部分退款、3 为全额退款
2026-10-24 18:22:22 +08:00
吴昊天
22362638ef refactor(订单): 移除拆单发货与拆单退款残留逻辑
- 发货服务删除 splitDelivery/getCartList/tidyCartList,通用发货任务改走 delivery()
- 删除子单收货联动 checkMaster、拆单开票 splitOrderInvoice 及 pid 分支
- 普通订单模块与开放接口移除拆单控制器方法、路由与拆单文案
- 订单详情 related_orders 恒为 null,文档同步为不支持拆单
2026-10-24 18:20:37 +08:00
From-wh
d8e2a51350 fix(订单中台): 详情接口补充 refunded_price 实际退款金额字段 2026-10-24 18:20:23 +08:00
From-wh
f19125f7ae fix(订单详情): 自定义表单图片字段按类型回显并支持点击预览 2026-10-24 18:20:23 +08:00
From-wh
ec156de42c fix(管理端): 修复商品回收站恢复入口并按回收站页签显隐操作项 2026-10-24 18:20:23 +08:00
From-wh
a23eadfb09 fix(商品): 编辑商品不再覆盖真实销量 2026-10-24 18:20:23 +08:00
From-wh
0ae6971cbd feat(订单): 订单列表与统计支持按字段搜索和独立订单号筛选 2026-10-24 18:20:23 +08:00
From-wh
53bdad2339 fix(管理端): 修复单图组件热区弹窗无法打开,无图时提示先上传图片 2026-10-24 18:20:23 +08:00
吴昊天
4bec49c6c2 fix(后台): 适配 Element Plus 2.x 弹层 API,移除订单列表冗余活动类型列
- ElPopover 仅暴露 hide(),旧 Element UI 的 doClose() 在 2.x 不存在,
  分销/会员价设置弹层改为可选链调用 hide(),避免关闭时报错。
- 会员价弹层可见性绑定由 v-model:value 改为 v-model:visible,
  并去掉编辑图标上的冗余点击赋值。
- 订单列表移除「活动类型」列(中台已不再下发 activity_type_text,恒为空)。
2026-10-23 14:17:16 +08:00
吴昊天
d90135d2fc fix(积分): 积分累计改按收支方向聚合,移除已废弃的过期提示
- UserBillServices 新增 getIntegralSumByPm():按 category=integral + status=1 +
  pm 方向求和,支持时间筛选与冻结期内(is_frozen=1)统计。
- 签到页用户信息统计不再枚举 type 白名单:新增积分类型(order_give_integral、
  order_gain_refund 等)无需同步维护即可正确计入累计/支出/今日;
  冻结积分改为只统计积分流水中的冻结收入项。
- 用户端积分页移除 clear_time 过期提示(对应逻辑已废弃),清理 dayjs 依赖与
  isTime 状态。
2026-10-23 14:17:15 +08:00
吴昊天
51f76ec771 fix(资金流水): 只记录真实资金进出,余额结算与退回余额不再记账
- PayServices 新增 isCashChannel():仅第三方在线渠道 + 线下支付为真;
  余额支付、后台代付、空支付方式(0 元单)一律为假。isRealPaymentChannel()
  保留余额支付语义(站内有结算无资金流),内部委托 isCashChannel 判定现金渠道。
- CapitalFlowServices::setFlow() 作为唯一出口统一拦截非现金渠道与未知业务类型,
  避免各业务分支各自判断导致漏过滤;nickname/phone 缺省兼容,返回是否写入。
- 退款链路:refund_type=balance(含原路退款改退余额)属于站内结转,
  RefundExecutorServices::writeFlow() 与 RefundEffectServices 均跳过记账;
  其余退款同样走 isCashChannel 判定,余额支付订单退款不再产生流水。
- 补充 .crmeb 售后文档的资金流水口径说明。
2026-10-23 14:17:15 +08:00
吴昊天
f9ba517389 fix(通知日志): 修复统计恒为 0、状态筛选丢失并补全列表分页
后端
- NoticeLogDao::getStatistics() 原实现复用同一个查询构造器,where 条件累积,
  导致 failed 恒为 0、success 含全部状态;改为每次基于独立条件 count。
- 抽出 buildWhere() 统一组装条件,列表与统计共用;统计不叠加状态条件。
- status=0(待发送)是合法筛选值,原 empty() 判断会丢弃,改为 isset + 非空串判断。
- page/limit 做整数与上限(100)校验,避免非法分页参数。
- 列表接口返回 { list, count },供前端分页使用。

前端
- 补充分页组件,搜索/重置/清理后回到第一页并同时刷新列表与统计。
- 兼容列表接口旧格式(数组)与新格式({ list, count })。
2026-10-23 14:17:15 +08:00
吴昊天
05d46ed2f1 fix(虚拟商品): 分类与标签 ID 统一转 int,修复后台编辑页无法回显
- 商品详情接口的 cate_id / label_id 由 explode 后仍为字符串数组,
  而后台分类级联选择的 value 是数字,导致编辑页分类、标签回显为空。
  统一 array_map('intval') 处理,与 label_list / protection_list 口径一致。
- 后台网盘商品编辑页兼容后端返回数组或逗号字符串两种格式,
  并过滤非正数与 NaN 值,避免提交空节点。
2026-10-23 14:17:08 +08:00
吴昊天
e712f5554c feat(商品): 网盘商品改 direct 单按钮直购,自定义表单商品禁止加入购物车
加购策略
- virtual Handler::getCartStrategy() 由 cart/多品改为 cart_mode=direct、multi_item=false,
  中台据此下发 cart_button=0,列表与详情只保留「立即购买」。
- 详情页 direct 模式不再写购物车:选中规格后跳单品直购页
  /pages/center/order/create/index?product_id=&sku_unique=&product_type=&num=;
  多规格首次点击先弹规格窗确认规格,再次点击直接下单。
- 列表卡片 cart_button=0 时展示「立即购买」,点击整行进详情。
- StoreCartServices::setCart() 增加 isDirectCartMode() 校验,new=false 时抛
  「该商品不支持加入购物车,请直接购买」,防止其他入口绕过 UI 加购。

自定义表单
- CenterProductServices::hasCustomForm() 统一判定(兼容 JSON 字符串/空数组/已解码数组),
  5 处 cart_button 计算与 cart_strategy 组装均按 direct 处理。
- StoreCartServices::setCart() 增加 hasCustomForm() 校验,new=false 时直接拦截。

商品图片
- getList/productDetail 的 image、recommend_image、slider_image 与 SKU pic
  统一 set_file_url 补全站点域名,与后台列表口径一致,修复图片裂图。
- 同步更新 .crmeb 用户端购物车文档与虚拟商品 README、详情页 mock 数据。
2026-10-23 14:16:54 +08:00
吴昊天
61d131b99f fix(商品): 修复收藏/点赞批量写入被 saveAll 静默丢弃
- eb_store_product_relation 使用 (uid, product_id, type, category) 联合主键,
  Model::saveAll() 因主键字段齐全走 UPDATE 分支,导致新记录静默写入失败;
  DAO 新增 insertAll() 直连模型 insertAll 绕过该语义。
- 写入前过滤非正数商品ID(前端未取到 product_id 时会传空值),避免脏数据。
- 批量写入统一使用同一 add_time,便于按批次检索。
2026-10-23 14:16:41 +08:00
吴昊天
9a1b7e5071 fix(模块安装器): 兼容不同 MySQL 驱动/版本的字段名大小写,确保正确读取列名 2026-10-23 14:16:41 +08:00
吴昊天
2b3f30d057 fix(数据库): 为菜单表添加唯一键支持,适配 MySQL 5.7 2026-10-23 14:16:41 +08:00
吴昊天
997659de67 feat(db): 适配 MySQL 5.7 安装与建表
- 安装 SQL 及安装器统一使用 utf8mb4_general_ci,移除 MySQL 8 专属 0900 排序规则
- JSON 字段移除表达式默认值,改为 DEFAULT NULL,兼容 MySQL 5.7
- 124 张表统一显式 ROW_FORMAT=DYNAMIC,避免依赖 innodb_default_row_format
- 安装程序最低版本调整为 MySQL 5.7,连接字符集改为 utf8mb4
- 同步 README、帮助文档、数据库规范与模块 Installer
2026-10-23 14:16:21 +08:00
From-wh
7446bf25a4 fix(实物商品): 订单编辑弹窗状态展示改为与列表同口径计算业务状态 2026-10-23 14:14:59 +08:00
吴昊天
137b719187 fix(售后): 修复确认收货状态与退款流水号覆盖
- 退货退款/换货确认收货后按 receive_time 展示待退款/待补发,并切换确认收货、执行退款、补发按钮
- 后台填写的退款流水号写入售后单,退款完成时优先使用,不再被系统退款单号覆盖
- 退款流水号限制 64 个字符
2026-10-23 14:14:59 +08:00
吴昊天
b2fbcf257a fix(统计): 修正交易统计退款与环比数据
- 商品退款按 refund_status=已退款、refund_time 统计,兼容全额退款 pay_status=3
- 商品支付/余额支付按支付口径统计,退款在支出中单独列示
- 修复余额支付环比使用两个百分比再计算、无基期环比出现百万级数值的问题
2026-10-23 14:14:59 +08:00
吴昊天
dba17dd449 fix(统计): 修正订单统计退款口径与来源类型数据
- 订单量/销售额包含后续退款订单,退款订单数与金额单独统计
- 退款金额/退款订单数按 refund_time 归属,兼容 pay_status=2/3
- 订单来源、订单类型与趋势统一支付口径
2026-10-23 14:14:59 +08:00
吴昊天
efe8992022 style(统计): 优化订单统计来源与类型模块样式
- 左右卡片等宽等高对齐,修复全局 ivu-mt 导致的顶部错位
- 占比进度条与百分比列自适应对齐,0% 显示灰色轨道
- 饼图复用 ECharts 实例、稳定容器 ID,过滤 0 值扇区并调整图例/标签布局
2026-10-23 14:14:59 +08:00
吴昊天
96a54240cd fix(订单): 确认页商品金额与商品总价按规格原价展示
- 确认接口 priceGroup 增加 sumPrice(规格原价 × 数量),活动订单取活动价
- 下单引擎商品卡片使用规格原价,商品总价使用 sumPrice,等级/会员优惠单独列示
- 旧版确认页商品总价按 sumPrice 展示,修复运费字段名不一致导致的 NaN
- 快递费用显示优惠前金额,会员运费优惠单独展示
2026-10-23 14:14:50 +08:00
吴昊天
944774bd44 fix(售后): 完善售后商品金额与申请表单
- 未发货订单仅允许仅退款,可用类型与提交校验同时限制
- 售后商品卡展示规格原价;申请页展示商品分摊实付+运费
- 顶部仅保留订单编号,退款金额/退还积分移动到售后类型上方
- 退款金额标签统一为退款金额,旧售后快照回填原价
2026-10-23 14:14:50 +08:00
吴昊天
6b1f41dddb fix(订单): 详情展示原运费与运费优惠
- 下单时保存 postage_discount,供订单详情还原优惠前快递运费
- 价格信息运费改为快递运费,展示原价并单独展示会员运费优惠
- 自提/上门订单运费优惠清零
2026-10-23 14:14:37 +08:00
吴昊天
581fe81df7 fix(优惠券): 确认页自动领取最优券并统一券列表口径
- confirm/cartConfirm 共用 buildConfirmCouponList,无可用券时自动领取整单最优券
- computed 重算补齐已选券,避免入口显示已用券但弹窗列表为空
- 券查询时间边界改为 start_time <= now,覆盖领取当秒的自动领券
- 同步用户端下单优惠券文档
2026-10-22 11:16:05 +08:00
吴昊天
d5e2f6066a feat(送礼订单): 完善礼物信息、领取人操作与订单金额展示
- 订单详情新增礼物信息卡:送礼人查看领取人,领取人查看赠送人,含礼物留言与领取时间
- 领取人按订单流程可见确认收货、查看物流、去评价,评价接口权限放开至领取人
- 商品信息卡增加标题,商品金额与商品总额按规格原价(attr_info.price)展示
- 订单列表商品图放大、规格文字与图片底部对齐,修复次级按钮双层边框
2026-10-22 11:15:59 +08:00
From-wh
000adafb42 feat(实物商品): 新增预售发货时间 presale_day 字段全链路支持 2026-10-22 11:15:57 +08:00
吴昊天
1b8714b752 更新前端文件 2026-10-22 10:04:43 +08:00
吴昊天
633eef89c9 fix(管理端): 表格操作列统一为文字链接样式
- 驱动/插件各列表操作项改 a 链接 + el-divider 分隔,移除自定义 .btn/.table-link 样式
- 打印驱动配置禁用态改占位色,会员卡批次「编辑」移出更多菜单直显
2026-10-21 17:09:51 +08:00
From-wh
03cb678009 fix(全局文案): 统一「模版」错别字为「模板」 2026-10-21 17:09:32 +08:00
吴昊天
083c7097d5 feat(用户): 新增资金明细接口并接入移动端账单页
账单页原误用推广佣金接口,改为独立资金明细接口 user/money/list/:type(0=全部 1=消费 2=充值)
2026-10-21 16:59:48 +08:00
From-wh
4e56f2fece fix(商品): 添加规格值改行内输入并修复隐藏页签 SKU 行裁切 2026-10-21 16:58:32 +08:00
From-wh
a2c423a860 style(物流设置): 物流公司列表对齐标准操作列,排序移至编辑页维护 2026-10-21 16:58:12 +08:00
吴昊天
e66551df64 fix(订单创建): 同步优惠券列表与选中状态,确保弹窗显示最新可用券 2026-10-21 16:58:12 +08:00
From-wh
56216a2441 fix(商品): 会员价分佣组件改用 model-value 事件,修复输入不生效 2026-10-21 16:58:12 +08:00
吴昊天
9a0c00b7cd fix(积分记录): 补全抵扣/抽奖/注册类型映射并按订单号回查抵扣流水
deduction/product_deduction 的 link_id 存订单号而非主键,单独按 order_no 回查;补齐积分抵扣、抽奖、注册送积分、积分兑换等类型名称
2026-10-21 16:58:11 +08:00
吴昊天
39772f06f2 fix(管理端): 订单/售后列表表格区统一内边距
中台订单、实物订单、售后列表的表格与分页包进 table-content 容器,与 tab 栏对齐
2026-10-21 16:58:11 +08:00
吴昊天
a40d5f9a5b fix(管理端): 操作列链接不换行(商品评价/通知渠道)
多操作项在窄列下折行,容器加 nowrap,评价列加宽至 220px
2026-10-21 16:58:11 +08:00
From-wh
a8d86e1301 feat(移动端订单): 优化商品自定义表单控件样式与交互 2026-10-21 16:57:55 +08:00
吴昊天
7405042247 fix(用户列表): 移除充值次数筛选
后端查询、参数接收与前端表单同步移除
2026-10-21 16:57:48 +08:00
吴昊天
78f56bb074 feat(送礼订单): 完善送礼/收礼订单全链路与详情性能
- 订单详情按查看者裁剪:购买者隐藏收货信息、物流轨迹及确认收货/申请退款/查看物流;领取人展示收货信息、物流轨迹与确认收货/查看物流
- 领取人订单列表纳入礼物订单并只读展示,统计计数含礼物、金额仅计本人支付
- 收礼人可确认收货;修复领取成功页订单号传递与领取页礼物详情查询
- 新增 eb_order_center.gift_uid 实体列与索引并同步安装 SQL
- 详情接口物流轨迹改为缓存读取 + 前端异步补齐,空轨迹短缓存 120 秒,修复送礼订单物流接口收货地址取值
2026-10-21 16:56:21 +08:00
吴昊天
897d4339d7 删除前端构建的文件 2026-10-21 16:54:13 +08:00
吴昊天
2be81563ea fix: 更新 gridMenu 组件中的路由和图标,优化用户体验 2026-10-21 16:54:11 +08:00
sugar1569
cb12396c5b feat: 为商品和订单卡片添加跳转详情功能,优化卡片布局
新增商品卡片点击跳转商品详情的 goGoods 函数,订单卡片点击跳转订单详情的 goOrder 函数;调整订单图片样式添加背景色,优化商品信息区域 flex 收缩属性避免布局溢出,补充必要注释说明样式和逻辑。
2026-10-21 16:54:09 +08:00
From-wh
b037c8239c fix(订单中台): 调整订单号列宽并优化订单状态显示逻辑 2026-10-21 16:54:08 +08:00
吴昊天
d04e69ec1f feat(图片处理): 统一处理图片路径,确保存储相对路径并对齐接口返回 2026-10-21 16:54:08 +08:00