Browse Source

fix: 同步bir添加状态判断

checkBack
Yen 1 year ago
parent
commit
c7aa645721
  1. 34
      src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java
  2. 12
      src/main/java/com/qs/serve/modules/tbs/common/TbsCostApplyState.java

34
src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java

@ -26,6 +26,7 @@ import com.qs.serve.modules.bms.mapper.BmsRegion2Mapper;
import com.qs.serve.modules.bms.mapper.BmsRegionMapper;
import com.qs.serve.modules.bms.mapper.BmsSupplierMapper;
import com.qs.serve.modules.tbs.common.TbsActivityState;
import com.qs.serve.modules.tbs.common.TbsCostApplyState;
import com.qs.serve.modules.tbs.entity.TbsActivity;
import com.qs.serve.modules.tbs.entity.TbsActivityCenter;
import com.qs.serve.modules.tbs.entity.TbsActivityCenterGoods;
@ -85,6 +86,34 @@ public class BirActivityCenterGoodsServiceImpl extends ServiceImpl<BirActivityCe
@Override
public void rebuildBir(List<Long> costApplyIds) {
//不占预算的状态,进行清理
List<TbsCostApply> tbsCostApplyList = tbsCostApplyMapper.selectBatchIds(costApplyIds);
List<Long> rmIds = new ArrayList<>();
List<Long> buildIds = new ArrayList<>();
for (TbsCostApply costApply : tbsCostApplyList) {
if(costApply.getCancelFlag().equals(1)){
rmIds.add(costApply.getId());
continue;
}
Boolean useBudget = TbsCostApplyState.checkUseBudget(costApply.getChargeState());
if(useBudget!=null){
if(useBudget){
buildIds.add(costApply.getId());
}else {
rmIds.add(costApply.getId());
}
}
}
//移除历史记录
LambdaQueryWrapper<BirActivityCenterGoods> rmCostId = new LambdaQueryWrapper<>();
rmCostId.in(BirActivityCenterGoods::getCostApplyId,rmIds);
this.remove(rmCostId);
//过滤需要移除的ID
costApplyIds = buildIds;
if(CollectionUtil.isEmpty(costApplyIds)){
return;
}
//刷新BirBaseActivity
for (Long costApplyId : costApplyIds) {
@ -133,6 +162,11 @@ public class BirActivityCenterGoodsServiceImpl extends ServiceImpl<BirActivityCe
for (Long activityId : collectMap.keySet()) {
//移除历史记录
LambdaQueryWrapper<BirActivityCenterGoods> rmActId = new LambdaQueryWrapper<>();
rmActId.eq(BirActivityCenterGoods::getActivityId,activityId);
this.remove(rmActId);
TbsActivity activity = activityMapper.selectById(activityId);
if(activity==null||activity.getCancelFlag().equals(1)){
continue;

12
src/main/java/com/qs/serve/modules/tbs/common/TbsCostApplyState.java

@ -34,4 +34,16 @@ public enum TbsCostApplyState {
public static List<Integer> getPassCode(){
return passCodes;
}
public static Boolean checkUseBudget(Integer state){
if(state==null){return null;}
int[] ints = new int[]{0,5,6,8};
for (int anInt : ints) {
if(anInt==state){
return false;
}
}
return true;
}
}

Loading…
Cancel
Save