Browse Source

拼接匹配规则预览1测试

v1.0
Yen 2 years ago
parent
commit
ca1a56545d
  1. 33
      src/main/java/com/qs/serve/modules/tbs/common/util/CostSort2WrapperUtil.java
  2. 2
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java
  3. 2
      src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetMatchApplication.java
  4. 24
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

33
src/main/java/com/qs/serve/modules/tbs/common/util/CostSort2WrapperUtil.java

@ -43,6 +43,9 @@ public class CostSort2WrapperUtil {
}
public static List<TbsScheduleItemBudget> sortOfCondition(List<TbsScheduleItemBudget> list){
if(list.size()==0){
return new ArrayList<>();
}
List<TbsScheduleItemBudget> listResult = new ArrayList<>();
//条件排序
List<TbsScheduleItemBudget> sortOfCondition = new ArrayList<>();
@ -54,23 +57,35 @@ public class CostSort2WrapperUtil {
sortOfNoCondition.add(scheduleItemBudget);
}
}
//商品排序
sortProductAndTime(sortOfNoCondition);
sortProductAndTime(sortOfCondition);
listResult.addAll(sortOfNoCondition);
listResult.addAll(sortOfCondition);
return listResult;
}
private static void sortProductAndTime(List<TbsScheduleItemBudget> list) {
//时间区间内,区间长度取最短
Collections.sort(list, (o1, o2) -> {
int len1 = o1.getConditionGoodsIds().split("_").length;
int len2 = o2.getConditionGoodsIds().split("_").length;
return len2 - len1;
Integer day1 = o1.getEndDate().getDayOfYear();
Integer day2 = o2.getEndDate().getDayOfYear();
return day2-day1;
});
//时间区间内,区间长度取最短
Collections.sort(list, (o1, o2) -> {
Long day1 = Duration.between(o1.getStartDate(), o1.getEndDate()).toDays();
Long day2 = Duration.between(o2.getStartDate(), o2.getEndDate()).toDays();
log.debug("时间区间相同,day1:{} , day2:{}",day1,day2);
return (int) (day1-day2);
return (int) (day2-day1);
});
//商品排序
Collections.sort(list, (o1, o2) -> {
int len1 = o1.getConditionGoodsIds().split("_").length;
int len2 = o2.getConditionGoodsIds().split("_").length;
log.debug("时间区间相同,len1:{} , len2:{}",len1,len2);
return len2 - len1;
});
listResult.addAll(sortOfNoCondition);
listResult.addAll(sortOfCondition);
return listResult;
}
}

2
src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java

@ -273,6 +273,7 @@ public class TbsCostApplyController {
* @param id
* @return
*/
@LimitSubmit
@PostMapping("/settingWithChange/{id}")
@SysLog(module = SystemModule.Budget, title = "费用申请", biz = BizType.INSERT)
@Transactional(rollbackFor = Exception.class)
@ -285,6 +286,7 @@ public class TbsCostApplyController {
* @param id
* @return
*/
@LimitSubmit
@PostMapping("/cancelWithChange/{id}")
@SysLog(module = SystemModule.Budget, title = "费用申请", biz = BizType.INSERT)
@Transactional(rollbackFor = Exception.class)

2
src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetMatchApplication.java

@ -123,7 +123,7 @@ public class TbsBudgetMatchApplication {
leftTheadHeaderList.add(theadHeader);
TbsBudgetTableVo.TableValue tableValue = new TbsBudgetTableVo.TableValue();
tableValue.setTopId(centerGoods.getScheduleItemBudgetId()+"");
tableValue.setTopId(centerGoods.getScheduleItemBudgetId()==null?"0":centerGoods.getScheduleItemBudgetId().toString());
tableValue.setLeftId(centerGoods.getId()+"");
tableValue.setValue(centerGoods.getCenterGoodsAmount());
tableValueList.add(tableValue);

24
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

@ -13,8 +13,11 @@ import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.util.*;
import com.qs.serve.common.util.model.DateFormatString;
import com.qs.serve.modules.bir.entity.BirActivityCenterGoods;
import com.qs.serve.modules.bir.entity.BirBaseActivity;
import com.qs.serve.modules.bir.entity.dto.BirRoiCostDTO;
import com.qs.serve.modules.bir.entity.vo.YtdQtdToOAVo;
import com.qs.serve.modules.bir.mapper.BirActivityCenterGoodsMapper;
import com.qs.serve.modules.bir.mapper.BirBaseActivityMapper;
import com.qs.serve.modules.bir.service.BirCenterRateService;
import com.qs.serve.modules.bir.service.BirRoiRateService;
import com.qs.serve.modules.bms.entity.BmsRegion;
@ -103,14 +106,18 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
private TbsActivityChannelMapper activityChannelMapper;
private TbsActivityChannelPointMapper activityChannelPointMapper;
private ProjectProperties projectProperties;
private BirRoiRateService birRoiRateService;
private TbsCostPercentMapper tbsCostPercentMapper;
private TbsScheduleItemBudgetMapper tbsScheduleItemBudgetMapper;
private final ErpDispatchDataMapper dispatchDataMapper;
private TbsCostContractMapper costContractMapper;
private VtbVerificationMapper verificationMapper;
private SysAttachService sysAttachService;
private BirRoiRateService birRoiRateService;
private BirCenterRateService centerRateService;
private BirActivityCenterGoodsMapper birActivityCenterGoodsMapper;
private BirBaseActivityMapper birBaseActivityMapper;
private TbsBudgetMatchApplication tbsBudgetMatchApplication;
@ -141,6 +148,18 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
LambdaQueryWrapper<TbsBudgetLog> rmLogLqw = new LambdaQueryWrapper<>();
rmLogLqw.eq(TbsBudgetLog::getCostApplyId,id);
budgetLogService.remove(rmLogLqw);
//删除BIR
LambdaQueryWrapper<BirActivityCenterGoods> birActivityCenterGoodsLqw = new LambdaQueryWrapper<>();
birActivityCenterGoodsLqw.eq(BirActivityCenterGoods::getCostApplyId,id);
birActivityCenterGoodsMapper.delete(birActivityCenterGoodsLqw);
LambdaQueryWrapper<BirBaseActivity> birBaseActivityLqw = new LambdaQueryWrapper<>();
birBaseActivityLqw.eq(BirBaseActivity::getCostApplyId,id);
birBaseActivityMapper.delete(birBaseActivityLqw);
//命中预算
budgetCostItemService.removeByCostApplyId(id);
}
@Override
@ -430,13 +449,14 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
}
allBudgetItem.add(costItem);
}
//保存
if(costUnItems.size() > 0){
tbsCostUnItemService.saveBatch(costUnItems);
}
budgetCostItemService.saveBatch(allBudgetItem);
}
}
if(tbsCostApply.getChargeState().equals(TbsCostApplyState.State_0_unPublish.getCode())){
if(CollectionUtil.isNotEmpty(budgetLogList)){

Loading…
Cancel
Save