|
@ -1,6 +1,5 @@
|
|
|
package com.yihu.wlyy.service.app.statistics;
|
|
|
|
|
|
import com.yihu.es.entity.HealthEduArticleES;
|
|
|
import com.yihu.es.entity.HealthEduArticleESResult;
|
|
|
import com.yihu.wlyy.entity.address.Town;
|
|
|
import com.yihu.wlyy.entity.doctor.profile.Doctor;
|
|
@ -16,12 +15,8 @@ import com.yihu.wlyy.repository.doctor.DoctorDao;
|
|
|
import com.yihu.wlyy.repository.organization.HospitalDao;
|
|
|
import com.yihu.wlyy.repository.statistics.PopulationBaseDao;
|
|
|
import com.yihu.wlyy.service.BaseService;
|
|
|
import com.yihu.wlyy.service.app.team.AdminTeamService;
|
|
|
import com.yihu.wlyy.util.*;
|
|
|
import io.swagger.models.auth.In;
|
|
|
import org.apache.commons.collections.map.HashedMap;
|
|
|
import org.apache.commons.lang3.time.DateUtils;
|
|
|
import org.elasticsearch.common.inject.internal.Join;
|
|
|
import org.json.JSONArray;
|
|
|
import org.json.JSONObject;
|
|
|
import org.slf4j.Logger;
|
|
@ -31,15 +26,14 @@ import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.jdbc.support.nativejdbc.OracleJdbc4NativeJdbcExtractor;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.text.DecimalFormat;
|
|
|
import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* Created by lyr on 2016/08/16.
|
|
@ -2304,7 +2298,24 @@ public class StatisticsService extends BaseService {
|
|
|
rs.put(map);
|
|
|
}
|
|
|
//健康教育排行
|
|
|
String edurc_sql = "SELECT s.rowno AS articleRK FROM " +
|
|
|
String adminTeamSql ="SELECT m.id FROM wlyy_admin_team m WHERE m.org_code ='" + orgcode + "'";
|
|
|
List<Map<String,Object>> adminTeamIds = jdbcTemplate.queryForList(adminTeamSql);
|
|
|
String adminTeamIdsStr = adminTeamIds.stream().map(one->String.valueOf(one.get("id"))+",").collect(Collectors.joining());
|
|
|
if (adminTeamIdsStr!= null && adminTeamIdsStr.length()>0){
|
|
|
adminTeamIdsStr = adminTeamIdsStr.substring(0,adminTeamIdsStr.length()-1);
|
|
|
}
|
|
|
startDate = changeDate(startDate);
|
|
|
endDate = changeDate(endDate);
|
|
|
String es_edurc_sql ="SELECT count(*) number,adminTeamCode FROM "+esIndex+" where czrq > '"+startDate+"' and czrq < '"+endDate+"' and adminTeamCode in ("+adminTeamIdsStr+") GROUP BY adminTeamCode ORDER BY number DESC";
|
|
|
List<Map<String, Object>> returnList = elasticsearchUtil.excuteDataModel(es_edurc_sql);
|
|
|
int rk =0;
|
|
|
for (Map<String, Object> map : returnList){
|
|
|
if (Long.valueOf(String.valueOf(map.get("adminTeamCode"))).equals(id)) {
|
|
|
rk = returnList.indexOf(map)+1;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
/*String edurc_sql = "SELECT s.rowno AS articleRK FROM " +
|
|
|
"( " +
|
|
|
" SELECT (@rowNum :=@rowNum + 1) AS rowno,t.count,t.admin_team_code " +
|
|
|
" FROM ( " +
|
|
@ -2328,7 +2339,10 @@ public class StatisticsService extends BaseService {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.put("articleRK", 0);
|
|
|
rs.put(map);
|
|
|
}
|
|
|
}*/
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.put("articleRK", rk);
|
|
|
rs.put(map);
|
|
|
return rs;
|
|
|
}
|
|
|
|
|
@ -2558,7 +2572,7 @@ public class StatisticsService extends BaseService {
|
|
|
} else {
|
|
|
//按月统计
|
|
|
sql = "SELECT" +
|
|
|
" (DATE_FORMAT(c.create_time, '%v')- DATE_FORMAT('2017-12-01 00:00:00', '%v')+ 1)AS weekOfMonth, " +
|
|
|
" (DATE_FORMAT(c.create_time, '%v')- DATE_FORMAT('"+startDate+"', '%v')+ 1)AS weekOfMonth, " +
|
|
|
" COUNT(1)AS noRely " +
|
|
|
" FROM " +
|
|
|
" wlyy_admin_team_member m JOIN(" +
|
|
@ -2585,7 +2599,7 @@ public class StatisticsService extends BaseService {
|
|
|
" GROUP BY weekOfMonth";
|
|
|
|
|
|
totalSql="SELECT" +
|
|
|
" (DATE_FORMAT(c.create_time, '%v')- DATE_FORMAT('2017-12-01 00:00:00', '%v')+ 1)AS weekOfMonth, " +
|
|
|
" (DATE_FORMAT(c.create_time, '%v')- DATE_FORMAT('"+startDate+"', '%v')+ 1)AS weekOfMonth, " +
|
|
|
" COUNT(1)AS total " +
|
|
|
" FROM " +
|
|
|
" wlyy_admin_team_member m JOIN(" +
|
|
@ -3119,7 +3133,7 @@ public class StatisticsService extends BaseService {
|
|
|
//按月
|
|
|
totalSQL = "SELECT " +
|
|
|
" ( " +
|
|
|
" DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('" + startDateStr + "', '%v') + 1 " +
|
|
|
" DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('" + startDate +" 17:00:00" + "', '%v') + 1 " +
|
|
|
" ) AS weekOfMonth,COUNT(1) AS followupCount " +
|
|
|
" FROM " +
|
|
|
" wlyy_followup w " +
|
|
@ -3130,7 +3144,7 @@ public class StatisticsService extends BaseService {
|
|
|
" AND w.create_time <= '?2' ";
|
|
|
planSQL = "SELECT " +
|
|
|
" ( " +
|
|
|
" DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('" + startDateStr + "', '%v') + 1 " +
|
|
|
" DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('" + startDate +" 17:00:00" + "', '%v') + 1 " +
|
|
|
" ) AS weekOfMonth,COUNT(1) AS planCount " +
|
|
|
" FROM " +
|
|
|
" wlyy_followup w " +
|
|
@ -3528,7 +3542,7 @@ public class StatisticsService extends BaseService {
|
|
|
//查月份
|
|
|
totalSql = "SELECT " +
|
|
|
" ( " +
|
|
|
" DATE_FORMAT(w.czrq, '%v') - DATE_FORMAT('" + startDateStr + "', '%v') + 1 " +
|
|
|
" DATE_FORMAT(w.czrq, '%v') - DATE_FORMAT('" + startDate+" 17:00:00" + "', '%v') + 1 " +
|
|
|
" ) AS weekOfMonth,COUNT(1) AS reservationCount " +
|
|
|
" FROM " +
|
|
|
" wlyy_patient_reservation w " +
|
|
@ -3754,7 +3768,7 @@ public class StatisticsService extends BaseService {
|
|
|
//按月统计
|
|
|
SQL = "SELECT " +
|
|
|
" ( " +
|
|
|
" DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('" + startDateStr + "', '%v') + 1 " +
|
|
|
" DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('" + startDate+" 17:00:00" + "', '%v') + 1 " +
|
|
|
" ) AS weekOfMonth, " +
|
|
|
" COUNT(1) AS guidanceCount " +
|
|
|
" FROM " +
|