kgdxpr 2 years ago
commit 229c8402c1

@ -8,6 +8,7 @@ import com.dsideal.QingLong.Util.SessionKit;
import com.jfinal.aop.Before;
import com.jfinal.core.Controller;
import com.jfinal.ext.interceptor.POST;
import com.jfinal.ext.interceptor.GET;
import com.jfinal.plugin.activerecord.Record;
import com.jfinal.kit.Kv;
import com.jfinal.upload.UploadFile;
@ -93,10 +94,54 @@ public class CollectController extends Controller {
}
}
//通过后记录新增加了一个任务模板文件共N个模板记录到数据库表中然后提供给前台这些数据信息
cm.addExcelJob(publish_role_id,person_id,kvList,upload_excel_filename);
int job_id = cm.addExcelJob(publish_role_id, person_id, kvList, upload_excel_filename);
Map map = new HashMap();
map.put("job_id", job_id);
map.put("success", true);
map.put("message", "模板上传成功!");
renderJson(map);
}
/**
*
*/
@Before({GET.class})
@IsLoginInterface({})
public void getDataTypeDict() {
List<Record> list = cm.getDataTypeDict();
renderJson(CommonUtil.renderJsonForLayUI(list));
}
/**
* Sheet
*/
@Before({POST.class})
@IsLoginInterface({})
public void saveSheet() {
}
/**
* job_id+sheet_index
*
* @param job_id
* @param sheet_index
*/
@Before({POST.class})
@IsLoginInterface({})
public void checkSheet(int job_id, int sheet_index) {
}
/**
*
*
* @param job_id
*/
@Before({POST.class})
@IsLoginInterface({})
public void saveJob(int job_id) {
}
}

@ -5,6 +5,7 @@ import com.jfinal.kit.Kv;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
import java.util.ArrayList;
import java.util.List;
public class CollectModel {
@ -27,7 +28,7 @@ public class CollectModel {
* @param person_id
* @param kvList
*/
public void addExcelJob(int publish_role_id, String person_id, List<Kv> kvList, String upload_excel_filename) {
public int addExcelJob(int publish_role_id, String person_id, List<Kv> kvList, String upload_excel_filename) {
//1、保存任务信息
Record record = new Record();
record.set("upload_excel_filename", upload_excel_filename);
@ -38,9 +39,74 @@ public class CollectModel {
record.set("publish_role_id", publish_role_id);
record.set("job_type", 2);
Db.save("t_collect_job", "job_id", record);
//任务编号
int job_id = record.getInt("job_id");
//2、保存Sheet表信息
int sheetIdx = 0;
for (Kv kv : kvList) {
String table_name = "ds_job_" + job_id + "_" + sheetIdx;
int sheet_index = kv.getInt("sheet_index");
String sheet_name = kv.getStr("sheet_name");
int start_row = kv.getInt("start_row");
int end_row = kv.getInt("end_row");
int start_column = kv.getInt("start_column");
int end_column = kv.getInt("end_column");
int data_start_row = kv.getInt("data_start_row");
int column_num = kv.getInt("column_num");
sheetIdx++;
Record rSheet = new Record();
rSheet.set("job_id", job_id);
rSheet.set("sheet_index", sheet_index);
rSheet.set("sheet_name", sheet_name);
rSheet.set("is_check", 0);
rSheet.set("table_name", table_name);
rSheet.set("start_row", start_row);
rSheet.set("end_row", end_row);
rSheet.set("start_column", start_column);
rSheet.set("end_column", end_column);
rSheet.set("data_start_row", data_start_row);
rSheet.set("column_num", column_num);
Db.save("t_collect_job_sheet", "job_id,sheet_index", rSheet);
}
//3、保存Sheet表中各个列的信息
List<Record> writeList = new ArrayList<>();
sheetIdx = 0;
for (Kv kv : kvList) {
List<Record> list = (List<Record>) kv.get("list");
int colIdx = 0;
for (Record r : list) {
String column_name = r.getStr("column_name");
String memo = r.getStr("memo");
Record writeRecord = new Record();
writeRecord.set("job_id", job_id);
writeRecord.set("sheet_index", sheetIdx);
writeRecord.set("column_index", colIdx);
writeRecord.set("column_name", column_name);
writeRecord.set("original_name", memo);
writeRecord.set("column_type_id", "varchar(2048)");
writeRecord.set("column_type_name", "文本");
writeRecord.set("allow_blank", true);
writeRecord.set("options", "");
writeList.add(writeRecord);
colIdx++;
}
sheetIdx++;
}
Db.batchSave("t_collect_job_sheet_col", writeList, 100);
return job_id;
}
/**
*
*
* @return
*/
public List<Record> getDataTypeDict() {
String sql = "select * from t_collect_datatype order by id";
return Db.find(sql);
}
}
Loading…
Cancel
Save