fix(wms):出入库查询和导出修改
This commit is contained in:
+32
@@ -36,6 +36,7 @@ import com.mhd.wms.domain.handoverTaskOrder.repository.facade.IHandoverTaskOrder
|
|||||||
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.facade.IInMaterialDetailService;
|
import com.mhd.wms.domain.inMaterialDetail.repository.facade.IInMaterialDetailService;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
||||||
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InStockListMaterialAgg;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
||||||
import com.mhd.wms.domain.materialBaseInfo.entity.MaterialBaseInfo;
|
import com.mhd.wms.domain.materialBaseInfo.entity.MaterialBaseInfo;
|
||||||
import com.mhd.wms.domain.materialBaseInfo.repository.facade.IMaterialBaseInfoService;
|
import com.mhd.wms.domain.materialBaseInfo.repository.facade.IMaterialBaseInfoService;
|
||||||
@@ -242,7 +243,38 @@ public class StockInOrderApplicationService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
List<StockInOrderPO> stockInOrderPOS = stockInOrderDomainService.queryList(stockInOrderDO);
|
List<StockInOrderPO> stockInOrderPOS = stockInOrderDomainService.queryList(stockInOrderDO);
|
||||||
|
if (CollectionUtils.isEmpty(stockInOrderPOS)) {
|
||||||
|
return stockInOrderPOS;
|
||||||
|
}
|
||||||
|
List<String> inOrderNumbers = stockInOrderPOS.stream()
|
||||||
|
.map(StockInOrderPO::getInOrderNumber)
|
||||||
|
.filter(Objects::nonNull)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
|
// 列表页展示:按入库单号批量取去重后的 Invoice No
|
||||||
|
Map<String, String> invoiceNoByNum = new HashMap<>();
|
||||||
|
inMaterialDetailService.selectDistinctInvoiceNoForStockInList(inOrderNumbers)
|
||||||
|
.stream()
|
||||||
|
.filter(a -> StringUtils.isNotBlank(a.getInvoiceNo()))
|
||||||
|
.forEach(a -> invoiceNoByNum.merge(a.getInOrderNumber(), a.getInvoiceNo().trim(), (o, n) -> o + "," + n));
|
||||||
|
|
||||||
|
// 导出场景(needDetail=true):批量取出完整明细树(level=1 父行 + children),按入库单号分组挂到列表
|
||||||
|
Map<String, List<InMaterialDetailPO>> detailByNum = Collections.emptyMap();
|
||||||
|
if (Boolean.TRUE.equals(stockInOrderDO.getNeedDetail()) && !CollectionUtils.isEmpty(inOrderNumbers)) {
|
||||||
|
InMaterialDetailDO detailQuery = new InMaterialDetailDO();
|
||||||
|
detailQuery.setInOrderNumberList(inOrderNumbers);
|
||||||
|
List<InMaterialDetailPO> detailTreeList = inMaterialDetailService.queryListChildren(detailQuery);
|
||||||
|
detailByNum = detailTreeList.stream()
|
||||||
|
.collect(Collectors.groupingBy(InMaterialDetailPO::getInOrderNumber));
|
||||||
|
}
|
||||||
|
|
||||||
for (StockInOrderPO stockInOrderPO : stockInOrderPOS) {
|
for (StockInOrderPO stockInOrderPO : stockInOrderPOS) {
|
||||||
|
if (invoiceNoByNum.containsKey(stockInOrderPO.getInOrderNumber())) {
|
||||||
|
stockInOrderPO.setInvoiceNo(invoiceNoByNum.get(stockInOrderPO.getInOrderNumber()));
|
||||||
|
}
|
||||||
|
if (Boolean.TRUE.equals(stockInOrderDO.getNeedDetail())) {
|
||||||
|
stockInOrderPO.setMaterialDetailList(detailByNum.getOrDefault(stockInOrderPO.getInOrderNumber(), Collections.emptyList()));
|
||||||
|
}
|
||||||
Long inOrderId = stockInOrderPO.getInOrderId();
|
Long inOrderId = stockInOrderPO.getInOrderId();
|
||||||
List<ReceiptOrderAccount> list = receiptOrderAccountService.list(new LambdaQueryWrapper<ReceiptOrderAccount>().eq(ReceiptOrderAccount::getOrderId, inOrderId).eq(ReceiptOrderAccount::getInOrOut, "in"));
|
List<ReceiptOrderAccount> list = receiptOrderAccountService.list(new LambdaQueryWrapper<ReceiptOrderAccount>().eq(ReceiptOrderAccount::getOrderId, inOrderId).eq(ReceiptOrderAccount::getInOrOut, "in"));
|
||||||
stockInOrderPO.setReceiptOrderAccountList(list);
|
stockInOrderPO.setReceiptOrderAccountList(list);
|
||||||
|
|||||||
+24
@@ -253,9 +253,33 @@ public class StockOutOrderApplicationService {
|
|||||||
accountByOrderId = accounts.stream().collect(Collectors.groupingBy(ReceiptOrderAccount::getOrderId));
|
accountByOrderId = accounts.stream().collect(Collectors.groupingBy(ReceiptOrderAccount::getOrderId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 列表页展示:按出库单号批量取去重后的 Invoice No
|
||||||
|
Map<String, String> invoiceNoByNum = new HashMap<>();
|
||||||
|
outMaterialDetailService.selectDistinctInvoiceNoForStockOutList(outOrderNumbers)
|
||||||
|
.stream()
|
||||||
|
.filter(a -> StringUtils.isNotBlank(a.getInvoiceNo()))
|
||||||
|
.forEach(a -> invoiceNoByNum.merge(a.getOutOrderNumber(), a.getInvoiceNo().trim(), (o, n) -> o + "," + n));
|
||||||
|
|
||||||
|
// 导出场景(needDetail=true):批量取出完整明细树(level=1 父行 + children),按出库单号分组挂到列表
|
||||||
|
Map<String, List<OutMaterialDetailPO>> detailByNum = Collections.emptyMap();
|
||||||
|
if (Boolean.TRUE.equals(stockOutOrderDO.getNeedDetail()) && !CollectionUtils.isEmpty(outOrderNumbers)) {
|
||||||
|
OutMaterialDetailDO detailQuery = new OutMaterialDetailDO();
|
||||||
|
detailQuery.setOutOrderNumberList(outOrderNumbers);
|
||||||
|
List<OutMaterialDetailPO> detailTreeList = outMaterialDetailService.queryListChildren(detailQuery);
|
||||||
|
detailByNum = detailTreeList.stream()
|
||||||
|
.collect(Collectors.groupingBy(OutMaterialDetailPO::getOutOrderNumber));
|
||||||
|
}
|
||||||
|
|
||||||
for (StockOutOrderPO stockOutOrderPO : stockOutOrderPOS) {
|
for (StockOutOrderPO stockOutOrderPO : stockOutOrderPOS) {
|
||||||
String outOrderNumber = stockOutOrderPO.getOutOrderNumber();
|
String outOrderNumber = stockOutOrderPO.getOutOrderNumber();
|
||||||
|
|
||||||
|
if (invoiceNoByNum.containsKey(outOrderNumber)) {
|
||||||
|
stockOutOrderPO.setInvoiceNo(invoiceNoByNum.get(outOrderNumber));
|
||||||
|
}
|
||||||
|
if (Boolean.TRUE.equals(stockOutOrderDO.getNeedDetail())) {
|
||||||
|
stockOutOrderPO.setMaterialDetailList(detailByNum.getOrDefault(outOrderNumber, Collections.emptyList()));
|
||||||
|
}
|
||||||
|
|
||||||
List<DeliveryDetailsLink> list = deliveryDetailsLinkService.list(new LambdaQueryWrapper<DeliveryDetailsLink>().eq(DeliveryDetailsLink::getOrderNumber, outOrderNumber));
|
List<DeliveryDetailsLink> list = deliveryDetailsLinkService.list(new LambdaQueryWrapper<DeliveryDetailsLink>().eq(DeliveryDetailsLink::getOrderNumber, outOrderNumber));
|
||||||
stockOutOrderPO.setDeliveryDetailsLinkList(list);
|
stockOutOrderPO.setDeliveryDetailsLinkList(list);
|
||||||
|
|
||||||
|
|||||||
+6
@@ -3,6 +3,7 @@ package com.mhd.wms.domain.inMaterialDetail.repository.facade;
|
|||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
||||||
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InStockListMaterialAgg;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailBaseDO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailBaseDO;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
||||||
import com.mhd.wms.domain.overStock.repository.todo.QueryOrderOverStockDO;
|
import com.mhd.wms.domain.overStock.repository.todo.QueryOrderOverStockDO;
|
||||||
@@ -31,6 +32,11 @@ public interface IInMaterialDetailService extends IService<InMaterialDetail>
|
|||||||
*/
|
*/
|
||||||
public List<InMaterialDetailPO> queryListChildren(InMaterialDetailDO inMaterialDetailDO);
|
public List<InMaterialDetailPO> queryListChildren(InMaterialDetailDO inMaterialDetailDO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入库列表页:按入库单号批量取去重后的 Invoice No(仅 level=1)
|
||||||
|
*/
|
||||||
|
List<InStockListMaterialAgg> selectDistinctInvoiceNoForStockInList(List<String> inOrderNumbers);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增物料明细
|
* 新增物料明细
|
||||||
*/
|
*/
|
||||||
|
|||||||
+7
@@ -3,8 +3,10 @@ package com.mhd.wms.domain.inMaterialDetail.repository.mapper;
|
|||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
||||||
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InStockListMaterialAgg;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
||||||
import com.mhd.wms.domain.overStock.repository.todo.QueryOrderOverStockDO;
|
import com.mhd.wms.domain.overStock.repository.todo.QueryOrderOverStockDO;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -26,4 +28,9 @@ public interface InMaterialDetailMapper extends BaseMapper<InMaterialDetail>
|
|||||||
*/
|
*/
|
||||||
public List<InMaterialDetailPO> queryInOrderList(QueryOrderOverStockDO queryOrderOverStockDO);
|
public List<InMaterialDetailPO> queryInOrderList(QueryOrderOverStockDO queryOrderOverStockDO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入库列表页:按入库单号批量取去重后的 Invoice No(仅 level=1)
|
||||||
|
*/
|
||||||
|
List<InStockListMaterialAgg> selectDistinctInvoiceNoForStockInList(@Param("inOrderNumbers") List<String> inOrderNumbers);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+10
@@ -14,6 +14,7 @@ import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
|
|||||||
import com.mhd.wms.domain.inMaterialDetail.repository.facade.IInMaterialDetailService;
|
import com.mhd.wms.domain.inMaterialDetail.repository.facade.IInMaterialDetailService;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.mapper.InMaterialDetailMapper;
|
import com.mhd.wms.domain.inMaterialDetail.repository.mapper.InMaterialDetailMapper;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InMaterialDetailPO;
|
||||||
|
import com.mhd.wms.domain.inMaterialDetail.repository.po.InStockListMaterialAgg;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailBaseDO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailBaseDO;
|
||||||
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
import com.mhd.wms.domain.inMaterialDetail.repository.todo.InMaterialDetailDO;
|
||||||
import com.mhd.wms.domain.materialBaseInfo.repository.facade.IMaterialBaseInfoService;
|
import com.mhd.wms.domain.materialBaseInfo.repository.facade.IMaterialBaseInfoService;
|
||||||
@@ -26,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.CollectionUtils;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -86,6 +88,14 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
|
|||||||
return inMaterialDetailPOParentList;
|
return inMaterialDetailPOParentList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<InStockListMaterialAgg> selectDistinctInvoiceNoForStockInList(List<String> inOrderNumbers) {
|
||||||
|
if (CollectionUtils.isEmpty(inOrderNumbers)) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
return inMaterialDetailMapper.selectDistinctInvoiceNoForStockInList(inOrderNumbers);
|
||||||
|
}
|
||||||
|
|
||||||
private List<InMaterialDetailPO> getChildren(Long parentUniqueId, List<InMaterialDetailPO> inMaterialDetailPOList, Integer maxLevel){
|
private List<InMaterialDetailPO> getChildren(Long parentUniqueId, List<InMaterialDetailPO> inMaterialDetailPOList, Integer maxLevel){
|
||||||
List<InMaterialDetailPO> childrenCityList = inMaterialDetailPOList.stream().filter(materialDetailPO -> parentUniqueId.equals(materialDetailPO.getParentUniqueId())).collect(Collectors.toList());
|
List<InMaterialDetailPO> childrenCityList = inMaterialDetailPOList.stream().filter(materialDetailPO -> parentUniqueId.equals(materialDetailPO.getParentUniqueId())).collect(Collectors.toList());
|
||||||
if (!CollectionUtils.isEmpty(childrenCityList)){
|
if (!CollectionUtils.isEmpty(childrenCityList)){
|
||||||
|
|||||||
+12
@@ -0,0 +1,12 @@
|
|||||||
|
package com.mhd.wms.domain.inMaterialDetail.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入库列表页批量取去重后的 Invoice No。
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class InStockListMaterialAgg {
|
||||||
|
private String inOrderNumber;
|
||||||
|
private String invoiceNo;
|
||||||
|
}
|
||||||
+5
@@ -41,6 +41,11 @@ public interface IOutMaterialDetailService extends IService<OutMaterialDetail>
|
|||||||
*/
|
*/
|
||||||
List<OutStockListMaterialAgg> selectAggregatesForStockOutList(List<String> outOrderNumbers);
|
List<OutStockListMaterialAgg> selectAggregatesForStockOutList(List<String> outOrderNumbers);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库列表页:按出库单号批量取去重后的 Invoice No(仅 level=1)
|
||||||
|
*/
|
||||||
|
List<OutStockListMaterialAgg> selectDistinctInvoiceNoForStockOutList(List<String> outOrderNumbers);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增物料明细
|
* 新增物料明细
|
||||||
*/
|
*/
|
||||||
|
|||||||
+5
@@ -60,4 +60,9 @@ public interface OutMaterialDetailMapper extends BaseMapper<OutMaterialDetail>
|
|||||||
* 出库列表页:按出库单号批量聚合(仅 level=1)
|
* 出库列表页:按出库单号批量聚合(仅 level=1)
|
||||||
*/
|
*/
|
||||||
List<OutStockListMaterialAgg> selectAggregatesForStockOutList(@Param("outOrderNumbers") List<String> outOrderNumbers);
|
List<OutStockListMaterialAgg> selectAggregatesForStockOutList(@Param("outOrderNumbers") List<String> outOrderNumbers);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库列表页:按出库单号批量取去重后的 Invoice No(仅 level=1)
|
||||||
|
*/
|
||||||
|
List<OutStockListMaterialAgg> selectDistinctInvoiceNoForStockOutList(@Param("outOrderNumbers") List<String> outOrderNumbers);
|
||||||
}
|
}
|
||||||
|
|||||||
+8
@@ -130,6 +130,14 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
|
|||||||
return outMaterialDetailMapper.selectAggregatesForStockOutList(outOrderNumbers);
|
return outMaterialDetailMapper.selectAggregatesForStockOutList(outOrderNumbers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<OutStockListMaterialAgg> selectDistinctInvoiceNoForStockOutList(List<String> outOrderNumbers) {
|
||||||
|
if (CollectionUtils.isEmpty(outOrderNumbers)) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
return outMaterialDetailMapper.selectDistinctInvoiceNoForStockOutList(outOrderNumbers);
|
||||||
|
}
|
||||||
|
|
||||||
private List<OutMaterialDetailPO> getChildren(Long parentUniqueId, List<OutMaterialDetailPO> materialDetailPOList, Integer maxLevel){
|
private List<OutMaterialDetailPO> getChildren(Long parentUniqueId, List<OutMaterialDetailPO> materialDetailPOList, Integer maxLevel){
|
||||||
List<OutMaterialDetailPO> childrenCityList = materialDetailPOList.stream().filter(materialDetailPO -> parentUniqueId.equals(materialDetailPO.getParentUniqueId())).collect(Collectors.toList());
|
List<OutMaterialDetailPO> childrenCityList = materialDetailPOList.stream().filter(materialDetailPO -> parentUniqueId.equals(materialDetailPO.getParentUniqueId())).collect(Collectors.toList());
|
||||||
if (!CollectionUtils.isEmpty(childrenCityList)){
|
if (!CollectionUtils.isEmpty(childrenCityList)){
|
||||||
|
|||||||
+2
@@ -13,4 +13,6 @@ public class OutStockListMaterialAgg {
|
|||||||
private BigDecimal totalOutboundQuantity;
|
private BigDecimal totalOutboundQuantity;
|
||||||
private BigDecimal checkQuantitySum;
|
private BigDecimal checkQuantitySum;
|
||||||
private Integer materialKindCountDistinct;
|
private Integer materialKindCountDistinct;
|
||||||
|
/** 列表页展示用:该出库单的 Invoice No */
|
||||||
|
private String invoiceNo;
|
||||||
}
|
}
|
||||||
|
|||||||
+3
@@ -235,6 +235,9 @@ public class StockInOrderPO extends BaseVOEntity {
|
|||||||
@Excel(name = "备注")
|
@Excel(name = "备注")
|
||||||
private String remark;
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("Invoice No(多个用逗号隔开)")
|
||||||
|
private String invoiceNo;
|
||||||
|
|
||||||
@ApiModelProperty("物料明细")
|
@ApiModelProperty("物料明细")
|
||||||
private List<InMaterialDetailPO> materialDetailList;
|
private List<InMaterialDetailPO> materialDetailList;
|
||||||
|
|
||||||
|
|||||||
+3
@@ -448,4 +448,7 @@ public class StockInOrderDO extends BaseVOEntity {
|
|||||||
|
|
||||||
@ApiModelProperty("任务移除用户ID")
|
@ApiModelProperty("任务移除用户ID")
|
||||||
private String removeUserId;
|
private String removeUserId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否返回物料明细(导出时传 true)")
|
||||||
|
private Boolean needDetail;
|
||||||
}
|
}
|
||||||
+3
@@ -256,6 +256,9 @@ public class StockOutOrderPO extends BaseVOEntity {
|
|||||||
@Excel(name = "备注")
|
@Excel(name = "备注")
|
||||||
private String remark;
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("Invoice No(多个用逗号隔开)")
|
||||||
|
private String invoiceNo;
|
||||||
|
|
||||||
@ApiModelProperty("物料明细")
|
@ApiModelProperty("物料明细")
|
||||||
private List<OutMaterialDetailPO> materialDetailList;
|
private List<OutMaterialDetailPO> materialDetailList;
|
||||||
|
|
||||||
|
|||||||
+3
@@ -513,4 +513,7 @@ public class StockOutOrderDO extends BaseVOEntity {
|
|||||||
|
|
||||||
@ApiModelProperty("任务移除用户ID")
|
@ApiModelProperty("任务移除用户ID")
|
||||||
private String removeUserId;
|
private String removeUserId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否返回物料明细(导出时传 true)")
|
||||||
|
private Boolean needDetail;
|
||||||
}
|
}
|
||||||
@@ -445,4 +445,7 @@ public class StockInOrderDTO extends StockInOrderBaseDTO {
|
|||||||
|
|
||||||
@ApiModelProperty("任务移除用户ID")
|
@ApiModelProperty("任务移除用户ID")
|
||||||
private String removeUserId;
|
private String removeUserId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否返回物料明细(导出时传 true)")
|
||||||
|
private Boolean needDetail;
|
||||||
}
|
}
|
||||||
@@ -502,4 +502,7 @@ public class StockOutOrderDTO extends StockOutOrderBaseDTO {
|
|||||||
|
|
||||||
@ApiModelProperty("任务移除用户ID")
|
@ApiModelProperty("任务移除用户ID")
|
||||||
private String removeUserId;
|
private String removeUserId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否返回物料明细(导出时传 true)")
|
||||||
|
private Boolean needDetail;
|
||||||
}
|
}
|
||||||
@@ -451,4 +451,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
GROUP BY a.out_order_number
|
GROUP BY a.out_order_number
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 出库列表页:按出库单号批量取去重后的 Invoice No -->
|
||||||
|
<select id="selectDistinctInvoiceNoForStockOutList" resultType="com.mhd.wms.domain.outMaterialDetail.repository.po.OutStockListMaterialAgg">
|
||||||
|
SELECT DISTINCT
|
||||||
|
a.out_order_number AS outOrderNumber,
|
||||||
|
a.INVOICE_NO AS invoiceNo
|
||||||
|
FROM out_material_detail a
|
||||||
|
WHERE a.del_flag = 1
|
||||||
|
AND a.level = 1
|
||||||
|
AND a.INVOICE_NO IS NOT NULL
|
||||||
|
AND a.INVOICE_NO != ''
|
||||||
|
AND a.out_order_number IN
|
||||||
|
<foreach collection="outOrderNumbers" item="num" open="(" separator="," close=")">
|
||||||
|
#{num}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
@@ -356,4 +356,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<include refid="joinStockInOrderPoWhere"/>
|
<include refid="joinStockInOrderPoWhere"/>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 入库列表页:按入库单号批量取去重后的 Invoice No -->
|
||||||
|
<select id="selectDistinctInvoiceNoForStockInList" resultType="com.mhd.wms.domain.inMaterialDetail.repository.po.InStockListMaterialAgg">
|
||||||
|
SELECT DISTINCT
|
||||||
|
a.in_order_number AS inOrderNumber,
|
||||||
|
a.INVOICE_NO AS invoiceNo
|
||||||
|
FROM in_material_detail a
|
||||||
|
WHERE a.del_flag = 1
|
||||||
|
AND a.level = 1
|
||||||
|
AND a.INVOICE_NO IS NOT NULL
|
||||||
|
AND a.INVOICE_NO != ''
|
||||||
|
AND a.in_order_number IN
|
||||||
|
<foreach collection="inOrderNumbers" item="num" open="(" separator="," close=")">
|
||||||
|
#{num}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
Reference in New Issue
Block a user