|
@@ -1002,15 +1002,25 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
public Result updStaOrCpaOrBudgetById(UpdAdStaOrCpaOrBudget updAdStaOrCpaOrBudget) {
|
|
public Result updStaOrCpaOrBudgetById(UpdAdStaOrCpaOrBudget updAdStaOrCpaOrBudget) {
|
|
//1-修改出价
|
|
//1-修改出价
|
|
if (BytedanceConstant.UPDTYPE_BID.equals(updAdStaOrCpaOrBudget.getType())) {
|
|
if (BytedanceConstant.UPDTYPE_BID.equals(updAdStaOrCpaOrBudget.getType())) {
|
|
- //出价不能大于计划预算
|
|
|
|
|
|
+ //查询计划预算
|
|
QueryWrapper<AiBytedanceAdvertiserStrategy> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<AiBytedanceAdvertiserStrategy> queryWrapper = new QueryWrapper<>();
|
|
queryWrapper.eq("id",updAdStaOrCpaOrBudget.getId());
|
|
queryWrapper.eq("id",updAdStaOrCpaOrBudget.getId());
|
|
queryWrapper.last("limit 1");
|
|
queryWrapper.last("limit 1");
|
|
AiBytedanceAdvertiserStrategy strategyVo = aiBytedanceAdvertiserStrategyMapper.selectOne(queryWrapper);
|
|
AiBytedanceAdvertiserStrategy strategyVo = aiBytedanceAdvertiserStrategyMapper.selectOne(queryWrapper);
|
|
- int a = updAdStaOrCpaOrBudget.getAdCpaBid().compareTo(new BigDecimal(strategyVo.getAdBudget()));
|
|
|
|
- // 出价 > 计划预算
|
|
|
|
|
|
+ //出价不能大于计划预算
|
|
|
|
+ int a = 0;
|
|
|
|
+ // 出价不为空 则 固定出价
|
|
|
|
+ if (!Check.isNull(updAdStaOrCpaOrBudget.getAdCpaBid())){
|
|
|
|
+ // 出价 > 计划预算
|
|
|
|
+ a = updAdStaOrCpaOrBudget.getAdCpaBid().compareTo(new BigDecimal(strategyVo.getAdBudget()));
|
|
|
|
+ //出价为空 则 随机出价 或者 阶梯出价
|
|
|
|
+ // 最高出价 不能大于 计划预算
|
|
|
|
+ }else {
|
|
|
|
+ // 最高出价 > 计划预算
|
|
|
|
+ a = updAdStaOrCpaOrBudget.getAdMaxBid().compareTo(new BigDecimal(strategyVo.getAdBudget()));
|
|
|
|
+ }
|
|
if (a == 1){
|
|
if (a == 1){
|
|
- return Result.errorMsg("出价不能大于计划预算。");
|
|
|
|
|
|
+ return Result.errorMsg("最高出价不能大于计划预算。");
|
|
}
|
|
}
|
|
aiBytedanceAdvertiserStrategyMapper.updCpaById(updAdStaOrCpaOrBudget);
|
|
aiBytedanceAdvertiserStrategyMapper.updCpaById(updAdStaOrCpaOrBudget);
|
|
}
|
|
}
|