【实时库存】用友数据优化

dev
siontion 2 months ago
parent 01426f2564
commit 762d5e3cb5

@ -58,6 +58,11 @@ public interface MaterialMapper extends BaseMapperX<MaterialDO> {
return selectOne(query);
}
default List<Map<String, Object>> selectSimpleObjList() {
return selectMaps(new QueryWrapper<MaterialDO>().select("id", "code").lambda());
}
default List<Map<String, Object>> selectSimpleList() {

@ -423,11 +423,16 @@ public class ChanjetSchedule {
// 设置为“否”,关闭所有与用友通信的接口;为“是”,打开所有与用友通信的接口
if(getSystemParameters()) {
List<MaterialDO> materialDOS = materialMapper.selectList();
List<Map<String, Object>> materialDOS = materialMapper.selectSimpleObjList();
List<String> materialCodeList = new ArrayList<>();
materialDOS.forEach(mo->{
if(!materialCodeList.contains(mo.getCode())){
materialCodeList.add(mo.getCode());
// materialDOS.forEach(mo->{
// if(!materialCodeList.contains(mo)){
// materialCodeList.add(mo.getCode());
// }
// });
materialDOS.forEach(map -> {
if(!materialCodeList.contains(map.get("code").toString())){
materialCodeList.add(map.get("code").toString());
}
});
CommonResult<List<QueryCurrentStockResVO>> result = chanjetSpi.invokeRetList(QUERY_CURRENT_STOCK, new QueryCurrentStockReqVO(new QueryCurrentStockReqVO.QueryCurrentStockParamVO(materialCodeList)), QueryCurrentStockResVO.class);
@ -440,13 +445,14 @@ public class ChanjetSchedule {
if(dataList == null) dataList = new ArrayList<>(16);
dataList.forEach(ro->{
TplusLastestStockDO tplusLastestStockDO = tplusLastestStockMapper.selectOne(TplusLastestStockDO::getWarehouseCode,ro.getWarehouseCode(),TplusLastestStockDO::getInventoryCode,ro.getInventoryCode());
MaterialDO materialDO = materialMapper.selectOne(MaterialDO::getCode,ro.getInventoryCode());
// MaterialDO materialDO = materialMapper.selectOne(MaterialDO::getCode,ro.getInventoryCode());
Map<String, Object> materialDO = materialDOS.stream().filter(map->map.get("code").toString().equals(ro.getInventoryCode())).collect(Collectors.toList()).get(0);
if(tplusLastestStockDO== null){
tplusLastestStockDO = new TplusLastestStockDO();
tplusLastestStockDO.setId(null);
tplusLastestStockDO.setWarehouseId(ro.getWarehouseID2());
// tplusLastestStockDO.setInventoryId(ro.getInventoryID2());
tplusLastestStockDO.setInventoryId(materialDO==null?null:materialDO.getId().toString());
tplusLastestStockDO.setInventoryId(materialDO==null?null:materialDO.get("id").toString());
tplusLastestStockDO.setWarehouseCode(ro.getWarehouseCode());
tplusLastestStockDO.setWarehouseName(ro.getWarehouseName());
tplusLastestStockDO.setWarehouseCode(ro.getWarehouseCode());
@ -464,7 +470,7 @@ public class ChanjetSchedule {
}else{
tplusLastestStockDO.setWarehouseId(ro.getWarehouseID2());
// tplusLastestStockDO.setInventoryId(ro.getInventoryID2());
tplusLastestStockDO.setInventoryId(materialDO==null?null:materialDO.getId().toString());
tplusLastestStockDO.setInventoryId(materialDO==null?null:materialDO.get("id").toString());
tplusLastestStockDO.setWarehouseCode(ro.getWarehouseCode());
tplusLastestStockDO.setWarehouseName(ro.getWarehouseName());
tplusLastestStockDO.setWarehouseCode(ro.getWarehouseCode());

Loading…
Cancel
Save