From 1e2e6e1e7f450135ceaa7c800fe5bdd712234073 Mon Sep 17 00:00:00 2001 From: "lidy@connor.net.cn" Date: Fri, 19 Apr 2024 10:35:30 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=96=B0=E5=A2=9E=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E5=8A=9F=E8=83=BD-=E5=B7=A5=E8=89=BA=E8=B7=AF=E7=BA=BF?= =?UTF-8?q?=E9=BD=90=E5=A5=97=E6=80=A7=E6=A3=80=E6=9F=A5=202=E3=80=81?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=8F=9C=E5=8D=95=E5=8A=9F=E8=83=BD-?= =?UTF-8?q?=E6=AD=A6=E6=B1=89=E5=B7=A5=E5=8E=82-=E5=B7=A5=E8=89=BA?= =?UTF-8?q?=E6=8C=87=E6=B4=BE=E4=B8=8E=E6=8A=95=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- com.connor.chint.wuhan/plugin.xml | 40 ++++ .../com/connor/chint/sap2/util/TCUtil.java | 8 + .../process/AssProcessAutoFeedingCommand.java | 221 ++++++++++++++++++ .../src/com/connor/plm/process/PlmLocale.java | 29 +++ .../plm/process/ProcessCheckCommand.java | 25 ++ .../plm/process/ProcessCheckDialog.java | 182 +++++++++++++++ .../plm/process/process_locale.properties | 24 ++ .../process/process_locale_zh_CN.properties | 24 ++ 8 files changed, 553 insertions(+) create mode 100644 com.connor.chint.wuhan/src/com/connor/plm/process/AssProcessAutoFeedingCommand.java create mode 100644 com.connor.chint.wuhan/src/com/connor/plm/process/PlmLocale.java create mode 100644 com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckCommand.java create mode 100644 com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckDialog.java create mode 100644 com.connor.chint.wuhan/src/com/connor/plm/process/process_locale.properties create mode 100644 com.connor.chint.wuhan/src/com/connor/plm/process/process_locale_zh_CN.properties diff --git a/com.connor.chint.wuhan/plugin.xml b/com.connor.chint.wuhan/plugin.xml index da83ee3..06057e7 100644 --- a/com.connor.chint.wuhan/plugin.xml +++ b/com.connor.chint.wuhan/plugin.xml @@ -34,6 +34,8 @@ + + @@ -63,6 +65,9 @@ + + + @@ -354,6 +359,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/com.connor.chint.wuhan/src/com/connor/chint/sap2/util/TCUtil.java b/com.connor.chint.wuhan/src/com/connor/chint/sap2/util/TCUtil.java index f3e40bc..0d54394 100644 --- a/com.connor.chint.wuhan/src/com/connor/chint/sap2/util/TCUtil.java +++ b/com.connor.chint.wuhan/src/com/connor/chint/sap2/util/TCUtil.java @@ -2,4 +2,12 @@ package com.connor.chint.sap2.util; public class TCUtil { + public static boolean contains(String[] array, String str) { + for(String s : array) { +// System.out.println("contains:"+s+"="+str); + if(s.equals(str)) + return true; + } + return false; + } } diff --git a/com.connor.chint.wuhan/src/com/connor/plm/process/AssProcessAutoFeedingCommand.java b/com.connor.chint.wuhan/src/com/connor/plm/process/AssProcessAutoFeedingCommand.java new file mode 100644 index 0000000..b4950a0 --- /dev/null +++ b/com.connor.chint.wuhan/src/com/connor/plm/process/AssProcessAutoFeedingCommand.java @@ -0,0 +1,221 @@ +package com.connor.plm.process; + +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import javax.swing.JOptionPane; + +import com.connor.chint.sap2.util.MyProgressBarCompent; +import com.connor.chint.sap2.util.SAPMessageUtilFram; +import com.connor.chint.sap2.util.SAPUtil; +import com.connor.chint.sap2.util.SqlUtil; +import com.connor.chint.yunpi.KCommand; +import com.teamcenter.rac.aif.AbstractAIFApplication; +import com.teamcenter.rac.aif.kernel.AIFComponentContext; +import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent; +import com.teamcenter.rac.aifrcp.AIFUtility; +import com.teamcenter.rac.kernel.TCComponent; +import com.teamcenter.rac.kernel.TCComponentBOMLine; +import com.teamcenter.rac.kernel.TCComponentItem; +import com.teamcenter.rac.kernel.TCComponentItemRevision; +import com.teamcenter.rac.kernel.TCPreferenceService; +import com.teamcenter.rac.kernel.TCSession; +import com.teamcenter.rac.kernel.TCUserService; +import com.teamcenter.rac.util.MessageBox; + +/** + * : ܵ-·ָɹ+ԶͶϹ + * :2024-04-18 + * @author  + */ +@SuppressWarnings("deprecation") +public class AssProcessAutoFeedingCommand extends KCommand { + + public AssProcessAutoFeedingCommand(AbstractAIFApplication app, String commandId, String actionInfo) { + super(app, commandId, actionInfo); + + try { + InterfaceAIFComponent targetComponent = app.getTargetComponent(); + TCSession session = (TCSession)app.getSession(); + String groupID = SAPUtil.getGroupID(session); + if(!groupID.equals("M060")) { + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("info1"), "", MessageBox.ERROR); + return; + } + TCComponentItemRevision rev; + if(targetComponent instanceof TCComponentBOMLine) { + rev = ((TCComponentBOMLine)targetComponent).getItemRevision(); + }else if(targetComponent instanceof TCComponentItemRevision) { + rev = (TCComponentItemRevision) targetComponent; + }else { + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("info2"), "", MessageBox.ERROR); + return; + } + if(!rev.getType().equals("Part Revision")) { + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("info3"), "", MessageBox.ERROR); + return; + } + new Thread() { + @Override + public void run() { + MyProgressBarCompent comp = null; + try { +// TCComponentItemRevision pRevision = getPRevision(rev); + TCComponentItemRevision topZzItem = getTopZzItem(rev); + String name = rev.getProperty("object_name"); + String property = topZzItem.getProperty("zt2_ifpbom"); + if(!property.equals("P") && topZzItem.getStringProperty("object_desc").contains("1ZDB300000P")) { + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("info3"), "", MessageBox.ERROR); + return; + } + boolean isback = false; + TCPreferenceService service = session.getPreferenceService(); + String[] rules = service.getStringValues("CHINT_PROCESS_RULE"); + for(String rule : rules) { + String[] split = rule.split(":"); + if(!split[0].equals(groupID)) + continue; + String[] backs = split[1].split(";"); + for(String back : backs) { + System.out.println(name + "==" + back + ">>" + name.contains(back)); + if(name.contains(back)) { + isback = true; + break; + } + } + if(isback) + break; + } + TCComponentItemRevision desginRev = (TCComponentItemRevision) topZzItem.getRelatedComponent("TC_Is_Represented_By"); + System.out.println("topZzItem==" + topZzItem.toString() + ">>" + isback); + if(isback) { + AIFComponentContext[] folders = topZzItem.getItem() + .whereReferencedByTypeRelation(new String[] { "ZT2_ProjectFolder" }, null);//new String[] { "contents" } + if(folders.length == 0) { + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("info4"), "INFO", MessageBox.WARNING); + return; + } + AIFComponentContext[] ccps = folders[0].getComponent().getChildren(); + System.out.println(folders[0].getComponent() + "==>" + ccps.length); + for(AIFComponentContext aifcc : ccps) { + TCComponentItem item = (TCComponentItem) aifcc.getComponent(); + desginRev = (TCComponentItemRevision) item.getLatestItemRevision().getRelatedComponent("TC_Is_Represented_By"); + System.out.println(item + "==>" + desginRev); + if(desginRev != null) + break; + } + } + if(desginRev == null) { + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("info5"), "INFO", MessageBox.WARNING); + return; + } + Map classificationAttributes = desginRev.getItem().getClassificationAttributes(); + System.out.println(classificationAttributes.toString()); + + for(String key : classificationAttributes.keySet()) { + if(key.equals(PlmLocale.getString("cpxh"))) { + String cphx = classificationAttributes.get(key); + String sql = "SELECT \"ProductZu\" FROM \"CHINT_WORKHOUR_WhProductXH\" where \"ProductXH\" = '"+cphx+"'"; + String[] prefs = service.getStringValues("database_tc"); + SqlUtil.getTCDataConnection(prefs); + ResultSet read2 = SqlUtil.read(sql); + if(!read2.next()) { + String searchSql = "SELECT distinct \"ProductZu\" FROM \"CHINT_WORKHOUR_WhProductXH\" where \"COMPANYCODE\" = 'M060'"; + ResultSet read = SqlUtil.read(searchSql); + List productZuList = new ArrayList(); + while(read.next()){ + productZuList.add(read.getString(1)); + } + System.out.println(productZuList.toString()); + String[] array = productZuList.toArray(new String[] {}); + Object showInputDialog = JOptionPane.showInputDialog(null, PlmLocale.getString("info6"), "INFO", + JOptionPane.QUESTION_MESSAGE, null, array,array[0]); + if(showInputDialog == null) { + return; + }else { + System.out.println("showInputDialog:" + showInputDialog.toString()); + String insertSql = "INSERT INTO \"CHINT_WORKHOUR_WhProductXH\" " + + "(\"ProductXH\",\"ProductZu\",\"COMPANYCODE\") " + + "VALUES (?,?,?)"; + SqlUtil.write(insertSql, new Object[] { cphx, showInputDialog.toString(), "M060" }); + } + } + break; + } + } + + comp = new MyProgressBarCompent("", PlmLocale.getString("info7")); + TCUserService userService = (TCUserService) session.getUserService(); + Object call = userService.call("CloneTempProcess", new Object[] { rev.getUid() }); + String assignResult = call.toString(); + System.out.println(assignResult); + if(!assignResult.equals("succ")) { + comp.setVisible(false); + new SAPMessageUtilFram("", PlmLocale.getString("info8") + assignResult); + return; + } + + comp.setShowLabel(PlmLocale.getString("info9")); + call = userService.call("AutoFeeding", new Object[] { rev.getUid() }); + comp.setVisible(false); + String feedResult = call.toString(); + System.out.println(feedResult); + + boolean succ = true; + if(!feedResult.equals("succ")) { + new SAPMessageUtilFram("", PlmLocale.getString("info10") + feedResult); + }else if(succ) { + MessageBox.post(PlmLocale.getString("info11"), "INFO", MessageBox.INFORMATION); + } + } catch (Exception e1) { + e1.printStackTrace(); + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("err") + e1.toString(), "", MessageBox.ERROR); + }finally { + SqlUtil.freeAll(); + if(comp != null) { + comp.dispose();//.setVisible(false); + } + } + } + }.start(); + }catch(Exception e) { + e.printStackTrace(); + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("err") + e.toString(), "", MessageBox.ERROR); + } + } + /** + * ȡװBOM㣩 + * @param rev Ŀ + * @return BOM汾 + */ + private TCComponentItemRevision getTopZzItem(TCComponentItemRevision rev) throws Exception { + TCComponent[] whereUsed = rev.whereUsed((short)0); + if(whereUsed.length==0) { + return rev; + }else { + List revPs = new ArrayList(); + for(int i = 0; i < whereUsed.length; i++) { + TCComponentItemRevision revP = (TCComponentItemRevision)whereUsed[i]; + if(revP.getType().contains("Part")) { + revPs.add(revP); + } + } + for(TCComponentItemRevision revP : revPs) { + if(revPs.size()>1) { +// TCComponentItemRevision revP = (TCComponentItemRevision)whereUsed[i]; + String property = revP.getProperty("zt2_ifpbom"); + if(property == null || !property.equals("P")) { + continue; + } + } + TCComponentItemRevision item = getTopZzItem(revP); + if(item != null) { + return item; + } + } + } + return null; + } +} diff --git a/com.connor.chint.wuhan/src/com/connor/plm/process/PlmLocale.java b/com.connor.chint.wuhan/src/com/connor/plm/process/PlmLocale.java new file mode 100644 index 0000000..d8a4d44 --- /dev/null +++ b/com.connor.chint.wuhan/src/com/connor/plm/process/PlmLocale.java @@ -0,0 +1,29 @@ +package com.connor.plm.process; + +import com.teamcenter.rac.util.Registry; + +/** + * : ӢĻл + * :2019-02-26 + * @author + * + * ޸ ޸ ޸ + * 2019-01-24 XXXX + */ +public class PlmLocale { + + public static final Registry reg = Registry.getRegistry(PlmLocale.class); + + public static String getString(String title) { + if (isEmpty(title)) { + return ""; + } else { + String res = reg.getString(title); + return isEmpty(res) ? title : res; + } + } + + private static boolean isEmpty(String title) { + return title == null || "".equals(title.trim()); + } +} diff --git a/com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckCommand.java b/com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckCommand.java new file mode 100644 index 0000000..31c4d65 --- /dev/null +++ b/com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckCommand.java @@ -0,0 +1,25 @@ +package com.connor.plm.process; + +import com.connor.chint.yunpi.KCommand; +import com.teamcenter.rac.aif.AbstractAIFApplication; +import com.teamcenter.rac.aifrcp.AIFUtility; +import com.teamcenter.rac.util.MessageBox; + +/** + * : ·Լ飬ָ깤·ߺҪǷҪָɹ·ߵ϶ָɹ· + * :2024-04-18 + * @author  + */ +public class ProcessCheckCommand extends KCommand { + + public ProcessCheckCommand(AbstractAIFApplication app, String commandId, String actionInfo) { + super(app, commandId, actionInfo); + + try { + new ProcessCheckDialog(app); + }catch(Exception e) { + e.printStackTrace(); + MessageBox.post(AIFUtility.getActiveDesktop(), PlmLocale.getString("err") + e.toString(), "", MessageBox.ERROR); + } + } +} diff --git a/com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckDialog.java b/com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckDialog.java new file mode 100644 index 0000000..034030d --- /dev/null +++ b/com.connor.chint.wuhan/src/com/connor/plm/process/ProcessCheckDialog.java @@ -0,0 +1,182 @@ +package com.connor.plm.process; + +import java.awt.Dimension; +import java.util.HashMap; +import java.util.HashSet; + +import javax.swing.JTable; +import javax.swing.table.DefaultTableModel; + +import com.connor.chint.sap2.util.BomToSapUtil; +import com.connor.chint.sap2.util.TCUtil; +import com.teamcenter.rac.aif.AbstractAIFApplication; +import com.teamcenter.rac.aif.AbstractAIFDialog; +import com.teamcenter.rac.aif.kernel.AIFComponentContext; +import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent; +import com.teamcenter.rac.aifrcp.AIFUtility; +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.TCSession; +import com.teamcenter.rac.util.MessageBox; +import com.teamcenter.services.rac.cad._2007_01.StructureManagement.ExpandPSData; +/** + * : ·Լ飬ָ깤·ߺҪǷҪָɹ·ߵ϶ָɹ· + * :2024-04-18 + * @author  + */ +public class ProcessCheckDialog extends AbstractAIFDialog { + + /** + * + */ + private static final long serialVersionUID = 1L; + + private TCSession session; + private JTable table; + private DefaultTableModel model; + private String[] names; + private HashSet bomSet; + + public ProcessCheckDialog(AbstractAIFApplication app) throws Exception { + super(AIFUtility.getActiveDesktop()); + + TCComponentItem design = checkData(app); + + setTitle(PlmLocale.getString("title")); +// String[] tableHeader = new String[] { "", "ϱ", "", "Ƿ·" }; + String[] tableHeader = PlmLocale.getString("cols").split(";"); + model = new DefaultTableModel(tableHeader, 0); + table = new JTable() { + private static final long serialVersionUID = 1L; + @Override + public boolean isCellEditable(int row, int col) { + return false; + } + }; + table.setFillsViewportHeight(true); + table.setEnabled(true); +// impTable.setAutoResizeMode(JTable.AUTO_RESIZE_NEXT_COLUMN); + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + table.setModel(model); + table.getColumnModel().getColumn(0).setPreferredWidth(50); + for (int i = 1; i < table.getColumnCount(); i++) { + table.getColumnModel().getColumn(i).setPreferredWidth(150); + } + table.getTableHeader().setReorderingAllowed(false); + + loadData(design); + + setSize(new Dimension(700, 700)); + Dimension screen = getToolkit().getScreenSize(); + setLocation((screen.width - getSize().width) / 2, (screen.height - getSize().height) / 2); +// this.setAlwaysOnTop(true); + setVisible(true); + } + /** + * ȡѡȡװͼֽ + * @param app AbstractAIFApplication + * @return װͼֽ + */ + private TCComponentItem checkData(AbstractAIFApplication app) throws Exception { + session = (TCSession) app.getSession(); + String option = session.getPreferenceService().getStringValue("CHINT_Check_Process"); + if(option == null || option.isEmpty()) { + throw new Exception("CHINT_Check_Process" + PlmLocale.getString("preferr")); + } + names = option.split(";"); + + InterfaceAIFComponent target = app.getTargetComponent(); + if(!target.getType().equals("ZT2_ProjectItem")) { + throw new Exception(PlmLocale.getString("msg1")); + } + TCComponentItem design = null; + for(AIFComponentContext c : target.getChildren()) { + InterfaceAIFComponent projectChild = c.getComponent(); + if(!projectChild.getProperty("object_name").equals(PlmLocale.getString("xmzx")))//Ŀִļ + continue; + for(AIFComponentContext c2 : projectChild.getChildren()) { + InterfaceAIFComponent xmzxChild = c2.getComponent(); + if(!xmzxChild.getProperty("object_name").equals(PlmLocale.getString("zztz")))//13-װͼֽļ + continue; + for(AIFComponentContext c3 : xmzxChild.getChildren()) { + InterfaceAIFComponent zztzChild = c3.getComponent(); + if(!zztzChild.getType().equals("ZT2_Design3D")) + continue; + design = (TCComponentItem) zztzChild; + break; + } + break; + } + break; + } + if(design == null) { + throw new Exception(PlmLocale.getString("msg2")); + } + return design; + } + /** + * ȡP + * @param design װͼֽ + */ + private void loadData(TCComponentItem design) { + try { + bomSet = new HashSet<>(); + TCComponentItemRevision drev = design.getLatestItemRevision(); + AIFComponentContext[] parts = drev.getChildren("representation_for")[0].getComponent().getChildren(); + TCComponentBOMWindowType bomWinType = (TCComponentBOMWindowType) session.getTypeComponent("BOMWindow"); + TCComponentBOMWindow win = bomWinType.create(null); + for(AIFComponentContext c : parts) { + TCComponentItemRevision part = (TCComponentItemRevision) c.getComponent(); + if(!part.getProperty("zt2_ifpbom").equals("P")) + continue; + part = part.getItem().getLatestItemRevision(); + String cuid = part.getUid(); + if(bomSet.contains(cuid)) + continue; + bomSet.add(cuid); + TCComponentBOMLine topLine = win.setWindowTopLine(part.getItem(), part, null, null); + HashMap bomLineTree = BomToSapUtil.getBomLineTreeNodeSOA(topLine); + + recycleBOM(bomLineTree, topLine.getUid()); + } + win.close(); + } catch(Exception e) { + e.printStackTrace(); + MessageBox.post(this, PlmLocale.getString("err") + e.toString(), "", MessageBox.ERROR); + } + } + /** + * PBOM + * @param bomLineTree PBOM + * @param puid BOMuid + */ + private void recycleBOM(HashMap bomLineTree, String puid) throws Exception { + for(ExpandPSData data : bomLineTree.get(puid)) { + TCComponentItemRevision rev = data.itemRevOfBOMLine; + String cuid = rev.getUid(); + if(bomSet.contains(cuid)) + continue; + bomSet.add(cuid); + TCComponentBOMLine line = data.bomLine; + //ֻȡаѡƵϰ汾ȷƥ䣩 + if(TCUtil.contains(names, line.getProperty("bl_item_object_name"))) + continue; + AIFComponentContext[] meops = rev.whereReferencedByTypeRelation(new String[] { "MEProcessRevision" }, + new String[] { "IMAN_METarget" }); + Object[] value = new Object[4]; + value[0] = model.getRowCount() + 1;// + value[1] = rev.getProperty("zt2_MaterialNo");//ϱ + value[2] = rev.getProperty("object_name");// + if(meops == null || meops.length == 0)//Ƿ· + value[3] = PlmLocale.getString("no"); + else + value[3] = PlmLocale.getString("yes"); + model.addRow(value); + + recycleBOM(bomLineTree, line.getUid()); + } + } +} \ No newline at end of file diff --git a/com.connor.chint.wuhan/src/com/connor/plm/process/process_locale.properties b/com.connor.chint.wuhan/src/com/connor/plm/process/process_locale.properties new file mode 100644 index 0000000..ba94edb --- /dev/null +++ b/com.connor.chint.wuhan/src/com/connor/plm/process/process_locale.properties @@ -0,0 +1,24 @@ +preferr=\u9996\u9009\u9879\u914D\u7F6E\u4E0D\u6B63\u786E +err=\u9519\u8BEF\uFF1A +#ProcessCheckDialog +title=\u5DE5\u827A\u8DEF\u7EBF\u9F50\u5957\u6027\u68C0\u67E5 +cols=\u5E8F\u53F7;\u7269\u6599\u7F16\u7801;\u7269\u6599\u540D\u79F0;\u662F\u5426\u5173\u8054\u5DE5\u827A\u8DEF\u7EBF +xmzx=\u9879\u76EE\u6267\u884C +zztz=13-\u603B\u88C5\u56FE\u7EB8 +msg1=\u8BF7\u9009\u62E9\u9879\u76EE\u5BF9\u8C61 +msg2=\u672A\u627E\u5230\u603B\u88C5\u56FE\u7EB8 +yes=\u662F +no=\u5426 +#AssProcessAutoFeedingCommand +cpxh=\u4EA7\u54C1\u578B\u53F7 +info1=\u8BF7\u767B\u5F55\u6B63\u786E\u7EC4 +info2=\u8BF7\u9009\u62E9BOM\u884C\u6216\u8005\u7248\u672C\u5BF9\u8C61 +info3=\u8BF7\u9009\u62E9PBOM\u5BF9\u8C61 +info4=\u672A\u627E\u5230\u4EA7\u6210\u54C1\u6587\u4EF6\u5939\uFF0C\u8BF7\u68C0\u67E5 +info5=\u5B58\u5728\u9876\u5C42P\u7269\u6599\u6CA1\u6709\u5173\u8054\u56FE\u7EB8\uFF0C\u8BF7\u68C0\u67E5 +info6=\u5F53\u524D\u4EA7\u54C1\u578B\u53F7\u672A\u7EF4\u62A4\uFF0C\u8BF7\u9009\u62E9\u5BF9\u5E94\u4EA7\u54C1\u65CF +info7=\u6B63\u5728\u8FDB\u884C\u4E00\u952E\u6307\u6D3E\u5DE5\u827A\u8DEF\u7EBF...... +info8=\u6307\u6D3E\u5DE5\u827A\u8DEF\u7EBF\u5B58\u5728\u5F02\u5E38\uFF0C\u8BF7\u68C0\u67E5\uFF1A\n +info9=\u6B63\u5728\u8FDB\u884C\u81EA\u52A8\u6295\u6599...... +info10=\u81EA\u52A8\u6295\u6599\u5B58\u5728\u5F02\u5E38\uFF0C\u8BF7\u68C0\u67E5\uFF1A\n +info11=\u6307\u6D3E\u5DE5\u827A\u8DEF\u7EBF\u4E0E\u81EA\u52A8\u6295\u6599\u5B8C\u6210 diff --git a/com.connor.chint.wuhan/src/com/connor/plm/process/process_locale_zh_CN.properties b/com.connor.chint.wuhan/src/com/connor/plm/process/process_locale_zh_CN.properties new file mode 100644 index 0000000..f574841 --- /dev/null +++ b/com.connor.chint.wuhan/src/com/connor/plm/process/process_locale_zh_CN.properties @@ -0,0 +1,24 @@ +preferr=\u9996\u9009\u9879\u914D\u7F6E\u4E0D\u6B63\u786E +#ProcessCheckDialog +err=\u9519\u8BEF\uFF1A +title=\u5DE5\u827A\u8DEF\u7EBF\u9F50\u5957\u6027\u68C0\u67E5 +cols=\u5E8F\u53F7;\u7269\u6599\u7F16\u7801;\u7269\u6599\u540D\u79F0;\u662F\u5426\u5173\u8054\u5DE5\u827A\u8DEF\u7EBF +xmzx=\u9879\u76EE\u6267\u884C +zztz=13-\u603B\u88C5\u56FE\u7EB8 +msg1=\u8BF7\u9009\u62E9\u9879\u76EE\u5BF9\u8C61 +msg2=\u672A\u627E\u5230\u603B\u88C5\u56FE\u7EB8 +yes=\u662F +no=\u5426 +#AssProcessAutoFeedingCommand +cpxh=\u4EA7\u54C1\u578B\u53F7 +info1=\u8BF7\u767B\u5F55\u6B63\u786E\u7EC4 +info2=\u8BF7\u9009\u62E9BOM\u884C\u6216\u8005\u7248\u672C\u5BF9\u8C61 +info3=\u8BF7\u9009\u62E9PBOM\u5BF9\u8C61 +info4=\u672A\u627E\u5230\u4EA7\u6210\u54C1\u6587\u4EF6\u5939\uFF0C\u8BF7\u68C0\u67E5 +info5=\u5B58\u5728\u9876\u5C42P\u7269\u6599\u6CA1\u6709\u5173\u8054\u56FE\u7EB8\uFF0C\u8BF7\u68C0\u67E5 +info6=\u5F53\u524D\u4EA7\u54C1\u578B\u53F7\u672A\u7EF4\u62A4\uFF0C\u8BF7\u9009\u62E9\u5BF9\u5E94\u4EA7\u54C1\u65CF +info7=\u6B63\u5728\u8FDB\u884C\u4E00\u952E\u6307\u6D3E\u5DE5\u827A\u8DEF\u7EBF...... +info8=\u6307\u6D3E\u5DE5\u827A\u8DEF\u7EBF\u5B58\u5728\u5F02\u5E38\uFF0C\u8BF7\u68C0\u67E5\uFF1A\n +info9=\u6B63\u5728\u8FDB\u884C\u81EA\u52A8\u6295\u6599...... +info10=\u81EA\u52A8\u6295\u6599\u5B58\u5728\u5F02\u5E38\uFF0C\u8BF7\u68C0\u67E5\uFF1A\n +info11=\u6307\u6D3E\u5DE5\u827A\u8DEF\u7EBF\u4E0E\u81EA\u52A8\u6295\u6599\u5B8C\u6210