Browse Source

分佣标识

Evan 2 năm trước cách đây
mục cha
commit
c828c25908

+ 1 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/SaleSiteMgrController.java

@@ -347,6 +347,7 @@ public class SaleSiteMgrController extends BaseApiController {
 
         boolean rtn = channelService.update(new LambdaUpdateWrapper<Channel>()
             .set(Channel::getName, saleSiteEditParam.getName())
+            .set(saleSiteEditParam.getCommFlag() != null, Channel::getCommFlag, saleSiteEditParam.getCommFlag())
             .eq(Channel::getChannelId, saleSiteEditParam.getChannelId()));
 
         if (!rtn) {

+ 3 - 1
mp-common/src/main/java/com/qs/mp/common/enums/CommStatusEnum.java

@@ -14,7 +14,9 @@ import com.qs.mp.common.json.EnumValueDeserializer;
 public enum CommStatusEnum implements IEnum<Integer> {
   NO(0, "未结佣"),
   YES(1, "已结佣"),
-  DOING(2, "结佣中");
+  DOING(2, "结佣中"),
+
+  NO_COMM(3, "不分佣");
 
   private final int value;
   private final String desc;

+ 3 - 0
mp-service/src/main/java/com/qs/mp/channel/domain/param/SaleSiteEditParam.java

@@ -24,4 +24,7 @@ public class SaleSiteEditParam {
     @ApiModelProperty("门店名称")
     private String name;
 
+    @ApiModelProperty("分佣标识:0默认,1不分佣")
+    private Integer commFlag;
+
 }

+ 18 - 0
mp-service/src/main/java/com/qs/mp/user/service/impl/UserTicketOrderServiceImpl.java

@@ -591,6 +591,24 @@ public class UserTicketOrderServiceImpl extends
             BeanUtils.copyProperties(ticketOrder, channelCommParam);
             Assert.isTrue(channelCommParam.getCommStatus() != CommStatusEnum.YES,
                 "结佣处理,结佣状态异常,不是结佣中或未结佣。orderId=" + orderId);
+
+            // 判断线上票判断渠道商是否打标,打标则不分佣
+            if (TicketTypeEnum.ONLINE.equals(ticketOrder.getResource())) {
+                if (ticketOrder.getChannelId() != null) {
+                    Channel channel = channelService.getById(ticketOrder.getChannelId());
+                    if (channel.getCommFlag() == 1) {
+                        // 不分佣,更新订单状态
+                        boolean rst = update(
+                            new LambdaUpdateWrapper<UserTicketOrder>().set(UserTicketOrder::getCommStatus,
+                                    CommStatusEnum.NO_COMM)
+                                .eq(UserTicketOrder::getOrderId, orderId)
+                                .in(UserTicketOrder::getCommStatus, CommStatusEnum.DOING, CommStatusEnum.NO));
+                        Assert.isTrue(rst, "定制渠道不结佣,更新订单状态失败。orderId:" + orderId);
+                        return true;
+                    }
+                }
+            }
+
         } else {
             ChannelOrder channelOrder = channelOrderService.getById(orderId);
             ChannelOrderItem channelOrderItem = channelOrderItemService.getOne(

+ 1 - 1
mp-service/src/main/resources/mapper/channel/ChannelMapper.xml

@@ -84,7 +84,7 @@
 
      <!-- 查询经销商列表信息 -->
     <select id="selectSaleSiteList" resultType="com.qs.mp.channel.domain.vo.ChannelVO">
-      select t1.channel_id as channelId, t1.channel_no, t1.name, t1.parent_id, t1.level, t1.site_type, t1.site_name, t1.comm_rate as commRate, t1.province, t1.province_id, t1.city, t1.city_id, t1.area, t1.area_id, t1.address, t1.contact, t1.mobile, t1.user_id, t1.certify_status, t1.verify_status, t1.status, t1.created_time, t1.updated_time ,
+      select t1.channel_id as channelId, t1.channel_no, t1.name, t1.parent_id, t1.level, t1.site_type, t1.site_name, t1.comm_rate as commRate, t1.province, t1.province_id, t1.city, t1.city_id, t1.area, t1.area_id, t1.address, t1.contact, t1.mobile, t1.user_id, t1.certify_status, t1.verify_status,t1.comm_flag, t1.status, t1.created_time, t1.updated_time ,
              t2.off_line_qty_cnt, t2.off_line_sale_cnt, t4.sale_qty-t2.off_line_sale_cnt as on_line_sale_cnt, t3.user_cnt
       from mp_channel t1
              left join (