Browse Source

移除非审批和通过状态的bir

v1.0
Yen 2 years ago
parent
commit
1c8794398d
  1. 2
      src/main/java/com/qs/serve/modules/bir/mapper/BirActivityCenterGoodsMapper.java
  2. 46
      src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java
  3. 6
      src/main/resources/mapper/bir/BirActivityCenterGoodsMapper.xml

2
src/main/java/com/qs/serve/modules/bir/mapper/BirActivityCenterGoodsMapper.java

@ -17,6 +17,8 @@ import java.util.List;
*/
public interface BirActivityCenterGoodsMapper extends BaseMapper<BirActivityCenterGoods> {
List<BirActivityCenterGoods> selectErrorBir();
/**
* 查询出异动的记录
* @param startDate

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

@ -84,7 +84,13 @@ public class BirActivityCenterGoodsServiceImpl extends ServiceImpl<BirActivityCe
LocalDate endDate = LocalDate.of(year,month,lastDayNum2);
//加载所有异动的数据
List<TbsActivityCenterGoods> activityCenterGoodsAllList = this.baseMapper.selectChangeCenterGoods(startDate,endDate,null);
// List<TbsActivityCenterGoods> activityCenterGoodsAllList = this.baseMapper.selectChangeCenterGoods(null,null,15840L);
//异常状态的费用申请,导致的Bir
List<BirActivityCenterGoods> removeErrorBirList = this.baseMapper.selectErrorBir();
List<Long> errorActIds = removeErrorBirList.stream().map(BirActivityCenterGoods::getActivityId).distinct().collect(Collectors.toList());
this.buildRemoveRecode(errorActIds);
if(activityCenterGoodsAllList.size()<1){
return;
}
@ -93,23 +99,7 @@ public class BirActivityCenterGoodsServiceImpl extends ServiceImpl<BirActivityCe
// 删除历史数据
List<Long> activityIds = activityCenterGoodsAllList.stream().filter(a->a.getId()!=null)
.map(TbsActivityCenterGoods::getActivityId).collect(Collectors.toList());
LambdaQueryWrapper<BirActivityCenterGoods> birBaseActivityLqw = new LambdaQueryWrapper<>();
birBaseActivityLqw.in(BirActivityCenterGoods::getActivityId,activityIds);
List<BirActivityCenterGoods> removeBirList = this.list(birBaseActivityLqw);
if(removeBirList.size()>0){
List<BirRemoveId> removeIds = removeBirList.stream().map(a-> {
BirRemoveId birRemoveId = new BirRemoveId();
birRemoveId.setDeleteTime(LocalDateTime.now());
birRemoveId.setId(a.getId());
return birRemoveId;
}).collect(Collectors.toList());
removeIds.forEach(a->{
birRemoveIdMapper.insert(a);
});
}
this.remove(birBaseActivityLqw);
this.buildRemoveRecode(activityIds);
List<BirActivityCenterGoods> noExist = this.baseMapper.selectNoExistCenterGoods();
if(noExist.size()>0){
@ -212,6 +202,26 @@ public class BirActivityCenterGoodsServiceImpl extends ServiceImpl<BirActivityCe
}
private void buildRemoveRecode(List<Long> activityIds) {
LambdaQueryWrapper<BirActivityCenterGoods> birBaseActivityLqw = new LambdaQueryWrapper<>();
birBaseActivityLqw.in(BirActivityCenterGoods::getActivityId, activityIds);
List<BirActivityCenterGoods> removeBirList = this.list(birBaseActivityLqw);
if(removeBirList.size()>0){
List<BirRemoveId> removeIds = removeBirList.stream().map(a-> {
BirRemoveId birRemoveId = new BirRemoveId();
birRemoveId.setDeleteTime(LocalDateTime.now());
birRemoveId.setId(a.getId());
return birRemoveId;
}).collect(Collectors.toList());
removeIds.forEach(a->{
birRemoveIdMapper.insert(a);
});
}
this.remove(birBaseActivityLqw);
}
/**
* 创建底表对象
* @param costCenterList

6
src/main/resources/mapper/bir/BirActivityCenterGoodsMapper.xml

@ -175,5 +175,11 @@
and key_num &gt;=#{query.startYearMonth}
group by key_num
</select>
<select id="selectErrorBir" resultType="com.qs.serve.modules.bir.entity.BirActivityCenterGoods">
select bir_activity_center_goods.* from bir_activity_center_goods left join tbs_cost_apply
on tbs_cost_apply.id = bir_activity_center_goods.cost_apply_id
where charge_state not in (2,3)
</select>
</mapper>

Loading…
Cancel
Save