|
@@ -430,10 +430,7 @@ public class WmScorePackageStatusServiceImpl extends ServiceImpl<WmScorePackageS
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Map<String, Integer> approvalStatusBatch(WmScorePackageStatusBatch statusBatch) {
|
|
|
- // 封装结果实体
|
|
|
- Map<String, Integer> result = new HashMap<>(2);
|
|
|
- result.put("operation", 0);
|
|
|
- result.put("remain", 0);
|
|
|
+
|
|
|
|
|
|
// 获取批量操作id集合
|
|
|
List<Integer> idList =
|
|
@@ -442,21 +439,34 @@ public class WmScorePackageStatusServiceImpl extends ServiceImpl<WmScorePackageS
|
|
|
.map(Integer::parseInt)
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
- for (Integer id : idList) {
|
|
|
- oneByOne(id, statusBatch.getStatus(), result);
|
|
|
+ Map<String, List<WmScorePackageStatus>> collect = this.listByIds(idList).stream().collect(Collectors.groupingBy(WmScorePackageStatus::getPackageId));
|
|
|
+
|
|
|
+ int operation = 0;
|
|
|
+ int remain = 0;
|
|
|
+ for (Map.Entry<String, List<WmScorePackageStatus>> entity : collect.entrySet()){
|
|
|
+
|
|
|
+ List<WmScorePackageStatus> val = entity.getValue();
|
|
|
+
|
|
|
+ if (val.size() > 1){
|
|
|
+ remain++;
|
|
|
+ } else {
|
|
|
+ oneByOne(val.get(0), statusBatch.getStatus());
|
|
|
+ operation++;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
+ // 封装结果实体
|
|
|
+ Map<String, Integer> result = new HashMap<>(2);
|
|
|
+ result.put("operation", operation);
|
|
|
+ result.put("remain", remain);
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
- private void oneByOne(Integer statusId, WmScorePackageStatusBatch.ApprovalStatus approvalStatus, Map<String, Integer> result) {
|
|
|
+ private Integer oneByOne(WmScorePackageStatus status, WmScorePackageStatusBatch.ApprovalStatus approvalStatus) {
|
|
|
|
|
|
- // 获取结果数
|
|
|
- int operation = result.get("operation");
|
|
|
- int remain = result.get("remain");
|
|
|
-
|
|
|
- // 查询领包记录
|
|
|
- WmScorePackageStatus status = this.getById(statusId);
|
|
|
+ int res = 0;
|
|
|
|
|
|
// 获取积分包
|
|
|
WmScorePackage wmScorePackage = wmScorePackageMapper.selectById(status.getPackageId());
|
|
@@ -505,21 +515,16 @@ public class WmScorePackageStatusServiceImpl extends ServiceImpl<WmScorePackageS
|
|
|
wmScorePackage.setReceiveDate(LocalDateTime.now());
|
|
|
wmScorePackage.setIsReceive("1");//不允许接单
|
|
|
wmScorePackageMapper.updateById(wmScorePackage);
|
|
|
- operation += 1;
|
|
|
- } else {
|
|
|
- remain += 1;
|
|
|
}
|
|
|
-
|
|
|
break;
|
|
|
case REJECTED:
|
|
|
status.setStatus("3");
|
|
|
status.setTaskAddFlag("0");//不可以新增任务
|
|
|
status.setUserId(null);
|
|
|
this.updateById(status);
|
|
|
- operation += 1;
|
|
|
break;
|
|
|
default:
|
|
|
- remain += 1;
|
|
|
+ res = -1;
|
|
|
|
|
|
}
|
|
|
|
|
@@ -557,10 +562,8 @@ public class WmScorePackageStatusServiceImpl extends ServiceImpl<WmScorePackageS
|
|
|
|
|
|
wmScorePackageMapper.updateById(wmScorePackage);
|
|
|
|
|
|
-
|
|
|
- result.put("operation", operation);
|
|
|
- result.put("remain", remain);
|
|
|
-
|
|
|
+ return res;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
}
|