|
|
|
@ -1495,9 +1495,11 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper, |
|
|
|
for (Map.Entry<String, List<StatementVO>> listEntry : oemAndStatementMap.entrySet()) { |
|
|
|
for (Map.Entry<String, List<StatementVO>> listEntry : oemAndStatementMap.entrySet()) { |
|
|
|
//外协厂商下全部需要结算的结算单
|
|
|
|
//外协厂商下全部需要结算的结算单
|
|
|
|
List<StatementVO> statementVOList = listEntry.getValue(); |
|
|
|
List<StatementVO> statementVOList = listEntry.getValue(); |
|
|
|
|
|
|
|
Date minPutStoreTime = statementVOList.stream().map(StatementVO::getPutStoreTime).min(Comparator.naturalOrder()).orElse(null); |
|
|
|
|
|
|
|
Date maxPutStoreTime = statementVOList.stream().map(StatementVO::getPutStoreTime).max(Comparator.naturalOrder()).orElse(null); |
|
|
|
//2.以外协名称查出的全部报价单
|
|
|
|
//2.以外协名称查出的全部报价单
|
|
|
|
String oemName = listEntry.getKey(); |
|
|
|
String oemName = listEntry.getKey(); |
|
|
|
List<PriceSheetVO> priceSheetAllList = getPriceSheetsWithCondition(oemName); |
|
|
|
List<PriceSheetVO> priceSheetAllList = getPriceSheetsWithCondition(oemName, minPutStoreTime, maxPutStoreTime); |
|
|
|
if (priceSheetAllList.isEmpty()) { |
|
|
|
if (priceSheetAllList.isEmpty()) { |
|
|
|
//【结算异常】
|
|
|
|
//【结算异常】
|
|
|
|
statementVOList.forEach(statementVO -> { |
|
|
|
statementVOList.forEach(statementVO -> { |
|
|
|
@ -1562,12 +1564,15 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper, |
|
|
|
* @param oemName |
|
|
|
* @param oemName |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
private List<PriceSheetVO> getPriceSheetsWithCondition(String oemName) { |
|
|
|
private List<PriceSheetVO> getPriceSheetsWithCondition(String oemName, Date minPutStoreTime, Date maxPutStoreTime) { |
|
|
|
PriceSheetQuery query = new PriceSheetQuery(); |
|
|
|
PriceSheetQuery query = new PriceSheetQuery(); |
|
|
|
query.setOcName(oemName); |
|
|
|
query.setOcName(oemName); |
|
|
|
query.setValidflags(Arrays.asList("有效", "无效")); |
|
|
|
if (maxPutStoreTime != null) { |
|
|
|
query.setPapertype("外协定价"); |
|
|
|
query.setInDateStart(maxPutStoreTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate()); |
|
|
|
query.setPricetype("工序协作"); |
|
|
|
} |
|
|
|
|
|
|
|
if (minPutStoreTime != null) { |
|
|
|
|
|
|
|
query.setInDateEnd(minPutStoreTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate()); |
|
|
|
|
|
|
|
} |
|
|
|
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query, new Query() {{ |
|
|
|
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query, new Query() {{ |
|
|
|
setSize(99999); |
|
|
|
setSize(99999); |
|
|
|
}}); |
|
|
|
}}); |
|
|
|
|