Browse Source

fix(order):优化订单分账逻辑与课程地址判断

- 删除查询接口摘要中的多余空格
- 在订单服务中增加对课程是否在校内上课的判断注释
-修正分账逻辑中部门ID的获取方式,支持系统类型为2时使用父级部门ID
- 微信支付服务中同步更新分账部门ID逻辑,确保数据一致性
wzq 6 days ago
parent
commit
243e138786

+ 1 - 1
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/controller/commercial/CommercialController.java

@@ -235,7 +235,7 @@ public class CommercialController {
      * @param pageSize
      * @return
      */
-    @Operation(summary = "查询部门下的使用核销记录 ")
+    @Operation(summary = "查询部门下的使用核销记录")
     @GetMapping("/pageAppIsinVerifyRecords")
     public Result<IPage<AppIsinVerifyVO>> pageAppIsinVerifyRecords(@Schema(description = "页数") @RequestParam(name = "pageNo") Integer pageNo,
                                                                    @Schema(description = "条数") @RequestParam(name = "pageSize") Integer pageSize) {

+ 5 - 2
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/service/WeChatPayService.java

@@ -292,10 +292,13 @@ public class WeChatPayService {
         //创建预分账详情
         String orgCode = appOrder.getOrgCode();
         SysDepart depart = sysDepartMapper.selectOne(Wrappers.lambdaQuery(SysDepart.class).eq(SysDepart::getOrgCode, orgCode).last("limit 1"));
-
+        String deptId = depart.getId();
+        if(depart.getSystemType() == 2){
+            deptId = depart.getParentId();
+        }
         //平台(不进行分账)
         if (depart.getSystemType() != 0) {
-            SeparateAccounts separateAccounts = separateAccountsMapper.selectOne(Wrappers.lambdaQuery(SeparateAccounts.class).eq(SeparateAccounts::getDeptId, depart.getId()));
+            SeparateAccounts separateAccounts = separateAccountsMapper.selectOne(Wrappers.lambdaQuery(SeparateAccounts.class).eq(SeparateAccounts::getDeptId, deptId));
             //获取分账比例
             BigDecimal PT = separateAccounts.getPtSeparateAccounts();
             BigDecimal SH = separateAccounts.getShSeparateAccounts();

+ 9 - 2
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/service/impl/OrderServiceImpl.java

@@ -1178,6 +1178,10 @@ public class OrderServiceImpl extends ServiceImpl<AppOrderMapper, AppOrder> impl
                 }if (appOrder.getType() == 2){
                     AppSite appSite = appSiteMapper.selectById(appCoursesMapper.selectById(appOrderProInfo.getProductId()).getAddressSiteId());
                     appIsin.setUseAddress(appSite.getName());
+
+                    //判断当前课程是否是在学校上课
+
+
                 }
                 appIsinMapper.insert(appIsin);
             }
@@ -1226,9 +1230,12 @@ public class OrderServiceImpl extends ServiceImpl<AppOrderMapper, AppOrder> impl
             //创建预分账详情
             String orgCode = appOrder.getOrgCode();
             SysDepart depart = sysDepartMapper.selectOne(Wrappers.lambdaQuery(SysDepart.class).eq(SysDepart::getOrgCode, orgCode).last("limit 1"));
-
+            String deptId = depart.getId();
+            if(depart.getSystemType() == 2){
+                deptId = depart.getParentId();
+            }
             if (depart.getSystemType() != 0) {
-                SeparateAccounts separateAccounts = separateAccountsMapper.selectOne(Wrappers.lambdaQuery(SeparateAccounts.class).eq(SeparateAccounts::getDeptId, depart.getId()));
+                SeparateAccounts separateAccounts = separateAccountsMapper.selectOne(Wrappers.lambdaQuery(SeparateAccounts.class).eq(SeparateAccounts::getDeptId, deptId));
                 if (ObjectUtil.isEmpty(separateAccounts)){
                     throw new JeecgBootException("商户信息未配置!请联系管理员");
                 }