zangbin 1 年間 前
コミット
8f240bf27c

+ 13 - 1
tour-module/src/main/java/com/tour/module/service/impl/OrderServiceImpl.java

@@ -14,6 +14,7 @@ import com.tour.module.domain.dto.SystemOrderDto;
 import com.tour.module.enums.StatusEnum;
 import com.tour.module.service.*;
 import com.tour.module.vo.*;
+import jdk.internal.jline.internal.Log;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -48,6 +49,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
     @Resource
     IContactsService iContactsService;
     @Resource
+    private IRegionService iRegionService;
+    @Resource
     private ILineCommissionService iLineCommissionService;
     @Resource
     private IAgentService iAgentService;
@@ -296,9 +299,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
             // 获取身份证位数
             String sixStr = subIdCard(contact.getIdCard(), 6);
             String twoStr = subIdCard(contact.getIdCard(), 2);
+            // 查询市
+            Region region = iRegionService.getById(sixStr);
+            if (Objects.isNull(region)) {
+                log.error("身份证" + contact.getIdCard() + "前六位暂未查到对应地区,请完善省市区信息!");
+                throw new CustomException("分佣失败");
+            }
+            Region regionSup = iRegionService.getById(region.getParentId());
             List<LineCommission> commissionList = iLineCommissionService.list(new QueryWrapper<LineCommission>()
                     .eq("line_id", order.getLineId())
-                    .apply("find_in_set(" + sixStr +", city_code)"));
+                    .apply("find_in_set(" + regionSup.getId() +", city_code)"));
             // 不属于不参与分佣城市,继续计算佣金
             if (CollectionUtils.isEmpty(commissionList)) {
                 LineCommission lineCommission = iLineCommissionService.selectByProvince(twoStr, order.getLineId());
@@ -307,6 +317,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
                 }
             }
         }
+        Log.info("oderId:" + order.getAgentId() + "的分佣总金额:" + commission);
         // 佣金大于0开始分佣
         if (commission.signum() == 0) {
             return;
@@ -343,6 +354,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         orderCommisson.setAmount(amount);
         orderCommisson.setCommisson(commission);
         orderCommisson.setOrderId(orderId);
+        orderCommisson.setCreateTime(new Date());
         iOrderCommissonService.save(orderCommisson);
         // 更新可提现金额
         agent.setAmount(agent.getAmount().add(commission));

+ 2 - 2
tour-module/src/main/resources/mapper/module/AgentMapper.xml

@@ -35,8 +35,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="getByPid" resultType="com.tour.module.domain.Agent">
         select *
-        from lb_agent
-        WHERE `status` = 1
+        from tour_agent
+        WHERE `status` = 0
           AND deleted = 0
           and id = #{pid}
     </select>