Merge branch 'main' of http://162.14.99.253:3000/10539622/2025-03-JS-SDK-svr
This commit is contained in:
commit
da6844026e
@ -0,0 +1,17 @@
|
||||
package com.cim.idm.constants.receive;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum IsBatchEnums {
|
||||
Y("Y", "是批次"),
|
||||
N("N", "不是批次");
|
||||
|
||||
private final String code;
|
||||
private final String info;
|
||||
|
||||
IsBatchEnums(String code, String info) {
|
||||
this.code = code;
|
||||
this.info = info;
|
||||
}
|
||||
}
|
@ -2,6 +2,7 @@ package com.cim.idm.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cim.idm.constants.delivery.DeliveryStateEnums;
|
||||
import com.cim.idm.constants.delivery.DeliveryTypeEnums;
|
||||
import com.cim.idm.exception.GlobalException;
|
||||
import com.cim.idm.model.dto.delivery.DeliveryDelDto;
|
||||
import com.cim.idm.model.dto.delivery.DeliveryDto;
|
||||
@ -71,7 +72,7 @@ public class DeliveryController {
|
||||
if (Objects.nonNull(byKey)) {
|
||||
deliveryName = byKey.getDeliveryName();
|
||||
// 到库单(找出该单据下的所有的采购单)
|
||||
nameList = deliveryService.getReceiveByDelivery(storeDetailDto)
|
||||
nameList = deliveryService.getRelByDelivery(storeDetailDto)
|
||||
.stream().map(MaterialDeliveryReceive::getReceiveRequestName).collect(Collectors.toList());
|
||||
} else {
|
||||
// 采购单
|
||||
@ -85,8 +86,16 @@ public class DeliveryController {
|
||||
throw new GlobalException("不存在该单据");
|
||||
}
|
||||
// 获取采购单明细及批次
|
||||
String deliveryType = params.get("deliveryType");
|
||||
if (deliveryType.equals(DeliveryTypeEnums.BATCH.getCode())) {
|
||||
// 批次
|
||||
return AjaxResult.me().setSuccess(true).setResultObj(
|
||||
deliveryService.getStoreDetail(storeDetailDto.getSiteName(), nameList, deliveryName));
|
||||
deliveryService.getStoreDetail(storeDetailDto.getDocumentName(), storeDetailDto.getSiteName(), nameList, deliveryName));
|
||||
} else {
|
||||
// 辅材
|
||||
return AjaxResult.me().setSuccess(true).setResultObj(
|
||||
deliveryService.getMaterialDetail(storeDetailDto.getDocumentName(), storeDetailDto.getSiteName(), nameList, deliveryName));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2,13 +2,19 @@ package com.cim.idm.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cim.idm.constants.delivery.DeliveryStateEnums;
|
||||
import com.cim.idm.framework.IDMFrameServiceProxy;
|
||||
import com.cim.idm.framework.data.EventInfo;
|
||||
import com.cim.idm.model.dto.delivery.DeliveryEditDto;
|
||||
import com.cim.idm.model.dto.delivery.StoreDetailDto;
|
||||
import com.cim.idm.model.dto.packing.MaterialPackingListDto;
|
||||
import com.cim.idm.model.po.MaterialReceiveRequest;
|
||||
import com.cim.idm.model.MaterialreceiveActDto;
|
||||
import com.cim.idm.model.dto.TrackOutBoDto;
|
||||
import com.cim.idm.model.po.delivery.MaterialDelivery;
|
||||
import com.cim.idm.mwmsextend.materialpacking.service.MaterialPackingServiceImpl;
|
||||
import com.cim.idm.service.IDeliveryService;
|
||||
import com.cim.idm.service.IMaterialPackingService;
|
||||
import com.cim.idm.service.impl.QMSServiceImpl;
|
||||
import com.cim.idm.service.impl.ToSAPServiceImpl;
|
||||
import com.cim.idm.utils.AjaxResult;
|
||||
@ -17,7 +23,6 @@ import com.cim.idm.wmsextend.generic.errorHandler.CustomException;
|
||||
import com.cim.idm.wmspackage.materialpacking.MaterialPackingServiceProxy;
|
||||
import com.cim.idm.wmspackage.materialpacking.management.data.MaterialPacking;
|
||||
import com.cim.idm.wmspackage.materialpacking.management.data.MaterialPackingKey;
|
||||
import com.cim.idm.wmspackage.materialpacking.management.info.RemoveInfo;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -43,6 +48,9 @@ public class MaterialReceiveActController {
|
||||
@Resource
|
||||
private IDeliveryService deliveryService;
|
||||
|
||||
@Resource
|
||||
private IMaterialPackingService mpService;
|
||||
|
||||
private static Log log = LogFactory.getLog(MaterialReceiveActController.class);
|
||||
private EventInfo makeEventInfo;
|
||||
|
||||
@ -176,15 +184,6 @@ public class MaterialReceiveActController {
|
||||
String receiveRequestDetailName = box.getReceiveRequestDetailName();
|
||||
// 单据
|
||||
String receiveRequestName = boxs.getReceiveRequestName();
|
||||
// 判断是否是倒库单据
|
||||
/*MaterialReceiveRequest byKey = deliveryService.getByKey(boxs.getSiteName(), boxs.getReceiveRequestName());
|
||||
if (byKey.getReceiveRequestType().equals(ReceiveTypeEnums.DK.getCode())) {
|
||||
// 检索该到库订单下该物料的采购订单的 name
|
||||
List<MaterialReceiveRequest> collect = deliveryService.getReceiveByDelivery(boxs.getSiteName(), boxs.getReceiveRequestName())
|
||||
.stream().filter(item -> item.getMaterialSpecName().equals(materialSpecName)).collect(Collectors.toList());
|
||||
// 检查剩余数量
|
||||
// @TODO
|
||||
}*/
|
||||
String remark = box.getRemark();
|
||||
String sdkid = box.getSdkid() == null ? "" : box.getSdkid();
|
||||
String shipRequestDetailName = box.getShipRequestDetailName();
|
||||
@ -307,46 +306,27 @@ public class MaterialReceiveActController {
|
||||
|
||||
@RequestMapping(value = "/DeleteTrackOutBox", method = RequestMethod.POST)
|
||||
public AjaxResult DeleteTrackOutBox(@RequestBody JSONObject in ) throws Exception{
|
||||
// 获取属性
|
||||
TrackOutBoDto boxs = JSON.toJavaObject(in, TrackOutBoDto.class);
|
||||
MaterialreceiveActDto box = boxs.getMaterialreceiveAct();
|
||||
String user = boxs.getUser();
|
||||
String materialSpecName = box.getMaterialSpecName();
|
||||
String receiveRequestName = box.getReceiveRequestName();
|
||||
String sdkid = box.getSdkid();
|
||||
String phase = box.getPhase();
|
||||
String siteName = box.getSiteName();
|
||||
makeEventInfo = new EventInfoUtil().makeEventInfo("DeleteTrackOutBox", user, "DeleteTrackOutBox");
|
||||
String sql = " SELECT * FROM MATERIALPACKING m WHERE RECEIVEREQUESTNAME = :RECEIVEREQUESTNAME"
|
||||
+ " AND MATERIALSPECNAME = :MATERIALSPECNAME AND (:PHASE IS NULL OR PHASE = :PHASE) AND (:SDK_ID IS NULL OR SDK_ID = :SDK_ID) AND STOCKSTATE = 'Created'";
|
||||
Map<String, Object> hashMap = new HashMap<String,Object> ();
|
||||
hashMap.put("MATERIALSPECNAME", materialSpecName);
|
||||
hashMap.put("RECEIVEREQUESTNAME", receiveRequestName);
|
||||
hashMap.put("PHASE", phase);
|
||||
hashMap.put("SDK_ID", sdkid);
|
||||
List<Map<String, Object>> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql, hashMap);
|
||||
// 获取列表
|
||||
MaterialPackingListDto dto = new MaterialPackingListDto();
|
||||
dto.setMaterialSpecName(materialSpecName);
|
||||
dto.setReceiveRequestName(receiveRequestName);
|
||||
dto.setPhase(box.getPhase());
|
||||
dto.setSdkId(box.getSdkid());
|
||||
List<Map<String, Object>> queryForList = mpService.getMaterialPacking(dto);
|
||||
for (Map<String, Object> map : queryForList) {
|
||||
String materialPackingName = map.get("MATERIALPACKINGNAME").toString();
|
||||
MaterialPackingKey materialPackingKey = new MaterialPackingKey(siteName, materialPackingName);
|
||||
RemoveInfo removeInfo = new RemoveInfo();
|
||||
MaterialPackingServiceProxy.getMaterialPackingService().remove(materialPackingKey,makeEventInfo,removeInfo);
|
||||
// 找到条码明细表的数据,先更新订单在删除条码明细
|
||||
String selectSql = "SELECT * FROM MATERIALPACKINGSUB m WHERE m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME";
|
||||
hashMap.put("MATERIALPACKINGNAME", materialPackingName);
|
||||
List<Map<String, Object>> queryForList2 = IDMFrameServiceProxy.getSqlTemplate().queryForList(selectSql, hashMap);
|
||||
for (Map<String, Object> map2 : queryForList2) {
|
||||
String qty = map2.get("QTY").toString();
|
||||
String receiveRequestName2 = map2.get("RECEIVEREQUESTNAME").toString();
|
||||
String receiveRequestDetailName2 = map2.get("RECEIVEREQUESTDETAILNAME").toString();
|
||||
hashMap.put("RECEIVEREQUESTNAME", receiveRequestName2);
|
||||
hashMap.put("RECEIVEREQUESTDETAILNAME", receiveRequestDetailName2);
|
||||
hashMap.put("QTY", qty);
|
||||
String updateSql = "UPDATE MATERIALRECEIVEREQUESTDETAIL T SET T.RECEIVEDQUANTITY = T.RECEIVEDQUANTITY - :QTY "
|
||||
+ "WHERE T.RECEIVEREQUESTNAME = :RECEIVEREQUESTNAME AND T.RECEIVEREQUESTDETAILNAME = :RECEIVEREQUESTDETAILNAME";
|
||||
IDMFrameServiceProxy.getSqlTemplate().update(updateSql, hashMap);
|
||||
|
||||
String deleteSql = "DELETE FROM MATERIALPACKINGSUB m WHERE m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME AND RECEIVEREQUESTNAME = :RECEIVEREQUESTNAME";
|
||||
IDMFrameServiceProxy.getSqlTemplate().update(deleteSql, hashMap);
|
||||
}
|
||||
Map<String, Object> hashMap = new HashMap<> ();
|
||||
hashMap.put("MATERIALSPECNAME", materialSpecName);
|
||||
String materialPackingName = map.get("MATERIALPACKINGNAME").toString();
|
||||
mpService.delMaterialPacking(hashMap, materialPackingName, siteName, makeEventInfo);
|
||||
}
|
||||
//更新订单数量
|
||||
return AjaxResult.me().setResultObj(null);
|
||||
@ -355,36 +335,18 @@ public class MaterialReceiveActController {
|
||||
|
||||
@RequestMapping(value = "/DeleteTrackOutThisBox", method = RequestMethod.POST)
|
||||
public AjaxResult DeleteTrackOutThisBox(@RequestBody JSONObject in ) throws Exception{
|
||||
// 获取属性
|
||||
TrackOutBoDto boxs = JSON.toJavaObject(in, TrackOutBoDto.class);
|
||||
MaterialreceiveActDto box = boxs.getMaterialreceiveAct();
|
||||
String user = boxs.getUser();
|
||||
String materialSpecName = box.getMaterialSpecName();
|
||||
String materialPackingName2 = box.getMaterialPackingName();
|
||||
String siteName = "SDK";
|
||||
String materialPackingName = box.getMaterialPackingName();
|
||||
String siteName = box.getSiteName();
|
||||
makeEventInfo = new EventInfoUtil().makeEventInfo("DeleteTrackOutBox", user, "DeleteTrackOutBox");
|
||||
Map<String, Object> hashMap = new HashMap<String,Object> ();
|
||||
hashMap.put("MATERIALSPECNAME", materialSpecName);
|
||||
MaterialPackingKey materialPackingKey = new MaterialPackingKey(siteName, materialPackingName2);
|
||||
RemoveInfo removeInfo = new RemoveInfo();
|
||||
MaterialPackingServiceProxy.getMaterialPackingService().remove(materialPackingKey,makeEventInfo,removeInfo);
|
||||
// 找到条码明细表的数据,先更新订单在删除条码明细
|
||||
String selectSql = "SELECT * FROM MATERIALPACKINGSUB m WHERE m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME";
|
||||
hashMap.put("MATERIALPACKINGNAME", materialPackingName2);
|
||||
List<Map<String, Object>> queryForList2 = IDMFrameServiceProxy.getSqlTemplate().queryForList(selectSql, hashMap);
|
||||
for (Map<String, Object> map2 : queryForList2) {
|
||||
String qty = map2.get("QTY").toString();
|
||||
String receiveRequestName2 = map2.get("RECEIVEREQUESTNAME").toString();
|
||||
String receiveRequestDetailName2 = map2.get("RECEIVEREQUESTDETAILNAME").toString();
|
||||
hashMap.put("RECEIVEREQUESTNAME", receiveRequestName2);
|
||||
hashMap.put("RECEIVEREQUESTDETAILNAME", receiveRequestDetailName2);
|
||||
hashMap.put("QTY", qty);
|
||||
String updateSql = "UPDATE MATERIALRECEIVEREQUESTDETAIL T SET T.RECEIVEDQUANTITY = T.RECEIVEDQUANTITY - :QTY "
|
||||
+ "WHERE T.RECEIVEREQUESTNAME = :RECEIVEREQUESTNAME AND T.RECEIVEREQUESTDETAILNAME = :RECEIVEREQUESTDETAILNAME";
|
||||
IDMFrameServiceProxy.getSqlTemplate().update(updateSql, hashMap);
|
||||
|
||||
String deleteSql = "DELETE FROM MATERIALPACKINGSUB m WHERE m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME";
|
||||
IDMFrameServiceProxy.getSqlTemplate().update(deleteSql, hashMap);
|
||||
}
|
||||
Map<String, Object> hashMap = new HashMap<> ();
|
||||
hashMap.put("MATERIALSPECNAME", materialSpecName);
|
||||
mpService.delMaterialPacking(hashMap, materialPackingName, siteName, makeEventInfo);
|
||||
//更新订单数量
|
||||
return AjaxResult.me().setResultObj(null);
|
||||
}
|
||||
@ -536,21 +498,22 @@ public class MaterialReceiveActController {
|
||||
@RequestMapping(value = "/commitToERP", method = RequestMethod.POST)
|
||||
public AjaxResult commitToERP(@RequestBody JSONObject in ) {
|
||||
TrackOutBoDto trackOutBoDto = JSON.toJavaObject(in, TrackOutBoDto.class);
|
||||
// 采购单
|
||||
List<MaterialReceiveRequest> requests = new ArrayList<>();
|
||||
// 判定单据类型
|
||||
StoreDetailDto storeDetailDto = new StoreDetailDto();
|
||||
storeDetailDto.setDocumentName(trackOutBoDto.getReceiveRequestName());
|
||||
storeDetailDto.setSiteName(trackOutBoDto.getSiteName());
|
||||
MaterialDelivery materialDelivery = deliveryService.getByKey(storeDetailDto);
|
||||
if (Objects.nonNull(materialDelivery)) {
|
||||
// 到货单据
|
||||
requests = deliveryService.getReceiveByDelivery(storeDetailDto);
|
||||
} else {
|
||||
requests.add(deliveryService.getReceiveByKey(storeDetailDto));
|
||||
}
|
||||
String user = trackOutBoDto.getUser();
|
||||
String opCode = trackOutBoDto.getOpCode();
|
||||
String commitDate = trackOutBoDto.getCommitDate();
|
||||
String name = trackOutBoDto.getReceiveRequestName();
|
||||
String site = trackOutBoDto.getSiteName();
|
||||
// 采购单
|
||||
List<MaterialReceiveRequest> requests = new ArrayList<>();
|
||||
// @TODO 判定单据类型
|
||||
/*MaterialReceiveRequest byKey = deliveryService.getByKey(site, name);
|
||||
if (byKey.getReceiveRequestType().equals(ReceiveTypeEnums.DK.getCode())) {
|
||||
// 到货单
|
||||
requests = deliveryService.getReceiveByDelivery(site, name);
|
||||
} else {
|
||||
requests.add(byKey);
|
||||
}*/
|
||||
// 采购单处理
|
||||
for (MaterialReceiveRequest request : requests) {
|
||||
String receiveRequestName = request.getReceiveRequestName();
|
||||
@ -560,25 +523,33 @@ public class MaterialReceiveActController {
|
||||
// 调用 QMS
|
||||
qMSServiceImpl.PreIQCInfoSend(receiveRequestName, "SDK",opCode, erpFactory);
|
||||
} catch (CustomException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
return AjaxResult.me().setSuccess(false).setMessage(e.toString());
|
||||
}
|
||||
|
||||
String undoid;
|
||||
String undoId;
|
||||
try {
|
||||
undoid = SendERPStockIn(receiveRequestName, siteName, user, opCode,commitDate,opCode);
|
||||
undoId = SendERPStockIn(receiveRequestName, siteName, user, opCode,commitDate,opCode);
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
return AjaxResult.me().setSuccess(false).setMessage(e.toString());
|
||||
}//发送过账
|
||||
makeEventInfo = new EventInfoUtil().makeEventInfo("NormalStockInForSDK", user, "NormalStockInForSDK");
|
||||
}
|
||||
// 发送过账
|
||||
EventInfoUtil util = new EventInfoUtil();
|
||||
makeEventInfo = util.makeEventInfo("NormalStockInForSDK", user, "NormalStockInForSDK");
|
||||
// 更新入库凭证
|
||||
SDKMaterialPackingServiceImpl.updateUndoIdByReceive(receiveRequestName, undoid, makeEventInfo);
|
||||
SDKMaterialPackingServiceImpl.updateUndoIdByReceive(receiveRequestName, undoId, makeEventInfo);
|
||||
// 更新库存状态
|
||||
SDKMaterialPackingServiceImpl.SaveUnDoInfo( undoid,commitDate);
|
||||
SDKMaterialPackingServiceImpl.updateStockState( makeEventInfo, undoid,opCode);
|
||||
SDKMaterialPackingServiceImpl.SaveUnDoInfo( undoId,commitDate);
|
||||
SDKMaterialPackingServiceImpl.updateStockState( makeEventInfo, undoId,opCode);
|
||||
}
|
||||
// 到货单据更新状态
|
||||
if (Objects.nonNull(materialDelivery)) {
|
||||
DeliveryEditDto deliveryEditDto = new DeliveryEditDto();
|
||||
deliveryEditDto.setDeliveryName(trackOutBoDto.getReceiveRequestName());
|
||||
deliveryEditDto.setSiteName(trackOutBoDto.getSiteName());
|
||||
// @TODO 完成状态下,更新为 DeliveryStateEnums.FINISH
|
||||
deliveryEditDto.setDeliveryState(DeliveryStateEnums.DOING.getCode());
|
||||
deliveryService.editDelivery(deliveryEditDto);
|
||||
}
|
||||
return AjaxResult.me().setResultObj(null);
|
||||
}
|
||||
|
@ -34,7 +34,8 @@ public interface DeliveryDao {
|
||||
* 获取采购订单
|
||||
*/
|
||||
List<MaterialReceiveRequestVo> getReceiveList(@Param("dto") PurchaseDto dto,
|
||||
@Param("typeList") List<String> typeList);
|
||||
@Param("typeList") List<String> typeList,
|
||||
@Param("isBatch") String isBatch);
|
||||
|
||||
/**
|
||||
* 获取入库详情
|
||||
@ -42,6 +43,16 @@ public interface DeliveryDao {
|
||||
@MapKey("storeDetail")
|
||||
List<Map<String, Object>> getStoreDetail(@Param("siteName") String siteName,
|
||||
@Param("nameList") List<String> nameList,
|
||||
@Param("typeList") List<String> typeList,
|
||||
@Param("deliveryName") String deliveryName);
|
||||
|
||||
/**
|
||||
* 获取入库详情
|
||||
*/
|
||||
@MapKey("materialDetail")
|
||||
List<Map<String, Object>> getMaterialDetail(@Param("siteName") String siteName,
|
||||
@Param("nameList") List<String> nameList,
|
||||
@Param("typeList") List<String> typeList,
|
||||
@Param("deliveryName") String deliveryName);
|
||||
|
||||
/**
|
||||
@ -49,7 +60,7 @@ public interface DeliveryDao {
|
||||
*/
|
||||
@MapKey("storeCharge")
|
||||
List<Map<String, Object>> getStoreCharge(@Param("siteName") String siteName,
|
||||
@Param("nameList") List<String> nameList);
|
||||
@Param("documentName") String documentName);
|
||||
|
||||
/**
|
||||
* 根据 key 获取值
|
||||
@ -62,9 +73,16 @@ public interface DeliveryDao {
|
||||
MaterialReceiveRequest getReceiveByKey(@Param("dto") StoreDetailDto storeDetailDto);
|
||||
|
||||
/**
|
||||
* 根据到库单获取采购单名称
|
||||
* 根据到库单获取关系
|
||||
*/
|
||||
List<MaterialDeliveryReceive> getReceiveByDelivery(@Param("dto") StoreDetailDto storeDetailDto);
|
||||
List<MaterialDeliveryReceive> getRelByDelivery(@Param("dto") StoreDetailDto storeDetailDto);
|
||||
|
||||
/**
|
||||
* 根据到库单获取采购单名称
|
||||
* @param storeDetailDto 到库单
|
||||
* @return 采购单名称列表
|
||||
*/
|
||||
List<MaterialReceiveRequest> getReceiveByDelivery(@Param("dto") StoreDetailDto storeDetailDto);
|
||||
|
||||
/**
|
||||
* 根据到库单获取采购单名称
|
||||
@ -93,4 +111,11 @@ public interface DeliveryDao {
|
||||
* @return 结果
|
||||
*/
|
||||
int delDeliveryRel(@Param("dto") DeliveryDelDto deliveryDelDto);
|
||||
|
||||
/**
|
||||
* 更新到货单
|
||||
* @param deliveryEditDto 请求
|
||||
* @return 结果
|
||||
*/
|
||||
int editDelivery(@Param("dto") DeliveryEditDto deliveryEditDto);
|
||||
}
|
||||
|
@ -0,0 +1,23 @@
|
||||
package com.cim.idm.dao;
|
||||
|
||||
import com.cim.idm.model.dto.packing.MaterialPackingListDto;
|
||||
import org.apache.ibatis.annotations.MapKey;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Component
|
||||
@Mapper
|
||||
public interface MaterialPackingDao {
|
||||
|
||||
/**
|
||||
* 散列盘点存储过程调用
|
||||
* @param dto dto
|
||||
* @return 物料信息
|
||||
*/
|
||||
@MapKey("dto")
|
||||
List<Map<String, Object>> getMaterialPacking(@Param("dto") MaterialPackingListDto dto);
|
||||
}
|
@ -27,4 +27,7 @@ public class PurchaseDto {
|
||||
|
||||
// 结束时间
|
||||
private String toDate;
|
||||
|
||||
// 到货单类型
|
||||
private String deliveryType;
|
||||
}
|
||||
|
@ -0,0 +1,15 @@
|
||||
package com.cim.idm.model.dto.delivery;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class DeliveryEditDto {
|
||||
// siteName
|
||||
private String siteName;
|
||||
|
||||
// 到货单名称
|
||||
private String deliveryName;
|
||||
|
||||
// 到货单状态
|
||||
private String deliveryState;
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package com.cim.idm.model.dto.packing;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class MaterialPackingListDto {
|
||||
// 物料号
|
||||
private String materialSpecName;
|
||||
|
||||
// 到货单名称
|
||||
private String receiveRequestName;
|
||||
|
||||
// 阶段
|
||||
private String phase;
|
||||
|
||||
// sdk id
|
||||
private String sdkId;
|
||||
}
|
@ -30,11 +30,9 @@ public class MaterialReceiveRequestVo {
|
||||
// 组织(CN)
|
||||
private String orgName;
|
||||
// 料号
|
||||
private String materialSpecName;
|
||||
// private String materialSpecName;
|
||||
// 品名
|
||||
private String descCn;
|
||||
// 创建日期
|
||||
private String createTime;
|
||||
// private String descCn;
|
||||
// 订单状态
|
||||
private String receiveRequestState;
|
||||
|
||||
|
@ -2,6 +2,7 @@ package com.cim.idm.service;
|
||||
|
||||
import com.cim.idm.model.dto.delivery.DeliveryDelDto;
|
||||
import com.cim.idm.model.dto.delivery.DeliveryDto;
|
||||
import com.cim.idm.model.dto.delivery.DeliveryEditDto;
|
||||
import com.cim.idm.model.dto.delivery.StoreDetailDto;
|
||||
import com.cim.idm.model.po.delivery.MaterialDelivery;
|
||||
import com.cim.idm.model.po.delivery.MaterialDeliveryReceive;
|
||||
@ -13,6 +14,7 @@ import com.cim.idm.model.vo.ReceiveDetailVo;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface IDeliveryService {
|
||||
/**
|
||||
@ -31,12 +33,23 @@ public interface IDeliveryService {
|
||||
|
||||
/**
|
||||
* 获取采购单明细及批次
|
||||
* @param documentName 单据名称
|
||||
* @param siteName 组织
|
||||
* @param nameList 名称
|
||||
* @param deliveryName 到库单号
|
||||
* @return 采购订单
|
||||
*/
|
||||
ReceiveDetailVo getStoreDetail(String siteName, List<String> nameList, String deliveryName);
|
||||
ReceiveDetailVo getStoreDetail(String documentName, String siteName, List<String> nameList, String deliveryName);
|
||||
|
||||
/**
|
||||
* 获取辅材明细及批次
|
||||
* @param documentName 单据名称
|
||||
* @param siteName 组织
|
||||
* @param nameList 名称
|
||||
* @param deliveryName 到库单号
|
||||
* @return 采购订单
|
||||
*/
|
||||
List<Map<String, Object>> getMaterialDetail(String documentName, String siteName, List<String> nameList, String deliveryName);
|
||||
|
||||
/**
|
||||
* 根据 key 获取值
|
||||
@ -52,12 +65,19 @@ public interface IDeliveryService {
|
||||
*/
|
||||
MaterialReceiveRequest getReceiveByKey(StoreDetailDto storeDetailDto);
|
||||
|
||||
/**
|
||||
* 根据到库单获取关系
|
||||
* @param storeDetailDto 到库单
|
||||
* @return 采购单名称列表
|
||||
*/
|
||||
List<MaterialDeliveryReceive> getRelByDelivery(StoreDetailDto storeDetailDto);
|
||||
|
||||
/**
|
||||
* 根据到库单获取采购单名称
|
||||
* @param storeDetailDto 到库单
|
||||
* @return 采购单名称列表
|
||||
*/
|
||||
List<MaterialDeliveryReceive> getReceiveByDelivery(StoreDetailDto storeDetailDto);
|
||||
List<MaterialReceiveRequest> getReceiveByDelivery(StoreDetailDto storeDetailDto);
|
||||
|
||||
/**
|
||||
* 根据到库单获取采购单名称
|
||||
@ -79,4 +99,11 @@ public interface IDeliveryService {
|
||||
* @return 结果
|
||||
*/
|
||||
int delDelivery(DeliveryDelDto deliveryDelDto);
|
||||
|
||||
/**
|
||||
* 更新到货单
|
||||
* @param deliveryEditDto 请求
|
||||
* @return 结果
|
||||
*/
|
||||
int editDelivery(DeliveryEditDto deliveryEditDto);
|
||||
}
|
||||
|
@ -0,0 +1,31 @@
|
||||
package com.cim.idm.service;
|
||||
|
||||
|
||||
import com.cim.idm.framework.data.EventInfo;
|
||||
import com.cim.idm.model.dto.packing.MaterialPackingListDto;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
@Service("mpService")
|
||||
public interface IMaterialPackingService {
|
||||
|
||||
/**
|
||||
* 散列盘点存储过程调用
|
||||
* @param dto dto
|
||||
* @return 物料信息
|
||||
*/
|
||||
List<Map<String, Object>> getMaterialPacking(MaterialPackingListDto dto);
|
||||
|
||||
/**
|
||||
* 删除物料批次
|
||||
* @param hashMap 数据
|
||||
* @param materialPackingName 包名
|
||||
* @param siteName 工厂
|
||||
* @param makeEventInfo 事件
|
||||
*/
|
||||
void delMaterialPacking(Map<String, Object> hashMap, String materialPackingName,
|
||||
String siteName, EventInfo makeEventInfo);
|
||||
}
|
@ -2,6 +2,8 @@ package com.cim.idm.service.Impl;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.cim.idm.constants.delivery.DeliveryStateEnums;
|
||||
import com.cim.idm.constants.delivery.DeliveryTypeEnums;
|
||||
import com.cim.idm.constants.receive.IsBatchEnums;
|
||||
import com.cim.idm.constants.receive.ReceiveTypeEnums;
|
||||
import com.cim.idm.dao.DeliveryDao;
|
||||
import com.cim.idm.exception.GlobalException;
|
||||
@ -56,21 +58,31 @@ public class DeliveryServiceImpl implements IDeliveryService {
|
||||
public PageInfo<MaterialReceiveRequestVo> getReceiveList(PageDto dto) {
|
||||
PageMethod.startPage(dto.getPageNum(), dto.getPageSize());
|
||||
PurchaseDto purchaseDto = JSON.toJavaObject(dto.getParams(), PurchaseDto.class);
|
||||
return new PageInfo<>(deliveryDao.getReceiveList(purchaseDto, ReceiveTypeEnums.getPurchase()));
|
||||
// 区分是辅材还是批次
|
||||
String isBatch = IsBatchEnums.N.getCode();
|
||||
if (purchaseDto.getDeliveryType().equals(DeliveryTypeEnums.BATCH.getCode())) {
|
||||
isBatch = IsBatchEnums.Y.getCode();
|
||||
}
|
||||
return new PageInfo<>(deliveryDao.getReceiveList(purchaseDto, ReceiveTypeEnums.getPurchase(), isBatch));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReceiveDetailVo getStoreDetail(String siteName, List<String> nameList, String deliveryName) {
|
||||
public ReceiveDetailVo getStoreDetail(String documentName, String siteName, List<String> nameList, String deliveryName) {
|
||||
ReceiveDetailVo receiveDetailVo = new ReceiveDetailVo();
|
||||
// 采购单明细
|
||||
List<Map<String, Object>> storeDetail = deliveryDao.getStoreDetail(siteName, nameList, deliveryName);
|
||||
List<Map<String, Object>> storeDetail = deliveryDao.getStoreDetail(siteName, nameList, ReceiveTypeEnums.getPurchase(), deliveryName);
|
||||
receiveDetailVo.setStoreDetail(storeDetail);
|
||||
// 批次
|
||||
List<Map<String, Object>> storeCharge = deliveryDao.getStoreCharge(siteName, nameList);
|
||||
List<Map<String, Object>> storeCharge = deliveryDao.getStoreCharge(siteName, documentName);
|
||||
receiveDetailVo.setStoreCharge(storeCharge);
|
||||
return receiveDetailVo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getMaterialDetail(String documentName, String siteName, List<String> nameList, String deliveryName) {
|
||||
return deliveryDao.getMaterialDetail(siteName, nameList, ReceiveTypeEnums.getPurchase(), deliveryName);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MaterialDelivery getByKey(StoreDetailDto storeDetailDto) {
|
||||
return deliveryDao.getByKey(storeDetailDto);
|
||||
@ -82,7 +94,12 @@ public class DeliveryServiceImpl implements IDeliveryService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MaterialDeliveryReceive> getReceiveByDelivery(StoreDetailDto storeDetailDto) {
|
||||
public List<MaterialDeliveryReceive> getRelByDelivery(StoreDetailDto storeDetailDto) {
|
||||
return deliveryDao.getRelByDelivery(storeDetailDto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MaterialReceiveRequest> getReceiveByDelivery(StoreDetailDto storeDetailDto) {
|
||||
return deliveryDao.getReceiveByDelivery(storeDetailDto);
|
||||
}
|
||||
|
||||
@ -108,4 +125,9 @@ public class DeliveryServiceImpl implements IDeliveryService {
|
||||
// 移除到货单
|
||||
return deliveryDao.delDelivery(deliveryDelDto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int editDelivery(DeliveryEditDto deliveryEditDto) {
|
||||
return deliveryDao.editDelivery(deliveryEditDto);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,51 @@
|
||||
package com.cim.idm.service.Impl;
|
||||
|
||||
import com.cim.idm.dao.MaterialPackingDao;
|
||||
import com.cim.idm.framework.IDMFrameServiceProxy;
|
||||
import com.cim.idm.framework.data.EventInfo;
|
||||
import com.cim.idm.model.dto.packing.MaterialPackingListDto;
|
||||
import com.cim.idm.service.IMaterialPackingService;
|
||||
import com.cim.idm.wmspackage.materialpacking.MaterialPackingServiceProxy;
|
||||
import com.cim.idm.wmspackage.materialpacking.management.data.MaterialPackingKey;
|
||||
import com.cim.idm.wmspackage.materialpacking.management.info.RemoveInfo;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
@Service
|
||||
public class MaterialPackingServiceServiceImpl implements IMaterialPackingService {
|
||||
|
||||
@Resource
|
||||
private MaterialPackingDao materialPackingDao;
|
||||
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getMaterialPacking(MaterialPackingListDto dto) {
|
||||
return materialPackingDao.getMaterialPacking(dto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delMaterialPacking(Map<String, Object> hashMap, String materialPackingName, String siteName, EventInfo makeEventInfo) {
|
||||
MaterialPackingKey materialPackingKey = new MaterialPackingKey(siteName, materialPackingName);
|
||||
RemoveInfo removeInfo = new RemoveInfo();
|
||||
MaterialPackingServiceProxy.getMaterialPackingService().remove(materialPackingKey, makeEventInfo, removeInfo);
|
||||
// 找到条码明细表的数据,先更新订单在删除条码明细
|
||||
String selectSql = "SELECT * FROM MATERIALPACKINGSUB m WHERE m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME";
|
||||
hashMap.put("MATERIALPACKINGNAME", materialPackingName);
|
||||
List<Map<String, Object>> queryForList2 = IDMFrameServiceProxy.getSqlTemplate().queryForList(selectSql, hashMap);
|
||||
for (Map<String, Object> item : queryForList2) {
|
||||
hashMap.put("RECEIVEREQUESTNAME", item.get("RECEIVEREQUESTNAME").toString());
|
||||
hashMap.put("RECEIVEREQUESTDETAILNAME", item.get("RECEIVEREQUESTDETAILNAME").toString());
|
||||
hashMap.put("QTY", item.get("QTY").toString());
|
||||
String updateSql = "UPDATE MATERIALRECEIVEREQUESTDETAIL T SET T.RECEIVEDQUANTITY = T.RECEIVEDQUANTITY - :QTY "
|
||||
+ "WHERE T.RECEIVEREQUESTNAME = :RECEIVEREQUESTNAME AND T.RECEIVEREQUESTDETAILNAME = :RECEIVEREQUESTDETAILNAME";
|
||||
IDMFrameServiceProxy.getSqlTemplate().update(updateSql, hashMap);
|
||||
|
||||
String deleteSql = "DELETE FROM MATERIALPACKINGSUB m WHERE m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME AND RECEIVEREQUESTNAME = :RECEIVEREQUESTNAME";
|
||||
IDMFrameServiceProxy.getSqlTemplate().update(deleteSql, hashMap);
|
||||
}
|
||||
}
|
||||
}
|
@ -28,9 +28,8 @@
|
||||
<result property="supplierName" column="SUPPLIERNAME" />
|
||||
<result property="erpFactory" column="ERPFACTORY" />
|
||||
<result property="orgName" column="ORGNAME" />
|
||||
<result property="materialSpecName" column="MATERIALSPECNAME" />
|
||||
<result property="descCn" column="DESC_CN" />
|
||||
<result property="createTime" column="CREATETIME" />
|
||||
<!-- <result property="materialSpecName" column="MATERIALSPECNAME" />-->
|
||||
<!-- <result property="descCn" column="DESC_CN" />-->
|
||||
<result property="receiveRequestState" column="RECEIVEREQUESTSTATE" />
|
||||
<result property="oemSiteName" column="OEMSITENAME" />
|
||||
<result property="oemSiteInCharge" column="OEMSITEINCHARGE" />
|
||||
@ -42,7 +41,7 @@
|
||||
<select id="getReceiveList" resultMap="MaterialReceiveRequestVo">
|
||||
SELECT DISTINCT m.SITENAME, m.RECEIVEREQUESTNAME, m.RECEIVEREQUESTTYPE, m.ORDERDATE, m.SUPPLIERNO,
|
||||
m.LASTEVENTNAME, m.LASTEVENTTIME, m.LASTEVENTUSER, m.LASTEVENTCOMMENT, s.SUPPLIERNAME,
|
||||
STOCKORGNO ERPFACTORY, o.ORGNAME, ms.MATERIALSPECNAME, ms.DESC_CN, d.CREATETIME,
|
||||
STOCKORGNO ERPFACTORY, o.ORGNAME,
|
||||
CASE WHEN m.RECEIVEREQUESTSTATE = 'Completed' THEN '完成' ELSE '未完成' END RECEIVEREQUESTSTATE,
|
||||
m.OEMSITENAME, m.OEMSITEINCHARGE, m.LASTEVENTTIMEKEY, m.SYSTEMTYPE, m.PURCHASEORDERGROUP
|
||||
FROM MATERIALRECEIVEREQUEST m
|
||||
@ -51,6 +50,7 @@
|
||||
LEFT JOIN MATERIALSPEC ms ON d.MATERIALSPECNAME = ms.MATERIALSPECNAME
|
||||
LEFT JOIN ORG o ON STOCKORGNO = o.ORGNO
|
||||
WHERE m.SITENAME = #{dto.siteName}
|
||||
ANd ms.is_batch = #{isBatch}
|
||||
AND m.RECEIVEREQUESTTYPE IN
|
||||
<foreach item="type" index="index" collection="typeList" open="(" separator="," close=")">
|
||||
#{type}
|
||||
@ -164,7 +164,78 @@
|
||||
#{name}
|
||||
</foreach>
|
||||
AND m.SITENAME = #{siteName}
|
||||
AND m2.RECEIVEREQUESTTYPE IN ( 'ZK4A', '45', '4C', 'Z001', 'Z002', 'Z003', 'Z004' )
|
||||
AND m2.RECEIVEREQUESTTYPE IN
|
||||
<foreach item="type" index="index" collection="typeList" open="(" separator="," close=")">
|
||||
#{type}
|
||||
</foreach>
|
||||
</select>
|
||||
|
||||
<!-- GetNoBatchPOStockIn 00001 -->
|
||||
<select id="getMaterialDetail" resultType="map">
|
||||
WITH MAIN AS (
|
||||
SELECT m.MATERIALSPECNAME,
|
||||
SUM( m.REQUESTQUANTITY ) REQUESTQUANTITY,
|
||||
SUM( m.RECEIVEDQUANTITY ) RECEIVEDQUANTITY,
|
||||
SUM( m.REQUESTQUANTITY - m.RECEIVEDQUANTITY) AS ThisAcceptNumber
|
||||
FROM MATERIALRECEIVEREQUESTDETAIL m
|
||||
WHERE m.RECEIVEREQUESTNAME in
|
||||
<foreach item="name" index="index" collection="nameList" open="(" separator="," close=")">
|
||||
#{name}
|
||||
</foreach>
|
||||
GROUP BY m.MATERIALSPECNAME
|
||||
)
|
||||
<if test="deliveryName != null">
|
||||
,DELIVERY AS (
|
||||
SELECT sum(md.DELIVERYNUM) DELIVERYNUM, md.MATERIALSPECNAME MATERIALSPECNAME
|
||||
FROM MATERIALDELIVERYRECEIVE md
|
||||
WHERE md.DELIVERYNAME = #{deliveryName}
|
||||
and md.RECEIVEREQUESTNAME IN
|
||||
<foreach item="name" index="index" collection="nameList" open="(" separator="," close=")">
|
||||
#{name}
|
||||
</foreach>
|
||||
GROUP BY md.MATERIALSPECNAME
|
||||
)
|
||||
</if>
|
||||
SELECT distinct MAIN.RECEIVEDQUANTITY, MAIN.ThisAcceptNumber,
|
||||
<if test="deliveryName != null">
|
||||
DELIVERY.DELIVERYNUM REQUESTQUANTITY,
|
||||
</if>
|
||||
<if test="deliveryName == null">
|
||||
MAIN.REQUESTQUANTITY REQUESTQUANTITY,
|
||||
</if>
|
||||
m3.DESCRIPTION, be.DESCRIPTION AS ERPLOCATION2, m.ERPLOCATION, o.ORGNAME AS ERPFACTORY2,
|
||||
m2.STOCKORGNO AS ERPFACTORY, sss.DESCRIPTION AS LOCATIONNAME2, m.LOCATIONNAME, m2.SUPPLIERNO,
|
||||
ss.SPECNAME, m.PHASE, m3.DESC_CN, m.MATERIALSPECNAME,
|
||||
m.MATERIALUNIT, MM.FNAME MATERIALUNITDESC, m.SDK_ID, m.PHASE, m.SITENAME,
|
||||
DECODE(m3.IS_BATCH, 'Y', '是' , '否') IS_BATCH, DECODE(m3.IQCFLAG, 'Y', '是' ,'否') IQCFLAG,
|
||||
CASE WHEN m3.EXPIRATION_RULES = '0' THEN '不遵守有效期管理'
|
||||
WHEN m3.EXPIRATION_RULES = '1' THEN '遵守有效期管理'
|
||||
ELSE '未定义'
|
||||
END AS REPLACED_VALUE
|
||||
FROM MAIN
|
||||
LEFT JOIN MATERIALRECEIVEREQUESTDETAIL m ON MAIN.MATERIALSPECNAME = m.MATERIALSPECNAME
|
||||
LEFT JOIN MATERIALRECEIVEREQUEST m2 ON m.RECEIVEREQUESTNAME = m2.RECEIVEREQUESTNAME
|
||||
LEFT JOIN MATERIALSPEC m3 ON m.MATERIALSPECNAME = m3.MATERIALSPECNAME
|
||||
LEFT JOIN SDK_SPEC ss ON m.SDK_ID = ss.SDK_ID
|
||||
LEFT JOIN MATERIALUNIT MM ON MM.FNUMBER = m.MATERIALUNIT
|
||||
LEFT JOIN BS_ERPLOCATION be ON m.ERPLOCATION = be.ERPLOCATIONNAME
|
||||
LEFT JOIN ORG o ON o.ORGNO = m2.STOCKORGNO
|
||||
LEFT JOIN STORAGESPEC sss ON m.LOCATIONNAME = sss.STORAGENAME
|
||||
<if test="deliveryName != null">
|
||||
INNER JOIN DELIVERY ON DELIVERY.MATERIALSPECNAME = m.MATERIALSPECNAME
|
||||
</if>
|
||||
WHERE m.RECEIVEREQUESTNAME in
|
||||
<foreach item="name" index="index" collection="nameList" open="(" separator="," close=")">
|
||||
#{name}
|
||||
</foreach>
|
||||
AND m.SITENAME = #{siteName}
|
||||
AND (m.REQUESTQUANTITY - m.RECEIVEDQUANTITY) > 0
|
||||
AND m2.RECEIVEREQUESTTYPE IN
|
||||
<foreach item="type" index="index" collection="typeList" open="(" separator="," close=")">
|
||||
#{type}
|
||||
</foreach>
|
||||
AND (m2.RETURNFLAG IS NULL OR m2.RETURNFLAG != 'Y')
|
||||
AND (m3.IS_BATCH IS NULL OR m3.IS_BATCH != 'Y')
|
||||
</select>
|
||||
|
||||
<!-- GetPackingRow xh002 -->
|
||||
@ -183,10 +254,7 @@
|
||||
LEFT JOIN ORG o ON o.ORGNO = A.ERPFACTORY
|
||||
LEFT JOIN MATERIALUNIT M ON M.FNUMBER = A.UNIT
|
||||
WHERE A.SITENAME = #{siteName}
|
||||
AND A.RECEIVEREQUESTNAME in
|
||||
<foreach item="name" index="index" collection="nameList" open="(" separator="," close=")">
|
||||
#{name}
|
||||
</foreach>
|
||||
AND A.RECEIVEREQUESTNAME = #{documentName}
|
||||
AND A.STOCKSTATE = 'Created'
|
||||
ORDER BY A.MATERIALSPECNAME, A.SDK_ID, A.PHASE
|
||||
) TTT
|
||||
@ -210,12 +278,24 @@
|
||||
AND RECEIVEREQUESTNAME = #{dto.documentName}
|
||||
</select>
|
||||
|
||||
<select id="getReceiveByDelivery" resultType="com.cim.idm.model.po.delivery.MaterialDeliveryReceive">
|
||||
<select id="getRelByDelivery" resultType="com.cim.idm.model.po.delivery.MaterialDeliveryReceive">
|
||||
SELECT md.DELIVERYNAME, md.DELIVERYNUM, md.RECEIVEREQUESTNAME, md.MATERIALSPECNAME
|
||||
FROM MATERIALDELIVERYRECEIVE md
|
||||
WHERE md.DELIVERYNAME = #{dto.documentName}
|
||||
</select>
|
||||
|
||||
<select id="getReceiveByDelivery" resultType="com.cim.idm.model.po.MaterialReceiveRequest">
|
||||
SELECT m.SITENAME, m.RECEIVEREQUESTNAME, m.RECEIVEREQUESTTYPE, m.PURCHASEORDERGROUP, m.RECEIVEREQUESTSTATE, m.SUPPLIERNO,
|
||||
m.OEMSITENAME, m.OEMSITEINCHARGE, m.SYSTEMTYPE, m.LASTEVENTNAME, m.LASTEVENTTIMEKEY, m.LASTEVENTTIME, m.LASTEVENTUSER,
|
||||
m.LASTEVENTCOMMENT, m.ERPPONAME, m.SAVEREASON, m.RESPPERSON, m.RESPDEPART, m.SOLVETIME, m.PASSSTATE, m.WORKER, m.SDK_ID,
|
||||
m.ERPID, m.REMARK, m.PURCHASER, m.PURORGNO, m.ORDERDATE, m.CLOSERUSER, m.CLOSEDATE, m.STOCKORGNO, m.RETURNFLAG,
|
||||
m.RECEIVEREQUESTDETAILTYPE, m.ERPLOCATION, m.PRODUCTDEPTNO, m.SOURCEBILLID, m.EFFECTIVESTARTTIME, m.EFFECTIVEENDTIME
|
||||
FROM MATERIALRECEIVEREQUEST m, MATERIALDELIVERYRECEIVE md
|
||||
WHERE m.SITENAME = #{dto.siteName}
|
||||
AND md.DELIVERYNAME = #{dto.documentName}
|
||||
AND m.RECEIVEREQUESTNAME = md.RECEIVEREQUESTNAME
|
||||
</select>
|
||||
|
||||
<select id="getReceiveDetail" resultType="com.cim.idm.model.vo.DeliveryReceiveDetailVo">
|
||||
SELECT receiveRequestName, materialSpecName, requestQuantity, requestQuantity as deliveryNum
|
||||
FROM MATERIALRECEIVEREQUESTDETAIL
|
||||
@ -252,4 +332,9 @@
|
||||
delete from MATERIALDELIVERYRECEIVE
|
||||
where DELIVERYNAME = #{dto.deliveryName}
|
||||
</delete>
|
||||
|
||||
<delete id="editDelivery">
|
||||
UPDATE MATERIALDELIVERY SET DELIVERYSTATE = #{dto.deliveryState}
|
||||
WHERE SITENAME = #{dto.siteName} AND DELIVERYNAME = #{dto.deliveryName}
|
||||
</delete>
|
||||
</mapper>
|
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.cim.idm.dao.MaterialPackingDao">
|
||||
|
||||
<select id="getMaterialPacking" resultType="map">
|
||||
SELECT * FROM MATERIALPACKING m
|
||||
WHERE MATERIALSPECNAME = #{dto.materialSpecName}
|
||||
<if test="dto.phase != null and dto.phase != ''">
|
||||
AND PHASE = #{dto.phase}
|
||||
</if>
|
||||
<if test="dto.receiveRequestName != null and dto.receiveRequestName != ''">
|
||||
AND RECEIVEREQUESTNAME = #{dto.receiveRequestName}
|
||||
</if>
|
||||
<if test="dto.sdkId != null and dto.sdkId != ''">
|
||||
AND SDK_ID = #{dto.sdkId}
|
||||
</if>
|
||||
AND STOCKSTATE = 'Created'
|
||||
</select>
|
||||
</mapper>
|
Loading…
x
Reference in New Issue
Block a user