main
黄海 8 months ago
parent 7e2907127b
commit 4374cd65d6

@ -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();

@ -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<Record> 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("县区所有文件处理完成!");
}
}

@ -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
Loading…
Cancel
Save