diff --git a/com.connor.jd.plm/.classpath b/com.connor.jd.plm/.classpath
index 783f32c..789ccac 100644
--- a/com.connor.jd.plm/.classpath
+++ b/com.connor.jd.plm/.classpath
@@ -12,7 +12,7 @@
-
+
diff --git a/com.connor.jd.plm/plugin.xml b/com.connor.jd.plm/plugin.xml
index f738416..5248087 100644
--- a/com.connor.jd.plm/plugin.xml
+++ b/com.connor.jd.plm/plugin.xml
@@ -202,7 +202,7 @@
-
+
@@ -696,7 +696,7 @@
true
diff --git a/com.connor.jd.plm/src/com/connor/jd/plm/action/DeleteItemRevisionAction.java b/com.connor.jd.plm/src/com/connor/jd/plm/action/DeleteItemRevisionAction.java
index 6c9a791..b9cd288 100644
--- a/com.connor.jd.plm/src/com/connor/jd/plm/action/DeleteItemRevisionAction.java
+++ b/com.connor.jd.plm/src/com/connor/jd/plm/action/DeleteItemRevisionAction.java
@@ -11,7 +11,6 @@ import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent;
import com.teamcenter.rac.kernel.TCComponent;
import com.teamcenter.rac.kernel.TCComponentItem;
import com.teamcenter.rac.kernel.TCComponentItemRevision;
-import com.teamcenter.rac.kernel.TCException;
import com.teamcenter.rac.kernel.TCProperty;
import com.teamcenter.rac.kernel.TCSession;
import com.teamcenter.rac.util.MessageBox;
@@ -30,56 +29,98 @@ public class DeleteItemRevisionAction extends AbstractAIFAction {
// TODO Auto-generated method stub
TCSession session = (TCSession) app.getSession();
InterfaceAIFComponent[] targets = app.getTargetComponents();
- String[] allow = JDMethodUtil.getPrefStrArray("jd2_wltz_Revise_allow", session);
- System.out.println(Arrays.toString(allow));
+ String[] allow = JDMethodUtil.getPrefStrArray("connor_wl_type", session);
+ String[] allow2 = JDMethodUtil.getPrefStrArray("connor_tz_type", session);
+ String[] allow3 = JDMethodUtil.getPrefStrArray("jd2_wltz_Revise_allow", session);
+ System.out.println("connor_wl_type===>" + Arrays.toString(allow));
+ System.out.println("connor_tz_type===>" + Arrays.toString(allow2));
+ System.out.println("jd2_wltz_Revise_allow===>" + Arrays.toString(allow3));
List pref = Arrays.asList(allow);
+ List pref2 = Arrays.asList(allow2);
+ List pref3 = Arrays.asList(allow3);
for (InterfaceAIFComponent target : targets) {
System.out.println(target.getType());
- if (target instanceof TCComponentItemRevision && pref.contains(target.getType())) {
+ if (target instanceof TCComponentItemRevision) {
+ if (!pref.contains(target.getType()) && !pref2.contains(target.getType())
+ && !pref3.contains(target.getType())) {
+ try {
+ MessageBox.post(target.getProperty("object_string") + "ȲҲͼִֽɾ", "ʾ",
+ MessageBox.WARNING);
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return;
+ }
TCComponentItemRevision rev = (TCComponentItemRevision) target;
try {
String loginUser = session.getUser().getProperty("object_string");
- String owningUser = rev.getProperty("owning_user");
- System.out.println("loginUser===>" + loginUser);
- System.out.println("owningUser===>" + owningUser);
- if (loginUser.equals(owningUser)) {
+// String owningUser = rev.getProperty("owning_user");
+// System.out.println("loginUser===>" + loginUser);
+// System.out.println("owningUser===>" + owningUser);
+ boolean[] isAccess = session.getTCAccessControlService().checkPrivileges(rev.getItem(),
+ new String[] { "WRITE", "DELETE" });
+ if (isAccess[0] && isAccess[1]) {
TCComponentItem item = rev.getItem();
TCComponent[] released = item.getReleasedItemRevisions();
for (TCComponent comp : released) {
if (comp.getUid().equals(rev.getUid())) {
- MessageBox.post("ɾѾ", "ʾ", MessageBox.WARNING);
+ MessageBox.post(target.getProperty("object_string") + "ɾѾ", "ʾ",
+ MessageBox.WARNING);
return;
}
}
- if (!loginUser.equals(item.getProperty("owning_user"))) {
- session.getUserService().call("bs_bypass", new Object[] { true });
- AIFComponentContext[] aifs = rev.whereReferenced();
- for (AIFComponentContext aif : aifs) {
- if (aif.getComponent() instanceof TCComponentItemRevision) {
- TCComponentItemRevision temp = (TCComponentItemRevision) aif.getComponent();
- TCProperty[] tcProps = temp.getAllTCProperties();
- for (TCProperty tcProp : tcProps) {
- TCComponent[] comps = tcProp.getReferenceValueArray();
- for (TCComponent comp : comps) {
- if (comp.getUid().equals(rev.getUid())) {
+ session.getUserService().call("bs_bypass", new Object[] { true });
+ System.out.println("rev uid===>" + rev.getUid());
+ AIFComponentContext[] aifs = rev.whereReferenced();
+ for (AIFComponentContext aif : aifs) {
+ if (aif.getComponent() instanceof TCComponent) {
+ TCComponent temp = (TCComponent) aif.getComponent();
+ if (temp.getUid().equals(rev.getItem().getUid())) {
+ System.out.println("");
+ continue;
+ }
+ System.out.println("===>" + temp.getProperty("onject_string"));
+ TCProperty[] tcProps = temp.getAllTCProperties();
+ for (TCProperty tcProp : tcProps) {
+ if (tcProp.isReferenceType()) {
+ if (tcProp.isNotArray()) {
+ if (tcProp.getReferenceValue() != null
+ && tcProp.getReferenceValue().getUid().equals(rev.getUid())) {
+ System.out.println("ϵ===>" + tcProp.getPropertyName());
temp.cutOperation(tcProp.getPropertyName(), new TCComponent[] { rev });
}
+ } else {
+ TCComponent[] comps = tcProp.getReferenceValueArray();
+ for (TCComponent comp : comps) {
+ if (comp.getUid().equals(rev.getUid())) {
+ System.out.println("ϵ===>" + tcProp.getPropertyName());
+ temp.cutOperation(tcProp.getPropertyName(),
+ new TCComponent[] { rev });
+ }
+ }
}
}
- } else {
- rev.delete();
}
}
- session.getUserService().call("bs_bypass", new Object[] { false });
}
+// if (pref.contains(target.getType())) {
+// rev.cutOperation("TC_Is_Represented_By", rev.getRelatedComponents("TC_Is_Represented_By"));
+// } else {
+// rev.cutOperation("representation_for", rev.getRelatedComponents("representation_for"));
+// }
+ rev.delete();
+ session.getUserService().call("bs_bypass", new Object[] { false });
+ MessageBox.post("ɾɹ", "ʾ", MessageBox.WARNING);
+ } else {
+ MessageBox.post(target.getProperty("object_string") + "ĺɾȨ", "ʾ", MessageBox.WARNING);
}
- } catch (TCException e) {
+ } catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
-
}
}
diff --git a/com.connor.jd.plm/src/com/connor/jd/plm/action/WLTZReviseAction.java b/com.connor.jd.plm/src/com/connor/jd/plm/action/WLTZReviseAction.java
index 0860d9d..1efd661 100644
--- a/com.connor.jd.plm/src/com/connor/jd/plm/action/WLTZReviseAction.java
+++ b/com.connor.jd.plm/src/com/connor/jd/plm/action/WLTZReviseAction.java
@@ -123,22 +123,35 @@ public class WLTZReviseAction extends AbstractAIFAction {
// break;
// }
// }
- boolean isAccess = session.getTCAccessControlService().checkPrivilege(rev.getItem(), "WRITE");
- if (!isAccess) {
- MessageBox.post("Ȩ", "ʾ", MessageBox.WARNING);
+// boolean isAccess = session.getTCAccessControlService().checkPrivilege(rev.getItem(), "WRITE");
+// if (!isAccess) {
+// MessageBox.post("Ȩ", "ʾ", MessageBox.WARNING);
+// return;
+// }
+ String loginUser = session.getUser().getProperty("object_string");
+ String owningUser = rev.getProperty("owning_user");
+ System.out.println("loginUser===>" + loginUser);
+ System.out.println("owningUser===>" + owningUser);
+ TCComponentItemRevision newRev = null;
+ if (!loginUser.equals(owningUser)) {
+ System.out.println("̣");
+ MessageBox.post("̣", "ʾ", MessageBox.WARNING);
return;
- }
- TCComponentItemRevision newRev = rev.saveAs(rev.getItem().getNewRev());
- if (target instanceof TCComponentBOMLine) {
- TCComponentBOMLine bomLine = (TCComponentBOMLine) target;
- if (bomLine.parent() != null) {
- bomLine.window().refresh();
- } else {
- System.out.println("topLine");
- Activator.getDefault().openPerspective("com.teamcenter.rac.pse.PSEPerspective");
- Activator.getDefault().openComponents("com.teamcenter.rac.pse.PSEPerspective",
- new InterfaceAIFComponent[] { newRev });
+ } else {
+ session.getUserService().call("bs_bypass", new Object[] { true });
+ newRev = rev.saveAs(rev.getItem().getNewRev());
+ if (target instanceof TCComponentBOMLine) {
+ TCComponentBOMLine bomLine = (TCComponentBOMLine) target;
+ if (bomLine.parent() != null) {
+ bomLine.window().refresh();
+ } else {
+ System.out.println("topLine");
+ Activator.getDefault().openPerspective("com.teamcenter.rac.pse.PSEPerspective");
+ Activator.getDefault().openComponents("com.teamcenter.rac.pse.PSEPerspective",
+ new InterfaceAIFComponent[] { newRev });
+ }
}
+ session.getUserService().call("bs_bypass", new Object[] { false });
}
if (rev.getClassificationClass() == null || "".equals(rev.getClassificationClass())) {
MessageBox.post("ɹ", "ʾ", MessageBox.WARNING);
@@ -159,6 +172,10 @@ public class WLTZReviseAction extends AbstractAIFAction {
System.out.println("success");
return;
}
+ if (newRev == null) {
+ MessageBox.post("δ֪쳣", "", MessageBox.ERROR);
+ return;
+ }
TCComponentICO ico = rev.getClassificationObjects()[0];
ICSProperty[] oldICSProps = ico.getICSProperties(true);
int[] ids = new int[oldICSProps.length];
diff --git a/com.connor.jd.plm/src/com/connor/jd/plm/dialog/EditClassificationDialog.java b/com.connor.jd.plm/src/com/connor/jd/plm/dialog/EditClassificationDialog.java
index d489efa..f58eb97 100644
--- a/com.connor.jd.plm/src/com/connor/jd/plm/dialog/EditClassificationDialog.java
+++ b/com.connor.jd.plm/src/com/connor/jd/plm/dialog/EditClassificationDialog.java
@@ -22,6 +22,7 @@ import javax.swing.JTextField;
import com.connor.jd.plm.beans.ClassPropBean;
import com.connor.jd.plm.utils.ExcelInfoScanner;
import com.connor.jd.plm.utils.JDMethodUtil;
+import com.connor.jd.plm.utils.StringCreateUtil;
import com.teamcenter.rac.aif.AbstractAIFApplication;
import com.teamcenter.rac.aif.AbstractAIFDialog;
import com.teamcenter.rac.aifrcp.AIFUtility;
@@ -40,11 +41,11 @@ import com.teamcenter.rac.util.MessageBox;
import cn.hutool.json.JSONObject;
+/**
+ * ķ
+ */
public class EditClassificationDialog extends AbstractAIFDialog {
- /**
- *
- */
private static final long serialVersionUID = 1L;
private AbstractAIFApplication app;
private TCSession session;
@@ -56,6 +57,7 @@ public class EditClassificationDialog extends AbstractAIFDialog {
private int[] ids;
private String[] values;
private String[] names;
+ private boolean finished;
public EditClassificationDialog(AbstractAIFApplication app) throws TCException {
this.app = app;
@@ -209,8 +211,25 @@ public class EditClassificationDialog extends AbstractAIFDialog {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
+ ((JButton) e.getSource()).setEnabled(false);
rev = (TCComponentItemRevision) target;
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ // TODO Auto-generated method stub
+ int i = 1;
+ while (!DIALOG.finished) {
+ try {
+ DIALOG.setTitle("ķ " + StringCreateUtil.createPoint(i++ % 3));
+ Thread.sleep(200);
+ } catch (InterruptedException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ }
+ }).start();
saveClassification(rev);
// try {
// System.out.println(rev.getProperty("object_string"));
@@ -229,7 +248,6 @@ public class EditClassificationDialog extends AbstractAIFDialog {
// // TODO Auto-generated catch block
// e1.printStackTrace();
// }
- DIALOG.disposeDialog();
}
};
}
@@ -349,6 +367,7 @@ public class EditClassificationDialog extends AbstractAIFDialog {
rev.setProperty("jd2_flfh", temp);
rev.save();
rev.unlock();
+ rev.refresh();
// session.getUserService().call("bs_bypass", new Object[] { false });
break;
}
@@ -360,6 +379,8 @@ public class EditClassificationDialog extends AbstractAIFDialog {
JOptionPane.WARNING_MESSAGE);
return;
}
+ DIALOG.finished = true;
+ DIALOG.disposeDialog();
JOptionPane.showMessageDialog(null, "ķɹ", "ʾ", JOptionPane.WARNING_MESSAGE);
System.out.println("success");
}
diff --git a/com.connor.jd.plm/src/com/connor/jd/plm/form/CSJHForm.java b/com.connor.jd.plm/src/com/connor/jd/plm/form/CSJHForm.java
index 7e14b18..50ff1a9 100644
--- a/com.connor.jd.plm/src/com/connor/jd/plm/form/CSJHForm.java
+++ b/com.connor.jd.plm/src/com/connor/jd/plm/form/CSJHForm.java
@@ -74,7 +74,7 @@ public class CSJHForm extends AbstractRendering {
private JLabel label3;
private List editable = new ArrayList();
private Map res;
- private Map rowNo;
+ private Map rowNo;// ʵ
private JTable table;
private boolean againAllow;
@@ -724,9 +724,11 @@ public class CSJHForm extends AbstractRendering {
temp[15] = (String) model.getValueAt(table.getSelectedRow(), 15);
model.insertRow(table.getSelectedRow() + 1, temp);
for (int i = table.getSelectedRow() + 1; i < model.getRowCount(); i++) {
-
model.setValueAt(String.valueOf(num++), i, 0);
}
+ for (int i = model.getRowCount(); i > table.getSelectedRow(); i--) {
+ rowNo.put(i, rowNo.get(i - 1));
+ }
Double allcost2 = 0.0;
for (int i = 0; i < model.getRowCount(); i++) {
String value = (String) model.getValueAt(i, 7);
@@ -746,8 +748,6 @@ public class CSJHForm extends AbstractRendering {
res.get(entry.getKey()).setRow(entry.getValue().getRow() + 1);
}
}
- rowNo.put(table.getSelectedRow() + 1, rowNo.get(table.getSelectedRow()));
-
});
table.addMouseListener(new MouseAdapter() {
diff --git a/com.connor.jd.plm/src/com/connor/jd/plm/form/ComponentTestFrame.java b/com.connor.jd.plm/src/com/connor/jd/plm/form/ComponentTestFrame.java
index 3bfe4e9..0693bd4 100644
--- a/com.connor.jd.plm/src/com/connor/jd/plm/form/ComponentTestFrame.java
+++ b/com.connor.jd.plm/src/com/connor/jd/plm/form/ComponentTestFrame.java
@@ -10,7 +10,11 @@ import java.awt.ScrollPane;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
import javax.swing.BorderFactory;
import javax.swing.JButton;
@@ -28,6 +32,7 @@ import com.connor.jd.plm.table.MyCellEditor4;
import com.connor.jd.plm.table.TCTableUtil;
import com.connor.jd.plm.utils.DBUtil;
import com.teamcenter.rac.aifrcp.AIFUtility;
+import com.teamcenter.rac.kernel.TCComponent;
import com.teamcenter.rac.kernel.TCComponentForm;
import com.teamcenter.rac.kernel.TCComponentItem;
import com.teamcenter.rac.kernel.TCComponentItemRevision;
@@ -36,35 +41,27 @@ import com.teamcenter.rac.kernel.TCException;
import com.teamcenter.rac.kernel.TCSession;
import com.teamcenter.rac.util.MessageBox;
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.util.StrUtil;
import cn.hutool.db.Db;
import cn.hutool.db.Entity;
public class ComponentTestFrame extends JFrame {
private CTMap model;
private CTable table;
- private List list;
private int bottom;
private Container container;
private TCComponentForm form;
private TCSession session;
private MyCallBack callBack;
+ private String itemId;
+ private String[] colNames = new String[] { "jd2_no", "jd2_wtry", "jd2_syxm", "jd2_syzq", "jd2_syts", "jd2_syfy",
+ "jd2_sycs" };
+ private TCComponentForm testForm;
- private static ComponentTestFrame instance;
-
- public static ComponentTestFrame getInstance(TCComponentForm form, MyCallBack callBack) {
- if (instance == null) {
- instance = new ComponentTestFrame(form);
- instance.callBack = callBack;
- } else {
- instance.bottom = 0;
- instance.form = form;
- instance.callBack = callBack;
- instance.init();
- }
- return instance;
- }
-
- private ComponentTestFrame(TCComponentForm form) {
+ public ComponentTestFrame(Object itemId, TCComponentForm form, MyCallBack callBack) {
+ this.itemId = StrUtil.toString(itemId);
+ this.callBack = callBack;
this.form = form;
this.session = (TCSession) AIFUtility.getCurrentApplication().getSession();
this.init();
@@ -82,7 +79,7 @@ public class ComponentTestFrame extends JFrame {
container.setPreferredSize(new Dimension(600, 400));
model = new CTMap(10, 7);
- model.setValueAt("", 0, 0);
+ model.setValueAt("", 0, 0);
model.setValueAt("Ʒ", 0, 1);
model.setValueAt("Ŀ", 0, 2);
model.setValueAt("ʱ", 0, 3);
@@ -142,23 +139,18 @@ public class ComponentTestFrame extends JFrame {
table.getColumnModel().getColumn(6).setCellEditor(new MyCellEditor4(new JTextField()));
// д
+ Map dataMap = new LinkedHashMap<>();
try {
- list = Db.use(DBUtil.getDataSource(session)).findAll("JD2_COMPONENT");
- bottom = list.size();
- for (int i = 0; i < bottom; i++) {
- if (i > model.getRowCount() - 2) {
- model.addRow();
- }
- int row = i + 1;
- model.setValueAt(row, row, 0);
- model.setValueAt(list.get(i).getStr("TEST_TYPE"), row, 1);
- model.setValueAt(list.get(i).getStr("TEST_PROJECT"), row, 2);
- model.setValueAt(list.get(i).getStr("TEST_TIME"), row, 3);
- model.setValueAt(list.get(i).getInt("TEST_NUM"), row, 4);
- model.setValueAt(list.get(i).getInt("TEST_COST"), row, 5);
- model.setValueAt(new JCheckBox(), row, 6);
-
- System.out.println(list.get(i).toString());
+ List list = Db.use(DBUtil.getDataSource(session)).findAll("JD2_COMPONENT");
+ for (int i = 0; i < list.size(); i++) {
+ String[] rowData = new String[6];
+ rowData[0] = list.get(i).getStr("TEST_ID");
+ rowData[1] = list.get(i).getStr("TEST_TYPE");
+ rowData[2] = list.get(i).getStr("TEST_PROJECT");
+ rowData[3] = list.get(i).getStr("TEST_TIME");
+ rowData[4] = list.get(i).getInt("TEST_NUM") + "";
+ rowData[5] = list.get(i).getInt("TEST_COST") == null ? "0" : list.get(i).getInt("TEST_COST") + "";
+ dataMap.put(rowData[0], rowData);
}
} catch (Exception e) {
// TODO Auto-generated catch block
@@ -166,10 +158,57 @@ public class ComponentTestFrame extends JFrame {
e.printStackTrace();
return;
}
+ List checkedId = new ArrayList<>();
+ if (StrUtil.isNotBlank(itemId)) {
+ try {
+ TCComponent[] res = session.search("Item ID", new String[] { " ID" }, new String[] { itemId });
+ if (ArrayUtil.isNotEmpty(res) && "JD2_GTCSJH".equals(res[0].getType())) {
+ TCComponentItemRevision resRev = ((TCComponentItem) res[0]).getLatestItemRevision();
+ TCComponent[] forms = resRev.getRelatedComponents("IMAN_master_form_rev");
+ testForm = (TCComponentForm) forms[0];
+ String[][] rowDatas = TCTableUtil.getTableRows(testForm, "jd2_csjh", colNames);
+ for (int i = 0; i < rowDatas.length; i++) {
+ checkedId.add(rowDatas[i][0]);
+ String[] rowData = new String[6];
+ rowData[0] = rowDatas[i][0];
+ rowData[1] = "Զ";
+ rowData[2] = rowDatas[i][2];
+ rowData[3] = rowDatas[i][3];
+ rowData[4] = rowDatas[i][4];
+ rowData[5] = rowDatas[i][5];
+ dataMap.put(rowDatas[i][0], rowData);
+ }
+ }
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ bottom = dataMap.size();
+ int row = 1;
+ for (Entry entry : dataMap.entrySet()) {
+ if (row > model.getRowCount() - 1) {
+ model.addRow();
+ }
+ model.setValueAt(entry.getValue()[0], row, 0);
+ model.setValueAt(entry.getValue()[1], row, 1);
+ model.setValueAt(entry.getValue()[2], row, 2);
+ model.setValueAt(entry.getValue()[3], row, 3);
+ model.setValueAt(entry.getValue()[4], row, 4);
+ model.setValueAt(entry.getValue()[5], row, 5);
+ if (checkedId.contains(entry.getValue()[0])) {
+ JCheckBox tempCheck = new JCheckBox();
+ tempCheck.setSelected(true);
+ model.setValueAt(tempCheck, row, 6);
+ } else {
+ model.setValueAt(new JCheckBox(), row, 6);
+ }
+ row++;
+ }
// ť
JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT));
- JButton createTest = new JButton("Լƻ");
+ JButton createTest = new JButton("/²Լƻ");
createTest.addActionListener(createTest());
JButton addTestItem = new JButton("");
addTestItem.addActionListener(addTestItem());
@@ -195,31 +234,77 @@ public class ComponentTestFrame extends JFrame {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
try {
- TCComponentItemRevision rev = (TCComponentItemRevision) form.whereReferenced()[0].getComponent();
+ if (testForm != null) {//
+ String[] propNames = new String[] { "jd2_no", "jd2_syxh", "jd2_symd", "jd2_wtry", "jd2_syxm",
+ "jd2_syts", "jd2_syzq", "jd2_syfy", "jd2_jhrc", "jd2_jhrc1", "jd2_sjrc", "jd2_sjrc1",
+ "jd2_syzt", "jd2_syjg", "jd2_sycs", "jd2_syry", "jd2_csbg", "jd2_bz" };
+ List