diff --git a/blade-service-api/logpm-distribution-api/pom.xml b/blade-service-api/logpm-distribution-api/pom.xml
index 1ba3936bb..43efcfd21 100644
--- a/blade-service-api/logpm-distribution-api/pom.xml
+++ b/blade-service-api/logpm-distribution-api/pom.xml
@@ -3,6 +3,14 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
+
+
+ org.springblade
+ logpm-warehouse-api
+ 3.1.0.RELEASE
+ compile
+
+
org.springblade
blade-service-api
diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java
index b4afaf9af..55c1072af 100644
--- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java
+++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java
@@ -17,11 +17,14 @@
package com.logpm.distribution.vo;
import com.logpm.distribution.entity.DistributionStockListEntity;
+import com.logpm.warehouse.vo.PositionVO;
import io.swagger.annotations.ApiModelProperty;
-import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import java.util.ArrayList;
+import java.util.List;
+
/**
* 库存品管理 视图实体类
*
@@ -53,4 +56,6 @@ public class DistributionStockListVO extends DistributionStockListEntity {
@ApiModelProperty(value = "货位名称")
private String goodsAllocation;
+ private List positionList = new ArrayList<>();
+
}
diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/PositionVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/PositionVO.java
new file mode 100644
index 000000000..33a587339
--- /dev/null
+++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/PositionVO.java
@@ -0,0 +1,16 @@
+package com.logpm.warehouse.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class PositionVO implements Serializable {
+
+ private String areaName;//货区
+ private String shelfName;//货架
+ private String allocationName;//货位
+ private String trayCode;//托盘
+ private Integer num;//数量
+
+}
diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/TrayTypeDataListVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/TrayTypeDataListVO.java
index 65c5370e5..b09addf4d 100644
--- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/TrayTypeDataListVO.java
+++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/TrayTypeDataListVO.java
@@ -3,6 +3,8 @@ package com.logpm.warehouse.vo;
import lombok.Data;
import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
@Data
public class TrayTypeDataListVO implements Serializable {
@@ -20,4 +22,7 @@ public class TrayTypeDataListVO implements Serializable {
private Integer orderTotalNum;//订单总件数
+ private List positionList = new ArrayList<>();
+
+
}
diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownStockVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownStockVO.java
index 6ea47df2d..7f7e9e762 100644
--- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownStockVO.java
+++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownStockVO.java
@@ -16,6 +16,6 @@ public class UpdownStockVO implements Serializable {
private Integer totalNumber;//合同数量
private Integer residueNumber;//剩余数量
private String incomingBatch;//批次号
- private List list = new ArrayList<>();
+ private List list = new ArrayList<>();
}
diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownZeroOrderVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownZeroOrderVO.java
index 5ec01eed3..2c935226f 100644
--- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownZeroOrderVO.java
+++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/UpdownZeroOrderVO.java
@@ -13,6 +13,6 @@ public class UpdownZeroOrderVO implements Serializable {
private String orderCode;//订单号
private Integer totalNumber;//合同数量
private Integer residueNumber;//剩余数量
- private List list = new ArrayList<>();
+ private List list = new ArrayList<>();
}
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.java
index 12b710227..be8b517e3 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.java
@@ -49,4 +49,8 @@ public interface WarehouseTrayGoodsMapper extends BaseMapper findAllPackageDetailByOrderCode(@Param("orderCode") String orderCode);
List findPackageByTrayTypeIdAndOrdeCode(@Param("orderCode") String orderCode, @Param("trayTypeId") Long trayTypeId);
+
+ List getTrayGoodsByZeroOrderIdNoAllocationId(@Param("orderId") Long orderId);
+
+ List getTrayGoodsByStockNoAllocationId(@Param("marketId") Long marketId, @Param("materialCode") String materialCode, @Param("incomingBatch") String incomingBatch);
}
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.xml
index 0a525298a..a43df07a0 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.xml
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayGoodsMapper.xml
@@ -232,4 +232,25 @@
and ldpl.order_code = #{orderCode}
+
+
+
+
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayTypeMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayTypeMapper.xml
index 7e6cfd82e..ed88dba6d 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayTypeMapper.xml
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseTrayTypeMapper.xml
@@ -60,16 +60,12 @@
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java
index 37b2050b6..ff99c0cb5 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java
@@ -17,6 +17,7 @@
package com.logpm.warehouse.mapper;
import com.logpm.warehouse.entity.WarehouseUpdownGoodsEntity;
+import com.logpm.warehouse.vo.PositionVO;
import com.logpm.warehouse.vo.UpShelfDataVO;
import com.logpm.warehouse.vo.WarehouseUpdownGoodsVO;
import com.logpm.warehouse.excel.WarehouseUpdownGoodsExcel;
@@ -75,6 +76,10 @@ public interface WarehouseUpdownGoodsMapper extends BaseMapper ids);
+ List getUpdownGoodsByZeroOrderId(@Param("orderId") Long orderId);
+
+ List getUpdownGoodsByStock(@Param("marketId") Long marketId, @Param("materialCode") String materialCode, @Param("incomingBatch") String incomingBatch);
+
// /**
// * 根据货位查询货物
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.xml
index 6015c7d7c..403d56568 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.xml
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.xml
@@ -198,4 +198,33 @@
+
+
+
+
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseTrayGoodsService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseTrayGoodsService.java
index 488a742c8..5e20ce00f 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseTrayGoodsService.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseTrayGoodsService.java
@@ -78,4 +78,8 @@ public interface IWarehouseTrayGoodsService extends BaseService findPackageByTrayTypeIdAndOrdeCode(String orderCode, Long trayTypeId);
+ List getTrayGoodsByZeroOrderIdNoAllocationId(Long orderId);
+
+ List getTrayGoodsByStockNoAllocationId(Long marketId, String materialCode, String incomingBatch);
+
}
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java
index 3a9cc040b..02c272336 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java
@@ -22,6 +22,7 @@ import com.logpm.distribution.entity.DistributionParcelListEntity;
import com.logpm.warehouse.entity.WarehouseUpdownGoodsEntity;
import com.logpm.warehouse.entity.WarehouseUpdownTypeEntity;
import com.logpm.warehouse.excel.WarehouseUpdownGoodsExcel;
+import com.logpm.warehouse.vo.PositionVO;
import com.logpm.warehouse.vo.UpShelfDataVO;
import com.logpm.warehouse.vo.WarehouseUpdownGoodsVO;
import org.springblade.core.mp.base.BaseService;
@@ -110,4 +111,8 @@ public interface IWarehouseUpdownGoodsService extends BaseService updownGoodsList);
+
+ List getUpdownGoodsByZeroOrderId(Long orderId);
+
+ List getUpdownGoodsByStock(Long marketId, String materialCode, String incomingBatch);
}
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayGoodsServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayGoodsServiceImpl.java
index 7f58504f6..26503f24e 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayGoodsServiceImpl.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayGoodsServiceImpl.java
@@ -249,6 +249,16 @@ public class WarehouseTrayGoodsServiceImpl extends BaseServiceImpl getTrayGoodsByZeroOrderIdNoAllocationId(Long orderId) {
+ return baseMapper.getTrayGoodsByZeroOrderIdNoAllocationId(orderId);
+ }
+
+ @Override
+ public List getTrayGoodsByStockNoAllocationId(Long marketId, String materialCode, String incomingBatch) {
+ return baseMapper.getTrayGoodsByStockNoAllocationId(marketId,materialCode,incomingBatch);
+ }
+
@Override
public Boolean deleteByMasterId(Long masterId) {
int delete = baseMapper.delete(new QueryWrapper().lambda()
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java
index 6b7453958..42de7b78b 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java
@@ -13,6 +13,7 @@ import com.logpm.distribution.entity.DistributionStockListEntity;
import com.logpm.distribution.feign.IDistributionParcelListClient;
import com.logpm.distribution.feign.IDistributionStockArticleClient;
import com.logpm.distribution.feign.IDistributionStockListClient;
+import com.logpm.distribution.vo.DistributionStockListVO;
import com.logpm.warehouse.bean.Resp;
import com.logpm.warehouse.dto.TrayTypeDTO;
import com.logpm.warehouse.dto.ZeroOrderVO;
@@ -499,16 +500,23 @@ public class WarehouseTrayTypeServiceImpl extends BaseServiceImpl getZeroOrderByWaybillCode(String waybillCode) {
-// List zeroOrderByWaybillCode = baseMapper.getZeroOrderByWaybillCode(waybillCode);
-// for (TrayTypeDataListVO trayTypeDataListVO:zeroOrderByWaybillCode){
-//
-// String ordeCode = trayTypeDataListVO.getDataCode();
-// Long orderId = trayTypeDataListVO.getDataId();
-// //计算零担订单可用数量
-// countZeroAvailableNum(orderId);
-//
-// }
- return baseMapper.getZeroOrderByWaybillCode(waybillCode);
+ List zeroOrderByWaybillCode = baseMapper.getZeroOrderByWaybillCode(waybillCode);
+ for (TrayTypeDataListVO trayTypeDataListVO:zeroOrderByWaybillCode){
+ Long orderId = trayTypeDataListVO.getDataId();
+ Integer orderTotalNum = trayTypeDataListVO.getOrderTotalNum();
+ //查询该零担的库位数据
+ List updownGoodsEntities = warehouseUpdownGoodsService.getUpdownGoodsByZeroOrderId(orderId);
+ List trayGoodsEntities = warehouseTrayGoodsService.getTrayGoodsByZeroOrderIdNoAllocationId(orderId);
+ updownGoodsEntities.addAll(trayGoodsEntities);
+ for (PositionVO positionVO:updownGoodsEntities){
+ Integer num = positionVO.getNum();
+ orderTotalNum = orderTotalNum - num;
+ }
+ trayTypeDataListVO.setOrderTotalNum(orderTotalNum);
+ trayTypeDataListVO.setPositionList(updownGoodsEntities);
+ }
+
+ return zeroOrderByWaybillCode;
}
/**
@@ -1485,7 +1493,7 @@ public class WarehouseTrayTypeServiceImpl extends BaseServiceImpl ls = new ArrayList<>();
+ List ls = new ArrayList<>();
//根据商场id和物料编码查询对应的库存品
List stockListEntityList = distributionStockListClient.getListByMarketIdAndMaterialCode(marketId, materialCode);
if(Objects.isNull(stockListEntityList) || stockListEntityList.size() == 0){
@@ -1493,19 +1501,20 @@ public class WarehouseTrayTypeServiceImpl extends BaseServiceImpl queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("market_id",marketId)
- .eq("association_value",materialCode)
- .eq("incoming_batch",incomingBatch);
- List list = warehouseTrayGoodsService.list(queryWrapper);
- Integer useNum = 0;
- for (WarehouseTrayGoodsEntity trayGoodsEntity:list){
- useNum = useNum +trayGoodsEntity.getNum();
+ List updownGoodsByStock = warehouseUpdownGoodsService.getUpdownGoodsByStock(marketId,materialCode,incomingBatch);
+ List traynGoodsByStock = warehouseTrayGoodsService.getTrayGoodsByStockNoAllocationId(marketId,materialCode,incomingBatch);
+ updownGoodsByStock.addAll(traynGoodsByStock);
+ for (PositionVO positionVO:updownGoodsByStock){
+ Integer num = positionVO.getNum();
+ quantityStock = quantityStock - num;
}
- stockListEntity.setQuantityStock(quantityStock-useNum);
- ls.add(stockListEntity);
+ distributionStockListVO.setQuantityStock(quantityStock);
+ distributionStockListVO.setPositionList(updownGoodsByStock);
+ ls.add(distributionStockListVO);
}
return R.data(ls);
}
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java
index a6deca0dd..be53b1c34 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java
@@ -26,6 +26,7 @@ import com.logpm.warehouse.excel.WarehouseUpdownGoodsExcel;
import com.logpm.warehouse.mapper.WarehouseUpdownGoodsMapper;
import com.logpm.warehouse.service.IWarehouseUpdownGoodsLogService;
import com.logpm.warehouse.service.IWarehouseUpdownGoodsService;
+import com.logpm.warehouse.vo.PositionVO;
import com.logpm.warehouse.vo.UpShelfDataVO;
import com.logpm.warehouse.vo.WarehouseUpdownGoodsVO;
import lombok.AllArgsConstructor;
@@ -177,4 +178,14 @@ public class WarehouseUpdownGoodsServiceImpl extends BaseServiceImpl getUpdownGoodsByZeroOrderId(Long orderId) {
+ return baseMapper.getUpdownGoodsByZeroOrderId(orderId);
+ }
+
+ @Override
+ public List getUpdownGoodsByStock(Long marketId, String materialCode, String incomingBatch) {
+ return baseMapper.getUpdownGoodsByStock(marketId,materialCode,incomingBatch);
+ }
+
}
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java
index 6badee13f..58bb00b2f 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java
@@ -1248,49 +1248,36 @@ public class WarehouseUpdownTypeServiceImpl extends BaseServiceImpl ls = new ArrayList<>();
- QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("association_type", "4")
- .eq("association_id", materialId)
- .eq("incoming_batch",incomingBatch)
- .eq("market_id",marketId);
- List list = warehouseUpdownGoodsService.list(queryWrapper);
- Integer useNum = 0;
- for (WarehouseUpdownGoodsEntity updownGoodsEntity:list){
- Integer num = updownGoodsEntity.getNum();
- useNum = useNum +num;
- UpdownStockAllocationVO updownStockAllocationVO = new UpdownStockAllocationVO();
- updownStockAllocationVO.setAllocation(updownGoodsEntity.getPositionCode());
- updownStockAllocationVO.setNum(num);
- ls.add(updownStockAllocationVO);
- }
- updownStockVO.setResidueNumber(quantityStock-useNum);
- updownStockVO.setList(ls);
+
+ List updownGoodsByStock = warehouseUpdownGoodsService.getUpdownGoodsByStock(marketId, cargoNumber, incomingBatch);
+ List trayGoodsByStock = warehouseTrayGoodsService.getTrayGoodsByStockNoAllocationId(marketId, cargoNumber, incomingBatch);
+ updownGoodsByStock.addAll(trayGoodsByStock);
+ for (PositionVO positionVO:updownGoodsByStock){
+ Integer num = positionVO.getNum();
+ quantityStock = quantityStock - num;
+ }
+ updownStockVO.setResidueNumber(quantityStock);
+ updownStockVO.setList(updownGoodsByStock);
return updownStockVO;
}
private UpdownZeroOrderVO orderToUpdownZeroOrderVO(DistributionStockArticleEntity stockArticleEntity) {
String orderCode = stockArticleEntity.getOrderCode();
+ Long orderId = stockArticleEntity.getId();
Integer totalNumber = stockArticleEntity.getTotalNumber();
UpdownZeroOrderVO updownZeroOrderVO = new UpdownZeroOrderVO();
updownZeroOrderVO.setWaybillCode(stockArticleEntity.getWaybillNumber());
updownZeroOrderVO.setOrderCode(orderCode);
updownZeroOrderVO.setTotalNumber(totalNumber);
- List ls = new ArrayList<>();
- QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("association_type", "1")
- .eq("association_value", orderCode);
- List list = warehouseUpdownGoodsService.list(queryWrapper);
- Integer useNum = 0;
- for (WarehouseUpdownGoodsEntity updownGoodsEntity:list){
- Integer num = updownGoodsEntity.getNum();
- useNum = useNum +num;
- ZeroOrderAllocationVO zeroOrderAllocationVO = new ZeroOrderAllocationVO();
- zeroOrderAllocationVO.setAllocation(updownGoodsEntity.getPositionCode());
- zeroOrderAllocationVO.setNum(num);
- ls.add(zeroOrderAllocationVO);
- }
- updownZeroOrderVO.setResidueNumber(totalNumber-useNum);
+ List ls = new ArrayList<>();
+ List updownGoodsEntities = warehouseUpdownGoodsService.getUpdownGoodsByZeroOrderId(orderId);
+ List trayGoodsEntities = warehouseTrayGoodsService.getTrayGoodsByZeroOrderIdNoAllocationId(orderId);
+ updownGoodsEntities.addAll(trayGoodsEntities);
+ for (PositionVO positionVO:updownGoodsEntities){
+ Integer num = positionVO.getNum();
+ totalNumber = totalNumber -num;
+ }
+ updownZeroOrderVO.setResidueNumber(totalNumber);
updownZeroOrderVO.setList(ls);
return updownZeroOrderVO;
}