|
|
@@ -12,7 +12,6 @@ import com.cyksj.common.exception.BusinessRuntimeException;
|
|
|
import com.cyksj.common.task.GlobalThreadPoolTaskExecutor;
|
|
|
import com.cyksj.dto.RedisKey;
|
|
|
import com.cyksj.mapper.*;
|
|
|
-import com.cyksj.mapper.manage.DelGroupsTripsRecordMapper;
|
|
|
import com.cyksj.mapper.manage.GroupsTripsAccountReplaceRecordMapper;
|
|
|
import com.cyksj.mapper.manage.cms.CmsUserMapper;
|
|
|
import com.cyksj.model.entity.*;
|
|
|
@@ -67,14 +66,9 @@ public class CmsGroupServiceImpl extends ServiceImpl<GroupsMapper,GroupsTrips> i
|
|
|
|
|
|
private final RedisService redisService;
|
|
|
|
|
|
- private final DelGroupsTripsRecordMapper delGroupsTripsRecordMapper;
|
|
|
-
|
|
|
private final GroupsMapper groupsMapper;
|
|
|
|
|
|
private final AccountCommonService accountCommonService;
|
|
|
-
|
|
|
- private final OrderDiscountPlusPurchaseSkuRelationMapper discountPlusPurchaseSkuRelationMapper;
|
|
|
-
|
|
|
private static final GlobalThreadPoolTaskExecutor TASK_EXECUTOR = GlobalThreadPoolTaskExecutor.getInstance();
|
|
|
|
|
|
|
|
|
@@ -339,6 +333,25 @@ public class CmsGroupServiceImpl extends ServiceImpl<GroupsMapper,GroupsTrips> i
|
|
|
TASK_EXECUTOR.execute(() -> sendChangeAccountMsg(groupsId, goodsId));;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Integer getAvailableRelation(Long goodsId, Long skuId) {
|
|
|
+ //chatGPT
|
|
|
+ GoodsDonSku sku = skuMapper.selectById(skuId);
|
|
|
+ Integer num = sku.getNum();
|
|
|
+ if (Constant.AI_goodsIds.contains(sku.getGoodsId()) && sku.getNum() > 1) {
|
|
|
+ Integer extraNum = Constant.AI_EXTRACT_NUM;
|
|
|
+ Integer maxNum = num + extraNum;
|
|
|
+ DateTime tenExpiry = DateUtil.offsetDay(DateTime.now(), 10);
|
|
|
+ Integer available = relationMapper.selectAvailableRelation(skuId);
|
|
|
+ //额外硬塞
|
|
|
+ Integer special_available = relationMapper.selectSpecialGroupsRelationAvailable(skuId, maxNum, extraNum, tenExpiry);
|
|
|
+ return special_available + available;
|
|
|
+ }
|
|
|
+
|
|
|
+ Integer available = relationMapper.selectAvailableRelation(skuId);
|
|
|
+ return available;
|
|
|
+ }
|
|
|
+
|
|
|
private void sendChangeAccountMsg(Long groupsId, Long goodsId) {
|
|
|
GoodsDon goodsDon = goodsDonMapper.selectById(goodsId);
|
|
|
String title = goodsDon != null ? goodsDon.getTitle() : "车票";
|