Browse Source

fix 商务提成规格享受改为渠道绑定2个月内首单用户

zoujiajian 11 months ago
parent
commit
de712ab263

+ 51 - 48
netflix-service/src/main/java/com/cyksj/service/distribute/impl/UserBusinessFrontServiceImpl.java

@@ -104,6 +104,9 @@ public class UserBusinessFrontServiceImpl implements UserBusinessFrontService {
 								if (record == null) {
 									return;
 								}
+								if (record.getTakeMoney().compareTo(BigDecimal.ZERO) == 0) {
+									return;
+								}
 								businessOrderDonRecordMapper.insert(record);
 								log.info("开始给商务人员:{}分配分销人:{}分销的用户:{}首单:{}提成", businessId, sharedId, order.getUserId(), order.getId());
 								redisService.del(RedisService.key.BUSINESS_FIRST_ORDER_USER_KEY.getNameFormat(order.getUserId()));
@@ -115,54 +118,54 @@ public class UserBusinessFrontServiceImpl implements UserBusinessFrontService {
 				}
 			}
 			//续费
-			if (order.getOrderType() == 2) {
-				log.info("商务首单续费分销分配提成开始");
-				//是否享受过该用户首单 提成
-				UserDistributeBusinessOrderDonRecord record = businessOrderDonRecordMapper.selectOne(Wrappers.lambdaQuery(UserDistributeBusinessOrderDonRecord.class)
-						.eq(UserDistributeBusinessOrderDonRecord::getBusinessId, businessId)
-						.eq(UserDistributeBusinessOrderDonRecord::getUserId, order.getUserId())
-						.eq(UserDistributeBusinessOrderDonRecord::getOrderType, 1)
-						.eq(UserDistributeBusinessOrderDonRecord::getStatus, UserDistributeBusinessOrderDonRecord.Status.success)
-						.last("limit 1"));
-				if (record != null) {
-					log.info("开始给商务人员:{}分配用户:{}首单续费提成", businessId, order.getUserId());
-					//是否更换过车票规格座位号
-					Long preRelationId = record.getPreRelationId();
-					Long relationId = order.getRelationId();
-					if (relationId.equals(preRelationId)) {
-						try {
-							//分配首单续费提成
-							record = saveBusinessTakeMoneyRecord(order, businessId, sharedId, null, businessRate.getRenewOrderRate(), distributeRate);
-							if (record == null) {
-								return;
-							}
-							businessOrderDonRecordMapper.insert(record);
-							log.info("开始给商务人员:{}分配分销人:{}分销的用户:{}续费首单:{}提成", businessId, sharedId, order.getUserId(), order.getId());
-						} catch (DuplicateKeyException e) {
-							log.error("商务:{}重复获取分销人:{}分销的用户:{}续费首单:{}提成", businessId, businessId, order.getUserId(), order.getId());
-						}
-					} else {
-						UserRenewChangeTicketRecord renewChangeTicketRecord = renewChangeTicketRecordMapper.selectOne(Wrappers.lambdaQuery(UserRenewChangeTicketRecord.class)
-								.eq(UserRenewChangeTicketRecord::getUserId, order.getUserId())
-								.eq(UserRenewChangeTicketRecord::getAfterRelationId, relationId)
-								.last("limit 1"));
-						if (renewChangeTicketRecord != null && renewChangeTicketRecord.getPreRelationId().equals(preRelationId)) {
-							try {
-								//分配首单续费更换车位后提成
-								record = saveBusinessTakeMoneyRecord(order, businessId, sharedId, null, businessRate.getRenewOrderRate(), distributeRate);
-								if (record == null) {
-									return;
-								}
-								businessOrderDonRecordMapper.insert(record);
-								log.info("开始给商务人员:{}分配分销人:{}分销的用户:{}续费首单:{}更换后车位提成", businessId, sharedId, order.getUserId(), order.getId());
-							} catch (DuplicateKeyException e) {
-								log.error("商务:{}重复获取分销人:{}分销的用户:{}续费首单:{}更换后车位提成", businessId, businessId, order.getUserId(), order.getId());
-							}
-						}
-					}
-
-				}
-			}
+//			if (order.getOrderType() == 2) {
+//				log.info("商务首单续费分销分配提成开始");
+//				//是否享受过该用户首单 提成
+//				UserDistributeBusinessOrderDonRecord record = businessOrderDonRecordMapper.selectOne(Wrappers.lambdaQuery(UserDistributeBusinessOrderDonRecord.class)
+//						.eq(UserDistributeBusinessOrderDonRecord::getBusinessId, businessId)
+//						.eq(UserDistributeBusinessOrderDonRecord::getUserId, order.getUserId())
+//						.eq(UserDistributeBusinessOrderDonRecord::getOrderType, 1)
+//						.eq(UserDistributeBusinessOrderDonRecord::getStatus, UserDistributeBusinessOrderDonRecord.Status.success)
+//						.last("limit 1"));
+//				if (record != null) {
+//					log.info("开始给商务人员:{}分配用户:{}首单续费提成", businessId, order.getUserId());
+//					//是否更换过车票规格座位号
+//					Long preRelationId = record.getPreRelationId();
+//					Long relationId = order.getRelationId();
+//					if (relationId.equals(preRelationId)) {
+//						try {
+//							//分配首单续费提成
+//							record = saveBusinessTakeMoneyRecord(order, businessId, sharedId, null, businessRate.getRenewOrderRate(), distributeRate);
+//							if (record == null) {
+//								return;
+//							}
+//							businessOrderDonRecordMapper.insert(record);
+//							log.info("开始给商务人员:{}分配分销人:{}分销的用户:{}续费首单:{}提成", businessId, sharedId, order.getUserId(), order.getId());
+//						} catch (DuplicateKeyException e) {
+//							log.error("商务:{}重复获取分销人:{}分销的用户:{}续费首单:{}提成", businessId, businessId, order.getUserId(), order.getId());
+//						}
+//					} else {
+//						UserRenewChangeTicketRecord renewChangeTicketRecord = renewChangeTicketRecordMapper.selectOne(Wrappers.lambdaQuery(UserRenewChangeTicketRecord.class)
+//								.eq(UserRenewChangeTicketRecord::getUserId, order.getUserId())
+//								.eq(UserRenewChangeTicketRecord::getAfterRelationId, relationId)
+//								.last("limit 1"));
+//						if (renewChangeTicketRecord != null && renewChangeTicketRecord.getPreRelationId().equals(preRelationId)) {
+//							try {
+//								//分配首单续费更换车位后提成
+//								record = saveBusinessTakeMoneyRecord(order, businessId, sharedId, null, businessRate.getRenewOrderRate(), distributeRate);
+//								if (record == null) {
+//									return;
+//								}
+//								businessOrderDonRecordMapper.insert(record);
+//								log.info("开始给商务人员:{}分配分销人:{}分销的用户:{}续费首单:{}更换后车位提成", businessId, sharedId, order.getUserId(), order.getId());
+//							} catch (DuplicateKeyException e) {
+//								log.error("商务:{}重复获取分销人:{}分销的用户:{}续费首单:{}更换后车位提成", businessId, businessId, order.getUserId(), order.getId());
+//							}
+//						}
+//					}
+//
+//				}
+//			}
 		}
 	}
 

+ 8 - 3
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -2100,9 +2100,14 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 					try {
 						distributeWaitingSendPointsMapper.insert(distributeWaitingSendPoints);
 						//暂定虚物 商务可首单提成
-						if (businessId != null) {
-							//给商务人员 分配提成权益
-							userBusinessFrontService.taskDistributeRateBenefits(userDistributeShared.getSharedId(), businessId, goodsDon.getType(), order, rate);
+						//普通订单
+						if (order.getOrderType() == 1 && businessId != null) {
+							//是否是绑定两个月内的渠道
+							Date businessBindTime = userDistribute.getBusinessBindTime();
+							if (businessBindTime != null && businessBindTime.after(DateUtil.offsetMonth(DateTime.now(), -2))) {
+								//给商务人员 分配提成权益
+								userBusinessFrontService.taskDistributeRateBenefits(userDistributeShared.getSharedId(), businessId, goodsDon.getType(), order, rate);
+							}
 						}
 						//是否是cc普通推广
 						//并且购买claude code作为首单