Commit Graph

511 Commits

Author SHA1 Message Date
1177730464 perf(task): 调整定时任务执行频率以优化性能
- 将经销商佣金解冻任务执行频率从每分钟调整为每30秒一次
- 将经销商订单结算任务执行频率从每20秒调整为每10秒一次
- 将GLT套票发放任务执行频率从每分钟调整为每15秒一次
- 将GLT票券订单自动确认任务执行频率从每分钟调整为每33秒一次
- 将GLT用户票券自动释放任务执行频率从每分钟调整为每10分钟一次
- 在票券订单完成时同步更新商城订单状态为已完成
2026-02-10 13:52:13 +08:00
0fc914f47a fix(order): 解决送水订单完成后同步商城订单状态及关联记录数回填问题
- 在送水订单完成、确认收货和超时自动确认收货时同步更新关联商城订单状态为已完成
- 添加updateShopOrderOrderStatusAfterTicketFinished方法处理商城订单状态同步逻辑
- 在CreditCompanyRecordCountService中优化SQL查询方式,避免相关子查询导致的性能问题
- 将批量更新的chunk大小从1000调整为500以提高稳定性
- 在导入功能中添加异常处理,确保即使回填失败也不会影响整体导入流程
- 当关联记录数回填失败时在响应消息中添加警告信息
2026-02-10 12:52:27 +08:00
dd023bd2ca feat(order): 更新订单配送状态同步逻辑以支持配送员ID传递
- 在markShopOrderShippedAfterRiderAssigned方法中添加riderId参数
- 修改updateShopOrderDeliveryStatusAfterAccept方法以接收并处理配送员ID
- 更新查询逻辑以包含配送员ID字段的选择
- 添加实际配送员ID的判断逻辑,优先使用传入的配送员ID
- 修改配送状态更新条件,包含配送员ID不一致的场景
- 在更新配送状态的同时设置配送员ID
- 添加配送员ID查询条件到最终验证查询中
- 更新警告日志信息以包含配送员ID相关信息
2026-02-10 12:13:00 +08:00
ad5a5abb31 feat(order): 添加后台指派配送员时同步商城订单发货状态功能
- 在订单更新接口中添加配送员指派后的状态同步逻辑
- 新增 markShopOrderShippedAfterRiderAssigned 方法用于状态同步
- 实现后台指派配送员时自动将关联商城订单标记为已发货状态
- 添加相关业务方法注释说明使用场景和目的
- 确保配送员指派后订单状态的一致性同步
2026-02-10 12:08:58 +08:00
4481850809 feat(ticket): 接单时同步商城订单发货状态
- 在接单方法上添加事务注解确保操作原子性
- 优化时间获取逻辑避免重复调用当前时间
- 新增updateShopOrderDeliveryStatusAfterAccept方法处理发货状态同步
- 查询关联水票订单并更新对应商城订单的配送状态为20(已发货)
- 添加幂等性检查避免重复更新并记录异常情况日志
- 引入ShopOrder和ShopOrderService依赖支持订单状态更新
2026-02-10 11:29:00 +08:00
011c9e458a fix(order): 修复订单状态更新逻辑
- 移除订单状态字段的错误更新设置
- 移除发货状态字段的错误更新设置
- 保留礼品领取状态和更新时间的正确更新逻辑
2026-02-10 11:20:46 +08:00
4c8e67fe64 feat(task): 完善经销商佣金解冻任务功能
- 新增 ShopDealerOrderService 服务注入用于订单状态更新
- 添加 isUnfreeze 和 unfreezeTime 字段到 ShopDealerOrder 实体
- 实现佣金解冻完成后自动更新分销订单状态为"已解冻"
- 添加解冻时间记录功能
- 通过统计 flowType 判断佣金解冻完成度避免提前更新状态
- 增加解冻状态更新失败的日志警告
2026-02-10 10:46:05 +08:00
32db399cb5 refactor(shop): 重构ShopUser实体类和相关组件
- 调整ShopUser实体类字段定义,将id改为userId作为主键
- 更新用户类型枚举描述,从"个人用户/企业用户/其他"改为"普通用户/企业用户/特殊用户"
- 在birthday、settlementTime、createTime和updateTime字段添加@JsonFormat注解格式化输出
- 将offline字段类型从Boolean改为Integer以支持更多状态值
- 新增isDefault字段用于标识默认账号,解决多租户相同手机号问题
- 更新ShopUserController中的get方法参数从userId改为id并添加权限验证
- 注释掉ShopUserController中设置当前登录用户id的逻辑
- 修正ShopUserMapper.xml中查询条件的字段映射
- 在ShopUserParam中同步更新字段定义和查询条件配置
- 统一更新所有文件的since注释时间戳信息
2026-02-10 00:44:08 +08:00
d778036daf feat(ticket): 实现起始送水自动核销并生成送水订单功能
- 在自动核销成功后创建送水订单用于配送端跟踪
- 添加对用户水票更新失败的异常处理机制
- 添加对送水订单创建失败的异常处理机制
- 更新水票日志关联到送水订单并保留来源商城订单号
- 实现地址快照功能,优先使用地址表数据并兼容旧数据格式
- 添加安全字符串处理方法防止空指针异常
- 集成 ShopUserAddressService 和 GltTicketOrderService 服务
2026-02-09 20:39:27 +08:00
c1efeef8c7 refactor(ticket): 更新用户票务实体字段映射
- 将用户票务中的购买数量字段从buyQty替换为orderGoodsQty
- 移除GltUserTicket实体中的buyQty字段定义
- 添加orderGoodsQty字段到GltUserTicket实体中
- 修改服务层代码以使用订单商品总数量进行赋值
- 调整数据库映射关系以匹配新的业务逻辑
2026-02-09 20:28:32 +08:00
76aec53bae Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/main/java/com/gxwebsoft/glt/service/GltTicketIssueService.java
2026-02-09 18:56:33 +08:00
33f9f07037 feat(ticket): 添加购买数量字段到用户票务实体
- 在GltUserTicket实体中新增buyQty字段用于存储购买数量
- 在票务发放服务中设置购买数量到用户票务记录
- 更新实体注解以包含购买数量的描述信息
2026-02-09 18:55:17 +08:00
e8ce2d162f feat(ticket): 优化套票发放逻辑支持购买量与赠送量分离处理
- 引入 GltTicketOrder 实体和服务类处理送水订单
- 新增 DateTimeFormatter 用于时间格式化
- 修改购买数量计算逻辑,优先使用订单总数量提高准确性
- 实现购买量与赠送量分离,支持 includeBuyQty 配置决定是否将购买量计入水票账户
- 更新用户水票的可用量、冻结量和已释放数量字段逻辑
- 优化起始送水功能,支持从可用和冻结票中同时扣除
- 添加订单总数量与订单商品数量不一致的提示日志
- 在起始送水时自动生成对应的送水订单记录
- 调整释放计划生成逻辑,基于实际冻结量进行计算
2026-02-09 18:09:24 +08:00
aa4a6d9725 feat(ticket): 添加套票模板起始送水自动核销功能
- 在套票发放时根据模板配置的startSendQty自动核销对应数量
- 新增CHANGE_TYPE_START_SEND_WRITE_OFF变更类型用于标识起始送水自动核销
- 实现自动核销逻辑:计算可用数量并更新用户套票的可用和已用数量
- 记录自动核销日志并关联原始商城订单便于追溯核销来源
- 更新套票发放任务注释说明自动核销功能应用场景
2026-02-09 17:35:21 +08:00
f7a96724c6 feat(task): 更新分销佣金解冻和套票发放任务逻辑
- 引入GltTicketTemplate和GltTicketTemplateService用于动态获取水票模板
- 将硬编码的formId=10074替换为从水票模板表动态获取的goodsId集合
- 修改经销商佣金解冻规则适配新的模板配置方式
- 更新套票发放任务支持多商品ID配置
- 添加水票模板数据加载和验证逻辑
- 增强任务执行前的模板配置检查机制
2026-02-09 17:30:43 +08:00
3d8169c55a fix(auth): 修正水票模板权限注解错误
- 将添加水票接口的权限从 save 修改为 update
- 将批量添加水票接口的权限从 save 修改为 update
- 确保权限控制与实际操作类型匹配
2026-02-09 16:22:03 +08:00
3b4f8a29d8 feat(order): 添加配送范围电子围栏校验功能
- 在订单创建流程中集成电子围栏校验机制
- 实现不信任前端坐标的地址表坐标验证策略
- 添加多种格式的围栏points解析支持(JSON、分号分隔等)
- 实现射线投射算法进行点在多边形内判断
- 添加自提和无需物流订单的围栏校验跳过逻辑
- 实现坐标缺失和异常情况的错误处理机制
- 添加围栏配置异常时的订单拒绝保护机制
- 创建GeoFenceUtil工具类提供完整的围栏功能支持
2026-02-09 11:16:04 +08:00
efe7904755 fix(database): 修复导航查询中的数据库连接条件问题
- 为父级导航连接添加删除状态和租户ID过滤条件
- 移除模型连接中不必要的 c.model = 0 条件以避免字符串转数字比较
- 为模型连接添加删除状态和租户ID过滤条件
- 添加注释说明原条件导致的性能问题
2026-02-09 10:08:46 +08:00
01cd94e8b0 fix(database): 修复导航查询条件和信用信息搜索功能
- 修正了CmsNavigationMapper中cms_model表关联查询条件,添加model=0的过滤条件
- 扩展了CreditXgxfMapper中的关键词搜索范围,增加原告、被告、法院名称和其他当事人字段的搜索支持
- 优化了数据库查询逻辑以提高搜索准确性和性能
2026-02-09 10:01:20 +08:00
15744e668b feat(controller): 批量导入支持新增企业查询条件定制功能
- 在 BatchImportSupport 中添加了新的重载方法 refreshCompanyIdByCompanyNameContainedInText
- 新增 companyQueryCustomizer 参数用于自定义 CreditCompany 查询条件
- 在 CreditJudgmentDebtorController 中添加 topLevelOnly 参数控制是否只匹配一级企业
- 支持通过 parentId 条件过滤一级企业(parentId=0 或 NULL)
- 优化了企业名称匹配逻辑,专注于 name 字段进行匹配
2026-02-08 13:15:58 +08:00
7841fa0bba feat(credit): 增加企查查历史被执行人数据导入兼容性
- 添加涉案金额字段用于匹配企查查表头
- 新增执行标的金额兼容字段involvedAmountQcc
- 新增执行法院兼容字段courtNameQcc
- 实现金额和法院名称的多源数据映射逻辑
- 添加公司ID追踪功能用于数据关联
- 优化导入时的空值检查和数据清理
2026-02-08 02:01:01 +08:00
051abb9d7a feat(shop): 新增电子围栏功能并重构仓库模块
- 添加 ShopStoreFence 实体类及相关数据库表映射
- 实现 ShopStoreFenceController 提供完整的 CRUD 操作接口
- 创建 ShopStoreFenceService 和 ShopStoreFenceServiceImpl 业务逻辑层
- 设计 ShopStoreFenceParam 查询参数类支持条件筛选
- 新建 ShopStoreFenceMapper 及其 XML 映射文件
- 将原有的 ShopWarehouse 重命名为 ShopStoreWarehouse 并更新相关引用
- 修改 GltTicketOrderMapper 和 ShopOrderMapper 中的仓库表关联关系
- 更新 ShopWarehouse 相关的所有控制器、服务、参数和映射文件命名
- 在订单相关查询中将 shop_warehouse 表替换为 shop_store_warehouse 表
- 为仓库控制器添加用户登录信息自动填充功能
2026-02-08 00:03:20 +08:00
05a94b29b5 feat(shop): 新增电子围栏功能并重构仓库模块
- 添加 ShopStoreFence 实体类及相关数据库表映射
- 实现 ShopStoreFenceController 提供完整的 CRUD 操作接口
- 创建 ShopStoreFenceService 和 ShopStoreFenceServiceImpl 业务逻辑层
- 设计 ShopStoreFenceParam 查询参数类支持条件筛选
- 新建 ShopStoreFenceMapper 及其 XML 映射文件
- 将原有的 ShopWarehouse 重命名为 ShopStoreWarehouse 并更新相关引用
- 修改 GltTicketOrderMapper 和 ShopOrderMapper 中的仓库表关联关系
- 更新 ShopWarehouse 相关的所有控制器、服务、参数和映射文件命名
- 在订单相关查询中将 shop_warehouse 表替换为 shop_store_warehouse 表
- 为仓库控制器添加用户登录信息自动填充功能
2026-02-07 18:51:35 +08:00
3e2b48ace4 feat(entity): 添加用户地址修改时间字段
- 在 ShopUserAddress 实体中新增 updateTime 字段
- 为 updateTime 字段添加 JsonFormat 注解支持格式化输出
- 为 updateTime 字段添加 Schema 注解提供接口文档描述
2026-02-07 18:04:00 +08:00
45878b9005 feat(glt): 实现送水订单配送员提成结算功能
- 修改经销商订单结算任务,按确认收货状态结算订单(deliveryStatus=20)
- 在送水订单控制器中添加配送员提成结算注释说明
- 扩展送水订单服务接口,新增超时自动确认收货方法
- 实现送水订单配送员提成结算逻辑,支持拍照上传和用户确认收货两种触发方式
- 添加配送员提成幂等处理,避免重复入账
- 创建租户10584送水订单超时自动确认收货定时任务
- 实现超时订单自动确认收货并触发配送员提成结算功能
2026-02-07 17:56:32 +08:00
c0c1232768 feat(shop): 新增分销佣金解冻功能并扩展资金流动类型
- 在 ShopDealerCapital 和 ShopDealerCapitalParam 中添加资金流动类型 50(佣金解冻)
- 新增 DealerCommissionUnfreeze10584Task 定时任务处理分销佣金解冻逻辑
- 实现送水套餐和非送水套餐的差异化解冻规则
- 添加基于订单状态和水票配送状态的解冻条件判断
- 实现幂等性检查防止重复解冻操作
- 添加分布式锁确保并发安全的解冻处理
- 记录解冻流水作为佣金解冻的标记凭证
2026-02-07 17:26:19 +08:00
54e2654033 ```
feat(settlement): 修改佣金计算逻辑并计入分销商冻结金额

- 将佣金发放逻辑修改为先计入 ShopDealerUser.freezeMoney 而不是直接入账
- 更新任务描述文档,明确佣金先计入冻结金额的流程
- 在 findUnsettledPaidOrders 方法中添加相关注释说明
- 修改日志信息从"佣金入账"为"佣金入冻结"
- 调整 SQL 更新语句将 money 字段改为 freeze_money 字段
- 添加防止并发丢失更新的安全机制注释
```
2026-02-07 17:01:46 +08:00
28f113a6c9 feat(withdraw): 添加提现自动审核逻辑和订单过期时间调整
- 为租户ID 10584添加提现自动审核功能,金额小于等于50元自动通过
- 设置提现金额大于50小于1000需人工审核
- 调整订单过期时间从10分钟延长至60分钟
2026-02-07 16:37:43 +08:00
d50e85fc52 fix(order): 修复订单取消和退款流程中的并发安全问题
- 添加订单ID空值检查,防止空指针异常
- 使用条件更新替代直接更新,避免并发导致的状态污染
- 扩展退款状态检查范围,包含更多退款相关状态
- 添加未支付订单退款验证,防止脏状态产生
- 增加重复退款申请检查,避免状态冲突
- 区分用户取消和系统取消的原因标记
- 优化更新逻辑确保状态一致性
2026-02-07 15:36:35 +08:00
9b31b3ce57 feat(payment): 优化微信支付功能并添加回调兼容性支持
- 修复信用风险关系查询中的公司ID条件判断逻辑
- 将关键词搜索从main_body_name改为match_name以提高匹配准确性
- 在安全配置中添加/api/system/wx-pay/**路径到公共访问白名单
- 添加RoundingMode导入和WechatPrepaySnapshot数据类用于支付快照管理
- 实现微信支付预下单快照机制以解决请求重入参数不一致问题
- 添加多种回调地址候选方案包括新默认地址和历史兼容地址
- 实现支付金额转换为分的统一方法toFen,使用四舍五入避免精度问题
- 添加Redis缓存存储支付快照,TTL设置为30分钟
- 实现notifyUrl动态切换重试机制,支持多个回调地址备选
- 创建WxPayNotifyAliasController提供旧版回调地址兼容性支持
- 修复JSAPI和Native支付中的金额计算逻辑,优先使用payPrice字段
- 添加支付金额空值检查防止运行时异常
- 优化支付描述字段截断处理逻辑,改进默认值设置
2026-02-07 14:01:04 +08:00
78a3f8ce4c feat(order): 添加订单创建时间和过期时间设置功能
- 引入 LocalDateTime 用于时间操作
- 在订单创建时自动设置 createTime 和 updateTime
- 设置订单默认10分钟过期时间用于支付校验
- 确保时间戳只在为空时进行初始化避免覆盖
- 统一在服务层和控制层实现时间设置逻辑
2026-02-07 13:12:11 +08:00
fc8d49a768 feat(GltTicketTemplate): 添加根据商品ID查询水票功能
- 引入LambdaQueryWrapper用于构建查询条件
- 实现getByGoodsId接口支持按商品ID查询水票模板
- 添加按商品ID、删除状态排序和创建时间降序排序逻辑
- 限制查询结果只返回最新的一条记录
- 集成到现有服务层调用体系中
2026-02-07 12:39:58 +08:00
a20d1dd465 feat(tickets): 实现冻结水票自动释放功能
- 在 GltUserTicketMapper 中新增 releaseFrozenQty 方法用于释放冻结水票
- 新增 GltUserTicketReleaseMapper 处理释放记录的查询和状态更新
- 添加 H2 数据库依赖支持单元测试
- 创建 GltUserTicketAutoReleaseService 接口及其实现类
- 实现自动释放服务的核心逻辑包括加锁查询、数量更新和流水记录
- 新建定时任务 GltUserTicketAutoReleaseTask 定期执行释放操作
- 添加完整的单元测试覆盖正常释放、未到期和冻结不足等场景
- 创建测试专用数据库表结构文件
2026-02-07 00:25:24 +08:00
46de27611d fix(database): 修正水票配送订单表名错误
- 将 ALTER TABLE 语句中的表名从 glt_ticket_order 修正为 glt_ticket_order2
- 确保配送流程相关字段正确添加到目标表结构中
2026-02-06 23:31:50 +08:00
1d63c5cdc8 fix(controller): 修复登录验证失败返回值问题
- 修改riderPage方法中登录验证失败时的返回值格式
- 统一fail方法调用参数结构
2026-02-06 23:18:26 +08:00
922e7def9d feat(ticket): 添加水票订单配送流程功能
- 在GltTicketOrder实体类中新增配送相关的字段,包括配送状态、配送时间、收货人信息等
- 实现配送员端订单查询接口,支持按配送状态筛选和权限隔离
- 添加配送流程核心接口:接单、开始配送、确认送达、用户确认收货等功能
- 实现配送状态流转的状态机校验和并发安全的原子更新操作
- 优化数据库查询SQL,增加配送状态和租户ID的索引提升查询性能
- 添加配送员身份验证和权限检查机制,确保操作安全性
2026-02-06 22:00:59 +08:00
7191c93b4c feat(shop): 添加仓库关联功能到店铺实体
- 在 ShopStore 实体中添加 warehouseId 和 warehouseName 字段
- 为 warehouseName 添加 @TableField(exist = false) 注解标识非数据库字段
- 在 ShopStoreParam 参数类中添加 warehouseId 字段用于查询条件
- 更新实体类导入 TableField 注解支持
2026-02-06 20:02:51 +08:00
f8d134a330 feat(controller): 更新批量导入公司ID匹配逻辑
- 将公司名称匹配方法从精确匹配改为包含匹配模式
- 添加当事人角色字段的优先级处理机制:原告/上诉人 > 被告/被上诉人 > 其他当事人/第三人
- 在多个控制器中统一实现新的匹配策略
- 为CreditJudgmentDebtorController添加备用名称字段回退机制
- 移除原有的单一字段匹配参数,改用多角色字段组合匹配
2026-02-06 18:42:04 +08:00
6b401b8286 refactor(batch-import): 优化公司名称匹配算法
- 移除未使用的 HashSet 和 Set 导入
- 添加 patternLen 字段用于存储模式长度信息
- 修改 CompanyNameMatcher 构造函数以接收 patternLen 参数
- 在构建匹配器时收集并存储每个模式的长度
- 替换原有的 matchedIds 集合匹配逻辑
- 实现基于位置和长度的最优匹配选择算法
- 优先选择更长、更具体的匹配结果
- 处理相同位置不同长度的匹配冲突情况
- 改进模糊匹配的判断逻辑和性能表现
2026-02-06 18:27:13 +08:00
e7133f65c9 feat(case-filing): 更新批量导入功能以支持多角色公司名称匹配
- 实现了在文本中查找公司名称的功能,支持原告/上诉人、被告/被上诉人和其他当事人/第三人的多角色匹配
- 添加了特殊注释说明当事人列可能包含多个角色/名称的处理逻辑
- 调整了批量导入支持类的方法调用,改用新的公司ID刷新方法
- 修改了字段映射顺序,优先处理原告/上诉人字段,然后是被告/被上诉人和其他当事人/第三人字段
- 保持了原有的数据读取和设置逻辑不变
2026-02-06 18:10:18 +08:00
79612be1c6 feat(controller): 新增基于文本内容匹配企业名称的功能
- 在 BatchImportSupport 中新增 refreshCompanyIdByCompanyNameContainedInText 方法
- 实现 AC 自动机算法进行多模式字符串匹配
- 支持从文本字段中提取包含的企业名称并回填 companyId
- 添加 CompanyNameMatcher 内部类处理匹配逻辑
- 优化 CreditMediationController 使用新方法处理多方当事人字段
- 支持按租户分组避免跨租户误匹配
- 实现批量更新和事务处理机制
2026-02-06 17:46:53 +08:00
1b2d09049a refactor(credit): 调整判决债务人实体的金额字段命名
- 将CreditJudgmentDebtor实体中的amount字段描述从"执行标的(元)"改为"涉案金额"
- 将CreditJudgmentDebtorImportParam参数类中的amount字段重命名为involvedAmount
- 更新控制器中对金额字段的引用,使用新的involvedAmount字段名
- 移除参数类中重复的involvedAmount2字段定义
- 在导入模板示例中移除金额字段的默认值设置
2026-02-06 16:58:44 +08:00
a941e4a9ab feat(credit): 添加当事人信息字段到债务人实体
- 设置plaintiffAppellant字段值
- 设置appellee字段值
- 设置otherPartiesThirdParty字段值
- 支持上游XLS模板中的当事人姓名兼容性处理
2026-02-06 16:49:20 +08:00
bdc0acc097 Merge remote-tracking branch 'origin/master' 2026-02-06 16:42:07 +08:00
83cb7208a8 refactor(credit): 重构信用系统相关实体字段映射
- 将plaintiffUser和defendantUser字段替换为plaintiffAppellant和appellee
- 移除冗余的*2字段(如involvedAmount2、occurrenceTime2、courtName2)
- 统一使用标准字段进行数据映射避免重复逻辑
- 更新Excel注解标签以匹配新的字段命名规范
- 调整数据导入时的字段对应关系
2026-02-06 16:42:00 +08:00
d68a53e3d0 feat(entities): 添加实体字段并优化订单查询
- 在CreditJudgmentDebtor实体中新增原告/上诉人、被告/被上诉人和其他当事人字段
- 在CreditJudgmentDebtorImportParam参数类中添加对应的Excel映射字段
- 在GltTicketOrder实体中新增门店、配送员和仓库的名称地址相关字段
- 更新GltTicketOrderMapper.xml查询SQL,关联店铺和配送员信息
- 添加门店名称、地址、手机号及配送员姓名、手机号等非数据库字段映射
2026-02-06 16:41:47 +08:00
fe15c7120f feat(order): 实现订单地址快照功能
- 移除 GltTicketOrder 实体中 address 字段的 @TableField(exist = false) 注解
- 添加 ShopUserAddress 和 ShopUserAddressService 的依赖注入
- 在订单创建时实现地址快照逻辑,将用户地址信息保存到订单表
- 添加地址验证和权限检查功能
- 实现默认地址获取和地址拼接功能
- 添加订单参数空值校验
2026-02-06 13:43:08 +08:00
6285429753 feat(order): 添加订单实体扩展字段和用户关联查询
- 在GltTicketOrder实体中添加address、province、city、region等地址相关字段
- 在GltTicketOrder实体中添加nickname、phone、avatar等用户信息字段
- 所有新增字段均使用@TableField(exist = false)注解标记为非数据库字段
- 更新GltTicketOrderMapper.xml中的关联
2026-02-06 13:36:19 +08:00
46b5ce3971 1 2026-02-06 12:40:30 +08:00
4832929a11 1 2026-02-06 12:39:58 +08:00