|
@@ -220,14 +220,29 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
boolean b = procedureTeams.stream().anyMatch(p -> totalIds.contains(p.getPlanProcedureId()));
|
|
|
rs.setHasAllocation(b?1:0);
|
|
|
AtomicBoolean allAllocation= new AtomicBoolean(true);
|
|
|
- totals.forEach(t->{
|
|
|
+ AtomicBoolean needSetRed = new AtomicBoolean(false);
|
|
|
+ for (PlanProcedureTotal t : totals) {
|
|
|
Optional<ProdProcedureTeam> team = procedureTeams.stream().filter(p -> p.getPlanProcedureId().equals(t.getId())).findFirst();
|
|
|
- if(!team.isPresent()){
|
|
|
+ if (!team.isPresent()) {
|
|
|
allAllocation.set(false);
|
|
|
}
|
|
|
- });
|
|
|
+ List<ProdProcedureTeam> targetProdProcedureTeams = procedureTeams.stream().filter(p -> p.getPlanProcedureId().equals(t.getId())).collect(Collectors.toList());
|
|
|
+ boolean match = targetProdProcedureTeams.stream().allMatch(i->i.getStatus()==2);
|
|
|
+ if ((t.getTotalProgress()!=null&&t.getTotalProgress() < 100)&&match) {
|
|
|
+ needSetRed.set(true);
|
|
|
+ }
|
|
|
+ }
|
|
|
rs.setHasAllocation(b?1:0);
|
|
|
- rs.setHasAllAllocation(allAllocation.get()?1:0);
|
|
|
+ if(allAllocation.get()){
|
|
|
+ rs.setColor("green");
|
|
|
+ if(needSetRed.get()){
|
|
|
+ rs.setColor("red");
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ if(b){
|
|
|
+ rs.setColor("blue");
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
if(planType==2){
|
|
|
totals.forEach(ps->{
|