|
|
|
@ -43,6 +43,7 @@ import com.teamcenter.rac.aif.AbstractAIFApplication;
|
|
|
|
|
import com.teamcenter.rac.aifrcp.AIFUtility;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponent;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentDataset;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentFolder;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentItem;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentItemType;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCException;
|
|
|
|
@ -206,7 +207,7 @@ public class CreateEcnController extends KFXPanelController {
|
|
|
|
|
showAlertBox("请先指派变更单ID", "提示", AlertType.INFORMATION);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
//TODO lidy20240520检查“影响分析”中的责任人列是否都为空值。如果是则不允许创建
|
|
|
|
|
// lidy20240520检查“影响分析”中的责任人列是否都为空值。如果是则不允许创建
|
|
|
|
|
boolean check = true;
|
|
|
|
|
ObservableList<RefTableBean> refs = refTable.getItems();
|
|
|
|
|
for (int i = 0; i < refs.size(); i++) {
|
|
|
|
@ -307,6 +308,50 @@ public class CreateEcnController extends KFXPanelController {
|
|
|
|
|
MessageBox.post("创建完成", "", MessageBox.INFORMATION);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else if (target instanceof TCComponentFolder) {
|
|
|
|
|
//TODO 选择文件夹直接创建,功能逻辑和选择项目的保持一致,只是取自项目的相关属性,更改为手工填写,其余完全一致
|
|
|
|
|
TCComponentItemType itemType = (TCComponentItemType) session.getTypeComponent("ZT2_Change");
|
|
|
|
|
TCComponentItem item = itemType.create(ecnId.getText(), null, "ZT2_Change", changeName, "", null);
|
|
|
|
|
// 设置属性
|
|
|
|
|
boolean flag = true;
|
|
|
|
|
try {
|
|
|
|
|
setItemProperty(item, changeName);
|
|
|
|
|
} catch (Exception e1) {
|
|
|
|
|
e1.printStackTrace();
|
|
|
|
|
flag = false;
|
|
|
|
|
if (e1.getMessage().contains("无法设置属性 更改前")) {
|
|
|
|
|
MessageBox.post(
|
|
|
|
|
"更改单生成异常:" + e1.getMessage() + "\n"
|
|
|
|
|
+ " 【更改前】【更改后】字符总数不能超过256个字符\n (一个中文字=2个字符,1个标点或者英文=1个字符)",
|
|
|
|
|
"保存异常", MessageBox.INFORMATION);
|
|
|
|
|
} else if (e1.getMessage().contains("无法设置属性 更改后")) {
|
|
|
|
|
MessageBox.post(
|
|
|
|
|
"更改单生成异常:" + e1.getMessage() + "\n"
|
|
|
|
|
+ " 【更改前】【更改后】字符总数不能超过256个字符 \n (一个中文字=2个字符,1个标点或者英文=1个字符)",
|
|
|
|
|
"保存异常", MessageBox.INFORMATION);
|
|
|
|
|
} else {
|
|
|
|
|
MessageBox.post("更改单生成异常:" + e1.getMessage(), "保存异常", MessageBox.INFORMATION);
|
|
|
|
|
}
|
|
|
|
|
item.delete();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
if (flag) {
|
|
|
|
|
target.add("contents", new TCComponent[] { item });
|
|
|
|
|
// 新建数据集挂到对象规范关系下,导出相关属性
|
|
|
|
|
// 获取模板的puid
|
|
|
|
|
String type = item.getProperty("zt2_Template");
|
|
|
|
|
TCComponentDataset dataset = null;
|
|
|
|
|
dataset = getDataset(type, 1);
|
|
|
|
|
// item.setProperty("zt2_WBSNo", "");
|
|
|
|
|
|
|
|
|
|
File file = Util.getExcel(dataset);
|
|
|
|
|
createOrReplace(dataset, file, changeName);
|
|
|
|
|
|
|
|
|
|
item.setRelated("IMAN_reference", new TCComponent[] { dataset });
|
|
|
|
|
// item.unlock();
|
|
|
|
|
MessageBox.post("创建完成", "", MessageBox.INFORMATION);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 影响分析信息 保存到CHINT_ECN_NOTIFICATION中
|
|
|
|
@ -660,7 +705,7 @@ public class CreateEcnController extends KFXPanelController {
|
|
|
|
|
pages = dlivery + 1;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
System.out.println("页数pages:" + pages);//TODO
|
|
|
|
|
System.out.println("页数pages:" + pages);//
|
|
|
|
|
for (int i = 0; i < rowCount; i++) {
|
|
|
|
|
EcnBean ecnBean = items.get(i);
|
|
|
|
|
changeDrawingNo[i] = ecnBean.getDrawNo().getText();
|
|
|
|
@ -736,10 +781,15 @@ public class CreateEcnController extends KFXPanelController {
|
|
|
|
|
* @function 初始化页面组件
|
|
|
|
|
*/
|
|
|
|
|
private void initText() throws Exception {
|
|
|
|
|
factoryText.setEditable(false);
|
|
|
|
|
//TODO 选择文件夹直接创建,取自项目的相关属性,更改为手工填写
|
|
|
|
|
if(target instanceof TCComponentFolder) {
|
|
|
|
|
pmCombox.setEditable(true);
|
|
|
|
|
}else {
|
|
|
|
|
List<String> productModelList = new ArrayList<>();
|
|
|
|
|
productModelList = Util.getproductModel(target, productModelList);
|
|
|
|
|
factoryText.setEditable(false);
|
|
|
|
|
pmCombox.getItems().addAll(productModelList);
|
|
|
|
|
}
|
|
|
|
|
List<String> unitList = new ArrayList<>();
|
|
|
|
|
contractText.setText(Util.getProjectNo(target));
|
|
|
|
|
contractText.setEditable(false);
|
|
|
|
@ -747,7 +797,9 @@ public class CreateEcnController extends KFXPanelController {
|
|
|
|
|
htNameText.setEditable(false);
|
|
|
|
|
ecnId.setEditable(false);
|
|
|
|
|
rb_product.setSelected(true);
|
|
|
|
|
if (target.getType().equals("ZT2_ProjectItem")) {
|
|
|
|
|
if(target instanceof TCComponentFolder) {
|
|
|
|
|
prodNameComb.setEditable(true);
|
|
|
|
|
}else if (target.getType().equals("ZT2_ProjectItem")) {
|
|
|
|
|
// 获取产成品的名称
|
|
|
|
|
List<String> ccpNameFromProject = KUtil.getCCPNameFromProject(target, session);
|
|
|
|
|
prodNameComb.getItems().addAll(ccpNameFromProject);
|
|
|
|
|