package com.vci.client.portal.UI;
|
|
import java.awt.BorderLayout;
|
import java.awt.FlowLayout;
|
import java.awt.GridBagConstraints;
|
import java.awt.GridBagLayout;
|
import java.awt.Insets;
|
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionListener;
|
import java.awt.event.MouseAdapter;
|
import java.awt.event.MouseEvent;
|
import java.util.ArrayList;
|
import java.util.Arrays;
|
import java.util.Comparator;
|
import java.util.HashMap;
|
import java.util.Iterator;
|
import java.util.Map;
|
import java.util.Set;
|
import java.util.regex.Matcher;
|
import java.util.regex.Pattern;
|
|
import javax.swing.JButton;
|
import javax.swing.JComboBox;
|
import javax.swing.JDialog;
|
import javax.swing.JLabel;
|
import javax.swing.JPanel;
|
import javax.swing.JScrollPane;
|
import javax.swing.JTable;
|
import javax.swing.JTextArea;
|
import javax.swing.JTextField;
|
import javax.swing.border.EmptyBorder;
|
|
import com.vci.client.LogonApplication;
|
import com.vci.client.common.PinyinCommon;
|
import com.vci.client.portal.utility.UITools;
|
import com.vci.client.ui.swing.VCIOptionPane;
|
import com.vci.client.ui.table.TableCheckboxManager;
|
import com.vci.client.ui.table.VCIBaseTableModel;
|
import com.vci.client.ui.table.VCIBaseTableNode;
|
import com.vci.common.utility.ObjectUtility;
|
import com.vci.corba.common.VCIError;
|
import com.vci.corba.portal.data.PLAction;
|
import com.vci.corba.portal.data.PLCommandParameter;
|
import com.vci.corba.portal.data.PLPageDefination;
|
import com.vci.corba.portal.data.PLUILayout;
|
import com.vci.corba.portal.data.PLTabButton;
|
|
public class ButtonDialog extends JDialog {
|
|
private final JPanel contentPanel = new JPanel();
|
|
private JButton addButton;
|
private JButton editButton;
|
private JLabel label;
|
private JTextField pllabel;
|
private JLabel label_2;
|
private JTextField plseq;
|
private JLabel label_3;
|
private JScrollPane scrollPane;
|
private JTable parTable;
|
private VCIBaseTableModel parTableModel;
|
private JButton addParBtn;
|
private JButton delParBtn;
|
private JLabel label_4;
|
private JScrollPane scrollPane_1;
|
private JTable btnTable;
|
private VCIBaseTableModel btnTableModel;
|
private JButton delBtn;
|
private JLabel lblAction;
|
private JComboBox plactionoid;
|
private JLabel label_5;
|
private JScrollPane scrollPane_2;
|
private JTextArea pldesc;
|
private Map<String,String> actionMap = new HashMap<String,String>();
|
String[] columnHeaders = new String[] { "编号", "名称"};
|
Class types[] = new Class[] { String.class, String.class};
|
|
String[] parcolumnHeaders = new String[] { "参数", "值"};
|
Class partypes[] = new Class[] { String.class, String.class};
|
TableCheckboxManager tcm ;
|
// private PLTabPage pltabpage;
|
private PLUILayout plpagelayoutdefination;
|
private JButton closeBtn;
|
private JLabel label_1;
|
private JTextField plkey;
|
private JLabel label_6;
|
private JTextField plvalue;
|
private JButton editPatBtn;
|
private String buttonArea;
|
private PLPageDefination plPageDefination;
|
public ButtonDialog(PLPageDefination plPageDefination,PLUILayout plpagelayoutdefination,String buttonArea) {
|
super(LogonApplication.frame,true);
|
setTitle("按钮设计窗口");
|
this.plPageDefination = plPageDefination;
|
this.plpagelayoutdefination = plpagelayoutdefination;
|
this.buttonArea = buttonArea;
|
init();
|
plactionoList();
|
actionListener();
|
initParData("");
|
initData();
|
this.setLocationRelativeTo(null);
|
this.setVisible(true);
|
}
|
private void init() {
|
setBounds(100, 100, 637, 573);
|
getContentPane().setLayout(new BorderLayout());
|
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
|
getContentPane().add(contentPanel, BorderLayout.CENTER);
|
GridBagLayout gbl_contentPanel = new GridBagLayout();
|
gbl_contentPanel.columnWidths = new int[]{0, 0, 0, 0, 0, 0, 129, 0};
|
gbl_contentPanel.rowHeights = new int[]{0, 0, 0, 0, 0, 0, 0, 0, 0};
|
gbl_contentPanel.columnWeights = new double[]{0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, Double.MIN_VALUE};
|
gbl_contentPanel.rowWeights = new double[]{0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 1.0, Double.MIN_VALUE};
|
contentPanel.setLayout(gbl_contentPanel);
|
{
|
label = new JLabel("名称");
|
GridBagConstraints gbc_label = new GridBagConstraints();
|
gbc_label.insets = new Insets(0, 0, 5, 5);
|
gbc_label.gridx = 1;
|
gbc_label.gridy = 0;
|
contentPanel.add(label, gbc_label);
|
}
|
{
|
pllabel = new JTextField();
|
GridBagConstraints gbc_textField = new GridBagConstraints();
|
gbc_textField.gridwidth = 2;
|
gbc_textField.insets = new Insets(0, 0, 5, 5);
|
gbc_textField.fill = GridBagConstraints.HORIZONTAL;
|
gbc_textField.gridx = 2;
|
gbc_textField.gridy = 0;
|
contentPanel.add(pllabel, gbc_textField);
|
pllabel.setColumns(10);
|
}
|
{
|
label_2 = new JLabel("编号");
|
GridBagConstraints gbc_label_2 = new GridBagConstraints();
|
gbc_label_2.anchor = GridBagConstraints.EAST;
|
gbc_label_2.insets = new Insets(0, 0, 5, 5);
|
gbc_label_2.gridx = 5;
|
gbc_label_2.gridy = 0;
|
contentPanel.add(label_2, gbc_label_2);
|
}
|
{
|
plseq = new JTextField();
|
GridBagConstraints gbc_textField_2 = new GridBagConstraints();
|
gbc_textField_2.insets = new Insets(0, 0, 5, 0);
|
gbc_textField_2.fill = GridBagConstraints.HORIZONTAL;
|
gbc_textField_2.gridx = 6;
|
gbc_textField_2.gridy = 0;
|
contentPanel.add(plseq, gbc_textField_2);
|
plseq.setColumns(10);
|
}
|
{
|
lblAction = new JLabel("Action");
|
GridBagConstraints gbc_lblAction = new GridBagConstraints();
|
gbc_lblAction.insets = new Insets(0, 0, 5, 5);
|
gbc_lblAction.gridx = 1;
|
gbc_lblAction.gridy = 1;
|
contentPanel.add(lblAction, gbc_lblAction);
|
}
|
{
|
plactionoid = new JComboBox();
|
GridBagConstraints gbc_comboBox = new GridBagConstraints();
|
gbc_comboBox.gridwidth = 5;
|
gbc_comboBox.insets = new Insets(0, 0, 5, 0);
|
gbc_comboBox.fill = GridBagConstraints.HORIZONTAL;
|
gbc_comboBox.gridx = 2;
|
gbc_comboBox.gridy = 1;
|
contentPanel.add(plactionoid, gbc_comboBox);
|
}
|
{
|
label_5 = new JLabel("描述");
|
GridBagConstraints gbc_label_5 = new GridBagConstraints();
|
gbc_label_5.insets = new Insets(0, 0, 5, 5);
|
gbc_label_5.gridx = 1;
|
gbc_label_5.gridy = 2;
|
contentPanel.add(label_5, gbc_label_5);
|
}
|
{
|
scrollPane_2 = new JScrollPane();
|
GridBagConstraints gbc_scrollPane_2 = new GridBagConstraints();
|
gbc_scrollPane_2.gridwidth = 5;
|
gbc_scrollPane_2.insets = new Insets(0, 0, 5, 0);
|
gbc_scrollPane_2.fill = GridBagConstraints.BOTH;
|
gbc_scrollPane_2.gridx = 2;
|
gbc_scrollPane_2.gridy = 2;
|
contentPanel.add(scrollPane_2, gbc_scrollPane_2);
|
{
|
pldesc = new JTextArea();
|
scrollPane_2.setViewportView(pldesc);
|
}
|
}
|
{
|
label_4 = new JLabel("按钮列表");
|
GridBagConstraints gbc_label_4 = new GridBagConstraints();
|
gbc_label_4.insets = new Insets(0, 0, 5, 5);
|
gbc_label_4.gridx = 1;
|
gbc_label_4.gridy = 3;
|
contentPanel.add(label_4, gbc_label_4);
|
}
|
{
|
addButton = new JButton("增加");
|
GridBagConstraints gbc_addButton = new GridBagConstraints();
|
gbc_addButton.insets = new Insets(0, 0, 5, 5);
|
gbc_addButton.gridx = 3;
|
gbc_addButton.gridy = 3;
|
contentPanel.add(addButton, gbc_addButton);
|
}
|
{
|
editButton = new JButton("修改");
|
GridBagConstraints gbc_editButton = new GridBagConstraints();
|
gbc_editButton.insets = new Insets(0, 0, 5, 5);
|
gbc_editButton.gridx = 4;
|
gbc_editButton.gridy = 3;
|
contentPanel.add(editButton, gbc_editButton);
|
}
|
{
|
delBtn = new JButton("删除");
|
GridBagConstraints gbc_delBtn = new GridBagConstraints();
|
gbc_delBtn.insets = new Insets(0, 0, 5, 5);
|
gbc_delBtn.gridx = 5;
|
gbc_delBtn.gridy = 3;
|
contentPanel.add(delBtn, gbc_delBtn);
|
}
|
{
|
scrollPane = new JScrollPane();
|
GridBagConstraints gbc_scrollPane = new GridBagConstraints();
|
gbc_scrollPane.gridwidth = 6;
|
gbc_scrollPane.insets = new Insets(0, 0, 5, 0);
|
gbc_scrollPane.fill = GridBagConstraints.BOTH;
|
gbc_scrollPane.gridx = 1;
|
gbc_scrollPane.gridy = 4;
|
contentPanel.add(scrollPane, gbc_scrollPane);
|
{
|
btnTable = new JTable();
|
btnTableModel = new VCIBaseTableModel(columnHeaders, types);
|
btnTable.setModel(btnTableModel);
|
scrollPane.setViewportView(btnTable);
|
}
|
}
|
{
|
label_3 = new JLabel("参数列表");
|
GridBagConstraints gbc_label_3 = new GridBagConstraints();
|
gbc_label_3.insets = new Insets(0, 0, 5, 5);
|
gbc_label_3.gridx = 1;
|
gbc_label_3.gridy = 5;
|
contentPanel.add(label_3, gbc_label_3);
|
}
|
{
|
label_1 = new JLabel("参数名称");
|
GridBagConstraints gbc_label_1 = new GridBagConstraints();
|
gbc_label_1.insets = new Insets(0, 0, 5, 5);
|
gbc_label_1.gridx = 2;
|
gbc_label_1.gridy = 5;
|
contentPanel.add(label_1, gbc_label_1);
|
}
|
{
|
plkey = new JTextField();
|
GridBagConstraints gbc_textField = new GridBagConstraints();
|
gbc_textField.insets = new Insets(0, 0, 5, 5);
|
gbc_textField.fill = GridBagConstraints.HORIZONTAL;
|
gbc_textField.gridx = 3;
|
gbc_textField.gridy = 5;
|
gbc_textField.weightx = 5.0;
|
contentPanel.add(plkey, gbc_textField);
|
plkey.setColumns(10);
|
}
|
{
|
label_6 = new JLabel("值");
|
GridBagConstraints gbc_label_6 = new GridBagConstraints();
|
gbc_label_6.insets = new Insets(0, 0, 5, 5);
|
gbc_label_6.gridx = 4;
|
gbc_label_6.gridy = 5;
|
contentPanel.add(label_6, gbc_label_6);
|
}
|
{
|
plvalue = new JTextField();
|
GridBagConstraints gbc_textField_1 = new GridBagConstraints();
|
gbc_textField_1.insets = new Insets(0, 0, 5, 5);
|
gbc_textField_1.fill = GridBagConstraints.HORIZONTAL;
|
gbc_textField_1.gridx = 5;
|
gbc_textField_1.gridy = 5;
|
gbc_textField_1.gridwidth = 2;
|
gbc_textField_1.weightx = 10.0;
|
contentPanel.add(plvalue, gbc_textField_1);
|
plvalue.setColumns(10);
|
}
|
{
|
addParBtn = new JButton("增加");
|
GridBagConstraints gbc_addParBtn = new GridBagConstraints();
|
gbc_addParBtn.insets = new Insets(0, 0, 5, 5);
|
gbc_addParBtn.gridx = 3;
|
gbc_addParBtn.gridy = 6;
|
contentPanel.add(addParBtn, gbc_addParBtn);
|
}
|
{
|
editPatBtn = new JButton("修改");
|
GridBagConstraints gbc_editPatBtn = new GridBagConstraints();
|
gbc_editPatBtn.insets = new Insets(0, 0, 5, 5);
|
gbc_editPatBtn.gridx = 4;
|
gbc_editPatBtn.gridy = 6;
|
contentPanel.add(editPatBtn, gbc_editPatBtn);
|
}
|
{
|
delParBtn = new JButton("删除");
|
GridBagConstraints gbc_delParBtn = new GridBagConstraints();
|
gbc_delParBtn.insets = new Insets(0, 0, 5, 5);
|
gbc_delParBtn.gridx = 5;
|
gbc_delParBtn.gridy = 6;
|
contentPanel.add(delParBtn, gbc_delParBtn);
|
}
|
scrollPane_1 = new JScrollPane();
|
GridBagConstraints gbc_scrollPane_1 = new GridBagConstraints();
|
gbc_scrollPane_1.insets = new Insets(0, 0, 0, 5);
|
gbc_scrollPane_1.gridwidth = 6;
|
gbc_scrollPane_1.fill = GridBagConstraints.BOTH;
|
gbc_scrollPane_1.gridx = 1;
|
gbc_scrollPane_1.gridy = 7;
|
contentPanel.add(scrollPane_1, gbc_scrollPane_1);
|
parTableModel = new VCIBaseTableModel(parcolumnHeaders, partypes);
|
parTable = new JTable();
|
parTable.setModel(parTableModel);
|
scrollPane_1.setViewportView(parTable);
|
{
|
JPanel buttonPane = new JPanel();
|
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
|
getContentPane().add(buttonPane, BorderLayout.SOUTH);
|
{
|
closeBtn = new JButton("关闭");
|
buttonPane.add(closeBtn);
|
}
|
}
|
}
|
|
private void actionListener(){
|
addParBtn.addActionListener(new ActionListener() {
|
public void actionPerformed(ActionEvent arg0) {
|
btnTableModel= (VCIBaseTableModel) btnTable.getModel();
|
int selectedRowCount = btnTable.getSelectedRowCount();
|
if(selectedRowCount==0){
|
VCIOptionPane.showMessage(LogonApplication.frame, "请先创建按钮!");
|
return;
|
}
|
VCIBaseTableNode valueAt = btnTableModel.getValueAt(btnTable.getSelectedRow());
|
PLTabButton obj = (PLTabButton) valueAt.getObj();
|
PLCommandParameter plCommandParameter = new PLCommandParameter();
|
plCommandParameter.plOId = ObjectUtility.getNewObjectID36();
|
plCommandParameter.plCommandOId = obj.plOId;
|
plCommandParameter.plKey = plkey.getText();
|
plCommandParameter.plValue = plvalue.getText();
|
plCommandParameter.plCreateUser = LogonApplication.getUserEntityObject().getUserName();
|
plCommandParameter.plModifyUser = LogonApplication.getUserEntityObject().getUserName();
|
try {
|
boolean flag = UITools.getService().savePLCommandParameter(plCommandParameter);
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
initParData(obj.plOId);
|
}
|
});
|
editPatBtn.addActionListener(new ActionListener() {
|
public void actionPerformed(ActionEvent arg0) {
|
int selectedRow = parTable.getSelectedRow();
|
int selectedRowCount = parTable.getSelectedRowCount();
|
if(selectedRowCount==0){
|
VCIOptionPane.showMessage(LogonApplication.frame, "请选择数据!");
|
return ;
|
}
|
VCIBaseTableNode valueAt = parTableModel.getValueAt(selectedRow);
|
PLCommandParameter plcommandparameter = (PLCommandParameter) valueAt.getObj();
|
PLCommandParameter plCommandParameter = new PLCommandParameter();
|
plCommandParameter.plOId = plcommandparameter.plOId;
|
plCommandParameter.plCommandOId = plcommandparameter.plCommandOId;
|
plCommandParameter.plKey = plkey.getText();
|
plCommandParameter.plValue = plvalue.getText();
|
plCommandParameter.plCreateUser = plcommandparameter.plCreateUser;
|
plCommandParameter.plModifyUser = LogonApplication.getUserEntityObject().getUserName();
|
try {
|
boolean flag = UITools.getService().updatePLCommandParameter(plCommandParameter);
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
initParData(plcommandparameter.plCommandOId);
|
}
|
});
|
delParBtn.addActionListener(new ActionListener() {
|
public void actionPerformed(ActionEvent arg0) {
|
int selectedRow = parTable.getSelectedRow();
|
int[] selectedRowCount = parTable.getSelectedRows();
|
if(selectedRowCount.length==0){
|
VCIOptionPane.showMessage(LogonApplication.frame, "请选择数据!");
|
return ;
|
}
|
VCIBaseTableNode valueAt = parTableModel.getValueAt(selectedRow);
|
PLCommandParameter plcommandparameter = (PLCommandParameter) valueAt.getObj();
|
try {
|
boolean flag = UITools.getService().deletePLCommandParameter(plcommandparameter);
|
// VCIOptionPane.showMessage(LogonApplication.frame, "删除成功");
|
} catch (VCIError e) {
|
e.printStackTrace();
|
// VCIOptionPane.showMessage(LogonApplication.frame, "删除失败");
|
}
|
VCIBaseTableNode btnTabNode = btnTableModel.getValueAt(btnTable.getSelectedRow());
|
PLTabButton obj = (PLTabButton) btnTabNode.getObj();
|
initParData(obj.plOId);
|
}
|
});
|
parTable.addMouseListener(new MouseAdapter() {
|
@Override
|
public void mouseClicked(MouseEvent arg0) {
|
int selectedRow = parTable.getSelectedRow();
|
VCIBaseTableNode valueAt = parTableModel.getValueAt(selectedRow);
|
PLCommandParameter plcommandparameter = (PLCommandParameter) valueAt.getObj();
|
plkey.setText(plcommandparameter.plKey);
|
plvalue.setText(String.valueOf(plcommandparameter.plValue));
|
}
|
});
|
btnTable.addMouseListener(new MouseAdapter() {
|
@Override
|
public void mouseClicked(MouseEvent arg0) {
|
int selectedRow = btnTable.getSelectedRow();
|
VCIBaseTableNode valueAt = btnTableModel.getValueAt(selectedRow);
|
PLTabButton pltabbutton = (PLTabButton) valueAt.getObj();
|
pllabel.setText(pltabbutton.plLabel);
|
plseq.setText(String.valueOf(pltabbutton.plSeq));
|
plactionoid.setSelectedItem(actionMap.get(pltabbutton.plActionOId));
|
pldesc.setText(pltabbutton.plDesc);
|
initParData(pltabbutton.plOId);
|
}
|
});
|
addButton.addActionListener(new ActionListener() {
|
|
@Override
|
public void actionPerformed(ActionEvent arg0) {
|
if(checkEdit("")){
|
return;
|
}
|
PLTabButton plTabButton = new PLTabButton();
|
plTabButton.plOId = ObjectUtility.getNewObjectID36();
|
String pageId = "";
|
if(plPageDefination!=null){
|
pageId = plPageDefination.plOId;
|
}else{
|
pageId = plpagelayoutdefination.plOId;
|
}
|
plTabButton.plTableOId = pageId;
|
plTabButton.plActionOId = getPlactionValue();
|
plTabButton.plLabel = pllabel.getText().trim();
|
plTabButton.plDesc = pldesc.getText();
|
plTabButton.plSeq = Short.valueOf(plseq.getText());
|
plTabButton.plCreateUser = LogonApplication.getUserEntityObject().getUserName();
|
plTabButton.plModifyUser = LogonApplication.getUserEntityObject().getUserName();
|
plTabButton.plAreaType = buttonArea;
|
try {
|
boolean flag = UITools.getService().savePLTabButton(plTabButton);
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
initData();
|
}
|
});
|
editButton.addActionListener(new ActionListener() {
|
|
@Override
|
public void actionPerformed(ActionEvent arg0) {
|
|
int selectedRow = btnTable.getSelectedRow();
|
int selectedRowCount = btnTable.getSelectedRowCount();
|
if(selectedRowCount==0){
|
VCIOptionPane.showMessage(LogonApplication.frame, "请选择数据!");
|
return ;
|
}
|
VCIBaseTableNode valueAt = btnTableModel.getValueAt(selectedRow);
|
PLTabButton pltabbutton = (PLTabButton) valueAt.getObj();
|
PLTabButton plTabButton = new PLTabButton();
|
String plOId = pltabbutton.plOId;
|
if(checkEdit(plOId)){
|
return;
|
}
|
plTabButton.plOId = plOId;
|
String pageId = "";
|
if(plPageDefination!=null){
|
pageId = plPageDefination.plOId;
|
}else{
|
pageId = plpagelayoutdefination.plOId;
|
}
|
plTabButton.plTableOId = pageId;
|
plTabButton.plActionOId = getPlactionValue();
|
plTabButton.plLabel = pllabel.getText().trim();
|
plTabButton.plDesc = pldesc.getText();
|
plTabButton.plSeq = Short.valueOf(plseq.getText());
|
plTabButton.plCreateUser = pltabbutton.plCreateUser;
|
plTabButton.plModifyUser = LogonApplication.getUserEntityObject().getUserName();
|
|
try {
|
boolean flag = UITools.getService().updatePLTabButton(plTabButton);
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
initData();
|
}
|
});
|
delBtn.addActionListener(new ActionListener() {
|
|
@Override
|
public void actionPerformed(ActionEvent arg0) {
|
int selectedRow = btnTable.getSelectedRow();
|
int[] selectedRowCount = btnTable.getSelectedRows();
|
if(selectedRowCount.length==0){
|
VCIOptionPane.showMessage(LogonApplication.frame, "请选择数据!");
|
return ;
|
}
|
try {
|
for(int i=0;i<selectedRowCount.length;i++){
|
VCIBaseTableNode valueAt = btnTableModel.getValueAt(selectedRowCount[i]);
|
PLTabButton plbutton = (PLTabButton) valueAt.getObj();
|
PLCommandParameter[] o = UITools.getService().getPLCommandParametersByCommandOId(plbutton.plTableOId);
|
o = getSortedPLCommandParameter(o);
|
for(int j =0;j<o.length;j++){
|
UITools.getService().deletePLCommandParameter(o[j]);
|
}
|
UITools.getService().deletePLTabButton(plbutton);
|
}
|
VCIOptionPane.showMessage(LogonApplication.frame, "删除成功");
|
} catch (VCIError e) {
|
e.printStackTrace();
|
VCIOptionPane.showMessage(LogonApplication.frame, "删除失败");
|
}
|
initParData("");
|
initData();
|
}
|
});
|
closeBtn.addActionListener(new ActionListener() {
|
public void actionPerformed(ActionEvent arg0) {
|
dispose();
|
}
|
});
|
}
|
private String getPlactionValue(){
|
String selectedItem = (String) plactionoid.getSelectedItem();
|
Set<String> keySet = actionMap.keySet();
|
Iterator<String> iterator = keySet.iterator();
|
String value = "";
|
while(iterator.hasNext()){
|
value = iterator.next();
|
if(selectedItem.equals(actionMap.get(value))){
|
break;
|
}
|
}
|
return value;
|
}
|
private void plactionoList(){
|
try {
|
PLAction[] obj = UITools.getService().getAllPLAction();
|
obj = getSortedPLAction(obj);
|
for(int i=0;i<obj.length;i++){
|
actionMap.put(obj[i].plOId, obj[i].plName);
|
plactionoid.addItem(obj[i].plName);
|
}
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
}
|
private void initData(){
|
btnTableModel.list.clear();
|
btnTableModel= (VCIBaseTableModel) btnTable.getModel();
|
VCIBaseTableNode vciBaseTableNode = null;
|
PLTabButton[] o;
|
String pageId = "";
|
if(plPageDefination!=null){
|
pageId = plPageDefination.plOId;
|
}else{
|
pageId = plpagelayoutdefination.plOId;
|
}
|
try {
|
o = UITools.getService().getPLTabButtonsByTableOId(pageId);
|
o = getSortedPLTabButton(o);
|
for(int i =0;i<o.length;i++){
|
PLTabButton plTabButton = o[i];
|
if(buttonArea.equals(plTabButton.plAreaType)){
|
vciBaseTableNode = new VCIBaseTableNode(plTabButton);
|
vciBaseTableNode.setPropertyValueByName(btnTable.getColumnName(0), plTabButton.plSeq);
|
vciBaseTableNode.setPropertyValueByName(btnTable.getColumnName(1), plTabButton.plLabel);
|
btnTableModel.addRow(i, vciBaseTableNode);
|
}
|
else if(plTabButton.plAreaType==null||"".equals(plTabButton.plAreaType)){
|
vciBaseTableNode = new VCIBaseTableNode(plTabButton);
|
vciBaseTableNode.setPropertyValueByName(btnTable.getColumnName(0), plTabButton.plSeq);
|
vciBaseTableNode.setPropertyValueByName(btnTable.getColumnName(1), plTabButton.plLabel);
|
btnTableModel.addRow(i, vciBaseTableNode);
|
}
|
}
|
btnTable.setModel(btnTableModel);
|
btnTable.updateUI();
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
}
|
private void initParData(String plcommandId){
|
parTableModel.list.clear();
|
parTableModel= (VCIBaseTableModel) parTable.getModel();
|
VCIBaseTableNode vciBaseTableNode = null;
|
PLCommandParameter[] o;
|
// String pageId = "";
|
// if(pltabpage!=null){
|
// pageId = pltabpage.plOId;
|
// }else{
|
// pageId = plpagelayoutdefination.plOId;
|
// }
|
try {
|
o = UITools.getService().getPLCommandParametersByCommandOId(plcommandId);
|
o = getSortedPLCommandParameter(o);
|
for(int i =0;i<o.length;i++){
|
vciBaseTableNode = new VCIBaseTableNode(o[i]);
|
vciBaseTableNode.setPropertyValueByName(parTable.getColumnName(0), o[i].plKey);
|
vciBaseTableNode.setPropertyValueByName(parTable.getColumnName(1), o[i].plValue);
|
parTableModel.addRow(i, vciBaseTableNode);
|
}
|
parTable.setModel(parTableModel);
|
parTable.updateUI();
|
} catch (VCIError e) {
|
e.printStackTrace();
|
}
|
}
|
private boolean isNumber(String str) {
|
Pattern pa = Pattern.compile("[0-9]*");
|
Matcher mt = pa.matcher(str);
|
if(mt.matches()==false){
|
return false;
|
}else{
|
return true;
|
}
|
}
|
/**
|
* 验证输入信息
|
* @param plOId
|
* @return
|
*/
|
private boolean checkEdit(String plOId) {
|
boolean flag = false;
|
if(plseq.getText().trim()==null||"".equals(plseq.getText().trim())){
|
VCIOptionPane.showMessage(LogonApplication.frame, "编号不能为空!");
|
flag =true;
|
}
|
else if(!isNumber(plseq.getText().trim())){
|
VCIOptionPane.showMessage(LogonApplication.frame, "请填写数字!");
|
flag =true;
|
}
|
ArrayList<VCIBaseTableNode> list = btnTableModel.list;
|
for(int i=0;i<list.size();i++){
|
VCIBaseTableNode vciBaseTableNode = list.get(i);
|
PLTabButton obj = (PLTabButton) vciBaseTableNode.getObj();
|
if(plOId!=null&&!"".equals(plOId)){
|
if(!plOId.equals(obj.plOId)){
|
if(obj.plLabel.equals(pllabel.getText())){
|
VCIOptionPane.showMessage(LogonApplication.frame, "名称已经存在!");
|
flag =true;
|
}
|
else if(obj.plSeq==Integer.parseInt(plseq.getText())){
|
VCIOptionPane.showMessage(LogonApplication.frame, "编号已经存在!");
|
flag =true;
|
}
|
}
|
}else{
|
if(obj.plLabel.equals(pllabel.getText())){
|
VCIOptionPane.showMessage(LogonApplication.frame, "名称已经存在!");
|
flag =true;
|
}
|
else if(obj.plSeq==Integer.parseInt(plseq.getText())){
|
VCIOptionPane.showMessage(LogonApplication.frame, "编号已经存在!");
|
flag =true;
|
}
|
}
|
}
|
return flag;
|
}
|
private PLAction[] getSortedPLAction(PLAction[] actions){
|
Arrays.sort(actions, PLAction_Comparator);
|
return actions;
|
}
|
private Comparator<PLAction> PLAction_Comparator = new Comparator<PLAction>() {
|
@Override
|
public int compare(PLAction o1, PLAction o2) {
|
return PinyinCommon.getPingYin(o1.plName).compareTo(PinyinCommon.getPingYin(o2.plName));
|
}
|
};
|
|
|
private PLTabButton[] getSortedPLTabButton(PLTabButton[] btns){
|
Arrays.sort(btns, PLTabButton_Comparator);
|
return btns;
|
}
|
private Comparator<PLTabButton> PLTabButton_Comparator = new Comparator<PLTabButton>() {
|
@Override
|
public int compare(PLTabButton o1, PLTabButton o2) {
|
return PinyinCommon.getPingYin(o1.plLabel).compareTo(PinyinCommon.getPingYin(o2.plLabel));
|
}
|
};
|
|
private PLCommandParameter[] getSortedPLCommandParameter(PLCommandParameter[] cps){
|
Arrays.sort(cps, PLCommandParameter_Comparator);
|
return cps;
|
}
|
private Comparator<PLCommandParameter> PLCommandParameter_Comparator = new Comparator<PLCommandParameter>() {
|
@Override
|
public int compare(PLCommandParameter o1, PLCommandParameter o2) {
|
return PinyinCommon.getPingYin(o1.plKey).compareTo(PinyinCommon.getPingYin(o2.plKey));
|
}
|
};
|
}
|