|
|
@ -68,6 +68,15 @@ public class BmsCenterExtendServiceImpl extends ServiceImpl<BmsCenterExtendMappe |
|
|
|
if (this.checkIsStop(type,centerId)){ |
|
|
|
Assert.throwEx("当前成本中心已分配"); |
|
|
|
} |
|
|
|
for (BmsCenterExtendBo.Item targetCenter : targetCenters) { |
|
|
|
if(targetCenter.getTargetCenterId().equals(param.getSourceCenterId())){ |
|
|
|
Assert.throwEx("后继成本中心与当前成本中心相同"); |
|
|
|
} |
|
|
|
boolean b = this.checkIsStop(type,targetCenter.getTargetCenterId()); |
|
|
|
if(b){ |
|
|
|
Assert.throwEx("部分后继成本中心已分配"); |
|
|
|
} |
|
|
|
} |
|
|
|
TbsCenterDto centerDto = centerDtoService.getCenterDto(type,centerId); |
|
|
|
//停止时间
|
|
|
|
//LocalDateTime nowTime = LocalDateTime.now();
|
|
|
@ -247,10 +256,18 @@ public class BmsCenterExtendServiceImpl extends ServiceImpl<BmsCenterExtendMappe |
|
|
|
if(totalRate.compareTo(n100)!=0){ |
|
|
|
Assert.throwEx("权重合计必须百分百"); |
|
|
|
} |
|
|
|
for (BmsCenterExtendBo.Item targetCenter : targetCenters) { |
|
|
|
if(targetCenter.getTargetCenterId().equals(param.getSourceCenterId())){ |
|
|
|
Assert.throwEx("后继成本中心与当前成本中心相同"); |
|
|
|
} |
|
|
|
boolean b = this.checkIsStop(type,targetCenter.getTargetCenterId()); |
|
|
|
if(b){ |
|
|
|
Assert.throwEx("部分后继成本中心已分配"); |
|
|
|
} |
|
|
|
} |
|
|
|
List<BmsCenterExtendBo.Item> saveExtendBo = targetCenters.stream().filter(a->a.getId()==null).collect(Collectors.toList()); |
|
|
|
List<BmsCenterExtendBo.Item> updExtendBo = targetCenters.stream().filter(a->a.getId()!=null).collect(Collectors.toList()); |
|
|
|
List<Long> updateIds = targetCenters.stream().filter(a->a.getId()!=null |
|
|
|
).map(a->a.getId()).collect(Collectors.toList()); |
|
|
|
List<Long> updateIds = targetCenters.stream().filter(a->a.getId()!=null).map(BmsCenterExtendBo.Item::getId).collect(Collectors.toList()); |
|
|
|
|
|
|
|
LocalDateTime nowTime = param.getExtendDate().atStartOfDay(); |
|
|
|
//更新被继承成本
|
|
|
@ -287,7 +304,6 @@ public class BmsCenterExtendServiceImpl extends ServiceImpl<BmsCenterExtendMappe |
|
|
|
//更新
|
|
|
|
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(); |
|
|
|
lqw.eq(BmsCenterExtend::getCenterType,param.getType()); |
|
|
|
lqw.eq(BmsCenterExtend::getCenterId,param.getSourceCenterId()); |
|
|
|
lqw.in(BmsCenterExtend::getId,updateIds); |
|
|
|
List<BmsCenterExtend> sourcesCenterList = this.list(lqw); |
|
|
|
for (BmsCenterExtend centerExtend : sourcesCenterList) { |
|
|
@ -297,7 +313,6 @@ public class BmsCenterExtendServiceImpl extends ServiceImpl<BmsCenterExtendMappe |
|
|
|
centerExtend.setWeightRate(item.getWeightRate()); |
|
|
|
centerExtend.setStartTime(nowTime); |
|
|
|
this.updateById(centerExtend); |
|
|
|
//todo bug boolean noUpdUserList = item.getUpdateUserListFlag()!=null&&item.getUpdateUserListFlag().equals(0);
|
|
|
|
LambdaQueryWrapper<BmsCenterExtendUser> delUsrLqw = new LambdaQueryWrapper<>(); |
|
|
|
delUsrLqw.eq(BmsCenterExtendUser::getChildExtId,centerExtend.getId()); |
|
|
|
centerExtendUserService.remove(delUsrLqw); |
|
|
|