@ -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 ;
}
/ * *