main
黄海 2 years ago
parent 965dc0c874
commit 348b4c2b5b

@ -495,14 +495,14 @@ public class CollectController extends Controller {
excelFile.getFile().renameTo(new File(basePath + File.separator + upload_excel_filename_user));
Record jobRecord = cm.getJob(job_id);
String upload_excel_filename = jobRecord.getStr("upload_excel_filename_finish");//原始模板文件
String upload_excel_filename_finish = jobRecord.getStr("upload_excel_filename_finish");//系统生成的模板文件
//我提供的模板文件
String f1 = basePath + File.separator + upload_excel_filename;
String f1 = basePath + File.separator + upload_excel_filename_finish;
//用户上传的填充完的EXCEL文件
String f2 = basePath + File.separator + upload_excel_filename_user;
//对比两个EXCEL文件 是不是格式一致,也就是是不是上传了正确的模板文件
int sheetCnt = cm.getSheetCount(upload_excel_filename);
int sheetCnt = cm.getSheetCount(upload_excel_filename_finish);
for (int i = 0; i < sheetCnt; i++) {
List<Map.Entry<Integer, Integer>> chayi = cm.checkYiZhi(f1, f2, i);
if (chayi.size() > 0) {
@ -524,7 +524,7 @@ public class CollectController extends Controller {
//移除所有批注
PoiUtil.RemoveAllComment(sheet);
//数据起始行
Record r = cm.getSheetConfig(upload_excel_filename, i);
Record r = cm.getSheetConfig(upload_excel_filename_finish, i);
int data_start_row = r.getInt("data_start_row");
//恢复背景色
PoiUtil.resetStyle(wb, sheet, data_start_row);
@ -532,7 +532,7 @@ public class CollectController extends Controller {
//数据有效行数
int lastRowNum = sheet.getLastRowNum();
//遍历每一列
List<Record> list = cm.getSheetMapping(upload_excel_filename, i);
List<Record> list = cm.getSheetMapping(upload_excel_filename_finish, i);
for (Record record : list) {//列
int excel_column_idx = record.getInt("excel_column_idx");//第几列
String column_type = record.getStr("column_type");//类型
@ -607,7 +607,7 @@ public class CollectController extends Controller {
}
// 检查通过,导入数据
for (int i = 0; i < sheetCnt; i++)
cm.importData(job_id, upload_excel_filename, wb, i, bureau_id, person_id);
cm.importData(job_id, upload_excel_filename_finish, wb, i, bureau_id, person_id);
//回写完成标记
cm.writeJobFinish(job_id, bureau_id, upload_excel_filename_user);

@ -95,7 +95,7 @@ public class CollectModel {
rSheet.set("end_column", end_column);
rSheet.set("data_start_row", data_start_row);
rSheet.set("column_num", column_num);
rSheet.set("upload_excel_filename", upload_excel_filename);
rSheet.set("upload_excel_filename_finish", "");
Db.save("t_collect_job_sheet", "job_id,sheet_index", rSheet);
}
@ -241,6 +241,12 @@ public class CollectModel {
public void saveJob(int job_id, String job_name, String upload_excel_filename_finish) {
String sql = "update t_collect_job set job_name=?,upload_excel_filename_finish=?,is_save=1 where job_id=?";
Db.update(sql, job_name, upload_excel_filename_finish, job_id);
sql = "update t_collect_job_sheet set upload_excel_filename_finish=? where job_id=?";
Db.update(sql, upload_excel_filename_finish, job_id);
sql = "update t_collect_mapping set upload_excel_filename_finish=? where job_id=?";
Db.update(sql, upload_excel_filename_finish, job_id);
}
/**
@ -358,7 +364,7 @@ public class CollectModel {
record.set("original_name", list.get(i).getStr("original_name"));
record.set("allow_blank", list.get(i).getBoolean("allow_blank"));
record.set("column_type", convertDataType(list.get(i).getStr("data_type_id")));
record.set("upload_excel_filename", upload_excel_filename);
record.set("upload_excel_filename_finish", "");
record.set("sheet_index", sheet_index);
record.set("sheet_name", sheet_name);
record.set("options", list.get(i).getStr("options"));
@ -406,7 +412,7 @@ public class CollectModel {
* @return
*/
public Record getSheetConfig(String upload_excel_filename, int sheet_index) {
String sql = "select * from t_collect_job_sheet where upload_excel_filename=? and sheet_index=?";
String sql = "select * from t_collect_job_sheet where upload_excel_filename_finish=? and sheet_index=?";
return Db.findFirst(sql, upload_excel_filename, sheet_index);
}
@ -417,7 +423,7 @@ public class CollectModel {
* @return
*/
public int getSheetCount(String upload_excel_filename) {
String sql = "select * from t_collect_job_sheet where upload_excel_filename=?";
String sql = "select * from t_collect_job_sheet where upload_excel_filename_finish=?";
List<Record> list = Db.find(sql, upload_excel_filename);
return list.size();
}
@ -425,13 +431,13 @@ public class CollectModel {
/**
* +Sheet
*
* @param upload_excel_filename
* @param upload_excel_filename_finish
* @param sheet_index
* @return
*/
public List<Record> getSheetMapping(String upload_excel_filename, int sheet_index) {
String sql = "select * from t_collect_mapping where upload_excel_filename=? and sheet_index=?";
return Db.find(sql, upload_excel_filename, sheet_index);
public List<Record> getSheetMapping(String upload_excel_filename_finish, int sheet_index) {
String sql = "select * from t_collect_mapping where upload_excel_filename_finish=? and sheet_index=?";
return Db.find(sql, upload_excel_filename_finish, sheet_index);
}
/**
@ -439,13 +445,13 @@ public class CollectModel {
*
* @throws ParseException
*/
public void importData(int job_id, String upload_excel_filename, XSSFWorkbook wb,
public void importData(int job_id, String upload_excel_filename_finish, XSSFWorkbook wb,
int sheetIdx, String bureau_id, String person_id) throws ParseException {
//读取sheet页
XSSFSheet sheet = wb.getSheetAt(sheetIdx);
//通过表名获取到它的读取起始行,终止列
String sql = "select * from t_collect_job_sheet where upload_excel_filename=? and sheet_index=?";
Record record = Db.findFirst(sql, upload_excel_filename, sheetIdx);
String sql = "select * from t_collect_job_sheet where upload_excel_filename_finish=? and sheet_index=?";
Record record = Db.findFirst(sql, upload_excel_filename_finish, sheetIdx);
String table_name = record.getStr("table_name");
//先删除
@ -456,8 +462,8 @@ public class CollectModel {
int column_num = record.getInt("column_num");
//获取字段与EXCEL列的映射信息
sql = "select * from t_collect_mapping where upload_excel_filename=? and sheet_index=?";
List<Record> list = Db.find(sql, upload_excel_filename, sheetIdx);
sql = "select * from t_collect_mapping where upload_excel_filename_finish=? and sheet_index=?";
List<Record> list = Db.find(sql, upload_excel_filename_finish, sheetIdx);
Map<Integer, Record> _map = new HashMap<>();
for (Record r : list) {
int excel_column_idx = r.getInt("excel_column_idx");

Loading…
Cancel
Save