|
|
|
@ -16,17 +16,21 @@
|
|
|
|
|
*/ |
|
|
|
|
package com.logpm.distribution.service.impl; |
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
|
import com.logpm.distribution.dto.DistributionStockDTO; |
|
|
|
|
import com.logpm.distribution.entity.*; |
|
|
|
|
import com.logpm.distribution.excel.DistributionStockExcel; |
|
|
|
|
import com.logpm.distribution.mapper.DistributionStockMapper; |
|
|
|
|
import com.logpm.distribution.mapper.DistributionStockupMapper; |
|
|
|
|
import com.logpm.distribution.service.*; |
|
|
|
|
import com.logpm.distribution.vo.DistributionStockVO; |
|
|
|
|
import com.logpm.distribution.vo.DistributionStockupVO; |
|
|
|
|
import lombok.extern.log4j.Log4j2; |
|
|
|
|
import org.springblade.common.constant.order.OrderStockupStatusConstant; |
|
|
|
|
import org.springblade.common.constant.stockup.StockupStatusConstant; |
|
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
@ -35,7 +39,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.List; |
|
|
|
|
import java.util.Map; |
|
|
|
|
import java.util.Objects; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ -54,6 +57,12 @@ public class DistributionStockServiceImpl extends BaseServiceImpl<DistributionSt
|
|
|
|
|
@Autowired |
|
|
|
|
private IDistributionReservationService distributionReservationService; |
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
private DistributionStockupMapper distributionStockupMapper; |
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
private IDistributionDeliveryListService distributionDeliveryListService; |
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
private IDistributionStockListService distributionStockListService; |
|
|
|
|
@Autowired |
|
|
|
@ -132,6 +141,10 @@ public class DistributionStockServiceImpl extends BaseServiceImpl<DistributionSt
|
|
|
|
|
log.info("#############repairPackageScanInfo: 补全包件扫码信息完成 stockListId={}",stockListId); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 系统添加备货 |
|
|
|
|
* |
|
|
|
@ -140,15 +153,25 @@ public class DistributionStockServiceImpl extends BaseServiceImpl<DistributionSt
|
|
|
|
|
*/ |
|
|
|
|
@Override |
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
|
public Boolean addStockDetail(Map<String, Object> distributionStocks) { |
|
|
|
|
DistributionStockDTO distributionStock1 = JSONObject.parseObject(JSONObject.toJSONString(distributionStocks), DistributionStockDTO.class); |
|
|
|
|
List<String> ids = distributionStock1.getIds(); |
|
|
|
|
public Boolean addStockDetail(DistributionStockDTO distributionStocks) { |
|
|
|
|
// DistributionStockDTO distributionStock1 = JSONObject.parseObject(JSONObject.toJSONString(distributionStocks), DistributionStockDTO.class);
|
|
|
|
|
List<String> ids = distributionStocks.getIds(); |
|
|
|
|
List<DistributionStockEntity> list = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ids.forEach( i ->{ |
|
|
|
|
DistributionStockEntity stockEntity = new DistributionStockEntity(); |
|
|
|
|
stockEntity.setParcelListId(Long.parseLong(i)); // 包件id
|
|
|
|
|
DistributionParcelListEntity byId = distributionParcelListService.getById(i); |
|
|
|
|
DistributionStockArticleEntity byId1 = distributionStockArticleService.getById(byId.getStockArticleId()); |
|
|
|
|
//查询包件数量
|
|
|
|
|
getUpdateOrderState(Long.parseLong(i),1 ); |
|
|
|
|
List<DistributionStockVO> stockVOList = baseMapper.selectReservationDelivery(distributionStocks.getStockupId()); |
|
|
|
|
if (stockVOList.size() > 0) { |
|
|
|
|
stockEntity.setReservationId(stockVOList.get(0).getReservationId()); |
|
|
|
|
stockEntity.setDeliveryListId(stockVOList.get(0).getDeliveryListId()); |
|
|
|
|
stockEntity.setDeliveryListCode(stockVOList.get(0).getDeliveryListCode()); |
|
|
|
|
} |
|
|
|
|
// DistributionStockArticleEntity byId1 = distributionStockArticleService.getById(byId.getStockArticleId());
|
|
|
|
|
stockEntity.setGoodsAllocation(byId.getGoodsAllocation()); // 货位
|
|
|
|
|
stockEntity.setMaterialId(byId.getMaterialId()); // 物料
|
|
|
|
@ -159,7 +182,7 @@ public class DistributionStockServiceImpl extends BaseServiceImpl<DistributionSt
|
|
|
|
|
stockEntity.setGoodsName(byId.getMaterialName()); //货物名称
|
|
|
|
|
stockEntity.setUnit(byId.getMaterialUnit()); //单位
|
|
|
|
|
stockEntity.setOrderSelfNumbering(byId.getOrderCode()); //自编码
|
|
|
|
|
stockEntity.setStockupArea(distributionStock1.getStockupArea()); //自编码
|
|
|
|
|
stockEntity.setStockupArea(distributionStocks.getStockupArea()); //自编码
|
|
|
|
|
stockEntity.setType(1); |
|
|
|
|
stockEntity.setOutboundType(byId1.getTypeService());//类型
|
|
|
|
|
list.add(stockEntity); |
|
|
|
@ -168,8 +191,47 @@ public class DistributionStockServiceImpl extends BaseServiceImpl<DistributionSt
|
|
|
|
|
parcelListEntity.setId(Long.parseLong(i)); |
|
|
|
|
parcelListEntity.setOrderPackageStockupStatus(StockupStatusConstant.yibeihuo.getValue()); |
|
|
|
|
distributionParcelListService.updateById(parcelListEntity); |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
//修改备货状态
|
|
|
|
|
getUpdateOrderState(Long.parseLong(distributionStocks.getStockupId()),2 ); |
|
|
|
|
return this.saveBatch(list); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void getUpdateOrderState(Long pageId,int type) { |
|
|
|
|
switch (type){ |
|
|
|
|
case 1: //订单
|
|
|
|
|
DistributionStockVO distributionStockVO = baseMapper.selectParcelList(pageId); |
|
|
|
|
if(ObjectUtils.isNotNull(distributionStockVO.getScanned())){ |
|
|
|
|
if(distributionStockVO.getScanned() == 0){ |
|
|
|
|
//修改
|
|
|
|
|
DistributionStockArticleEntity distributionStockArticle = new DistributionStockArticleEntity(); |
|
|
|
|
distributionStockArticle.setId(distributionStockVO.getStockArticleId()); |
|
|
|
|
distributionStockArticle.setStockupStatus(OrderStockupStatusConstant.yibeihu.getValue()); |
|
|
|
|
distributionStockArticleService.updateById(distributionStockArticle); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case 2: //备货
|
|
|
|
|
DistributionStockVO distributionStockVO1 = baseMapper.selectStockupInfo(pageId); |
|
|
|
|
if(ObjectUtils.isNotNull(distributionStockVO1.getScanned()) && distributionStockVO1.getScanned() == 0){ |
|
|
|
|
//修改备货任务
|
|
|
|
|
DistributionStockupEntity distributionStockupEntity = new DistributionStockupEntity(); |
|
|
|
|
distributionStockupEntity.setId(pageId); |
|
|
|
|
distributionStockupEntity.setStockupStatus(StockupStatusConstant.yibeihuo.getValue()); |
|
|
|
|
distributionStockupMapper.updateById(distributionStockupEntity); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Integer selectCount(Long id) { |
|
|
|
|
|
|
|
|
|
return baseMapper.selectCount(Wrappers.<DistributionStockEntity>query().lambda().eq(DistributionStockEntity::getStockArticle,id)).intValue(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|