提交 b2013bf6 authored 作者: 马晨俊's avatar 马晨俊

mcj:更新导入excel表格

上级 0c3aaf5f
......@@ -7,6 +7,7 @@ import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -25,12 +26,12 @@ public class Browser {
* 兼容的浏览器
*/
@ApiModelProperty(value = "兼容的浏览器")
private List<CompatibleBrowser> compatibleBrowsers;
private List<CompatibleBrowser> compatibleBrowsers = new ArrayList<>();
/**
* 浏览器插件
*/
@ApiModelProperty(value = "浏览器插件")
private List<BaseDes> browserPlugs;
private List<BaseDes> browserPlugs = new ArrayList<>();
/**
* 插件安装情况int 1:是 2:否
......
......@@ -8,6 +8,7 @@ import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -26,7 +27,7 @@ public class Database {
* 数据库类型 枚举
*/
@ApiModelProperty(value = "数据库类型")
private List<DatabaseType> databaseType;
private List<DatabaseType> databaseType = new ArrayList<>();
/**
* 其他
......
......@@ -3,22 +3,23 @@ package com.zjty.inspect.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class DevelopLanguageSystem {
//原应用主要开发架构
@ApiModelProperty(value = "原应用主要开发架构")
private List<BaseDes> devFrameworks;
private List<BaseDes> devFrameworks = new ArrayList<>();
//bs原应用浏览器前端开发技术
@ApiModelProperty(value = "bs原应用浏览器前端开发技术")
private List<BaseDes> fontDevTechnologies;
private List<BaseDes> fontDevTechnologies = new ArrayList<>();
//cs前端开发技术
@ApiModelProperty(value = "cs前端开发技术")
private List<BaseDes> csDevTechnologies;
private List<BaseDes> csDevTechnologies = new ArrayList<>();
//封装方式
@ApiModelProperty(value = "封装方式")
private List<BaseDes> opGAs;
private List<BaseDes> opGAs = new ArrayList<>();
//主开发语言
@ApiModelProperty(value = "主开发语言id")
private Integer code;
......@@ -27,5 +28,5 @@ public class DevelopLanguageSystem {
// private MainLanguageEnum mainLanguageEnum;
//开发语言
@ApiModelProperty(value = "其他开发语言名称")
private List<BaseDes> devLanguages;
private List<BaseDes> devLanguages = new ArrayList<>();
}
......@@ -7,6 +7,7 @@ import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -26,12 +27,12 @@ public class Middleware {
* 原文件情况 枚举
*/
@ApiModelProperty(value = "原文件情况")
private List<MiddlewareEnum> middlewareEnums;
private List<MiddlewareEnum> middlewareEnums = new ArrayList<>();
/**
* 原应用第三方api
*/
@ApiModelProperty(value = "原应用第三方api")
private List<OtherApi> otherApis;
private List<OtherApi> otherApis = new ArrayList<>();
/**
* 其他中间件
*/
......@@ -41,7 +42,7 @@ public class Middleware {
* 额外微服务
*/
@ApiModelProperty(value = "额外微服务")
private List<BaseDes> microServices;
private List<BaseDes> microServices = new ArrayList<>();
/*
更多需求
*/
......
......@@ -23,43 +23,43 @@ public class SystemStructure {
* 应用服务器
*/
@ApiModelProperty(value = "ECS(安装主程序的弹性计算服务器或虚拟机)")
private Details application;
private Details application = new Details();
/**
* 数据库服务器
*/
@ApiModelProperty(value = "RDS(关系型数据库服务器或虚拟机)")
private Details database;
private Details database = new Details();
@ApiModelProperty(value = "NAS(存储或备份一体设备)")
private Details nas;
private Details nas = new Details();
/**
* SLB
*/
@ApiModelProperty(value = "SLB")
private Details slb;
private Details slb = new Details();
/**
* cdn
*/
@ApiModelProperty(value = "cdn")
private Details cdn;
private Details cdn = new Details();
/**
* V2/P/S(访问代理服务设备)
*/
@ApiModelProperty(value = "V2/P/S(访问代理服务设备)")
private Details vps;
private Details vps = new Details();
/**
* 存储
*/
@ApiModelProperty(value = "存储")
private Details storage;
private Details storage = new Details();
/**
* 其他服务设备
*/
@ApiModelProperty(value = "其他服务设备")
private Details otherEquipment;
private Details otherEquipment = new Details();
/*
更多需求
......
......@@ -27,6 +27,8 @@ public class ExcelUtil {
private static String xlsx = "xlsx";
private static String xls = "xls";
private static List<ExcelDataEntity> arrayList;
public static Reform parseExcel(InputStream fileInputStream, String fileName) {
Reform reform = new Reform();
try {
......@@ -53,6 +55,7 @@ public class ExcelUtil {
public static ExcelDataTemp parseExcel2Entity(Evaluation evaluation) {
String inEva = evaluation.getInEva();
ExcelDataTemp excelDataTemp = new ExcelDataTemp();
arrayList = excelDataTemp.getArrayList();
if (inEva != null) {
Reform reform = JSON.parseObject(evaluation.getInEva(), Reform.class);
exportEntity("用户名", reform.getUsername());
......@@ -67,49 +70,83 @@ public class ExcelUtil {
exportEntity("开发单位是否在本地", reform.getAddress());
exportEntity("开发单位联系人", reform.getLocalContact());
exportEntity("开发单位联系方式", reform.getLocalPhone());
exportEntity("是否涉密系统",flipYesOrNo(reform.getSecret()));
exportEntity("容灾能力",flipYesOrNo(reform.getDisasterTolerance()));
exportEntity("安全能力",flipYesOrNo(reform.getSafe()));
exportEntity("架构",flipYesOrNo(reform.getFramework()));
exportEntity("运行时间",reform.getTime());
exportEntity("运行时间",reform.getTime());
exportEntity("数据库表数量",reform.getTableNum());
exportEntity("数据库数据量",reform.getDatabaseNum());
exportEntity("是否涉密系统", flipYesOrNo(reform.getSecret()));
exportEntity("容灾能力", flipYesOrNo(reform.getDisasterTolerance()));
exportEntity("安全能力", flipYesOrNo(reform.getSafe()));
exportEntity("架构", flipYesOrNo(reform.getFramework()));
exportEntity("运行时间", reform.getTime());
exportEntity("运行时间", reform.getTime());
exportEntity("数据库表数量", reform.getTableNum());
exportEntity("数据库数据量", reform.getDatabaseNum());
List<Integer> applicationType = reform.getApplicationType();
for (Integer type : applicationType) {
ApplicationType applicationType1 = ApplicationType.getByCode(type);
exportEntity("该应用类型",applicationType1.getName());
exportEntity("该应用类型", applicationType1.getName());
}
SystemStructure systemStructure = reform.getSystemStructure();
Details application = systemStructure.getApplication();
exportEntity("应用服务器部署位置",getDeploy(application.getDeploy()));
getSystemData("ecs服务器", systemStructure.getApplication());
getSystemData("rds服务器", systemStructure.getDatabase());
getSystemData("nas服务器", systemStructure.getNas());
getSystemData("slb服务器", systemStructure.getSlb());
getSystemData("cdn服务器", systemStructure.getCdn());
getSystemData("vps服务器", systemStructure.getVps());
Browser browser = reform.getBrowser();
for (CompatibleBrowser compatibleBrowser : browser.getCompatibleBrowsers()) {
exportEntity("原兼容的浏览器", compatibleBrowser.getName());
}
for (BaseDes browserPlug : browser.getBrowserPlugs()) {
exportEntity("浏览器插件", browserPlug.getName());
}
return excelDataTemp;
Middleware middleware = reform.getMiddleware();
for (MiddlewareEnum middlewareEnum : middleware.getMiddlewareEnums()) {
exportEntity("原中间件", middlewareEnum.getName());
}
for (OtherApi otherApi : middleware.getOtherApis()) {
exportEntity("原第三方api", otherApi.getApiName());
}
for (BaseDes baseDes : middleware.getMicroServices()) {
exportEntity("原额外微服务", baseDes.getName());
}
private static ExcelDataTemp getExcelInData(Sheet sheetAt) {
int firstRowNum = sheetAt.getFirstRowNum();
int lastRowNum = sheetAt.getLastRowNum();
ArrayList<ExcelDataEntity> excelDataEntities = new ArrayList<>();
for (int i = 1; i <= lastRowNum; i++) {
ExcelDataEntity excelDataEntity = new ExcelDataEntity();
String content = getExcelCell(i, 1, sheetAt);
excelDataEntity.setName(content);
String value = getExcelCell(i, 2, sheetAt);
excelDataEntity.setValue(value);
String remark = getExcelCell(i, 3, sheetAt);
excelDataEntity.setRemark(remark);
String version = getExcelCell(i, 4, sheetAt);
excelDataEntity.setVersion(version);
excelDataEntities.add(excelDataEntity);
Database database = reform.getDatabase();
for (DatabaseType databaseType : database.getDatabaseType()) {
exportEntity("数据库类型", databaseType.getName());
}
exportEntity("视图", flipYesOrNo(database.getView()));
exportEntity("存储过程", flipYesOrNo(database.getStorage()));
exportEntity("函数", flipYesOrNo(database.getFunction()));
exportEntity("视图", flipYesOrNo(database.getView()));
exportEntity("dblink", flipYesOrNo(database.getDbLink()));
exportEntity("定时任务", flipYesOrNo(database.getTimeTask()));
exportEntity("序列", flipYesOrNo(database.getSequence()));
exportEntity("触发器", flipYesOrNo(database.getTrigger()));
exportEntity("容灾", flipYesOrNo(database.getDisasterTolerance()));
exportEntity("安全", flipYesOrNo(database.getSafe()));
exportEntity("高性能", flipYesOrNo(database.getPerformance()));
exportEntity("读写分离", flipYesOrNo(database.getSeparate()));
ExcelDataTemp excelDataTemp = new ExcelDataTemp();
excelDataTemp.setArrayList(excelDataEntities);
DevelopLanguageSystem developLanguageSystem = reform.getDevelopLanguageSystem();
exportEntity("原开发语言", developLanguageSystem.getName());
for (BaseDes devLanguage : developLanguageSystem.getDevLanguages()) {
exportEntity("其他开发语言", devLanguage.getName());
}
for (BaseDes devFramework : developLanguageSystem.getDevFrameworks()) {
exportEntity("原应用主要开发架构", devFramework.getName());
}
for (BaseDes devFramework : developLanguageSystem.getFontDevTechnologies()) {
exportEntity("原前端应用主要开发架构/bs", devFramework.getName());
}
for (BaseDes devFramework : developLanguageSystem.getCsDevTechnologies()) {
exportEntity("原前端应用主要开发架构/cs", devFramework.getName());
}
for (BaseDes opgas : developLanguageSystem.getOpGAs()) {
exportEntity("原封装方式", opgas.getName());
}
}
return excelDataTemp;
}
......@@ -518,14 +555,15 @@ public class ExcelUtil {
}
private static String flipYesOrNo(Integer target) {
if (target==1) {
if (target == 1) {
return "是";
} else if (target==2) {
} else if (target == 2) {
return "否";
} else {
return "我不清楚";
}
}
private static int returnNum(String target) {
if (!"".equals(target)) {
return Integer.valueOf(target);
......@@ -542,16 +580,28 @@ public class ExcelUtil {
}
}
private static String getDeploy(Integer target){
if(target==1){
private static String getDeploy(Integer target) {
if (target == 1) {
return "本地";
}else if(target==2){
} else if (target == 2) {
return "政务云";
}else{
} else {
return "我不清楚";
}
}
private static void getSystemData(String name, Details application) {
if (application != null) {
exportEntity(name + "部署情况", getDeploy(application.getDeploy()));
exportEntity(name + "操作系统", application.getOperateSystem().getName());
exportEntity(name + "台数", application.getNum());
exportEntity(name + "cpu个数", application.getCpuNum());
exportEntity(name + "主频", application.getGhz());
exportEntity(name + "服务器空间", application.getSpace());
exportEntity(name + "内存", application.getMemory());
}
}
private static Details getSysDetails(int rowNum, int cellNum, Sheet sheetAt) {
Details details = new Details();
String slb = getExcelCell(rowNum, cellNum, sheetAt);
......@@ -561,12 +611,12 @@ public class ExcelUtil {
} else if ("政务云".equals(slb)) {
details.setDeploy(2);
}
String slbsys = getExcelCell(rowNum, cellNum + 1, sheetAt);
String num3 = getExcelCell(rowNum, cellNum + 1, sheetAt);
details.setNum(returnNum(num3));
String slbsys = getExcelCell(rowNum, cellNum + 2, sheetAt);
OperateSystem slbByName = OperateSystem.getByName(slbsys);
details.setOperateSystem(slbByName);
String num3 = getExcelCell(rowNum, cellNum + 2, sheetAt);
details.setNum(returnNum(num3));
String cpu3 = getExcelCell(rowNum, cellNum + 3, sheetAt);
details.setCpuNum(returnNum(cpu3));
String ghz3 = getExcelCell(rowNum, cellNum + 4, sheetAt);
......@@ -576,19 +626,13 @@ public class ExcelUtil {
return details;
}
public static void main(String[] args) {
ArrayList<Object> objects = new ArrayList<>();
objects.add(null);
System.out.println(objects.size());
}
private static ExcelDataEntity exportEntity(String name, Object value) {
private static void exportEntity(String name, Object value) {
ExcelDataEntity excelDataEntity = new ExcelDataEntity();
excelDataEntity.setName(name);
if (value != null) {
excelDataEntity.setValue(value.toString());
}
return excelDataEntity;
arrayList.add(excelDataEntity);
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论