|
@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
|
|
+import com.cyksj.common.constant.Constant;
|
|
|
import com.cyksj.common.exception.BusinessRuntimeException;
|
|
import com.cyksj.common.exception.BusinessRuntimeException;
|
|
|
import com.cyksj.dto.Result;
|
|
import com.cyksj.dto.Result;
|
|
|
import com.cyksj.enums.GatewayResponse;
|
|
import com.cyksj.enums.GatewayResponse;
|
|
@@ -14,6 +15,7 @@ import com.cyksj.model.entity.CorpFollow;
|
|
|
import com.cyksj.model.entity.GoodsDonSku;
|
|
import com.cyksj.model.entity.GoodsDonSku;
|
|
|
import com.cyksj.model.entity.GroupsRelation;
|
|
import com.cyksj.model.entity.GroupsRelation;
|
|
|
import com.cyksj.model.entity.OrderDon;
|
|
import com.cyksj.model.entity.OrderDon;
|
|
|
|
|
+import com.cyksj.service.chatgpt.GptUserRechargeRecordService;
|
|
|
import com.cyksj.service.mange.CmsOrderDonService;
|
|
import com.cyksj.service.mange.CmsOrderDonService;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -45,6 +47,8 @@ public class CmsOrderController {
|
|
|
|
|
|
|
|
private final GoodsDonSkuMapper skuMapper;
|
|
private final GoodsDonSkuMapper skuMapper;
|
|
|
|
|
|
|
|
|
|
+ private final GptUserRechargeRecordService gptUserRechargeRecordService;
|
|
|
|
|
+
|
|
|
private final static String CORP_UUID = "corp-uuid";
|
|
private final static String CORP_UUID = "corp-uuid";
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -94,6 +98,23 @@ public class CmsOrderController {
|
|
|
}
|
|
}
|
|
|
relation.setExpiryTime(expiryTime);
|
|
relation.setExpiryTime(expiryTime);
|
|
|
relationMapper.updateById(relation);
|
|
relationMapper.updateById(relation);
|
|
|
|
|
+
|
|
|
|
|
+ //GPT代充
|
|
|
|
|
+ if (orderDon.getGoodsId() == Constant.GPT_RECHARGE_GOODS_ID) {
|
|
|
|
|
+ //扣除次数
|
|
|
|
|
+ Integer rechargeRemainNum = relation.getRechargeRemainNum();
|
|
|
|
|
+ if (rechargeRemainNum != null && rechargeRemainNum > 0) {
|
|
|
|
|
+ int update = relationMapper.update(null, Wrappers.lambdaUpdate(GroupsRelation.class)
|
|
|
|
|
+ .set(GroupsRelation::getRechargeRemainNum, rechargeRemainNum - 1)
|
|
|
|
|
+ .eq(GroupsRelation::getId, relationId)
|
|
|
|
|
+ .eq(GroupsRelation::getRechargeRemainNum, rechargeRemainNum));
|
|
|
|
|
+ if (update == 0) {
|
|
|
|
|
+ throw BusinessRuntimeException.getInstance("更新用户代充剩余次数失败,请重试");
|
|
|
|
|
+ }
|
|
|
|
|
+ //记录gpt代充记录
|
|
|
|
|
+ gptUserRechargeRecordService.recordGptUserRechargeNum(relation.getUserId(), relation.getId(), relation.getAccount(), 1, fcorpFollow != null ? fcorpFollow.getName() : null);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
|