| | |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Hashtable; |
| | | import java.util.List; |
| | | import java.util.Optional; |
| | | |
| | |
| | | public List<ApsPlatePlan> selectPlateRedundantOrderList(ApsPlatePlan apsPlatePlan) { |
| | | return apsPlatePlanMapper.selectPlateRedundantOrderList(apsPlatePlan); |
| | | } |
| | | |
| | | @Override |
| | | public ApsPlatePlan selectUnMatchPlateSubPlan(String plant, String itemNumber, Hashtable<String, List<ApsPlatePlan>> subPlans) { |
| | | if(subPlans.containsKey(itemNumber)) { |
| | | List<ApsPlatePlan> subPlanList = subPlans.get(itemNumber); |
| | | Optional<ApsPlatePlan> firstPlant = subPlanList.stream().filter(x -> x.getUnmatchedQuantity().compareTo(BigDecimal.ZERO) > 0).findFirst(); |
| | | return firstPlant.orElse(null); |
| | | }else { |
| | | List<ApsPlatePlan> plans = apsPlatePlanMapper.selectUnMatchPlateSubPlanList(plant, itemNumber); |
| | | if (!plans.isEmpty()) { |
| | | subPlans.put(itemNumber, plans); |
| | | return selectUnMatchPlateSubPlan(plant, itemNumber, subPlans); |
| | | } else { |
| | | return null; |
| | | } |
| | | } |
| | | } |
| | | } |