|
@@ -62,14 +62,381 @@ public class ImportKnowledgeForEdit {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
- initCityLocation(classes,"cityLocation","气候分区");
|
|
|
- writeFuncSqlToFile(classes, "cityLocation");
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ initCityDevelopmentLevel(classes,"cityDevelopmentLevel","城市发展水平");
|
|
|
+ writeFuncSqlToFile(classes, "cityDevelopmentLevel");
|
|
|
classes.clear();
|
|
|
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void initCityDevelopmentLevel(List<RwdeditRefTypeInfosModel> models, String refKey, String sheetName) throws IOException {
|
|
|
+ String file = basepath + "/附表14-地域性信息表.xlsx";
|
|
|
+
|
|
|
+ FileInputStream inputStream = new FileInputStream(file);
|
|
|
+ Workbook workbook = new XSSFWorkbook(inputStream);
|
|
|
+ Sheet sheet = workbook.getSheet(sheetName);
|
|
|
+
|
|
|
+
|
|
|
+ int startRowNum = 3;
|
|
|
+ int lastRowNum = sheet.getLastRowNum();
|
|
|
+ Set<String> systemCodes = new HashSet<>();
|
|
|
+ Set<String> majorCodes = new HashSet<>();
|
|
|
+ Set<String> equipCodes = new HashSet<>();
|
|
|
+ Set<String> componentCodes = new HashSet<>();
|
|
|
+ CacheModel cache = new CacheModel();
|
|
|
+ for (int rowIndex = startRowNum; rowIndex <= lastRowNum; rowIndex++) {
|
|
|
+ Row row = sheet.getRow(rowIndex);
|
|
|
+ if (row == null) {
|
|
|
+ log.info("row[{}] is null", rowIndex);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ CacheModel target = new CacheModel();
|
|
|
+ target.majorName = (String) ExcelUtils.parseCell(row.getCell(1), "string");
|
|
|
+ target.majorCode = (String) ExcelUtils.parseCell(row.getCell(2), "string");
|
|
|
+ target.systemName = (String) ExcelUtils.parseCell(row.getCell(3), "string");
|
|
|
+ target.systemCode = (String) ExcelUtils.parseCell(row.getCell(4), "string");
|
|
|
+ target.equipName = (String) ExcelUtils.parseCell(row.getCell(5), "string");
|
|
|
+ target.equipCode = (String) ExcelUtils.parseCell(row.getCell(6), "string");
|
|
|
+ target.componentName = (String) ExcelUtils.parseCell(row.getCell(7), "string");
|
|
|
+ target.componentCode = (String) ExcelUtils.parseCell(row.getCell(8), "string");
|
|
|
+ String commentsOnForm = (String) ExcelUtils.parseCell(row.getCell(9), "string");
|
|
|
+
|
|
|
+
|
|
|
+ if (target.majorCode != null) {
|
|
|
+ cache.majorCode = target.majorCode;
|
|
|
+ cache.majorName = target.majorName;
|
|
|
+ cache.systemCode = null;
|
|
|
+ cache.systemName = null;
|
|
|
+ cache.equipCode = null;
|
|
|
+ cache.equipName = null;
|
|
|
+ cache.componentCode = null;
|
|
|
+ cache.componentName = null;
|
|
|
+ } else {
|
|
|
+ target.majorCode = cache.majorCode;
|
|
|
+ target.majorName = cache.majorName;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (target.systemCode != null) {
|
|
|
+ cache.systemCode = target.systemCode;
|
|
|
+ cache.systemName = target.systemName;
|
|
|
+ cache.equipCode = null;
|
|
|
+ cache.equipName = null;
|
|
|
+ cache.componentCode = null;
|
|
|
+ cache.componentName = null;
|
|
|
+ } else {
|
|
|
+ target.systemCode = cache.systemCode;
|
|
|
+ target.systemName = cache.systemName;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (target.equipCode != null) {
|
|
|
+ cache.equipCode = target.equipCode;
|
|
|
+ cache.equipName = target.equipName;
|
|
|
+ cache.componentCode = null;
|
|
|
+ cache.componentName = null;
|
|
|
+ } else {
|
|
|
+ target.equipCode = cache.equipCode;
|
|
|
+ target.equipName = cache.equipName;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (target.componentCode != null) {}
|
|
|
+
|
|
|
+
|
|
|
+ if (!majorCodes.contains(target.majorCode)
|
|
|
+ && StringUtils.isNotBlank(target.majorCode)
|
|
|
+ && StringUtils.isNotBlank(target.majorName)) {
|
|
|
+ RwdeditRefTypeInfosModel major = new RwdeditRefTypeInfosModel();
|
|
|
+ major.setRefKey(refKey);
|
|
|
+ major.setCode(target.majorCode);
|
|
|
+ major.setName(target.majorName);
|
|
|
+ major.setParentCode("-9999");
|
|
|
+ major.setCreateUser(CREATE_USER_ID);
|
|
|
+ major.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ if (StringUtils.isBlank(target.systemCode)
|
|
|
+ && StringUtils.isBlank(target.equipCode)
|
|
|
+ && StringUtils.isBlank(target.componentCode)
|
|
|
+ && StringUtils.isNotBlank(commentsOnForm)){
|
|
|
+ major.setDataSource(objectMapper.createObjectNode().put("commentsOnForm",commentsOnForm));
|
|
|
+ }
|
|
|
+ models.add(major);
|
|
|
+ majorCodes.add(target.majorCode);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if (!systemCodes.contains(target.systemCode)
|
|
|
+ && StringUtils.isNotBlank(target.systemCode)
|
|
|
+ && StringUtils.isNotBlank(target.systemName)) {
|
|
|
+ RwdeditRefTypeInfosModel system = new RwdeditRefTypeInfosModel();
|
|
|
+ system.setRefKey(refKey);
|
|
|
+ system.setCode(target.systemCode);
|
|
|
+ system.setName(target.systemName);
|
|
|
+ system.setParentCode(target.majorCode);
|
|
|
+ if (StringUtils.isBlank(target.equipCode)
|
|
|
+ && StringUtils.isBlank(target.componentCode)
|
|
|
+ && StringUtils.isNotBlank(commentsOnForm)){
|
|
|
+ system.setDataSource(objectMapper.createObjectNode().put("commentsOnForm",commentsOnForm));
|
|
|
+ }
|
|
|
+ system.setCreateUser(CREATE_USER_ID);
|
|
|
+ system.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ models.add(system);
|
|
|
+ systemCodes.add(target.systemCode);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!equipCodes.contains(target.equipCode)
|
|
|
+ && StringUtils.isNotBlank(target.equipCode)
|
|
|
+ && StringUtils.isNotBlank(target.equipName)) {
|
|
|
+ RwdeditRefTypeInfosModel system = new RwdeditRefTypeInfosModel();
|
|
|
+ system.setRefKey(refKey);
|
|
|
+ system.setCode(target.equipCode);
|
|
|
+ system.setName(target.equipName);
|
|
|
+ system.setParentCode(target.systemCode);
|
|
|
+ if (StringUtils.isBlank(target.componentCode)
|
|
|
+ && StringUtils.isNotBlank(commentsOnForm)){
|
|
|
+ system.setDataSource(objectMapper.createObjectNode().put("commentsOnForm",commentsOnForm));
|
|
|
+ }
|
|
|
+ system.setCreateUser(CREATE_USER_ID);
|
|
|
+ system.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ models.add(system);
|
|
|
+ equipCodes.add(target.equipCode);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!componentCodes.contains(target.componentCode)
|
|
|
+ && StringUtils.isNotBlank(target.componentCode)
|
|
|
+ && StringUtils.isNotBlank(target.componentName)) {
|
|
|
+ RwdeditRefTypeInfosModel system = new RwdeditRefTypeInfosModel();
|
|
|
+ system.setRefKey(refKey);
|
|
|
+ system.setCode(target.componentCode);
|
|
|
+ system.setName(target.componentName);
|
|
|
+ system.setParentCode(target.equipCode);
|
|
|
+ if (StringUtils.isNotBlank(commentsOnForm)){
|
|
|
+ system.setDataSource(objectMapper.createObjectNode().put("commentsOnForm",commentsOnForm));
|
|
|
+ }
|
|
|
+ system.setCreateUser(CREATE_USER_ID);
|
|
|
+ system.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ models.add(system);
|
|
|
+ componentCodes.add(target.componentCode);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void initGeographicalDivision(List<RwdeditRefTypeInfosModel> models, String refKey, String sheetName) throws IOException {
|
|
|
+ String file = basepath + "/附表14-地域性信息表.xlsx";
|
|
|
+
|
|
|
+ FileInputStream inputStream = new FileInputStream(file);
|
|
|
+ Workbook workbook = new XSSFWorkbook(inputStream);
|
|
|
+ Sheet sheet = workbook.getSheet(sheetName);
|
|
|
+
|
|
|
+
|
|
|
+ int startRowNum = 2;
|
|
|
+ int lastRowNum = sheet.getLastRowNum();
|
|
|
+ Set<String> systemCodes = new HashSet<>();
|
|
|
+ Set<String> majorCodes = new HashSet<>();
|
|
|
+ CacheModel cache = new CacheModel();
|
|
|
+ for (int rowIndex = startRowNum; rowIndex <= lastRowNum; rowIndex++) {
|
|
|
+ Row row = sheet.getRow(rowIndex);
|
|
|
+ if (row == null) {
|
|
|
+ log.info("row[{}] is null", rowIndex);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ CacheModel target = new CacheModel();
|
|
|
+ target.majorName = (String) ExcelUtils.parseCell(row.getCell(2), "string");
|
|
|
+ target.majorCode = (String) ExcelUtils.parseCell(row.getCell(1), "string");
|
|
|
+ target.systemName = (String) ExcelUtils.parseCell(row.getCell(4), "string");
|
|
|
+ target.systemCode = (String) ExcelUtils.parseCell(row.getCell(3), "string");
|
|
|
+ String inclusion = (String) ExcelUtils.parseCell(row.getCell(5), "string");
|
|
|
+
|
|
|
+
|
|
|
+ if (target.majorCode != null) {
|
|
|
+ cache.majorCode = target.majorCode;
|
|
|
+ cache.majorName = target.majorName;
|
|
|
+ cache.systemCode = null;
|
|
|
+ cache.systemName = null;
|
|
|
+ cache.equipCode = null;
|
|
|
+ cache.equipName = null;
|
|
|
+ cache.componentCode = null;
|
|
|
+ cache.componentName = null;
|
|
|
+ } else {
|
|
|
+ target.majorCode = cache.majorCode;
|
|
|
+ target.majorName = cache.majorName;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (target.systemCode != null) {}
|
|
|
+
|
|
|
+
|
|
|
+ if (!majorCodes.contains(target.majorCode)) {
|
|
|
+ RwdeditRefTypeInfosModel major = new RwdeditRefTypeInfosModel();
|
|
|
+ major.setRefKey(refKey);
|
|
|
+ major.setCode(target.majorCode);
|
|
|
+ major.setName(target.majorName);
|
|
|
+ major.setParentCode("-9999");
|
|
|
+ major.setCreateUser(CREATE_USER_ID);
|
|
|
+ major.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ if (StringUtils.isBlank(target.systemCode) && StringUtils.isNotBlank(inclusion)){
|
|
|
+ major.setDataSource(objectMapper.createObjectNode().put("inclusion",inclusion));
|
|
|
+ }
|
|
|
+ models.add(major);
|
|
|
+ majorCodes.add(target.majorCode);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if (!systemCodes.contains(target.systemCode) && StringUtils.isNotBlank(target.systemCode)) {
|
|
|
+ RwdeditRefTypeInfosModel system = new RwdeditRefTypeInfosModel();
|
|
|
+ system.setRefKey(refKey);
|
|
|
+ system.setCode(target.systemCode);
|
|
|
+ system.setName(target.systemName);
|
|
|
+ system.setParentCode(target.majorCode);
|
|
|
+ system.setDataSource(objectMapper.createObjectNode().put("inclusion",inclusion));
|
|
|
+ system.setCreateUser(CREATE_USER_ID);
|
|
|
+ system.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ models.add(system);
|
|
|
+ systemCodes.add(target.systemCode);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private void initFuncidCodeVocabulary(List<RwdeditRefTypeInfosModel> models, String refKey, String sheetName) throws IOException {
|
|
|
+ String file = basepath + "/附表4-信息点编码词汇表.xlsx";
|
|
|
+
|
|
|
+ FileInputStream inputStream = new FileInputStream(file);
|
|
|
+ Workbook workbook = new XSSFWorkbook(inputStream);
|
|
|
+ Sheet sheet = workbook.getSheet(sheetName);
|
|
|
+
|
|
|
+
|
|
|
+ int startRowNum = 2;
|
|
|
+ int lastRowNum = sheet.getLastRowNum();
|
|
|
+ Set<String> codes = new HashSet<>();
|
|
|
+ for (int rowIndex = startRowNum; rowIndex <= lastRowNum; rowIndex++) {
|
|
|
+ Row row = sheet.getRow(rowIndex);
|
|
|
+ if (row == null) {
|
|
|
+ log.info("row[{}] is null", rowIndex);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ String chineseWord = (String) ExcelUtils.parseCell(row.getCell(0), "string");
|
|
|
+ String code = (String) ExcelUtils.parseCell(row.getCell(1), "string");
|
|
|
+ String name = (String) ExcelUtils.parseCell(row.getCell(2), "string");
|
|
|
+ if (codes.contains(code)){
|
|
|
+ log.info("code[{}] is exist", code);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(code) || StringUtils.isBlank(name)){
|
|
|
+ log.info("code[{}] or name[{}] is null", code,name);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ codes.add(code);
|
|
|
+ RwdeditRefTypeInfosModel major = new RwdeditRefTypeInfosModel();
|
|
|
+ major.setRefKey(refKey);
|
|
|
+ major.setCode(code);
|
|
|
+ major.setName(name);
|
|
|
+ major.setParentCode("-9999");
|
|
|
+ major.setCreateUser(CREATE_USER_ID);
|
|
|
+ major.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ if (StringUtils.isNotBlank(chineseWord)){
|
|
|
+ major.setDataSource(objectMapper.createObjectNode().put("chineseWord",chineseWord));
|
|
|
+ }
|
|
|
+ models.add(major);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void initClimaticDivision(List<RwdeditRefTypeInfosModel> models, String refKey, String sheetName) throws IOException {
|
|
|
+ String file = basepath + "/附表14-地域性信息表.xlsx";
|
|
|
+
|
|
|
+ FileInputStream inputStream = new FileInputStream(file);
|
|
|
+ Workbook workbook = new XSSFWorkbook(inputStream);
|
|
|
+ Sheet sheet = workbook.getSheet(sheetName);
|
|
|
+
|
|
|
+
|
|
|
+ int startRowNum = 3;
|
|
|
+ int lastRowNum = sheet.getLastRowNum();
|
|
|
+ Set<String> systemCodes = new HashSet<>();
|
|
|
+ Set<String> majorCodes = new HashSet<>();
|
|
|
+ Set<String> equipmentCodes = new HashSet<>();
|
|
|
+ CacheModel cache = new CacheModel();
|
|
|
+ for (int rowIndex = startRowNum; rowIndex <= lastRowNum; rowIndex++) {
|
|
|
+ Row row = sheet.getRow(rowIndex);
|
|
|
+ if (row == null) {
|
|
|
+ log.info("row[{}] is null", rowIndex);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ CacheModel target = new CacheModel();
|
|
|
+ target.majorName = (String) ExcelUtils.parseCell(row.getCell(1), "string");
|
|
|
+ target.majorCode = (String) ExcelUtils.parseCell(row.getCell(2), "string");
|
|
|
+ target.systemName = (String) ExcelUtils.parseCell(row.getCell(3), "string");
|
|
|
+ target.systemCode = (String) ExcelUtils.parseCell(row.getCell(4), "string");
|
|
|
+ String describe = (String) ExcelUtils.parseCell(row.getCell(5), "string");
|
|
|
+
|
|
|
+
|
|
|
+ if (target.majorCode != null) {
|
|
|
+ cache.majorCode = target.majorCode;
|
|
|
+ cache.majorName = target.majorName;
|
|
|
+ cache.systemCode = null;
|
|
|
+ cache.systemName = null;
|
|
|
+ cache.equipCode = null;
|
|
|
+ cache.equipName = null;
|
|
|
+ cache.componentCode = null;
|
|
|
+ cache.componentName = null;
|
|
|
+ } else {
|
|
|
+ target.majorCode = cache.majorCode;
|
|
|
+ target.majorName = cache.majorName;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (target.systemCode != null) {}
|
|
|
+
|
|
|
+
|
|
|
+ if (!majorCodes.contains(target.majorCode)) {
|
|
|
+ RwdeditRefTypeInfosModel major = new RwdeditRefTypeInfosModel();
|
|
|
+ major.setRefKey(refKey);
|
|
|
+ major.setCode(target.majorCode);
|
|
|
+ major.setName(target.majorName);
|
|
|
+ major.setParentCode("-9999");
|
|
|
+ major.setCreateUser(CREATE_USER_ID);
|
|
|
+ major.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ if (StringUtils.isBlank(target.systemCode) && StringUtils.isNotBlank(describe)){
|
|
|
+ major.setDataSource(objectMapper.createObjectNode().put("zoningBasis",describe));
|
|
|
+ }
|
|
|
+ models.add(major);
|
|
|
+ majorCodes.add(target.majorCode);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if (!systemCodes.contains(target.systemCode) && StringUtils.isNotBlank(target.systemCode)) {
|
|
|
+ RwdeditRefTypeInfosModel system = new RwdeditRefTypeInfosModel();
|
|
|
+ system.setRefKey(refKey);
|
|
|
+ system.setCode(target.systemCode);
|
|
|
+ system.setName(target.systemName);
|
|
|
+ system.setParentCode(target.majorCode);
|
|
|
+ system.setDataSource(objectMapper.createObjectNode().put("zoningBasis",describe));
|
|
|
+ system.setCreateUser(CREATE_USER_ID);
|
|
|
+ system.setUpdateUser(UPDATE_USER_ID);
|
|
|
+ models.add(system);
|
|
|
+ systemCodes.add(target.systemCode);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
public void initCityLocation(List<RwdeditRefTypeInfosModel> models, String refKey, String sheetName) throws Exception {
|
|
|
String file = basepath + "/附表14-地域性信息表.xlsx";
|