|
|
|
@ -0,0 +1,476 @@
|
|
|
|
|
package com.connor.dfl.plm.dfl028;
|
|
|
|
|
|
|
|
|
|
import java.awt.Component;
|
|
|
|
|
import java.awt.Dimension;
|
|
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
|
import java.awt.event.ActionListener;
|
|
|
|
|
import java.io.File;
|
|
|
|
|
import java.io.FileInputStream;
|
|
|
|
|
import java.io.FileOutputStream;
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
import javax.swing.JButton;
|
|
|
|
|
import javax.swing.JCheckBox;
|
|
|
|
|
import javax.swing.JFileChooser;
|
|
|
|
|
import javax.swing.JLabel;
|
|
|
|
|
import javax.swing.JPanel;
|
|
|
|
|
import javax.swing.JTextField;
|
|
|
|
|
import javax.swing.filechooser.FileSystemView;
|
|
|
|
|
|
|
|
|
|
import com.teamcenter.rac.aif.AbstractAIFApplication;
|
|
|
|
|
import com.teamcenter.rac.aif.AbstractAIFDialog;
|
|
|
|
|
import com.teamcenter.rac.aif.kernel.AIFComponentContext;
|
|
|
|
|
import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponent;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentBOMLine;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentDataset;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentItem;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentItemRevision;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentTcFile;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCComponentUser;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCException;
|
|
|
|
|
import com.teamcenter.rac.kernel.TCSession;
|
|
|
|
|
import com.teamcenter.rac.util.MessageBox;
|
|
|
|
|
import com.teamcenter.rac.util.PropertyLayout;
|
|
|
|
|
|
|
|
|
|
public class test028 extends AbstractAIFDialog {
|
|
|
|
|
private AbstractAIFApplication app;
|
|
|
|
|
private TCSession session;
|
|
|
|
|
private InterfaceAIFComponent[] targets;
|
|
|
|
|
private JLabel jLabel;
|
|
|
|
|
private JTextField jtf = new JTextField(20);
|
|
|
|
|
private JButton jButton;
|
|
|
|
|
private JFileChooser jFileChooser;
|
|
|
|
|
private JButton okBut = new JButton("下载");
|
|
|
|
|
private JButton celBut = new JButton("取消");
|
|
|
|
|
private List<File> fmsFilelist = new ArrayList<>();
|
|
|
|
|
private List<String> hzmlist = new ArrayList<>();
|
|
|
|
|
private List<String> namelist = new ArrayList<>();
|
|
|
|
|
private FileInputStream fis;
|
|
|
|
|
private FileOutputStream fos;
|
|
|
|
|
private JPanel btnPanel1;
|
|
|
|
|
private JPanel btnPanel2;
|
|
|
|
|
private JPanel btnPanel3;
|
|
|
|
|
private String hzm;
|
|
|
|
|
|
|
|
|
|
public test028(AbstractAIFApplication arg0){
|
|
|
|
|
this.app = arg0;
|
|
|
|
|
this.session = (TCSession)app.getSession();
|
|
|
|
|
this.targets = app.getTargetComponents();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public void run() {
|
|
|
|
|
//显示窗口
|
|
|
|
|
init();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//启用查询按钮
|
|
|
|
|
// qryBtn.setEnabled(true);
|
|
|
|
|
}
|
|
|
|
|
//获取下载文件列表
|
|
|
|
|
private void getload(TCComponentDataset dataset){
|
|
|
|
|
try {
|
|
|
|
|
TCComponentTcFile[] file = dataset.getTcFiles();
|
|
|
|
|
if(file == null || file.length ==0){
|
|
|
|
|
MessageBox.post("数据集没有命名引用的文件,请检查!",
|
|
|
|
|
"WARNING",MessageBox.WARNING);
|
|
|
|
|
return;
|
|
|
|
|
}else{
|
|
|
|
|
for(int i=0;i<file.length;i++){
|
|
|
|
|
if(!file[i].getType().equals("ImanFile")){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
//获取后缀名
|
|
|
|
|
hzm = file[i].getTCProperty("file_ext").getStringValue();
|
|
|
|
|
//获取文件名(带后缀)
|
|
|
|
|
String name = file[i].getTCProperty("original_file_name").getStringValue();
|
|
|
|
|
if(name.contains(".")){
|
|
|
|
|
//获取文件名(不带后缀)
|
|
|
|
|
name = name.substring(0, name.lastIndexOf("."));
|
|
|
|
|
}
|
|
|
|
|
//获取文件用户下载
|
|
|
|
|
File fmsFile = file[i].getFmsFile();
|
|
|
|
|
hzmlist.add(hzm);
|
|
|
|
|
namelist.add(name);
|
|
|
|
|
fmsFilelist.add(fmsFile);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (TCException e) {
|
|
|
|
|
// TODO Auto-generated catch block
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
MessageBox.post("发生错误:"+e.getMessage(),"错误",MessageBox.ERROR);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//获取文件后缀名
|
|
|
|
|
private void gethzm(TCComponentDataset dataset) {
|
|
|
|
|
try {
|
|
|
|
|
//获取文件数组
|
|
|
|
|
TCComponentTcFile[] file = dataset.getTcFiles();
|
|
|
|
|
//判断数据集有没有命名引用的文件
|
|
|
|
|
if(file == null || file.length ==0){
|
|
|
|
|
MessageBox.post("数据集没有命名引用的文件,请检查!",
|
|
|
|
|
"WARNING",MessageBox.WARNING);
|
|
|
|
|
return;
|
|
|
|
|
}else{
|
|
|
|
|
//遍历循环文件数组
|
|
|
|
|
for(int i=0;i<file.length;i++){
|
|
|
|
|
//判断文件类型不是"ImanFile"
|
|
|
|
|
if(!file[i].getType().equals("ImanFile")){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
//获取后缀名
|
|
|
|
|
hzm = file[i].getTCProperty("file_ext").getStringValue();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}catch (TCException e) {
|
|
|
|
|
// TODO Auto-generated catch block
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
MessageBox.post("发生错误:"+e.getMessage(),"错误",MessageBox.ERROR);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//文件下载到指定路径
|
|
|
|
|
private void downloadfile(String fpath){
|
|
|
|
|
try{
|
|
|
|
|
for(int i=0;i<hzmlist.size();i++){
|
|
|
|
|
//拼接输出文件名
|
|
|
|
|
String filename = namelist.get(i)+"."+hzmlist.get(i);
|
|
|
|
|
//拼接输出带路径全文件名
|
|
|
|
|
String path = fpath + File.separator + filename;
|
|
|
|
|
System.out.println("path=8.3"+path);
|
|
|
|
|
File fileout = new File(path);
|
|
|
|
|
fis = new FileInputStream(fmsFilelist.get(i));
|
|
|
|
|
fos = new FileOutputStream(fileout);
|
|
|
|
|
byte[] bs = new byte[1024];
|
|
|
|
|
int len = 0;
|
|
|
|
|
while((len=fis.read(bs))!=-1){
|
|
|
|
|
fos.write(bs, 0, len);
|
|
|
|
|
}
|
|
|
|
|
if(fos!=null) fos.close();
|
|
|
|
|
if(fis!=null) fis.close();
|
|
|
|
|
}
|
|
|
|
|
MessageBox.post("下载成功","成功",MessageBox.INFORMATION);
|
|
|
|
|
}catch(Exception e){
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
MessageBox.post("下载失败:"+e.getMessage(),"错误",MessageBox.ERROR);
|
|
|
|
|
}finally{
|
|
|
|
|
try {
|
|
|
|
|
fos.close();
|
|
|
|
|
fis.close();
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
// TODO Auto-generated catch block
|
|
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//弹出下载路径选择框
|
|
|
|
|
public void selectFileButtonEvent(){
|
|
|
|
|
int state = jFileChooser.showOpenDialog(null);
|
|
|
|
|
if(state == 1) {
|
|
|
|
|
return;
|
|
|
|
|
}else{
|
|
|
|
|
File f = jFileChooser.getSelectedFile();
|
|
|
|
|
jtf.setText(f.getAbsolutePath());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//界面初始化
|
|
|
|
|
private void init(){
|
|
|
|
|
this.setLayout(new PropertyLayout());
|
|
|
|
|
this.setPreferredSize(new Dimension(650, 260));
|
|
|
|
|
FileSystemView fsv = FileSystemView.getFileSystemView();
|
|
|
|
|
String deskPath = fsv.getHomeDirectory().getPath();
|
|
|
|
|
//第一行:图纸类型
|
|
|
|
|
btnPanel1 = new JPanel();
|
|
|
|
|
JLabel drawingtype = new JLabel("图纸类型:");
|
|
|
|
|
JCheckBox checkBox1 = new JCheckBox("DWG");
|
|
|
|
|
JCheckBox checkBox2 = new JCheckBox("idw");//new
|
|
|
|
|
JCheckBox checkBox3 = new JCheckBox("PDF");
|
|
|
|
|
JCheckBox checkBox4 = new JCheckBox("ipt");//new
|
|
|
|
|
JCheckBox checkBox5 = new JCheckBox("iam");//new
|
|
|
|
|
JCheckBox checkBox6 = new JCheckBox("STP");
|
|
|
|
|
JCheckBox checkBox7 = new JCheckBox("STEP");//new
|
|
|
|
|
//btnPanel1.add(drawingtype);
|
|
|
|
|
btnPanel1.add(checkBox1);
|
|
|
|
|
btnPanel1.add(checkBox2);
|
|
|
|
|
btnPanel1.add(checkBox3);
|
|
|
|
|
btnPanel1.add(checkBox4);
|
|
|
|
|
btnPanel1.add(checkBox5);
|
|
|
|
|
btnPanel1.add(checkBox6);
|
|
|
|
|
btnPanel1.add(checkBox7);
|
|
|
|
|
//第二行:零件类型
|
|
|
|
|
btnPanel2 = new JPanel();
|
|
|
|
|
JLabel itemtype = new JLabel("零件类型:");
|
|
|
|
|
JCheckBox checkBox11 = new JCheckBox("全部");
|
|
|
|
|
JCheckBox checkBox12 = new JCheckBox("外购件");
|
|
|
|
|
JCheckBox checkBox13 = new JCheckBox("外协件");
|
|
|
|
|
JCheckBox checkBox14 = new JCheckBox("虚拟件");
|
|
|
|
|
//btnPanel2.add(itemtype);
|
|
|
|
|
btnPanel2.add(checkBox11);
|
|
|
|
|
btnPanel2.add(checkBox12);
|
|
|
|
|
btnPanel2.add(checkBox13);
|
|
|
|
|
btnPanel2.add(checkBox14);
|
|
|
|
|
//第三行附加条件
|
|
|
|
|
btnPanel3 = new JPanel();
|
|
|
|
|
JLabel additional = new JLabel("附加筛选:");
|
|
|
|
|
JCheckBox checkBox21 = new JCheckBox("外协件/外购件打包下载");
|
|
|
|
|
JCheckBox checkBox22 = new JCheckBox("仅下载已发布图纸");
|
|
|
|
|
//btnPanel3.add(additional);
|
|
|
|
|
btnPanel3.add(checkBox21);
|
|
|
|
|
btnPanel3.add(checkBox22);
|
|
|
|
|
//第四行下载选项
|
|
|
|
|
jLabel = new JLabel("下载路径:");
|
|
|
|
|
jtf.setText(deskPath);
|
|
|
|
|
jButton = new JButton("...");
|
|
|
|
|
jFileChooser = new JFileChooser();
|
|
|
|
|
this.jFileChooser.setCurrentDirectory(new File(deskPath));
|
|
|
|
|
this.jFileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
|
|
|
|
|
JPanel panel = new JPanel();
|
|
|
|
|
panel.add("1.1.left.top",jLabel);
|
|
|
|
|
panel.add("1.2.left.top",jtf);
|
|
|
|
|
panel.add("1.3.left.top",jButton);
|
|
|
|
|
panel.add("2.1.left.top",okBut);
|
|
|
|
|
panel.add("2.2.left.top",celBut);
|
|
|
|
|
|
|
|
|
|
this.add("1.1.left.top",drawingtype);
|
|
|
|
|
this.add("1.2.left.top",btnPanel1);
|
|
|
|
|
this.add("2.1.left.top",itemtype);
|
|
|
|
|
this.add("2.2.left.top",btnPanel2);
|
|
|
|
|
this.add("3.1.left.top",additional);
|
|
|
|
|
this.add("3.2.left.top",btnPanel3);
|
|
|
|
|
this.add("4.1.left.top",panel);
|
|
|
|
|
this.setResizable(false);
|
|
|
|
|
this.setBounds(5, 5, 5, 5);
|
|
|
|
|
this.centerToScreen();
|
|
|
|
|
this.showDialog();
|
|
|
|
|
jButton.addActionListener(new ActionListener() {
|
|
|
|
|
@Override
|
|
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
selectFileButtonEvent();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
okBut.addActionListener(new ActionListener() {
|
|
|
|
|
@Override
|
|
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
getTypes();
|
|
|
|
|
System.out.print("开始下载");
|
|
|
|
|
String fpath = jtf.getText();
|
|
|
|
|
if(fpath != null && (!fpath.trim().equals(""))){
|
|
|
|
|
downloadfile(fpath);
|
|
|
|
|
setVisible(false);
|
|
|
|
|
}else{
|
|
|
|
|
MessageBox.post("文件路径不能为空!", "警告", MessageBox.INFORMATION);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
celBut.addActionListener(new ActionListener() {
|
|
|
|
|
@Override
|
|
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
setVisible(false);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
this.pack();
|
|
|
|
|
this.setResizable(false);
|
|
|
|
|
this.centerToScreen();
|
|
|
|
|
this.showDialog();
|
|
|
|
|
}
|
|
|
|
|
//获取图纸类型
|
|
|
|
|
public void getTypes() {
|
|
|
|
|
List<String> list = new ArrayList<String>();
|
|
|
|
|
Component[] jcbs = btnPanel1.getComponents();//将勾选的内容存入数组
|
|
|
|
|
for(Component component : jcbs) {
|
|
|
|
|
JCheckBox jcb = (JCheckBox) component;
|
|
|
|
|
if(jcb.isSelected()) {
|
|
|
|
|
list.add(jcb.getText());
|
|
|
|
|
if("DWG".equals(jcb.getText())) {
|
|
|
|
|
list.add("DWG");
|
|
|
|
|
list.add("dwg");
|
|
|
|
|
}else if ("STP".equals(jcb.getText())) {
|
|
|
|
|
list.add("stp");
|
|
|
|
|
}else if("PDF".equals(jcb.getText())) {
|
|
|
|
|
list.add("pdf");
|
|
|
|
|
}else if("idw".equals(jcb.getText())) {
|
|
|
|
|
list.add("idw");
|
|
|
|
|
}else if ("ipt".equals(jcb.getText())) {
|
|
|
|
|
list.add("ipt");
|
|
|
|
|
}else if ("iam".equals(jcb.getText())) {
|
|
|
|
|
list.add("iam");
|
|
|
|
|
}else if ("STEP".equals(jcb.getText())) {
|
|
|
|
|
list.add("STEP");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//判断list的大小,大小小于等于0则全部加上
|
|
|
|
|
if(list.size() <= 0) {
|
|
|
|
|
list.add("DWG");
|
|
|
|
|
list.add("dwg");
|
|
|
|
|
list.add("pdf");
|
|
|
|
|
list.add("stp");
|
|
|
|
|
list.add("idw");
|
|
|
|
|
list.add("iam");
|
|
|
|
|
list.add("STEP");
|
|
|
|
|
}
|
|
|
|
|
try {
|
|
|
|
|
for (int i = 0; i < targets.length; i++) {
|
|
|
|
|
if(targets[i] instanceof TCComponentBOMLine){
|
|
|
|
|
List<String> itemlist = new ArrayList<String>();
|
|
|
|
|
//执行获取零件类型的方法
|
|
|
|
|
itemlist = getitemType();
|
|
|
|
|
//定义bom行
|
|
|
|
|
TCComponentBOMLine line = (TCComponentBOMLine) targets[i];
|
|
|
|
|
TCComponentItemRevision rev = line.getItemRevision();
|
|
|
|
|
String revtype = rev.getStringProperty("object_type");
|
|
|
|
|
TCComponent[] datasets = rev.getReferenceListProperty("IMAN_specification");
|
|
|
|
|
TCComponent[] datasets2 = rev.getReferenceListProperty("IMAN_Rendering");
|
|
|
|
|
for (int j = 0; j < datasets.length; j++) {
|
|
|
|
|
//获取数据集数组
|
|
|
|
|
TCComponentDataset dataset01 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行获取后缀名的方法
|
|
|
|
|
gethzm(dataset01);
|
|
|
|
|
System.out.println("9.07test后缀名"+hzm);
|
|
|
|
|
//执行获取零件类型的方法
|
|
|
|
|
itemlist = getitemType();
|
|
|
|
|
|
|
|
|
|
//判断list包含hzm字符串的值 且 itemlist包含revtype的值
|
|
|
|
|
if(itemlist.contains(revtype)) {
|
|
|
|
|
if(list.contains(hzm)) {
|
|
|
|
|
//获取数据集数据
|
|
|
|
|
TCComponentDataset dataset02 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行getload方法
|
|
|
|
|
getload(dataset02);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
for (int j = 0; j < datasets2.length; j++) {
|
|
|
|
|
//获取数据集数组
|
|
|
|
|
TCComponentDataset dataset02 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行获取后缀名的方法
|
|
|
|
|
gethzm(dataset02);
|
|
|
|
|
String type2 = datasets2[j].getType();
|
|
|
|
|
//判断是否为所需要的零件类型
|
|
|
|
|
if(itemlist.contains(revtype)) {
|
|
|
|
|
if(list.contains(hzm)) {
|
|
|
|
|
TCComponentDataset dataset = (TCComponentDataset) datasets2[j];
|
|
|
|
|
getload(dataset);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(targets[i] instanceof TCComponentItemRevision){
|
|
|
|
|
List<String> itemlist = new ArrayList<String>();
|
|
|
|
|
//执行获取零件类型的方法
|
|
|
|
|
itemlist = getitemType();
|
|
|
|
|
TCComponentItemRevision rev = (TCComponentItemRevision) targets[i];
|
|
|
|
|
String revtype = rev.getStringProperty("object_type");
|
|
|
|
|
TCComponent[] datasets = rev.getReferenceListProperty("IMAN_specification");
|
|
|
|
|
TCComponent[] datasets2 = rev.getReferenceListProperty("IMAN_Rendering");
|
|
|
|
|
for (int j = 0; j < datasets.length; j++) {
|
|
|
|
|
|
|
|
|
|
//获取数据集数组
|
|
|
|
|
TCComponentDataset dataset02 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行获取后缀名的方法
|
|
|
|
|
gethzm(dataset02);
|
|
|
|
|
//判断零件类型
|
|
|
|
|
if(itemlist.contains(revtype)) {
|
|
|
|
|
if(list.contains(hzm)) {
|
|
|
|
|
TCComponentDataset dataset = (TCComponentDataset) datasets[j];
|
|
|
|
|
System.out.println("下载文件");
|
|
|
|
|
getload(dataset);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
for (int j = 0; j < datasets2.length; j++) {
|
|
|
|
|
//获取数据集数组
|
|
|
|
|
TCComponentDataset dataset02 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行获取后缀名的方法
|
|
|
|
|
gethzm(dataset02);
|
|
|
|
|
//判断零件类型
|
|
|
|
|
if (itemlist.contains(revtype)) {
|
|
|
|
|
if(list.contains(hzm)) {
|
|
|
|
|
TCComponentDataset dataset = (TCComponentDataset) datasets2[j];
|
|
|
|
|
getload(dataset);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}else if(targets[i] instanceof TCComponentDataset) {
|
|
|
|
|
TCComponentDataset dataset = (TCComponentDataset) targets[i];
|
|
|
|
|
getload(dataset);
|
|
|
|
|
}else if(targets[i] instanceof TCComponentItem){
|
|
|
|
|
List<String> itemlist = new ArrayList<String>();
|
|
|
|
|
//执行获取零件类型的方法
|
|
|
|
|
itemlist = getitemType();
|
|
|
|
|
TCComponentItem item = (TCComponentItem) targets[i];
|
|
|
|
|
TCComponentItemRevision rev = item.getLatestItemRevision();
|
|
|
|
|
String revtype = rev.getStringProperty("object_type");
|
|
|
|
|
TCComponent[] datasets = rev.getReferenceListProperty("IMAN_specification");
|
|
|
|
|
TCComponent[] datasets2 = rev.getReferenceListProperty("IMAN_Rendering");
|
|
|
|
|
for (int j = 0; j < datasets.length; j++) {
|
|
|
|
|
//获取数据集数组
|
|
|
|
|
TCComponentDataset dataset02 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行获取后缀名的方法
|
|
|
|
|
gethzm(dataset02);
|
|
|
|
|
if(itemlist.contains(revtype)) {
|
|
|
|
|
if(list.contains(hzm)) {
|
|
|
|
|
TCComponentDataset dataset = (TCComponentDataset) datasets[j];
|
|
|
|
|
getload(dataset);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
for (int j = 0; j < datasets2.length; j++) {
|
|
|
|
|
//获取数据集数组
|
|
|
|
|
TCComponentDataset dataset02 = (TCComponentDataset) datasets[j];
|
|
|
|
|
//执行获取后缀名的方法
|
|
|
|
|
gethzm(dataset02);
|
|
|
|
|
if(itemlist.contains(revtype)) {
|
|
|
|
|
if(list.contains(hzm)) {
|
|
|
|
|
TCComponentDataset dataset = (TCComponentDataset) datasets2[j];
|
|
|
|
|
getload(dataset);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}else {
|
|
|
|
|
MessageBox.post("选中的不是版本对象或者BOM行对象或者数据集对象","error",MessageBox.ERROR);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
// TODO: handle exception
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//获取零件类型
|
|
|
|
|
public List<String> getitemType() {
|
|
|
|
|
List<String> itemlist = new ArrayList<String>();
|
|
|
|
|
Component[] jcbs = btnPanel2.getComponents();//将勾选的内容存入数组
|
|
|
|
|
//遍历勾选的内容
|
|
|
|
|
for(Component component : jcbs) {
|
|
|
|
|
JCheckBox jcb = (JCheckBox) component;
|
|
|
|
|
//判断元素是否被选中
|
|
|
|
|
if(jcb.isSelected()) {
|
|
|
|
|
itemlist.add(jcb.getText());
|
|
|
|
|
itemlist.add(jcb.getText());
|
|
|
|
|
if("全部".equals(jcb.getText())) {
|
|
|
|
|
itemlist.add("T2_VirtualRevision");
|
|
|
|
|
itemlist.add("T2_OutBuyPartRevision");
|
|
|
|
|
itemlist.add("T2_outsourceRevision");
|
|
|
|
|
}else if ("外协件".equals(jcb.getText())) {
|
|
|
|
|
itemlist.add("T2_outsourceRevision");
|
|
|
|
|
}else if ("外购件".equals(jcb.getText())) {
|
|
|
|
|
itemlist.add("T2_OutBuyPartRevision");
|
|
|
|
|
}else if ("虚拟件".equals(jcb.getText())) {
|
|
|
|
|
itemlist.add("T2_VirtualRevision");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return itemlist;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|