///**
// * @author tyl
// * @Action  ini
// * 2011-4-4
// */
//package cn.com.origin.autocode.newitem.generatcode;
//
//import java.awt.Dimension;
//import java.awt.Toolkit;
//import java.awt.datatransfer.StringSelection;
//import java.io.IOException;
//import java.text.SimpleDateFormat;
//import java.util.ArrayList;
//import java.util.Arrays;
//import java.util.Date;
//import java.util.HashMap;
//import java.util.Hashtable;
//import java.util.List;
//import java.util.Map;
//import java.util.Vector;
//
//import javax.swing.JDialog;
//import javax.xml.bind.JAXBException;
//
//import org.eclipse.jface.dialogs.Dialog;
//import org.eclipse.jface.dialogs.IDialogConstants;
//import org.eclipse.jface.viewers.TreeViewer;
//import org.eclipse.swt.SWT;
//import org.eclipse.swt.custom.CTabFolder;
//import org.eclipse.swt.custom.CTabItem;
//import org.eclipse.swt.custom.SashForm;
//import org.eclipse.swt.custom.ScrolledComposite;
//import org.eclipse.swt.custom.TableEditor;
//import org.eclipse.swt.events.ControlAdapter;
//import org.eclipse.swt.events.ControlEvent;
//import org.eclipse.swt.events.DisposeEvent;
//import org.eclipse.swt.events.DisposeListener;
//import org.eclipse.swt.events.FocusEvent;
//import org.eclipse.swt.events.FocusListener;
//import org.eclipse.swt.events.ModifyEvent;
//import org.eclipse.swt.events.ModifyListener;
//import org.eclipse.swt.events.SelectionAdapter;
//import org.eclipse.swt.events.SelectionEvent;
//import org.eclipse.swt.events.VerifyEvent;
//import org.eclipse.swt.events.VerifyListener;
//import org.eclipse.swt.graphics.Point;
//import org.eclipse.swt.layout.FillLayout;
//import org.eclipse.swt.layout.GridData;
//import org.eclipse.swt.layout.GridLayout;
//import org.eclipse.swt.widgets.Button;
//import org.eclipse.swt.widgets.Combo;
//import org.eclipse.swt.widgets.Composite;
//import org.eclipse.swt.widgets.Control;
//import org.eclipse.swt.widgets.DateTime;
//import org.eclipse.swt.widgets.Label;
//import org.eclipse.swt.widgets.Shell;
//import org.eclipse.swt.widgets.Table;
//import org.eclipse.swt.widgets.TableColumn;
//import org.eclipse.swt.widgets.TableItem;
//import org.eclipse.swt.widgets.Text;
//import org.eclipse.swt.widgets.Widget;
//
//import cn.com.origin.autocode.jfom.util.ClassProperty;
//import cn.com.origin.autocode.jfom.util.JFomBZJBean;
//import cn.com.origin.autocode.jfom.util.JFomBean;
//import cn.com.origin.autocode.jfom.util.JFomLovBean;
//import cn.com.origin.autocode.jfom.util.JFomMethodUtil;
//import cn.com.origin.autocode.jfom.util.JFomUtil;
//import cn.com.origin.autocode.jfom.util.SoaServerUtil;
//import cn.com.origin.autocode.newitem.origin.ORAfterNewItemCustomization;
//import cn.com.origin.autocode.newitem.origin.ORCreateICOObject;
//import cn.com.origin.autocode.newitem.origin.ORSaveObjectDescOperation;
//import cn.com.origin.autocode.newitem.system.ORItemInfoPanel;
//import cn.com.origin.autocode.newitem.system.ORNewItemDialog;
//import cn.com.origin.autocode.saveas.ORSaveItemAsDialog;
//import cn.com.origin.autocode.views.itemtypeview.NewItemClassificationView;
//import cn.com.origin.autocode.xmlutil.CNCompontent;
//import cn.com.origin.autocode.xmlutil.CNPart;
//import cn.com.origin.autocode.xmlutil.CNPartList;
//import cn.com.origin.autocode.xmlutil.CNProperty;
//import cn.com.origin.autocode.xmlutil.CNXmlUtil;
//import cn.com.origin.autocodemanager.common.AutoCodeManagerPropertyName;
//import cn.com.origin.autocodemanager.common.CreateCompositeUtil;
//import cn.com.origin.autocodemanager.common.PackCodeDescInfos;
//import cn.com.origin.autocodemanager.common.TCLOVUtil;
//import cn.com.origin.autocodemanager.common.TCPreferenceUitl;
//import cn.com.origin.autocodemanager.common.TCQueryUtil;
//import cn.com.origin.autocodemanager.common.operations.GetCodeNumber;
//import cn.com.origin.autocodemanager.common.operations.PackCodeNodeInfo;
//import cn.com.origin.autocodemanager.common.operations.TreeAndListCodeOperation;
//import cn.com.origin.autocodemanager.common.tree.AbstractTreeData;
//import cn.com.origin.autocodemanager.common.tree.TreeViewOperation;
//import cn.com.origin.autocodemanager.views.listcodeview.NewItemListCodeView;
//import cn.com.origin.autocodemanager.views.treecodeview.NewItemTreeCodeView;
//
//import com.teamcenter.rac.aif.AIFClipboard;
//import com.teamcenter.rac.aif.AIFPortal;
//import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent;
//import com.teamcenter.rac.aifrcp.AIFUtility;
//import com.teamcenter.rac.kernel.ListOfValuesInfo;
//import com.teamcenter.rac.kernel.SoaUtil;
//import com.teamcenter.rac.kernel.TCAccessControlService;
//import com.teamcenter.rac.kernel.TCClassificationService;
//import com.teamcenter.rac.kernel.TCComponent;
//import com.teamcenter.rac.kernel.TCComponentFolder;
//import com.teamcenter.rac.kernel.TCComponentForm;
//import com.teamcenter.rac.kernel.TCComponentFormType;
//import com.teamcenter.rac.kernel.TCComponentGroup;
//import com.teamcenter.rac.kernel.TCComponentICO;
//import com.teamcenter.rac.kernel.TCComponentItem;
//import com.teamcenter.rac.kernel.TCComponentItemRevision;
//import com.teamcenter.rac.kernel.TCComponentItemRevisionType;
//import com.teamcenter.rac.kernel.TCComponentItemType;
//import com.teamcenter.rac.kernel.TCComponentListOfValues;
//import com.teamcenter.rac.kernel.TCComponentListOfValuesType;
//import com.teamcenter.rac.kernel.TCComponentPseudoFolder;
//import com.teamcenter.rac.kernel.TCComponentRole;
//import com.teamcenter.rac.kernel.TCComponentUser;
//import com.teamcenter.rac.kernel.TCException;
//import com.teamcenter.rac.kernel.TCExceptionPartial;
//import com.teamcenter.rac.kernel.TCPreferenceService;
//import com.teamcenter.rac.kernel.TCProperty;
//import com.teamcenter.rac.kernel.TCSession;
//import com.teamcenter.rac.kernel.ics.ICSAdminClass;
//import com.teamcenter.rac.kernel.ics.ICSAdminClassAttribute;
//import com.teamcenter.rac.kernel.ics.ICSApplicationObject;
//import com.teamcenter.rac.kernel.ics.ICSProperty;
//import com.teamcenter.rac.kernel.ics.ICSPropertyDescription;
//import com.teamcenter.rac.kernel.ics.ICSSearchResult;
//import com.teamcenter.rac.kernel.ics.ICSView;
//import com.teamcenter.rac.util.MessageBox;
//import com.teamcenter.rac.util.PlatformHelper;
//import com.teamcenter.schemas.soa._2006_03.exceptions.ServiceException;
//import com.teamcenter.services.rac.core.DataManagementService;
//import com.teamcenter.services.rac.core._2008_06.DataManagement.CreateInput;
//import com.teamcenter.soa.client.model.LovValue;
//
//public class NewCodeItemDialogNew extends Dialog {
//	//
//	private SashForm sashFormCodeView;
//	private CTabItem codeTreeCTab;//编码数
//	private CTabItem codeListCTab;//编码列表
//	private Composite compositCodeTree;//编码数
//	private Composite compositCodeList;//编码列表
//	private CTabFolder ctabFolder;//分页
//	private Text idLengthText;//特征码
//	private Text DescText;//编码描述
//	private Text idText;//id
//	private Text revText;//版本
//	private Text nameText;//名称
//	private Combo unitCombo;//单位
//	//private NewItemClassificationView classificationView;
//	private NewItemListCodeView listView;
//	private NewItemTreeCodeView treeView;
//	//private TreeViewer classificationTreeViewer;
//	private TreeViewOperation treeViewOperation;
//	public TreeAndListCodeOperation treeAndListCodeOperation;
//	private TCSession session;
//	private TCComponentItemType tccomponentitemtype;
//	private AbstractTreeData selectedSegmentNode = null;
//	private TCComponent selectedSegmentTCComponent = null;
//	private AbstractTreeData icoTreeData;
//	private String pattern = "";
//	private String codeDesc = "";
//	private String codeStyle = "";
//	private String newSeq = "";
//	private String counterID = "";
//	private String newID = "";
//	private String finalPattern = "";
//	private String idPattern = "";
//	//20170510 class id
//	private String codeRemark = "";
//
//	private int codeLength;
//	private Map<String, String> icoPropertyMap;
//	private String firstListICOName = "";
//	private String codeCounterName = "";
//	private Map<AbstractTreeData, String> segmentItemType;
//	private TCComponent newComp;
//	private String showItemType = "";
//	private Boolean isTypeFilter = false;
//	private String origin_isNewItemMustLastNode = "origin_isNewItemMustLastNode";
//	private String origin_idNeddExamineAndApproveTypes = "origin_idNeddExamineAndApproveTypes";
//	private String origin_sendToClassification_excludeType = "origin_sendToClassification_excludeType";
//	private String origin_sendToPreviousTreeNode = "origin_sendToPreviousTreeNode";
//	private String origin_sendToClassification_Automatic = "origin_sendToClassification_Automatic";
//	private String origin_isCodePatternCanEditTypes = "origin_isCodePatternCanEditTypes";
//	private String unitLOVName = "Unit of Measures";
//	private String origin_newItem_isShowUnit = "origin_newItem_isShowUnit";
//	private String origin_showUnit_excludeTypes = "origin_showUnit_excludeTypes";
//	private JDialog newItemDialog;
//	private ORItemInfoPanel orNewItemInfoPanel;
//	private TCComponent[] units = null;
//	private String origin_isItemNameTextDefaultNull = "origin_isItemNameTextDefaultNull";
//	private PackCodeDescInfos packCodeDescInfos = null;
//	private SashForm container;
//	private SashForm itemInfoComposite;
//	private SashForm sashFormClassfication;
//	private String origin_isMustSelecteUnit = "origin_isMustSelecteUnit";
//	private String origin_searchGenerateID = "origin_searchGenerateID";
//	private String origin_isNotSaveNewItemToPseudoFolder = "origin_isNotSaveNewItemToPseudoFolder";
//	private String origin_isShowPCUnitLast = "origin_isShowPCUnitLast";
//	private String origin_newCodeSequenceNumber = "origin_newCodeSequenceNumber";
//	private String origin_sequenceExcludeFirstPatternTypes = "origin_sequenceExcludeFirstPatternTypes";
//	private String connor_isCanCreateTempMaterial = "connor_isCanCreateTempMaterial";
//
//	private Composite cpxCompsite;
//	private Label cpxLabel;
//	private Text cpxText;
//	private Label nfLabel;
//	private Text nfText;
//	private Label cpxLabel2;
//	private Combo cpxText2;
//	
//	private final String CPX = "CPDM";
//	private final String NF = "NF";
//	private final String CPX2 = "CP";
//	private final String JY_CPX_Option = "JY_CPX_Option";
//	private  HashMap<String, String> jyCPXMap;
//	
//	// 2017.05.10
//	private Button isCreateTempItemButton = null;
//	private Boolean isCreateTempItem = false;
//	
//	// 2017.06.02
//	//private List<>
//	private Composite objPropComposite;
//	private Composite classPropComposite;
//	private static TCClassificationService classService;
//	private static ICSAdminClass adminClass;
//	public List<Label> classLabelList = new ArrayList<>();
//	public List<Widget> classTextList = new ArrayList<>();
//	public List<CNClassPropBean> classPropList = new ArrayList<>();
//	public List<Label> generalPropLabelList = new ArrayList<>();
//	public List<Widget> generalPropTextList = new ArrayList<>();
//	
//	// 2017.06.26
//	private String LPBIGString;
//	private String LPSString;
//	
//	//2017.07.02
//	private CNPartList cnPartList;
//	private CNPart currentCNPart;
//	private List<CNProperty> cnpropList; 
//	
//	public Text getIdLengthText() {
//		return idLengthText;
//	}
//
//	public void setIdLengthText(Text idLengthText) {
//		this.idLengthText = idLengthText;
//	}
//
//	public Combo getUnitCombo() {
//		return unitCombo;
//	}
//
//	public void setUnitCombo(Combo unitCombo) {
//		this.unitCombo = unitCombo;
//	}
//
//	public Text getDescText() {
//		return DescText;
//	}
//
//	public void setDescText(Text descText) {
//		DescText = descText;
//	}
//
//	public Text getIdText() {
//		return idText;
//	}
//
//	public void setIdText(Text idText) {
//		this.idText = idText;
//	}
//
//	public Text getRevText() {
//		return revText;
//	}
//
//	public void setRevText(Text revText) {
//		this.revText = revText;
//	}
//
//	public Text getNameText() {
//		return nameText;
//	}
//
//	public void setNameText(Text nameText) {
//		this.nameText = nameText;
//	}
//
//	public TCComponent getNewComp() {
//		return newComp;
//	}
//
//	public void setNewComp(TCComponent newComp) {
//		this.newComp = newComp;
//	}
//
//	public NewCodeItemDialogNew(Shell parentShell) {
//		super(parentShell);
//		treeViewOperation = new TreeViewOperation();
//		treeAndListCodeOperation = new TreeAndListCodeOperation();
//		session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//		segmentItemType = new HashMap<AbstractTreeData, String>();
//		try {
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent("Item"));
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	public NewCodeItemDialogNew(Shell parentShell, String showItemType) {
//		super(parentShell);
//		treeViewOperation = new TreeViewOperation();
//		this.showItemType = showItemType.trim();
//		treeAndListCodeOperation = new TreeAndListCodeOperation();
//		session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//		segmentItemType = new HashMap<AbstractTreeData, String>();
//		try {
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent("Item"));
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//	
//	public NewCodeItemDialogNew(Shell parentShell, String showItemType,Boolean isFilterType) {
//		super(parentShell);
//		treeViewOperation = new TreeViewOperation();
//		this.showItemType = showItemType.trim();
//		this.isTypeFilter = isFilterType;
//		treeAndListCodeOperation = new TreeAndListCodeOperation();
//		session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//		segmentItemType = new HashMap<AbstractTreeData, String>();
//		try {
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent("Item"));
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	public NewCodeItemDialogNew(JDialog newItemDialog, Shell parentShell,
//			String showItemType) {
//		super(parentShell);
//		this.newItemDialog = newItemDialog;
//		treeViewOperation = new TreeViewOperation();
//		this.showItemType = showItemType.trim();
//		treeAndListCodeOperation = new TreeAndListCodeOperation();
//		session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//		segmentItemType = new HashMap<AbstractTreeData, String>();
//		try {
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent("Item"));
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	public NewCodeItemDialogNew(Shell parentShell, String showItemType,
//			PackCodeDescInfos packCodeDescInfos) {
//		super(parentShell);
//		treeViewOperation = new TreeViewOperation();
//		this.showItemType = showItemType.trim();
//		treeAndListCodeOperation = new TreeAndListCodeOperation();
//		session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//		segmentItemType = new HashMap<AbstractTreeData, String>();
//		this.packCodeDescInfos = packCodeDescInfos;
//		try {
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent("Item"));
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	public NewCodeItemDialogNew(ORItemInfoPanel newItemInfoPanel,
//			Shell parentShell, String showItemType) {
//		super(parentShell);
//		this.orNewItemInfoPanel = newItemInfoPanel;
//		treeViewOperation = new TreeViewOperation();
//		this.showItemType = showItemType.trim();
//		treeAndListCodeOperation = new TreeAndListCodeOperation();
//		session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//		segmentItemType = new HashMap<AbstractTreeData, String>();
//		try {
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent("Item"));
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	/**
//	 * 添加物料属性页面
//	 * 添加分类熟悉页面
//	 * @param parent
//	 */
//	public void createClassTablePannel(Composite parent1){
//		
//		GridLayout gridLayout = new GridLayout();
//		gridLayout.numColumns = 2;
//		GridData gridData1 = new GridData();
//		gridData1.widthHint= 200;
//		gridData1.heightHint = 320;
//		gridData1.horizontalAlignment = GridData.FILL;
//		gridData1.verticalAlignment = GridData.CENTER;
//		gridData1.grabExcessHorizontalSpace = true;
//
//		CTabFolder ctabFolder = new CTabFolder(parent1, SWT.BORDER);
//		ctabFolder.setBorderVisible(true);
//		ctabFolder.setSimple(false);
//		ctabFolder.setLayoutData(gridData1);
//		CTabItem objPropTab = new CTabItem(ctabFolder, SWT.NONE);
//		objPropTab.setText("对象属性");
//		Composite objectCompsite = new Composite(ctabFolder, SWT.BORDER);
//		objectCompsite.setLayout(new FillLayout());
//		final ScrolledComposite objectSrolledComposite = new ScrolledComposite(objectCompsite,  SWT.V_SCROLL);
//		objPropComposite = new Composite(objectSrolledComposite, SWT.NONE);
//		objPropComposite.setLayout(gridLayout);
//		objectSrolledComposite.setContent(objPropComposite);//设置受控面板
//		objectSrolledComposite.setExpandHorizontal(true);
//		objectSrolledComposite.setExpandVertical(true);
//		objectSrolledComposite.addControlListener(
//			new ControlAdapter() {
//				public void controlResized(ControlEvent e) {
//					Point r = objPropComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
//					objectSrolledComposite.setMinSize(objectSrolledComposite.computeSize(r.x, r.y));
//				}
//			}
//		);
//		objPropTab.setControl(objectCompsite);
//		ctabFolder.setSelection(0);
//		//
//		CTabItem classPropTab = new CTabItem(ctabFolder, SWT.NONE);
//		classPropTab.setText("分类属性");
//		Composite classCompsite = new Composite(ctabFolder, SWT.BORDER);
//		classCompsite.setLayout(new FillLayout());
//		final ScrolledComposite classSrolledComposite = new ScrolledComposite(classCompsite,  SWT.V_SCROLL);
//		classPropComposite = new Composite(classSrolledComposite, SWT.NONE);//ctabFolder
//		classPropComposite.setLayout(gridLayout);
//		classSrolledComposite.setContent(classPropComposite);//设置受控面板
//		classSrolledComposite.setExpandHorizontal(true);
//		classSrolledComposite.setExpandVertical(true);
//		classSrolledComposite.addControlListener(
//			new ControlAdapter() {
//				public void controlResized(ControlEvent e) {
//					Point r = classPropComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
//					classSrolledComposite.setMinSize(classSrolledComposite.computeSize(r.x, r.y));
//				}
//			}
//		);
//		classPropTab.setControl(classCompsite);
//		
//	}
//	
//	
//	/**
//	 * 绘制刷新分类属性界面
//	 */
//	public void addClassPropComosite(String classID){
//		//classPropComposite.dispose();
//		//GridLayout gridLayout = new GridLayout();
//		//gridLayout.numColumns = 2;
//		//a
//		for(int i = 0;i < classLabelList.size();i++){
//			Label label = classLabelList.get(i);
//			Widget text = classTextList.get(i);
//			label.dispose();
//			text.dispose();
//		}
//		classPropList.clear();
//		classLabelList.clear();
//		classTextList.clear();
//		
//		try {
//			if(session == null){
//				session = (TCSession) AIFUtility.getCurrentApplication().getSession();
//			}
//			if(classService == null){
//				classService = session.getClassificationService();
//			}
//			if(adminClass == null){
//				adminClass = classService.newICSAdminClass();
//			}
//			
//			
//			adminClass.load(classID);
//			
//			ICSAdminClassAttribute[] icsAttrS = adminClass.getAttributes();
//			if(icsAttrS != null){
//				for(ICSAdminClassAttribute attr : icsAttrS){
//					if(attr.isReferenceAttribute()){
//						continue;
//					}
//					if(attr.isReference()){
//						continue;
//					}
//					CNClassPropBean bean = new CNClassPropBean(attr);
//					classPropList.add(bean);
//					Label label = CreateCompositeUtil.createNewLabel(classPropComposite,bean.propDisName);
//					label.getParent().layout();
//					classLabelList.add(label);
//					Widget widget = null;
//					if(!bean.isLov){
//						Text propText = CreateCompositeUtil.createNewText(classPropComposite, "");
//						propText.getParent().layout();
//						
//						widget = propText;
//					}else{
//						Combo combo = CreateCompositeUtil.createNotFillNewCombo(
//								 classPropComposite, bean.keyList.toArray(new String[bean.keyList.size()]));
//						combo.getParent().layout();
//						widget = combo;
//					}
//					classTextList.add(widget);
//				}
//			}
//		} catch (TCException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//		
//		
//		classPropComposite.update();
//		classPropComposite.layout();
//	}
//	
//	/**
//	 * 绘制刷新一遍属性界面
//	 */
//	public void addGeneralPropComosite(){
//		for(int i = 0;i < generalPropLabelList.size();i++){
//			Label label = generalPropLabelList.get(i);
//			Widget text = generalPropTextList.get(i);
//			label.dispose();
//			text.dispose();
//		}
//		generalPropLabelList.clear();
//		generalPropTextList.clear();
//		
//		if(this.cnpropList!=null){
//			for(CNProperty cnProp : this.cnpropList){
//				
//				Label label = CreateCompositeUtil.createNewLabel(objPropComposite,cnProp.getIsMust()?(cnProp.getDisplayName()+"(必填)"):cnProp.getDisplayName());
//				generalPropLabelList.add(label);
//				Widget widget = null;
//				if (!cnProp.getIsLov()) {
//					if(cnProp.getPropertyType().toUpperCase().equals("STRING")){
//						final Text text = CreateCompositeUtil.createNewText(objPropComposite, cnProp.getDefaultValue());
//						text.setText(cnProp.getDefaultValue());	
//						widget = text;
//					}else if(cnProp.getPropertyType().toUpperCase().equals("INTEGER")){
//						final Text text = CreateCompositeUtil.createNewText(objPropComposite, cnProp.getDefaultValue());
//						text.setText("0");
//						widget = text;
//						text.addVerifyListener(new VerifyListener() {
//							@Override
//							public void verifyText(VerifyEvent e) {
//							    boolean b = "0123456789".indexOf(e.text) >= 0 ;
//						        e.doit = b;  //doit属性如果为true,则字符允许输入,反之不允许
//							}
//						});
//					}else if(cnProp.getPropertyType().toUpperCase().equals("DOUBLE")){
//						final Text text = CreateCompositeUtil.createNewText(objPropComposite, cnProp.getDefaultValue());
//						text.setText("0");
//						widget = text;
//						text.addVerifyListener(new VerifyListener() {
//							@Override
//							public void verifyText(VerifyEvent e) {
//							    boolean b = "0123456789.".indexOf(e.text) >= 0 ;
//						        e.doit = b;  //doit属性如果为true,则字符允许输入,反之不允许
//						        if(b&& e.text.equals(".")&&text.getText().contains(".")){
//						        	e.doit = false;
//						        }
//							}
//						});
//						
//					}
//					else if(cnProp.getPropertyType().toUpperCase().equals("DATE")){
//						final DateTime text = new DateTime(objPropComposite, SWT.DATE);
//						widget = text;
//					}else if(cnProp.getPropertyType().toUpperCase().equals("BOOLEAN")){
//						final Combo comb = CreateCompositeUtil
//								.createNotFillNewCombo(objPropComposite, new String[]{"true","false"}); // new
//						comb.setText(cnProp.getDefaultValue());																	// Combo(propTable,
//						widget = comb;																	// SWT.NONE);
//					}
//				} else {// lovBeanList
//					final Combo comb = CreateCompositeUtil
//							.createNotFillNewCombo(objPropComposite, cnProp.lovDisplayValueList
//									.toArray(new String[cnProp.lovDisplayValueList.size()])); // new
//					widget = comb;																	// Combo(propTable,																	// SWT.NONE);
//					comb.setText(cnProp.getDefaultValue());
//				}
//				generalPropTextList.add(widget);
//			}
//		}
//		objPropComposite.update();
//		objPropComposite.layout();
//		
//	}
//	
//	
//	/**
//	 * 检查分类属性是否重复
//	 */
//	public boolean checkClassficationICO(){
//		boolean isContent = false;
//		try {
//			//codeRemark
//			if(classPropList.size()>0){
//				ICSProperty icspro[] = new ICSProperty[classPropList.size()];
//				for(int i = 0 ;i < classPropList.size();i++){
//					CNClassPropBean bean = classPropList.get(i);
//					String value = "";
//					if(bean.isLov){
//						value =((Combo)classTextList.get(i)).getText();
//						value = bean.lovMapping.get(value);
//					}else{
//						value = ((Text)classTextList.get(i)).getText();
//					}
//					icspro[i] = new ICSProperty(bean.propID, value);
//				}
//				
//				TCClassificationService classificationService = this.session.getClassificationService(); 
//				ICSAdminClass c = classificationService.newICSAdminClass();
//				c.load(codeRemark);
//				//查询分类对象
//				//参数1，分类的ID
//				//参数2，根据属性过滤
//				//参数3，默认（FIND_VALUES_UNIT_SYSTEM_NONE）
//				ICSSearchResult[] results = classificationService.searchICOs(codeRemark,icspro , 0);
//				if(results == null ||results.length == 0){
//					System.out.println(" 搜索得到的结果为0");
//					isContent = false;
//				}else{
//					System.out.println(" 搜索得到的结果为:"+results.length);
//					StringBuffer sb = new StringBuffer();
//					sb.append("存在以下对象具有相同的分类属性:\n");
//					for(int i = 0;i<results.length;i++){
//						String wsoString = session.stringToComponent(results[i].getWsoUid()).getStringProperty("object_string");
//						sb.append(wsoString).append("\n");
//					}
//					sb.append("\n是否继续创建?\n");
//					org.eclipse.swt.widgets.MessageBox box = new org.eclipse.swt.widgets.MessageBox( PlatformHelper.getCurrentShell() ,SWT.ICON_WARNING|SWT.YES|SWT.NO);  
//				    //设置对话框的标题  
//				    box.setText("警告");  
//				    //设置对话框显示的消息  
//				    box.setMessage(sb.toString());  
//				    //打开对话框，将返回值赋给choice  
//				    int choice = box.open();  
//				    //打印出所选择的值  
//				    if (choice==SWT.YES) { 
//					     System.out.print("Yes"); 
//					     isContent = false;
//				    }
//				    else if ( choice==SWT.NO)  {
//					     System.out.print("No");  
//					     isContent = true;
//				    }
//				}
////				for(int i = 0;i<results.length;i++){
////					//String icoID = results[i].getIcoId();
////					String icoUid = results[i].getIcoUid();
////					InterfaceAIFComponent comp2 = this.session.stringToComponent(icoUid);
////			        //获取分类属性
////					ICSProperty[] icsProps = ((TCComponentICO)comp2).getICSProperties(true);
////					for(int w = 0 ;w <icsProps.length;w++){
////			                 //属性值
////						    icsProps[w].getValue();
////			                 //属性ID
////			                icsProps[w].getId();
////					}
////				}
//			}
//		} catch (TCException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//		
//		return isContent;
//	}
//	
//	/**
//	 * 通过调用webservice接口后台特定用户发送到分类
//	 * 
//	 * @param item 要发送的itemd对象，获取最新版本发送到分类
//	 */
//	public void sendObjToClassficationByWebService(TCComponentItem item){
//		try {
//			
//			if( !codeRemark.replace(" ", "").equals("") && item !=null){
//				TCComponentItemRevision rev = item.getLatestItemRevision();
//				List<ClassProperty> propList = new ArrayList<>();
//				for (int i = 0; i < classPropList.size(); i++) {
//					CNClassPropBean bean = classPropList.get(i);
//					String value = "";
//					if(bean.isLov){
//						value =((Combo)classTextList.get(i)).getText();
//						value = bean.lovMapping.get(value);
//					}else{
//						value = ((Text)classTextList.get(i)).getText();
//					}
//					ClassProperty prop = new ClassProperty(bean.propID, value);
//					propList.add(prop);
//				}
//				String json = SoaServerUtil.objectToJson(propList);
//				SoaServerUtil.grantWritePrivilege(session, rev);
//				SoaServerUtil.sendToClass(rev.getUid(), codeRemark, json);
//				SoaServerUtil.grantReadPrivilege(session, rev);
//			}
//			
//		} catch (TCException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//	}
//	/**
//	 * 发送对象到分类
//	 * @return
//	 */
//	public void sendObjToClassfication(TCComponentItem item){
//		try {
//			if( !codeRemark.replace(" ", "").equals("") && item !=null){
//				String partid = item.getStringProperty("item_id");
//				TCComponentItemRevision rev = item.getLatestItemRevision();
//				TCClassificationService myService = session.getClassificationService();
//				ICSApplicationObject icsAppObj=myService.newICSApplicationObject("ICM");
//				icsAppObj.create(partid, rev.getUid());
//				icsAppObj.setView(codeRemark);
//				ICSView icsview = icsAppObj.getView();
//				//ICSPropertyDescription icsproperty[] = icsview
//				//		.getPropertyDescriptions();
//				ICSProperty icspro[] = new ICSProperty[classPropList.size()];
//			    //设置分类属性
//				for (int i = 0; i < icspro.length; i++) {
//					//System.out.println(" CLASS ID = " + integers[i] + "  =" + vals[i]);
//					CNClassPropBean bean = classPropList.get(i);
//					String value = "";
//					if(bean.isLov){
//						value =((Combo)classTextList.get(i)).getText();
//						value = bean.lovMapping.get(value);
//					}else{
//						value = ((Text)classTextList.get(i)).getText();
//					}
//					icspro[i] = new ICSProperty(bean.propID, value);
//				}
//				icsAppObj.setProperties(icspro);
//				icsAppObj.save();
//
//			}
//		} catch (TCException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//	}
//	
//	/**
//	 * 创建对话框的内容
//	 * 
//	 */
//	@Override
//	protected Control createDialogArea(Composite parent) {
//		// 获取编码配置文件
//		String puid = JFomMethodUtil.getOptionValue(JFomUtil.AUTOCODE_UID_REF, session);
//		try {
//			TCComponent datasetcomp = session.stringToComponent(puid);
//			String filePath = JFomMethodUtil.downLoadFile(datasetcomp);
//			Object object = CNXmlUtil.xmlToBean(filePath, CNPartList.class);
//			CNPartList parts = (CNPartList) object;
//			this.cnPartList = parts;
//			
//		} catch (TCException e1) {
//			// TODO Auto-generated catch block
//			e1.printStackTrace();
//		} catch (JAXBException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		} catch (IOException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//		
//		
//		
//
//		Composite container1 = (Composite) super.createDialogArea(parent);
//		// container1.
//		FillLayout fillLayout = new FillLayout(SWT.HORIZONTAL);
//		container1.setLayout(fillLayout);
//
//		Shell shell = container1.getShell();
//		shell.setFullScreen(true);
//		//TODO 2017.06.02
//		int x = shell.getSize().x ;//+ 200;
//		Dimension srcDim = Toolkit.getDefaultToolkit().getScreenSize();
//		shell.setSize(x, srcDim.height);
//		// shell.open();
//		container = new SashForm(container1, SWT.NONE);
//
//		sashFormClassfication = new SashForm(container, SWT.NONE);
//		// SashForm sashFormClassfication = new SashForm(container, SWT.BORDER |
//		// SWT.H_SCROLL);
//		// sashFormClassfication.setOrientation(SWT.HORIZONTAL);
//		classificationView = new NewItemClassificationView(
//				sashFormClassfication, "编码分类", showItemType,isTypeFilter);
//		if(isTypeFilter = true){
//			showItemType = "";
//		}
//		classificationTreeViewer = classificationView.treeViewer;
//		addMouseAction();
//		sashFormCodeView = new SashForm(container, SWT.NONE);
//		GridData gridData1 = new GridData();
//		gridData1.heightHint = 70;
//		gridData1.horizontalAlignment = GridData.FILL;
//		gridData1.verticalAlignment = GridData.CENTER;
//		gridData1.grabExcessHorizontalSpace = true;
//
//		ctabFolder = new CTabFolder(sashFormCodeView, SWT.BORDER);
//		ctabFolder.setBorderVisible(true);
//		ctabFolder.setSimple(false);
//		ctabFolder.setLayoutData(gridData1);
//
//		codeTreeCTab = new CTabItem(ctabFolder, SWT.NONE);
//		codeTreeCTab.setText("编码树");
//		compositCodeTree = new Composite(ctabFolder, SWT.NONE);
//
//		compositCodeTree.setLayout(new FillLayout());
//		codeTreeCTab.setControl(compositCodeTree);
//		treeView = new NewItemTreeCodeView(compositCodeTree, "root");
//
//		codeListCTab = new CTabItem(ctabFolder, SWT.NONE);
//		codeListCTab.setText("编码列表");
//		ctabFolder.setSelection(0);
//		compositCodeList = new Composite(ctabFolder, SWT.NONE);
//		compositCodeList.setLayout(new FillLayout());
//		codeListCTab.setControl(compositCodeList);
//
//		listView = new NewItemListCodeView();
//		ctabFolder.setSelection(1);
//
//		itemInfoComposite = new SashForm(container, SWT.NONE);
//		createNewItemInfo(itemInfoComposite);
//
//		try {
//			classificationView
//					.createOrgAutoCodeNodeChildren(new AbstractTreeData[] { (AbstractTreeData) classificationView.treeViewer
//							.getTree().getTopItem().getData() });
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		container.setWeights(new int[] { 3, 5, 6 });
//		// container.getShell().setFullScreen(true);
//		// Dimension srcDim = Toolkit.getDefaultToolkit().getScreenSize();
//		// container1.getShell().setSize(srcDim.width, srcDim.height);
//		// Point p =container1.getShell().getSize();
//		// System.out.println("");
//		// MessageBox.post(p.x+"|"+p.y,"P",1);
//		return container;
//	}
//
//	// 得到最低层的节点
//	// public TreeItem getLastChild(TreeItem item){
//	// TreeItem childItem =item;
//	// if(item.getItemCount()>0){
//	// childItem= getLastChild(item.getItem(0));
//	// }
//	// System.out.println("i am in getLastChild "+childItem.getText());
//	// return childItem
//	// }
//
//	/*
//	 * //设置打开界面的时候默认选择最终节点 public void initSelectedCodeTree() { try {
//	 * classificationView.createOrgAutoCodeNodeChildren(new
//	 * AbstractTreeData[]{(AbstractTreeData)
//	 * classificationView.treeViewer.getTree().getTopItem().getData()} );
//	 * ctabFolder.setSelection(0);
//	 * if(classificationTreeViewer.getTree().getTopItem().getItemCount()>0){
//	 * if(classificationTreeViewer.getTree().getTopItem().getItem(0).
//	 * getItemCount()>0){
//	 * classificationTreeViewer.getTree().setSelection(classificationTreeViewer.
//	 * getTree().getTopItem().getItem(0).getItem(0));
//	 * setTreeNodes(treeViewOperation.getSelectedTreeNode(classificationView.
//	 * treeViewer)); ctabFolder.redraw(); // showRule(); addMouseAction()方法中的内容，
//	 * // 去掉 classificationTreeViewer.getTree().addSelectionListener(new
//	 * SelectionAdapter() { // public void widgetSelected(SelectionEvent e) { }}
//	 * } }
//	 * 
//	 * } catch (Exception e) { e.printStackTrace(); } }
//	 */
//
//	
//	
//	/**
//	 * 获取产品线
//	 * @return
//	 */
//	private String[] getAllCpx(){
//		String[] cpxS =null;
//		TCPreferenceService service = session.getPreferenceService();
//		jyCPXMap = new HashMap<>();
//		
//		String[] value = service.getStringValues(JY_CPX_Option);
//		if(value!=null){
//			cpxS = new String[value.length];
//			for(int i = 0;i <value.length;i++ ){
//				String cpx = value[i];
//				String[] valueS = cpx.split("=");
//				if(valueS!=null && valueS.length ==2){
//					cpxS[i] = valueS[0];
//					jyCPXMap.put( valueS[0],  valueS[1]);
//				}
//			}
//		}
//		
//		return cpxS;
//	}
//	
//	
//	/**
//	 * CPX::产品代码
//	 * NF::年份
//	 * @param cpx
//	 * @param nf
//	 */
//	private void setMidComposite(){
//		String text = "";
//		if(DescText!=null){
//			text = DescText.getText();
//		}
//		SimpleDateFormat sdf = new SimpleDateFormat("yyyy");
//		System.out.println("DESC ==>"+text);
//		
//		if(text.contains(CPX2+"::")){
//			System.out.println("CPX2 ADD");
//			if(cpxLabel2 == null && cpxText2 ==null ){
//				cpxLabel2 = CreateCompositeUtil.createNewLabel(cpxCompsite, "产品线");
//				cpxText2 = CreateCompositeUtil.createNotFillNewCombo(
//						cpxCompsite, getAllCpx());;
//				//cpxText2.setEditable(true);
//				cpxLabel2.getParent().layout();
//			}
//		}else{
//			if(cpxLabel2 !=null && cpxText2!=null ){
//				cpxLabel2.dispose();
//				cpxText2.dispose();
//				cpxLabel2 = null;
//				cpxText2 = null;
//			}
//		}
//		
//		
//		if(text.contains(CPX+"::")){
//			System.out.println("CPX ADD");
//			if(cpxLabel == null && cpxText ==null ){
//				cpxLabel = CreateCompositeUtil.createNewLabel(cpxCompsite, "产品代码");
//				cpxText = CreateCompositeUtil.createNewText(cpxCompsite, "");
//				cpxText.setEditable(true);
//				cpxLabel.getParent().layout();
//			}
//		}else{
//			if(cpxLabel !=null && cpxText!=null ){
//				cpxLabel.dispose();
//				cpxText.dispose();
//				cpxLabel = null;
//				cpxText = null;
//			}
//		}
//		//nfCompsite = new Composite(composite, SWT.BORDER);
//		//nfCompsite.setLayout(gridLayout);
//		if(text.contains(NF+"::")){
//			System.out.println("NF ADD");
//			if(nfLabel == null && nfText ==null ){
//				
//				nfLabel = CreateCompositeUtil.createNewLabel(cpxCompsite, "年份");
//				nfText = CreateCompositeUtil.createNewText(cpxCompsite, "");
//				nfText.setEditable(true);
//				nfText.setText(sdf.format(new Date()));
//				nfLabel.getParent().layout();
//			}
//		}else{
//			if(nfLabel !=null && nfText!=null ){
//				nfLabel.dispose();
//				nfText.dispose();
//				nfLabel = null;
//				nfText = null;
//			}
//		}
//		cpxCompsite.update();
//		cpxCompsite.layout();
//		composite.update();
//		composite.layout();
//	}
//	private Composite composite;
//	private void createNewItemInfo(Composite parent) {
//		composite = new Composite(parent, SWT.BORDER);
//		GridLayout gridLayout = new GridLayout();
//		gridLayout.numColumns = 1;
//		composite.setLayout(gridLayout);
//		CreateCompositeUtil.createNewLabel(composite, "特征码");
//		idText = CreateCompositeUtil.createNewText(composite, "");
//
//		CreateCompositeUtil.createNewLabel(composite, "特征码长度");
//		idLengthText = CreateCompositeUtil.createNewText(composite, "");
//		
//		//===JY 2017.01.09====
//		GridLayout gridLayout2 = new GridLayout();
//		gridLayout2.numColumns = 4;
//		
//		cpxCompsite = new Composite(composite, SWT.BORDER);
//		cpxCompsite.setLayout(gridLayout2);
//		setMidComposite();
//		//cpxLabel.dispose();//setVisible(false);
//		//cpxText.dispose();//setVisible(false);
//		
//		CreateCompositeUtil.createNewLabel(composite, "版本");
//		revText = CreateCompositeUtil.createNewText(composite, "");
//
//		CreateCompositeUtil.createNewLabel(composite, "名称");
//		nameText = CreateCompositeUtil.createNewText(composite, "");
//
//		if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//				origin_newItem_isShowUnit)) {
//			try {
//				CreateCompositeUtil.createNewLabel(composite, "度量单位");
//				TCComponentListOfValues listOfValues = TCLOVUtil.findLOVByName(
//						session, unitLOVName);
//				ListOfValuesInfo listOfValuesInfo = listOfValues
//						.getListOfValues();
//				String[] values = listOfValuesInfo.getLOVDisplayValues();
//				units = listOfValuesInfo.getTagListOfValues();
//				if (values != null) {
//					String[] unitvalues = new String[values.length + 1];
//					if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//							origin_isShowPCUnitLast)) {
//						for (int i = 0; i < values.length; i++) {
//							unitvalues[i] = values[i];
//						}
//						unitvalues[values.length] = "";// 每个
//					} else {
//						unitvalues[0] = "";// 每个
//						for (int i = 0; i < values.length; i++) {
//							unitvalues[i + 1] = values[i];
//						}
//					}
//					unitCombo = CreateCompositeUtil.createNotFillNewCombo(
//							composite, unitvalues);
//				}
//			} catch (TCException e) {
//				e.printStackTrace();
//			}
//		}
//		createClassTablePannel(composite);
//		//CreateCompositeUtil.createNewLabel(composite, "描述");
//		DescText = CreateCompositeUtil.createTextArea(composite, "", 1, 300);
//		DescText.setVisible(false);
//		
//		// 进行扩展
//		//CreateCompositeUtil.createNewLabel(objPropComposite, "属性");
//		// 修改 20170626   
//		//propTable = CreateCompositeUtil.createNewTable(objPropComposite, "", 170, 230);
//
//		idText.setEnabled(false);
//		idLengthText.setEnabled(false);
//		revText.setEnabled(false);
//		DescText.setEnabled(false);
//		
//
//	}
//
//	private class NameValue {
//		private String name = "";
//		private String value = "";
//
//		public NameValue(String name, String value) {
//			this.name = name;
//			this.value = value;
//		}
//
//		public String getName() {
//			return name;
//		}
//
//		public void setName(String name) {
//			this.name = name;
//		}
//
//		public String getValue() {
//			return value;
//		}
//
//		public void setValue(String value) {
//			this.value = value;
//		}
//
//	}
//
//	private TCComponent[] getParentGroupNode(AbstractTreeData segmentNode) {
//		TCComponent[] tccomponents = null;
//		classificationTreeViewer.refresh();
//		if (segmentNode == null) {
//			return null;
//		}
//		if ((segmentNode.getPackCodeNodeInfo().getNodeComponent() != null)
//				&& (segmentNode.getPackCodeNodeInfo().is_root)) {
//		} else {
//			return null;
//		}
//		getRealItemType(segmentNode, segmentNode.getParentTreeData());
//		return tccomponents;
//	}
//
//	private void getRealItemType(AbstractTreeData segmentNode,
//			AbstractTreeData parentNode) {
//		if ((parentNode != null)
//				&& (parentNode.getPackCodeNodeInfo().getNode_type()
//						.equals(AutoCodeManagerPropertyName.ItemName))) {
//			String realItemType = parentNode.getPackCodeNodeInfo()
//					.getRealTypeName().trim();
//			if (!segmentItemType.containsKey(segmentNode)) {
//				segmentItemType.put(segmentNode, realItemType);
//			}
//		} else {
//			if (parentNode != null) {
//				parentNode = parentNode.getParentTreeData();
//				getRealItemType(segmentNode, parentNode);
//			}
//		}
//	}
//
//	public void setTreeNodes(AbstractTreeData segmentNode) {
//		try {
//			classificationTreeViewer.refresh();
//			if (segmentNode == null) {
//				return;
//			}
//			getRealItemType(segmentNode, segmentNode.getParentTreeData());
//			TCComponent autoCodeDataComponent = segmentNode
//					.getPackCodeNodeInfo().getNodeComponent();
//			TreeAndListCodeOperation treeAndListCodeOperation = new TreeAndListCodeOperation();
//			HashMap<Object, Object> hashMap = new HashMap<Object, Object>();
//
//			String parentStr = "";
//			parentStr = treeAndListCodeOperation.getParentStr(segmentNode,
//					parentStr);
//			if (autoCodeDataComponent != null) {
//				hashMap.put(
//						AutoCodeManagerPropertyName.CodeRelation_current_node,
//						autoCodeDataComponent.getUid());
//				hashMap.put(
//						AutoCodeManagerPropertyName.CodeRelation_parent_node,
//						parentStr);
//			} else {
//				hashMap.put(
//						AutoCodeManagerPropertyName.CodeRelation_parent_node,
//						"");
//				hashMap.put(
//						AutoCodeManagerPropertyName.CodeRelation_current_node,
//						"");
//			}
//			String parentStr2 = "";
//			if (autoCodeDataComponent != null) {
//				if (parentStr.trim().length() == 0) {
//					parentStr2 = autoCodeDataComponent.getUid();
//				} else {
//					parentStr2 = parentStr + ","
//							+ autoCodeDataComponent.getUid();
//				}
//			} else {
//				parentStr2 = parentStr;
//			}
//			List<PackCodeNodeInfo> packCodeNodeInfos = treeAndListCodeOperation
//					.searchTreeORListNodeInfos(
//							hashMap,
//							parentStr2,
//							AutoCodeManagerPropertyName.searchTreeAndListCodeNodePropNames);
//			if (packCodeNodeInfos != null && packCodeNodeInfos.size() > 0) {
//				AbstractTreeData autoCodeDataTCComs[] = new AbstractTreeData[packCodeNodeInfos
//						.size()];
//				for (int k = 0; k < packCodeNodeInfos.size(); k++) {
//					if (packCodeNodeInfos.get(k).getNodeComponent() == null) {
//						continue;
//					}
//					PackCodeNodeInfo packCodeNodeInfo = packCodeNodeInfos
//							.get(k);
//					autoCodeDataTCComs[k] = new AbstractTreeData(segmentNode,
//							packCodeNodeInfo);
//					if (packCodeNodeInfo.isContainsChildren()) {
//						autoCodeDataTCComs[k]
//								.setTreeAutoCodeNodeChildren(new AbstractTreeData[] { new AbstractTreeData() });
//					}
//				}
//				treeView.treeViewer.setInput(autoCodeDataTCComs);
//				treeView.treeViewer.refresh();
//			}
//		} catch (ServiceException e) {
//			e.printStackTrace();
//		} catch (TCException e) {
//			e.printStackTrace();
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//	}
//
//	public void addMouseAction() {
//		classificationTreeViewer.getTree().addSelectionListener(
//				new SelectionAdapter() {
//					public void widgetSelected(SelectionEvent e) {
//						// MessageBox.post("prop","xxx",MessageBox.ERROR);
//						try {
//							initClassificationMouseClick();
//							selectedSegmentNode = treeViewOperation
//									.getSelectedTreeNode(classificationTreeViewer);
//							if (selectedSegmentNode == null) {
//								return;
//							}
//							//System.out.println("---->>>>>>> selectedSegmentNode =111>"+selectedSegmentNode.getParentTreeData().getPackCodeNodeInfo());
//							getParentGroupNode(selectedSegmentNode);
//							selectedSegmentTCComponent = selectedSegmentNode
//									.getPackCodeNodeInfo().getNodeComponent();
//							if (selectedSegmentTCComponent == null) {
//								return;
//							}
//							if(selectedSegmentNode.getParentTreeData()!=null){
//								//System.out.println("---->>>>>>> selectedSegmentNode =222>"+selectedSegmentNode.getPackCodeNodeInfo().rule_node);
//								if("电子件".equals(selectedSegmentNode.getPackCodeNodeInfo().rule_node)){
//									isCreateTempItemButton.setVisible(true);
//								}else{
//									isCreateTempItemButton.setVisible(false);
//								}
//							}
//							
//							if (selectedSegmentTCComponent
//									.getLogicalProperty(AutoCodeManagerPropertyName.TreeAndListCodeNode_is_lock)) {
//								ScrolledComposite scrolledComposite = new ScrolledComposite(
//										ctabFolder, SWT.H_SCROLL | SWT.V_SCROLL);
//								codeListCTab.setControl(scrolledComposite);
//								treeView.treeViewer.setInput(null);
//								return;
//							}
//
//							if ((selectedSegmentNode.getPackCodeNodeInfo()
//									.getNode_type()
//									.equals(AutoCodeManagerPropertyName.TreeName))
//									|| (selectedSegmentNode
//											.getPackCodeNodeInfo()
//											.getNode_type()
//											.equals(AutoCodeManagerPropertyName.ListName))) {
//								// String realType =
//								// selectedSegmentNode.getPackCodeNodeInfo().getRealTypeName();
//								String realType = "";
//								if (segmentItemType != null) {
//									realType = (String) segmentItemType
//											.get(selectedSegmentNode);
//								}
//								if ((realType == null)
//										|| (realType.trim().length() == 0)) {
//									realType = showItemType;
//								}
//								if (TCPreferenceUitl
//										.isSelectExsitToTCPreferenceValues(
//												session,
//												origin_showUnit_excludeTypes,
//												realType)) {
//									if (unitCombo != null) {
//										unitCombo.setEnabled(false);
//									}
//								} else {
//									if (unitCombo != null) {
//										unitCombo.setEnabled(true);
//									}
//								}
//								if ((realType != null)
//										&& (realType.length() > 0)) {
//									tccomponentitemtype = (TCComponentItemType) (session
//											.getTypeComponent(realType));
//								}
//								// System.out.println("类型 realType = "+realType);
//							}
//							if (selectedSegmentNode
//									.getPackCodeNodeInfo()
//									.getNode_type()
//									.equals(AutoCodeManagerPropertyName.TreeName)) {
//								classificationView.treeViewer.refresh();
//								listView.setPropertyComb(null);
//								treeView.treeViewer.setInput(null);
//								Composite compositTemp = new Composite(
//										ctabFolder, SWT.NONE);
//								codeListCTab.setControl(compositTemp);
//								setTreeNodes(treeViewOperation
//										.getSelectedTreeNode(classificationView.treeViewer));
//								ctabFolder.setSelection(0);
//								ctabFolder.redraw();
//
//								treeView.treeViewer.getTree()
//										.addSelectionListener(
//												new SelectionAdapter() {
//													public void widgetSelected(
//															SelectionEvent e) {
//														// MessageBox.post("yyyyyys","xxx",MessageBox.ERROR);
//														initTreeOrListMouseClick();
//														AbstractTreeData selectedData = treeViewOperation
//																.getSelectedTreeNode(treeView.treeViewer);
//														if (selectedData == null) {
//															return;
//														}
//														if (selectedData
//																.getPackCodeNodeInfo()
//																.getNodeComponent() == null) {
//															return;
//														}
//														if ((selectedData
//																.getPackCodeNodeInfo().is_lock)) {
//															return;
//														}
//														String currentNodeDesc = "";
//														String currentNodeValue = "";
//														String name = "";
//														// 得到编码相关信息
//														getCodeInfo(selectedData);
//														System.out
//																.println(">>>>>>>><<<<<<<");
//														getClassANDPropertyInfo(selectedData);
//														name = selectedData
//																.getPackCodeNodeInfo()
//																.getNode_name();
//														icoTreeData = selectedData;
//														if(selectedData.getParentTreeData() !=null){
//															LPBIGString = selectedData.getParentTreeData().getPackCodeNodeInfo().getNode_name();
//														}else{
//															LPBIGString = "";
//														}
//														LPSString = selectedData.getPackCodeNodeInfo().getNode_name();
//														currentNodeValue = replaceSpecialValue(selectedData
//																.getPackCodeNodeInfo().node_value);
//														if (currentNodeValue
//																.length() > 0) {
//															currentNodeDesc = currentNodeValue
//																	+ "::"
//																	+ selectedData
//																			.getPackCodeNodeInfo()
//																			.getNode_name();
//														}
//														if (currentNodeValue
//																.trim()
//																.length() > 0) {
//															pattern = pattern
//																	+ " "
//																	+ currentNodeValue
//																	+ " ";
//														}
//														if (currentNodeDesc
//																.trim()
//																.length() > 0) {
//															codeDesc = codeDesc
//																	+ currentNodeDesc;
//														}
//														if (!TCPreferenceUitl
//																.isTrueTCPreferenceValue(
//																		session,
//																		origin_isItemNameTextDefaultNull)) {
//															nameText.setText(name);
//														} else {
//															nameText.setText("");
//														}
//														getFinalPattern();
//														// idText.setText(pattern);
//														idText.setText(finalPattern);
//														setIDPatternTextIsCanEdit();
//														idLengthText.setText(String
//																.valueOf(idText
//																		.getText()
//																		.replace(
//																				" ",
//																				"")
//																		.trim()
//																		.length()));
//														DescText.setText(codeDesc);
//														setMidComposite();
//														// String msg =
//														// selectedData.getPackCodeNodeInfo().getRealTypeName();
//														// MessageBox.post("Info
//														// =
//														// >"+msg,"INFO",MessageBox.ERROR);
//
//													}
//												});
//							} else if (selectedSegmentNode
//									.getPackCodeNodeInfo()
//									.getNode_type()
//									.equals(AutoCodeManagerPropertyName.ListName)) {
//								treeView.treeViewer.setInput(null);
//								ctabFolder.setLayout(new FillLayout());
//								ScrolledComposite scrolledComposite = new ScrolledComposite(
//										ctabFolder, SWT.H_SCROLL | SWT.V_SCROLL);
//								Composite compositTemp = new Composite(
//										scrolledComposite, SWT.NONE);
//								compositTemp.setLayout(new FillLayout());
//								scrolledComposite.setContent(compositTemp);
//								getParentGroupNode(selectedSegmentNode);
//
//								listView.createCombox(compositTemp,
//										selectedSegmentNode);
//								codeListCTab.setControl(scrolledComposite);
//								scrolledComposite.setExpandHorizontal(true);
//								scrolledComposite.setExpandVertical(true);
//								scrolledComposite.setMinWidth(250);
//								scrolledComposite.setMinHeight(1000);
//								ctabFolder.setSelection(1);
//								ctabFolder.redraw();
//
//								Combo[] coms = listView.getPropertyComb();
//								if (coms == null) {
//									return;
//								}
//								for (int i = 0; i < coms.length; i++) {
//									if (coms[i] == null) {
//										continue;
//									}
//									int comboStyle = coms[i].getStyle();
//									if (comboStyle == 33554692) {
//										coms[i].addFocusListener(new FocusListener() {
//											public void focusGained(
//													FocusEvent event) {
//											}
//
//											public void focusLost(
//													FocusEvent event) {
//												initTreeOrListMouseClick();
//												try {
//													firstListICOName = listView
//															.getFirstComboName();
//													listView.getListPropertyValue(selectedSegmentNode);
//													codeDesc = listView
//															.getCodeDesc()
//															.toString();
//													pattern = listView
//															.getPattern()
//															.toString();
//													icoPropertyMap = listView
//															.getIcoPropertyMap();
//													revText.setText(tccomponentitemtype
//															.getNewRev(null));
//
//													if (!TCPreferenceUitl
//															.isTrueTCPreferenceValue(
//																	session,
//																	origin_isItemNameTextDefaultNull)) {
//														nameText.setText(firstListICOName);
//													} else {
//														nameText.setText("");
//													}
//													getFinalPattern();
//													// idText.setText(pattern);
//													idText.setText(finalPattern);
//													setIDPatternTextIsCanEdit();
//													idLengthText.setText(String
//															.valueOf(idText
//																	.getText()
//																	.replace(
//																			" ",
//																			"")
//																	.trim()
//																	.length()));
//													DescText.setText(codeDesc);
//													setMidComposite();
//												} catch (Exception e1) {
//													e1.printStackTrace();
//												}
//											}
//										});
//									} else {
//										coms[i].addSelectionListener(new SelectionAdapter() {
//											public void widgetSelected(
//													SelectionEvent selectionevent) {
//												initTreeOrListMouseClick();
//												// MessageBox.post("jjjjjj","xxx",MessageBox.ERROR);
//												try {
//													firstListICOName = listView
//															.getFirstComboName();
//													listView.getListPropertyValue(selectedSegmentNode);
//													codeDesc = listView
//															.getCodeDesc()
//															.toString();
//													pattern = listView
//															.getPattern()
//															.toString();
//													icoPropertyMap = listView
//															.getIcoPropertyMap();
//													revText.setText(tccomponentitemtype
//															.getNewRev(null));
//
//													if (!TCPreferenceUitl
//															.isTrueTCPreferenceValue(
//																	session,
//																	origin_isItemNameTextDefaultNull)) {
//														nameText.setText(firstListICOName);
//													} else {
//														nameText.setText("");
//													}
//													getFinalPattern();
//													idText.setText(finalPattern);
//													// idText.setText(pattern);
//													setIDPatternTextIsCanEdit();
//													idLengthText.setText(String
//															.valueOf(idText
//																	.getText()
//																	.replace(
//																			" ",
//																			"")
//																	.trim()
//																	.length()));
//													DescText.setText(codeDesc);
//													setMidComposite();
//													
//
//												} catch (Exception e1) {
//													e1.printStackTrace();
//												}
//											}
//										});
//									}
//								}
//							}
//							if (tccomponentitemtype != null) {
//
//								// TODO
//								String type = tccomponentitemtype.getType();
//								if (type.equals("TM2_powder")) {
//									nameText.setEditable(false);
//								} else {
//									nameText.setEditable(true);
//								}
//								// MessageBox.post("TYPE =
//								// "+tccomponentitemtype.getType(),"Type",MessageBox.ERROR);
//							}
//						} catch (Exception e1) {
//							e1.printStackTrace();
//						}
//					}
//				});
//	}
//
//	
//
//	private void setIDPatternTextIsCanEdit() {
//		String realItemType = "Item";
//		if (segmentItemType != null) {
//			realItemType = (String) segmentItemType.get(selectedSegmentNode);
//		}
//		if (TCPreferenceUitl.isSelectExsitToTCPreferenceValues(session,
//				origin_isCodePatternCanEditTypes, realItemType)) {
//			idText.setEnabled(true);
//		}
//	}
//
//	public String replaceSpecialValue(String value) {
//		Date date = new Date(System.currentTimeMillis());
//		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
//		String dateStr = formatter.format(date);
//		String temps[] = dateStr.split("-");
//		if (value.contains(AutoCodeManagerPropertyName.Code_year4)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_year4,
//					temps[0]);
//			value = value + " ";
//		}
//		if (value.contains(AutoCodeManagerPropertyName.Code_year2)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_year2,
//					temps[0].substring(2));
//			value = value + " ";
//		}
//		if (value.contains(AutoCodeManagerPropertyName.Code_mouth1)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_mouth1,
//					temps[1]);
//			value = value + " ";
//		}
//		if (value.contains(AutoCodeManagerPropertyName.Code_mouth2)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_mouth2,
//					temps[1]);
//			value = value + " ";
//		}
//
//		if (value.contains(AutoCodeManagerPropertyName.Code_date1)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_date1,
//					temps[2]);
//			value = value + " ";
//		}
//		if (value.contains(AutoCodeManagerPropertyName.Code_date2)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_date2,
//					temps[2]);
//			value = value + " ";
//		}
//		// if (value.contains(AutoCodeManagerPropertyName.Code_seq)) {
//		// value = value.replace(AutoCodeManagerPropertyName.Code_seq, newSeq);
//		// value = value + " ";
//		// }
//		if (value.contains(AutoCodeManagerPropertyName.Code_pattern)) {
//			value = value.replace(AutoCodeManagerPropertyName.Code_pattern,
//					pattern);
//			value = value + " ";
//		}
//		return value;
//	}
//
//	public void getCodeInfo(AbstractTreeData treeData) {
//		if (treeData != null) {
//			AbstractTreeData parentData = treeData.getParentTreeData();
//			if ((parentData != null)
//					&& (parentData.getPackCodeNodeInfo().getNodeComponent() != null)) {
//				getCodeInfo(parentData);
//				String nodeValue = "";
//				String nodeName = "";
//				if (!parentData.getPackCodeNodeInfo().getNode_type()
//						.equals(AutoCodeManagerPropertyName.ItemName)) {
//					nodeValue = replaceSpecialValue(parentData
//							.getPackCodeNodeInfo().getNode_value());
//					nodeName = parentData.getPackCodeNodeInfo().getNode_name();
//				}
//				if (nodeValue.trim().length() > 0) {
//					pattern = pattern + nodeValue;
//					pattern = pattern + " ";
//					codeDesc = codeDesc + nodeValue;
//					codeDesc = codeDesc + "::";
//					codeDesc = codeDesc + nodeName;
//					codeDesc = codeDesc + "\n";
//				}
//				
//				
//				System.out.println("node_desc ===>"+treeData.getPackCodeNodeInfo().getNode_desc());
//			}
//		}
//	}
//
//	private void initTreeOrListMouseClick() {
//		try {
//			if (treeViewOperation.getSelectedTreeNode(classificationTreeViewer) == null) {
//				return;
//			}
//			icoPropertyMap = new HashMap<String, String>();
//			pattern = "";
//			codeDesc = "";
//			newSeq = "";
//			DescText.setText("");
//			setMidComposite();
//			codeCounterName = "";
//			idText.setText("");
//			if (unitCombo != null) {
//				unitCombo.setText("");
//			}
//			idText.setEnabled(false);
//			revText.setText(tccomponentitemtype.getNewRev(null));
//			idLengthText.setText("");
//			nameText.setText("");
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	
//	private void getClassANDPropertyInfo(AbstractTreeData treeData){
//		
//		
//		this.codeRemark = treeData.getPackCodeNodeInfo().getNode_desc();
//		String cnpartType = ""; //treeData.getPackCodeNodeInfo().getNode_type();
//		if (segmentItemType != null) {
//			cnpartType = (String) segmentItemType
//					.get(selectedSegmentNode);
//		}
//		System.out.println("cnpartType =>"+cnpartType);
//		this.cnpropList = new ArrayList<>();
//		this.currentCNPart = null;
//		if(this.cnPartList!=null && this.cnPartList.getPartList() !=null){
//			for(CNPart cnpart1 : this.cnPartList.getPartList() ){
//				if(cnpart1 !=null && cnpart1.getType().endsWith(cnpartType)){
//					this.currentCNPart = cnpart1;
//					if(cnpart1.getCompontentList()!=null ){
//						for(CNCompontent cncomp : cnpart1.getCompontentList()){
//							if(cncomp.getPropertyList()!=null){
//								for(CNProperty cnprop :cncomp.getPropertyList() ){
//									if(cnprop!=null){
//										this.cnpropList.add(cnprop);
//									}
//								}
//							}
//						}
//					}
//				}
//			}
//		}
//		//TODO CLASS
//		addClassPropComosite(codeRemark);
//		
//		if(this.cnpropList !=null){
//			for(CNProperty cnp : this.cnpropList){
//				cnp.initProperty();
//			}
//		}
//		addGeneralPropComosite();
//	}
//	
//	private void initClassificationMouseClick() {
//		try {
//			if (treeViewOperation.getSelectedTreeNode(classificationTreeViewer) == null) {
//				return;
//			}
//			icoPropertyMap = new HashMap<String, String>();
//			pattern = "";
//			codeDesc = "";
//			pattern = "";
//			newSeq = "";
//			codeCounterName = "";
//			DescText.setText("");
//			setMidComposite();
//			idText.setText("");
//			if (unitCombo != null) {
//				unitCombo.setText("");
//			}
//			idText.setEnabled(false);
//			idLengthText.setText("");
//			revText.setText(tccomponentitemtype.getNewRev(null));
//			nameText.setText("");
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//	}
//
//	public String getParentCodeData(AbstractTreeData treeData, String str) {
//		if (treeData != null) {
//			AbstractTreeData parentData = treeData.getParentTreeData();
//			if ((parentData != null)
//					&& (parentData.getPackCodeNodeInfo().getNodeComponent() != null)) {
//				str = getParentCodeData(parentData, str);
//				String nodeValue = parentData.getPackCodeNodeInfo()
//						.getNode_value();
//				if (nodeValue.trim().length() > 0) {
//					str = str + nodeValue;
//					str = str + " ";
//				}
//			}
//		}
//		return str;
//	}
//
//	public String getParentDescData(AbstractTreeData treeData, String str) {
//		if (treeData != null) {
//			AbstractTreeData parentData = treeData.getParentTreeData();
//			if ((parentData != null)
//					&& (parentData.getPackCodeNodeInfo().getNodeComponent() != null)) {
//				str = getParentDescData(parentData, str);
//				String nodeValue = parentData.getPackCodeNodeInfo()
//						.getNode_value();
//				String nodeDesc = parentData.getPackCodeNodeInfo()
//						.getNode_name();
//				if (nodeValue.trim().length() > 0) {
//					str = str + nodeValue;
//					str = str + "::";
//					str = str + nodeDesc;
//					str = str + "\n";
//				}
//			}
//		}
//		return str;
//	}
//
//	@Override
//	protected void buttonPressed(int buttonId) {
//		if (buttonId == IDialogConstants.YES_ID || buttonId == IDialogConstants.FINISH_ID) {
//			
//			if(buttonId == IDialogConstants.FINISH_ID){
//				isCreateTempItem = true;
//			}else{
//				isCreateTempItem = false;
//			}
//			
//			if ((newItemDialog != null) || (orNewItemInfoPanel != null)
//					|| (packCodeDescInfos != null)) {
//				long time1 = System.nanoTime();
//				transferInfoToDialog();
//				long time2 = System.nanoTime();
//				System.out.println("申請流水总用时(ms)： " + (time2 - time1) / 1000000);
//			} else {
//				long time1 = System.nanoTime();
//				createPressed();
//				long time2 = System.nanoTime();
//				System.out.println("创建总用时(ms)： " + (time2 - time1) / 1000000);
//			}
//		}
//		if (buttonId == IDialogConstants.CANCEL_ID) {
//			cancelPressed();
//		}
//	}
//
//	/**
//	 * 生成物料
//	 */
//	public void transferInfoToDialog() {
//		try {
//			if (!beforeGetNewSequenceNo()) {
//				return;
//			}
//			String tezh = idText.getText();
//			pattern = tezh.replaceAll(" ", "");
//
//			String realItemType = "Item";
//			if (segmentItemType != null) {
//				realItemType = (String) segmentItemType
//						.get(selectedSegmentNode);
//			}
//			// getSequenceNo(realItemType);
//			// while (newID == null || tccomponentitemtype.find(newID) != null)
//			// {
//			getSequenceNo(realItemType);
//			// }
//
//			if ((newID == null) || (newID.trim().length() == 0)) {
//				MessageBox.post("ID不能为空!", "INFO", MessageBox.WARNING);
//				return;
//			}
//			while (tccomponentitemtype.find(newID) != null) {
//				getSequenceNo(realItemType);
//			}
//			tccomponentitemtype = (TCComponentItemType) (session
//					.getTypeComponent(realItemType));
//			TCComponentItem oldItem = tccomponentitemtype.find(newID);
//			if (oldItem != null) {
//				new GetCodeNumber().delete_recycleID(counterID);
//				MessageBox.post("ID为【" + newID + "】的物料已经存在!", "INFO",
//						MessageBox.WARNING);
//				return;
//			} else {
//				String[] keys = { AutoCodeManagerPropertyName.Item_generateID };
//				String[] values = { newID };
//				InterfaceAIFComponent[] components = TCQueryUtil
//						.searchComponentsCollection(session,
//								origin_searchGenerateID, keys, values);
//				if (components != null) {
//					if (components.length > 0) {
//						new GetCodeNumber().delete_recycleID(counterID);
//						MessageBox.post("ID为【" + newID + "】的物料已经存在!", "INFO",
//								MessageBox.WARNING);
//						return;
//					}
//				}
//			}
//			if ((newItemDialog != null)
//					&& (newItemDialog instanceof ORSaveItemAsDialog)) {
//				ORSaveItemAsDialog orSaveItemAsDialog = (ORSaveItemAsDialog) newItemDialog;
//				if ((newID.length() > 0) && (revText.getText().length() > 0)) {
//					PackCodeDescInfos packCodeDescInfos = new PackCodeDescInfos();
//					// packCodeDescInfos.setCodeStyle(codeStyle);
//					packCodeDescInfos.setCodeStyle(finalPattern);
//
//					packCodeDescInfos.setCodetz(codeCounterName
//							.replace(" ", "").trim());
//					packCodeDescInfos.setGenerateID(newID);
//					packCodeDescInfos.setIdDesc(DescText.getText());
//					packCodeDescInfos.setIdjl(counterID);
//					packCodeDescInfos
//							.setSelectedSegmentNode(selectedSegmentNode);
//					orSaveItemAsDialog.setPackCodeDescInfos(packCodeDescInfos);
//
//					if (!TCPreferenceUitl.isSelectExsitToTCPreferenceValues(
//							session, origin_idNeddExamineAndApproveTypes,
//							realItemType)) {
//						orSaveItemAsDialog.setItemID(newID);
//					} else {
//						orSaveItemAsDialog.setItemID(tccomponentitemtype
//								.getNewID());
//					}
//					orSaveItemAsDialog.setItemName(nameText.getText());
//					orSaveItemAsDialog.setItemRev(revText.getText());
//				}
//			} else if ((orNewItemInfoPanel != null)
//					&& (orNewItemInfoPanel instanceof ORItemInfoPanel)) {
//				if (newID.length() > 0) {
//					ORNewItemDialog newItemDialog = (ORNewItemDialog) orNewItemInfoPanel.itemPanel.dialog;
//					PackCodeDescInfos packCodeDescInfos = new PackCodeDescInfos();
//					// packCodeDescInfos.setCodeStyle(codeStyle);
//					packCodeDescInfos.setCodeStyle(finalPattern);
//					packCodeDescInfos.setCodetz(codeCounterName
//							.replace(" ", "").trim());
//					packCodeDescInfos.setGenerateID(newID);
//					packCodeDescInfos.setIdDesc(DescText.getText());
//					packCodeDescInfos.setIdjl(counterID);
//					packCodeDescInfos
//							.setSelectedSegmentNode(selectedSegmentNode);
//					newItemDialog.setCodeDescInfos(packCodeDescInfos);
//
//					if (!TCPreferenceUitl.isSelectExsitToTCPreferenceValues(
//							session, origin_idNeddExamineAndApproveTypes,
//							realItemType)) {
//						orNewItemInfoPanel.setNewItemID(newID);
//					} else {
//						orNewItemInfoPanel.setNewItemID(tccomponentitemtype
//								.getNewID());
//					}
//					orNewItemInfoPanel.setNewItemRev(revText.getText());
//					orNewItemInfoPanel.setNewItemName(nameText.getText());
//				}
//
//			} else if (packCodeDescInfos != null) {
//				if (newID.length() > 0) {
//					// packCodeDescInfos.setCodeStyle(codeStyle);
//					packCodeDescInfos.setCodeStyle(finalPattern);
//					packCodeDescInfos.setCodetz(codeCounterName
//							.replace(" ", "").trim());
//					packCodeDescInfos.setGenerateID(newID);
//					packCodeDescInfos.setIdDesc(DescText.getText());
//					packCodeDescInfos.setIdjl(counterID);
//					packCodeDescInfos
//							.setSelectedSegmentNode(selectedSegmentNode);
//
//					if (!TCPreferenceUitl.isSelectExsitToTCPreferenceValues(
//							session, origin_idNeddExamineAndApproveTypes,
//							realItemType)) {
//						if (packCodeDescInfos.getIdValueIText() != null) {
//							packCodeDescInfos.getIdValueIText().setText(newID);
//						} else if (packCodeDescInfos.getIdValueJText() != null) {
//							packCodeDescInfos.getIdValueJText().setText(newID);
//						}
//					} else {
//						if (packCodeDescInfos.getIdValueIText() != null) {
//							packCodeDescInfos.getIdValueIText().setText(
//									tccomponentitemtype.getNewID());
//						} else if (packCodeDescInfos.getIdValueJText() != null) {
//							packCodeDescInfos.getIdValueJText().setText(
//									tccomponentitemtype.getNewID());
//						}
//					}
//					if (packCodeDescInfos.getRevValueIText() != null) {
//						packCodeDescInfos.getRevValueIText().setText(
//								this.revText.getText());
//					} else if (packCodeDescInfos.getRevValueJText() != null) {
//						packCodeDescInfos.getRevValueJText().setText(
//								this.revText.getText());
//					}
//					if (packCodeDescInfos.getNameValueIText() != null) {
//						packCodeDescInfos.getNameValueIText().setText(
//								this.nameText.getText());
//					} else if (packCodeDescInfos.getNameValueJText() != null) {
//						packCodeDescInfos.getNameValueJText().setText(
//								this.nameText.getText());
//					}
//				}
//			}
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//		super.okPressed();
//	}
//
//	@Override
//	protected void cancelPressed() {
//		try {
//			if ((orNewItemInfoPanel != null)
//					&& (orNewItemInfoPanel instanceof ORItemInfoPanel)) {
//
//				orNewItemInfoPanel.setNewItemID("");
//				orNewItemInfoPanel.setNewItemRev("");
//				orNewItemInfoPanel.setNewItemName("");
//
//			} else if ((newItemDialog != null)
//					&& (newItemDialog instanceof ORSaveItemAsDialog)) {
//				ORSaveItemAsDialog orSaveItemAsDialog = (ORSaveItemAsDialog) newItemDialog;
//				orSaveItemAsDialog.setItemID("");
//				orSaveItemAsDialog.setItemName("");
//				orSaveItemAsDialog.setItemRev("");
//			}
//
//			if (packCodeDescInfos != null) {
//				if (packCodeDescInfos.getIdValueIText() != null) {
//					packCodeDescInfos.getIdValueIText().setText("");
//				} else if (packCodeDescInfos.getIdValueJText() != null) {
//					packCodeDescInfos.getIdValueJText().setText("");
//				}
//				if (packCodeDescInfos.getRevValueIText() != null) {
//					packCodeDescInfos.getRevValueIText().setText("");
//				} else if (packCodeDescInfos.getRevValueJText() != null) {
//					packCodeDescInfos.getRevValueJText().setText("");
//				}
//				if (packCodeDescInfos.getNameValueIText() != null) {
//					packCodeDescInfos.getNameValueIText().setText("");
//				} else if (packCodeDescInfos.getNameValueJText() != null) {
//					packCodeDescInfos.getNameValueJText().setText("");
//				}
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		super.okPressed();
//	}
//
//	public String getID(String value) {
//		String id = replaceSpecialValue(value);
//		return id.replace(" ", "").trim();
//	}
//
//	private void getFinalPattern() {
//		int codeSeqLength = 0;
//		try {
//			if (selectedSegmentTCComponent != null) {
//				String[] propNames = {
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_code_style,
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_code_length,
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_seq_length };
//				String[] propValues = selectedSegmentTCComponent
//						.getProperties(propNames);
//				codeStyle = propValues[0];
//				codeLength = Integer.valueOf(propValues[1]);
//				codeSeqLength = Integer.valueOf(propValues[2]);
//			}
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//
//		String realItemType = "";
//		if (segmentItemType != null) {
//			realItemType = (String) segmentItemType.get(selectedSegmentNode);
//		}
//
//		String patternStyle = codeStyle;
//
//		HashMap<String, String> sequenceMap = TCPreferenceUitl
//				.getPreferenceHashMap(session, 4, origin_newCodeSequenceNumber);
//		if ((sequenceMap != null) && (sequenceMap.size() > 0)) {
//			String sequences = sequenceMap.get(realItemType
//					+ "&&"
//					+ selectedSegmentNode.getPackCodeNodeInfo().getNode_name()
//							.trim());
//			if (sequences != null) {
//				String[] nums = sequences.split(";");
//				if ((nums != null) && (nums.length > 0)) {
//					String[] codeDesc1 = codeDesc.split("\n");
//					if ((codeDesc1 != null)) {
//						int descLength = codeDesc1.length;
//						String newPattern = "";
//						for (int n = 0; n < nums.length; n++) {
//							String num = nums[n];
//							int index = Integer.valueOf(num);
//							if ((descLength >= index) && (index - 1 >= 0)) {
//								String desc = codeDesc1[index - 1];
//								String[] codeDesc2 = desc.split("::");
//								if (codeDesc2.length == 2) {
//									newPattern = newPattern + codeDesc2[0];
//									newPattern = newPattern + " ";
//								}
//							}
//						}
//						pattern = newPattern;
//					}
//				}
//			}
//		}
//		pattern = replaceSpecialValue(patternStyle);
//		int coverNum = codeLength - pattern.replace(" ", "").trim().length()
//				- codeSeqLength;
//		String coverStr = "";
//		if (coverNum > 0) {
//			for (int i = 0; i < coverNum; i++) {
//				coverStr = coverStr + "0";
//			}
//			if (coverStr.trim().length() > 0) {
//				pattern = pattern + coverStr + " ";
//			}
//		}
//
//		finalPattern = pattern;
//		pattern = pattern.replace(" ", "");
//
//	}
//
//	public void getSequenceNo(String realItemType) {
//		long time1 = System.nanoTime();
//		try {
//			TCComponent seqComponent = selectedSegmentTCComponent
//					.getReferenceProperty(AutoCodeManagerPropertyName.TreeAndListCodeNode_rule_node);
//			if (seqComponent != null) {
//				String[] seqPropertys = {
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_code_style,
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_code_length,
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_seq_begin_value,
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_seq_length,
//						AutoCodeManagerPropertyName.TreeAndListCodeNode_seq_max_value };
//				String[] seqValues = seqComponent.getProperties(seqPropertys);
//				try {
//					codeStyle = seqValues[0];
//					codeLength = Integer.valueOf(seqValues[1]);
//					int startValue = Integer.valueOf(seqValues[2]);
//					int codeSeqLength = Integer.valueOf(seqValues[3]);
//					int endValue = Integer.valueOf(seqValues[4]);
//					int increaseStep = 1;
//					String excludeStr = "";
//
//					if (startValue < 1) {
//						startValue = 1;
//					}
//
//					finalPattern = this.idText.getText();
//
//					idPattern = finalPattern;
//					int seqIndex = idPattern
//							.indexOf(AutoCodeManagerPropertyName.Code_seq);
//					if (seqIndex > -1) {
//						idPattern = idPattern.substring(0, seqIndex);
//					}
//
//					String segmentPattern = selectedSegmentNode
//							.getPackCodeNodeInfo().getNode_value();
//					segmentPattern = replaceSpecialValue(segmentPattern)
//							.replace(" ", "");
//					String seqPattern = excludeFirstPattern(idPattern,
//							realItemType).replace(" ", "");
//					if ((seqIndex == -1)) {
//						codeCounterName = idPattern + "$" + codeSeqLength + "$"
//								+ startValue + "$" + endValue + "$"
//								+ increaseStep;
//						counterID = seqPattern.replace(" ", "");
//						newID = idPattern.replace(" ", "");
//					} else {
//						codeCounterName = seqPattern + "$" + codeSeqLength
//								+ "$" + startValue + "$" + endValue + "$"
//								+ increaseStep;
//						String newCodeNum = new GetCodeNumber().getCodeNumber(
//								seqPattern, codeSeqLength, startValue,
//								endValue, increaseStep, excludeStr);
//						counterID = newCodeNum.replace(" ", "");
//						String newSeq = "";
//						newSeq = newCodeNum.substring(newCodeNum
//								.indexOf(seqPattern) + seqPattern.length());
//						String newCodeNum2 = finalPattern.replace(
//								AutoCodeManagerPropertyName.Code_seq, newSeq);
//						newID = newCodeNum2.replace(" ", "");
//					}
//				} catch (ServiceException e) {
//					e.printStackTrace();
//				}
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		long time2 = System.nanoTime();
//		System.out.println("申请流水用时(ms)： " + (time2 - time1) / 1000000);
//		return;
//	}
//
//	private String excludeFirstPattern(String seqPattern, String realItemType) {
//		if (TCPreferenceUitl.isSelectExsitToTCPreferenceValues(session,
//				origin_sequenceExcludeFirstPatternTypes, realItemType)) {
//			String segmentPattern = selectedSegmentNode.getPackCodeNodeInfo()
//					.getNode_value();
//			int segmentPatternLength = segmentPattern.length();
//			if (segmentPatternLength > 0) {
//				segmentPattern = replaceSpecialValue(segmentPattern).replace(
//						" ", "");
//				segmentPatternLength = segmentPattern.length();
//				seqPattern = seqPattern.substring(segmentPatternLength);
//			}
//		}
//		return seqPattern;
//	}
//
//	public void orCustomizationAction() {
//		new ORAfterNewItemCustomization(this, newComp);
//	}
//
//	private boolean isHaveWritePrivilige(TCComponent component) {
//		boolean privilige = true;
//		try {
//			TCComponentUser user = session.getUser();
//			TCComponentGroup group = session.getCurrentGroup();
//			TCComponentRole role = session.getCurrentRole();
//
//			TCComponent coms[] = { user, group, role };
//			TCAccessControlService service = session
//					.getTCAccessControlService();
//			boolean[] flags = service.checkAccessorsPrivileges(coms, component,
//					new String[] { "WRITE" });
//			for (boolean b : flags) {
//				if (!b) {
//					privilige = false;
//					break;
//				}
//			}
//		} catch (TCException e) {
//			e.printStackTrace();
//		}
//		return privilige;
//	}
//
//	
//
//	
//	/**
//	 * 设置对象的属性匹配
//	 * @param createInput
//	 * @param cnProperties
//	 */
//	private void setPropMapping(CreateInput createInput,List<CNProperty> cnProperties,Map<String, Object> stringMappingOld){
//		if(cnProperties ==null){
//			return;
//		}
//		Map<String, Object> stringMapping = new HashMap<>();
//		if(stringMappingOld!=null){
//			stringMapping = stringMappingOld;
//		}
//		
//		Map<String, Object> intMapping = new HashMap<>();
//		Map<String, Object> dateMapping=new HashMap<>();
//		Map<String, Object> booleanMapping=new HashMap<>();
//		Map<String, Object> doubleMapping=new HashMap<>();
//		
//		
//		for(CNProperty prop : cnProperties){
//			if(prop ==null){
//				continue;
//			}
//			//System.out.println( "PROP MAP >>>>"+prop.getRealName()+"<===>"+prop.value);
//			switch(prop.getPropertyType().toUpperCase()){
//			case "STRING":
//				stringMapping.put(prop.getRealName(), prop.value==null?"":prop.value);
//				break;
//			case "INTEGER":
//				intMapping.put(prop.getRealName(),prop.value==null?"":prop.value);
//				break;
//			case "DATE":
//				dateMapping.put(prop.getRealName(), prop.value==null?"":prop.value);
//				break;
//			case "BOOLEAN":
//				booleanMapping.put(prop.getRealName(),prop.value==null?"":prop.value);
//				break;
//			case "DOUBLE":
//				doubleMapping.put(prop.getRealName(),prop.value==null?"":prop.value);
//				break;
//			default :
//				break;
//			}
//		}
//		createInput.stringProps = stringMapping;
//		createInput.intProps = intMapping;
//		createInput.dateProps = dateMapping;
//		createInput.boolProps = booleanMapping;
//		createInput.doubleProps = doubleMapping;
//		
//	}
//	
//	
//	/**
//	 * 通过SOA创建对象
//	 * @param itemID
//	 * @param itemRev
//	 * @param itemType
//	 * @param itemName
//	 * @param itemDesc
//	 * @param iComp
//	 * @param imComp
//	 * @param rComp
//	 * @param rmComp
//	 */
//	private void createNewItemSoa2(String itemID, String itemRev,
//			String itemType, String itemName, String itemDesc,
//			CNCompontent iComp,
//			CNCompontent imComp,
//			CNCompontent rComp,
//			CNCompontent rmComp
//			) {
//		
//		try {
//			com.teamcenter.services.rac.core._2008_06.DataManagement.CreateInput itemInput = new com.teamcenter.services.rac.core._2008_06.DataManagement.CreateInput();
//			itemInput.boName = itemType;
//			System.out.println("Item Type  =>>>>"+itemType);
//			Map<String, Object> itemStringMap = new HashMap();
//			itemStringMap.put("object_name", itemName);
//			itemStringMap.put("item_id", itemID);
//			itemStringMap.put("object_desc", itemDesc);
//			if(iComp !=null){
//				setPropMapping(itemInput,iComp.getPropertyList(), itemStringMap);
//			}else{
//			    itemInput.stringProps = itemStringMap;
//			}
//			Map<String, CreateInput[]> compMap = new HashMap();
//			CreateInput[] compInputS = new CreateInput[1];
//			compInputS[0] = new CreateInput();
//			
//			Map<String, Object> compStringMap = new HashMap();
//			compStringMap.put("item_revision_id", itemRev);
//			if(rComp ==null){
//				compInputS[0].boName = itemType +"Revision";
//				compInputS[0].stringProps = compStringMap;
//			}else{
//				compInputS[0].boName = rComp.getCompententType();
//				setPropMapping(compInputS[0],rComp.getPropertyList(),compStringMap);
//			}
//			Map<String, Object> compStringMap2 = new HashMap();
//			CreateInput[] formCompInputS = new CreateInput[1];
//			formCompInputS[0] = new CreateInput();
//			
//			if(rmComp ==null){
//				formCompInputS[0].boName =  itemType +"RevisionMaster";
//				formCompInputS[0].stringProps =compStringMap2;
//			}else{
//				formCompInputS[0].boName = rmComp.getCompententType();
//				setPropMapping(formCompInputS[0], rmComp.getPropertyList(), compStringMap2);
//			}
//			Map<String, CreateInput[]> formCompMap = new HashMap();
//			formCompMap.put("IMAN_master_form_rev", formCompInputS);
//			
//			compInputS[0].compoundCreateInput = formCompMap;
//
//			compMap.put("revision", compInputS);
//			itemInput.compoundCreateInput = compMap;
//
//			DataManagementService datamanagementservice = DataManagementService
//					.getService(session);
//			com.teamcenter.services.rac.core._2008_06.DataManagement.CreateIn createin = new com.teamcenter.services.rac.core._2008_06.DataManagement.CreateIn();
//			createin.clientId = "Test";
//			createin.data = itemInput;
//			System.out.println("11111111111111");
//			com.teamcenter.services.rac.core._2008_06.DataManagement.CreateResponse createresponse = datamanagementservice
//					.createObjects(new com.teamcenter.services.rac.core._2008_06.DataManagement.CreateIn[] { createin });
//			
//			
//			SoaUtil.handlePartialErrors(createresponse.serviceData, null, null,
//					true);
//			com.teamcenter.services.rac.core._2008_06.DataManagement.CreateOut acreateout[] = createresponse.output;
//			if (acreateout != null && acreateout.length > 0) {
//				ArrayList arraylist = new ArrayList(0);
//				com.teamcenter.services.rac.core._2008_06.DataManagement.CreateOut acreateout1[];
//				int j = (acreateout1 = acreateout).length;
//				for (int i = 0; i < j; i++) {
//					com.teamcenter.services.rac.core._2008_06.DataManagement.CreateOut createout = acreateout1[i];
//					TCComponent atccomponent[] = createout.objects;
//					if (atccomponent != null && atccomponent.length > 0) {
//						arraylist.addAll(Arrays.asList(atccomponent));
//						newComp = atccomponent[0];
//					}
//				}
//			}
//		} catch (ServiceException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		} catch (TCExceptionPartial e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//	}
//	
//	/**
//	 * 初始化属性值
//	 */
//	public boolean finitPropList(){
//		for(int i = 0 ;i < this.cnpropList.size();i++){
//			Widget wd = generalPropTextList.get(i);
//			
//			
//			if(wd instanceof Text){
//				 if(cnpropList.get(i).getPropertyType().toUpperCase().endsWith("STRING")){
//					 
//					 cnpropList.get(i).value = ((Text)wd).getText();
//				}else if(cnpropList.get(i).getPropertyType().toUpperCase().endsWith("INTEGER")){
//					if(!((Text)wd).getText().replace(" ", "").endsWith("")){
//						cnpropList.get(i).value = Integer.parseInt(((Text)wd).getText().replace(" ", ""));
//					}else{
//						cnpropList.get(i).value = 0;
//					}
//				}else if(cnpropList.get(i).getPropertyType().toUpperCase().endsWith("DOUBLE")){//
//					if(!((Text)wd).getText().replace(" ", "").endsWith("")){
//						cnpropList.get(i).value = Double.parseDouble(((Text)wd).getText().replace(" ", ""));
//					}else{
//						cnpropList.get(i).value = 0;
//					}
//				}
//			}else if(wd instanceof DateTime){
//				cnpropList.get(i).value = wd.getData();
//			}else if(wd instanceof Combo){
//				if(cnpropList.get(i).getIsLov()){
//					int index = ((Combo) wd).getSelectionIndex();
//					if(index != -1){
//						cnpropList.get(i).value = cnpropList.get(i).lovValueList.get(index);
//					}
//					
//				}else if(cnpropList.get(i).getPropertyType().toUpperCase().endsWith("BOOLEAN")){
//					
//					if(!((Combo) wd).getText().replace(" ", "").endsWith("")){
//						cnpropList.get(i).value = Boolean.parseBoolean(((Combo) wd).getText());
//					}
//				}
//				
//			}
//			if(cnpropList.get(i).getIsMust()){
//				if(cnpropList.get(i).value == null){
//					return false;
//				}
//			}
//		}
//		
//		return true;
//	}
//	
//	private void createNewItem(String itemID, String itemRev, String itemType,
//		String itemName, String itemDesc) {
//		
//		
//		
//		try {
//			if(!finitPropList()){
//				MessageBox.post("请填写必填属性","错误",MessageBox.ERROR);
//				return;
//			}
//			
//			TCComponent targetObject = (TCComponent) AIFUtility
//					.getCurrentApplication().getTargetComponent();
//			
//			CNCompontent iCNComp = null;
//			CNCompontent imCNComp = null;
//			CNCompontent rCNComp = null;
//			CNCompontent rmCNComp = null;
//			if(this.currentCNPart !=null){
//				for(CNCompontent cnComp : this.currentCNPart.getCompontentList()){
//					switch(cnComp.getType()){
//					case "I":
//						iCNComp = cnComp;
//						break;
//					case "IM":
//						imCNComp = cnComp;
//						break;
//					case "R":
//						rCNComp = cnComp;
//						break;
//					case "RM":
//						rmCNComp = cnComp;
//						break;
//					default :
//						break;
//					
//					}
//				}
//			}
//			
//			createNewItemSoa2(itemID, revText.getText(), itemType,
//					itemName, "", iCNComp,imCNComp,rCNComp,rmCNComp);
//			if (targetObject instanceof TCComponentFolder) {
//	
//				if (newComp != null) {
//					TCComponentFolder folder = (TCComponentFolder) targetObject;
//					if (isHaveWritePrivilige(folder)) {
//						folder.add("contents", newComp);
//						folder.refresh();
//					} else {
//						session.getUser().getNewStuffFolder()
//								.add("contents", newComp);
//						session.getUser().getNewStuffFolder().refresh();
//					}
//				}
//			} else if (targetObject instanceof TCComponentPseudoFolder) {
//				
//				if (newComp != null) {
//					if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//							origin_isNotSaveNewItemToPseudoFolder)) {
//						session.getUser().getNewStuffFolder()
//								.add("contents", newComp);
//						session.getUser().getNewStuffFolder().refresh();
//					} else {
//						TCComponentPseudoFolder folder = (TCComponentPseudoFolder) targetObject;
//						String propertyName = folder
//								.getProperty("property_name");
//						TCComponent ownerComponent = folder
//								.getOwningComponent();
//						if (ownerComponent != null) {
//							ownerComponent.add(propertyName, newComp);
//							ownerComponent.refresh();
//						}
//					}
//				}
//			} else {
//				
//				if (newComp != null) {
//					session.getUser().getNewStuffFolder()
//							.add("contents", newComp);
//					session.getUser().getNewStuffFolder().refresh();
//				}
//			}
//			if (newComp != null) {
//				// TODO 设置属性
//				// 版本
//				TCComponentItemRevision rev = ((TCComponentItem) newComp)
//						.getLatestItemRevision();
//				
//				System.out.println("LP > <"+LPBIGString+">  <"+LPSString+">");
//				TCProperty[] lpprops = null;
//				if(rev.getType().equals("LP2_Elc_CompRevision")){
//					lpprops = rev.getTCProperties(new String[]{"lp2_Elc_Comp_Parent","lp2_Elc_Part_Child"});
//				}else if(rev.getType().equals("LP2_Elc_PartRevision")){
//					lpprops = rev.getTCProperties(new String[]{"lp2_Elc_Part_Parent","lp2_Elc_Part_Child"});
//				}
//				if(lpprops!=null){
//					if(lpprops[1] !=null){
//						TCComponentListOfValues lov = lpprops[1].getLOV();
//						if(lov !=null){
//							ListOfValuesInfo lovinfo = lov.getListOfValues();
//							List<LovValue> lovValueList = lovinfo.getValues();
//							for(LovValue lv : lovValueList){
//								if(lv.getDisplayValue().endsWith(LPBIGString)){
//									lpprops[1].setStringValue((String)lv.getValue());
//								}
//							}
//						}else{
//							
//							lpprops[1].setStringValue(LPBIGString);
//						}
//						rev.lock();
//						rev.setTCProperty(lpprops[1]);
//						rev.save();
//						rev.unlock();
//					}
//					if(lpprops[2]!=null){
//						TCComponentListOfValues lov = lpprops[2].getLOV();
//						if(lov !=null){
//							ListOfValuesInfo lovinfo = lov.getListOfValues();
//							List<LovValue> lovValueList = lovinfo.getValues();
//							for(LovValue lv : lovValueList){
//								if(lv.getDisplayValue().endsWith(LPSString)){
//									lpprops[2].setStringValue((String)lv.getValue());
//								}
//							}
//						}else{
//							
//							lpprops[2].setStringValue(LPSString);
//						}
//						rev.lock();
//						rev.setTCProperty(lpprops[2]);
//						rev.save();
//						rev.unlock();
//					}
//				}
//				
//
//				
//			}
//
//			if (targetObject != null) {
//				targetObject.refresh();
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//	}
//	
//	
//	
//	
//	
//	
//	
//
//	
//
//	private boolean beforeGetNewSequenceNo() {
//		if (selectedSegmentNode.getPackCodeNodeInfo().getNode_type()
//				.equals(AutoCodeManagerPropertyName.ListName)) {
//			if (listView != null) {
//				Combo[] propCombos = listView.getPropertyComb();
//				Label[] propLabels = listView.getPropertyLabel();
//				if ((propCombos != null) && (propCombos.length > 0)) {
//					for (int i = 0; i < propCombos.length; i++) {
//						if (propCombos[i].getSelectionIndex() == -1) {
//							if ((propCombos[i].getText() != null)
//									&& (propCombos[i].getText().length() == 0)) {
//								MessageBox.post("【" + propLabels[i].getText()
//										+ "】必填！", "INFO", MessageBox.WARNING);
//								return false;
//							}
//						}
//					}
//				}
//			}
//		}
//		if (selectedSegmentNode.getPackCodeNodeInfo().getNode_type()
//				.equals(AutoCodeManagerPropertyName.TreeName)) {
//			if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//					origin_isNewItemMustLastNode)) {
//				int childrenNum = icoTreeData.getChildrenDatas().length;
//				if (childrenNum > 0) {
//					MessageBox.post("请选择末端节点!", "INFO", MessageBox.WARNING);
//					return false;
//				}
//			}
//		}
//		String tezh = idText.getText();
//		if ((tezh == null) || (tezh.trim().length() == 0)) {
//			MessageBox.post("特征码不能为空!", "INFO", MessageBox.WARNING);
//			return false;
//		}
//		return true;
//	}
//	
//	/**
//	 * 生成九阳新ID
//	 * @param newID
//	 * @return
//	 */
//	private String getJYNewID(String newID){
//		String jyNewID =newID;
//		if(cpxText!=null){
//			jyNewID = jyNewID.replace(CPX, cpxText.getText());
//		}
//		if(nfText !=null){
//			jyNewID = jyNewID.replace(NF, nfText.getText().substring(2, 4)+"-");
//		}
//		if(cpxText2 !=null){
//			String cpx = cpxText2.getText();
//			String value = jyCPXMap.get(cpx);
//			jyNewID = jyNewID.replace(CPX2, value+"-");
//		}
//		return jyNewID;
//	}
//
//	public void createPressed() {
//		try {
//			/*
//			 * (org.eclipse.swt.widgets.Shell parent, 
//			 * java.lang.String msg, 
//			 * java.lang.Throwable t, 
//			 * boolean callStack, 
//			 * java.lang.String title, 
//			 * int type, 
//			 * boolean showDetailsInitially, 
//			 * java.lang.String cookieName)
//			 */
//			//MessageBox.post(PlatformHelper.getCurrentShell(),"1111",null,true,"ok",4,true,"ss");
//			
//		     
//			if(checkClassficationICO()){
//			
//				//MessageBox.post("分类库中存在相同属性的分类对象,请重新填写分类属性!", "INFO", MessageBox.WARNING);
//				return ;
//			}
//			if (!beforeGetNewSequenceNo()) {
//				return;
//			}
//			if(cpxText2!=null && cpxText2.getText().trim().isEmpty()){
//				MessageBox.post("请填写[产品线]!", "INFO", MessageBox.WARNING);
//				return;
//			}
//			if(cpxText!=null && cpxText.getText().trim().isEmpty()){
//				MessageBox.post("请填写[产品代码]!", "INFO", MessageBox.WARNING);
//				return;
//			}
//			if(nfText !=null && nfText.getText().trim().isEmpty()){
//				MessageBox.post("请填写[年份]!", "INFO", MessageBox.WARNING);
//				return;
//			}
//			// if (!isMust()) {
//			// MessageBox.post("请填写[物料来源码]属性!", "INFO", MessageBox.WARNING);
//			// return;
//			// }
//			if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//					origin_isMustSelecteUnit)) {
//				if (unitCombo != null && unitCombo.isEnabled()) {
//					if ((unitCombo.getSelectionIndex() == -1)
//							|| (unitCombo.getText().trim().length() == 0)) {
//						MessageBox.post("请选择单位!", "INFO", MessageBox.WARNING);
//						return;
//					}
//				}
//			}
//			String tezh = idText.getText();
//			String nameTextValue = nameText.getText();
//			String type = tccomponentitemtype.getType();
//			if (!type.equals("TM2_powder"))
//				if ((nameTextValue == null)
//						|| (nameTextValue.trim().length() == 0)) {
//					MessageBox.post("名称不能为空!", "INFO", MessageBox.WARNING);
//					return;
//				}
//			pattern = tezh.replaceAll(" ", "");
//
//			if (treeViewOperation.getSelectedTreeNode(classificationTreeViewer) == null) {
//				return;
//			}
//			String realItemType = "Item";
//			if (segmentItemType != null) {
//				realItemType = (String) segmentItemType
//						.get(selectedSegmentNode);
//			}
//
//			// if (codeStyle.contains(AutoCodeManagerPropertyName.Code_seq)) {
//
//			// while (newID == null || tccomponentitemtype.find(newID) != null)
//			// {
//			getSequenceNo(realItemType);
//			// }
//			// }
//
//			if ((newID == null) || (newID.trim().length() == 0)) {
//				MessageBox.post("ID不能为空!", "INFO", MessageBox.WARNING);
//				return;
//			}
//			//不是创建临时物料的时候，需要做ID检查
//			if(!this.isCreateTempItem){
//				//NEW_ID:
//				int ii = 0;
//				while (tccomponentitemtype.find(getJYNewID(newID)) != null && ii!=5) {
//					ii ++;
//					System.out.println("newID = " + newID + "已经存在");
//					getSequenceNo(realItemType);
//					if ((newID == null) || (newID.trim().length() == 0)) {
//						MessageBox.post("ID不能为空!", "INFO", MessageBox.WARNING);
//						return;
//					}
//					new GetCodeNumber().delete_recycleID(counterID);
//					try {
//						new Thread().sleep(500);
//					} catch (InterruptedException e) {
//						// TODO Auto-generated catch block
//						e.printStackTrace();
//					}
//					System.out.println("-------");
//				}
//				tccomponentitemtype = (TCComponentItemType) (session
//						.getTypeComponent(realItemType));
//				TCComponentItem oldItem = tccomponentitemtype.find(getJYNewID(newID));
//				if (oldItem != null) {
//					MessageBox.post("ID为【" + getJYNewID(newID) + "】的物料已经存在!", "INFO",
//							MessageBox.WARNING);
//					new GetCodeNumber().delete_recycleID(counterID);
//					return;
//				}
//			}
//			
//			long time11 = System.nanoTime();
//
//			if (!TCPreferenceUitl.isSelectExsitToTCPreferenceValues(session,
//					origin_idNeddExamineAndApproveTypes, realItemType)) {
//				if(this.isCreateTempItem){
//					try {
//						tccomponentitemtype = (TCComponentItemType) (session
//								.getTypeComponent("JK8LSMaterial"));
//						String itemID = tccomponentitemtype.getNewID();
//						createNewItem(itemID, revText.getText(), "JK8LSMaterial",
//								nameText.getText(), "");
//						
//					} catch (TCException e) {
//						// TODO Auto-generated catch block
//						e.printStackTrace();
//					}
//				}else{
//				
//				createNewItem(getJYNewID(newID), revText.getText(), realItemType,
//						nameText.getText(), "");
//				}
//			} else {
//				createNewItem(tccomponentitemtype.getNewID(),
//						revText.getText(), realItemType, nameText.getText(), "");
//			}
//			long time12 = System.nanoTime();
//			System.out.println("创建item用时(ms)： " + (time12 - time11) / 1000000);
//
//			
//				
//			
//			if (newComp != null) {
//				//sendObjToClassfication((TCComponentItem)newComp);
//				sendObjToClassficationByWebService((TCComponentItem)newComp);
//				newComp.refresh();
//				new GetCodeNumber().delete_recycleID(counterID);
//				setClipboard(newID);
//				PackCodeDescInfos packCodeDescInfos = new PackCodeDescInfos();
//				// packCodeDescInfos.setCodeStyle(codeStyle);
//				packCodeDescInfos.setCodeStyle(finalPattern);
//				packCodeDescInfos.setCodetz(codeCounterName.replace(" ", "")
//						.trim());
//				packCodeDescInfos.setGenerateID(newID);
//				packCodeDescInfos.setIdDesc(DescText.getText());
//				packCodeDescInfos.setIdjl(counterID);
//				packCodeDescInfos.setSelectedSegmentNode(selectedSegmentNode);
//
//				ORSaveObjectDescOperation orSaveObjectDescOperation = new ORSaveObjectDescOperation(
//						newComp);
//				orSaveObjectDescOperation.saveObject_Desc(packCodeDescInfos);
//				if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//						origin_isShowPCUnitLast)) {
//					if ((unitCombo != null)
//							&& (unitCombo.getSelectionIndex() >= 0)
//							&& (unitCombo.getSelectionIndex() != (units.length))) {
//						orSaveObjectDescOperation.saveUom_tag(units[unitCombo
//								.getSelectionIndex()]);
//					}
//				} else {
//					if ((unitCombo != null)
//							&& (unitCombo.getSelectionIndex() > 0)) {
//						orSaveObjectDescOperation.saveUom_tag(units[unitCombo
//								.getSelectionIndex() - 1]);
//					}
//				}
//				if (TCPreferenceUitl.isTrueTCPreferenceValue(session,
//						origin_sendToClassification_Automatic)) {
//					long time31 = System.nanoTime();
//					if (!TCPreferenceUitl.isSelectExsitToTCPreferenceValues(
//							session, origin_sendToClassification_excludeType,
//							newComp.getType())) {
//						AbstractTreeData selectedSegment = treeViewOperation
//								.getSelectedTreeNode(classificationTreeViewer);
//						if (selectedSegment.getPackCodeNodeInfo()
//								.getNode_type()
//								.equals(AutoCodeManagerPropertyName.ListName)) {
//							new ORCreateICOObject().createListNodeICObject(
//									selectedSegment, firstListICOName,
//									firstListICOName,
//									(TCComponentItem) newComp, icoPropertyMap);
//						} else if (selectedSegment.getPackCodeNodeInfo()
//								.getNode_type()
//								.equals(AutoCodeManagerPropertyName.TreeName)) {
//							if (TCPreferenceUitl
//									.isSelectExsitToTCPreferenceValues(session,
//											origin_sendToPreviousTreeNode,
//											newComp.getType())) {
//								new ORCreateICOObject().createTreeNodeICObject(
//										icoTreeData.getParentTreeData()
//												.getParentTreeData(),
//										icoTreeData.getParentTreeData(),
//										(TCComponentItem) newComp,
//										icoPropertyMap);
//							} else {
//								new ORCreateICOObject().createTreeNodeICObject(
//										icoTreeData.getParentTreeData(),
//										icoTreeData, (TCComponentItem) newComp,
//										icoPropertyMap);
//							}
//						}
//					} else {
//						MessageBox.post("零组件" + newComp + "创建成功!", "INFO",
//								MessageBox.WARNING);
//					}
//					long time32 = System.nanoTime();
//					System.out.println("分类总用时(ms)： " + (time32 - time31)
//							/ 1000000);
//				} else {
//					MessageBox.post("零组件" + newComp + "创建成功!", "INFO",
//							MessageBox.WARNING);
//				}
//				orCustomizationAction();
//			} else {
//				MessageBox.post("零组件创建失败!", "INFO", MessageBox.WARNING);
//			}
//		} catch (TCException e) {
//			e.printStackTrace();
//			MessageBox.post("创建异常:" + e.getMessage(), "INFO",
//					MessageBox.WARNING);
//		}
//	}
//
//	@Override
//	protected int getShellStyle() {
//		return super.getShellStyle() | SWT.RESIZE | SWT.MAX;
//	}
//
//	@Override
//	public boolean close() {
//		return super.close();
//	}
//
//	// 设置对话框初始大小
//	@Override
//	protected Point getInitialSize() {
//		return new Point(800, 500);
//	}
//
//	protected void createButtonsForButtonBar(final Composite parent) {
//		
//		if ((newItemDialog != null) || (orNewItemInfoPanel != null)
//				|| (packCodeDescInfos != null)) {
//			this.isCreateTempItemButton =	createButton(parent, IDialogConstants.FINISH_ID, "新建临时物料", false);
//			createButton(parent, IDialogConstants.YES_ID, "生成ID", false);
//			createButton(parent, IDialogConstants.CANCEL_ID, "取消", false);
//		} else {
//			session = (TCSession) AIFUtility.getCurrentApplication()
//					.getSession();
//			String origin_newItemButtonName = "origin_newItemButtonName";
//			String name = TCPreferenceUitl.getTCPreferenceValue(session,
//					origin_newItemButtonName);
//			
//			this.isCreateTempItemButton  = createButton(parent, IDialogConstants.FINISH_ID, "新建临时物料", false);
//			
//			if ((name != null) && (name.trim().length() > 0)) {
//				createButton(parent, IDialogConstants.YES_ID, name, false);
//			} else {
//				createButton(parent, IDialogConstants.YES_ID, "新建", false);
//			}
//			
//			createButton(parent, IDialogConstants.CANCEL_ID, "取消", false);
//		}
//		String isCanTeam  =TCPreferenceUitl.getTCPreferenceValue(session, connor_isCanCreateTempMaterial);
//		
//		if((isCanTeam != null) && (isCanTeam.trim().length() > 0) && isCanTeam.toLowerCase().equals("true")){
//			this.isCreateTempItemButton .setVisible(true);
//		}else{
//			this.isCreateTempItemButton .setVisible(false);
//		}
//		
//	}
//
//	public void setClipboard(String str) {
//		try {
//			if (!"".equals(str)) {
//				StringSelection ss = new StringSelection(str);
//				Toolkit.getDefaultToolkit().getSystemClipboard()
//						.setContents(ss, null);
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//	}
//}
