package com.vci.client.portal.NewNewUI.actionExport;
|
|
import java.awt.GridBagConstraints;
|
import java.awt.GridBagLayout;
|
import java.awt.Insets;
|
import java.io.File;
|
import java.io.FileNotFoundException;
|
import java.io.FileOutputStream;
|
import java.io.IOException;
|
import java.io.ObjectOutputStream;
|
import java.io.PrintWriter;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
import javax.swing.JLabel;
|
import javax.swing.JScrollPane;
|
import javax.swing.JTable;
|
|
import com.vci.client.LogonApplication;
|
import com.vci.client.portal.NewNewUI.Export.VCIExportTree;
|
import com.vci.client.portal.UI.dialog.VCIGuideStepPanel;
|
import com.vci.client.ui.swing.VCIOptionPane;
|
|
/**
|
* Action导出第二步界面
|
*
|
* @Title :ExpActionStep2Panel.java
|
* @Description :
|
* @Copyright :宏博远达科技有限公司
|
* @Author :平台与规划部/ZhongGY/E-mail:zhonggy@vci-tech.com
|
* @Date :2015-6-5
|
* @Version :1
|
* @Other :产生注释:Alt+Shift+J
|
*/
|
public class ExpActionStep2Panel extends VCIGuideStepPanel {
|
|
private static final long serialVersionUID = 1L;
|
|
/**
|
* 导出模型文件全路径显示
|
*/
|
private JLabel lblModelFileFullPath;
|
/**
|
* 导出日志文件全路径显示
|
*/
|
private JLabel lblLogFileFullPath;
|
/**
|
* 导出日志清单列表
|
*/
|
private JScrollPane scrollPane = new JScrollPane();
|
private JTable tblExportLog;
|
/**
|
* 导出文件名
|
*/
|
private String logFileName = "...";
|
private String vciamfFileName = "...";
|
private VCIExportTree exportTree = null;
|
|
public ExpActionStep2Panel() {
|
GridBagLayout gridBagLayout = new GridBagLayout();
|
gridBagLayout.columnWidths = new int[] { 0, 0, 0, 0, 0 };
|
gridBagLayout.rowHeights = new int[] { 25, 25, 0, 0 };
|
gridBagLayout.columnWeights = new double[] { 0.0, 0.0, 1.0, 0.0,
|
Double.MIN_VALUE };
|
gridBagLayout.rowWeights = new double[] { 0.0, 0.0, 1.0,
|
Double.MIN_VALUE };
|
setLayout(gridBagLayout);
|
|
JLabel label = new JLabel(" ");
|
GridBagConstraints gbc_label = new GridBagConstraints();
|
gbc_label.insets = new Insets(0, 0, 5, 5);
|
gbc_label.gridx = 0;
|
gbc_label.gridy = 0;
|
add(label, gbc_label);
|
|
JLabel label_1 = new JLabel("导出模型文件:");
|
GridBagConstraints gbc_label_1 = new GridBagConstraints();
|
gbc_label_1.insets = new Insets(0, 0, 5, 5);
|
gbc_label_1.gridx = 1;
|
gbc_label_1.gridy = 0;
|
add(label_1, gbc_label_1);
|
|
lblModelFileFullPath = new JLabel("...");
|
GridBagConstraints gbc_lblModelFileFullPath = new GridBagConstraints();
|
gbc_lblModelFileFullPath.anchor = GridBagConstraints.WEST;
|
gbc_lblModelFileFullPath.insets = new Insets(0, 0, 5, 5);
|
gbc_lblModelFileFullPath.gridx = 2;
|
gbc_lblModelFileFullPath.gridy = 0;
|
add(lblModelFileFullPath, gbc_lblModelFileFullPath);
|
|
JLabel label_2 = new JLabel(" ");
|
GridBagConstraints gbc_label_2 = new GridBagConstraints();
|
gbc_label_2.insets = new Insets(0, 0, 5, 0);
|
gbc_label_2.gridx = 3;
|
gbc_label_2.gridy = 0;
|
add(label_2, gbc_label_2);
|
|
JLabel label_4 = new JLabel("导出日志文件:");
|
GridBagConstraints gbc_label_4 = new GridBagConstraints();
|
gbc_label_4.insets = new Insets(0, 0, 5, 5);
|
gbc_label_4.gridx = 1;
|
gbc_label_4.gridy = 1;
|
add(label_4, gbc_label_4);
|
lblLogFileFullPath = new JLabel("...");
|
GridBagConstraints gbc_lblLogFileFullPath = new GridBagConstraints();
|
gbc_lblLogFileFullPath.anchor = GridBagConstraints.WEST;
|
gbc_lblLogFileFullPath.insets = new Insets(0, 0, 5, 5);
|
gbc_lblLogFileFullPath.gridx = 2;
|
gbc_lblLogFileFullPath.gridy = 1;
|
add(lblLogFileFullPath, gbc_lblLogFileFullPath);
|
|
|
GridBagConstraints gbc_scrollPane = new GridBagConstraints();
|
gbc_scrollPane.gridwidth = 2;
|
gbc_scrollPane.insets = new Insets(0, 0, 0, 5);
|
gbc_scrollPane.fill = GridBagConstraints.BOTH;
|
gbc_scrollPane.gridx = 1;
|
gbc_scrollPane.gridy = 2;
|
add(scrollPane, gbc_scrollPane);
|
|
tblExportLog = new JTable();
|
|
|
}
|
|
public ExpActionStep1Panel getPreStepUI() {
|
if (super.getPreStepUI() != null) {
|
return (ExpActionStep1Panel) super.getPreStepUI();
|
} else {
|
return null;
|
}
|
}
|
|
public Map<String,Object> getCommonMap(){
|
/*return (HashMap)this.getOwnParent().getDialogCommonShareData();*/
|
return this.getGuidCommonShareData();
|
}
|
@Override
|
public void initUI() {
|
// 可不用处理,默认加载即可
|
// ExpActionStep1Panel preUI = (ExpActionStep1Panel)
|
// this.getPreStepUI();
|
// String filePath = preUI.getExportFilePath();
|
exportTree = (VCIExportTree) getCommonMap().get("exportTree");
|
String filePath = (String) getCommonMap().get("exportFilePath");
|
Long currentTimes = System.currentTimeMillis();
|
logFileName= exportTree.getExportLogFileName(filePath,currentTimes);
|
vciamfFileName = exportTree.getExportDataFileName(filePath,currentTimes);
|
lblModelFileFullPath.setText(vciamfFileName);
|
lblLogFileFullPath.setText(logFileName);
|
scrollPane.setViewportView(tblExportLog);
|
initData();
|
}
|
|
@Override
|
public void initData() {
|
|
ObjectOutputStream vciamfFileStream = null;
|
|
PrintWriter logFileWriter = null;
|
|
try {
|
File vciamfFile = new File(vciamfFileName);
|
File logFile = new File(logFileName);
|
logFileWriter = new PrintWriter(logFile);
|
@SuppressWarnings("rawtypes")
|
HashMap exportBeans = new HashMap<String, Object>();
|
@SuppressWarnings("rawtypes")
|
HashMap exportData = exportTree.getExportBeans(exportBeans,logFileWriter,tblExportLog);// 获得导出Bean同时,记录log
|
vciamfFileStream = new ObjectOutputStream(new FileOutputStream(
|
vciamfFile));
|
vciamfFileStream.writeObject(exportData);
|
} catch (FileNotFoundException e) {
|
VCIOptionPane.showMessage(LogonApplication.frame, "导出文件创建失败!");
|
e.printStackTrace();
|
} catch (IOException e) {
|
VCIOptionPane.showMessage(LogonApplication.frame, "导出流异常!");
|
e.printStackTrace();
|
} finally {
|
|
try {
|
if (vciamfFileStream != null) {
|
vciamfFileStream.flush();
|
vciamfFileStream.close();
|
}
|
if (logFileWriter != null) {
|
logFileWriter.flush();
|
logFileWriter.close();
|
}
|
} catch (Exception e) {
|
VCIOptionPane.showMessage(LogonApplication.frame, "导出流关闭异常!");
|
e.printStackTrace();
|
|
}
|
}
|
|
// TODO: 加载日志清单数据(tblExportLog/lblModelFileFullPath/lblLogFileFullPath)
|
|
}
|
|
|
@Override
|
public String getStepName() {
|
String secondStepName = null;
|
if((secondStepName = (String)this.getCommonMap().get("secondStepName") )!= null){
|
return secondStepName;
|
}
|
return "第二步:Action导出结果";
|
}
|
|
@Override
|
public boolean isPreBtnVisible() {
|
return true;
|
}
|
|
@Override
|
public String getPreBtnText() {
|
return "上一步";
|
}
|
|
@Override
|
public boolean doPreBtnAction() {
|
// TODO:上一步操作处理
|
|
return true;
|
}
|
|
@Override
|
public boolean isNextBtnVisible() {
|
// 最后一步不显示“下一步”
|
return false;
|
}
|
|
@Override
|
public String getNextBtnText() {
|
return null;
|
}
|
|
@Override
|
public boolean doNextBtnAction() {
|
return true;
|
}
|
|
@Override
|
public boolean isCancelBtnVisible() {
|
return true;
|
}
|
|
@Override
|
public String getcancelBtnText() {
|
return "完成";
|
}
|
|
String dialogProcess = ""; // [第X步/共X步]
|
|
public String getDialogProcess() {
|
dialogProcess = "[第2步/共2步]";
|
return dialogProcess;
|
}
|
}
|