-
fix(test): 修正 Redis 配置层级并适配 Spring Boot 版本
-
补齐订单、售后、佣金、会员、钱包、访问量和商品统计的 tenant_id 条件 覆盖关联子查询和 JOIN 两侧,并将租户条件统一放在 WHERE 条件末尾 保持全局租户拦截器行为不变
-
[BUG] 商品:C 端商品列表只传 sortField 不传 sortAsc 恒 500——Boolean 对 null 拆箱
-
[BUG] 拼团:C 端活动列表无排序,新上架活动被挤到后页——app 面 selectPage 缺 orderBy
-
[ENHANCE]
-
[BUG] 商品分类:编辑一级类目把"上级分类"选成自己,保存成功且该类目从分类树消失
-
新建商品开多规格开关(specType=true)但不传规格列表时,validateSkuList 收集到的 propertyIds 为空集合,getPropertyList 走 selectByIds 生成 IN() 非法 SQL 直接 500(A33)。 补空集合短路:propertyIds 为空时抛新增业务错误 SKU_PROPERTIES_EMPTY (1_008_006_005) 明确拒绝,不再崩到 SQL 层。
-
商品/SKU 允许填负价格并保存成功(A19):ProductSkuSaveReqVO 的 price/marketPrice/costPrice/firstBrokeragePrice/secondBrokeragePrice 均无下限校验,管理端前端 el-input-number min=0 恰好掩盖后端缺口, 绕过前端(直接接口/H5/第三方)即可写入负价。 给五个价格字段补 @Min(0),后端校验层统一拒绝非正价格(SPU 创建/ 更新经 skus 的 @Valid 级联一并生效)。
-
更新类目时把 parentId 设成分类自身的 id 可保存成功(一级类目自身 通过'父分类不能是二级分类'校验后放行),形成循环层级(A53); 创建路径父级必须是已存在分类,天然挡死。 updateCategory 补环检测:parentId==id 时抛新增业务错误 CATEGORY_PARENT_IS_SELF (1_008_001_006)。
-
GET /app-api/product/spu/page 只带 sortField、缺 sortAsc(合法但参数 不完整)时,getSortAsc()(Boolean)在 orderBy/三目拆箱处 null 直接 NPE 500(A52),旧版 App/第三方/爬虫都会踩空。 排序逻辑处统一取空安全默认(缺省按升序),三个排序分支共用, 缺参/显式 null 均不再崩。
-
…is-Plus 按主键升序致最旧在前,新上架活动被挤后页 C 端首页不可见;对齐 admin 面 orderByDesc(id)(A56)
-
get-count 接收可选 ProductSpuPageReqVO(name/categoryId/createTime),每个 tab 复用 appendTabQuery 拼筛选统计;不传参仍为全局计数,向后兼容。
-
DeliveryPickUpStoreRespVO 加 areaName 字段;DeliveryPickUpStoreConvert 加 convert01(@Mapping areaId→areaName,复用 convertAreaIdToAreaName/AreaUtils.format);/get 改用 convert01 返回 areaName。convertPage/convertList 间接复用 convert01,故 /page、/list 也会带出 areaName
-
- 后端售后申请接口启用请求体参数校验 - 前端申请售后提交前校验售后类型 - 修正售后类型 radio 选中态绑定字段
-
- 调整 MyBatisUtils.findInSet 使用 MyBatis-Plus 参数绑定 - 增加 columnName 白名单校验,避免列名被注入 - 补充 H2 兼容实现,恢复相关单测覆盖 - 替换各模块动态 FIND_IN_SET 字符串拼接写法 - 补充单参数、多参数绑定场景单测
-
- 允许拼团购买数量等于 SKU 库存,仅购买数量大于库存时提示库存不足 - 补充 CombinationRecordServiceImpl 的 DB 单测,覆盖 headId=0 开团、参团、父团不存在、库存边界、重复参团、总限购和过期取消订单等场景 - 补充 promotion_combination_record 单测表结构和清理 SQL 帖子:https://t.zsxq.com/Brapi
-
独立分销商品的 SKU 固定佣金为空时,预计佣金计算和下单分销记录创建统一按 0 处理,避免最小/最大佣金比较或佣金乘数量时出现空指针异常。 补充分销预计佣金和订单转换单元测试,覆盖固定佣金为空与 SKU 列表为空场景。
-
升级内容: - spring-boot 3.5.9 → 3.5.14 - springdoc 2.8.14 → 2.8.17 - druid 1.2.27 → 1.2.28 - mybatis-plus 3.5.15 → 3.5.16 - mybatis-plus-join 1.5.5 → 1.5.7 - netty 4.2.9.Final → 4.2.12.Final - lombok 1.18.42 → 1.18.46 - hutool 5.8.42 → 5.8.44 - guava 33.5.0-jre → 33.6.0-jre - jsoup 1.21.2 → 1.22.2 - jsch 2.27.7 → 2.28.2 - commons-net 3.12.0 → 3.13.0 - tika-core 3.2.3 → 3.3.0 - skywalking 9.5.0 → 9.6.0 - spring-boot-admin 3.5.6 → 3.5.8 - vertx 4.5.22 → 4.5.26 - californium 3.12.0 → 3.14.0 - j2mod 3.2.1 → 3.3.0 - taos 3.7.9 → 3.8.3 - awssdk 2.40.15 → 2.44.0 - alipay-sdk-java 4.40.607.ALL → 4.40.771.ALL - opengauss-jdbc 5.1.0 → 7.0.0-RC3-og - kingbase8 8.6.0 → 9.0.1.jre7 - jimureport 2.1.3 → 2.3.2(artifactId 从 jimureport-spring-boot3-starter-fastjson2 改为 jimureport-spring-boot3-starter) - jimubi 2.3.0 → 2.3.2
-
1. 运费模板「包邮件数 / 包邮金额」判断方向反向,统一改为 >= 并对齐 DO / BO 注释 2. 砍价活动促销明细 id 错用 seckillActivityId,改为 bargainActivity.getActivityId() 3. TradePriceCalculatorHelper.buildCalculateResp 对 spu.giveIntegral 兜底 0,防止拆箱 NPE 4. 恢复 / 重写 Delivery、Coupon、Discount、PointUse、Reward、PriceService 单测,新增 BargainActivity 单测,共 30 用例
-
Merge pull request !1492 from Jarrett/fix-sku-sales-count