diff --git a/Doc/待处理/区/【11】区(县)情/【鲁甸县】区(县)情.xlsx b/Doc/待处理/区/【11】区(县)情/区(县)情.xlsx similarity index 69% rename from Doc/待处理/区/【11】区(县)情/【鲁甸县】区(县)情.xlsx rename to Doc/待处理/区/【11】区(县)情/区(县)情.xlsx index a57fbf4a..22924c6e 100644 Binary files a/Doc/待处理/区/【11】区(县)情/【鲁甸县】区(县)情.xlsx and b/Doc/待处理/区/【11】区(县)情/区(县)情.xlsx differ diff --git a/Doc/待处理/区/【11】区(县)情/区(县)情【成果】.xlsx b/Doc/待处理/区/【11】区(县)情/区(县)情【成果】.xlsx new file mode 100644 index 00000000..c73e1ae7 Binary files /dev/null and b/Doc/待处理/区/【11】区(县)情/区(县)情【成果】.xlsx differ diff --git a/src/main/java/com/dsideal/base/Tools/FillData/Area/A10.java b/src/main/java/com/dsideal/base/Tools/FillData/Area/A10.java index 28c1d8af..becb62ae 100644 --- a/src/main/java/com/dsideal/base/Tools/FillData/Area/A10.java +++ b/src/main/java/com/dsideal/base/Tools/FillData/Area/A10.java @@ -28,14 +28,6 @@ public class A10 { //哪些是处理不了的,就不处理了~ static String[] excludeCityList = {"~$", "磨憨-磨丁", "经开区", "阳宗海"}; - - //第二个表格的表头信息 - static String tableKeyword = "2023年州市、县区人口及教育数据表"; - //第二个表格的表头有几行 - static int tableHeadRows = 4; - //第二个表格的最后一列的列名 - static String tableLetterIndex = "BA"; - public static void main(String[] args) throws IOException, InvalidFormatException { //初始化数据库连接 LocalMysqlConnectUtil.Init(); diff --git a/src/main/java/com/dsideal/base/Tools/FillData/Area/A11.java b/src/main/java/com/dsideal/base/Tools/FillData/Area/A11.java new file mode 100644 index 00000000..817ac466 --- /dev/null +++ b/src/main/java/com/dsideal/base/Tools/FillData/Area/A11.java @@ -0,0 +1,68 @@ +package com.dsideal.base.Tools.FillData.Area; + +import cn.hutool.core.io.FileUtil; +import com.dsideal.base.Tools.FillData.ExcelKit.ExcelKit; +import com.dsideal.base.Tools.Util.LocalMysqlConnectUtil; +import com.dsideal.base.Tools.Util.ReadDocxUtil; +import com.jfinal.kit.StrKit; +import com.jfinal.plugin.activerecord.Db; +import com.jfinal.plugin.activerecord.SqlPara; +import org.apache.poi.openxml4j.exceptions.InvalidFormatException; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFCellStyle; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import com.jfinal.plugin.activerecord.Record; + +public class A11 { + + //示例Excel + static String sampleExcelPath = "D:\\dsWork\\YunNanDsBase\\Doc\\待处理\\区\\【11】区(县)情\\区(县)情.xlsx"; + + + public static void main(String[] args) throws IOException, InvalidFormatException { + //初始化数据库连接 + LocalMysqlConnectUtil.Init(); + + //结果Excel + XSSFWorkbook outWorkbook = new XSSFWorkbook(); + //结果Sheet + XSSFSheet outSheet = ExcelKit.CreateSheet(outWorkbook); + //样式 + XSSFCellStyle headerStyle = ExcelKit.getHeaderStyle(outWorkbook); + XSSFCellStyle dataStyle = ExcelKit.getDataStyle(outWorkbook); + //如果样例文件是xls格式,则转化为xlsx格式 + sampleExcelPath = ExcelKit.ConvertXlsToXlsx(sampleExcelPath); + //拷贝文件头 + ExcelKit.CopyHead(sampleExcelPath, outSheet, headerStyle); + + //目标Excel,就是把文件名解析出来后,后面添加上【成果】,需要动态计算获取,不能写死 + String excelPath = sampleExcelPath.replace(".xlsx", "【成果】.xlsx"); + ExcelKit.delExcel(excelPath); + + SqlPara sqlPara = Db.getSqlPara("DataEase.getAreaMemo"); + List list = Db.find(sqlPara); + + int rowIndex = 0; + for (Record record : list) { + String areaName = record.getStr("area_name"); + String cityName = record.getStr("city_name"); + String fullName = record.getStr("full_name"); + String memo = record.getStr("memo"); + Row outRow = outSheet.createRow(++rowIndex); + ExcelKit.putData(outRow, new ArrayList<>( + Arrays.asList(areaName, fullName, memo, cityName)), dataStyle); + } + + //保存文件 + ExcelKit.saveExcel(excelPath, outWorkbook); + System.out.println("县区所有文件处理完成!"); + } +} diff --git a/src/main/resources/Sql/dataease.sql b/src/main/resources/Sql/dataease.sql index 9adff0da..c3f6b3f7 100644 --- a/src/main/resources/Sql/dataease.sql +++ b/src/main/resources/Sql/dataease.sql @@ -25,4 +25,12 @@ #sql("getTableName") select table_name from dataease.core_dataset_table where dataset_group_id=#para(dataset_group_id); #end + + -- 获取县区的描述信息 + #sql("getAreaMemo") + select t1.id as area_id,t1.area_name,t1.memo,t1.full_name,t2.area_name as city_name from t_dm_area as t1 + left join t_dm_area as t2 on t1.parent_id=t2.id + where t1.province_id='FD61813E-70A1-42AB-9A8E-141ED4D47B98' and t1.level_id=5 + order by t1.city_id + #end #end \ No newline at end of file