From fa30baf3aac899ec38b876f4a6061889911e0e5a Mon Sep 17 00:00:00 2001 From: lihao Date: Tue, 21 Oct 2025 15:30:17 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E6=BA=90=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/pu/arrival/action/QCAction.java | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 pu/src/client/nccloud/web/pu/arrival/action/QCAction.java diff --git a/pu/src/client/nccloud/web/pu/arrival/action/QCAction.java b/pu/src/client/nccloud/web/pu/arrival/action/QCAction.java new file mode 100644 index 00000000..4985d2cf --- /dev/null +++ b/pu/src/client/nccloud/web/pu/arrival/action/QCAction.java @@ -0,0 +1,73 @@ +// +// Source code recreated from a .class file by IntelliJ IDEA +// (powered by FernFlower decompiler) +// + +package nccloud.web.pu.arrival.action; + +import java.util.HashMap; +import java.util.Map; +import nc.pubitf.pu.m23.pubquery.IArrivePubQuery; +import nc.vo.ml.NCLangRes4VoTransl; +import nc.vo.pu.m23.entity.ArriveItemVO; +import nc.vo.pu.m23.entity.ArriveVO; +import nc.vo.pub.lang.UFDateTime; +import nccloud.dto.pu.arrival.entity.ExeInfo; +import nccloud.dto.pu.arrival.entity.PkTsParamsVO; +import nccloud.framework.core.exception.ExceptionUtils; +import nccloud.framework.core.json.IJson; +import nccloud.framework.service.ServiceLocator; +import nccloud.framework.web.action.itf.ICommonAction; +import nccloud.framework.web.container.IRequest; +import nccloud.framework.web.json.JsonFactory; +import nccloud.framework.web.ui.pattern.billcard.BillCard; +import nccloud.framework.web.ui.pattern.billcard.BillCardOperator; +import nccloud.pubitf.pu.arrival.service.IArrivalExeService; +import nccloud.web.pu.arrival.utis.ArrivalScalaSetter; + +public class QCAction implements ICommonAction { + public QCAction() { + } + + public Object doAction(IRequest request) { + BillCard card = null; + + try { + String read = request.read(); + IJson json = JsonFactory.create(); + ExeInfo info = (ExeInfo)json.fromJson(read, ExeInfo.class); + Map idTsMap = new HashMap(); + if (info.getPkTsParams() != null && info.getPkTsParams().length > 0) { + for(PkTsParamsVO param : info.getPkTsParams()) { + idTsMap.put(param.getPk(), new UFDateTime(param.getTs())); + } + + if (idTsMap.size() > 0) { + IArrivePubQuery query = (IArrivePubQuery)ServiceLocator.find(IArrivePubQuery.class); + ArriveVO[] vos = query.queryAggVOByBids((String[])idTsMap.keySet().toArray(new String[idTsMap.keySet().size()])); + if (vos != null && vos.length > 0) { + for(ArriveItemVO item : vos[0].getBVO()) { + item.setTs((UFDateTime)idTsMap.get(item.getPk_arriveorder_b())); + } + + IArrivalExeService service = (IArrivalExeService)ServiceLocator.find(IArrivalExeService.class); + ArriveVO[] retVOs = service.qualityCheck(vos); + BillCardOperator operator = new BillCardOperator(info.getPageid()); + card = operator.toCard(retVOs[0]); + if (card != null) { + ArrivalScalaSetter.setArrivalScalaBillCard(card); + } + + return card; + } + + ExceptionUtils.wrapBusinessException(NCLangRes4VoTransl.getNCLangRes().getStrByID("4004100_0", "04004100-0003")); + } + } + } catch (Exception e) { + ExceptionUtils.wrapException(e); + } + + return null; + } +} From 9cd6448cae1d7584a466dfda361b02e7b5e14372 Mon Sep 17 00:00:00 2001 From: houyi <1398559711@qq.com> Date: Tue, 21 Oct 2025 15:53:50 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=89=A9=E6=96=99=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E4=BF=AE=E6=94=B9mes=E6=8E=A5=E5=8F=A3=20=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bd/material/baseinfo/MaterialToGyMesListener.java | 8 +++++++- .../uapbd/material/listener/MaterialToGyMesListener.java | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java b/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java index 7078ee5c..2878349d 100644 --- a/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java +++ b/uapbd/src/private/nc/impl/bd/material/baseinfo/MaterialToGyMesListener.java @@ -80,6 +80,7 @@ public class MaterialToGyMesListener implements IBusinessListener { * 构建同步数据 */ private void buildSyncData(MaterialVO[] useVOs, String eventType) throws BusinessException { + BaseDAO baseDAO = new BaseDAO(); JSONArray dataArr = new JSONArray(); for (MaterialVO vo : useVOs) { String pkMaterial = vo.getPk_material(); @@ -137,6 +138,11 @@ public class MaterialToGyMesListener implements IBusinessListener { singleObj.put("backflushMethod", prodMap.get("conversemethod")); // 倒冲方式 singleObj.put("postCompletionProcessing", prodMap.get("wghxcl")); // 完工后续处理 } + // 库存供货组织编码获取 + String mrlsql = "select code from org_stockorg where pk_stockorg = '" + stockMap.get("pk_suplystockorg") + "' "; + Map stockorg = (Map) baseDAO.executeQuery(mrlsql, new MapProcessor()); + singleObj.put("supplyInventoryOrg", stockorg.get("code"));// 库存供货组织 + singleObj.put("bipCreateBy", creatorName); // 创建人 dataArr.add(singleObj); /** @@ -215,7 +221,7 @@ public class MaterialToGyMesListener implements IBusinessListener { } private Map getStockInfo(String pkMaterial) throws BusinessException { - String sql = " select martype, wholemanaflag, outpriority, remain,bd_stordoc.code as pk_stordoc" + + String sql = " select pk_suplystockorg, martype, wholemanaflag, outpriority, remain,bd_stordoc.code as pk_stordoc" + " from bd_materialstock left join bd_stordoc on bd_stordoc.pk_stordoc = bd_materialstock.pk_stordoc " + " where pk_material = '" + pkMaterial + "' " + " and bd_materialstock.pk_org = '" + orgId + "' "; Map map = (Map) new BaseDAO().executeQuery(sql, new MapProcessor()); diff --git a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java index 5ddd4904..11876da4 100644 --- a/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java +++ b/uapbd/src/private/nccloud/api/uapbd/material/listener/MaterialToGyMesListener.java @@ -116,6 +116,7 @@ public class MaterialToGyMesListener implements IBusinessListener { * 构建同步数据 */ private void buildSyncData(MaterialVO[] useVOs, String eventType) throws BusinessException { + BaseDAO baseDAO = new BaseDAO(); JSONArray dataArr = new JSONArray(); for (MaterialVO vo : useVOs) { String pkMaterial = vo.getPk_material(); @@ -172,6 +173,11 @@ public class MaterialToGyMesListener implements IBusinessListener { singleObj.put("backflushMethod", prodMap.get("conversemethod")); // 倒冲方式 singleObj.put("postCompletionProcessing", prodMap.get("wghxcl")); // 完工后续处理 } + // 库存供货组织编码获取 + String mrlsql = "select code from org_stockorg where pk_stockorg = '" + stockMap.get("pk_suplystockorg") + "' "; + Map stockorg = (Map) baseDAO.executeQuery(mrlsql, new MapProcessor()); + singleObj.put("supplyInventoryOrg", stockorg.get("code"));// 库存供货组织 + singleObj.put("bipCreateBy", creatorName); // 创建人 dataArr.add(singleObj); /** @@ -298,7 +304,7 @@ public class MaterialToGyMesListener implements IBusinessListener { } private Map getStockInfo(String pkMaterial) throws BusinessException { - String sql = " select martype, wholemanaflag, outpriority, remain,bd_stordoc.code as pk_stordoc" + + String sql = " select pk_suplystockorg, martype, wholemanaflag, outpriority, remain,bd_stordoc.code as pk_stordoc" + " from bd_materialstock left join bd_stordoc on bd_stordoc.pk_stordoc = bd_materialstock.pk_stordoc " + " where pk_material = '" + pkMaterial + "' " + " and bd_materialstock.pk_org = '" + orgId + "' "; Map map = (Map) new BaseDAO().executeQuery(sql, new MapProcessor());