diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsStockinOrderRequestVO.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsStockinOrderRequestVO.java index 954648fe..a87be6e2 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsStockinOrderRequestVO.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsStockinOrderRequestVO.java @@ -7,6 +7,10 @@ import lombok.Data; */ @Data public class QueryOfsStockinOrderRequestVO { + + + + /** 开始时间 */ private String created_start; /** 结束时间 */ @@ -15,6 +19,11 @@ public class QueryOfsStockinOrderRequestVO { private String closedAt_start; private String closedAt_end; + + /** 收货时间 */ + private String receivedAt_start; + private String receivedAt_end; + /** 组织 */ private String clientCode; /** 入库单号 */ diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/transfer/TransferInPluginInitializer.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/transfer/TransferInPluginInitializer.java index a8e5c62e..b28379c4 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/transfer/TransferInPluginInitializer.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/transfer/TransferInPluginInitializer.java @@ -16,8 +16,6 @@ import com.hzya.frame.plugin.lets.entity.IcGeneralBEntity; import com.hzya.frame.plugin.lets.entity.IcGeneralHEntity; import com.hzya.frame.plugin.lets.entity.ToBillEntity; import com.hzya.frame.plugin.lets.ofsvo.QueryOfsStockinOrderRequestVO; -import com.hzya.frame.plugin.lets.ofsvo.QueryOfsTransferOrderRequestVO; -import com.hzya.frame.plugin.lets.u8cdto.BillVO; import com.hzya.frame.plugin.lets.u8cdto.GeneralBillVO; import com.hzya.frame.plugin.lets.u8cdto.ReusltStrDto; import com.hzya.frame.plugin.lets.util.PushDataByU8cUtil; @@ -28,12 +26,9 @@ import com.hzya.frame.plugin.lets.util.pushData.PushU8CByApiCode; import com.hzya.frame.plugin.lets.util.pushData.ZTResult; import com.hzya.frame.sysnew.integtationTaskLivingDetails.dao.IIntegrationTaskLivingDetailsDao; import com.hzya.frame.sysnew.integtationTaskLivingDetails.entity.IntegrationTaskLivingDetailsEntity; -import com.hzya.frame.ttxofs.basics.ReturnMessageBasics; import com.hzya.frame.ttxofs.dto.InterfaceParamDto; -import com.hzya.frame.ttxofs.dto.ofsTransferOrderSearch.OFSTranseferOrderSearchResponse; -import com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.SaleOutReturnMessageDto; +import com.hzya.frame.ttxofs.dto.ofsReceiptConfirmSearch.OFSReceiptConfirmSearchResponse; import com.hzya.frame.ttxofs.dto.stock.StockinOrderSearchResponse; -import com.hzya.frame.ttxofs.dto.stock.StockoutOrderSearchResponse; import com.hzya.frame.ttxofs.service.OfsUnifiedService; import com.hzya.frame.web.entity.BaseResult; import com.hzya.frame.web.entity.JsonResultEntity; @@ -42,18 +37,22 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.List; -import java.util.concurrent.locks.ReentrantLock; /** - * 丽知:OFS调拨入库订单--->U8C调拨入库订单 + * 20250303:ofs调拨入库确认单--->U8C调拨入库订单 + * 存在多笔入库单 */ public class TransferInPluginInitializer extends PluginBaseEntity { Logger logger = LoggerFactory.getLogger(TransferInPluginInitializer.class); private static final Object OBJECT_LOCK = new Object(); + //过滤的公司 + public static final List FILTER_CORP_LIST = Arrays.asList("NMNS", "YNS", "HJ"); + @Override public void initialize() { logger.info(getPluginLabel() + "執行初始化方法initialize()"); @@ -71,12 +70,12 @@ public class TransferInPluginInitializer extends PluginBaseEntity { @Override public String getPluginName() { - return "丽知:OFS调拨入库订单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单)"; + return "丽知:OFS调拨入库确认单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单)"; } @Override public String getPluginLabel() { - return "丽知:OFS调拨入库订单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单)"; + return "丽知:OFS调拨入库确认单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单)"; } @Override @@ -108,7 +107,6 @@ public class TransferInPluginInitializer extends PluginBaseEntity { private QueryU8CEntityUtil queryU8CEntityUtil; - @Override public JsonResultEntity executeBusiness(JSONObject requestJson) throws Exception { try { @@ -164,53 +162,58 @@ public class TransferInPluginInitializer extends PluginBaseEntity { QueryOfsStockinOrderRequestVO queryOfsStockinOrderRequestVO = new QueryOfsStockinOrderRequestVO(); queryOfsStockinOrderRequestVO.setClosedAt_start(startTimeStr); queryOfsStockinOrderRequestVO.setClosedAt_end(endTimeStr); - //状态 500待同步 510已同步 700收货中 900入库完成 911作废 100订单池 200暂挂 400待合单 410待出库单出库 - queryOfsStockinOrderRequestVO.setStatus("900"); - List transferInOrder = queryOfsStockinOrder(queryOfsStockinOrderRequestVO); - if (transferInOrder == null || transferInOrder.size() == 0) { + List orders = queryOfsStockinOrder(queryOfsStockinOrderRequestVO); + + if (orders == null || orders.size() == 0) { return; } - //过滤日志 - List filterTransferInOrders = filterData(transferInOrder); - if (filterTransferInOrders.size() == 0) { +// //过滤日志 + List filterOrders = filterData(orders); + if (filterOrders.size() == 0) { return; } - implement(filterTransferInOrders); + implement(filterOrders); } } catch (Exception e) { - logger.error("丽知:OFS调拨入库订单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单),start()方法报错:", e); + logger.error("丽知:OFS调拨入库确认单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单),start()方法报错:", e); } } /** * 按单号 + * LETS-RE2025010600000520-confirm_227 + * [单号]-[确认单标识]_[id] */ public void start(String stockinNo) { try { synchronized (OBJECT_LOCK) { + String code = null; + String[] split = stockinNo.split("_"); + code = split[0]; + if (!code.endsWith("-confirm")) { + code = code + "-confirm"; + } QueryOfsStockinOrderRequestVO queryOfsStockinOrderRequestVO = new QueryOfsStockinOrderRequestVO(); - queryOfsStockinOrderRequestVO.setCode(stockinNo); - //状态 500待同步 510已同步 700收货中 900入库完成 911作废 100订单池 200暂挂 400待合单 410待出库单出库 - queryOfsStockinOrderRequestVO.setStatus("900"); - List transferInOrder = queryOfsStockinOrder(queryOfsStockinOrderRequestVO); + queryOfsStockinOrderRequestVO.setCode(code); + List orders = queryOfsStockinOrder(queryOfsStockinOrderRequestVO); - if (transferInOrder == null || transferInOrder.size() == 0) { + if (orders == null || orders.size() == 0) { Assert.state(false, "丽知:OFS调拨入库--->U8C调拨入库根据单据号[入库完成]:{},未查询到调拨入库单", stockinNo); } //过滤日志 - List filterTransferInOrders = filterData(transferInOrder); - if (filterTransferInOrders.size() == 0) { + List filterOrders = filterData(orders); + if (filterOrders.size() == 0) { Assert.state(false, "丽知:OFS调拨入库--->U8C调拨入库根据单据号[入库完成]:{},该调拨入库单已被推送成功,请勿重新推送", stockinNo); } - implement(filterTransferInOrders); + implement(filterOrders); } } catch (Exception e) { - logger.error("丽知:OFS调拨入库订单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单),start(String goodsName)方法报错:", e); + logger.error("丽知:OFS调拨入库确认单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单),start(String goodsName)方法报错:", e); } } @@ -228,26 +231,24 @@ public class TransferInPluginInitializer extends PluginBaseEntity { String end = DateUtil.format(business_end, "yyyy-MM-dd") + " 23:59:59"; QueryOfsStockinOrderRequestVO queryOfsStockinOrderRequestVO = new QueryOfsStockinOrderRequestVO(); - queryOfsStockinOrderRequestVO.setClosedAt_start(start); - queryOfsStockinOrderRequestVO.setClosedAt_end(end); - //状态 500待同步 510已同步 700收货中 900入库完成 911作废 100订单池 200暂挂 400待合单 410待出库单出库 - queryOfsStockinOrderRequestVO.setStatus("900"); - List transferInOrder = queryOfsStockinOrder(queryOfsStockinOrderRequestVO); + queryOfsStockinOrderRequestVO.setReceivedAt_start(start); + queryOfsStockinOrderRequestVO.setReceivedAt_end(end); + List orders = queryOfsStockinOrder(queryOfsStockinOrderRequestVO); - if (transferInOrder == null || transferInOrder.size() == 0) { - Assert.state(false, "丽知:OFS调拨入库订单--->U8C调拨入库订单根据日期期间[开始时间]-[结束时间]:{}-{},未查询到调拨入库单[入库完成]", startTime, endTime); + if (orders == null || orders.size() == 0) { + Assert.state(false, "丽知:OFS调拨入库确认单--->U8C调拨入库订单根据日期期间[开始时间]-[结束时间]:{}-{},未查询到调拨入库单[入库完成]", startTime, endTime); } - //过滤日志 - List filterTransferInOrders = filterData(transferInOrder); - if (filterTransferInOrders.size() == 0) { - Assert.state(false, "丽知:OFS调拨入库订单--->U8C调拨入库订单根据日期期间[开始时间]-[结束时间]:{}-{},该调期调拨入库单[入库完成]已被推送成功,请勿重新推送", startTime, endTime); +// //过滤日志 + List filterOrders = filterData(orders); + if (filterOrders.size() == 0) { + Assert.state(false, "丽知:OFS调拨入库确认单--->U8C调拨入库订单根据日期期间[开始时间]-[结束时间]:{}-{},该调期调拨入库单[入库完成]已被推送成功,请勿重新推送", startTime, endTime); } - implement(filterTransferInOrders); + implement(filterOrders); } } catch (Exception e) { - logger.error("丽知:OFS调拨入库订单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单),start(String startTime, String endTime)方法报错:", e); + logger.error("丽知:OFS调拨入库确认单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单),start(String startTime, String endTime)方法报错:", e); } } @@ -256,15 +257,16 @@ public class TransferInPluginInitializer extends PluginBaseEntity { * * @return */ - public List filterData(List stockinOrders) { - List filterStockinOrders = new ArrayList<>(); - for (StockinOrderSearchResponse.StockinOrder stockinOrder : stockinOrders) { - StockinOrderSearchResponse.StockinOrder.StockinH header = stockinOrder.getHeader(); + public List filterData(List orders) { + //需要改变为确认单的id 不在使用调拨入库单单号,可以记录为调拨入库单_确认单id + List filterOrders = new ArrayList<>(); + for (OFSReceiptConfirmSearchResponse.Order order : orders) { + OFSReceiptConfirmSearchResponse.Header header = order.getHeader(); //过滤"NMNS"\"YNS"\"HJ" - if("NMNS".equals(header.getCompanyCode())||"YNS".equals(header.getCompanyCode())||"HJ".equals(header.getCompanyCode())){ + if (FILTER_CORP_LIST.contains(header.getCompanyCode())) { continue; } - String rootAppPk = header.getCode(); + String rootAppPk = header.getCode() + "_" + header.getId(); boolean isExis = true; IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity(); integrationTaskLivingDetailsEntity.setRootAppPk(rootAppPk); @@ -275,35 +277,34 @@ public class TransferInPluginInitializer extends PluginBaseEntity { isExis = false; } if (!isExis) { - filterStockinOrders.add(stockinOrder); + filterOrders.add(order); } } - return filterStockinOrders; + return filterOrders; } /** - * ofs调拨入库推送u8c调拨入库,关联调拨订单。 + * ofs调拨入库确认单推送u8c调拨入库,关联调拨订单出库单。 *

- * 根据ofs调拨订单,可以查询到u8c调拨订单 + * 根据ofs调拨订单号,可以查询到u8c调拨订单、调拨出库单 * u8c调拨出库单子表的来源单据号vsourcebillcode(调拨订单号) - * - * @param filterTransferInOrders */ - public void implement(List filterTransferInOrders) { - for (StockinOrderSearchResponse.StockinOrder transferInOrders : filterTransferInOrders) { + public void implement(List filterOrders) { + for (OFSReceiptConfirmSearchResponse.Order order : filterOrders) { + OFSReceiptConfirmSearchResponse.Header ofsHeader = order.getHeader(); + System.out.println(ofsHeader); + String mapStr = ""; String format = ""; String response = ""; String ofsCode = ""; try { - StockinOrderSearchResponse.StockinOrder.StockinH ofsTransferHeader = transferInOrders.getHeader(); - //ofs调拨订单号 - String ofsSourceOrderCode = ofsTransferHeader.getSourceOrderCode(); - //ofs调拨入库单单号 - ofsCode = ofsTransferHeader.getCode(); + String ofsRefOrderCode = ofsHeader.getRefOrderCode(); + //ofs调拨入库确认单单号 + ofsCode = ofsHeader.getCode(); //ofs最后修改时间,调入时间 - format = ofsTransferHeader.getLastUpdated(); + format = ofsHeader.getLastUpdated(); GeneralBillVO generalBillVO = new GeneralBillVO(); //主表 @@ -311,26 +312,24 @@ public class TransferInPluginInitializer extends PluginBaseEntity { //coperatorid 制单人 parentvo.setCoperatorid("tbadmin"); //cwarehouseid 仓库 - parentvo.setCwarehouseid(ofsTransferHeader.getFacilityCode()); + parentvo.setCwarehouseid(ofsHeader.getFacilityCode()); //pk_calbody 库存组织 - String corpCode = queryU8CEntityUtil.queryBdDefDocByPkDefDocList(ofsTransferHeader.getCompanyCode()); + String corpCode = queryU8CEntityUtil.queryBdDefDocByPkDefDocList(ofsHeader.getCompanyCode()); parentvo.setPk_calbody(corpCode); //pk_corp 公司 parentvo.setPk_corp(corpCode); //pk_defdoc19 自定义项19(ofs调拨订单号) - parentvo.setVuserdef19(ofsSourceOrderCode); + parentvo.setVuserdef19(ofsRefOrderCode); //dbilldate 单据日期 parentvo.setDbilldate(format.substring(0, 10)); - //U8C调拨订单信息 -// List toBillEntityList = queryToBillByPkVdefdoc19(ofsSourceOrderCode); //U8C调拨出库单主表信息 - List icGeneralHEntityList = queryIcGeneralHByVdef19(ofsSourceOrderCode); + List icGeneralHEntityList = queryIcGeneralHByVdef19(ofsRefOrderCode); if (icGeneralHEntityList == null) { - Assert.state(false, "在U8C内根据OFS调拨订单号(vdefdoc19):{},没有查询到调拨出库单,请检查。", ofsSourceOrderCode); + Assert.state(false, "在U8C内根据OFS调拨订单号(vdefdoc19):{},没有查询到调拨出库单,请检查。", ofsRefOrderCode); } if (icGeneralHEntityList.size() > 1) { - Assert.state(false, "在U8C内根据OFS调拨订单号(vdefdoc19):{},查询到调拨出库单不唯一,请检查。", ofsSourceOrderCode); + Assert.state(false, "在U8C内根据OFS调拨订单号(vdefdoc19):{},查询到调拨出库单不唯一,请检查。", ofsRefOrderCode); } IcGeneralHEntity icGeneralHEntity = icGeneralHEntityList.get(0); @@ -342,13 +341,13 @@ public class TransferInPluginInitializer extends PluginBaseEntity { List ChildrenList = new ArrayList<>(); int i = 1; - for (StockinOrderSearchResponse.StockinOrder.StockinB ofsTransferDetail : transferInOrders.getDetails()) { + for (OFSReceiptConfirmSearchResponse.Detail detail : order.getDetails()) { GeneralBillVO.Childrenvo childrenvo = new GeneralBillVO.Childrenvo(); //cinventoryid 存货 - childrenvo.setCinventoryid(ofsTransferDetail.getSkuCode()); + childrenvo.setCinventoryid(detail.getSkuCode()); //ninnum 实收数量 - childrenvo.setNinnum(ofsTransferDetail.getReceivedQty()); + childrenvo.setNinnum(detail.getReceivedQty()); //csourcetype 来源单据类型编码 childrenvo.setCsourcetype("4Y"); //vsourcebillcode 来源单据号 @@ -357,11 +356,11 @@ public class TransferInPluginInitializer extends PluginBaseEntity { for (IcGeneralBEntity icGeneralBEntity : icGeneralBEntityList) { //根据存货+行号匹配 - if (ofsTransferDetail.getRefOrderDetailId().equals(icGeneralBEntity.getVuserdef20().trim()) && ofsTransferDetail.getSkuCode().equals(icGeneralBEntity.getCinvbascode())) { + if (detail.getRefOrderDetailId().equals(icGeneralBEntity.getVuserdef20().trim()) && detail.getSkuCode().equals(icGeneralBEntity.getCinvbascode())) { //crowno 行号 childrenvo.setCrowno(i++ + "0"); //ofs来源单据行行号 - childrenvo.setVuserdef20(ofsTransferDetail.getRefOrderDetailId()); + childrenvo.setVuserdef20(detail.getRefOrderDetailId()); //vsourcerowno 来源单据行号 childrenvo.setVsourcerowno(icGeneralBEntity.getCrowno()); break; @@ -374,11 +373,11 @@ public class TransferInPluginInitializer extends PluginBaseEntity { mapStr = "{\"GeneralBillVO\":[" + JSONUtil.toJsonStr(generalBillVO) + "]}"; ZTResult ztResult = pushU8CByApiCode.pushByCode(OverallConstant.getOverAllValue("approveInqzCode"), mapStr); - //两层判断,一层中台转发,一层u8c返回 + //中台返回结果 if ("false".equals(ztResult.getFlag())) { //转发失败 response = JSONUtil.toJsonStr(ztResult.getAttribute()); - Assert.state(false, "丽知:OFS调拨入库订单--->U8C调拨入库订单.中台转发失败,失败原因:{}", response); + Assert.state(false, "丽知:OFS调拨入库确认单--->U8C调拨入库订单.中台转发失败,失败原因:{}", response); } Attribute attribute = ztResult.getAttribute(); boolean isSuccess = false; @@ -390,7 +389,7 @@ public class TransferInPluginInitializer extends PluginBaseEntity { vbillcode = generalBill.getParentvo().getVbillcode(); } if (!isSuccess) { - Assert.state(false, "推送U8C--> 丽知:OFS调拨入库订单--->U8C调拨入库订单 失败 接口返回结果:{} 接口入参:{}", response, mapStr); + Assert.state(false, "推送U8C--> 丽知:OFS调拨入库确认单--->U8C调拨入库订单 失败 接口返回结果:{} 接口入参:{}", response, mapStr); } //成功 @@ -400,19 +399,19 @@ public class TransferInPluginInitializer extends PluginBaseEntity { integrationTaskLivingDetailsEntity.setNewTransmitInfo(response); integrationTaskLivingDetailsEntity.setNewPushDate(new Date()); integrationTaskLivingDetailsEntity.setBusinessDate(format); - integrationTaskLivingDetailsEntity.setRootAppPk(ofsCode); + integrationTaskLivingDetailsEntity.setRootAppPk(ofsCode + "_" + ofsHeader.getId()); integrationTaskLivingDetailsEntity.setRootAppBill(ofsCode); - integrationTaskLivingDetailsEntity.setNewSystemNumber(corpCode+"_"+vbillcode); + integrationTaskLivingDetailsEntity.setNewSystemNumber(corpCode + "_" + vbillcode); integrationTaskLivingDetailsEntity.setPluginId(getPluginId()); saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity); } catch (Exception e) { e.printStackTrace(); - logger.error("推送U8C,丽知:OFS调拨入库订单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单)失败,失败原因:" + e); + logger.error("推送U8C,丽知:OFS调拨入库确认单--->U8C调拨入库订单(保存签字,关联U8C调拨出库单)失败,失败原因:" + e); ReusltStrDto reusltStrDto = JSON.parseObject(response, ReusltStrDto.class); String ErrMessage = null; if (reusltStrDto != null) { - ErrMessage = "推送U8C,丽知:OFS调拨入库订单--->U8C调拨入库订单,失败原因:" + reusltStrDto.getErrormsg(); + ErrMessage = "推送U8C,丽知:OFS调拨入库确认单--->U8C调拨入库订单,失败原因:" + reusltStrDto.getErrormsg(); } else { ErrMessage = e.getMessage(); } @@ -423,7 +422,7 @@ public class TransferInPluginInitializer extends PluginBaseEntity { integrationTaskLivingDetailsEntity.setNewTransmitInfo(ErrMessage); integrationTaskLivingDetailsEntity.setNewPushDate(new Date()); integrationTaskLivingDetailsEntity.setBusinessDate(format); - integrationTaskLivingDetailsEntity.setRootAppPk(ofsCode); + integrationTaskLivingDetailsEntity.setRootAppPk(ofsCode + "_" + ofsHeader.getId()); integrationTaskLivingDetailsEntity.setRootAppBill(ofsCode); integrationTaskLivingDetailsEntity.setPluginId(getPluginId()); saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity); @@ -443,80 +442,86 @@ public class TransferInPluginInitializer extends PluginBaseEntity { } catch (Exception e) { e.printStackTrace(); logger.error("解析返回参数失败的错误", e); - //如果解析失败,记录原因,但是不能影响结果的记录 } return null; } +// /** +// * 查询ofs调拨入库单 +// */ +// public List queryOfsStockinOrder(QueryOfsStockinOrderRequestVO queryOfsStockinOrderRequestVO) throws Exception { +// Long pageNo = 1L; +// +// List all = new ArrayList<>(); +// +// InterfaceParamDto interfaceParamDto = new InterfaceParamDto(); +// interfaceParamDto.setApi("ofs.receipt.search"); +// queryOfsStockinOrderRequestVO.setInternalInstructionType("TRANSFER");//入库单类型 SALES销售 EXCHANGE换货 REISSUE补发RETURN销退 PURCHASE采购 PURCHASE_RETURN采退 TRANSFER调拨 WORK_ORDER加工 OTHER其他 ADJUST调整 EXCHANGE换货 +// queryOfsStockinOrderRequestVO.setClientCode("LETS"); +// queryOfsStockinOrderRequestVO.setPageNo(pageNo); +// queryOfsStockinOrderRequestVO.setPageSize(500L); +// interfaceParamDto.setData(JSON.toJSONString(queryOfsStockinOrderRequestVO)); +// StockinOrderSearchResponse stockinOrderSearchResponse = (StockinOrderSearchResponse) ofsUnifiedService.unified(interfaceParamDto); +// if (stockinOrderSearchResponse.getData() == null || stockinOrderSearchResponse.getData().size() == 0) { +// return null; +// } +// all.addAll(stockinOrderSearchResponse.getData()); +// +// int count = stockinOrderSearchResponse.getData().size(); +// while (count >= 500) {//>=500,可能还有下一页。 +// //还有下一页 +// pageNo++; +// queryOfsStockinOrderRequestVO.setPageNo(pageNo); +// interfaceParamDto.setData(JSON.toJSONString(queryOfsStockinOrderRequestVO)); +// StockinOrderSearchResponse stockinOrderSearchResponse1 = (StockinOrderSearchResponse) ofsUnifiedService.unified(interfaceParamDto); +// +// all.addAll(stockinOrderSearchResponse1.getData()); +// +// count = stockinOrderSearchResponse1.getData().size(); +// } +// +// return all; +// } + /** - * 查询ofs调拨入库单 - * - * @param queryOfsStockinOrderRequestVO - * @return - * @throws Exception + * 查询ofs调拨入库确认单 */ - public List queryOfsStockinOrder(QueryOfsStockinOrderRequestVO queryOfsStockinOrderRequestVO) throws Exception { + public List queryOfsStockinOrder(QueryOfsStockinOrderRequestVO queryOfsStockinOrderRequestVO) throws Exception { Long pageNo = 1L; - List all = new ArrayList<>(); + List all = new ArrayList<>(); InterfaceParamDto interfaceParamDto = new InterfaceParamDto(); - interfaceParamDto.setApi("ofs.receipt.search"); + interfaceParamDto.setApi("ofs.receipt.confirm.search"); queryOfsStockinOrderRequestVO.setInternalInstructionType("TRANSFER");//入库单类型 SALES销售 EXCHANGE换货 REISSUE补发RETURN销退 PURCHASE采购 PURCHASE_RETURN采退 TRANSFER调拨 WORK_ORDER加工 OTHER其他 ADJUST调整 EXCHANGE换货 queryOfsStockinOrderRequestVO.setClientCode("LETS"); queryOfsStockinOrderRequestVO.setPageNo(pageNo); queryOfsStockinOrderRequestVO.setPageSize(500L); + queryOfsStockinOrderRequestVO.setStatus("900");//状态 500待同步 510已同步 700收货中 900入库完成 911作废 100订单池 200暂挂 400待合单 410待出库单出库 interfaceParamDto.setData(JSON.toJSONString(queryOfsStockinOrderRequestVO)); - StockinOrderSearchResponse stockinOrderSearchResponse = (StockinOrderSearchResponse) ofsUnifiedService.unified(interfaceParamDto); - if (stockinOrderSearchResponse.getData() == null || stockinOrderSearchResponse.getData().size() == 0) { + OFSReceiptConfirmSearchResponse ofsReceiptConfirmSearchResponse = (OFSReceiptConfirmSearchResponse) ofsUnifiedService.unified(interfaceParamDto); + if (ofsReceiptConfirmSearchResponse.getData() == null || ofsReceiptConfirmSearchResponse.getData().size() == 0) { return null; } - all.addAll(stockinOrderSearchResponse.getData()); + all.addAll(ofsReceiptConfirmSearchResponse.getData()); - int count = stockinOrderSearchResponse.getData().size(); + int count = ofsReceiptConfirmSearchResponse.getData().size(); while (count >= 500) {//>=500,可能还有下一页。 //还有下一页 pageNo++; queryOfsStockinOrderRequestVO.setPageNo(pageNo); interfaceParamDto.setData(JSON.toJSONString(queryOfsStockinOrderRequestVO)); - StockinOrderSearchResponse stockinOrderSearchResponse1 = (StockinOrderSearchResponse) ofsUnifiedService.unified(interfaceParamDto); + OFSReceiptConfirmSearchResponse ofsReceiptConfirmSearchResponse1 = (OFSReceiptConfirmSearchResponse) ofsUnifiedService.unified(interfaceParamDto); - all.addAll(stockinOrderSearchResponse1.getData()); + all.addAll(ofsReceiptConfirmSearchResponse1.getData()); - count = stockinOrderSearchResponse1.getData().size(); + count = ofsReceiptConfirmSearchResponse1.getData().size(); } return all; } - /** - * 根据单号查询调拨单 to_bill 单据主表 单据 - * - * @param vcode - */ - public List queryToBillByVCode(String vcode) { - ToBillEntity toBillEntity = new ToBillEntity(); - toBillEntity.setVcode(vcode); - toBillEntity.setCbilltype("5X"); - List toBillEntityList = toBillDao.queryToBillEntity(toBillEntity); - return toBillEntityList; - } - - /** - * 根据自定义项19(ofs调拨订单单号),查询u8c调拨订单 - * - * @param pkDefdoc19 - * @return - */ - public List queryToBillByPkVdefdoc19(String pkDefdoc19) { - ToBillEntity toBillEntity = new ToBillEntity(); - toBillEntity.setPkDefdoc19(pkDefdoc19); - toBillEntity.setCbilltype("5X"); - toBillEntity.setDataSourceCode(ProfilesActiveConstant.LETS_DATE_SOURCE); - List toBillEntityList = toBillDao.query(toBillEntity); - return toBillEntityList; - } /** * 根据调拨出库单主表自定义项19(ofs调拨订单号)查询调拨出库单主表 @@ -538,10 +543,6 @@ public class TransferInPluginInitializer extends PluginBaseEntity { * 根据调拨出库单主表主键,查询调拨出库单子表 */ public List queryIcGeneralBByCgeneralhid(String cgeneralhid) { -// IcGeneralBEntity icGeneralBEntity = new IcGeneralBEntity(); -// icGeneralBEntity.setDr(0); -// icGeneralBEntity.setCgeneralhid(cgeneralhid); -// icGeneralBEntity.setDataSourceCode(ProfilesActiveConstant.LETS_DATE_SOURCE); List icGeneralBEntityList = icGeneralBDao.queryAndCinvbasCode(cgeneralhid); if (icGeneralBEntityList == null || icGeneralBEntityList.size() == 0) { return null; diff --git a/service/src/main/java/com/hzya/frame/ttxofs/basics/ApiDtoCacheMap.java b/service/src/main/java/com/hzya/frame/ttxofs/basics/ApiDtoCacheMap.java index e1ee7f0b..8f6ee1bd 100644 --- a/service/src/main/java/com/hzya/frame/ttxofs/basics/ApiDtoCacheMap.java +++ b/service/src/main/java/com/hzya/frame/ttxofs/basics/ApiDtoCacheMap.java @@ -5,6 +5,7 @@ import com.hzya.frame.ttxofs.dto.ofsBaseSearch.OFSSKUClassSearchResponse; import com.hzya.frame.ttxofs.dto.ofsBaseSearch.OFSSKUSearchResponse; import com.hzya.frame.ttxofs.dto.ofsBaseSearch.OfsShopReturnMessageDto; import com.hzya.frame.ttxofs.dto.ofsBaseSearch.OfsSupplierReturnMessageDto; +import com.hzya.frame.ttxofs.dto.ofsReceiptConfirmSearch.OFSReceiptConfirmSearchResponse; import com.hzya.frame.ttxofs.dto.ofsTransferOrderSearch.OFSAdjustOrderSearchResponse; import com.hzya.frame.ttxofs.dto.ofsTransferOrderSearch.OFSTranseferOrderSearchResponse; import com.hzya.frame.ttxofs.dto.ofspoorder.OfsPoOrderBean; @@ -50,5 +51,7 @@ public class ApiDtoCacheMap { apiDtoCacheMap.put("ofs.purchaseOrder.search", new OfsPoOrderBean());//采购订单 apiDtoCacheMap.put("ofs.purchaseReturnOrder.search", new PurchaseReturnOrderBean());//采退订单 apiDtoCacheMap.put("ofs.adjustOrder.search", new OFSAdjustOrderSearchResponse());//调整单 + + apiDtoCacheMap.put("ofs.receipt.confirm.search", new OFSReceiptConfirmSearchResponse());//调整单 } } diff --git a/service/src/main/java/com/hzya/frame/ttxofs/dto/InterfaceParamDto.java b/service/src/main/java/com/hzya/frame/ttxofs/dto/InterfaceParamDto.java index 3e80e5fb..a80d226e 100644 --- a/service/src/main/java/com/hzya/frame/ttxofs/dto/InterfaceParamDto.java +++ b/service/src/main/java/com/hzya/frame/ttxofs/dto/InterfaceParamDto.java @@ -18,15 +18,15 @@ public class InterfaceParamDto extends InterfaceBasics { private String format = "json"; - private String appKey = "1023142858"; -// private String appKey = "2097046829"; +// private String appKey = "1023142858"; + private String appKey = "2097046829"; private String v = "1.0"; private String sign; - private String secret = "382e4a2584027a36ac9431103"; -// private String secret = "35282f251476a3af4f00c7b36"; +// private String secret = "382e4a2584027a36ac9431103"; + private String secret = "35282f251476a3af4f00c7b36"; private String timestamp; diff --git a/service/src/main/java/com/hzya/frame/ttxofs/dto/ofsReceiptConfirmSearch/OFSReceiptConfirmSearchResponse.java b/service/src/main/java/com/hzya/frame/ttxofs/dto/ofsReceiptConfirmSearch/OFSReceiptConfirmSearchResponse.java new file mode 100644 index 00000000..681ff22f --- /dev/null +++ b/service/src/main/java/com/hzya/frame/ttxofs/dto/ofsReceiptConfirmSearch/OFSReceiptConfirmSearchResponse.java @@ -0,0 +1,378 @@ +package com.hzya.frame.ttxofs.dto.ofsReceiptConfirmSearch; + +import com.hzya.frame.ttxofs.basics.ReturnMessageBasics; +import com.hzya.frame.ttxofs.dto.ofsTransferOrderSearch.OFSAdjustOrderSearchResponse; +import lombok.Data; + +import java.util.List; + +/** + * Created by zydd on 2025-03-06 16:29 + */ +@Data +public class OFSReceiptConfirmSearchResponse extends ReturnMessageBasics { + + + private List data; + + @Data + public class Order { + private Header header; + private List details; + } + + @Data + public class Header { + /** + * id + */ + private String id; + /** + * 入库单 + */ + private String code; + /** + * 组织 + */ + private String clientCode; + /** + * 货主 + */ + private String companyCode; + /** + * 库存地点 + */ + private String facilityCode; + /** + * 入库单id + */ + private String receiptId; + /** + * 入库单编码 + */ + private String receiptCode; + /** + * 关联订单id + */ + private String refOrderId; + /** + * 关联订单 + */ + private String refOrderCode; + /** + * 入库类型 + */ + private String internalInstructionType; + /** + * 业务渠道 + */ + private String bizChannel; + /** + * 总数量 + */ + private String totalQty; + /** + * 处理状态 + */ + private String status; + /** + * 来源类型 + */ + private String sourceType; + /** + * 重试次数 + */ + private String retryCount; + /** + * 外部业务编码 + */ + private String outBizCode; + /** + * 确认类型 + */ + private String confirmType; + /** + * 创建时间 + */ + private String created; + /** + * 创建用户 + */ + private String createdBy; + /** + * 更新时间 + */ + private String lastUpdated; + /** + * 更新用户 + */ + private String lastUpdatedBy; + /** + * 数据版本 + */ + private String version; + /** + * 处理标记 + */ + private String processStamp; + /** + * 自定义字段1 + */ + private String userDef1; + /** + * 自定义字段2 + */ + private String userDef2; + /** + * 自定义字段3 + */ + private String userDef3; + /** + * 自定义字段4 + */ + private String userDef4; + /** + * 自定义字段5 + */ + private String userDef5; + /** + * 自定义字段6 + */ + private String userDef6; + /** + * 自定义字段7 + */ + private String userDef7; + /** + * 自定义字段8 + */ + private String userDef8; + /** + * 收货时间 + */ + private String receivedAt; + /** + * 收货人 + */ + private String receivedBy; + /** + * 异常类型 + */ + private String errorCode; + /** + * 异常描述 + */ + private String errorDesc; + /** + * 推送状态:0-未推送、1-已推送、2-推送失败 + */ + private String pushU8Status; + } + + @Data + public class Detail { + + /** + * id + */ + private String id; + /** + * 入库确认单id + */ + private String receiptConfirmId; + /** + * 入库确认单 + */ + private String receiptConfirmCode; + /** + * 组织 + */ + private String clientCode; + /** + * 货主 + */ + private String companyCode; + /** + * 库存地点 + */ + private String facilityCode; + /** + * 入库单id + */ + private String receiptId; + /** + * 入库单 + */ + private String receiptCode; + /** + * 入库单明细id + */ + private String receiptDetailId; + /** + * 关联订单ID + */ + private String refOrderId; + /** + * 关联订单 + */ + private String refOrderCode; + /** + * 关联订单明细id + */ + private String refOrderDetailId; + /** + * sku编码 + */ + private String skuCode; + /** + * SKU名称 + */ + private String skuName; + /** + * 收货数量 + */ + private String receivedQty; + /** + * 在途数量 + */ + private String inTransQty; + /** + * 可退数量 + */ + private String returnableQty; + /** + * 单位 + */ + private String quantityUM; + /** + * 库存id + */ + private String inventoryId; + /** + * 在库数量 + */ + private String onHandInvId; + /** + * 库存状态 + */ + private String inventorySts; + /** + * 批号 + */ + private String lot; + /** + * 批次 + */ + private String batch; + /** + * 入库日期 + */ + private String agingDate; + /** + * 失效日期 + */ + private String expirationDate; + /** + * 生产日期 + */ + private String mfgDate; + /** + * 批属性1 + */ + private String attribute1; + /** + * 批属性2 + */ + private String attribute2; + /** + * 批属性3 + */ + private String attribute3; + /** + * 批属性4 + */ + private String attribute4; + /** + * 总重量 + */ + private String totalWeight; + /** + * 总体积 + */ + private String totalVolume; + /** + * 总材积 + */ + private String totalVolumeWeight; + /** + * 重量单位 + */ + private String weightUM; + /** + * 体积单位 + */ + private String volumeUM; + /** + * 创建时间 + */ + private String created; + /** + * 创建用户 + */ + private String createdBy; + /** + * 更新时间 + */ + private String lastUpdated; + /** + * 更新用户 + */ + private String lastUpdatedBy; + /** + * 数据版本 + */ + private String version; + /** + * 处理标记 + */ + private String processStamp; + /** + * 自定义字段1 + */ + private String userDef1; + /** + * 自定义字段2 + */ + private String userDef2; + /** + * 自定义字段3 + */ + private String userDef3; + /** + * 自定义字段4 + */ + private String userDef4; + /** + * 自定义字段5 + */ + private String userDef5; + /** + * 自定义字段6 + */ + private String userDef6; + /** + * 自定义字段7 + */ + private String userDef7; + /** + * 自定义字段8 + */ + private String userDef8; + /** + * 备案编码 + */ + private String registerCode; + } + + +}