|
|
|
@ -11,6 +11,8 @@ import org.springblade.erpdata.feign.IErpDataWmsClient; |
|
|
|
import org.springblade.erpdata.pojo.vo.StGoodsExtStatusVO; |
|
|
|
import org.springblade.erpdata.pojo.vo.StGoodsExtStatusVO; |
|
|
|
import org.springblade.wms.excel.StGoodsExtExcel; |
|
|
|
import org.springblade.wms.excel.StGoodsExtExcel; |
|
|
|
import org.springblade.wms.mapper.StGoodsExtMapper; |
|
|
|
import org.springblade.wms.mapper.StGoodsExtMapper; |
|
|
|
|
|
|
|
import org.springblade.wms.mapper.StGoodsMapper; |
|
|
|
|
|
|
|
import org.springblade.wms.pojo.entity.StGoods; |
|
|
|
import org.springblade.wms.pojo.entity.StGoodsExt; |
|
|
|
import org.springblade.wms.pojo.entity.StGoodsExt; |
|
|
|
import org.springblade.wms.pojo.vo.StGoodsExtVO; |
|
|
|
import org.springblade.wms.pojo.vo.StGoodsExtVO; |
|
|
|
import org.springblade.wms.service.IStGoodsExtService; |
|
|
|
import org.springblade.wms.service.IStGoodsExtService; |
|
|
|
@ -18,6 +20,8 @@ import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
|
|
|
|
import java.util.List; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
import java.util.Objects; |
|
|
|
|
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* @version 1.0 |
|
|
|
* @version 1.0 |
|
|
|
@ -31,6 +35,8 @@ import java.util.Map; |
|
|
|
@Service |
|
|
|
@Service |
|
|
|
public class StGoodsExtServiceImpl extends BaseServiceImpl<StGoodsExtMapper, StGoodsExt> implements IStGoodsExtService { |
|
|
|
public class StGoodsExtServiceImpl extends BaseServiceImpl<StGoodsExtMapper, StGoodsExt> implements IStGoodsExtService { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Resource |
|
|
|
|
|
|
|
private StGoodsMapper stGoodsMapper; |
|
|
|
@Resource |
|
|
|
@Resource |
|
|
|
private IErpDataWmsClient erpDataWmsClient; |
|
|
|
private IErpDataWmsClient erpDataWmsClient; |
|
|
|
|
|
|
|
|
|
|
|
@ -70,23 +76,36 @@ public class StGoodsExtServiceImpl extends BaseServiceImpl<StGoodsExtMapper, StG |
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
try { |
|
|
|
// 1. 调用你的 Mapper 方法,查询所有商品计算后的状态
|
|
|
|
// 1. 调用你的 Mapper 方法,查询所有商品计算后的状态
|
|
|
|
List<StGoodsExtStatusVO> statusList = erpDataWmsClient.getGoodsExtStatus().getData(); |
|
|
|
QueryWrapper<StGoodsExt> queryWrapper = new QueryWrapper<>(); |
|
|
|
|
|
|
|
queryWrapper.eq("is_deleted", 0); |
|
|
|
|
|
|
|
List<StGoodsExt> list = baseMapper.selectList(queryWrapper); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<Long> goodsIds = list.stream() |
|
|
|
|
|
|
|
.map(StGoodsExt::getGoodsId) |
|
|
|
|
|
|
|
.filter(Objects::nonNull) |
|
|
|
|
|
|
|
.toList(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Map<Long, String> goodsIdToCodeMap = stGoodsMapper.selectBatchIds(goodsIds) |
|
|
|
|
|
|
|
.stream() |
|
|
|
|
|
|
|
.collect(Collectors.toMap(StGoods::getId, StGoods::getGoodsCode)); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (StGoodsExt ext : list) { |
|
|
|
|
|
|
|
Long goodsId = ext.getGoodsId(); |
|
|
|
|
|
|
|
String goodsCode = goodsIdToCodeMap.get(goodsId); |
|
|
|
|
|
|
|
|
|
|
|
// 2. 遍历结果,更新到 st_goods_ext 表
|
|
|
|
StGoodsExtStatusVO vo = erpDataWmsClient.getGoodsExtStatus(goodsCode).getData(); |
|
|
|
for (StGoodsExtStatusVO vo : statusList) { |
|
|
|
StGoodsExt goodsExt = baseMapper.getGoodsExt(vo.getInvqty1j(),vo.getPlanqty(),goodsId); |
|
|
|
StGoodsExt ext = baseMapper.selectById(vo.getId()); |
|
|
|
|
|
|
|
ext.setGoodsId(vo.getGoodsId()); |
|
|
|
|
|
|
|
ext.setFirstStore(vo.getInvqty1j()); |
|
|
|
ext.setFirstStore(vo.getInvqty1j()); |
|
|
|
ext.setLastStore(vo.getLastQty()); |
|
|
|
ext.setLastStore(goodsExt.getLastStore()); |
|
|
|
ext.setPlanQty(vo.getPlanqty()); |
|
|
|
ext.setPlanQty(vo.getPlanqty()); |
|
|
|
ext.setGoodsStatus(vo.getGoodsStatus()); |
|
|
|
ext.setGoodsStatus(goodsExt.getGoodsStatus()); |
|
|
|
// ext.setUpdateTime(new Date());
|
|
|
|
// ext.setUpdateTime(new Date());
|
|
|
|
// ext.setUpdateUser(AuthUtil.getUserId());
|
|
|
|
// ext.setUpdateUser(AuthUtil.getUserId());
|
|
|
|
|
|
|
|
|
|
|
|
this.updateById(ext); |
|
|
|
this.updateById(ext); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
log.info("===== 物料状态定时更新完成 =====", statusList.size()); |
|
|
|
log.info("===== 物料状态定时更新完成 =====", list.size()); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
log.info("===== 物料状态定时更新异常 =====", e); |
|
|
|
log.info("===== 物料状态定时更新异常 =====", e); |
|
|
|
} |
|
|
|
} |
|
|
|
|