use of com.kendy.entity.TGExcelModel in project financial by greatkendy123.
the class TGExportExcelService method getTGTeamZhanjiExcelModels.
/**
* 导出战绩明细(所有)
* @return
*/
private List<TGExcelModel> getTGTeamZhanjiExcelModels() {
List<TGExcelModel> excelLsit = new ArrayList<>();
ObservableList<Node> teamBtns = tgController.TG_Team_VBox.getChildren();
if (CollectUtil.isNullOrEmpty(teamBtns))
return excelLsit;
for (Node node : teamBtns) {
Button teamBtn = (Button) node;
String teamId = teamBtn.getText();
teamBtn.fire();
String hsRate = StringUtil.nvl(tgController.tgTeamHSRate.getText(), "0%");
TGExcelModel teamZJExcelModel = getTeamZJExcelModel(teamId, hsRate);
excelLsit.add(teamZJExcelModel);
}
return excelLsit;
}
use of com.kendy.entity.TGExcelModel in project financial by greatkendy123.
the class TGExportExcelService method getMonthLirunExcelModel.
/**
* 月利润ExcelModel
* @time 2018年3月19日
* @return
*/
private TGExcelModel getMonthLirunExcelModel() {
TGExcelModel excelModel = new TGExcelModel();
List<String> titleList = new LinkedList<>();
List<Object[]> data = new LinkedList<>();
List<String> titleSumList = new LinkedList<>();
List<Object[]> dataSum = new LinkedList<>();
titleList = new LinkedList<>(Arrays.asList("日期", "托管公司", "总利润", "总开销", "合计", "公司占股", "托管公司占股", "团队利润", "托管合计"));
ObservableList<TGLirunInfo> items = tgController.tableTGLirun.getItems();
if (CollectUtil.isHaveValue(items)) {
data = items.stream().map(info -> {
Object[] obj = new Object[9];
obj[0] = info.getTgLirunDate();
obj[1] = info.getTgLirunCompanyName();
obj[2] = info.getTgLirunTotalProfit();
obj[3] = info.getTgLirunTotalKaixiao();
obj[4] = info.getTgLirunRestHeji();
obj[5] = info.getTgLirunATMCompany();
obj[6] = info.getTgLirunTGCompany();
obj[7] = info.getTgLirunTeamProfit();
obj[8] = info.getTgLirunHeji();
return obj;
}).collect(Collectors.toList());
}
// add 新增合计
// 托管公司押金
String yajin = StringUtil.nvl(tgController.tgCompanyYajin.getText());
// 托管公司额度
String edu = StringUtil.nvl(tgController.tgCompanyEdu.getText());
// 托管公司已分红
String yifenhong = StringUtil.nvl(tgController.tgYifenhong.getText());
// 总外债
String waizhai = StringUtil.nvl(tgController.totalWaizhai.getText());
// 总利润
String profit = StringUtil.nvl(tgController.tgTotalProfit.getText());
// 总可分配
String availabel = StringUtil.nvl(tgController.tgAvailable.getText());
Object[] obj = new Object[2];
obj[0] = "押金";
obj[1] = yajin;
dataSum.add(obj);
obj = new Object[2];
obj[0] = "额度";
obj[1] = edu;
dataSum.add(obj);
obj = new Object[2];
obj[0] = "已分红";
obj[1] = yifenhong;
dataSum.add(obj);
obj = new Object[2];
obj[0] = "总外债";
obj[1] = waizhai;
dataSum.add(obj);
obj = new Object[2];
obj[0] = "总利润";
obj[1] = profit;
dataSum.add(obj);
obj = new Object[2];
obj[0] = "可分配";
obj[1] = availabel;
dataSum.add(obj);
excelModel.setColumnList(titleList);
excelModel.setData(data);
excelModel.setColumnSumList(titleSumList);
excelModel.setDataSum(dataSum);
excelModel.setSheetName("月利润");
return excelModel;
}
use of com.kendy.entity.TGExcelModel in project financial by greatkendy123.
the class TGExportExcelService method getTGWaizhaiExcelModel.
/**
* 导出托管公司的团队外债与团队外债明细
* @return
*/
private TGExcelModel getTGWaizhaiExcelModel() {
TGExcelModel excelModel = new TGExcelModel();
List<String> titleList = new LinkedList<>();
List<Object[]> data = new LinkedList<>();
List<String> titleSumList = new LinkedList<>();
List<Object[]> dataSum = new LinkedList<>();
// 取值
// 传给Excel的外债数据
Map<String, List<Object[]>> teamMap = new LinkedHashMap<>();
ObservableList<Node> items = tgController.tgWZTeamHBox.getChildren();
// 存放总和表
ObservableList<TypeValueInfo> sumItems = tgController.tgWZTeam.getItems();
if (CollectUtil.isHaveValue(sumItems)) {
List<Object[]> teamList = tgController.tgWZTeam.getItems().stream().map(info -> {
Object[] obj = new Object[2];
obj[0] = info.getType();
obj[1] = info.getValue();
return obj;
}).collect(Collectors.toList());
String key = tgController.tgWZTeam.getColumns().get(0).getText() + "#" + tgController.tgWZTeam.getColumns().get(1).getText();
teamMap.put(key, teamList);
}
// 存放明细表
if (CollectUtil.isHaveValue(items)) {
for (Node node : items) {
TableView<CurrentMoneyInfo> table = (TableView<CurrentMoneyInfo>) node;
List<Object[]> teamList = table.getItems().stream().map(info -> {
Object[] obj = new Object[2];
obj[0] = info.getMingzi();
obj[1] = info.getShishiJine();
return obj;
}).collect(Collectors.toList());
String key = table.getColumns().get(0).getText() + "#" + table.getColumns().get(1).getText();
teamMap.put(key, teamList);
}
}
excelModel.setColumnList(titleList);
excelModel.setData(data);
excelModel.setColumnSumList(titleSumList);
excelModel.setDataSum(dataSum);
excelModel.setSheetName("外债");
// 设值
excelModel.setWaiZai(true);
excelModel.setWaizhaiMap(teamMap);
return excelModel;
}
use of com.kendy.entity.TGExcelModel in project financial by greatkendy123.
the class TGExportExcelService method exportExcel.
/**
* 导出Excel
*/
public void exportExcel() {
try {
List<TGExcelModel> excelList = new ArrayList<>();
// 开销
excelList.add(getKaixiaoExcelModel());
// 玩家备注
excelList.add(getPlayerCommentExcelModel());
// 月利润
excelList.add(getMonthLirunExcelModel());
// 外债表
excelList.add(getTGWaizhaiExcelModel());
// 服务费明细
excelList.add(getFwfExcelModel());
// 战绩表
excelList.addAll(getTGTeamZhanjiExcelModels());
ExportTGExcel excelCreator = new ExportTGExcel(excelList);
excelCreator.export();
ShowUtil.show("导出成功", 2);
} catch (Exception e) {
ErrorUtil.err("导出托管公司所有数据失败", e);
e.printStackTrace();
}
}
use of com.kendy.entity.TGExcelModel in project financial by greatkendy123.
the class ExportTGExcel method export.
/*
* 导出数据
* */
@SuppressWarnings("deprecation")
public void export() throws Exception {
// 创建工作簿对象
HSSFWorkbook workbook = new HSSFWorkbook();
for (TGExcelModel excelModel : excelList) {
String sheetName = excelModel.getSheetName();
List<String> columnTitleList = excelModel.getColumnList();
List<Object[]> columnData = excelModel.getData();
/**
****************************************************添加导出托管公司外债的信息*****************************
*/
boolean isWaiZai = excelModel.getIsWaiZai();
if (isWaiZai) {
setWaizhaiData(workbook, excelModel);
continue;
}
/**
*********************************************************************************
*/
HSSFSheet sheet = workbook.createSheet(sheetName);
// 产生表格标题行
HSSFRow rowColumnName = sheet.createRow(0);
// sheet样式定义【getColumnTopStyle()/getStyle()均为自定义方法 - 在下面 - 可扩展
// 获取列头样式对象
HSSFCellStyle columnTopStyle = this.getColumnTopStyle(workbook);
// 单元格样式对象
HSSFCellStyle style = this.getStyle(workbook);
/**
*********************************** 标题栏 ***************************
*/
int columnNum = columnTitleList.size();
for (int n = 0; n < columnNum; n++) {
// 创建列头对应个数的单元格
HSSFCell cellName = rowColumnName.createCell(n);
// 设置列头单元格的数据类型
cellName.setCellType(HSSFCell.CELL_TYPE_STRING);
HSSFRichTextString text = new HSSFRichTextString(columnTitleList.get(n));
// 设置列头单元格的值
cellName.setCellValue(text);
// 设置列头单元格样式
cellName.setCellStyle(columnTopStyle);
}
// 将查询出的数据设置到sheet对应的单元格中
int dataSize = columnData.size();
for (int i = 0; i < dataSize; i++) {
// 遍历每个对象
Object[] obj = columnData.get(i);
// 创建所需的行数
HSSFRow row = sheet.createRow(i + 1);
for (int j = 0; j < columnNum; j++) {
HSSFCell cell = row.createCell(j, HSSFCell.CELL_TYPE_STRING);
if (!"".equals(obj[j]) && obj[j] != null) {
// 设置单元格的值
cell.setCellValue(obj[j].toString());
}
// 设置单元格样式
cell.setCellStyle(style);
}
}
/**
****************** 添加合计 *******
*/
List<String> columnSumList = excelModel.getColumnSumList();
List<Object[]> sumDataList = excelModel.getDataSum();
int columnSumSize = sumDataList.size();
for (int i = 0; i < columnSumSize; i++) {
HSSFRow r = sheet.getRow(i + 1);
if (r == null) {
r = sheet.createRow(i + 1);
}
HSSFCell type = r.createCell(columnNum + 1, HSSFCell.CELL_TYPE_STRING);
type.setCellStyle(style);
type.setCellValue(sumDataList.get(i)[0].toString());
HSSFCell sum = r.createCell(columnNum + 2, HSSFCell.CELL_TYPE_STRING);
sum.setCellStyle(style);
sum.setCellValue(sumDataList.get(i)[1].toString());
}
sheet.setColumnWidth(columnNum + 1, 3500);
sheet.setColumnWidth(columnNum + 2, 3500);
// 让列宽随着导出的列长自动适应
for (int colNum = 0; colNum < columnNum; colNum++) {
sheet.setColumnWidth(colNum, 4000);
// if(colNum == 0){
// sheet.setColumnWidth(colNum, (columnWidth+4) * 256);
// }else{
// sheet.setColumnWidth(colNum, (columnWidth+4) * 256);
// }
}
}
if (workbook != null) {
OutputStream out = null;
try {
File file = new File(this.out + System.currentTimeMillis() + ".xls");
out = new FileOutputStream(file);
workbook.write(out);
java.awt.Desktop.getDesktop().open(file);
System.out.println("==================================finishes...");
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null)
out.close();
}
}
}
Aggregations