From f8c2b4b22ab93c4e80d12f01c8489c3976b0f802 Mon Sep 17 00:00:00 2001 From: lijh Date: Mon, 7 Apr 2025 16:42:26 +0800 Subject: [PATCH] 20250407 --- .../lidy/create/PictureMaterialDialog.java | 9 +++--- .../lidy/create/PictureMaterialOperation.java | 28 +++++++++++++------ 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/src/com/connor/lidy/create/PictureMaterialDialog.java b/src/com/connor/lidy/create/PictureMaterialDialog.java index a464eb2..40f2885 100644 --- a/src/com/connor/lidy/create/PictureMaterialDialog.java +++ b/src/com/connor/lidy/create/PictureMaterialDialog.java @@ -203,7 +203,6 @@ public class PictureMaterialDialog extends AbstractAIFDialog { MessageBox.post(AIFDesktop.getActiveDesktop(), "查询为空!", "", MessageBox.INFORMATION); return; } - //TCComponent[] result = session.stringToComponent(list.toArray(new String[0])); long time2 = System.nanoTime(); @@ -228,7 +227,7 @@ public class PictureMaterialDialog extends AbstractAIFDialog { v.add(value.get(3));//产品代号 v.add(value.get(4));//产品型号 - tableMap.put(count, session.stringToComponent(key)); + tableMap.put(count - 1, session.stringToComponent(key)); impModel.addRow(v); count++; } @@ -252,7 +251,7 @@ public class PictureMaterialDialog extends AbstractAIFDialog { public void actionPerformed(ActionEvent arg0) { try { PictureMaterialOperation operation= new PictureMaterialOperation(tableMap,0,target,dialog,search,"查询",session); - session.queueOperation(operation); + operation.executeOperation(); } catch (Exception e1) { e1.printStackTrace(); MessageBox.post(dialog, "错误:"+e1.getMessage(), "ERROR", MessageBox.ERROR); @@ -268,7 +267,9 @@ public class PictureMaterialDialog extends AbstractAIFDialog { if(row<0) throw new Exception("请选择设计文档"); PictureMaterialOperation operation= new PictureMaterialOperation(tableMap,row,target,dialog,"","导出",session); - session.queueOperation(operation); + operation.executeOperation(); + MessageBox.post(dialog, operation.res, "INFO", MessageBox.WARNING); + dispose(); } catch (Exception e1) { e1.printStackTrace(); MessageBox.post(dialog, "错误:"+e1.getMessage(), "ERROR", MessageBox.ERROR); diff --git a/src/com/connor/lidy/create/PictureMaterialOperation.java b/src/com/connor/lidy/create/PictureMaterialOperation.java index a92adcb..1f3d005 100644 --- a/src/com/connor/lidy/create/PictureMaterialOperation.java +++ b/src/com/connor/lidy/create/PictureMaterialOperation.java @@ -12,7 +12,7 @@ import com.teamcenter.rac.kernel.TCSession; import com.teamcenter.rac.kernel.TCUserService; import com.teamcenter.rac.util.MessageBox; -public class PictureMaterialOperation extends AbstractAIFOperation{ +public class PictureMaterialOperation{ private Map tableMap; private int row; private TCComponentItemRevision target; @@ -20,6 +20,7 @@ public class PictureMaterialOperation extends AbstractAIFOperation{ private String exec; private String search; private TCSession session; + public String res; public PictureMaterialOperation(Map tableMap,int row,TCComponentItemRevision target,AbstractAIFDialog dialog,String search,String exec,TCSession session) { this.tableMap=tableMap; this.row=row; @@ -29,11 +30,10 @@ public class PictureMaterialOperation extends AbstractAIFOperation{ this.search = search; this.session = session; } - @Override public void executeOperation() throws Exception { switch (exec) { case "导出": - export(); + res = export(); break; case "查询": @@ -45,7 +45,7 @@ public class PictureMaterialOperation extends AbstractAIFOperation{ break; } } - private void export() throws TCException { + private String export() throws TCException { TCComponent comp = tableMap.get(row); AIFComponentContext[] children = target.getChildren("ML8_ProjectRelation"); if(children.length>0) { @@ -57,16 +57,26 @@ public class PictureMaterialOperation extends AbstractAIFOperation{ TCUserService userservice = session.getUserService(); Object[] obj = new Object[1]; obj[0] = target; - Object res = userservice.call("updateFormChangeDesc", obj); - - + String res = ""; + try { + res= (String)userservice.call("updateFormChangeDesc", obj); + } catch (Exception e) { + // TODO: handle exception + } + // AIFComponentContext[] forms = comp.getChildren("ML8_ProjectRelation"); // System.out.println("forms:"+forms.length); // if(forms.length>0) { // for(AIFComponentContext c : forms) // target.add("ML8_ProjectRelation", (TCComponent)c.getComponent()); // } - MessageBox.post(dialog, "修改完成", "INFO", MessageBox.INFORMATION); - dialog.dispose(); + if(res != null && !res.isEmpty()) { + res = "描述拼接报错:"+res; + }else { + res = "修改完成"; + } + + return res; + } }