main
黄海 1 year ago
parent f66f752507
commit 4148f8cad9

@ -496,7 +496,7 @@ public class ZbdcController extends Controller {
public void getQueryYqsb(String area_id, int school_type_id, String keyword, String km_code, String level_filter, int year, int page, int limit) {
if (year == 0) year = DateTime.now().year();//如果没有传入获取的年份,那么就是系统的默认当前年份
String bureauIds = zm.getBureauIds(area_id, school_type_id, keyword);
Page<Record> list = zm.getFill(bureauIds, year, km_code, level_filter, page, limit);
Page<Record> list = zm.getQueryYqsb(bureauIds, year, km_code, level_filter, page, limit);
renderJson(CommonUtil.renderJsonForLayUI(list));
}

@ -327,7 +327,10 @@ public class ZbdcModel {
/**
*
*/
public Page<Record> getFill(String bureauIds, int year, String km_code, String level_filter, int page, int limit) {
/**
*
*/
public Page<Record> getFill(String bureau_id, int year, String km_code, String level_filter, int page, int limit) {
String c = "";
if (!StrKit.isBlank(level_filter)) {
String[] s = level_filter.split(",");
@ -335,49 +338,29 @@ public class ZbdcModel {
c += " and level_" + (i + 1) + "='" + s[i] + "' ";
}
}
String sql = "select * from t_zbdc_templet where km_code='" + km_code + "'";
if (!StrKit.isBlank(c)) sql += c;
sql += " order by templet_id";
List<Record> list = Db.find(sql);
//扩充模板
List<Record> nList = new ArrayList<>();
for (String s : bureauIds.split(",")) {
for (Record record : list) {
record.set("bureau_id", s.replace("'", ""));
nList.add(record);
}
}
//获取这些单位已填报的内容
sql = "select t1.templet_id,t1.bureau_id,t2.org_name as bureau_name,(case t2.org_type_id when 9 then '市直' else t3.area_name end ) as xzqh,t1.xysl,t1.update_ts from t_zbdc_fill as t1 inner join t_base_organization as t2 on t1.bureau_id=t2.org_id inner join t_dm_area as t3 on t2.parent_id=t3.area_id where t1.year=?";
if (!StrKit.isBlank(bureauIds)) {
sql += " and t1.bureau_id in (" + bureauIds + ")";
}
List<Record> fillList = Db.find(sql, year);
Map<String, Float> m1 = new HashMap<>();
Map<String, String> m2 = getSchoolNameMap();
Map<String, Record> m4 = getSchoolAreaName();
Map<String, String> m5 = getSchoolTypeNameMap();
String sqlExceptSelect = "from t_zbdc_templet where km_code='" + km_code + "'";
if (!StrKit.isBlank(c)) sqlExceptSelect += c;
sqlExceptSelect += " order by templet_id";
Page<Record> list = Db.paginate(page, limit, "select *", sqlExceptSelect);
//获取此单位已填报的内容
String sql = "select templet_id,bureau_id,xysl,update_ts from t_zbdc_fill where year=? and bureau_id=?";
List<Record> fillList = Db.find(sql, year, bureau_id);
Map<Integer, Float> _map = new HashMap<>();
for (Record record : fillList) {
m1.put(record.getStr("bureau_id") + "_" + record.getInt("templet_id"), record.getFloat("xysl"));
_map.put(record.getInt("templet_id"), record.getFloat("xysl"));
}
//填充已填报的内容
for (Record record : nList) {
record.set("area_name", m4.get(record.getStr("bureau_id")).getStr("area_name"));
record.set("school_type_name", m5.get(record.getStr("bureau_id")));
record.set("bureau_name", m2.get(record.getStr("bureau_id")));
if (m1.containsKey(record.getStr("bureau_id") + "_" + record.getInt("templet_id"))) {
record.set("xysl", m1.get(record.getStr("bureau_id") + "_" + record.getInt("templet_id")));
for (Record record : list.getList()) {
if (_map.containsKey(record.getInt("templet_id"))) {
record.set("xysl", _map.get(record.getInt("templet_id")));
} else {
record.set("xysl", "");
}
}
//再做一下处理,类型四合一,必配+选配返回1或0
for (Record record : nList) {
for (Record record : list.getList()) {
String level_1 = record.getStr("level_1");
String level_2 = record.getStr("level_2");
String level_3 = record.getStr("level_3");
@ -397,8 +380,65 @@ public class ZbdcModel {
if (!StrKit.isBlank(record.getStr("bp"))) record.set("bp_xp", 1);
else record.set("bp_xp", 0);
}
List<Record> finalList = nList.subList((page - 1) * limit, page * limit);
return new Page(finalList, page, limit, list.size() % limit == 0 ? list.size() / limit : list.size() / limit + 1, nList.size());
return list;
}
/**
*
*
* @param km_code
* @param level_filter
* @param year
* @param page
* @param limit
*/
public Page<Record> getQueryYqsb(String bureau_ids, int year, String km_code, String level_filter, int page, int limit) {
String c = "";
if (!StrKit.isBlank(level_filter)) {
String[] s = level_filter.split(",");
for (int i = 0; i < s.length; i++) {
c += " and level_" + (i + 1) + "='" + s[i] + "' ";
}
}
String sql = Db.getSql("Zbdc.getQueryYqsb");
if(!StrKit.isBlank(bureau_ids)){
sql = sql.replace("$bureau_ids$", bureau_ids);
}else{
sql = sql.replace("$bureau_ids$", "''");
}
sql = sql.replace("$year$", String.valueOf(year));
sql = sql.replace("$km_code$", km_code);
if (!StrKit.isBlank(c)) {
sql = sql.replace("$blank$", c);
} else {
sql = sql.replace("$blank$", "");
}
Page<Record> list = Db.paginate(page, limit, "select *", sql);
//再做一下处理,类型四合一,必配+选配返回1或0
for (Record record : list.getList()) {
String level_1 = record.getStr("level_1");
String level_2 = record.getStr("level_2");
String level_3 = record.getStr("level_3");
String level_4 = record.getStr("level_4");
String level = level_1;
if (!StrKit.isBlank(level_2)) {
level += "/" + level_2;
if (!StrKit.isBlank(level_3)) {
level += "/" + level_3;
if (!StrKit.isBlank(level_4)) {
level += "/" + level_4;
}
}
}
record.set("level", level);
//必配或选配
if (!StrKit.isBlank(record.getStr("bp"))) record.set("bp_xp", 1);
else record.set("bp_xp", 0);
}
return list;
}
/**

@ -202,4 +202,14 @@
select area_name, sum(hlwdk) as hlwdk_hlwdk
from t_zbdc_xxjs_szzd_wlaq where year=#para(year) GROUP BY area_name;
#end
#sql("getQueryYqsb")
from ( select t3.org_name as bureau_name,t1.bureau_id,t1.xysl,t1.area_id,t1.area_name,t4.school_type_name,t2.* from t_zbdc_fill as t1
inner join t_zbdc_templet as t2 on t1.templet_id=t2.templet_id inner join t_base_organization as t3
on t1.bureau_id=t3.org_id
inner join t_dm_schooltype as t4 on t3.school_type_id=t4.school_type_id
where
t1.bureau_id in ($bureau_ids$)
and t1.year=$year$ and t2.km_code='$km_code$' $blank$) as ta
#end
#end
Loading…
Cancel
Save