提交 9dcf9feb authored 作者: zhoushaopan's avatar zhoushaopan

fix(维修模块): 新增billvo中一个业务状态的字段

新增billvo中一个业务状态的字段
上级 df0a9be9
...@@ -2923,6 +2923,12 @@ public class RepairController { ...@@ -2923,6 +2923,12 @@ public class RepairController {
return ResponseEntity.ok("撤回成功"); return ResponseEntity.ok("撤回成功");
} }
@ApiOperation(value = "查询装备是否可以被清退")
@PostMapping("/getClearTaskVo")
public Map<Integer, ClearTaskVo> getClearTaskVo(@RequestBody List<Integer> deviceIds){
return repairDetailService.getClearTaskVo(deviceIds);
}
private List<RepairDetail> sortMethod(List<CustomOrder> orders, List<RepairDetail> repairDetails2, List<RepairDetail> repairDetails1){ private List<RepairDetail> sortMethod(List<CustomOrder> orders, List<RepairDetail> repairDetails2, List<RepairDetail> repairDetails1){
List<String> list = orders.stream().map(CustomOrder::getDirection).collect(Collectors.toList()); List<String> list = orders.stream().map(CustomOrder::getDirection).collect(Collectors.toList());
List<RepairDetail> finalList = new ArrayList<>(); List<RepairDetail> finalList = new ArrayList<>();
......
...@@ -140,117 +140,121 @@ public class RepairDetailServiceImpl implements RepairDetailService { ...@@ -140,117 +140,121 @@ public class RepairDetailServiceImpl implements RepairDetailService {
}); });
} }
// @Override
// public Map<Integer, ClearTaskVo> getClearTaskVo(List<Integer> deviceIds) {
// List<ClearTaskVo> clearTaskVos = new ArrayList<>();
// Map<Integer,ClearTaskVo> map1 = new HashMap<>();
// //通过装备id查询出账单id (送修单repairBill)
// List<RepairDetail> repairDetails = deviceRepairDetailDao.findAllByDeviceIdIn(deviceIds);
// //取出装备id相同的最新时间
// Map<Integer,RepairDetail> map =new HashMap<>();
// repairDetails.sort(Comparator.comparing(RepairDetail::getCreateTime));
// repairDetails.forEach(
// repairDetail -> {
// if (!map.containsKey(repairDetail.getDeviceId())){
// map.put(repairDetail.getDeviceId(),repairDetail);
// }
// }
// );
// List<BillVo> billVos = new ArrayList<>();
// map.forEach(
// (k,v)->{
// BillVo billVo = new BillVo();
// billVo.setRepairBillId(v.getDeviceRepairBillId());
// billVo.setDevicesId(v.getDeviceId());
// billVo.setRepairDetailId(v.getId());
// billVos.add(billVo);
// //根据装备id查询装备
// DeviceLibrary library = deviceLibraryService.getOne(v.getDeviceId());
// DeviceLibrary deviceLibrary = library.setConfigName();
// BeanUtils.copyProperties(deviceLibrary,billVo);
// //通过账单id和businessType查询task对象
// //过滤出状态是 StatusEnum.REVOKEALLOTTASK.id
// List<Task> taskList = taskService.findByBillIdAndBusinessType(v.getDeviceRepairBillId(), BusinessEnum.REPAIR.id);
// List<Task> tasks = taskList.stream().filter(task -> task.getParentTaskId() == null).collect(Collectors.toList());
// ClearTaskVo clearTaskVo = new ClearTaskVo();
// clearTaskVo.setTaskId(tasks.get(0).getId());
// clearTaskVo.setBusinessType(BusinessEnum.REPAIR.id);
// clearTaskVo.setBillVos(billVos);
// clearTaskVos.add(clearTaskVo);
// }
// );
// clearTaskVos.forEach(
// clearTaskVo -> {
// if (!map1.containsKey(clearTaskVo.getTaskId())){
// map1.put(clearTaskVo.getTaskId(),clearTaskVo);
// }else {
// ClearTaskVo clearTaskVo1 = map1.get(clearTaskVo.getTaskId());
// List<BillVo> billVos1 = clearTaskVo1.getBillVos();
// billVos1.addAll(clearTaskVo.getBillVos());
// clearTaskVo1.setBillVos(billVos1);
// map1.put(clearTaskVo.getTaskId(),clearTaskVo1);
// }
// }
// );
// return map1;
// }
@Override @Override
public Map<Integer, ClearTaskVo> getClearTaskVo(List<Integer> deviceIds) { public Map<Integer, ClearTaskVo> getClearTaskVo(List<Integer> deviceIds) {
List<ClearTaskVo> clearTaskVos = new ArrayList<>(); List<ClearTaskVo> clearTaskVos = new ArrayList<>();
Map<Integer,ClearTaskVo> map1 = new HashMap<>(); Map<Integer,ClearTaskVo> map1 = new HashMap<>();
//通过装备id查询出账单id (送修单repairBill) //通过装备id查询出账单id (送修单repairBill)
ClearRepairVo clearRepairVo = underRepair(deviceIds); List<RepairDetail> repairDetails = deviceRepairDetailDao.findAllByDeviceIdIn(deviceIds);
List<RepairDetail> endRepairList = clearRepairVo.getEndRepairList();
//取出装备id相同的最新时间 //取出装备id相同的最新时间
Map<Integer, RepairDetail> map = new HashMap<>(); Map<Integer,RepairDetail> map =new HashMap<>();
endRepairList.forEach( repairDetails.sort(Comparator.comparing(RepairDetail::getCreateTime));
repairDetails.forEach(
repairDetail -> { repairDetail -> {
if (!map.containsKey(repairDetail.getDeviceId())) { if (!map.containsKey(repairDetail.getDeviceId())){
map.put(repairDetail.getDeviceId(), repairDetail); map.put(repairDetail.getDeviceId(),repairDetail);
} }
} }
); );
List<BillVo> billVos = new ArrayList<>(); List<BillVo> billVos = new ArrayList<>();
map.forEach( map.forEach(
(k, v) -> { (k,v)->{
BillVo billVo = new BillVo(); BillVo billVo = new BillVo();
billVo.setRepairBillId(v.getDeviceRepairBillId()); billVo.setRepairBillId(v.getDeviceRepairBillId());
billVo.setDevicesId(v.getDeviceId()); billVo.setDevicesId(v.getDeviceId());
billVo.setRepairDetailId(v.getId()); billVo.setRepairDetailId(v.getId());
billVos.add(billVo);
//根据装备id查询装备 //根据装备id查询装备
DeviceLibrary library = deviceLibraryService.getOne(v.getDeviceId()); DeviceLibrary library = deviceLibraryService.getOne(v.getDeviceId());
DeviceLibrary deviceLibrary = library.setConfigName(); DeviceLibrary deviceLibrary = library.setConfigName();
BeanUtils.copyProperties(deviceLibrary, billVo); BeanUtils.copyProperties(deviceLibrary,billVo);
//通过账单id和businessType查询task对象 //通过账单id和businessType查询task对象
//过滤出状态是 StatusEnum.REVOKEALLOTTASK.id //过滤出状态是 StatusEnum.REVOKEALLOTTASK.id
List<Task> taskList = taskService.findByBillIdAndBusinessType(v.getDeviceRepairBillId(), BusinessEnum.REPAIR.id); List<Task> taskList = taskService.findByBillIdAndBusinessType(v.getDeviceRepairBillId(), BusinessEnum.REPAIR.id);
List<Task> tasks = taskList.stream().filter(task -> task.getParentTaskId() == null).collect(Collectors.toList()); List<Task> tasks = taskList.stream().filter(task -> task.getParentTaskId() == null).collect(Collectors.toList());
ClearTaskVo clearTaskVo = new ClearTaskVo(); ClearTaskVo clearTaskVo = new ClearTaskVo();
clearTaskVo.setTaskId(tasks.get(0).getId()); clearTaskVo.setTaskId(tasks.get(0).getId());
clearTaskVo.setBusinessType(BusinessEnum.REPAIR.id); billVo.setBillStatus(tasks.get(0).getBillStatus());
billVos.add(billVo);
clearTaskVo.setBillVos(billVos); clearTaskVo.setBillVos(billVos);
clearTaskVos.add(clearTaskVo); clearTaskVos.add(clearTaskVo);
} }
); );
clearTaskVos.forEach( clearTaskVos.forEach(
clearTaskVo -> { clearTaskVo -> {
if (!map1.containsKey(clearTaskVo.getTaskId())) { if (!map1.containsKey(clearTaskVo.getTaskId())){
map1.put(clearTaskVo.getTaskId(), clearTaskVo); map1.put(clearTaskVo.getTaskId(),clearTaskVo);
} else { }else {
ClearTaskVo clearTaskVo1 = map1.get(clearTaskVo.getTaskId()); ClearTaskVo clearTaskVo1 = map1.get(clearTaskVo.getTaskId());
List<BillVo> billVos1 = clearTaskVo1.getBillVos(); List<BillVo> billVos1 = clearTaskVo1.getBillVos();
billVos1.addAll(clearTaskVo.getBillVos()); billVos1.addAll(clearTaskVo.getBillVos());
clearTaskVo1.setBillVos(billVos1); clearTaskVo1.setBillVos(billVos1);
map1.put(clearTaskVo.getTaskId(), clearTaskVo1); map1.put(clearTaskVo.getTaskId(),clearTaskVo1);
} }
} }
); );
return map1; return map1;
} }
// @Override
// public Map<Integer, ClearTaskVo> getClearTaskVo(List<Integer> deviceIds) {
// List<ClearTaskVo> clearTaskVos = new ArrayList<>();
// Map<Integer,ClearTaskVo> map1 = new HashMap<>();
// //通过装备id查询出账单id (送修单repairBill)
// ClearRepairVo clearRepairVo = underRepair(deviceIds);
// List<RepairDetail> endRepairList = clearRepairVo.getEndRepairList();
// if (endRepairList.size()>0){
// //取出装备id相同的最新时间
// Map<Integer, RepairDetail> map = new HashMap<>();
// endRepairList.forEach(
// repairDetail -> {
// if (!map.containsKey(repairDetail.getDeviceId())) {
// map.put(repairDetail.getDeviceId(), repairDetail);
// }
// }
// );
// List<BillVo> billVos = new ArrayList<>();
// map.forEach(
// (k, v) -> {
// BillVo billVo = new BillVo();
// billVo.setRepairBillId(v.getDeviceRepairBillId());
// billVo.setDevicesId(v.getDeviceId());
// billVo.setRepairDetailId(v.getId());
// //根据装备id查询装备
// DeviceLibrary library = deviceLibraryService.getOne(v.getDeviceId());
// DeviceLibrary deviceLibrary = library.setConfigName();
// BeanUtils.copyProperties(deviceLibrary, billVo);
// //通过账单id和businessType查询task对象
// //过滤出状态是 StatusEnum.REVOKEALLOTTASK.id
// List<Task> taskList = taskService.findByBillIdAndBusinessType(v.getDeviceRepairBillId(), BusinessEnum.REPAIR.id);
// List<Task> tasks = taskList.stream().filter(task -> task.getParentTaskId() == null).collect(Collectors.toList());
// ClearTaskVo clearTaskVo = new ClearTaskVo();
// clearTaskVo.setTaskId(tasks.get(0).getId());
// clearTaskVo.setBusinessType(BusinessEnum.REPAIR.id);
// billVo.setBillStatus(tasks.get(0).getBillStatus());
// billVos.add(billVo);
// clearTaskVo.setBillVos(billVos);
// clearTaskVos.add(clearTaskVo);
// }
// );
// clearTaskVos.forEach(
// clearTaskVo -> {
// if (!map1.containsKey(clearTaskVo.getTaskId())) {
// map1.put(clearTaskVo.getTaskId(), clearTaskVo);
// } else {
// ClearTaskVo clearTaskVo1 = map1.get(clearTaskVo.getTaskId());
// List<BillVo> billVos1 = clearTaskVo1.getBillVos();
// billVos1.addAll(clearTaskVo.getBillVos());
// clearTaskVo1.setBillVos(billVos1);
// map1.put(clearTaskVo.getTaskId(), clearTaskVo1);
// }
// }
// );
// return map1;
// }else {
// return null;
// }
// }
@Override @Override
public void setDevicesOwnUnit(List<BillVo> billVos) { public void setDevicesOwnUnit(List<BillVo> billVos) {
//待维修: //待维修:
......
...@@ -37,4 +37,6 @@ public class BillVo { ...@@ -37,4 +37,6 @@ public class BillVo {
@ApiModelProperty(value = "可见范围") @ApiModelProperty(value = "可见范围")
private String invisibleRangeName; private String invisibleRangeName;
@ApiModelProperty(value = "业务状态")
private Integer billStatus;
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论