Merge branch 'dev_qinhongzhanWMS' into wms_dev
# Conflicts: # mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/materialBaseInfo/MaterialBaseInfoDTO.java
This commit is contained in:
+29
-29
@@ -68,8 +68,8 @@ public class StockInOrderApplicationService {
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
stockInOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
}
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
stockInOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// stockInOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
return stockInOrderDomainService.queryList(stockInOrderDO);
|
||||
}
|
||||
@@ -79,26 +79,26 @@ public class StockInOrderApplicationService {
|
||||
* 新增入库单
|
||||
*/
|
||||
public Boolean insert(StockInOrderDO stockInOrderDO) {
|
||||
// 如果仓库ID为空,从当前登录用户的关联仓库中获取
|
||||
// if (stockInOrderDO.getWarehouseId() == null) {
|
||||
// LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
// if (loginUser == null) {
|
||||
// throw new ServiceException("登录已失效,请重新登录");
|
||||
// }
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// if (associationWarehouseCacheDO == null || associationWarehouseCacheDO.getWarehouseId() == null) {
|
||||
// throw new ServiceException("当前用户未配置关联仓库,请先配置仓库");
|
||||
// }
|
||||
// stockInOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
// }
|
||||
// //设置仓库
|
||||
// setWarehouseInfo(stockInOrderDO);
|
||||
//设置货主信息
|
||||
// shipperParam(stockInOrderDO);
|
||||
//设置供应商信息
|
||||
// supplierParam(stockInOrderDO);
|
||||
//设置数据字典键值
|
||||
// setDataDict(stockInOrderDO);
|
||||
// 如果仓库ID为空,从当前登录用户的关联仓库中获取
|
||||
if (stockInOrderDO.getWarehouseId() == null) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (loginUser == null) {
|
||||
throw new ServiceException("登录已失效,请重新登录");
|
||||
}
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
if (associationWarehouseCacheDO == null || associationWarehouseCacheDO.getWarehouseId() == null) {
|
||||
throw new ServiceException("当前用户未配置关联仓库,请先配置仓库");
|
||||
}
|
||||
stockInOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
//设置仓库
|
||||
setWarehouseInfo(stockInOrderDO);
|
||||
// 设置货主信息
|
||||
shipperParam(stockInOrderDO);
|
||||
// 设置供应商信息
|
||||
supplierParam(stockInOrderDO);
|
||||
// 设置数据字典键值
|
||||
setDataDict(stockInOrderDO);
|
||||
return stockInOrderDomainService.insert(stockInOrderDO);
|
||||
}
|
||||
|
||||
@@ -107,13 +107,13 @@ public class StockInOrderApplicationService {
|
||||
*/
|
||||
public Boolean update(StockInOrderDO stockInOrderDO) {
|
||||
//设置仓库
|
||||
// setWarehouseInfo(stockInOrderDO);
|
||||
setWarehouseInfo(stockInOrderDO);
|
||||
//设置货主信息
|
||||
// shipperParam(stockInOrderDO);
|
||||
shipperParam(stockInOrderDO);
|
||||
//设置供应商信息
|
||||
// supplierParam(stockInOrderDO);
|
||||
supplierParam(stockInOrderDO);
|
||||
//设置数据字典键值
|
||||
// setDataDict(stockInOrderDO);
|
||||
setDataDict(stockInOrderDO);
|
||||
return stockInOrderDomainService.update(stockInOrderDO);
|
||||
}
|
||||
|
||||
@@ -396,11 +396,11 @@ public class StockInOrderApplicationService {
|
||||
InMaterialDetailDO d = new InMaterialDetailDO();
|
||||
d.setMaterialBaseInfoId(materialBaseInfoId);
|
||||
d.setQuantity(quantity);
|
||||
d.setSpecification(r.getSpecification());
|
||||
d.setSpecificationModel(r.getSpecificationModel());
|
||||
d.setSkuCode(r.getSkuCode());
|
||||
d.setInvoiceNo(r.getInvoiceNo());
|
||||
d.setDeclaredQuantity(r.getDeclaredQuantity());
|
||||
d.setDeclaredUnit(r.getDeclaredUnit());
|
||||
d.setDeclarationUnit(r.getDeclarationUnit());
|
||||
d.setLiter(r.getLiter());
|
||||
d.setBoxCount(r.getBoxCount());
|
||||
d.setPieceCount(r.getPieceCount());
|
||||
@@ -413,7 +413,7 @@ public class StockInOrderApplicationService {
|
||||
d.setTotalArea(r.getTotalArea());
|
||||
d.setBatchRefNo(r.getBatchRefNo());
|
||||
d.setSheetRefNo(r.getSheetRefNo());
|
||||
d.setCountryOfOrigin(r.getCountryOfOrigin());
|
||||
d.setOriginCountry(r.getOriginCountry());
|
||||
d.setBoxPalletNo(r.getBoxPalletNo());
|
||||
d.setTotalPrice(r.getTotalPrice());
|
||||
d.setCurrency(r.getCurrency());
|
||||
|
||||
+28
-4
@@ -39,6 +39,7 @@ import com.mhd.wms.domain.stockReceiptOrder.service.StockReceiptOrderDomainServi
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.mhd.common.core.utils.StringUtils;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
@@ -87,8 +88,8 @@ public class StockReceiptOrderApplicationService {
|
||||
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
stockReceiptOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
stockReceiptOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// stockReceiptOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
return stockReceiptOrderDomainService.queryList(stockReceiptOrderDO);
|
||||
}
|
||||
@@ -162,7 +163,21 @@ public class StockReceiptOrderApplicationService {
|
||||
* @return Boolean
|
||||
*/
|
||||
public Boolean taskDistribution(StockReceiptOrderDO stockReceiptOrderDO){
|
||||
//设置作业人员信息
|
||||
//获取收货单信息,用于获取仓库ID
|
||||
if (stockReceiptOrderDO.getReceiptOrderIds() != null && stockReceiptOrderDO.getReceiptOrderIds().size() > 0) {
|
||||
StockReceiptOrderDO queryDO = new StockReceiptOrderDO();
|
||||
queryDO.setReceiptOrderId(stockReceiptOrderDO.getReceiptOrderIds().get(0));
|
||||
StockReceiptOrderPO stockReceiptOrderPO = stockReceiptOrderDomainService.getInfo(queryDO.getReceiptOrderId());
|
||||
if (stockReceiptOrderPO != null && stockReceiptOrderPO.getWarehouseId() != null) {
|
||||
//查询该仓库绑定的用户ID列表
|
||||
AjaxResult ajaxResult = systemServiceFeign.queryListCorrelationId(stockReceiptOrderPO.getWarehouseId());
|
||||
if ("200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
List<Long> warehouseUserIds = JSON.parseArray(JSONUtil.toJsonStr(ajaxResult.get("data")), Long.class);
|
||||
stockReceiptOrderDO.setWarehouseUserIds(warehouseUserIds);
|
||||
}
|
||||
}
|
||||
}
|
||||
//设置作业人员信息(会验证操作人员是否属于该仓库绑定的用户)
|
||||
operatorsParam(stockReceiptOrderDO);
|
||||
return stockReceiptOrderDomainService.taskDistribution(stockReceiptOrderDO);
|
||||
}
|
||||
@@ -313,6 +328,15 @@ public class StockReceiptOrderApplicationService {
|
||||
* @param stockReceiptOrderDO
|
||||
*/
|
||||
private void operatorsParam(StockReceiptOrderDO stockReceiptOrderDO){
|
||||
if (stockReceiptOrderDO.getOperatorsBy() == null) {
|
||||
throw new ServiceException("操作人员不能为空");
|
||||
}
|
||||
//如果指定了仓库绑定的用户列表,验证操作人员是否在该列表中
|
||||
if (stockReceiptOrderDO.getWarehouseUserIds() != null && !stockReceiptOrderDO.getWarehouseUserIds().isEmpty()) {
|
||||
if (!stockReceiptOrderDO.getWarehouseUserIds().contains(stockReceiptOrderDO.getOperatorsBy())) {
|
||||
throw new ServiceException("操作人员必须属于当前收货单对应仓库绑定的用户");
|
||||
}
|
||||
}
|
||||
AjaxResult ajaxResult = userServiceFeign.getInfo(stockReceiptOrderDO.getOperatorsBy());
|
||||
if(!"200".equals(String.valueOf(ajaxResult.get("code")))){
|
||||
throw new ServiceException("获取作业人员信息失败");
|
||||
@@ -591,7 +615,7 @@ public class StockReceiptOrderApplicationService {
|
||||
*/
|
||||
private void setMaterialMoreDetailInfo(ReceiptMaterialDetailDO receiptMaterialDetailDO){
|
||||
|
||||
if(ObjectUtil.isNotNull(receiptMaterialDetailDO.getMaterialStatusCode())){
|
||||
if(ObjectUtil.isNotNull(receiptMaterialDetailDO.getMaterialStatusCode()) && StringUtils.isNotBlank(receiptMaterialDetailDO.getMaterialStatusCode())){
|
||||
//翻译物料状态
|
||||
AjaxResult materialsStatusResult = systemServiceFeign.selectListByDictType(DictCode.MATERIALS_STATUS.getCode());
|
||||
if (!"200".equals(String.valueOf(materialsStatusResult.get("code")))) {
|
||||
|
||||
+16
-16
@@ -67,8 +67,8 @@ public class StockShelfOrderApplicationService {
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
stockShelfOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
}
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
stockShelfOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// stockShelfOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
return stockShelfOrderDomainService.queryList(stockShelfOrderDO);
|
||||
}
|
||||
@@ -245,7 +245,7 @@ public class StockShelfOrderApplicationService {
|
||||
//设置上架信息
|
||||
setStorageLocationInfo(shelfMaterialDetailDO);
|
||||
//设置容器信息
|
||||
setContainerInfo(shelfMaterialDetailDO);
|
||||
// setContainerInfo(shelfMaterialDetailDO);
|
||||
//上架后 设置该记录不允许被修改
|
||||
shelfMaterialDetailDO.setAllowModify(2);
|
||||
//未上过架 统计到当前收货单作业收货数
|
||||
@@ -267,7 +267,7 @@ public class StockShelfOrderApplicationService {
|
||||
//设置上架信息
|
||||
setStorageLocationInfo(shelfMaterialDetailDOChild);
|
||||
//设置容器信息
|
||||
setContainerInfo(returnShelfMaterialDetailDOChild);
|
||||
// setContainerInfo(returnShelfMaterialDetailDOChild);
|
||||
//上架后 设置该记录不允许被修改
|
||||
shelfMaterialDetailDO.setAllowModify(2);
|
||||
returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChild.getMaterialDetailSerialNumberList());
|
||||
@@ -348,18 +348,18 @@ public class StockShelfOrderApplicationService {
|
||||
* @date 2024/5/23 14:03
|
||||
* @param shelfMaterialDetailDO
|
||||
*/
|
||||
private void setContainerInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){
|
||||
|
||||
//获取容器详情
|
||||
AjaxResult ajaxResult = systemServiceFeign.getContainerInfoByContainerId(shelfMaterialDetailDO.getContainerId());
|
||||
if(!"200".equals(String.valueOf(ajaxResult.get("code")))){
|
||||
throw new ServiceException("获取容器信息失败");
|
||||
}
|
||||
ContainerFeignPO containerFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), ContainerFeignPO.class);
|
||||
shelfMaterialDetailDO.setContainerCode(containerFeignPO.getContainerCode());
|
||||
shelfMaterialDetailDO.setContainerType(containerFeignPO.getContainerType());
|
||||
shelfMaterialDetailDO.setContainerTypeName(containerFeignPO.getContainerTypeName());
|
||||
}
|
||||
// private void setContainerInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){
|
||||
//
|
||||
// //获取容器详情
|
||||
// AjaxResult ajaxResult = systemServiceFeign.getContainerInfoByContainerId(shelfMaterialDetailDO.getContainerId());
|
||||
// if(!"200".equals(String.valueOf(ajaxResult.get("code")))){
|
||||
// throw new ServiceException("获取容器信息失败");
|
||||
// }
|
||||
// ContainerFeignPO containerFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), ContainerFeignPO.class);
|
||||
// shelfMaterialDetailDO.setContainerCode(containerFeignPO.getContainerCode());
|
||||
// shelfMaterialDetailDO.setContainerType(containerFeignPO.getContainerType());
|
||||
// shelfMaterialDetailDO.setContainerTypeName(containerFeignPO.getContainerTypeName());
|
||||
// }
|
||||
|
||||
/**
|
||||
* @description 判断上架数量是否存在超收
|
||||
|
||||
+6
-6
@@ -253,12 +253,12 @@ public class InMaterialDetail extends BaseVOEntity {
|
||||
private Long overStockType;
|
||||
|
||||
// ========== 报关相关明细字段 ==========
|
||||
@ApiModelProperty("规格型号/ITEM")
|
||||
@ApiModelProperty("规格型号")
|
||||
@Excel(name = "规格型号/ITEM")
|
||||
private String specification;
|
||||
private String specificationModel;
|
||||
|
||||
@ApiModelProperty("商品SKU码")
|
||||
@Excel(name = "商品SKU码")
|
||||
@ApiModelProperty("SKU码")
|
||||
@Excel(name = "SKU码")
|
||||
private String skuCode;
|
||||
|
||||
@ApiModelProperty("Invoice No.")
|
||||
@@ -275,7 +275,7 @@ public class InMaterialDetail extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty("申报单位")
|
||||
@Excel(name = "申报单位")
|
||||
private String declaredUnit;
|
||||
private String declarationUnit;
|
||||
|
||||
@ApiModelProperty("Batch Ref NO's")
|
||||
@Excel(name = "Batch Ref NO's")
|
||||
@@ -287,7 +287,7 @@ public class InMaterialDetail extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty("原产国")
|
||||
@Excel(name = "原产国")
|
||||
private String countryOfOrigin;
|
||||
private String originCountry;
|
||||
|
||||
@ApiModelProperty("箱号/卡板号")
|
||||
@Excel(name = "箱号/卡板号")
|
||||
|
||||
+6
-6
@@ -264,12 +264,12 @@ public class InMaterialDetailPO extends StockInOrderBasePO {
|
||||
private Long overStockType;
|
||||
|
||||
// ========== 报关相关明细字段 ==========
|
||||
@ApiModelProperty("规格型号/ITEM")
|
||||
@ApiModelProperty("规格型号")
|
||||
@Excel(name = "规格型号/ITEM")
|
||||
private String specification;
|
||||
private String specificationModel;
|
||||
|
||||
@ApiModelProperty("商品SKU码")
|
||||
@Excel(name = "商品SKU码")
|
||||
@ApiModelProperty("SKU码")
|
||||
@Excel(name = "SKU码")
|
||||
private String skuCode;
|
||||
|
||||
@ApiModelProperty("Invoice No.")
|
||||
@@ -286,7 +286,7 @@ public class InMaterialDetailPO extends StockInOrderBasePO {
|
||||
|
||||
@ApiModelProperty("申报单位")
|
||||
@Excel(name = "申报单位")
|
||||
private String declaredUnit;
|
||||
private String declarationUnit;
|
||||
|
||||
@ApiModelProperty("Batch Ref NO's")
|
||||
@Excel(name = "Batch Ref NO's")
|
||||
@@ -298,7 +298,7 @@ public class InMaterialDetailPO extends StockInOrderBasePO {
|
||||
|
||||
@ApiModelProperty("原产国")
|
||||
@Excel(name = "原产国")
|
||||
private String countryOfOrigin;
|
||||
private String originCountry;
|
||||
|
||||
@ApiModelProperty("箱号/卡板号")
|
||||
@Excel(name = "箱号/卡板号")
|
||||
|
||||
+6
-6
@@ -260,12 +260,12 @@ public class InMaterialDetailDO extends StockInOrderBaseDO {
|
||||
private List<String> inOrderNumberList;
|
||||
|
||||
// ========== 报关相关明细字段 ==========
|
||||
@ApiModelProperty("规格型号/ITEM(选择物料后自动带出,不可编辑)")
|
||||
@ApiModelProperty("规格型号(选择物料后自动带出,不可编辑)")
|
||||
@Excel(name = "规格型号/ITEM")
|
||||
private String specification;
|
||||
private String specificationModel;
|
||||
|
||||
@ApiModelProperty("商品SKU码(选择物料后自动带出,不可编辑)")
|
||||
@Excel(name = "商品SKU码")
|
||||
@ApiModelProperty("SKU码(选择物料后自动带出,不可编辑)")
|
||||
@Excel(name = "SKU码")
|
||||
private String skuCode;
|
||||
|
||||
@ApiModelProperty("Invoice No.")
|
||||
@@ -282,7 +282,7 @@ public class InMaterialDetailDO extends StockInOrderBaseDO {
|
||||
|
||||
@ApiModelProperty("申报单位")
|
||||
@Excel(name = "申报单位")
|
||||
private String declaredUnit;
|
||||
private String declarationUnit;
|
||||
|
||||
@ApiModelProperty("Batch Ref NO's")
|
||||
@Excel(name = "Batch Ref NO's")
|
||||
@@ -294,7 +294,7 @@ public class InMaterialDetailDO extends StockInOrderBaseDO {
|
||||
|
||||
@ApiModelProperty("原产国")
|
||||
@Excel(name = "原产国")
|
||||
private String countryOfOrigin;
|
||||
private String originCountry;
|
||||
|
||||
@ApiModelProperty("箱号/卡板号")
|
||||
@Excel(name = "箱号/卡板号")
|
||||
|
||||
+3
-4
@@ -107,7 +107,6 @@ public class StockInOrderDomainService {
|
||||
/**
|
||||
* 批量新增入库单
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean batchInsert(List<StockInOrderDO> stockInOrderDOList) {
|
||||
for (StockInOrderDO stockInOrderDO : stockInOrderDOList){
|
||||
if (StringUtils.isBlank(stockInOrderDO.getInOrderNumber())){
|
||||
@@ -409,12 +408,12 @@ public class StockInOrderDomainService {
|
||||
|
||||
//自动填充规格型号和SKU码(如果物料基础信息中有相关字段且明细中未设置)
|
||||
//规格型号:优先使用物料种类名称,如果为空则使用物料类型名称
|
||||
if (StringUtils.isBlank(inMaterialDetailDO.getSpecification())) {
|
||||
if (StringUtils.isBlank(inMaterialDetailDO.getSpecificationModel())) {
|
||||
if (StringUtils.isNotBlank(materialBaseInfoPO.getMaterialTypeName())) {
|
||||
inMaterialDetailDO.setSpecification(materialBaseInfoPO.getMaterialTypeName());
|
||||
inMaterialDetailDO.setSpecificationModel(materialBaseInfoPO.getMaterialTypeName());
|
||||
}
|
||||
}
|
||||
//商品SKU码:使用物料条形码
|
||||
//SKU码:使用物料条形码
|
||||
if (StringUtils.isBlank(inMaterialDetailDO.getSkuCode())) {
|
||||
if (StringUtils.isNotBlank(materialBaseInfoPO.getBarCode())) {
|
||||
inMaterialDetailDO.setSkuCode(materialBaseInfoPO.getBarCode());
|
||||
|
||||
+3
@@ -158,4 +158,7 @@ public class StockReceiptOrderDO extends StockInOrderBaseDO {
|
||||
@ApiModelProperty("物料明细")
|
||||
private List<ReceiptMaterialDetailDO> materialDetailList;
|
||||
|
||||
@ApiModelProperty("仓库绑定的用户ID列表(用于任务下发时筛选操作人员)")
|
||||
private List<Long> warehouseUserIds;
|
||||
|
||||
}
|
||||
|
||||
+40
@@ -53,6 +53,9 @@ import com.mhd.wms.domain.stockReceiptOrder.repository.facade.IStockReceiptOrder
|
||||
import com.mhd.wms.domain.stockReceiptOrder.repository.po.StockReceiptOrderPO;
|
||||
import com.mhd.wms.domain.stockReceiptOrder.repository.todo.NoReceiptOrderDO;
|
||||
import com.mhd.wms.domain.stockReceiptOrder.repository.todo.StockReceiptOrderDO;
|
||||
import com.mhd.wms.domain.stockShelfOrder.entity.StockShelfOrder;
|
||||
import com.mhd.wms.domain.stockShelfOrder.repository.facade.IStockShelfOrderService;
|
||||
import com.mhd.wms.domain.stockShelfOrder.repository.po.StockShelfOrderPO;
|
||||
import com.mhd.wms.domain.stockShelfOrder.repository.todo.StockShelfOrderDO;
|
||||
import com.mhd.wms.domain.stockShelfOrder.service.StockShelfOrderDomainService;
|
||||
import com.mhd.wms.domain.taskReceiptMaterialDetail.repository.todo.TaskReceiptMaterialDetailDO;
|
||||
@@ -88,6 +91,8 @@ public class StockReceiptOrderDomainService {
|
||||
@Autowired
|
||||
private StockShelfOrderDomainService stockShelfOrderDomainService;
|
||||
@Autowired
|
||||
private IStockShelfOrderService stockShelfOrderService;
|
||||
@Autowired
|
||||
private IQualityInspectionService qualityInspectionService;
|
||||
@Autowired
|
||||
private IInMaterialDetailSerialNumberService inMaterialDetailSerialNumberService;
|
||||
@@ -145,6 +150,7 @@ public class StockReceiptOrderDomainService {
|
||||
receiptMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
receiptMaterialDetail.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId));
|
||||
receiptMaterialDetail.setReceiptOrderNumber(stockReceiptOrder.getReceiptOrderNumber());
|
||||
receiptMaterialDetail.setGenStockShelf(2); // 设置需要生成上架单
|
||||
receiptMaterialDetail.setCreateBy(loginUser.getUserid());
|
||||
receiptMaterialDetail.setCreateByName(loginUser.getUsername());
|
||||
receiptMaterialDetail.setCreateTime(new Date());
|
||||
@@ -455,6 +461,40 @@ public class StockReceiptOrderDomainService {
|
||||
//根据收货数量生成上架
|
||||
genStockShelfOrder(stockReceiptOrderPO);
|
||||
|
||||
//收货完成后自动生成上架任务
|
||||
try {
|
||||
//查询刚生成的上架单
|
||||
StockShelfOrderDO stockShelfOrderDOQuery = new StockShelfOrderDO();
|
||||
stockShelfOrderDOQuery.setReceiptOrderNumber(stockReceiptOrderPO.getReceiptOrderNumber());
|
||||
stockShelfOrderDOQuery.setTaskDistribution(2); // 查询未下发的上架单
|
||||
List<StockShelfOrderPO> stockShelfOrderPOList = stockShelfOrderService.queryList(stockShelfOrderDOQuery);
|
||||
if (!CollectionUtils.isEmpty(stockShelfOrderPOList)) {
|
||||
//创建上架任务参数
|
||||
StockShelfOrderDO stockShelfOrderDO = new StockShelfOrderDO();
|
||||
stockShelfOrderDO.setShelfOrderIds(stockShelfOrderPOList.stream()
|
||||
.map(StockShelfOrderPO::getShelfOrderId)
|
||||
.collect(Collectors.toList()));
|
||||
//如果没有指定操作人员,使用当前登录用户
|
||||
if (stockShelfOrderDO.getOperatorsBy() == null) {
|
||||
stockShelfOrderDO.setOperatorsBy(loginUser.getUserid());
|
||||
stockShelfOrderDO.setOperatorsName(loginUser.getUsername());
|
||||
}
|
||||
//生成上架任务
|
||||
stockShelfOrderDomainService.genDeliveTask(stockShelfOrderPOList, stockShelfOrderDO);
|
||||
//标记上架单任务已下发
|
||||
stockShelfOrderService.update(null, new UpdateWrapper<StockShelfOrder>().lambda()
|
||||
.set(StockShelfOrder::getTaskDistribution, 1)
|
||||
.set(StockShelfOrder::getTaskDistributionTime, new Date())
|
||||
.set(StockShelfOrder::getUpdateBy, loginUser.getUserid())
|
||||
.set(StockShelfOrder::getUpdateByName, loginUser.getUsername())
|
||||
.set(StockShelfOrder::getUpdateTime, new Date())
|
||||
.in(StockShelfOrder::getShelfOrderId, stockShelfOrderDO.getShelfOrderIds()));
|
||||
}
|
||||
} catch (Exception e) {
|
||||
//如果生成上架任务失败,记录日志但不影响收货完成流程
|
||||
log.error("收货完成后生成上架任务失败,收货单号:{}", stockReceiptOrderPO.getReceiptOrderNumber(), e);
|
||||
}
|
||||
|
||||
//生成收货追溯记录
|
||||
genInventoryStandingDetail(stockReceiptOrderPO);
|
||||
//存在异常 生成记录
|
||||
|
||||
+6
-6
@@ -264,12 +264,12 @@ public class InMaterialDetailDTO extends BaseVOEntity {
|
||||
private Integer isDifferentType;
|
||||
|
||||
// ========== 报关相关明细字段 ==========
|
||||
@ApiModelProperty("规格型号/ITEM(选择物料后自动带出,不可编辑)")
|
||||
@ApiModelProperty("规格型号(选择物料后自动带出,不可编辑)")
|
||||
@Excel(name = "规格型号/ITEM")
|
||||
private String specification;
|
||||
private String specificationModel;
|
||||
|
||||
@ApiModelProperty("商品SKU码(选择物料后自动带出,不可编辑)")
|
||||
@Excel(name = "商品SKU码")
|
||||
@ApiModelProperty("SKU码(选择物料后自动带出,不可编辑)")
|
||||
@Excel(name = "SKU码")
|
||||
private String skuCode;
|
||||
|
||||
@ApiModelProperty("Invoice No.")
|
||||
@@ -286,7 +286,7 @@ public class InMaterialDetailDTO extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty("申报单位")
|
||||
@Excel(name = "申报单位")
|
||||
private String declaredUnit;
|
||||
private String declarationUnit;
|
||||
|
||||
@ApiModelProperty("Batch Ref NO's")
|
||||
@Excel(name = "Batch Ref NO's")
|
||||
@@ -298,7 +298,7 @@ public class InMaterialDetailDTO extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty("原产国")
|
||||
@Excel(name = "原产国")
|
||||
private String countryOfOrigin;
|
||||
private String originCountry;
|
||||
|
||||
@ApiModelProperty("箱号/卡板号")
|
||||
@Excel(name = "箱号/卡板号")
|
||||
|
||||
+24
@@ -215,6 +215,30 @@ public class MaterialBaseInfoDTO extends BaseVOEntity {
|
||||
@ApiModelProperty("法定第二单位")
|
||||
private String statutorySecondUnit;
|
||||
|
||||
@ApiModelProperty("SKU码")
|
||||
private String skuCode;
|
||||
|
||||
@ApiModelProperty("单价")
|
||||
private BigDecimal unitPrice;
|
||||
|
||||
@ApiModelProperty("币制")
|
||||
private String currency;
|
||||
|
||||
@ApiModelProperty("原产国")
|
||||
private String originCountry;
|
||||
|
||||
@ApiModelProperty("HS码")
|
||||
private String hsCode;
|
||||
|
||||
@ApiModelProperty("申报单位")
|
||||
private String declarationUnit;
|
||||
|
||||
@ApiModelProperty("法定单位")
|
||||
private String statutoryUnit;
|
||||
|
||||
@ApiModelProperty("法定第二单位")
|
||||
private String statutorySecondUnit;
|
||||
|
||||
@ApiModelProperty("规格型号")
|
||||
private String specificationModel;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user