创建编辑更改通知单输入字段超出限制报错逻辑调整 #31

Merged
lidy merged 1 commits from ldy into main 6 months ago

@ -18,7 +18,14 @@ import com.teamcenter.rac.aif.AbstractAIFDialog;
import com.teamcenter.rac.util.MessageBox;
import javafx.scene.control.TableView;
/**
* : UUID
* :2024-09-06
* @author
*
*
* 2024-09-06
*/
public class ChooseUuidDialog extends AbstractAIFDialog {
/**
*

@ -235,8 +235,26 @@ public class CreateEcnController extends KFXPanelController {
}
if (target.getType().equals("ZT2_Change")) {
TCComponentItem item = (TCComponentItem) target;
try {
setItemProperty(item, changeName);
} catch (Exception e1) {
e1.printStackTrace();
String err = Util.getStackTrace(e1);
err = err.substring(0, err.indexOf("\n\tat")).replace("输入字符串过长", "输入的内容过长,请缩减内容");
if (err.contains("无法设置属性 更改前")) {
showAlertBox("更改单生成异常:" + err + "\n"
+ " 【更改前】【更改后】字符总数不能超过256个字符\n (一个中文字=2个字符1个标点或者英文=1个字符)",
"保存异常", AlertType.INFORMATION);
} else if (err.contains("无法设置属性 更改后")) {
showAlertBox("更改单生成异常:" + err + "\n"
+ " 【更改前】【更改后】字符总数不能超过256个字符 \n (一个中文字=2个字符1个标点或者英文=1个字符)",
"保存异常", AlertType.INFORMATION);
} else {
showAlertBox("更改单生成异常:" + err, "保存异常", AlertType.INFORMATION);
}
// item.delete();
return;
}
String type = item.getProperty("zt2_Template");
TCComponentDataset dataset = null;
File file = null;
@ -273,21 +291,21 @@ public class CreateEcnController extends KFXPanelController {
} catch (Exception e1) {
e1.printStackTrace();
flag = false;
if (e1.getMessage().contains("无法设置属性 更改前")) {
MessageBox.post(
"更改单生成异常:" + e1.getMessage() + "\n"
String err = Util.getStackTrace(e1);
err = err.substring(0, err.indexOf("\n\tat")).replace("输入字符串过长", "输入的内容过长,请缩减内容");
if (err.contains("无法设置属性 更改前")) {
showAlertBox("更改单生成异常:" + err + "\n"
+ " 【更改前】【更改后】字符总数不能超过256个字符\n (一个中文字=2个字符1个标点或者英文=1个字符)",
"保存异常", MessageBox.INFORMATION);
} else if (e1.getMessage().contains("无法设置属性 更改后")) {
MessageBox.post(
"更改单生成异常:" + e1.getMessage() + "\n"
"保存异常", AlertType.INFORMATION);
} else if (err.contains("无法设置属性 更改后")) {
showAlertBox("更改单生成异常:" + err + "\n"
+ " 【更改前】【更改后】字符总数不能超过256个字符 \n (一个中文字=2个字符1个标点或者英文=1个字符)",
"保存异常", MessageBox.INFORMATION);
"保存异常", AlertType.INFORMATION);
} else {
MessageBox.post("更改单生成异常:" + e1.getMessage(), "保存异常", MessageBox.INFORMATION);
showAlertBox("更改单生成异常:" + err, "保存异常", AlertType.INFORMATION);
}
item.delete();
return;
}
if (flag) {
TCComponent targetFolder = getTargetFolder(target);
@ -319,21 +337,23 @@ public class CreateEcnController extends KFXPanelController {
} catch (Exception e1) {
e1.printStackTrace();
flag = false;
if (e1.getMessage().contains("无法设置属性 更改前")) {
MessageBox.post(
"更改单生成异常:" + e1.getMessage() + "\n"
String err = Util.getStackTrace(e1);
// System.out.println("err" + err);
err = err.substring(0, err.indexOf("\n\tat")).replace("输入字符串过长", "输入的内容过长,请缩减内容");
// System.out.println("err" + err);
if (err.contains("无法设置属性 更改前")) {
showAlertBox("更改单生成异常:" + err + "\n"
+ " 【更改前】【更改后】字符总数不能超过256个字符\n (一个中文字=2个字符1个标点或者英文=1个字符)",
"保存异常", MessageBox.INFORMATION);
} else if (e1.getMessage().contains("无法设置属性 更改后")) {
MessageBox.post(
"更改单生成异常:" + e1.getMessage() + "\n"
"保存异常", AlertType.INFORMATION);
} else if (err.contains("无法设置属性 更改后")) {
showAlertBox("更改单生成异常:" + err + "\n"
+ " 【更改前】【更改后】字符总数不能超过256个字符 \n (一个中文字=2个字符1个标点或者英文=1个字符)",
"保存异常", MessageBox.INFORMATION);
"保存异常", AlertType.INFORMATION);
} else {
MessageBox.post("更改单生成异常:" + e1.getMessage(), "保存异常", MessageBox.INFORMATION);
showAlertBox("更改单生成异常:" + err, "保存异常", AlertType.INFORMATION);
}
item.delete();
return;
}
if (flag) {
target.add("contents", new TCComponent[] { item });
@ -1588,10 +1608,13 @@ public class CreateEcnController extends KFXPanelController {
* @param type
*/
private void showAlertBox(String msg, String title, AlertType type) {
System.out.println("Alert" + msg);
Alert alert = new Alert(type);
alert.setTitle(title);
if(msg.contains("\n"))
alert.setContentText(msg);
else
alert.setHeaderText(msg);
//alert.setContentText("导入完成");
alert.showAndWait();
}
}

