@ -30,6 +30,7 @@ import com.logpm.basicdata.feign.IBasicdataGoodsAreaClient;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient ;
import com.logpm.basicdata.vo.BasicdataGoodsAreaVO ;
import com.logpm.distribution.bean.Resp ;
import com.logpm.distribution.dto.DistributionParcelListDTO ;
import com.logpm.distribution.dto.app.StockupDTO ;
import com.logpm.distribution.dto.app.StockupZeroDTO ;
import com.logpm.distribution.entity.* ;
@ -162,6 +163,9 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
@Autowired
private IBasicdataGoodsAreaClient basicdataGoodsAreaClient ;
@Autowired
private IDistributionReservationZeroPackageService reservationZeroPackageService ;
@Override
public IPage < DistributionStockupVO > selectDistributionStockupPage ( IPage < DistributionStockupVO > page , DistributionStockupVO distributionStockup ) {
return page . setRecords ( baseMapper . selectDistributionStockupPage ( page , distributionStockup ) ) ;
@ -1878,11 +1882,16 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
R < String > roleIds = sysClient . getRoleIds ( tenantId , roleNames ) ;
R < List < User > > listR = userSearchClient . listByRole ( roleIds . getData ( ) ) ;
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient . getMyCurrentWarehouse ( ) ;
//有没有选择仓库信息
if ( ObjectUtils . isNotNull ( myCurrentWarehouse ) ) {
List < User > collect = listR . getData ( ) . stream ( ) . filter ( i - >
ObjectUtils . isNotNull ( i . getDeptId ( ) ) ? i . getDeptId ( ) . equals ( myCurrentWarehouse . getDepartment ( ) . toString ( ) ) : false
) . collect ( Collectors . toList ( ) ) ;
return collect ;
if ( ! listR . getData ( ) . isEmpty ( ) ) {
List < User > collect = listR . getData ( ) . stream ( ) . filter ( i - >
ObjectUtils . isNotNull ( i . getDeptId ( ) ) ? i . getDeptId ( ) . equals ( myCurrentWarehouse . getDepartment ( ) . toString ( ) ) : false
) . collect ( Collectors . toList ( ) ) ;
return collect ;
} else {
return null ;
}
} else {
return listR . getData ( ) ;
}
@ -1926,9 +1935,68 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
@Override
public R zeroStockUp ( StockupZeroDTO stockupDTO ) {
log . info ( "备货零担数据》》》" , stockupDTO ) ;
if ( stockupDTO . getList ( ) . isEmpty ( ) ) return R . fail ( "基础数据为空" ) ;
//有没有多个订单数据
if ( stockupDTO . getStockArticleId ( ) . contains ( "," ) ) {
stockupDTO . setStockArticleIdList ( stockupDTO . getStockArticleId ( ) . split ( "," ) ) ;
stockupDTO . setStockArticleId ( null ) ;
}
//把数据取出来
List < StockupZeroVO > zeroStockUpData = new ArrayList < > ( ) ; ;
if ( stockupDTO . getTypeService ( ) . equals ( "3" ) ) {
//自提
if ( ObjectUtils . isNull ( stockupDTO . getAllocationId ( ) ) ) {
//没有货位
//自提
zeroStockUpData = distributionStockupService . getZeroStockUpDataMeiSelf ( stockupDTO ) ;
} else {
//有
zeroStockUpData = distributionStockupService . getZeroStockUpDataYouSelf ( stockupDTO ) ;
}
} else {
//商 ,市
if ( ObjectUtils . isNull ( stockupDTO . getAllocationId ( ) ) ) {
//没有货位
zeroStockUpData = distributionStockupService . getZeroStockUpDataMei ( stockupDTO ) ;
} else {
//有
zeroStockUpData = distributionStockupService . getZeroStockUpDataYou ( stockupDTO ) ;
}
return null ;
}
List < StockupZeroVO > finalZeroStockUpData = zeroStockUpData ;
List < DistributionParcelListDTO > collect = stockupDTO . getList ( ) . stream ( ) . filter ( //可以
a - > {
return finalZeroStockUpData . stream ( ) . anyMatch ( q - > a . getStockArticleId ( ) . equals ( q . getStockArticleId ( ) ) & & a . getQuantity ( ) < = q . getQuantity ( ) ) ;
} ) . collect ( Collectors . toList ( ) ) ;
//添加备货信息
List < DistributionStockEntity > stockEntityList = new ArrayList < > ( ) ;
collect . forEach ( i - > {
DistributionStockEntity stockEntity = new DistributionStockEntity ( ) ;
stockEntity . setStockArticle ( i . getStockArticleId ( ) ) ;
stockEntity . setStockupId ( stockupDTO . getStockupId ( ) ) ;
stockEntity . setBillLadingId ( stockupDTO . getReservationId ( ) ) ;
stockEntity . setConditions ( "2" ) ;
stockEntity . setGoodsName ( i . getFirsts ( ) ) ;
stockEntity . setOutboundType ( "3" ) ;
stockEntity . setType ( 3 ) ;
stockEntityList . add ( stockEntity ) ;
//修改备货数量
DistributionReservationZeroPackageEntity reservationZeroPackageEntity = new DistributionReservationZeroPackageEntity ( ) ;
reservationZeroPackageEntity . setRealityQuantity ( i . getQuantity ( ) ) ;
reservationZeroPackageEntity . setId ( i . getId ( ) ) ;
reservationZeroPackageService . updateById ( reservationZeroPackageEntity ) ;
} ) ;
boolean b = distributionStockService . saveBatch ( stockEntityList ) ;
if ( b ) {
//修改备货状态
distributionAsyncService . stockZero ( stockupDTO ) ;
return R . success ( "备货成功!" ) ;
} else {
//
return R . fail ( 3004 , "修改失败!!" ) ;
}
}
/ * *
@ -1938,22 +2006,22 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
* /
@Override
public R zeroStockUpData ( StockupZeroDTO stockupDTO ) {
List < StockupZeroVO > list = new ArrayList < > ( ) ;
if ( ObjectUtils . isNull ( stockupDTO . getAllocationId ( ) ) ) {
//没有货位信息
//有没有多个订单数据
if ( stockupDTO . getOrderCode ( ) . contains ( "," ) ) {
stockupDTO . setOrderCode List ( stockupDTO . getOrderCode ( ) . split ( "," ) ) ;
stockupDTO . setOrderCode ( null ) ;
if ( stockupDTO . getStockArticleId ( ) . contains ( "," ) ) {
stockupDTO . setStockArticleId List ( stockupDTO . getStockArticleId ( ) . split ( "," ) ) ;
stockupDTO . setStockArticleId ( null ) ;
}
if ( stockupDTO . getTypeService ( ) . equals ( "3" ) ) {
//自提
List < StockupZeroVO > list = distributionStockupService . getZeroStockUpDataMeiSelf ( stockupDTO ) ;
list = distributionStockupService . getZeroStockUpDataMeiSelf ( stockupDTO ) ;
} else {
//商, 市
List < StockupZeroVO > list = distributionStockupService . getZeroStockUpDataMei ( stockupDTO ) ;
list = distributionStockupService . getZeroStockUpDataMei ( stockupDTO ) ;
}
return R . data ( list ) ;
} else {
//有货位信息
//有没有多个订单数据
@ -1963,17 +2031,14 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
}
if ( stockupDTO . getTypeService ( ) . equals ( "3" ) ) {
//自提
List < StockupZeroVO > list = distributionStockupService . getZeroStockUpDataYouSelf ( stockupDTO ) ;
list = distributionStockupService . getZeroStockUpDataYouSelf ( stockupDTO ) ;
} else {
//商,市
List < StockupZeroVO > list = distributionStockupService . getZeroStockUpDataYou ( stockupDTO ) ;
list = distributionStockupService . getZeroStockUpDataYou ( stockupDTO ) ;
}
return R . data ( list ) ;
}
return null ;
}
}