feat: 创建订单时填写部门ID;订单生成失败时积分与用量写为0
This commit is contained in:
parent
a275194cfb
commit
d69d2a1df7
|
|
@ -9,10 +9,7 @@ import com.ruoyi.ai.domain.AiManager;
|
|||
import com.ruoyi.ai.domain.AiOrder;
|
||||
import com.ruoyi.ai.domain.AiStatistics;
|
||||
import com.ruoyi.ai.mapper.AiOrderMapper;
|
||||
import com.ruoyi.ai.service.IAiManagerService;
|
||||
import com.ruoyi.ai.service.IAiOrderService;
|
||||
import com.ruoyi.ai.service.IAiStatisticsService;
|
||||
import com.ruoyi.ai.service.IAiUserService;
|
||||
import com.ruoyi.ai.service.*;
|
||||
import com.ruoyi.common.constant.BalanceChangerConstants;
|
||||
import com.ruoyi.common.constant.HttpStatus;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
|
|
@ -59,6 +56,9 @@ public class AiOrderServiceImpl implements IAiOrderService {
|
|||
@Autowired
|
||||
private IAiStatisticsService aiStatisticsService;
|
||||
|
||||
@Autowired
|
||||
private IByteDeptApiKeyService byteDeptApiKeyService;
|
||||
|
||||
// 流水表:任务成功时回补
|
||||
private static final String TASK_SUCCESS_BACK_FILL_REMARK = "order.number.generation.successbackfill";
|
||||
|
||||
|
|
@ -194,6 +194,7 @@ public class AiOrderServiceImpl implements IAiOrderService {
|
|||
// 不按aimanager扣减的,等提交任务再按实扣减
|
||||
aiOrder.setAmount(new BigDecimal(0));
|
||||
}
|
||||
aiOrder.setDeptId(byteDeptApiKeyService.resolveSecondLevelDeptId(aiOrder.getUserId()));
|
||||
aiOrder.setStatus(0);
|
||||
aiOrder.setSource(aiUser.getSource());
|
||||
aiOrderMapper.insert(aiOrder);
|
||||
|
|
@ -220,15 +221,21 @@ public class AiOrderServiceImpl implements IAiOrderService {
|
|||
@Transactional
|
||||
@Override
|
||||
public void orderFailure(AiOrder aiOrder, BigDecimal amount) {
|
||||
// update前的订单使用积分
|
||||
BigDecimal orderAmount = aiOrder.getAmount();
|
||||
|
||||
aiOrder.setIsBackfilled(1);
|
||||
aiOrder.setStatus(2);
|
||||
String remark = MessageUtils.messageByDefaultLocal("order.number.generation.failed", aiOrder.getOrderNum());
|
||||
aiOrder.setRemark(remark);
|
||||
// 失败将用量与积分设置成0
|
||||
aiOrder.setAmount(new BigDecimal(0));
|
||||
aiOrder.setTotalUsage(new BigDecimal(0));
|
||||
aiOrderMapper.updateById(aiOrder);
|
||||
Long userId = aiOrder.getUserId() != null ? aiOrder.getUserId() : SecurityUtils.getAiUserId();
|
||||
// 变更值为0则不改余额,没有流水
|
||||
if (aiOrder.getAmount() != null && !aiOrder.getAmount().equals(new BigDecimal(0))) {
|
||||
aiUserService.addUserBalance(aiOrder.getOrderNum(), userId, amount, BalanceChangerConstants.REFUND, remark);
|
||||
if (orderAmount != null && !orderAmount.equals(new BigDecimal(0))) {
|
||||
aiUserService.addUserBalance(aiOrder.getOrderNum(), userId, orderAmount, BalanceChangerConstants.REFUND, remark);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue