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 58fefe3..d4a4b6c 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 @@ -64,9 +64,9 @@ public class WLTZReviseAction extends AbstractAIFAction { return; } TCComponentItem item = rev.getItem(); - session.getUserService().call("bs_bypass", new Object[] { true }); +// session.getUserService().call("bs_bypass", new Object[] { true }); TCComponentItemRevision newRev = rev.saveAs(item.getNewRev()); - session.getUserService().call("bs_bypass", new Object[] { false }); +// session.getUserService().call("bs_bypass", new Object[] { false }); 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 d3b50f3..feedbef 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 @@ -7,6 +7,7 @@ import java.io.File; import java.util.Arrays; import java.util.HashMap; import java.util.LinkedHashMap; +import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -240,6 +241,13 @@ public class EditClassificationDialog extends AbstractAIFDialog { private boolean saveClassification(TCComponentItemRevision rev) { try { + boolean isAccess = session.getTCAccessControlService().checkPrivilege(rev, "WRITE"); + List released = Arrays.asList(rev.getItem().getReleasedItemRevisions()); + if (!isAccess || !released.contains(rev)) { + MessageBox.post("当前用户没有修改权限或者当前对象未发布", "提示", MessageBox.WARNING); + return false; + } + TCComponentICO[] icoS = rev.getClassificationObjects(); String classID = rev.getClassificationClass(); if (icoS == null || icoS.length == 0) { @@ -324,12 +332,12 @@ public class EditClassificationDialog extends AbstractAIFDialog { } String temp = builder.toString().substring(0, builder.toString().length() - 1); System.out.println("class porp values=====>" + temp); - session.getUserService().call("bs_bypass", new Object[] { true }); +// session.getUserService().call("bs_bypass", new Object[] { true }); rev.lock(); rev.setProperty("jd2_flfh", temp); rev.save(); rev.unlock(); - session.getUserService().call("bs_bypass", new Object[] { false }); +// session.getUserService().call("bs_bypass", new Object[] { false }); break; } }