@ -131,6 +131,8 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
//先查询出所有的暂存单
List < TrunklineAdvanceEntity > list = advanceService . findListByIds ( advanceIds ) ;
AdvancenceTotalNumberVO totalNumberVO = advanceDetailService . findTotalNumberByAdvanceIds ( advanceIds ) ;
if ( list . isEmpty ( ) ) {
log . warn ( "##############advanceToWaybill: 暂存单数据不存在 advanceIds={}" , advanceIds ) ;
return R . fail ( 405 , "暂存单数据不存在" ) ;
@ -138,7 +140,6 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
String dealerName = null ;
String dealerCode = null ;
String brand = null ;
Integer totalNum = 0 ;
for ( TrunklineAdvanceEntity advanceEntity : list ) {
if ( StringUtil . isBlank ( dealerName ) ) {
dealerName = advanceEntity . getDealerName ( ) ;
@ -147,8 +148,6 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
if ( StringUtil . isBlank ( brand ) ) {
brand = advanceEntity . getBrand ( ) ;
}
totalNum = totalNum + advanceEntity . getTotalNum ( ) ;
}
OpenOrderVO openOrderVO = new OpenOrderVO ( ) ;
//查询品牌 客户车次号 订单自编码
@ -169,7 +168,10 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
//发站仓-----目前登录人的仓库
openOrderVO . setDepartureWarehouseName ( basicdataWarehouseEntity . getName ( ) ) ;
openOrderVO . setDepartureWarehouseId ( warehouseId ) ;
openOrderVO . setTotalNum ( totalNum ) ;
openOrderVO . setTotalNum ( totalNumberVO . getTotalNum ( ) ) ;
openOrderVO . setTotalWeight ( totalNumberVO . getTotalWeight ( ) ) ;
openOrderVO . setTotalVolume ( totalNumberVO . getTotalVolume ( ) ) ;
//发货单位
Long shipperId = basicdataForwardingUnitClient . findForwardingUnitByWarehouseId ( warehouseId ) ;
if ( ! Objects . isNull ( shipperId ) ) {
@ -1834,6 +1836,13 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
log . warn ( "##################importStandardOuPai: 文件不存在" ) ;
return R . fail ( 405 , "文件不存在" ) ;
}
List < BasicMaterialEntity > materialEntities = basicMaterialClient . findAllList ( ) ;
//把materialEntities转化成以productCode和productName拼接为key的Map
Map < String , BasicMaterialEntity > materialEntityMap = materialEntities . stream ( ) . collect ( Collectors . toMap ( item - > item . getProductCode ( ) + "&&" + item . getName ( ) , item - > item ) ) ;
InputStream inputStream = file . getInputStream ( ) ;
List < ImportStandardOuPaiDTO > importStandardOuPaiDTOS = EasyExcel . read ( inputStream ) . head ( ImportStandardOuPaiDTO . class ) . sheet ( 0 ) . headRowNumber ( 1 ) . doReadSync ( ) ;
@ -2101,48 +2110,58 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
advanceDetailModel . setQuantity ( 1 ) ;
advanceDetailModel . setServiceNum ( advanceEntity . getServiceNum ( ) ) ;
advanceDetailModel . setPackageStatus ( "0" ) ;
String materialName = importStandardOuPaiDTO . getMaterialName ( ) ;
String materialCode = importStandardOuPaiDTO . getMaterialCode ( ) ;
String materialName = StringUtil . isNotBlank ( importStandardOuPaiDTO . getMaterialName ( ) ) ? importStandardOuPaiDTO . getMaterialName ( ) : "" ;
String materialCode = StringUtil . isNotBlank ( importStandardOuPaiDTO . getMaterialCode ( ) ) ? importStandardOuPaiDTO . getMaterialCode ( ) : "" ;
if ( StringUtil . isNotBlank ( materialCode ) & & StringUtil . isNotBlank ( materialName ) ) {
Long materialId = materialMap . get ( materialCode ) ;
if ( ! Objects . isNull ( materialId ) ) {
advanceDetailModel . setMaterialId ( materialId ) ;
advanceDetailModel . setMaterialCode ( materialCode ) ;
advanceDetailModel . setMaterialName ( materialName ) ;
} else {
BasicMaterialEntity basicMaterialEntity = basicMaterialClient . findEntityByCodeAndName ( materialCode , materialName ) ;
if ( Objects . isNull ( basicMaterialEntity ) ) {
basicMaterialEntity = new BasicMaterialEntity ( ) ;
basicMaterialEntity . setProductCode ( materialCode ) ;
basicMaterialEntity . setName ( materialName ) ;
BasicdataBrandEntity basicdataBrandEntity = basicdataBrandClient . findEntityByName ( brand ) ;
if ( Objects . isNull ( basicdataBrandEntity ) ) {
basicMaterialEntity . setBrandId ( "1713382405517201409" ) ;
} else {
basicMaterialEntity . setBrandId ( basicdataBrandEntity . getId ( ) + "" ) ;
}
basicMaterialEntity . setProperty ( "家配" ) ;
basicMaterialEntity . setSpecification ( "件" ) ;
basicMaterialEntity . setPackingSpecification ( "1件/箱" ) ;
basicMaterialEntity . setLogpmUnit ( "箱" ) ;
basicMaterialEntity . setSku ( materialCode ) ;
basicMaterialEntity . setPackageNum ( 1 ) ;
basicMaterialEntity . setHide ( 1 ) ;
Long aLong = basicMaterialClient . addMaterial ( basicMaterialEntity ) ;
basicMaterialEntity . setId ( aLong ) ;
materialMap . put ( materialCode , aLong ) ;
advanceDetailModel . setMaterialId ( aLong ) ;
BasicMaterialEntity basicMaterialEntity = materialEntityMap . get ( materialCode + "&&" + materialName ) ;
if ( ! Objects . isNull ( basicMaterialEntity ) ) {
advanceDetailModel . setMaterialId ( basicMaterialEntity . getId ( ) ) ;
advanceDetailModel . setMaterialCode ( materialCode ) ;
advanceDetailModel . setMaterialName ( materialName ) ;
} else {
materialMap . put ( materialCode , basicMaterialEntity . getId ( ) ) ;
advanceDetailModel . setMaterialId ( basicMaterialEntity . getId ( ) ) ;
advanceDetailModel . setMaterialCode ( basicMaterialEntity . getProductCode ( ) ) ;
advanceDetailModel . setMaterialName ( basicMaterialEntity . getName ( ) ) ;
}
}
advanceDetailModel . setWeight ( new BigDecimal ( basicMaterialEntity . getWeight ( ) ) ) ;
advanceDetailModel . setVolume ( new BigDecimal ( basicMaterialEntity . getVolume ( ) ) ) ;
}
// if (StringUtil.isNotBlank(materialCode) && StringUtil.isNotBlank(materialName)) {
// Long materialId = materialMap.get(materialCode);
// if(!Objects.isNull(materialId)){
// advanceDetailModel.setMaterialId(materialId);
// advanceDetailModel.setMaterialCode(materialCode);
// advanceDetailModel.setMaterialName(materialName);
// }else{
// BasicMaterialEntity basicMaterialEntity = basicMaterialClient.findEntityByCodeAndName(materialCode, materialName);
// if (Objects.isNull(basicMaterialEntity)) {
// basicMaterialEntity = new BasicMaterialEntity();
// basicMaterialEntity.setProductCode(materialCode);
// basicMaterialEntity.setName(materialName);
// BasicdataBrandEntity basicdataBrandEntity = basicdataBrandClient.findEntityByName(brand);
// if(Objects.isNull(basicdataBrandEntity)){
// basicMaterialEntity.setBrandId("1713382405517201409");
// }else{
// basicMaterialEntity.setBrandId(basicdataBrandEntity.getId()+"");
// }
// basicMaterialEntity.setProperty("家配");
// basicMaterialEntity.setSpecification("件");
// basicMaterialEntity.setPackingSpecification("1件/箱");
// basicMaterialEntity.setLogpmUnit("箱");
// basicMaterialEntity.setSku(materialCode);
// basicMaterialEntity.setPackageNum(1);
// basicMaterialEntity.setHide(1);
// Long aLong = basicMaterialClient.addMaterial(basicMaterialEntity);
// basicMaterialEntity.setId(aLong);
// materialMap.put(materialCode,aLong);
// advanceDetailModel.setMaterialId(aLong);
// advanceDetailModel.setMaterialCode(materialCode);
// advanceDetailModel.setMaterialName(materialName);
// }else{
// materialMap.put(materialCode,basicMaterialEntity.getId());
// advanceDetailModel.setMaterialId(basicMaterialEntity.getId());
// advanceDetailModel.setMaterialCode(basicMaterialEntity.getProductCode());
// advanceDetailModel.setMaterialName(basicMaterialEntity.getName());
// }
// }
// }
advanceDetailEntities . add ( advanceDetailModel ) ;
}
@ -2452,6 +2471,11 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
log . warn ( "##################batchOpenLabel: 文件不存在" ) ;
return R . fail ( 405 , "文件不存在" ) ;
}
List < BasicMaterialEntity > materialEntities = basicMaterialClient . findAllList ( ) ;
//把materialEntities转化成以productCode和productName拼接为key的Map
Map < String , BasicMaterialEntity > materialEntityMap = materialEntities . stream ( ) . collect ( Collectors . toMap ( item - > item . getProductCode ( ) + "&&" + item . getName ( ) , item - > item ) ) ;
InputStream inputStream = file . getInputStream ( ) ;
List < ImportOrderNoPackageExcelDTO > importOrderNoPackageExcelDTOS = EasyExcel . read ( inputStream ) . head ( ImportOrderNoPackageExcelDTO . class ) . sheet ( 0 ) . headRowNumber ( 2 ) . doReadSync ( ) ;
@ -2606,6 +2630,19 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
}
advanceDetailModel . setPackageStatus ( "0" ) ;
String materialName = StringUtil . isNotBlank ( importOrderNoPackageExcelDTO . getMaterialName ( ) ) ? importOrderNoPackageExcelDTO . getMaterialName ( ) : "" ;
String materialCode = StringUtil . isNotBlank ( importOrderNoPackageExcelDTO . getMaterialCode ( ) ) ? importOrderNoPackageExcelDTO . getMaterialCode ( ) : "" ;
BasicMaterialEntity basicMaterialEntity = materialEntityMap . get ( materialCode + "&&" + materialName ) ;
if ( ! Objects . isNull ( basicMaterialEntity ) ) {
advanceDetailModel . setMaterialId ( basicMaterialEntity . getId ( ) ) ;
advanceDetailModel . setMaterialCode ( materialCode ) ;
advanceDetailModel . setMaterialName ( materialName ) ;
advanceDetailModel . setWeight ( new BigDecimal ( basicMaterialEntity . getWeight ( ) ) ) ;
advanceDetailModel . setVolume ( new BigDecimal ( basicMaterialEntity . getVolume ( ) ) ) ;
}
List < String > orderPackageCodes = basicdataCodeClient . getBatchPackageCodeByType ( warehouseCode , orderCode , totalNum ) ;
orderPackageCodes . forEach ( orderPackageCode - > {
TrunklineAdvanceDetailEntity advanceDetailEntity = new TrunklineAdvanceDetailEntity ( ) ;