zoujiajian 3 éve
szülő
commit
88558d2a13

+ 13 - 13
netflix-service/src/main/java/com/cyksj/service/exchange/impl/ExchangeCodeServiceImpl.java

@@ -364,18 +364,23 @@ public class ExchangeCodeServiceImpl extends ServiceImpl<ExchangeCodeMapper, Exc
 					.gt(GroupsTrips::getAvailableNum, 0).last("limit 1")
 					.eq(GroupsTrips::getStatus, GroupsTrips.Status.validity)
 					.orderByAsc(GroupsTrips::getAvailableNum));
-			//待发车
-			if (groups == null) {
-				groups = groupsMapper.selectOne(Wrappers.lambdaQuery(GroupsTrips.class)
-						.eq(GroupsTrips::getSkuId, sku.getId())
-						.gt(GroupsTrips::getAvailableNum, 0).last("limit 1")
-						.eq(GroupsTrips::getStatus, GroupsTrips.Status.waiting)
-						.orderByAsc(GroupsTrips::getAvailableNum));
-			}
 			if (groups == null) {
 				//若是ChatGPT Plus 、MidJourney
 				//获取额外的车位
 				relation = getOutSideRelationIfAi(userId, groups, sku);
+				//待发车
+				if (relation == null) {
+					groups = groupsMapper.selectOne(Wrappers.lambdaQuery(GroupsTrips.class)
+							.eq(GroupsTrips::getSkuId, sku.getId())
+							.gt(GroupsTrips::getAvailableNum, 0).last("limit 1")
+							.eq(GroupsTrips::getStatus, GroupsTrips.Status.waiting)
+							.orderByAsc(GroupsTrips::getAvailableNum));
+				}
+			}
+			if (groups == null) {
+				//新增车位 并关联
+				relation = createNewGroupTripsAndRelation(sku, groups, relation);
+				log.info("无合适规格车队,新增新车队,获取车位relationId:{}", relation.getId());
 			} else {
 				//寻找快满编车队进行占座
 				relation = groupsRelationMapper.selectOne(Wrappers.lambdaQuery(GroupsRelation.class)
@@ -525,11 +530,6 @@ public class ExchangeCodeServiceImpl extends ServiceImpl<ExchangeCodeMapper, Exc
 				}
 			}
 		}
-		if (relation == null) {
-			//新增车位 并关联
-			relation = createNewGroupTripsAndRelation(sku, groups, relation);
-			log.info("无合适规格车队,新增新车队,获取车位relationId:{}", relation.getId());
-		}
 		return relation;
 	}
 }

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

@@ -1974,14 +1974,6 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 						.gt(GroupsTrips::getAvailableNum, 0).last("limit 1")
 						.eq(GroupsTrips::getStatus, GroupsTrips.Status.validity)
 						.orderByAsc(GroupsTrips::getAvailableNum));
-				//待发车
-				if (groups == null) {
-					groups = groupsMapper.selectOne( Wrappers.lambdaQuery(GroupsTrips.class)
-							.eq(GroupsTrips::getSkuId, sku.getId())
-							.gt(GroupsTrips::getAvailableNum, 0).last("limit 1")
-							.eq(GroupsTrips::getStatus, GroupsTrips.Status.waiting)
-							.orderByAsc(GroupsTrips::getAvailableNum));
-				}
 				if (groups == null) {
 					//若是MidJourney、ChatGPT PLUS每个已满车队 硬塞5个座位
 					//主账号过期时间10天以外
@@ -2010,8 +2002,17 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 						}
 					}
 					if (relation == null) {
-						relation = groupsFuncService.createNewGroupsTrips(sku);
+						//待发车
+						groups = groupsMapper.selectOne( Wrappers.lambdaQuery(GroupsTrips.class)
+								.eq(GroupsTrips::getSkuId, sku.getId())
+								.gt(GroupsTrips::getAvailableNum, 0).last("limit 1")
+								.eq(GroupsTrips::getStatus, GroupsTrips.Status.waiting)
+								.orderByAsc(GroupsTrips::getAvailableNum));
 					}
+				}
+
+				if (groups == null) {
+					relation = groupsFuncService.createNewGroupsTrips(sku);
 				} else {
 					//寻找快满编车队进行占座
 					relation = groupsRelationMapper.selectRandomOneRelationByGroupsId(groups.getId());