Merge remote-tracking branch 'origin/wms_dev' into wms_dev
This commit is contained in:
+29
-15
@@ -398,7 +398,7 @@ public class StockShelfOrderApplicationService {
|
||||
//设置容器信息
|
||||
// setContainerInfo(returnShelfMaterialDetailDOChild);
|
||||
//上架后 设置该记录不允许被修改
|
||||
shelfMaterialDetailDO.setAllowModify(2);
|
||||
returnShelfMaterialDetailDOChild.setAllowModify(2);
|
||||
returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChild.getMaterialDetailSerialNumberList());
|
||||
returnShelfMaterialDetailDOChild.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId));
|
||||
returnShelfMaterialDetailDOChild.setLevel(2);
|
||||
@@ -410,6 +410,8 @@ public class StockShelfOrderApplicationService {
|
||||
}
|
||||
}
|
||||
returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDO.getMaterialDetailSerialNumberList());
|
||||
//设置子项的实际数量(等于上架数量)
|
||||
returnShelfMaterialDetailDOChild.setActualQuantity(returnShelfMaterialDetailDOChild.getShelvesQuantity());
|
||||
returnShelfMaterialDetailDOChildList.add(returnShelfMaterialDetailDOChild);
|
||||
actualQuantity = actualQuantity.add(returnShelfMaterialDetailDOChild.getShelvesQuantity());
|
||||
}
|
||||
@@ -455,8 +457,8 @@ public class StockShelfOrderApplicationService {
|
||||
* @param shelfMaterialDetailDO
|
||||
*/
|
||||
private void setStorageLocationInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){
|
||||
if (shelfMaterialDetailDO.getStorageLocationId() == null) {
|
||||
throw new ServiceException("库位ID不能为空");
|
||||
if (shelfMaterialDetailDO.getStorageLocationId() == null || shelfMaterialDetailDO.getStorageLocationId() == 0) {
|
||||
throw new ServiceException("库位ID不能为空或0");
|
||||
}
|
||||
AjaxResult storageLocationResult = systemServiceFeign.getStorageLocationInfoByStorageLocationId(shelfMaterialDetailDO.getStorageLocationId());
|
||||
if (storageLocationResult == null) {
|
||||
@@ -471,19 +473,31 @@ public class StockShelfOrderApplicationService {
|
||||
if (dataObj == null) {
|
||||
throw new ServiceException("获取上架库位信息失败:返回数据为空,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
|
||||
}
|
||||
StorageLocationFeignPO storageLocationFeignPO = JSON.parseObject(JSONObject.toJSONString(dataObj), StorageLocationFeignPO.class);
|
||||
if (storageLocationFeignPO == null) {
|
||||
throw new ServiceException("获取上架库位信息失败:数据解析失败,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
|
||||
try {
|
||||
String jsonString = JSONObject.toJSONString(dataObj);
|
||||
if (jsonString == null || jsonString.trim().isEmpty() || "null".equals(jsonString)) {
|
||||
throw new ServiceException("获取上架库位信息失败:数据序列化失败,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
|
||||
}
|
||||
StorageLocationFeignPO storageLocationFeignPO = JSON.parseObject(jsonString, StorageLocationFeignPO.class);
|
||||
if (storageLocationFeignPO == null) {
|
||||
throw new ServiceException("获取上架库位信息失败:数据解析失败,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
|
||||
}
|
||||
shelfMaterialDetailDO.setWarehouseId(storageLocationFeignPO.getWarehouseId());
|
||||
shelfMaterialDetailDO.setWarehouseCode(storageLocationFeignPO.getWarehouseCode());
|
||||
shelfMaterialDetailDO.setWarehouseName(storageLocationFeignPO.getWarehouseName());
|
||||
shelfMaterialDetailDO.setStorageSectionId(storageLocationFeignPO.getStorageSectionId());
|
||||
shelfMaterialDetailDO.setStorageCode(storageLocationFeignPO.getStorageCode());
|
||||
shelfMaterialDetailDO.setStorageName(storageLocationFeignPO.getStorageName());
|
||||
shelfMaterialDetailDO.setStorageLocationId(storageLocationFeignPO.getStorageLocationId());
|
||||
shelfMaterialDetailDO.setStorageLocationCode(storageLocationFeignPO.getStorageLocationCode());
|
||||
shelfMaterialDetailDO.setStorageLocationName(storageLocationFeignPO.getStorageLocationName());
|
||||
} catch (Exception e) {
|
||||
log.error("解析库位信息失败,库位ID:{},错误:{}", shelfMaterialDetailDO.getStorageLocationId(), e.getMessage(), e);
|
||||
if (e instanceof ServiceException) {
|
||||
throw e;
|
||||
}
|
||||
throw new ServiceException("获取上架库位信息失败:数据解析异常,库位ID:" + shelfMaterialDetailDO.getStorageLocationId() + ",错误信息:" + e.getMessage());
|
||||
}
|
||||
shelfMaterialDetailDO.setWarehouseId(storageLocationFeignPO.getWarehouseId());
|
||||
shelfMaterialDetailDO.setWarehouseCode(storageLocationFeignPO.getWarehouseCode());
|
||||
shelfMaterialDetailDO.setWarehouseName(storageLocationFeignPO.getWarehouseName());
|
||||
shelfMaterialDetailDO.setStorageSectionId(storageLocationFeignPO.getStorageSectionId());
|
||||
shelfMaterialDetailDO.setStorageCode(storageLocationFeignPO.getStorageCode());
|
||||
shelfMaterialDetailDO.setStorageName(storageLocationFeignPO.getStorageName());
|
||||
shelfMaterialDetailDO.setStorageLocationId(storageLocationFeignPO.getStorageLocationId());
|
||||
shelfMaterialDetailDO.setStorageLocationCode(storageLocationFeignPO.getStorageLocationCode());
|
||||
shelfMaterialDetailDO.setStorageLocationName(storageLocationFeignPO.getStorageLocationName());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+3
-2
@@ -192,7 +192,7 @@ public class ShelfMaterialDetailImpl extends ServiceImpl<ShelfMaterialDetailMapp
|
||||
}
|
||||
materialDetailSerialNumberList.addAll(genMaterialDetailSerialNumber(shelfMaterialDetailDO));
|
||||
}
|
||||
BigDecimal totalActualQuantity = shelfMaterialDetailDO.getActualQuantity();
|
||||
BigDecimal totalActualQuantity = shelfMaterialDetailDO.getActualQuantity() != null ? shelfMaterialDetailDO.getActualQuantity() : BigDecimal.ZERO;
|
||||
//判断是否存在子项
|
||||
List<ShelfMaterialDetailDO> inMaterialDetailDOChildList = shelfMaterialDetailDO.getChildren();
|
||||
List<ShelfMaterialDetail> shelfMaterialDetailChildList = new ArrayList<>();
|
||||
@@ -212,7 +212,8 @@ public class ShelfMaterialDetailImpl extends ServiceImpl<ShelfMaterialDetailMapp
|
||||
}
|
||||
materialDetailSerialNumberList.addAll(genMaterialDetailSerialNumber(shelfMaterialDetailDOChild));
|
||||
}
|
||||
totalActualQuantity = totalActualQuantity.add(shelfMaterialDetailDOChild.getActualQuantity());
|
||||
BigDecimal childActualQuantity = shelfMaterialDetailDOChild.getActualQuantity() != null ? shelfMaterialDetailDOChild.getActualQuantity() : BigDecimal.ZERO;
|
||||
totalActualQuantity = totalActualQuantity.add(childActualQuantity);
|
||||
}
|
||||
}
|
||||
ShelfMaterialDetail shelfMaterialDetail = new ShelfMaterialDetail();
|
||||
|
||||
Reference in New Issue
Block a user