详情查询修改
This commit is contained in:
+2
-1
@@ -106,7 +106,8 @@ public class BatchDetailApplicationService {
|
|||||||
throw new ServiceException("获取物料规则信息失败");
|
throw new ServiceException("获取物料规则信息失败");
|
||||||
}
|
}
|
||||||
MaterialGoodsRuleFeign materialGoodsRuleFeign = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), MaterialGoodsRuleFeign.class);
|
MaterialGoodsRuleFeign materialGoodsRuleFeign = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), MaterialGoodsRuleFeign.class);
|
||||||
if (ObjectUtil.isNull(materialGoodsRuleFeign)){
|
// 无商品规则或未绑定批次模板时,不返回任何批次属性(避免 batchId 空导致查全表)
|
||||||
|
if (ObjectUtil.isNull(materialGoodsRuleFeign) || materialGoodsRuleFeign.getBatchId() == null) {
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
return getBatchDetailListByBatchId(materialGoodsRuleFeign.getBatchId());
|
return getBatchDetailListByBatchId(materialGoodsRuleFeign.getBatchId());
|
||||||
|
|||||||
+5
@@ -7,6 +7,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
/**
|
/**
|
||||||
* 批次管理详情
|
* 批次管理详情
|
||||||
@@ -66,6 +67,10 @@ public class BatchDetailDomainService {
|
|||||||
* 获取批次管理详情详细信息
|
* 获取批次管理详情详细信息
|
||||||
*/
|
*/
|
||||||
public List<BatchDetailPO> getBatchDetailListByBatchId(Long batchId) {
|
public List<BatchDetailPO> getBatchDetailListByBatchId(Long batchId) {
|
||||||
|
// batchId 为空时不能查列表:XML 中 batchId 为 null 不拼条件,会返回全部批次属性
|
||||||
|
if (batchId == null) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
BatchDetailDO batchDetailDO = new BatchDetailDO();
|
BatchDetailDO batchDetailDO = new BatchDetailDO();
|
||||||
batchDetailDO.setBatchId(batchId);
|
batchDetailDO.setBatchId(batchId);
|
||||||
return batchDetailService.queryList(batchDetailDO);
|
return batchDetailService.queryList(batchDetailDO);
|
||||||
|
|||||||
+17
-5
@@ -24,9 +24,11 @@ import com.mhd.wms.domain.pickingMaterialDetail.service.PickingMaterialDetailDom
|
|||||||
import com.mhd.wms.domain.pickingOrder.repository.po.PickingOrderPO;
|
import com.mhd.wms.domain.pickingOrder.repository.po.PickingOrderPO;
|
||||||
import com.mhd.wms.domain.pickingOrder.repository.todo.PickingOrderDO;
|
import com.mhd.wms.domain.pickingOrder.repository.todo.PickingOrderDO;
|
||||||
import com.mhd.wms.domain.pickingOrder.service.PickingOrderDomainService;
|
import com.mhd.wms.domain.pickingOrder.service.PickingOrderDomainService;
|
||||||
|
import com.mhd.wms.domain.materialGoodsRule.repository.facade.IMaterialGoodsRuleService;
|
||||||
import com.mhd.wms.domain.outMaterialDetail.repository.facade.IOutMaterialDetailService;
|
import com.mhd.wms.domain.outMaterialDetail.repository.facade.IOutMaterialDetailService;
|
||||||
import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail;
|
import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail;
|
||||||
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
|
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
|
||||||
|
import com.mhd.wms.util.ReceiptBatchDetailFilter;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -58,6 +60,8 @@ public class PickingOrderApplicationService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private SystemServiceFeign systemServiceFeign;
|
private SystemServiceFeign systemServiceFeign;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private IMaterialGoodsRuleService materialGoodsRuleService;
|
||||||
|
@Autowired
|
||||||
private IOutMaterialDetailService outMaterialDetailService;
|
private IOutMaterialDetailService outMaterialDetailService;
|
||||||
|
|
||||||
|
|
||||||
@@ -212,11 +216,19 @@ public class PickingOrderApplicationService {
|
|||||||
if (ajaxResult != null && "200".equals(String.valueOf(ajaxResult.get("code")))) {
|
if (ajaxResult != null && "200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||||
List<BatchDetailFeignPO> batchDetailFeignPOList = JSON.parseArray(
|
List<BatchDetailFeignPO> batchDetailFeignPOList = JSON.parseArray(
|
||||||
JSONObject.toJSONString(ajaxResult.get("data")), BatchDetailFeignPO.class);
|
JSONObject.toJSONString(ajaxResult.get("data")), BatchDetailFeignPO.class);
|
||||||
if (!CollectionUtils.isEmpty(batchDetailFeignPOList)) {
|
if (CollectionUtils.isEmpty(batchDetailFeignPOList)) {
|
||||||
// 过滤isDisplay=1的属性
|
continue;
|
||||||
List<BatchDetailFeignPO> filteredList = batchDetailFeignPOList.stream()
|
}
|
||||||
.filter(batchDetail -> batchDetail.getIsDisplay() != null && batchDetail.getIsDisplay() == 1)
|
// 物料未在商品规则中绑定批次模板时不返回批次属性(与收货单组装逻辑一致)
|
||||||
.collect(Collectors.toList());
|
List<BatchDetailFeignPO> alignedToRule = ReceiptBatchDetailFilter.filterByMaterialGoodsRule(
|
||||||
|
materialBaseInfoId, batchDetailFeignPOList, materialGoodsRuleService);
|
||||||
|
if (CollectionUtils.isEmpty(alignedToRule)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
List<BatchDetailFeignPO> filteredList = alignedToRule.stream()
|
||||||
|
.filter(batchDetail -> batchDetail.getIsDisplay() != null && batchDetail.getIsDisplay() == 1)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
if (!CollectionUtils.isEmpty(filteredList)) {
|
||||||
batchDetailMap.put(materialBaseInfoId, filteredList);
|
batchDetailMap.put(materialBaseInfoId, filteredList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user