@ -0,0 +1,103 @@
package com.chint.plm.createEcn;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import com.teamcenter.rac.aif.AbstractAIFDialog;
import javafx.scene.control.TableView;
/**
* :
* :2024-12-02
* @author
*
*
* 2024-12-02
*/
public class EditTextDialog extends AbstractAIFDialog {
/**
*
*/
private static final long serialVersionUID = 1L;
private JTextArea textArea;
private JButton okBtn;
private JButton cancelBtn;
private TableView<EcnBean> refTable;
private List<EcnBean> refTableBeans;
private int row;
private boolean before;
public EditTextDialog(CreateEcnFrame parent, TableView<EcnBean> refTable, int row, List<EcnBean> refTableBeans,
boolean before, boolean edit) {
super(parent, true);
this.refTable = refTable;
this.refTableBeans = refTableBeans;
this.row = row;
this.before = before;
initUI(edit);
}
private void initUI(boolean edit) {
textArea = new JTextArea();
textArea.setWrapStyleWord(true);
textArea.setEditable(edit);
JPanel panel = new JPanel(new FlowLayout());
okBtn = new JButton("确定");
cancelBtn = new JButton("取消");
panel.add(okBtn);
panel.add(cancelBtn);
okBtn.setEnabled(edit);
addActionListener();
this.setLayout(new BorderLayout());
this.add(BorderLayout.CENTER, new JScrollPane(textArea));
this.add(BorderLayout.SOUTH, panel);
this.setPreferredSize(new Dimension(1400, 400));
Dimension screen = getToolkit().getScreenSize();
setLocation((screen.width - getSize().width) / 2, (screen.height - getSize().height) / 2);
setAlwaysOnTop(true);
this.setAlwaysOnTop(true);
}
public void run(){
showDialog();
}
private void addActionListener() {
//final Shell dialog = shell;
okBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
if(before) {
refTableBeans.get(EditTextDialog.this.row).getOverChange().setText(textArea.getText());
}else {
refTableBeans.get(EditTextDialog.this.row).getAfterChange().setText(textArea.getText());
}
refTable.refresh();
dispose();
}
});
cancelBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
dispose();
}
});
}
}

@ -490,4 +490,17 @@ public class Util {
* FileOutputStream(file.getAbsolutePath()); workBook.write(fos); fos.flush();
* fos.close(); fis.close(); }
*/
/**
*
*
* @param e
* @return
*/
public static String getStackTrace(Exception e) {
StringBuilder rError = new StringBuilder("" + e.toString());
for(StackTraceElement ste : e.getStackTrace()) {
rError.append("\n\tat " + ste.toString());
}
return rError.toString();
}
}

Loading…
Cancel
Save