zoujiajian 1 год назад
Родитель
Сommit
b3366d4e79

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/mapper/UserBenefitsOrderRecordMapper.java

@@ -16,7 +16,7 @@ import java.util.List;
  * 创建时间:2024/9/24 15:49
  */
 public interface UserBenefitsOrderRecordMapper extends BaseMapper<UserBenefitsOrderRecord> {
-	Integer selectUseComboRecordByUid(@Param("userIds") List<Long> userIdList, @Param("type") UserBenefits.Type type, @Param("goodsId") Long goodsId, @Param("skuId") Long skuId, @Param("orderStatus") List<String> orderStatus, @Param("lastYear") DateTime lastYear, @Param("startTime") Date startTime);
+	Integer selectUseComboRecordByUid(@Param("userIds") List<Long> userIdList, @Param("type") UserBenefits.Type type, @Param("goodsId") Long goodsId, @Param("skuId") Long skuId, @Param("orderStatus") List<String> orderStatus, @Param("lastYear") DateTime lastYear, @Param("startTime") Date startTime, @Param("relationId") Long relationId);
 
 	Integer selectNoPaymentRecord(@Param("userIds") List<Long> userIdList, @Param("benefitsId") Long benefitsId);
 }

+ 3 - 0
netflix-dao/src/main/resources/mapper/UserBenefitsOrderRecordMapper.xml

@@ -24,6 +24,9 @@
         <if test="lastYear != null">
             and o.created_time >= #{lastYear}
         </if>
+        <if test="relationId != null">
+            and o.relation_id = #{relationId}
+        </if>
     </select>
 
     <select id="selectNoPaymentRecord" resultType="java.lang.Integer">

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

@@ -4009,7 +4009,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 				orderDon.setIsOt(true);
 			}
 			//目前续费减免下单次数
-			Integer renewCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, userBenefits.getType(), userBenefits.getGoodsId(), userBenefits.getSkuId(), Constant.noOrderAllStatus, null, relation.getStartTime());
+			Integer renewCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, userBenefits.getType(), userBenefits.getGoodsId(), userBenefits.getSkuId(), Constant.noOrderAllStatus, null, relation.getStartTime(), relation.getId());
 			String renewConfig = userBenefits.getRenewConfig();
 			List<UserBenefits.RenewConfig> renewConfigs = Jsons.parseList(renewConfig, UserBenefits.RenewConfig.class);
 			Integer start = userBenefits.getStartRenew();
@@ -4103,7 +4103,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 			if (fhCount > 0) {
 				//近一年是否已经使用过该权益
 				DateTime lastYear = DateUtil.offsetMonth(DateTime.now(), -12);
-				Integer comboCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, userBenefits.getType(), userBenefits.getGoodsId(), null, Constant.noOrderStatus, lastYear, null);
+				Integer comboCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, userBenefits.getType(), userBenefits.getGoodsId(), null, Constant.noOrderStatus, lastYear, null, null);
 				if (comboCount > 0) {
 					throw BusinessRuntimeException.getInstance("你今年已享受该套餐优惠");
 				}

+ 1 - 1
netflix-web/src/main/java/com/cyksj/web/controller/group/GroupRelationController.java

@@ -994,7 +994,7 @@ public class GroupRelationController {
             }
             startTime = relation.getStartTime();
         }
-        Integer renewCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, data.getType(), data.getGoodsId(), data.getSkuId(), Constant.noOrderAllStatus, null, startTime);
+        Integer renewCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, data.getType(), data.getGoodsId(), data.getSkuId(), Constant.noOrderAllStatus, null, startTime, relationId);
         data.setRenewCount(renewCount);
         return GatewayResponse.SUCCESS.newBuilder().toResult(data);
     }

+ 2 - 2
netflix-web/src/main/java/com/cyksj/web/controller/user/UserBenefitsFrontController.java

@@ -135,7 +135,7 @@ public class UserBenefitsFrontController {
 				//近一年是否已经使用过该权益
 				DateTime lastYear = DateUtil.offsetMonth(DateTime.now(), -12);
 				//是否已经使用过该权益
-				Integer comboCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, data.getType(), data.getGoodsId(), null, Constant.noOrderStatus, lastYear, null);
+				Integer comboCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, data.getType(), data.getGoodsId(), null, Constant.noOrderStatus, lastYear, null, null);
 				data.setIsComboUsed(comboCount > 0);
 
 				if (StrUtil.isNotBlank(data.getComboSkuIds())) {
@@ -235,7 +235,7 @@ public class UserBenefitsFrontController {
 				.field(RenewalView::getUserId, userIdList).op(Operator.InList)
 				.field(RenewalView::getExpiryTime, DateTime.now()).op(Operator.GreaterThan)
 				.build());
-		Integer renewCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, UserBenefits.Type.RENEW, renewalViews.getGoodsId(), renewalViews.getSkuId(), Constant.noOrderAllStatus, null, renewalViews.getStartTime());
+		Integer renewCount = userBenefitsOrderRecordMapper.selectUseComboRecordByUid(userIdList, UserBenefits.Type.RENEW, renewalViews.getGoodsId(), renewalViews.getSkuId(), Constant.noOrderAllStatus, null, renewalViews.getStartTime(), renewalViews.getRelationId());
 		return GatewayResponse.SUCCESS.newBuilder().toResult(renewCount);
 	}
 }