From 143a29a2d9e60ef8ad477f864079d992901453b6 Mon Sep 17 00:00:00 2001 From: "lidy@connor.net.cn" Date: Thu, 30 May 2024 17:14:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AD=A6=E6=B1=89=E5=BC=82=E6=AD=A5=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=A0=B9=E6=8D=AE=E5=9B=BE=E7=BA=B8=E6=8C=87=E6=B4=BE?= =?UTF-8?q?=E6=89=B9=E6=AC=A1=E5=8F=B7=E7=9A=84=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yunpi/command/BomSendSapController.java | 48 ++++++++++++------- .../chint/yunpi/command/BomSendSapWhFram.java | 2 +- 2 files changed, 33 insertions(+), 17 deletions(-) diff --git a/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapController.java b/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapController.java index 9737683..b6daef1 100644 --- a/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapController.java +++ b/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapController.java @@ -22,7 +22,7 @@ import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; -import com.alibaba.fastjson2.JSONArray; +//import com.alibaba.fastjson2.JSONArray; //import com.connor.chint.sap2.sap.SAPPushBOMBean; //import com.connor.chint.sap2.sap_by.SAPBYOperation; //import com.connor.chint.sap2.sap_zy.PartBean; @@ -41,6 +41,7 @@ import com.squareup.okhttp.Request; import com.squareup.okhttp.RequestBody; import com.squareup.okhttp.Response; import com.teamcenter.rac.aif.AbstractAIFApplication; +import com.teamcenter.rac.aif.kernel.AIFComponentContext; import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent; import com.teamcenter.rac.kernel.ListOfValuesInfo; import com.teamcenter.rac.kernel.TCComponent; @@ -512,27 +513,42 @@ public class BomSendSapController { String dataTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String zt2_WBSNo = project.getStringProperty("zt2_WBSNo"); String object_name = project.getStringProperty("object_name"); - String code = BomUtilWh.getCode().toString(); List selectedParts = getSelectedParts(); - JSONArray array = new JSONArray(); - StringBuilder uids = new StringBuilder(""); +// JSONArray array = new JSONArray(); +// StringBuilder uids = new StringBuilder(""); + HashMap uids = new HashMap<>(); for (int i = 0; i < selectedParts.size(); i++) { - String uid = selectedParts.get(i).getPart().getUid(); - array.add(uid); - uids.append(uid).append(":"); + //lidy20240528图纸不同的零件使用不同的批次号写入数据库 + TCComponentItemRevision part = selectedParts.get(i).getPart(); + AIFComponentContext[] designs = BomToSapUtil.getPseudoFolder(part, "TC_Is_Represented_By").getChildren(); + String uid = part.getUid(); +// array.add(uid); + //uids.append(uid).append(":"); + if(designs == null || designs.length == 0) { + uids.put("" + i, new StringBuilder(uid)); + }else { + String design = ((TCComponentItemRevision)designs[0].getComponent()).getItem().getLatestItemRevision().getUid(); + if(uids.containsKey(design)) + uids.get(design).append(":").append(uid); + else + uids.put(design, new StringBuilder(uid)); + } } + for(StringBuilder uid : uids.values()) { + String code = BomUtilWh.getCode().toString(); // obj.put("uid", array); // OkHttpClient client = new OkHttpClient(); - String substring = uids.substring(0, uids.length() - 1); - // 新增字段 项目UID,执行人,改成定时执行,不调用接口 - String serverHostname = session.getServerHostname(); - System.out.println("serverHostname===>" + serverHostname); - String sql = "insert into CHINT_BOM_TO_SAP_SUM (code,factory,\"USER\",starttime,wbsno,projectno,taskstauts" - + ",plmresult,transfer,keymsg,sapresult,PROJECTUID,SERVERHOST,USERID) values " - + "(?,?,?,to_date(?,'yyyy-mm-ddhh24:mi:ss')" + ",?,?,'等待组织','未处理',?,?,'未返回',?,?,?)"; // to_date(?,'yyyy-mm-ddhh24:mi:ss') - SqlUtil.write(sql, new String[] { code + "", "M060", userName, dataTime, zt2_WBSNo, object_name, - "产成品", substring, project.getUid(), serverHostname, userId }); +// String substring = uids.substring(0, uids.length() - 1); + // 新增字段 项目UID,执行人,改成定时执行,不调用接口 + String serverHostname = session.getServerHostname(); + System.out.println("serverHostname===>" + serverHostname); + String sql = "insert into CHINT_BOM_TO_SAP_SUM (code,factory,\"USER\",starttime,wbsno,projectno,taskstauts" + + ",plmresult,transfer,keymsg,sapresult,PROJECTUID,SERVERHOST,USERID) values " + + "(?,?,?,to_date(?,'yyyy-mm-ddhh24:mi:ss')" + ",?,?,'等待组织','未处理',?,?,'未返回',?,?,?)"; // to_date(?,'yyyy-mm-ddhh24:mi:ss') + SqlUtil.write(sql, new String[] { code + "", "M060", userName, dataTime, zt2_WBSNo, object_name, + "产成品", uid.toString(), project.getUid(), serverHostname, userId }); + } MessageBox.post(dialog, "传递请求已记录,请等待飞书通知.", "", MessageBox.INFORMATION); } catch (Exception e) { diff --git a/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapWhFram.java b/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapWhFram.java index 01bd1b0..7a4755f 100644 --- a/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapWhFram.java +++ b/com.connor.chint.wuhan/src/com/connor/chint/yunpi/command/BomSendSapWhFram.java @@ -204,7 +204,7 @@ public class BomSendSapWhFram extends AbstractAIFDialog { panel.add(b_qr); panel.add(b_cel); b_yb = new JButton("异步传递"); -// panel.add(b_yb); + panel.add(b_yb); return panel; }