fix 到货单合并入库单
This commit is contained in:
parent
64c4e2f94d
commit
00e0126b4a
@ -59,17 +59,20 @@ public class DeliveryController {
|
||||
List<String> nameList = new ArrayList<>();
|
||||
// 判定是否是到库单
|
||||
String typeByKey = deliveryService.getByKey(siteName, receiveRequestName).getReceiveRequestType();
|
||||
boolean isDelivery = typeByKey.equals(ReceiveTypeEnums.DK.getCode());
|
||||
if (isDelivery) {
|
||||
// 到货单
|
||||
String deliveryName = null;
|
||||
if (typeByKey.equals(ReceiveTypeEnums.DK.getCode())) {
|
||||
// 到库单(找出该单据下的所有的采购单)
|
||||
nameList = deliveryService.getReceiveByDelivery(siteName, receiveRequestName)
|
||||
.stream().map(MaterialReceiveRequest::getReceiveRequestName).collect(Collectors.toList());
|
||||
deliveryName = receiveRequestName;
|
||||
} else {
|
||||
// 采购单
|
||||
nameList.add(receiveRequestName);
|
||||
}
|
||||
// 获取采购单明细及批次
|
||||
return AjaxResult.me().setSuccess(true).setResultObj(deliveryService.getStoreDetail(siteName, nameList, isDelivery));
|
||||
return AjaxResult.me().setSuccess(true).setResultObj(
|
||||
deliveryService.getStoreDetail(siteName, nameList, deliveryName));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -41,7 +41,7 @@ public interface DeliveryDao {
|
||||
@MapKey("storeDetail")
|
||||
List<Map<String, Object>> getStoreDetail(@Param("siteName") String siteName,
|
||||
@Param("nameList") List<String> nameList,
|
||||
@Param("isDelivery") Boolean isDelivery);
|
||||
@Param("deliveryName") String deliveryName);
|
||||
|
||||
/**
|
||||
* 获取入库批次
|
||||
|
@ -29,10 +29,10 @@ public interface IDeliveryService {
|
||||
* 获取采购单明细及批次
|
||||
* @param siteName 组织
|
||||
* @param nameList 名称
|
||||
* @param isDelivery 是否到库
|
||||
* @param deliveryName 到库单号
|
||||
* @return 采购订单
|
||||
*/
|
||||
ReceiveDetailVo getStoreDetail(String siteName, List<String> nameList, Boolean isDelivery);
|
||||
ReceiveDetailVo getStoreDetail(String siteName, List<String> nameList, String deliveryName);
|
||||
|
||||
/**
|
||||
* 根据 key 获取值
|
||||
|
@ -58,10 +58,10 @@ public class DeliveryServiceImpl implements IDeliveryService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReceiveDetailVo getStoreDetail(String siteName, List<String> nameList, Boolean isDelivery) {
|
||||
public ReceiveDetailVo getStoreDetail(String siteName, List<String> nameList, String deliveryName) {
|
||||
ReceiveDetailVo receiveDetailVo = new ReceiveDetailVo();
|
||||
// 采购单明细
|
||||
List<Map<String, Object>> storeDetail = deliveryDao.getStoreDetail(siteName, nameList, isDelivery);
|
||||
List<Map<String, Object>> storeDetail = deliveryDao.getStoreDetail(siteName, nameList, deliveryName);
|
||||
receiveDetailVo.setStoreDetail(storeDetail);
|
||||
// 批次
|
||||
List<Map<String, Object>> storeCharge = deliveryDao.getStoreCharge(siteName, nameList);
|
||||
|
@ -62,11 +62,12 @@
|
||||
</foreach>
|
||||
GROUP BY m.MATERIALSPECNAME
|
||||
)
|
||||
<if test="isDelivery">
|
||||
<if test="deliveryName != null">
|
||||
,DELIVERY AS (
|
||||
SELECT sum(md.DELIVERYNUM) DELIVERYNUM, md.MATERIALSPECNAME MATERIALSPECNAME
|
||||
FROM MATERIALRECEIVEDELIVERY md
|
||||
WHERE md.RECEIVEREQUESTNAME IN
|
||||
WHERE md.DELIVERYNAME = #{deliveryName}
|
||||
and md.RECEIVEREQUESTNAME IN
|
||||
<foreach item="name" index="index" collection="nameList" open="(" separator="," close=")">
|
||||
#{name}
|
||||
</foreach>
|
||||
@ -74,10 +75,10 @@
|
||||
)
|
||||
</if>
|
||||
SELECT distinct MAIN.RECEIVEDQUANTITY, MAIN.MINUSQTY,
|
||||
<if test="isDelivery">
|
||||
<if test="deliveryName != null">
|
||||
DELIVERY.DELIVERYNUM REQUESTQUANTITY,
|
||||
</if>
|
||||
<if test="!isDelivery">
|
||||
<if test="deliveryName == null">
|
||||
MAIN.REQUESTQUANTITY REQUESTQUANTITY,
|
||||
</if>
|
||||
TO_CHAR( SYSDATE, 'YYYY-MM-DD' ) RECEIVETIME, TO_CHAR( SYSDATE, 'YYYY-MM-DD' ) MAKEDATE, '1' RECEIVEREQUESTDETAILNAME, '是' IS_BATCH,
|
||||
@ -105,7 +106,7 @@
|
||||
AND BB.MATERIALSPECNAME = m.MATERIALSPECNAME
|
||||
AND BB.SDK_ID = m.SDK_ID
|
||||
AND BB.PHASE = m3.PHASE
|
||||
<if test="isDelivery">
|
||||
<if test="deliveryName != null">
|
||||
INNER JOIN DELIVERY ON DELIVERY.MATERIALSPECNAME = m.MATERIALSPECNAME
|
||||
</if>
|
||||
WHERE ( m2.RETURNFLAG IS NULL OR m2.RETURNFLAG != 'Y' )
|
||||
|
Loading…
x
Reference in New Issue
Block a user