From 68609b09fa8f63b5785d5d4be11fb10401299b23 Mon Sep 17 00:00:00 2001 From: cyh Date: Fri, 26 Jan 2024 10:52:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=92=E6=84=9F=E5=99=A8=E6=88=90=E6=9C=ACBO?= =?UTF-8?q?M=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- com.connor.chint.sap2/plugin.xml | 30 +- .../chint/plm/costbomreport/BomCostBean.java | 117 +++ .../plm/costbomreport/BomCostReportCmd.java | 59 ++ .../plm/costbomreport/BomCostReportOp.java | 349 +++++++ .../src/com/chint/plm/costbomreport/Test.java | 27 + .../src/com/chint/plm/getGCTH/AutoKTOp.java | 18 + .../autofeedinghg/AutoFeedingCommand.java | 6 +- .../chint/sap2/batch/BatchAddController.java | 4 +- .../chint/sap2/batch/BatchAddDialog.java | 9 +- .../sap2/batch/BatchRemoveController.java | 2 +- .../chint/sap2/batch/BatchRemoveDialog.java | 7 +- .../sap2/batch/BatchReplaceController.java | 2 +- .../chint/sap2/batch/BatchReplaceDialog.java | 6 + .../chint/sap2/bean/BatchReviewBean.java | 13 +- .../sap2/commands/ArefreshThCommand.java | 6 +- .../sap2/commands/AutoCreateBomComd.java | 12 +- .../chint/sap2/lijc/SendProjectLcCommand.java | 15 +- .../proc_byq/CreateProcBYQController.java | 9 - .../sap2/sap_gy/GYApplyCodeControllerzt.java | 18 +- .../sap2/sap_zy/CcpApplyCodeController.java | 20 +- .../chint/sap2/sap_zy/CcpApplyCodeDialog.java | 3 + .../connor/chint/sap2/sap_zy/PartBean.java | 18 +- .../sap2/sap_zy/SAPZYDialogControllerzt.java | 277 ++++-- .../chint/sap2/sap_zy/SAPZYDialogzt.java | 926 +++++++++--------- .../sap2/sap_zy/ZYApplyCodeControllerzt.java | 20 +- .../sap2/sap_zy/ZYApplyCodeDialogzt.java | 5 +- .../connor/chint/sap2/util/BomToSapUtil.java | 75 +- .../com/connor/chint/sap2/util/SAPUtil.java | 31 +- .../WkpcsInfoWebServiceServiceLocator.java | 4 +- 29 files changed, 1462 insertions(+), 626 deletions(-) create mode 100644 com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostBean.java create mode 100644 com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportCmd.java create mode 100644 com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportOp.java create mode 100644 com.connor.chint.sap2/src/com/chint/plm/costbomreport/Test.java diff --git a/com.connor.chint.sap2/plugin.xml b/com.connor.chint.sap2/plugin.xml index d8a5b4d..c0a90df 100644 --- a/com.connor.chint.sap2/plugin.xml +++ b/com.connor.chint.sap2/plugin.xml @@ -300,11 +300,11 @@ - + - + @@ -1989,6 +1989,7 @@ + @@ -2779,6 +2780,27 @@ + + + + + + + + + + + + + + + + + + @@ -4037,7 +4059,7 @@ @@ -4058,7 +4080,7 @@ - --> + diff --git a/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostBean.java b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostBean.java new file mode 100644 index 0000000..fc8ab69 --- /dev/null +++ b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostBean.java @@ -0,0 +1,117 @@ +/** + * Copyright 2023 eSunny Info. Tech Ltd. All rights reserved. + * + * @Package: com.chint.plm.costbomreport + * @author: cyh + * @date: 20231226 11:21:45 + */ +package com.chint.plm.costbomreport; + +import java.math.BigDecimal; +import java.util.Objects; + +/** + * @author cyh + * + */ +public class BomCostBean { + + private String bomMaterial;// BOMϱzt2_BOMMaterial + private String objectDesc;// BOMbl_rev_object_desc + private String unit;// BOMbl_item_zt2_unit + private String blQuantity;// BOMbl_quantity +// private Boolean isDesign;// BOMϱ + private String utilization; + private String itemId; + public String getItemId() { + return itemId; + } + + public void setItemId(String itemId) { + this.itemId = itemId; + } + + public String getUtilization() { + return utilization; + } + + public void setUtilization(String utilization) { + this.utilization = utilization; + } + + public void addQuantity(String addQty) { + blQuantity = new BigDecimal(addQty).add(new BigDecimal(blQuantity)).setScale(2, BigDecimal.ROUND_HALF_UP) + .toString(); + } + + public BomCostBean(String bomMaterial, String objectDesc, String unit, String blQuantity) { + super(); + this.bomMaterial = bomMaterial; + this.objectDesc = objectDesc; + this.unit = unit; + this.blQuantity = blQuantity; +// this.isDesign = isDesign; + } + + public BomCostBean(String bomMaterial) { + super(); + this.bomMaterial = bomMaterial; + } + + public String getBomMaterial() { + return bomMaterial; + } + + public void setBomMaterial(String bomMaterial) { + this.bomMaterial = bomMaterial; + } + + public String getObjectDesc() { + return objectDesc; + } + + public void setObjectDesc(String objectDesc) { + this.objectDesc = objectDesc; + } + + public String getUnit() { + return unit; + } + + public void setUnit(String unit) { + this.unit = unit; + } + + public String getBlQuantity() { + return blQuantity; + } + + public void setBlQuantity(String blQuantity) { + this.blQuantity = blQuantity; + } + + @Override + public int hashCode() { + return Objects.hash(bomMaterial); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + BomCostBean other = (BomCostBean) obj; + return Objects.equals(bomMaterial, other.bomMaterial); + } + +// public Boolean getIsDesign() { +// return isDesign; +// } +// +// public void setIsDesign(Boolean isDesign) { +// this.isDesign = isDesign; +// } +} diff --git a/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportCmd.java b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportCmd.java new file mode 100644 index 0000000..107d45c --- /dev/null +++ b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportCmd.java @@ -0,0 +1,59 @@ +/** + * Copyright 2023 eSunny Info. Tech Ltd. All rights reserved. + * + * @Package: com.chint.plm.costbomreport + * @author: cyh + * @date: 20231226 11:14:48 + */ +package com.chint.plm.costbomreport; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.chint.plm.getGCTH.AutoKTBean; +import com.chint.plm.getGCTH.AutoKTOp; +import com.connor.chint.sap2.KCommand; +import com.connor.chint.sap2.util.BomToSapUtil; +import com.connor.chint.sap2.util.ChintPreferenceUtil; +import com.connor.chint.sap2.util.SAPUtil; +import com.teamcenter.rac.aif.AbstractAIFApplication; +import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent; +import com.teamcenter.rac.kernel.TCComponent; +import com.teamcenter.rac.kernel.TCComponentBOMLine; +import com.teamcenter.rac.kernel.TCComponentBOMWindow; +import com.teamcenter.rac.kernel.TCComponentBOMWindowType; +import com.teamcenter.rac.kernel.TCComponentItemRevision; +import com.teamcenter.rac.kernel.TCSession; +import com.teamcenter.rac.util.MessageBox; +import com.teamcenter.services.rac.cad._2007_01.StructureManagement.ExpandPSData; + +/** + * @author cyh + * + */ +public class BomCostReportCmd extends KCommand { + + public BomCostReportCmd(AbstractAIFApplication app, String commandId, String actionInfo) { + super(app, commandId, actionInfo); + TCSession session = (TCSession) app.getSession(); +// String groupID = ""; + try { +// groupID = SAPUtil.getGroupID(session); + InterfaceAIFComponent targetComponent = app.getTargetComponent(); + String type = targetComponent.getType(); + if (!type.equals("ZT2_Design3DRevision")) { + MessageBox.post("ѡͼֽ汾", "", MessageBox.ERROR); + return; + } + new BomCostReportOp(app, actionInfo, (TCComponent) targetComponent).executeOperation(); + + } catch (Exception e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } + + } + +} diff --git a/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportOp.java b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportOp.java new file mode 100644 index 0000000..592853e --- /dev/null +++ b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/BomCostReportOp.java @@ -0,0 +1,349 @@ +/** + * Copyright 2023 eSunny Info. Tech Ltd. All rights reserved. + * + * @Package: com.chint.plm.costbomreport + * @author: cyh + * @date: 20231226 11:33:52 + */ +package com.chint.plm.costbomreport; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.Date; +import java.util.List; +import java.util.Map; + +import javax.swing.filechooser.FileSystemView; + +import org.apache.poi.xssf.usermodel.XSSFRow; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; + +import com.chint.plm.getGCTH.AutoKTBean; +import com.connor.chint.sap2.sap.SAPXBController; +import com.connor.chint.sap2.sap.YCLMaterialBean; +import com.connor.chint.sap2.util.BomToSapUtil; +import com.connor.chint.sap2.util.KUtil; +import com.connor.chint.sap2.util.MyProgressBarCompent; +import com.connor.chint.sap2.util.SAPUtil; +import com.connor.chint.sap2.util.SqlUtil; +import com.teamcenter.rac.aif.AbstractAIFApplication; +import com.teamcenter.rac.aif.AbstractAIFOperation; +import com.teamcenter.rac.kernel.TCComponent; +import com.teamcenter.rac.kernel.TCComponentBOMLine; +import com.teamcenter.rac.kernel.TCComponentBOMWindow; +import com.teamcenter.rac.kernel.TCComponentBOMWindowType; +import com.teamcenter.rac.kernel.TCComponentItem; +import com.teamcenter.rac.kernel.TCComponentItemRevision; +import com.teamcenter.rac.kernel.TCComponentItemType; +import com.teamcenter.rac.kernel.TCComponentUser; +import com.teamcenter.rac.kernel.TCException; +import com.teamcenter.rac.kernel.TCSession; +import com.teamcenter.rac.util.MessageBox; +import com.teamcenter.services.rac.cad._2007_01.StructureManagement.ExpandPSData; + +/** + * BOM ϡͼֽԭϢ + * @author cyh + * + */ +public class BomCostReportOp extends AbstractAIFOperation { + + private AbstractAIFApplication app; + private TCSession session; + private TCComponent target; + + public BomCostReportOp(AbstractAIFApplication app, String actionInfo, TCComponent target) { + this.app = app; + this.session = (TCSession) app.getSession(); + this.target = target; + + } + + @Override + public void executeOperation() throws Exception { + // ƼӼ㣬⹺Լ ƼӼԭչ ϣ׼ + MyProgressBarCompent my = new MyProgressBarCompent("", "BOM......"); + try { + List designList = new ArrayList<>(); + List rawmList = new ArrayList<>(); + List standList = new ArrayList<>(); + // ⹺չ㡢ԭչ + TCComponentBOMWindowType bomWinType = (TCComponentBOMWindowType) session.getTypeComponent("BOMWindow"); + TCComponentBOMWindow win = bomWinType.create(null); + TCComponentItemRevision rev = (TCComponentItemRevision) target; + win.setWindowTopLine(rev.getItem(), rev, null, null); + TCComponentBOMLine bomline = win.getTopBOMLine(); + Map allBomMap = BomToSapUtil.getBomLineTreeNodeSOA(bomline); + // ݼģ CHINT_M046_CB excel + StringBuffer errMessage = new StringBuffer(""); + String strs[] = session.getPreferenceService().getStringValues("database_tc"); + if (SqlUtil.getTCDataConnection(strs) == null) { + MessageBox.post("ݿʧ,ѡ ", "", MessageBox.INFORMATION); + } + getAllBomCost(allBomMap, bomline, 1, designList, rawmList, standList, errMessage); + System.out.println("standList====>" + standList.size()); + File tempFile = BomToSapUtil.getFile(session, "CHINT_M046_CB", "MSExcelX"); + String excelName = rev.getProperty("item_id") + "_" + rev.getProperty("object_name") + "_" + + rev.getProperty("item_revision_id") + "_" + "BOM.xlsx"; + Collections.sort(designList, new Comparator() { + + @Override + public int compare(BomCostBean o1, BomCostBean o2) { + return o1.getItemId().compareTo(o2.getItemId()); + } + }); + String path = outputExcel(excelName, tempFile, designList, rawmList, standList); + + my.setVisible(false); + MessageBox.post("BOM,·:" + path, "", MessageBox.INFORMATION); + Runtime.getRuntime().exec("cmd /c start " + path); + } catch (Exception e) { + e.printStackTrace(); + } finally { + SqlUtil.freeAll(); + my.setVisible(false); + } + + } + + /** + * @param excelName + * @param tempFile + * @param standList + * @param rawmList + * @param designList + * @throws Exception + * @function + */ + private String outputExcel(String excelName, File tempFile, List designList, + List rawmList, List standList) throws Exception { + // TODO Auto-generated method stub + FileInputStream in = new FileInputStream(tempFile); + XSSFWorkbook wb = new XSSFWorkbook(in); + in.close(); + + XSSFSheet sheetAt = wb.getSheetAt(0); + int i = 1; + for (BomCostBean detailsBean : designList) { + // excelֵ + XSSFRow row1 = BomToSapUtil.getRow(sheetAt, i + 1); + BomToSapUtil.setCellValue(row1.getCell(0), 0, row1, i + "");// + BomToSapUtil.setCellValue(row1.getCell(1), 1, row1, detailsBean.getBomMaterial());// κ + BomToSapUtil.setCellValue(row1.getCell(2), 2, row1, detailsBean.getObjectDesc());// ϱ + BomToSapUtil.setCellValue(row1.getCell(3), 3, row1, detailsBean.getUnit());// WBS + BomToSapUtil.setCellValue(row1.getCell(4), 4, row1, detailsBean.getBlQuantity());// SAP״̬ + BomToSapUtil.setCellValue(row1.getCell(8), 8, row1, detailsBean.getUtilization());// Ϣ + i = i + 1; + } + for (BomCostBean detailsBean : rawmList) { + // excelֵ + XSSFRow row1 = BomToSapUtil.getRow(sheetAt, i + 1); + BomToSapUtil.setCellValue(row1.getCell(0), 0, row1, i + "");// + BomToSapUtil.setCellValue(row1.getCell(1), 1, row1, detailsBean.getBomMaterial());// κ + BomToSapUtil.setCellValue(row1.getCell(2), 2, row1, detailsBean.getObjectDesc());// ϱ + BomToSapUtil.setCellValue(row1.getCell(3), 3, row1, detailsBean.getUnit());// WBS + BomToSapUtil.setCellValue(row1.getCell(4), 4, row1, detailsBean.getBlQuantity());// SAP״̬ + BomToSapUtil.setCellValue(row1.getCell(8), 8, row1, detailsBean.getUtilization());// Ϣ + i = i + 1; + } + for (BomCostBean detailsBean : standList) { + // excelֵ + XSSFRow row1 = BomToSapUtil.getRow(sheetAt, i + 1); + BomToSapUtil.setCellValue(row1.getCell(0), 0, row1, i + "");// + BomToSapUtil.setCellValue(row1.getCell(1), 1, row1, detailsBean.getBomMaterial());// κ + BomToSapUtil.setCellValue(row1.getCell(2), 2, row1, detailsBean.getObjectDesc());// ϱ + BomToSapUtil.setCellValue(row1.getCell(3), 3, row1, detailsBean.getUnit());// WBS + BomToSapUtil.setCellValue(row1.getCell(4), 4, row1, detailsBean.getBlQuantity());// SAP״̬ + BomToSapUtil.setCellValue(row1.getCell(8), 8, row1, detailsBean.getUtilization());// Ϣ + i = i + 1; + } + // + File desktopDir = FileSystemView.getFileSystemView().getHomeDirectory(); + String desktopPath = desktopDir.getAbsolutePath(); + // ļ浽棬ƣʱ + File file2 = new File(desktopPath + File.separator + excelName); + FileOutputStream os = new FileOutputStream(file2); + wb.write(os); + os.flush(); + os.close(); + + return desktopPath + File.separator + excelName; + } + + /** + * @param allBomMap + * @param bomline + * @param standList ׼ + * @param rawmList ԭ + * @param designList ͼֽ + * @throws TCException + * @function BOMȡCOST + */ + private void getAllBomCost(Map allBomMap, TCComponentBOMLine bomline, double len, + List designList, List rawmList, List standList, + StringBuffer errMessage) throws Exception { + // TODO Auto-generated method stub + + ExpandPSData[] expandPSDatas = allBomMap.get(bomline.getUid()); + + for (ExpandPSData expandPSData : expandPSDatas) { + TCComponentBOMLine childLine = expandPSData.bomLine; + TCComponentItemRevision itemRevOfBOMLine = expandPSData.itemRevOfBOMLine; + String qty = childLine.getProperty("bl_quantity"); + String type = itemRevOfBOMLine.getType(); + if (type.equals("ZT2_Design3DRevision")) { + String ztSource = itemRevOfBOMLine.getProperty("zt2_Source"); + ExpandPSData[] childPSDatas = allBomMap.get(childLine.getUid()); + // ûӼ ԭչ + if (ztSource.equals("")) { + // Ӽ չ rev.getProperty("zt2_MaterialMark").trim(); + if (childPSDatas == null || childPSDatas.length == 0) { + String materialMark = itemRevOfBOMLine.getProperty("zt2_MaterialMark").trim(); + if (materialMark != null && !materialMark.isEmpty()) { + // չ + expandRawMatnr(materialMark, childLine, rawmList, len, errMessage); + } else { + // ȡrepresentation_for + TCComponent material = itemRevOfBOMLine.getRelatedComponent("representation_for"); + if (material != null) { + String materialNo = material.getProperty("zt2_MaterialNo"); + addToBeans(designList, materialNo, childLine, qty, len, null, material); + } + } + } else { + getAllBomCost(allBomMap, childLine, len * Double.parseDouble(qty), designList, rawmList, + standList, errMessage); + } + + } else if (ztSource.equals("⹺")) { + // ⹺չ + TCComponent material = itemRevOfBOMLine.getRelatedComponent("representation_for"); + if (material != null) { + String materialNo = material.getProperty("zt2_MaterialNo"); + addToBeans(designList, materialNo, childLine, qty, len, null, material); + } + } + } else { + // ׼ + String materialNo = itemRevOfBOMLine.getProperty("zt2_MaterialNo"); + addToBeans(standList, materialNo, childLine, qty, len, null, null); + } + } + + } + + /** + * + * @param materialMark + * @param len + * @param qty + * @param rawmList + * @param childLine + * @param errMessage + * @throws SQLException + * @throws TCException + * @function + */ + private void expandRawMatnr(String materialMark, TCComponentBOMLine childLine, List rawmList, + double len, StringBuffer errMessage) throws Exception { + // TODO Auto-generated method stub + ResultSet rs = SqlUtil.read(new Object[] { materialMark }, + SAPXBController.SQL_MATERIAL_QUERY.replaceAll("CHINT_M007_MATERIAL", "CHINT_M043_MATERIAL")); + TCComponentItemRevision comp = null; + String materialno = ""; // ϱ + String materialutilization = "";// + String materialunit = "";// λ + if (rs.next()) { + materialno = rs.getString(1); + materialutilization = rs.getString(2); + materialunit = rs.getString(3); + TCComponentItemType itemType = (TCComponentItemType) session.getTypeService().getTypeComponent("Item"); + TCComponentItem item = itemType.find(materialno); + if (item != null) { + comp = item.getLatestItemRevision(); + } else { + errMessage.append("tcвѯ[ID]Ϊ[" + materialno + "]ԭ;"); + } + } else { + errMessage.append("ѯ[ϱ]Ϊ[" + materialMark + "]ԭ;"); + return; + } + SqlUtil.free(); + String qty = getZYSAPMENGE2(materialutilization, childLine.getItemRevision(), childLine, errMessage); + addToBeans(rawmList, materialno, childLine, qty, len, materialutilization, comp); + } + + /** + * @param designList + * @param materialNo + * @param childLine + * @param qty + * @param len + * @param materialutilization + * @param comp + * @throws TCException + * @function + */ + private void addToBeans(List designList, String materialNo, TCComponentBOMLine childLine, String qty, + double len, String materialutilization, TCComponent comp) throws TCException { + // TODO Auto-generated method stub + int indexOf = designList.indexOf(new BomCostBean(materialNo)); + if (len != 1) { + qty = String.valueOf(Double.valueOf(qty) * len); + } + if (indexOf > -1) { + BomCostBean bomCostBean = designList.get(indexOf); + bomCostBean.addQuantity(qty); + } else { + String objectDesc = childLine.getProperty("bl_rev_object_desc");// bl_item_zt2_unit bl_quantity + if (comp != null) { + objectDesc = comp.getProperty("object_desc"); + } + String itemId = childLine.getItemRevision().getProperty("item_id"); + String unit = childLine.getProperty("bl_item_zt2_unit"); + BomCostBean bomCostBean = new BomCostBean(materialNo, objectDesc, unit, qty); + bomCostBean.setItemId(itemId); + designList.add(bomCostBean); + if (materialutilization != null) { + bomCostBean.setUtilization(materialutilization); + } + } + } + + public String getZYSAPMENGE2(String lylStr, TCComponentItemRevision design, TCComponentBOMLine line, + StringBuffer errMessage) throws Exception { + double lyl = -1; + if (!KUtil.isEmpty(lylStr)) { + try { + lyl = Double.parseDouble(lylStr); + } catch (Exception e) { + e.printStackTrace(); + } + } else { + lyl = 0.85; + } + String zt2_TYJNo = line.getProperty("ZT2_TYSpecifications"); + if (!KUtil.isEmpty(zt2_TYJNo)) { + String weight = line.getProperty("ZT2_TYWeight"); + if (KUtil.isEmpty(weight)) { + errMessage.append("δдͨü;"); + return "0"; + } + Double dw = Double.parseDouble(weight); + return String.format("%.3f", dw / lyl); + } else { + double dw = design.getDoubleProperty("zt2_DesignWeight"); + return String.format("%.3f", dw / lyl); + } + + } +} diff --git a/com.connor.chint.sap2/src/com/chint/plm/costbomreport/Test.java b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/Test.java new file mode 100644 index 0000000..c00d099 --- /dev/null +++ b/com.connor.chint.sap2/src/com/chint/plm/costbomreport/Test.java @@ -0,0 +1,27 @@ +/** + * Copyright 2023 eSunny Info. Tech Ltd. All rights reserved. + * + * @Package: com.chint.plm.costbomreport + * @author: cyh + * @date: 20231226 1:41:26 + */ +package com.chint.plm.costbomreport; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author cyh + * + */ +public class Test { + + public static void main(String[] args) { + BomCostBean bean = new BomCostBean("123", "222", "33", "22"); + + List list = new ArrayList<>(); + list.add(bean); + System.out.println(list.indexOf(new BomCostBean("123"))); + } + +} diff --git a/com.connor.chint.sap2/src/com/chint/plm/getGCTH/AutoKTOp.java b/com.connor.chint.sap2/src/com/chint/plm/getGCTH/AutoKTOp.java index 3c0c0a7..d5d23f9 100644 --- a/com.connor.chint.sap2/src/com/chint/plm/getGCTH/AutoKTOp.java +++ b/com.connor.chint.sap2/src/com/chint/plm/getGCTH/AutoKTOp.java @@ -166,6 +166,15 @@ public class AutoKTOp extends AbstractAIFOperation{ return null; } + /** + * BOM + * @param childWlbm + * @param childQty + * @param ZT2_ClassificationNo + * @param applyPart + * @throws Exception + * @function + */ public void createBom(List childWlbm,List childQty ,String ZT2_ClassificationNo,TCComponentItemRevision applyPart) throws Exception { List childInfos = new ArrayList<>(); @@ -248,6 +257,15 @@ public class AutoKTOp extends AbstractAIFOperation{ // return rev; } + /** + * ǷѾķ + * @param code + * @param wbsNo + * @param session + * @return + * @throws Exception + * @function + */ public boolean checkTargets(String code,String wbsNo,TCSession session) throws Exception { Map field = new HashMap(); diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/autofeedinghg/AutoFeedingCommand.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/autofeedinghg/AutoFeedingCommand.java index 614368f..ef70c23 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/autofeedinghg/AutoFeedingCommand.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/autofeedinghg/AutoFeedingCommand.java @@ -22,7 +22,11 @@ import com.teamcenter.rac.kernel.TCException; import com.teamcenter.rac.kernel.TCSession; import com.teamcenter.rac.kernel.TCTypeService; import com.teamcenter.rac.util.MessageBox; - +/** + * ԶͶ + * @author cyh + * + */ public class AutoFeedingCommand extends KCommand { private TCComponentItemType type; diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddController.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddController.java index 82efd79..a3d2fcf 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddController.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddController.java @@ -79,7 +79,7 @@ public class BatchAddController { BatchReviewBean bean; for (int i = 0; i < rowCunt; i++) { if ("true".equals(dialog.t_part.getValueAt(i, 0).toString())) { - bean = (BatchReviewBean) dialog.t_part.getValueAt(i, 3); + bean = (BatchReviewBean) dialog.t_part.getValueAt(i, 4); list.add((TCComponentItemRevision) bean.getComp()); } } @@ -429,7 +429,7 @@ public class BatchAddController { rev = ((TCComponentItem) comp).getLatestItemRevision(); rev = ((TCComponentItem) comp).getLatestItemRevision(); bean.setRev(rev); - + System.out.println("rev"+rev); if (dialog.click_type == 0) { dialog.setRev_before(rev); dialog.jtf_replace_before.setText(bean.getZt2_MaterialNo()); diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddDialog.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddDialog.java index b9061ee..42d3164 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddDialog.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchAddDialog.java @@ -76,7 +76,7 @@ public class BatchAddDialog extends AbstractAIFDialog { protected JTable t_part; private CheckBoxTableHeaderRenderer tableHeaderRenderer; - public final String[] HEADER = new String[] { "", "", "", "", "״̬", "" }; + public final String[] HEADER = new String[] { "", "","", "", "", "״̬", "" }; public final int[] HEADERWIDTH = new int[] { 50, 70, 200, 200, 150, 100 }; // ƷΧ @@ -413,6 +413,13 @@ public class BatchAddDialog extends AbstractAIFDialog { isTCM = "ѷ"; } bean = new BatchReviewBean(true, object_name, isTCM, drawNo, rev); + //ȡ 2023/12/27 + TCComponent factory = rev.getRelatedComponent("ZT2_FactoryNumber"); + if (factory != null) { + String itemId = factory.getProperty("item_id"); + bean.setFactoryNo(itemId); + } + bean.setOwning_user(owning_user); programms.add(bean); } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveController.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveController.java index 5d0c319..74cd1de 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveController.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveController.java @@ -79,7 +79,7 @@ public class BatchRemoveController { BatchReviewBean bean; for (int i = 0; i < rowCunt; i++) { if ("true".equals(dialog.t_part.getValueAt(i, 0).toString())) { - bean = (BatchReviewBean) dialog.t_part.getValueAt(i, 3); + bean = (BatchReviewBean) dialog.t_part.getValueAt(i, 4); list.add((TCComponentItemRevision) bean.getComp()); } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveDialog.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveDialog.java index ecb6605..5784770 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveDialog.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchRemoveDialog.java @@ -75,7 +75,7 @@ public class BatchRemoveDialog extends AbstractAIFDialog { protected JTable t_part; private CheckBoxTableHeaderRenderer tableHeaderRenderer; - public final String[] HEADER = new String[] { "", "", "", "", "״̬", "" }; + public final String[] HEADER = new String[] { "", "","", "", "", "״̬", "" }; public final int[] HEADERWIDTH = new int[] { 50, 70, 200, 200, 150, 100 }; // ƷΧ @@ -385,6 +385,11 @@ public class BatchRemoveDialog extends AbstractAIFDialog { } bean = new BatchReviewBean(true, object_name, isTCM, drawNo, rev); bean.setOwning_user(owning_user); + TCComponent factory = rev.getRelatedComponent("ZT2_FactoryNumber"); + if (factory != null) { + String itemId = factory.getProperty("item_id"); + bean.setFactoryNo(itemId); + } programms.add(bean); } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceController.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceController.java index 4dde9a8..e08e5c3 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceController.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceController.java @@ -79,7 +79,7 @@ public class BatchReplaceController { BatchReviewBean bean; for (int i = 0; i < rowCunt; i++) { if ("true".equals(dialog.t_part.getValueAt(i, 0).toString())) { - bean = (BatchReviewBean) dialog.t_part.getValueAt(i, 3); + bean = (BatchReviewBean) dialog.t_part.getValueAt(i, 4); list.add((TCComponentItemRevision) bean.getComp()); } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceDialog.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceDialog.java index a79dd27..f6b1084 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceDialog.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/batch/BatchReplaceDialog.java @@ -385,6 +385,12 @@ public class BatchReplaceDialog extends AbstractAIFDialog { isTCM = "ѷ"; } bean = new BatchReviewBean(true, object_name, isTCM, drawNo, rev); + //ȡ 2023/12/27 + TCComponent factory = rev.getRelatedComponent("ZT2_FactoryNumber"); + if (factory != null) { + String itemId = factory.getProperty("item_id"); + bean.setFactoryNo(itemId); + } bean.setOwning_user(owning_user); programms.add(bean); } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/bean/BatchReviewBean.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/bean/BatchReviewBean.java index 8010a83..f6737f0 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/bean/BatchReviewBean.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/bean/BatchReviewBean.java @@ -12,8 +12,17 @@ public class BatchReviewBean { public static int model_isTCM_INDEX = 3; private int index = 0; private TCComponent comp; + private String factoryNo; - public BatchReviewBean(boolean isSelected, String object_name, String isTCM, String drawNo, TCComponent comp) { + public String getFactoryNo() { + return factoryNo; + } + + public void setFactoryNo(String factoryNo) { + this.factoryNo = factoryNo; + } + + public BatchReviewBean(boolean isSelected, String object_name, String isTCM, String drawNo, TCComponent comp) { super(); this.isSelected = isSelected; this.object_name = object_name; @@ -93,7 +102,7 @@ public class BatchReviewBean { } public Object[] getBatchReplaceRowData() { - return new Object[] { isSelected, index, drawNo, this, isTCM, owning_user }; + return new Object[] { isSelected, index,factoryNo, drawNo, this, isTCM, owning_user }; } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/ArefreshThCommand.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/ArefreshThCommand.java index 7c70f01..a65bd4a 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/ArefreshThCommand.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/ArefreshThCommand.java @@ -17,7 +17,11 @@ import com.teamcenter.rac.kernel.TCComponentItemType; import com.teamcenter.rac.kernel.TCSession; import com.teamcenter.rac.kernel.TCTypeService; import com.teamcenter.rac.util.MessageBox; - +/** + * ˢ±׼ͼ + * @author cyh + * + */ public class ArefreshThCommand extends KCommand { private TCComponentItemType type; diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/AutoCreateBomComd.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/AutoCreateBomComd.java index 0332fdb..8d63bdd 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/AutoCreateBomComd.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/commands/AutoCreateBomComd.java @@ -50,18 +50,18 @@ public class AutoCreateBomComd extends KCommand { List childWlbm = new ArrayList(); List childQty = new ArrayList(); AutoKTBean bean = new AutoKTBean(); - bean.setCcpName(split[0]); - bean.setFabmCode(split[1]); - bean.setFolderName(split[2]); - bean.setGxbm(split[4]); + bean.setCcpName(split[0]);//Ʒ + bean.setFabmCode(split[1]);// + bean.setFolderName(split[2]);//ļ + bean.setGxbm(split[4]);//ͶϵĹ String[] childMsgs = split[3].split(";"); for(String childMsg : childMsgs) { String[] split2 = childMsg.split(":"); childWlbm.add(split2[0]); childQty.add(split2[1]); } - bean.setChildQty(childQty); - bean.setChildWlbm(childWlbm); + bean.setChildQty(childQty); //Ӽ + bean.setChildWlbm(childWlbm);//Ӽϱ beans.put(split[0],bean); } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/lijc/SendProjectLcCommand.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/lijc/SendProjectLcCommand.java index 38bfc8c..d629908 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/lijc/SendProjectLcCommand.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/lijc/SendProjectLcCommand.java @@ -92,6 +92,7 @@ public class SendProjectLcCommand extends KCommand { AIFComponentContext[] xmzxCh = xmzx.getChildren(); TCComponentFolder tpsj = null; List tpsjList = new ArrayList(); + //Ŀƻвѯͭ for (int i = 0; i < xmzxCh.length; i++) { InterfaceAIFComponent c = xmzxCh[i].getComponent(); String fName = c.getProperty("object_name"); @@ -147,11 +148,13 @@ public class SendProjectLcCommand extends KCommand { MessageBox.post("ʱûҵΪͭƵ","ʾ",2); return; } + //ȡԴָ TCComponent user = tpsjTask.getRelatedComponent("ResourceAssignment"); String userId = user == null ? "" : user.getProperty("user_id"); String userName = user == null ? "" : user.getProperty("user_name"); Map lcApplyMap = new HashMap<>(); + //ȡĹ String[] preferences = ChintPreferenceUtil.getPreferences("Chint_lcApplyCode", session); for(String preference:preferences) { String[] split = preference.split(":"); @@ -186,13 +189,7 @@ public class SendProjectLcCommand extends KCommand { Date date = new Date(); String format = sdf.format(date); esbMap.put("deliverytime",format); -// TCComponent relatedComponent = tpsjTask.getRelatedComponent("ResourceAssignment"); -// String userName = ""; -// String userId = ""; -// if(relatedComponent!=null) { -// userName = relatedComponent.getStringProperty("user_name"); -// userId = relatedComponent.getStringProperty("user_id"); -// } + esbMap.put("username",userName); esbMap.put("userid",userId); @@ -223,6 +220,7 @@ public class SendProjectLcCommand extends KCommand { for(AIFComponentContext child : children) { Map facCpMap = new HashMap<>(); TCComponent ccbhTarget = (TCComponent) child.getComponent(); + //ѯŵãжǷͭŵԪ AIFComponentContext[] contexts22 = ccbhTarget.whereReferencedByTypeRelation( new String[] { "Part Revision" }, new String[] { "ZT2_FactoryNumber" }); String ccbhId = ccbhTarget.getStringProperty("item_id"); @@ -240,7 +238,7 @@ public class SendProjectLcCommand extends KCommand { if(!hasFabm) { Boolean flag = false; System.out.println("lcApplyMap===>"+lcApplyMap.toString()+"ccbhId==>"+ccbhId); - + //ͭŵԪ for(String fac : lcApplyMap.keySet()) { if(ccbhId.contains(fac)) { flag = true; @@ -316,6 +314,7 @@ public class SendProjectLcCommand extends KCommand { sql1[13] = sdf2.format(finish_date); esbMap.put("factorynos",factoryNos); try { + //дݿ Connection mySqlConnection = SqlUtil.getMySqlConnection(); if(mySqlConnection==null) { MessageBox.post("ݿ쳣顣","ʾ",2); diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/proc_byq/CreateProcBYQController.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/proc_byq/CreateProcBYQController.java index 6de8d1d..3390eaa 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/proc_byq/CreateProcBYQController.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/proc_byq/CreateProcBYQController.java @@ -643,15 +643,6 @@ public class CreateProcBYQController { meopRev = (TCComponentItemRevision)meproces; list_standard.add(meopRev); } - // ͨĿϵĹն -// AIFComponentContext[] comps = rev_standard.whereReferencedByTypeRelation( -// new String[] { "MEProcessRevision" }, new String[] { "IMAN_METarget" }); -// TCComponent meproces = SAPUtil.getMeproces(rev_standard.getUid(), session); -// TCComponentItemRevision meopRev; -// for (int i = 0, len = comps.length; i < len; i++) { -// meopRev = (TCComponentItemRevision) comps[i].getComponent(); -// list_standard.add(meopRev); -// } } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_gy/GYApplyCodeControllerzt.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_gy/GYApplyCodeControllerzt.java index 9ee71a2..41c6612 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_gy/GYApplyCodeControllerzt.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_gy/GYApplyCodeControllerzt.java @@ -47,8 +47,9 @@ public class GYApplyCodeControllerzt { private TCComponentFolder folder; // private static String QUERY_NAMES[] = { "%һι淶%", "%ι淶%", "%ṹ%" }; - private static String SQL_QUERY_ALL = "select t.CompanyCodeStr,t.GoodsCode,t.GoodsName,t.GoodsBpNo,t.GoodsFullInfo,t.GoodsTeRe,t.GoodsUnitCode,t.GoodsPmpcCode from ccemvw_cgd t where "; - +// private static String SQL_QUERY_ALL = "select t.CompanyCodeStr,t.GoodsCode,t.GoodsName,t.GoodsBpNo,t.GoodsFullInfo,t.GoodsTeRe,t.GoodsUnitCode,t.GoodsPmpcCode from ccemvw_cgd t where "; + private static String SQL_QUERY_ALL = "select t.\"CompanyCodeStr\",t.\"GoodsCode\",t.\"GoodsName\",t.\"GoodsBpNo\"," + + "t.\"GoodsFullInfo\",t.\"GoodsTeRe\",t.\"GoodsUnitCode\",t.\"GoodsPmpcCode\" from CHINT_XBFAH t where "; // private static String SQL_QUERY_ALL="select // t.CgdCompanyCode,t.CgdGoodsCode,t.CgdName,t.CgdBpNo,t.CgdGoodsFullInfo,t.CgdTeRe,t.CgdUnitCode,t.CgdPmpcCode // from ccemvw_cgd t where t.CgdPmpcCode='400101012' "; @@ -119,8 +120,11 @@ public class GYApplyCodeControllerzt { // String[] prefs = // session.getPreferenceService().getStringValues("database_tc"); // Connection conn = SqlUtil.getTCDataConnection(prefs); - - return SqlUtil.getConnection() == null ? false : true; + String[] stringValues = session.getPreferenceService().getStringValues("database_tc"); +//// Connection conn = SqlUtil.getTCDataConnection(prefs); +// + return SqlUtil.getTCDataConnection(stringValues) == null ? false : true; +// return SqlUtil.getConnection() == null ? false : true; } public boolean checkProject() throws TCException { @@ -218,13 +222,15 @@ public class GYApplyCodeControllerzt { public void getApplyCode(String query_name, String code) throws Exception { StringBuilder sql = new StringBuilder(); sql.append(SQL_QUERY_ALL); - sql.append(" t.GoodsCode like ").append(code).append("'%'"); +// sql.append(" t.GoodsCode like ").append(code).append("'%'"); + sql.append(" t.\"GoodsCode\" like '").append(code).append("%'"); Object obj[] = new Object[2]; // obj[0] = "%"+code+"%"; obj[0] = query_name; String groupID = SAPUtil.getGroupID(session); - sql.append(" and t.CompanyCodeStr like ?"); + sql.append(" and t.\"CompanyCodeStr\" like ?"); +// sql.append(" and t.CompanyCodeStr like ?"); // Object obj[] = new Object[1]; // obj[0] = query_name; diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeController.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeController.java index 271d2c8..158eebd 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeController.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeController.java @@ -55,8 +55,9 @@ public class CcpApplyCodeController { protected TCComponentFolder folder; private static String QUERY_NAMES[] = { "%һι淶%", "%ι淶%", "%ṹ%" }; - private static String SQL_QUERY_ALL = "select t.CompanyCodeStr,t.GoodsCode,t.GoodsName,t.GoodsBpNo,t.GoodsFullInfo,t.GoodsTeRe,t.GoodsUnitCode,t.GoodsPmpcCode from ccemvw_cgd t where "; - +// private static String SQL_QUERY_ALL = "select t.CompanyCodeStr,t.GoodsCode,t.GoodsName,t.GoodsBpNo,t.GoodsFullInfo,t.GoodsTeRe,t.GoodsUnitCode,t.GoodsPmpcCode from ccemvw_cgd t where "; + private static String SQL_QUERY_ALL = "select t.\"CompanyCodeStr\",t.\"GoodsCode\",t.\"GoodsName\",t.\"GoodsBpNo\"," + + "t.\"GoodsFullInfo\",t.\"GoodsTeRe\",t.\"GoodsUnitCode\",t.\"GoodsPmpcCode\" from CHINT_XBFAH t where "; // private static String SQL_QUERY_ALL="select // t.CgdCompanyCode,t.CgdGoodsCode,t.CgdName,t.CgdBpNo,t.CgdGoodsFullInfo,t.CgdTeRe,t.CgdUnitCode,t.CgdPmpcCode // from ccemvw_cgd t where t.CgdPmpcCode='400101012' "; @@ -116,11 +117,11 @@ public class CcpApplyCodeController { } public boolean checkConn() { - // String[] prefs = - // session.getPreferenceService().getStringValues("database_tc"); + + String[] prefs = session.getPreferenceService().getStringValues("database_tc"); // Connection conn = SqlUtil.getTCDataConnection(prefs); - - return SqlUtil.getConnection() == null ? false : true; + return SqlUtil.getTCDataConnection(prefs) == null ? false : true; +// return SqlUtil.getConnection() == null ? false : true; } public String type = ""; // ǷѡжӦķļ @@ -223,14 +224,15 @@ public class CcpApplyCodeController { StringBuilder sql = new StringBuilder(); sql.append(SQL_QUERY_ALL); System.out.println("isAPPLYS==>"+isAPPLYS); - sql.append(" t.GoodsCode like '").append(code).append("%'"); +// sql.append(" t.GoodsCode like '").append(code).append("%'"); + sql.append(" t.\"GoodsCode\" like '").append(code).append("%'"); Object obj[] = new Object[1]; // obj[0] = "%"+code+"%"; // obj[0] = query_name; String groupID = SAPUtil.getGroupID(session); - sql.append(" and t.CompanyCodeStr like ?"); - +// sql.append(" and t.CompanyCodeStr like ?"); + sql.append(" and t.\"CompanyCodeStr\" like ?"); obj[0] = "%"+groupID+"%"; System.out.println("ѯ:" + sql.toString()); diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeDialog.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeDialog.java index a82fa77..ef5e39e 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeDialog.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/CcpApplyCodeDialog.java @@ -475,6 +475,9 @@ public class CcpApplyCodeDialog extends AbstractAIFDialog { if (map_Applicables.get(bean).size() == 1) { // model3.removeElement(cloneBean); // model4.addElement(bean); + System.out.println("bean===>"+map_Applicables.toString()); + map_Applicables.remove(bean); + value_keys.remove(cloneBean); list_jl3.remove(cloneBean); list_jl4.add(bean); diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/PartBean.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/PartBean.java index d6f7e9f..30cc6af 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/PartBean.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/PartBean.java @@ -196,11 +196,19 @@ public class PartBean extends SAPPushBOMBean { String type = facts[i].getType(); System.out.println(">> ҵӶ" + facts[i] + "|" + type); factoryNos = facts; - if (SAPZYDialogControllerzt.TYPE_FACTNO.equals(type)) { - factNo = facts[i].getStringProperty("item_id"); - this.factoryNo = (TCComponentItem) facts[i]; - break; - } +// if (SAPZYDialogControllerzt.TYPE_FACTNO.equals(type)) { +// String newFactNo = facts[i].getStringProperty("item_id"); +// //2023/12/27߼, չʾСǸ +// if (factNo.equals("") || factNo.compareTo(newFactNo) > 0) { +// factNo = newFactNo; +// this.factoryNo = (TCComponentItem) facts[i]; +// } +// } + if (SAPZYDialogControllerzt.TYPE_FACTNO.equals(type)) { + factNo = facts[i].getStringProperty("item_id"); + this.factoryNo = (TCComponentItem) facts[i]; + break; + } } String zt2_site = part.getStringProperty("zt2_Site"); String zt2_tankNo = part.getStringProperty("zt2_TankNo"); diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogControllerzt.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogControllerzt.java index e1eea9f..20a9ccd 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogControllerzt.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogControllerzt.java @@ -1941,113 +1941,188 @@ public class SAPZYDialogControllerzt { return sBuilder.toString(); } - // ȡϱ - public int getCode() throws SQLException { - String sql = "select Tab_SendBom_Sequence.nextval as sid from dual"; - ResultSet rs = SqlUtil.read(sql); - Object objs[] = new Object[1]; - int code = 0; - if (rs.next()) { - code = rs.getInt(1); - System.out.println("code:" + code); - } - SqlUtil.free(); - return code; - } + + // ȡBOM + public int getCode() throws SQLException { + String sql = "select Tab_SendBom_Sequence.nextval as sid from dual"; + ResultSet rs = SqlUtil.read(sql); + Object objs[] = new Object[1]; + int code = 0; + if (rs.next()) { + code = rs.getInt(1); + System.out.println("code:" + code); + } + SqlUtil.free(); + return code; + } + + // ڶŻ첽 + public void sendToSapYHAsyn(String ban, boolean isCheckProduct) throws Exception { + List selectedParts = getSelectedParts(); + MyProgressBarCompent my = new MyProgressBarCompent("", "ܵBOMSAP......"); + try { + String strs[] = session.getPreferenceService().getStringValues("database_tc"); + if (SqlUtil.getTCDataConnection(strs) == null) { + MessageBox.post("ݿʧ,ѡ", "", 2); + return; + } + + String groupID2 = SAPUtil.getGroupID(); + String userId = session.getUser().getUserId(); + String userName = session.getUser().getProperty("user_name"); + 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"); + int code = getCode(); + + JSONArray array = new JSONArray(); + StringBuilder uids = new StringBuilder(""); + for (int i = 0; i < selectedParts.size(); i++) { + String uid = selectedParts.get(i).getPart().getUid(); + array.add(uid); + uids.append(uid).append(":"); + } +// obj.put("uid", array); +// OkHttpClient client = new OkHttpClient(); + String substring = uids.substring(0, uids.length() - 1); + // ֶ ĿUIDִˣijɶʱִУýӿ + 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 + "", groupID2, userName, dataTime, zt2_WBSNo, object_name, + ban.replaceAll("", ""), substring, project.getUid(), serverHostname, userId }); +// MediaType mediaType = MediaType.parse("application/json"); +// RequestBody body = RequestBody.create(mediaType, obj.toString()); +//// String preference = ChintPreferenceUtil.getPreference("CHINT_PIUrl", session); +// Request request = new Request.Builder().url("http://10.128.10.203:8081/plm/sendBomXB") // http://10.128.10.203:8081/plm/sendBomXB +// .method("POST", body) +// // .addHeader("Cookie", "") +//// .addHeader("Authorization", "Bearer "+token) +// // .addHeader("Connection", "keep-alive") +// .addHeader("Content-Type", "application/json").build(); +// Response response = client.newCall(request).execute(); +// // response.body().byteStream() +// // System.out.println(response.body().string()); +// String string = response.body().string(); +// System.out.println("string==>" + string); +// JSONObject parseObject = JSON.parseObject(string); + // +// my.setVisible(false); +// System.out.println("parseObject==>" + parseObject); + MessageBox.post(dialog, "Ѽ¼ȴ֪ͨ.", "", MessageBox.INFORMATION); + } catch (Exception e) { + MessageBox.post(dialog, "" + e.getMessage(), "", MessageBox.ERROR); + e.printStackTrace(); + my.setVisible(false); + } finally { + SqlUtil.freeAll(); + my.setVisible(false); + } + } + //һŻͬ // private String getNum = "select max(code) from CHINT_BOM_TO_SAP_SUM"; - public void sendToSapYH(String ban, boolean isCheckProduct) throws Exception { - List selectedParts = getSelectedParts(); - MyProgressBarCompent my = new MyProgressBarCompent("", "ܵBOMSAP......"); + public void sendToSapYH(String ban, boolean isCheckProduct) throws Exception { + List selectedParts = getSelectedParts(); + MyProgressBarCompent my = new MyProgressBarCompent("", "ܵBOMSAP......"); +// try { +// String strs[] = session.getPreferenceService().getStringValues("database_tc"); +// if (SqlUtil.getTCDataConnection(strs) == null) { +// MessageBox.post("ݿʧ,ѡ", "", 2); +// return; +// } +//// ResultSet read = SqlUtil.read(getNum); +//// int code = 1; +//// if(read.next()) { +//// int int1 = read.getInt(1); +//// code = int1 + 1; +//// } +// String groupID2 = SAPUtil.getGroupID(); +// String userId = session.getUser().getUserId(); +// String userName = session.getUser().getProperty("user_name"); +// 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"); +// int code = getCode(); +//// JSONObject obj = new JSONObject(); +//// obj.put("code", code + ""); +//// obj.put("groupId", groupID2); +//// obj.put("userId", userId); +//// obj.put("zt2_WBSNo", zt2_WBSNo); +//// obj.put("object_name", object_name); +//// obj.put("projectUid", project.getUid()); +// JSONArray array = new JSONArray(); +// StringBuilder uids = new StringBuilder(""); +// for (int i = 0; i < selectedParts.size(); i++) { +// String uid = selectedParts.get(i).getPart().getUid(); +// array.add(uid); +// uids.append(uid).append(":"); +// } +//// obj.put("uid", array); +//// OkHttpClient client = new OkHttpClient(); +// String substring = uids.substring(0, uids.length() - 1); +// // ֶ ĿUIDִˣijɶʱִУýӿ +// 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 + "", groupID2, userName, dataTime, zt2_WBSNo, object_name, +// ban.replaceAll("", ""), substring, project.getUid(), serverHostname, userId }); +//// MediaType mediaType = MediaType.parse("application/json"); +//// RequestBody body = RequestBody.create(mediaType, obj.toString()); +////// String preference = ChintPreferenceUtil.getPreference("CHINT_PIUrl", session); +//// Request request = new Request.Builder().url("http://10.128.10.203:8081/plm/sendBomXB") // http://10.128.10.203:8081/plm/sendBomXB +//// .method("POST", body) +//// // .addHeader("Cookie", "") +////// .addHeader("Authorization", "Bearer "+token) +//// // .addHeader("Connection", "keep-alive") +//// .addHeader("Content-Type", "application/json").build(); +//// Response response = client.newCall(request).execute(); +//// // response.body().byteStream() +//// // System.out.println(response.body().string()); +//// String string = response.body().string(); +//// System.out.println("string==>" + string); +//// JSONObject parseObject = JSON.parseObject(string); +//// +//// my.setVisible(false); +//// System.out.println("parseObject==>" + parseObject); +// MessageBox.post(dialog, "Ѽ¼ȴ֪ͨ.", "", MessageBox.INFORMATION); +// } catch (Exception e) { +// MessageBox.post(dialog, "" + e.getMessage(), "", MessageBox.ERROR); +// e.printStackTrace(); +// my.setVisible(false); +// } finally { +// SqlUtil.freeAll(); +// my.setVisible(false); +// } + + // ûύʱȽšˡʱ䡢ĿwbsšĿдмݱݿΪCHINT_BOM_TO_SAP_SUM +// SqlUtil.getTCDataConnection(BOM_NAMES); + try { - String strs[] = session.getPreferenceService().getStringValues("database_tc"); - if (SqlUtil.getTCDataConnection(strs) == null) { - MessageBox.post("ݿʧ,ѡ", "", 2); + if(selectedParts.size()>0) { + String[] propValues = new String[selectedParts.size()]; + for(int i = 0; i < selectedParts.size(); i++) { + propValues[i] = selectedParts.get(i).getPart().getUid(); + } + Object[] params = { project.getUid(), propValues }; + TCUserService userService = (TCUserService) session.getUserService(); + Object call = userService.call("readBomMsg", params); + String string = call.toString(); + //comp.setVisible(false); + System.out.println(string); + new SAPMessageUtil(dialog, "", string); return; - } -// ResultSet read = SqlUtil.read(getNum); -// int code = 1; -// if(read.next()) { -// int int1 = read.getInt(1); -// code = int1 + 1; -// } - String groupID2 = SAPUtil.getGroupID(); - String userId = session.getUser().getUserId(); - String userName = session.getUser().getProperty("user_name"); - 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"); - int code = getCode(); - JSONObject obj = new JSONObject(); - obj.put("code", code+""); - obj.put("groupId", groupID2); - obj.put("userId", userId); - obj.put("zt2_WBSNo", zt2_WBSNo); - obj.put("object_name", object_name); - obj.put("projectUid", project.getUid()); - JSONArray array = new JSONArray(); - StringBuilder uids = new StringBuilder(""); - for(int i = 0; i < selectedParts.size(); i++) { - String uid = selectedParts.get(i).getPart().getUid(); - array.add(uid); - uids.append(uid).append(":"); - } - obj.put("uid", array); - OkHttpClient client = new OkHttpClient(); - MediaType mediaType = MediaType.parse("application/json"); - RequestBody body = RequestBody.create(mediaType,obj.toString()); -// String preference = ChintPreferenceUtil.getPreference("CHINT_PIUrl", session); - Request request = new Request.Builder().url("http://10.128.155.206:8082/plm/sendBomXB") - .method("POST", body) - // .addHeader("Cookie", "") -// .addHeader("Authorization", "Bearer "+token) - // .addHeader("Connection", "keep-alive") - .addHeader("Content-Type", "application/json") - .build(); - Response response = client.newCall(request).execute(); - // response.body().byteStream() - // System.out.println(response.body().string()); - JSONObject parseObject = JSON.parseObject(response.body().string()); - String substring = uids.substring(0, uids.length()-1); - String sql = "insert into CHINT_BOM_TO_SAP_SUM (code,factory,\"USER\",starttime,wbsno,projectno,taskstauts,plmstarttime,plmresult,transfer,keymsg,sapresult) values (?,?,?,to_date(?,'yyyy-mm-ddhh24:mi:ss'),?,?,'֯',SYSDATE,'δ','',?,'δ')"; //to_date(?,'yyyy-mm-ddhh24:mi:ss') - SqlUtil.write(sql, new String[] {code+"",groupID2,userName,dataTime,zt2_WBSNo,object_name,substring}); - my.setVisible(false); - System.out.println("parseObject==>"+parseObject); - MessageBox.post(dialog, "Ѽ¼ȴ֪ͨ.", "", MessageBox.ERROR); + } } catch (Exception e) { MessageBox.post(dialog, "" + e.getMessage(), "", MessageBox.ERROR); e.printStackTrace(); my.setVisible(false); } finally { - SqlUtil.freeAll(); my.setVisible(false); } - - //ûύʱȽšˡʱ䡢ĿwbsšĿдмݱݿΪCHINT_BOM_TO_SAP_SUM -// SqlUtil.getTCDataConnection(BOM_NAMES); - - -// try { -// if(selectedParts.size()>0) { -// String[] propValues = new String[selectedParts.size()]; -// for(int i = 0; i < selectedParts.size(); i++) { -// propValues[i] = selectedParts.get(i).getPart().getUid(); -// } -// Object[] params = { project.getUid(), propValues }; -// TCUserService userService = (TCUserService) session.getUserService(); -// Object call = userService.call("readBomMsg", params); -// String string = call.toString(); -// //comp.setVisible(false); -// System.out.println(string); -// new SAPMessageUtil(dialog, "", string); -// return; -// } -// } catch (Exception e) { -// MessageBox.post(dialog, "" + e.getMessage(), "", MessageBox.ERROR); -// e.printStackTrace(); -// my.setVisible(false); -// } finally { -// my.setVisible(false); -// } // MyProgressBarCompent my = new MyProgressBarCompent("", "ѹBOMSAP......"); // try { // sendSapYH(ban, my, isCheckProduct); @@ -2058,7 +2133,7 @@ public class SAPZYDialogControllerzt { // } finally { // my.setVisible(false); // } - } + } private void sendSapYH(String ban, MyProgressBarCompent my, boolean isCheckProduct) throws Exception { process_boms.clear(); // process_jg.clear(); @@ -2704,7 +2779,7 @@ public class SAPZYDialogControllerzt { // } item.setDATUV(now); item.setPOSTP("L"); - String[] properties2 = line2.getProperties(new String[] {"bl_sequence_no","bl_quantity","ZT2_ClassificationNo","ZT2_Remark"}); + String[] properties2 = line2.getProperties(new String[] {"bl_sequence_no","bl_quantity","ZT2_ClassificationNo","ZT2_Remark","zt2_State"}); item.setPOSNR(properties2[0]); //line2.getProperty("bl_sequence_no") String sss = properties2[1];//line2.getProperty("bl_quantity"); if (KUtil.isEmpty(sss)) { @@ -2721,6 +2796,10 @@ public class SAPZYDialogControllerzt { item.setSORTF(sortno); if (KUtil.isEmpty(sortno)) buff.append("BOMδҵͶϢ;"); + String zt2_State = properties2[4]; + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } item.setPOTX1(properties2[3]);//line2.getProperty("ZT2_Remark") items[i] = item; diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogzt.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogzt.java index f851d3c..bda1ea2 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogzt.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/SAPZYDialogzt.java @@ -50,354 +50,373 @@ import plm.xi.com.chintelectric.SI_PUSH_BOM_PLM_OUT_SYNServiceLocator; @SuppressWarnings("serial") public class SAPZYDialogzt extends AbstractAIFDialog { - private SAPZYDialogControllerzt controller; - private JButton b_cel; - private JButton b_qr; - private JButton b_qr2; - protected DefaultTableModel tm_part; - protected JTable t_part; - public static final String[] HEADER = new String[] { "", "", "վ", "", "", "ϱ", "", "BOMȷ״̬", "ȷ", - "ȷʱ" }; - public static final int[] HEADERWIDTH = new int[] { 50, 60, 60, 60, 120, 180, 180, 100, 100, 100 }; - - // public static final String[] HEADER = new String[] { "", "", "վ","", - // "","ϱ", "" }; - // public static final int[] HEADERWIDTH = new int[] { 50, 60, 60,60,120, 180, - // 180 }; - - private CheckBoxTableHeaderRenderer tableHeaderRenderer; + private SAPZYDialogControllerzt controller; + private JButton b_cel; + private JButton b_qr; + private JButton b_qr2; + private JButton b_qr3;// 첽; + protected DefaultTableModel tm_part; + protected JTable t_part; + public static final String[] HEADER = new String[] { "", "", "վ", "", "", "ϱ", "", "BOMȷ״̬", "ȷ", + "ȷʱ" }; + public static final int[] HEADERWIDTH = new int[] { 50, 60, 60, 180, 180, 180, 180, 100, 60, 60 }; + + // public static final String[] HEADER = new String[] { "", "", "վ","", + // "","ϱ", "" }; + // public static final int[] HEADERWIDTH = new int[] { 50, 60, 60,60,120, 180, + // 180 }; + + private CheckBoxTableHeaderRenderer tableHeaderRenderer; // protected JButton o_btn; // һι淶 // protected JButton t_btn; // ι淶 // protected JButton kt_btn; // 巽 // protected JButton s_btn; // ṹ - protected JButton pushBOM_btn; // BOMȷ - private AbstractAIFDialog dialog; - private TCSession session; - private AbstractAIFApplication app; - - // ǷƷĸŹ· - private boolean isCheckProduct = false; - String fa; - public SAPZYDialogzt(AbstractAIFApplication app,String fa) { - super(false); - this.controller = new SAPZYDialogControllerzt(this, app); - this.app = app; - this.session = (TCSession) app.getSession(); - this.fa= fa; - } - - @Override - public void run() { - try { - dialog = this; - controller.groupName = SAPUtil.getGroupID(session); - // 񴫵ʱҪƷĸǷֻһ· - if ("M035".endsWith(controller.groupName)) { - isCheckProduct = true; - } - System.out.println("ǰ:" + controller.groupName); - if (KUtil.isEmpty(controller.groupName) || controller.groupName.equalsIgnoreCase("dba")) { - MessageBox.post(this, "ǰ¼鲻ʹøù", "", MessageBox.INFORMATION); - KUtil.setByPass(false); - return; - } - CreateProcBean bean = CreateProcController.getProcPres(session, "CHINT_ORG_TechnologyClassification", - controller.groupName); - if (bean == null) { - System.out.println("groupID:" + controller.groupName); - MessageBox.post("δҵ[" + controller.groupName + "],ѡ", "", - 2); - return; - } else { //if(bean.getType() !=null && !bean.getType().equals("DB")) - System.out.println("ԭ:" + bean.getCodeReark()); - controller.codeMark = bean.getCodeReark(); - controller.icsId = SAPUtil.getIcsId(controller.codeMark, "ϱ", session); - } - if (!controller.checkTargets()) { - MessageBox.post(this, "ûҵƷϢ", "", MessageBox.INFORMATION); - return; - } - controller.getSapState(); - } catch (Exception e) { - KUtil.setByPass(false); - MessageBox.post(this, "ѡʱ" + e.getMessage(), "", MessageBox.ERROR); - e.printStackTrace(); - return; - } - initUI(); - try { - controller.readPartInfo();// Ҫʾڵ - } catch (Exception e) { - MessageBox.post(this, "ȡƷϢʱ" + e.getMessage(), "", MessageBox.ERROR); - e.printStackTrace(); - return; - } - showDialog(); - - } - - private void initUI() { - this.setTitle("ƷϢ"); - this.setPreferredSize(new Dimension(800, 400)); - this.setMinimumSize(new Dimension(750, 400)); - this.setLayout(new BorderLayout()); - this.add(BorderLayout.CENTER, getTablePanel()); - this.add(BorderLayout.SOUTH, getBtnPanel()); - addListeners(); - } - - private void setCompEnabled(boolean b) { - b_cel.setEnabled(b); - t_part.setEnabled(b); + protected JButton pushBOM_btn; // BOMȷ + private AbstractAIFDialog dialog; + private TCSession session; + private AbstractAIFApplication app; + + // ǷƷĸŹ· + private boolean isCheckProduct = false; + String fa; + + public SAPZYDialogzt(AbstractAIFApplication app, String fa) { + super(false); + this.controller = new SAPZYDialogControllerzt(this, app); + this.app = app; + this.session = (TCSession) app.getSession(); + this.fa = fa; + } + + @Override + public void run() { + try { + dialog = this; + controller.groupName = SAPUtil.getGroupID(session); + // 񴫵ʱҪƷĸǷֻһ· + if ("M035".endsWith(controller.groupName)) { + isCheckProduct = true; + } + System.out.println("ǰ:" + controller.groupName); + if (KUtil.isEmpty(controller.groupName) || controller.groupName.equalsIgnoreCase("dba")) { + MessageBox.post(this, "ǰ¼鲻ʹøù", "", MessageBox.INFORMATION); + KUtil.setByPass(false); + return; + } + CreateProcBean bean = CreateProcController.getProcPres(session, "CHINT_ORG_TechnologyClassification", + controller.groupName); + if (bean == null) { + System.out.println("groupID:" + controller.groupName); + MessageBox.post("δҵ[" + controller.groupName + "],ѡ", "", + 2); + return; + } else { // if(bean.getType() !=null && !bean.getType().equals("DB")) + System.out.println("ԭ:" + bean.getCodeReark()); + controller.codeMark = bean.getCodeReark(); + controller.icsId = SAPUtil.getIcsId(controller.codeMark, "ϱ", session); + } + if (!controller.checkTargets()) { + MessageBox.post(this, "ûҵƷϢ", "", MessageBox.INFORMATION); + return; + } + controller.getSapState(); + } catch (Exception e) { + KUtil.setByPass(false); + MessageBox.post(this, "ѡʱ" + e.getMessage(), "", MessageBox.ERROR); + e.printStackTrace(); + return; + } + initUI(); + try { + controller.readPartInfo();// Ҫʾڵ + } catch (Exception e) { + MessageBox.post(this, "ȡƷϢʱ" + e.getMessage(), "", MessageBox.ERROR); + e.printStackTrace(); + return; + } + showDialog(); + + } + + private void initUI() { + this.setTitle("ƷϢ"); + this.setPreferredSize(new Dimension(1000, 400)); + this.setMinimumSize(new Dimension(750, 400)); + this.setLayout(new BorderLayout()); + this.add(BorderLayout.CENTER, getTablePanel()); + this.add(BorderLayout.SOUTH, getBtnPanel()); + addListeners(); + } + + private void setCompEnabled(boolean b) { + b_cel.setEnabled(b); + t_part.setEnabled(b); // o_btn.setEnabled(b); // t_btn.setEnabled(b); // s_btn.setEnabled(b); // kt_btn.setEnabled(b); - pushBOM_btn.setEnabled(b); - } - - private void addListeners() { - - pushBOM_btn.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - new Thread(new Runnable() { - - @Override - public void run() { - MyProgressBarCompent my = null; - try { - int start_index = 7; - List beans = controller.getSelectedParts(); - int len = beans.size(); - if (len == 0) { - MessageBox.post("ѡҪȷϵIJƷ", "", 2); - return; - } - PartBean bean; - JSONArray datas;// = new JSONArray(); - JSONObject data; - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss"); - Date time = new Date(); - String now = sdf.format(time); - String user = session.getUser().getUserId(); - String userName = session.getUserName(); - for (int i = 0; i < len; i++) { - bean = beans.get(i); - if ("ȷ".equals(bean.getZt2_SapBomState())) { - MessageBox.post(SAPZYDialogzt.this, "BOMȷ,ظȷ", "", 2); - return; - } - } - - if (new ConfirmDialogUtil(SAPZYDialogzt.this, "BOMȷ", "˲BOM·ȷһ,ǷȷBOM", - new Dimension(500, 200)).getResult()) { - String REQ_TRACE_ID = "123456"; - SI_PUSH_BOM_PLM_OUT_SYNService service = new SI_PUSH_BOM_PLM_OUT_SYNServiceLocator(); - SI_PUSH_BOM_PLM_OUT_SYN stub = service.getHTTP_Port(); - DT_JSON_REQBASEINFO BASEINFO = new DT_JSON_REQBASEINFO(REQ_TRACE_ID); - DT_JSON_REQJSONINFO JSONINFO; - StringBuilder build = new StringBuilder(); - StringBuilder success_build = new StringBuilder(); - DT_JSON_REQ req; - DT_JSON_RSP resp; - int index; - TCComponentItemRevision rev; - my = new MyProgressBarCompent("", "ȷ......"); - KUtil.setByPass(true); - for (int i = 0; i < len; i++) { - bean = beans.get(i); - rev = bean.getPart(); - datas = new JSONArray(); - data = new JSONObject(); - data.element("POSID", bean.getPOSID()); - data.element("WERKS", bean.getWERKS()); - data.element("MATNR", bean.getMATNR()); - data.element("PSPID", bean.getPSPID()); - data.element("ZFLAG", bean.getZFLAG()); - data.element("ZNAME", user); - data.element("ZDATE", now); - datas.add(data); - System.out.println("jsons:" + datas.toString()); - JSONINFO = new DT_JSON_REQJSONINFO(datas.toString()); - req = new DT_JSON_REQ(BASEINFO, JSONINFO); - resp = stub.SI_PUSH_UPDATE_PLM_OUT_SYN(req); - try { - SAPUtil.printResp(resp); - bean.setZt2_SapBomDate(time); - bean.setZNAME(user); - bean.setUserName(userName); - bean.setZt2_SapBomState("ȷ"); - index = bean.getIndex() - 1; - t_part.setValueAt("ȷ", index, start_index); - t_part.setValueAt(userName, index, start_index + 1); - t_part.setValueAt(now, index, start_index + 2); - rev.setDateProperty("zt2_SapBomDate", time); - rev.setProperty("zt2_SapBomState", "ȷ"); - rev.setProperty("zt2_SapBomUser", user); - success_build.append("\n").append(rev); - } catch (Exception e2) { - e2.printStackTrace(); - build.append("\n").append(rev).append(":").append(e2.getMessage()); - } - } - KUtil.setByPass(false); - KUtil.closeMyProgressBar(my); - if (build.toString().length() > 0) { - MessageBox.post("²Ʒȷʧ:" + build.toString(), "", 2); - } else { - MessageBox.post("²Ʒȷϳɹ:" + success_build.toString(), "", 2); - } - } - - } catch (Exception e) { - KUtil.setByPass(false); - KUtil.closeMyProgressBar(my); - e.printStackTrace(); - MessageBox.post(SAPZYDialogzt.this, "BOMȷ쳣:" + e.getMessage(), "", 2); - } - - } - }).start(); - - } - }); - - b_cel.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - disposeDialog(); - } - }); - - b_qr2.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - new Thread(new Runnable() { - @Override - public void run() { - - String selectedItem = (String) comb.getSelectedItem(); - try { - controller.sendToSapYH(selectedItem.replaceAll("", ""), isCheckProduct); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - }).start(); - } - }); - - b_qr.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - new Thread(new Runnable() { - @Override - public void run() { - - String selectedItem = (String) comb.getSelectedItem(); + pushBOM_btn.setEnabled(b); + } + + private void addListeners() { + + pushBOM_btn.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + new Thread(new Runnable() { + + @Override + public void run() { + MyProgressBarCompent my = null; + try { + int start_index = 7; + List beans = controller.getSelectedParts(); + int len = beans.size(); + if (len == 0) { + MessageBox.post("ѡҪȷϵIJƷ", "", 2); + return; + } + PartBean bean; + JSONArray datas;// = new JSONArray(); + JSONObject data; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss"); + Date time = new Date(); + String now = sdf.format(time); + String user = session.getUser().getUserId(); + String userName = session.getUserName(); + for (int i = 0; i < len; i++) { + bean = beans.get(i); + if ("ȷ".equals(bean.getZt2_SapBomState())) { + MessageBox.post(SAPZYDialogzt.this, "BOMȷ,ظȷ", "", 2); + return; + } + } + + if (new ConfirmDialogUtil(SAPZYDialogzt.this, "BOMȷ", "˲BOM·ȷһ,ǷȷBOM", + new Dimension(500, 200)).getResult()) { + String REQ_TRACE_ID = "123456"; + SI_PUSH_BOM_PLM_OUT_SYNService service = new SI_PUSH_BOM_PLM_OUT_SYNServiceLocator(); + SI_PUSH_BOM_PLM_OUT_SYN stub = service.getHTTP_Port(); + DT_JSON_REQBASEINFO BASEINFO = new DT_JSON_REQBASEINFO(REQ_TRACE_ID); + DT_JSON_REQJSONINFO JSONINFO; + StringBuilder build = new StringBuilder(); + StringBuilder success_build = new StringBuilder(); + DT_JSON_REQ req; + DT_JSON_RSP resp; + int index; + TCComponentItemRevision rev; + my = new MyProgressBarCompent("", "ȷ......"); + KUtil.setByPass(true); + for (int i = 0; i < len; i++) { + bean = beans.get(i); + rev = bean.getPart(); + datas = new JSONArray(); + data = new JSONObject(); + data.element("POSID", bean.getPOSID()); + data.element("WERKS", bean.getWERKS()); + data.element("MATNR", bean.getMATNR()); + data.element("PSPID", bean.getPSPID()); + data.element("ZFLAG", bean.getZFLAG()); + data.element("ZNAME", user); + data.element("ZDATE", now); + datas.add(data); + System.out.println("jsons:" + datas.toString()); + JSONINFO = new DT_JSON_REQJSONINFO(datas.toString()); + req = new DT_JSON_REQ(BASEINFO, JSONINFO); + resp = stub.SI_PUSH_UPDATE_PLM_OUT_SYN(req); + try { + SAPUtil.printResp(resp); + bean.setZt2_SapBomDate(time); + bean.setZNAME(user); + bean.setUserName(userName); + bean.setZt2_SapBomState("ȷ"); + index = bean.getIndex() - 1; + t_part.setValueAt("ȷ", index, start_index); + t_part.setValueAt(userName, index, start_index + 1); + t_part.setValueAt(now, index, start_index + 2); + rev.setDateProperty("zt2_SapBomDate", time); + rev.setProperty("zt2_SapBomState", "ȷ"); + rev.setProperty("zt2_SapBomUser", user); + success_build.append("\n").append(rev); + } catch (Exception e2) { + e2.printStackTrace(); + build.append("\n").append(rev).append(":").append(e2.getMessage()); + } + } + KUtil.setByPass(false); + KUtil.closeMyProgressBar(my); + if (build.toString().length() > 0) { + MessageBox.post("²Ʒȷʧ:" + build.toString(), "", 2); + } else { + MessageBox.post("²Ʒȷϳɹ:" + success_build.toString(), "", 2); + } + } + + } catch (Exception e) { + KUtil.setByPass(false); + KUtil.closeMyProgressBar(my); + e.printStackTrace(); + MessageBox.post(SAPZYDialogzt.this, "BOMȷ쳣:" + e.getMessage(), "", 2); + } + + } + }).start(); + + } + }); + + b_cel.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + disposeDialog(); + } + }); + + b_qr2.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + new Thread(new Runnable() { + @Override + public void run() { + + String selectedItem = (String) comb.getSelectedItem(); + try { + controller.sendToSapYH(selectedItem.replaceAll("", ""), isCheckProduct); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + }).start(); + } + }); + b_qr3.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + new Thread(new Runnable() { + @Override + public void run() { + + String selectedItem = (String) comb.getSelectedItem(); + try { + controller.sendToSapYHAsyn(selectedItem.replaceAll("", ""), isCheckProduct); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + }).start(); + } + }); + b_qr.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + new Thread(new Runnable() { + @Override + public void run() { + + String selectedItem = (String) comb.getSelectedItem(); // һη"); // t_btn = new JButton("η"); // s_btn = new JButton("ṹ"); // kt_btn = new JButton("巽"); - if(fa.equals("C")) { - - controller.getDists(); - try { - controller.sendToSapBy("C"); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - }else if(selectedItem.equals("һη")) { - setCompEnabled(false); - try { - KUtil.setByPass(true); - controller.sendToSap("һ", isCheckProduct,"B"); - } catch (Exception e1) { - MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); - e1.printStackTrace(); - } finally { - KUtil.setByPass(false); - // pb.disposeDialog(); - } - setCompEnabled(true); - }else if(selectedItem.equals("η")) { - setCompEnabled(false); - try { - KUtil.setByPass(true); - controller.sendToSap("", isCheckProduct,"B"); - } catch (Exception e1) { - MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); - e1.printStackTrace(); - } finally { - KUtil.setByPass(false); - // pb.disposeDialog(); - } - setCompEnabled(true); - }else if(selectedItem.equals("巽")) { - setCompEnabled(false); - try { - KUtil.setByPass(true); - controller.sendToSapKT(isCheckProduct); - } catch (Exception e1) { - MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); - e1.printStackTrace(); - } finally { - KUtil.setByPass(false); - } - setCompEnabled(true); - }else if(selectedItem.equals("ṹ")) { - setCompEnabled(false); - try { - KUtil.setByPass(true); - controller.sendToSap("ṹ", isCheckProduct,"B"); - } catch (Exception e1) { - MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); - e1.printStackTrace(); - } finally { - KUtil.setByPass(false); - // pb.disposeDialog(); - } - setCompEnabled(true); - }else if(selectedItem.equals("ƷBOM") && fa.equals("D")) { - //20231030 ϲѯͼֽ - try { - List selectedParts = controller.getSelectedParts(); - new SAPZYGG2Operation(app,selectedParts,controller.project).executeOperation(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - }else if(selectedItem.equals("ƷBOM") && fa.equals("E")) { - - // ҳû ѹ + if (fa.equals("C")) { + + controller.getDists(); + try { + controller.sendToSapBy("C"); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } else if (selectedItem.equals("һη")) { + setCompEnabled(false); + try { + KUtil.setByPass(true); + controller.sendToSap("һ", isCheckProduct, "B"); + } catch (Exception e1) { + MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); + e1.printStackTrace(); + } finally { + KUtil.setByPass(false); + // pb.disposeDialog(); + } + setCompEnabled(true); + } else if (selectedItem.equals("η")) { + setCompEnabled(false); + try { + KUtil.setByPass(true); + controller.sendToSap("", isCheckProduct, "B"); + } catch (Exception e1) { + MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); + e1.printStackTrace(); + } finally { + KUtil.setByPass(false); + // pb.disposeDialog(); + } + setCompEnabled(true); + } else if (selectedItem.equals("巽")) { + setCompEnabled(false); + try { + KUtil.setByPass(true); + controller.sendToSapKT(isCheckProduct); + } catch (Exception e1) { + MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); + e1.printStackTrace(); + } finally { + KUtil.setByPass(false); + } + setCompEnabled(true); + } else if (selectedItem.equals("ṹ")) { + setCompEnabled(false); + try { + KUtil.setByPass(true); + controller.sendToSap("ṹ", isCheckProduct, "B"); + } catch (Exception e1) { + MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); + e1.printStackTrace(); + } finally { + KUtil.setByPass(false); + // pb.disposeDialog(); + } + setCompEnabled(true); + } else if (selectedItem.equals("ƷBOM") && fa.equals("D")) { + // 20231030 ϲѯͼֽ + try { + List selectedParts = controller.getSelectedParts(); + new SAPZYGG2Operation(app, selectedParts, controller.project).executeOperation(); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } else if (selectedItem.equals("ƷBOM") && fa.equals("E")) { + + // ҳû ѹ // controller.getSelectedParts().get(0); - try { - List selectedParts = controller.getSelectedParts(); - new SAPPartZYOp2(app, selectedParts,true).executeOperation(); //zy - String sendToSapBy = controller.sendToSapBy("E"); //by - if (sendToSapBy.toString().length() > 0) { - new SAPMessageUtil(dialog, "", "쳣:" + sendToSapBy.toString()); - }else { - MessageBox.post("ݽ", "", MessageBox.INFORMATION); - } - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - }else if( fa.equals("B")) { - try { - if(selectedItem.equals("ƷBOM")) { - List selectedParts = controller.getSelectedParts(); - new SAPZYGG2Operation(app,selectedParts,controller.project).executeOperation(); - } + try { + List selectedParts = controller.getSelectedParts(); + new SAPPartZYOp2(app, selectedParts, true).executeOperation(); // zy + String sendToSapBy = controller.sendToSapBy("E"); // by + if (sendToSapBy.toString().length() > 0) { + new SAPMessageUtil(dialog, "", "쳣:" + sendToSapBy.toString()); + } else { + MessageBox.post("ݽ", "", MessageBox.INFORMATION); + } + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } else if (fa.equals("B")) { + try { + if (selectedItem.equals("ƷBOM")) { + List selectedParts = controller.getSelectedParts(); + new SAPZYGG2Operation(app, selectedParts, controller.project).executeOperation(); + } // else if(selectedItem.contains("") && controller.groupName.equals("M040")){ // try { // controller.sendToSapYH(selectedItem.replaceAll("", ""), isCheckProduct); @@ -406,43 +425,42 @@ public class SAPZYDialogzt extends AbstractAIFDialog { // e.printStackTrace(); // } // } - else { - controller.sendToSap(selectedItem.replaceAll("", ""), isCheckProduct,"B"); - } - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - }else if(fa.equals("F")) { - //BOM - try { - controller.sendToSapYH(selectedItem.replaceAll("", ""), isCheckProduct); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - else { - setCompEnabled(false); - try { - KUtil.setByPass(true); - controller.sendToSap(selectedItem.replaceAll("", ""), isCheckProduct,"D"); - } catch (Exception e1) { - MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); - e1.printStackTrace(); - } finally { - KUtil.setByPass(false); - // pb.disposeDialog(); - } - setCompEnabled(true); - } - // ProgressBar pb = new ProgressBar(SAPZYDialog.this,new Dimension(350, 50)); - - } - }).start(); - } - }); - // һι淶鴫 + else { + controller.sendToSap(selectedItem.replaceAll("", ""), isCheckProduct, "B"); + } + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } else if (fa.equals("F")) { + // BOM + try { + controller.sendToSapYH(selectedItem.replaceAll("", ""), isCheckProduct); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } else { + setCompEnabled(false); + try { + KUtil.setByPass(true); + controller.sendToSap(selectedItem.replaceAll("", ""), isCheckProduct, "D"); + } catch (Exception e1) { + MessageBox.post(SAPZYDialogzt.this, "" + e1.getMessage(), "", MessageBox.ERROR); + e1.printStackTrace(); + } finally { + KUtil.setByPass(false); + // pb.disposeDialog(); + } + setCompEnabled(true); + } + // ProgressBar pb = new ProgressBar(SAPZYDialog.this,new Dimension(350, 50)); + + } + }).start(); + } + }); + // һι淶鴫 // o_btn.addActionListener(new ActionListener() { // @Override // public void actionPerformed(ActionEvent e) { @@ -466,7 +484,7 @@ public class SAPZYDialogzt extends AbstractAIFDialog { // }).start(); // } // }); - // ι淶鴫 + // ι淶鴫 // t_btn.addActionListener(new ActionListener() { // @Override // public void actionPerformed(ActionEvent e) { @@ -516,7 +534,7 @@ public class SAPZYDialogzt extends AbstractAIFDialog { // } // }); - // ṹ + // ṹ // s_btn.addActionListener(new ActionListener() { // @Override // public void actionPerformed(ActionEvent e) { @@ -539,93 +557,95 @@ public class SAPZYDialogzt extends AbstractAIFDialog { // }).start(); // } // }); - } - private JComboBox comb; - private JPanel getBtnPanel() { - JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 30, 5)); + } + + private JComboBox comb; + + private JPanel getBtnPanel() { + JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 30, 5)); // o_btn = new JButton("һη"); // t_btn = new JButton("η"); // s_btn = new JButton("ṹ"); // kt_btn = new JButton("巽"); - b_cel = new JButton("ȡ"); + b_cel = new JButton("ȡ"); // panel.add(o_btn); // panel.add(t_btn); // panel.add(kt_btn); // panel.add(s_btn); - pushBOM_btn = new JButton("BOMȷ"); - panel.add(pushBOM_btn); - panel.add(b_cel); - - comb = new JComboBox(); - - String[] prefs = ChintPreferenceUtil.getPreferences("CHINT_BOMBTN", session); - if (prefs != null && prefs.length > 0) { - - - for(String pref:prefs) { - String[] split = pref.split(":"); - if(controller.groupName.equals(split[0])) { - - if(split[1].endsWith("/")) { - split[1] = split[1].substring(0,split[1].length()-1); - comb.addItem("ƷBOM"); - } - String[] split2 = split[1].split(";"); - for(String name:split2) { - comb.addItem(name); - } - } - } - } - if(comb.getItemCount()==0) { - comb.addItem("ƷBOM"); - } - b_qr = new JButton("ȷ"); - - b_qr2 = new JButton("ԵѹŻ"); - - panel.add(comb); - panel.add(b_qr); - panel.add(b_qr2); - return panel; - } - - private JPanel getTablePanel() { - JPanel panel = new JPanel(new BorderLayout()); - tm_part = new DefaultTableModel(); - t_part = new JTable(tm_part) { - @Override - public boolean isCellEditable(int row, int column) { // ѡУУÿɱ༭ - if (column == 0) - return true; - return false; - } - - @Override - public Class getColumnClass(int column) { // ѡУУ - if (column == 0) { - return Boolean.class; - } - return super.getColumnClass(column); - } - }; - tm_part.setDataVector(null, HEADER); - t_part.getTableHeader().setReorderingAllowed(false); // вƶᷢת󣨵У - this.t_part.setRowHeight(23); - // this.t_part.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); - TableColumnModel colModel = this.t_part.getColumnModel(); - int colCnt = HEADERWIDTH.length; - colModel.getColumn(0).setMaxWidth(HEADERWIDTH[0]); - for (int i = 0; i < colCnt; i++) { - colModel.getColumn(i).setPreferredWidth(HEADERWIDTH[i]); - } - this.t_part.getTableHeader() - .setDefaultRenderer(this.tableHeaderRenderer = new CheckBoxTableHeaderRenderer(t_part, 0, false)); - this.t_part.getTableHeader().setBackground(Color.blue); - JScrollPane scroll = new JScrollPane(t_part); - panel.add(BorderLayout.CENTER, scroll); - panel.setBorder(BorderFactory.createLoweredBevelBorder()); - return panel; - } + pushBOM_btn = new JButton("BOMȷ"); + panel.add(pushBOM_btn); + panel.add(b_cel); + + comb = new JComboBox(); + + String[] prefs = ChintPreferenceUtil.getPreferences("CHINT_BOMBTN", session); + if (prefs != null && prefs.length > 0) { + + for (String pref : prefs) { + String[] split = pref.split(":"); + if (controller.groupName.equals(split[0])) { + + if (split[1].endsWith("/")) { + split[1] = split[1].substring(0, split[1].length() - 1); + comb.addItem("ƷBOM"); + } + String[] split2 = split[1].split(";"); + for (String name : split2) { + comb.addItem(name); + } + } + } + } + if (comb.getItemCount() == 0) { + comb.addItem("ƷBOM"); + } + b_qr = new JButton("ȷ"); + + b_qr2 = new JButton("ԵѹŻ"); + b_qr3 = new JButton("еѹ첽"); + panel.add(comb); + panel.add(b_qr); + panel.add(b_qr2); + panel.add(b_qr3); + return panel; + } + + private JPanel getTablePanel() { + JPanel panel = new JPanel(new BorderLayout()); + tm_part = new DefaultTableModel(); + t_part = new JTable(tm_part) { + @Override + public boolean isCellEditable(int row, int column) { // ѡУУÿɱ༭ + if (column == 0) + return true; + return false; + } + + @Override + public Class getColumnClass(int column) { // ѡУУ + if (column == 0) { + return Boolean.class; + } + return super.getColumnClass(column); + } + }; + tm_part.setDataVector(null, HEADER); + t_part.getTableHeader().setReorderingAllowed(false); // вƶᷢת󣨵У + this.t_part.setRowHeight(23); + // this.t_part.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + TableColumnModel colModel = this.t_part.getColumnModel(); + int colCnt = HEADERWIDTH.length; + colModel.getColumn(0).setMaxWidth(HEADERWIDTH[0]); + for (int i = 0; i < colCnt; i++) { + colModel.getColumn(i).setPreferredWidth(HEADERWIDTH[i]); + } + this.t_part.getTableHeader() + .setDefaultRenderer(this.tableHeaderRenderer = new CheckBoxTableHeaderRenderer(t_part, 0, false)); + this.t_part.getTableHeader().setBackground(Color.blue); + JScrollPane scroll = new JScrollPane(t_part); + panel.add(BorderLayout.CENTER, scroll); + panel.setBorder(BorderFactory.createLoweredBevelBorder()); + return panel; + } } diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeControllerzt.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeControllerzt.java index f775caa..16e6fdb 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeControllerzt.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeControllerzt.java @@ -54,9 +54,9 @@ public class ZYApplyCodeControllerzt { protected TCComponentFolder folder; private static String QUERY_NAMES[] = { "%һι淶%", "%ι淶%", "%ṹ%" }; -// private static String SQL_QUERY_ALL = "select t.\"CompanyCodeStr\",t.\"GoodsCode\",t.\"GoodsName\",t.\"GoodsBpNo\"," -// + "t.\"GoodsFullInfo\",t.\"GoodsTeRe\",t.\"GoodsUnitCode\",t.\"GoodsPmpcCode\" from CHINT_XBFAH t where "; - private static String SQL_QUERY_ALL = "select t.CompanyCodeStr,t.GoodsCode,t.GoodsName,t.GoodsBpNo,t.GoodsFullInfo,t.GoodsTeRe,t.GoodsUnitCode,t.GoodsPmpcCode from ccemvw_cgd t where "; + private static String SQL_QUERY_ALL = "select t.\"CompanyCodeStr\",t.\"GoodsCode\",t.\"GoodsName\",t.\"GoodsBpNo\"," + + "t.\"GoodsFullInfo\",t.\"GoodsTeRe\",t.\"GoodsUnitCode\",t.\"GoodsPmpcCode\" from CHINT_XBFAH t where "; +// private static String SQL_QUERY_ALL = "select t.CompanyCodeStr,t.GoodsCode,t.GoodsName,t.GoodsBpNo,t.GoodsFullInfo,t.GoodsTeRe,t.GoodsUnitCode,t.GoodsPmpcCode from ccemvw_cgd t where "; // private static String SQL_QUERY_ALL="select // t.CgdCompanyCode,t.CgdGoodsCode,t.CgdName,t.CgdBpNo,t.CgdGoodsFullInfo,t.CgdTeRe,t.CgdUnitCode,t.CgdPmpcCode // from ccemvw_cgd t where t.CgdPmpcCode='400101012' "; @@ -117,12 +117,12 @@ public class ZYApplyCodeControllerzt { public boolean checkConn() { // String[] prefs = -// String[] stringValues = session.getPreferenceService().getStringValues("database_tc"); + String[] stringValues = session.getPreferenceService().getStringValues("database_tc"); //// Connection conn = SqlUtil.getTCDataConnection(prefs); // -// return SqlUtil.getTCDataConnection(stringValues) == null ? false : true; + return SqlUtil.getTCDataConnection(stringValues) == null ? false : true; - return SqlUtil.getConnection() == null ? false : true; +// return SqlUtil.getConnection() == null ? false : true; } public String type = ""; // ǷѡжӦķļ @@ -226,15 +226,15 @@ public class ZYApplyCodeControllerzt { StringBuilder sql = new StringBuilder(); sql.append(SQL_QUERY_ALL); System.out.println("isAPPLYS==>"+isAPPLYS); - sql.append(" t.GoodsCode like '").append(code).append("%'"); -// sql.append(" t.\"GoodsCode\" like '").append(code).append("%'"); +// sql.append(" t.GoodsCode like '").append(code).append("%'"); + sql.append(" t.\"GoodsCode\" like '").append(code).append("%'"); Object obj[] = new Object[1]; // obj[0] = "%"+code+"%"; // obj[0] = query_name; String groupID = SAPUtil.getGroupID(session); - sql.append(" and t.CompanyCodeStr like ?"); -// sql.append(" and t.\"CompanyCodeStr\" like ?"); +// sql.append(" and t.CompanyCodeStr like ?"); + sql.append(" and t.\"CompanyCodeStr\" like ?"); obj[0] = "%"+groupID+"%"; diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeDialogzt.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeDialogzt.java index b7f8d8c..7e6fb3b 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeDialogzt.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/sap_zy/ZYApplyCodeDialogzt.java @@ -443,10 +443,13 @@ public class ZYApplyCodeDialogzt extends AbstractAIFDialog { flag = true; // tm_part.addRow(applyCodeBean.getRowData()); } - + if (map_Applicables.get(bean).size() == 1) { // model3.removeElement(cloneBean); // model4.addElement(bean); + System.out.println("bean===>"+map_Applicables.toString()); + map_Applicables.remove(bean); + value_keys.remove(cloneBean); list_jl3.remove(cloneBean); list_jl4.add(bean); } else if (map_Applicables.get(bean).size() > 1) { diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/util/BomToSapUtil.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/util/BomToSapUtil.java index 6f1d219..485bb6e 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/util/BomToSapUtil.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/util/BomToSapUtil.java @@ -1,20 +1,91 @@ package com.connor.chint.sap2.util; +import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import org.apache.poi.xssf.usermodel.XSSFCell; +import org.apache.poi.xssf.usermodel.XSSFRow; +import org.apache.poi.xssf.usermodel.XSSFSheet; + import com.teamcenter.rac.kernel.TCComponent; import com.teamcenter.rac.kernel.TCComponentBOMLine; +import com.teamcenter.rac.kernel.TCComponentDataset; import com.teamcenter.rac.kernel.TCComponentItemRevision; +import com.teamcenter.rac.kernel.TCComponentTcFile; +import com.teamcenter.rac.kernel.TCException; +import com.teamcenter.rac.kernel.TCPreferenceService; +import com.teamcenter.rac.kernel.TCSession; import com.teamcenter.rac.ui.common.RACUIUtil; import com.teamcenter.services.rac.cad._2007_01.StructureManagement.ExpandPSAllLevelsOutput; import com.teamcenter.services.rac.cad._2007_01.StructureManagement.ExpandPSData; public class BomToSapUtil { - - + /** + * @param cell2 Ԫ + * @param index + * @param row0 + * @param cellValue ֵ + * @function õԪ + */ + public static void setCellValue(XSSFCell cell2, int index, XSSFRow row0, String cellValue) { + // TODO Auto-generated method stub + + if (cell2 == null) { + cell2 = row0.createCell(index); + } + + cell2.setCellValue(cellValue); + + } + + /** + * @param sheetAt + * @param rowNum + * @return excel + * @function + */ + public static XSSFRow getRow(XSSFSheet sheetAt, int rowNum) { + // TODO Auto-generated method stub + + XSSFRow row = sheetAt.getRow(rowNum); + if (row == null) { + row = sheetAt.createRow(rowNum); + } + return row; + } + /** + * + * @param session + * @param PreServiceName:ѡ + * @param Filetype:excelͣMSExcelX + * @return + */ + public static File getFile(TCSession session, String PreServiceName, String Filetype) { + TCPreferenceService service = session.getPreferenceService(); + String puid = service.getStringValue(PreServiceName); + if (puid == null) { + System.out.println("δҵѡ"); + return null; + } + TCComponentDataset dat; + try { + dat = (TCComponentDataset) session.stringToComponent(puid); + + TCComponentTcFile[] tcFile = dat.getTcFiles(); + if (tcFile != null && tcFile.length == 0) { + System.out.println("δҵļ"); + } else { + return tcFile[0].getFmsFile(); + } + } catch (TCException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + return null; + } public static Map getBomLineTreeNodeSOA(TCComponentBOMLine bomLine) { // List bomLineNodes = list; diff --git a/com.connor.chint.sap2/src/com/connor/chint/sap2/util/SAPUtil.java b/com.connor.chint.sap2/src/com/connor/chint/sap2/util/SAPUtil.java index 31a0109..46cfbbd 100644 --- a/com.connor.chint.sap2/src/com/connor/chint/sap2/util/SAPUtil.java +++ b/com.connor.chint.sap2/src/com/connor/chint/sap2/util/SAPUtil.java @@ -384,6 +384,10 @@ public class SAPUtil { zt2_materialNo = part2.getLatestItemRevision().getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_materialNo); item.setMEINS(part2.getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = part2.getLatestItemRevision().getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); @@ -394,7 +398,7 @@ public class SAPUtil { if (KUtil.isEmpty(sortno)) buff.append("BOMδҵͶϢ;"); item.setPOTX1(line2.getProperty("ZT2_Remark")); - + items[i] = item; String[] properties2 = rev2.getProperties(new String[] {"item_id","object_name","zt2_SapState"}); String item_id2 = properties2[0];//rev2.getProperty("item_id"); @@ -911,7 +915,6 @@ public class SAPUtil { } } - } } @@ -2306,6 +2309,10 @@ public class SAPUtil { zt2_materialNo = part2.getLatestItemRevision().getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_materialNo); item.setMEINS(part2.getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = partRev2.getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); @@ -2547,6 +2554,10 @@ public class SAPUtil { zt2_materialNo = part2.getLatestItemRevision().getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_materialNo); item.setMEINS(part2.getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = partRev2.getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); @@ -4255,6 +4266,10 @@ public class SAPUtil { zt2_materialNo = partRev2.getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_materialNo); item.setMEINS(partRev2.getItem().getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = partRev2.getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); @@ -4570,6 +4585,10 @@ public class SAPUtil { zt2_MaterialNo = partRev2.getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_MaterialNo); item.setMEINS(partRev2.getItem().getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = partRev2.getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_MaterialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); @@ -4824,6 +4843,10 @@ public class SAPUtil { zt2_materialNo = part2Rev.getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_materialNo); item.setMEINS(part2Rev.getItem().getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = part2Rev.getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); @@ -5079,6 +5102,10 @@ public class SAPUtil { zt2_materialNo = part2Rev.getProperty("zt2_MaterialNo"); item.setIDNRK(zt2_materialNo); item.setMEINS(part2Rev.getItem().getTCProperty("zt2_unit").getStringValue().toUpperCase()); + String zt2_State = part2Rev.getProperty("zt2_State"); + if(zt2_State.equals("")||zt2_State.equals("D1")) { + buff.append(":").append(zt2_materialNo).append("ѷ,޷SAP"); + } } item.setDATUV(now); item.setPOSTP("L"); diff --git a/com.connor.chint.sap2/src/com/xinhua/mes/intf/core/webservice/WkpcsInfoWebServiceServiceLocator.java b/com.connor.chint.sap2/src/com/xinhua/mes/intf/core/webservice/WkpcsInfoWebServiceServiceLocator.java index 6176aa8..3ab949d 100644 --- a/com.connor.chint.sap2/src/com/xinhua/mes/intf/core/webservice/WkpcsInfoWebServiceServiceLocator.java +++ b/com.connor.chint.sap2/src/com/xinhua/mes/intf/core/webservice/WkpcsInfoWebServiceServiceLocator.java @@ -23,8 +23,8 @@ public class WkpcsInfoWebServiceServiceLocator extends org.apache.axis.client.Se // Use to get a proxy class for WkpcsInfoWebServicePort //private java.lang.String WkpcsInfoWebServicePort_address = "http://10.128.155.13:8080/mes-intfe/services/wkpcsInfo"; - //20200511改 - private java.lang.String WkpcsInfoWebServicePort_address = "http://10.128.20.250:8090/mes-intfe/services/wkpcsInfo"; + //20200511鏀� 2024/1/7更换IP地址 旧10.128.20.250 新mes.chintelec.com + private java.lang.String WkpcsInfoWebServicePort_address = "https://mes.chintelec.com/mes-intfe/services/wkpcsInfo"; //2020 //private java.lang.String WkpcsInfoWebServicePort_address = "http://10.128.20.250:8090/mes-intfe/mes/map/mapChange";