|
|
|
@ -124,18 +124,19 @@ public class BsEnergyTargetController extends BladeController { |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 能耗目标 修改 |
|
|
|
* 能耗目标 修改 |
|
|
|
* @param bsEnergyTargetList |
|
|
|
* @param bsEnergyTargetVO |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@PostMapping("/update") |
|
|
|
@PostMapping("/update") |
|
|
|
@Operation(summary = "修改", description = "传入bsEnergyTargetList") |
|
|
|
@Operation(summary = "修改", description = "传入bsEnergyTarget") |
|
|
|
public R update(@Valid @RequestBody List<BsEnergyTargetVO> bsEnergyTargetList) { |
|
|
|
public R update(@Valid @RequestBody BsEnergyTargetVO bsEnergyTargetVO) { |
|
|
|
List<String> years = bsEnergyTargetList.stream().map(BsEnergyTargetVO::getYear).collect(Collectors.toList()); |
|
|
|
String originalYear = bsEnergyTargetVO.getOriginalYear(); |
|
|
|
String type = bsEnergyTargetList.get(0).getType(); |
|
|
|
String year = bsEnergyTargetVO.getYear(); |
|
|
|
List<BsEnergyTargetEntity> existList = bsEnergyTargetService.list(new LambdaQueryWrapper<BsEnergyTargetEntity>().in(BsEnergyTargetEntity::getYear, years).eq(BsEnergyTargetEntity::getType, type)); |
|
|
|
String type = bsEnergyTargetVO.getType(); |
|
|
|
Map<String, Long> existMap = existList.stream().collect(Collectors.toMap(e -> e.getYear() + "-" + e.getMonth(), BsEnergyTargetEntity::getId, (oldValue, newValue) -> oldValue)); |
|
|
|
List<BsEnergyTargetEntity> existList = bsEnergyTargetService.list(new LambdaQueryWrapper<BsEnergyTargetEntity>().eq(BsEnergyTargetEntity::getYear, year).eq(BsEnergyTargetEntity::getType, type)); |
|
|
|
List<BsEnergyTargetEntity> saves = new ArrayList<>(); |
|
|
|
List<BsEnergyTargetEntity> saves = new ArrayList<>(); |
|
|
|
for (BsEnergyTargetVO bsEnergyTargetVO : bsEnergyTargetList) { |
|
|
|
if(originalYear.equals(year)){ |
|
|
|
|
|
|
|
Map<String, Long> existMap = existList.stream().collect(Collectors.toMap(e -> e.getYear() + "-" + e.getMonth(), BsEnergyTargetEntity::getId, (oldValue, newValue) -> oldValue)); |
|
|
|
List<BsEnergyTargetEntity> bsEnergyTargetEntities = bsEnergyTargetVO.parseEntities(); |
|
|
|
List<BsEnergyTargetEntity> bsEnergyTargetEntities = bsEnergyTargetVO.parseEntities(); |
|
|
|
for (BsEnergyTargetEntity bsEnergyTarget : bsEnergyTargetEntities) { |
|
|
|
for (BsEnergyTargetEntity bsEnergyTarget : bsEnergyTargetEntities) { |
|
|
|
String key = bsEnergyTarget.getYear() + "-" + bsEnergyTarget.getMonth(); |
|
|
|
String key = bsEnergyTarget.getYear() + "-" + bsEnergyTarget.getMonth(); |
|
|
|
@ -144,6 +145,20 @@ public class BsEnergyTargetController extends BladeController { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
saves.addAll(bsEnergyTargetEntities); |
|
|
|
saves.addAll(bsEnergyTargetEntities); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
if(CollectionUtils.isNotEmpty(existList)){ |
|
|
|
|
|
|
|
return R.fail(year + "年份目标已存在,请勿重复添加"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
List<BsEnergyTargetEntity> existOriginalList = bsEnergyTargetService.list(new LambdaQueryWrapper<BsEnergyTargetEntity>().eq(BsEnergyTargetEntity::getYear, originalYear).eq(BsEnergyTargetEntity::getType, type)); |
|
|
|
|
|
|
|
Map<String, Long> existOriginalMap = existOriginalList.stream().collect(Collectors.toMap(e -> e.getYear() + "-" + e.getMonth(), BsEnergyTargetEntity::getId, (oldValue, newValue) -> oldValue)); |
|
|
|
|
|
|
|
List<BsEnergyTargetEntity> bsEnergyTargetEntities = bsEnergyTargetVO.parseEntities(); |
|
|
|
|
|
|
|
for (BsEnergyTargetEntity bsEnergyTarget : bsEnergyTargetEntities) { |
|
|
|
|
|
|
|
String key = originalYear + "-" + bsEnergyTarget.getMonth(); |
|
|
|
|
|
|
|
if (existOriginalMap.containsKey(key)) { |
|
|
|
|
|
|
|
bsEnergyTarget.setId(existOriginalMap.get(key)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
saves.addAll(bsEnergyTargetEntities); |
|
|
|
} |
|
|
|
} |
|
|
|
return R.status(bsEnergyTargetService.saveOrUpdateBatch(saves)); |
|
|
|
return R.status(bsEnergyTargetService.saveOrUpdateBatch(saves)); |
|
|
|
} |
|
|
|
} |
|
|
|
|