Browse Source

Merge branch 'dev' of trick9191/patient-co-management into dev

trick9191 8 năm trước cách đây
mục cha
commit
d151345c4e

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java

@ -3513,7 +3513,7 @@ public class FamilyContractService extends BaseService {
                " wlyy_sign_family s " +
                " WHERE " +
                " s.`status` >= 0 " +
                " AND s.server_type IS NOT NULL "+
                " AND s.server_type IS NOT NULL AMD s.server_type <>'3' "+
                " AND s.admin_team_code =" +teamCode+
                " AND s.doctor_health IS NULL";
        List<Map<String,Object>> patientList = jdbcTemplate.queryForList(patientSql);

+ 55 - 19
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/statistics/StatisticsService.java

@ -2106,8 +2106,6 @@ public class StatisticsService extends BaseService {
     */
    public Map<String,Object> getConsultByteam(Long id ,String startDate ,String endDate){
        startDate = startDate+" 00:00:00";
        endDate = endDate+" 23:59:59";
        //咨询量
        String consult_sql = "SELECT COUNT(1) AS consultCount FROM wlyy_consult_team t WHERE t.admin_team_code = "+id+" AND t.czrq <='"+endDate+"' AND t.czrq >='"+startDate+"'";
        //获取咨詢數
@ -2119,8 +2117,6 @@ public class StatisticsService extends BaseService {
    }
    public Map<String,Object> getReservationByteam(Long id ,String startDate ,String endDate){
        startDate = startDate+" 00:00:00";
        endDate = endDate+" 23:59:59";
        //获取待预约
        String reservation_sql = "SELECT COUNT(1) AS reservationCount FROM wlyy_patient_reservation  w WHERE w.admin_team_code ="+id+" AND w.czrq <='"+endDate+"' AND w.czrq >='"+startDate+"'";
        //获取待预约
@ -2132,8 +2128,6 @@ public class StatisticsService extends BaseService {
    }
    public Map<String,Object> getEduArticleByTeam(Long id ,String startDate ,String endDate){
        startDate = startDate+" 00:00:00";
        endDate = endDate+" 23:59:59";
        //获取健康教育
        String article_sql = "SELECT COUNT(1) AS articleCount FROM wlyy_health_edu_article_patient w WHERE  w.admin_team_code ="+id+" AND w.czrq <='"+endDate+"' AND w.czrq >='"+startDate+"'";
        //获取健康教育
@ -2145,8 +2139,6 @@ public class StatisticsService extends BaseService {
    }
    public Map<String,Object> getGuidanceByTeam(Long id ,String startDate ,String endDate){
        startDate = startDate+" 00:00:00";
        endDate = endDate+" 23:59:59";
        //获取健康指导
        String guidance_sql = "SELECT COUNT(1) AS guidanceCount  FROM wlyy_patient_health_guidance w WHERE w.admin_team_code ="+id+" AND w.czrq <='"+endDate+"' AND w.czrq >='"+startDate+"'";
        //获取健康指导
@ -2158,10 +2150,8 @@ public class StatisticsService extends BaseService {
    }
    public Map<String,Object> getArticleByTeam(Long id ,String startDate ,String endDate){
        startDate = startDate+" 00:00:00";
        endDate = endDate+" 23:59:59";
        //随访数目
        String followup_sql ="SELECT COUNT(1) AS followupCount from wlyy_followup w WHERE w.admin_team_code="+id+" AND  w.create_time >='"+startDate+"' AND w.create_time<='"+endDate+"' AND w.followup_class IS NOT NULL ";
        String followup_sql ="SELECT COUNT(1) AS followupCount from wlyy_followup w WHERE w.admin_team_code="+id+" AND  w.create_time >='"+startDate+"' AND w.create_time<='"+endDate+"' ";
        //随访数目
        Map<String,Object> followupCout= jdbcTemplate.queryForMap(followup_sql);
        if(followupCout.get("followupCount")==null){
@ -2997,8 +2987,8 @@ public class StatisticsService extends BaseService {
                    " WHERE " +
                    " w.admin_team_code =" +teamCode+
                    " AND w.create_time >= '"+startDate+"' " +
            " AND w.create_time <= '"+endDate+"' " +
                    " AND w.followup_class IS NOT NULL " +
                    " AND w.create_time <= '"+endDate+"' " +
//                    " AND w.followup_class IS NOT NULL " +
                    " GROUP BY dateNo";
            planSQL ="SELECT " +
@ -3012,7 +3002,7 @@ public class StatisticsService extends BaseService {
                    " AND w.create_time >= '"+startDate+"' " +
                    " AND w.create_time <= '"+endDate+"' " +
                    " AND w.status ='2'"+
                    " AND w.followup_class IS NOT NULL " +
//                    " AND w.followup_class IS NOT NULL " +
                    " GROUP BY weekOfMonth";
        }else{
            //按月
@ -3026,7 +3016,7 @@ public class StatisticsService extends BaseService {
                    " w.admin_team_code =" +teamCode+
                    " AND w.create_time >= '"+startDate+"' " +
                    " AND w.create_time <= '"+endDate+"' " +
                    " AND w.followup_class IS NOT NULL " +
//                    " AND w.followup_class IS NOT NULL " +
                    " GROUP BY weekOfMonth";
            planSQL = "SELECT " +
                    " ( " +
@ -3039,7 +3029,7 @@ public class StatisticsService extends BaseService {
                    " AND w.create_time >= '"+startDate+"' " +
                    " AND w.create_time <= '"+endDate+"' " +
                    " AND w.status ='2'"+
                    " AND w.followup_class IS NOT NULL " +
//                    " AND w.followup_class IS NOT NULL " +
                    " GROUP BY weekOfMonth";
        }
        List<Map<String,Object>> totalList = jdbcTemplate.queryForList(totalSQL);
@ -3069,7 +3059,7 @@ public class StatisticsService extends BaseService {
                " WHERE " +
                " w.admin_team_code =" +teamCode+
                " AND w.create_time <= '"+endDate+"' " +
                " AND w.followup_class IS NOT NULL " +
//                " AND w.followup_class IS NOT NULL " +
                " GROUP BY " +
                "  w.doctor_code " +
                " ) c ON c.doctor_code =m.doctor_code, " +
@ -3101,7 +3091,7 @@ public class StatisticsService extends BaseService {
                " w.admin_team_code =" +teamCode+
                " AND w.create_time >= '"+startDate+"' " +
                " AND w.create_time <= '"+endDate+"' " +
                " AND w.followup_class IS NOT NULL " +
//                " AND w.followup_class IS NOT NULL " +
                " GROUP BY " +
                "  w.doctor_code " +
                " ) c ON c.doctor_code =m.doctor_code, " +
@ -3134,7 +3124,7 @@ public class StatisticsService extends BaseService {
                " AND w.create_time >= '"+startDate+"' " +
                " AND w.create_time <= '"+endDate+"' " +
                " AND w.status ='2'"+
                " AND w.followup_class IS NOT NULL " +
//                " AND w.followup_class IS NOT NULL " +
                " GROUP BY " +
                "  w.doctor_code " +
                " ) c ON c.doctor_code =m.doctor_code, " +
@ -4007,4 +3997,50 @@ public class StatisticsService extends BaseService {
        rs.put("photo",doctor.getPhoto());
        return rs;
    }
    public JSONObject getTeamRenewChangeLine(String teamCode,String startDate,String endDate,String type){
        startDate = startDate+" 00:00:00";
        endDate = endDate+" 23:59:59";
        String inSql ;
        String outSql;
        if("0".equals(type)){
            inSql ="SELECT left(r.apply_date,10) AS dateNo,COUNT(1) AS inCount FROM wlyy_sign_family_renew_log r  " +
                    " WHERE r.admin_team_id ='"+teamCode+"' " +
                    " AND r.apply_date >= '"+startDate+"' " +
                    " AND r.apply_date <='"+endDate+"' " +
                    " AND r.old_admin_team_id <> r.admin_team_id " +
                    " GROUP BY dateNo ";
            outSql ="SELECT left(r.apply_date,10) AS dateNo,COUNT(1) AS inCount FROM wlyy_sign_family_renew_log r  " +
                    " WHERE r.old_admin_team_id ='"+teamCode+"' " +
                    " AND r.apply_date >= '"+startDate+"' " +
                    " AND r.apply_date <='"+endDate+"' " +
                    " AND r.old_admin_team_id <> r.admin_team_id " +
                    " GROUP BY dateNo ";
        }else{
            inSql ="SELECT ( " +
                    "  DATE_FORMAT(r.apply_date, '%v') - DATE_FORMAT('2017-06-01', '%v') + 1 " +
                    " ) AS weekOfMonth,COUNT(1) AS outCount FROM wlyy_sign_family_renew_log r  " +
                    " WHERE r.admin_team_id ='"+teamCode+"'  " +
                    " AND r.apply_date >= '"+startDate+"'  " +
                    " AND r.apply_date <='"+endDate+"'  " +
                    " AND r.old_admin_team_id <> r.admin_team_id " +
                    " GROUP BY weekOfMonth ";
            outSql ="SELECT ( " +
                    "  DATE_FORMAT(r.apply_date, '%v') - DATE_FORMAT('2017-06-01', '%v') + 1 " +
                    " ) AS weekOfMonth,COUNT(1) AS outCount FROM wlyy_sign_family_renew_log r  " +
                    " WHERE r.old_admin_team_id ='"+teamCode+"'  " +
                    " AND r.apply_date >= '"+startDate+"'  " +
                    " AND r.apply_date <='"+endDate+"'  " +
                    " AND r.old_admin_team_id <> r.admin_team_id " +
                    " GROUP BY weekOfMonth ";
        }
        JSONObject rs = new JSONObject();
        List<Map<String,Object>> inList = jdbcTemplate.queryForList(inSql);
        rs.put("inLine",inList);
        List<Map<String,Object>> outList =jdbcTemplate.queryForList(outSql);
        rs.put("outLine",outList);
        return rs ;
    }
}

+ 33 - 4
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/common/account/PatientService.java

@ -595,7 +595,12 @@ public class PatientService extends TokenService {
    public JSONArray getSignByTeamCodeGpbyServer(Long teamCode){
        // 获取总分组数量
        String totalGSql = "SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name AS serverTypeName FROM wlyy_sign_family f WHERE f.admin_team_code ="+teamCode+" AND f.`status`>0 AND f.server_type IS NOT NULL GROUP BY f.server_type ORDER BY f.server_type ASC";
        String totalGSql ="SELECT d.`code` AS serverType,d.`name` AS serverTypeName,ifNULL(c.Amount,0) AS Amount FROM " +
                " wlyy_sign_dict d LEFT JOIN" +
                " ("+
                "SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name AS serverTypeName FROM wlyy_sign_family f WHERE f.admin_team_code ="+teamCode+" AND f.`status`>0 AND f.server_type IS NOT NULL GROUP BY f.server_type ORDER BY f.server_type ASC"+
                " ) c ON d.code = c.serverType " +
                " WHERE d.`year`='"+DateUtil.getSignYear()+"' AND d.`code` NOT LIKE '%-%' ORDER BY d.sort ASC";
        List<Map<String,Object>> totalG = jdbcTemplate.queryForList(totalGSql);
        //获取关注量分组数量
@ -603,7 +608,31 @@ public class PatientService extends TokenService {
        List<Map<String,Object>> fousG = jdbcTemplate.queryForList(fousGSql);
        //获取二级节点分组总数
        String sesTotalSql ="SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name As serverTypeName ,f.special_population AS specialPopulation,f.special_population_name AS specialPopulationName  FROM wlyy_sign_family f WHERE f.admin_team_code ="+teamCode+" AND f.`status`>0  AND f.special_population Is NOT NULL AND f.server_type IS NOT NULL GROUP BY f.special_population ORDER BY f.special_population ASC ";
        String sesTotalSql ="SELECT " +
                " LEFT ( " +
                "  d.`code`, " +
                "  INSTR(d.`code`, '-') - 1 " +
                " ) AS serverType, " +
                " substring( " +
                "  d.`code`, " +
                "  INSTR(d.`code`, '-') + 1 " +
                " ) AS specialPopulation, " +
                " d.`name` AS specialPopulationName, " +
                " ifnull(c.Amount, 0) AS Amount " +
                " FROM " +
                " wlyy_sign_dict d " +
                " LEFT JOIN ( "+
                " SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name As serverTypeName ,f.special_population AS specialPopulation,f.special_population_name AS specialPopulationName ," +
                " CONCAT(" +
                " f.server_type," +
                " '-'," +
                " f.special_population" +
                " ) AS dcode "+
                " FROM wlyy_sign_family f WHERE f.admin_team_code ="+teamCode+" AND f.`status`>0  AND f.special_population Is NOT NULL AND f.server_type IS NOT NULL GROUP BY f.special_population ORDER BY f.special_population ASC "+
                " ) c ON c.dcode = d.code " +
                " WHERE " +
                " d.`year` = '"+DateUtil.getSignYear()+"'" +
                " AND d.`code` LIKE '%-%' ORDER BY d.sort ASC";
        List<Map<String,Object>> sesTotal = jdbcTemplate.queryForList(sesTotalSql);
        //获取二级节点分组数量
@ -703,7 +732,7 @@ public class PatientService extends TokenService {
                " ("+
                " SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name AS serverTypeName FROM wlyy_sign_family f WHERE (f.doctor ='"+doctor+"' OR f.doctor_health ='"+doctor+"') AND f.`status`>0 AND f.server_type IS NOT NULL "+teamCodeSql+" GROUP BY f.server_type ORDER BY f.server_type ASC"+
                " ) c ON d.code = c.serverType " +
                " WHERE d.`year`='"+DateUtil.getSignYear()+"' AND d.`code` NOT LIKE '%-%' ";
                " WHERE d.`year`='"+DateUtil.getSignYear()+"' AND d.`code` NOT LIKE '%-%' ORDER BY d.sort ASC";
//        String totalGSql = "SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name AS serverTypeName FROM wlyy_sign_family f WHERE (f.doctor ='"+doctor+"' OR f.doctor_health ='"+doctor+"') AND f.`status`>0 AND f.server_type IS NOT NULL "+teamCodeSql+" GROUP BY f.server_type ORDER BY f.server_type ASC";
        List<Map<String,Object>> totalG = jdbcTemplate.queryForList(totalGSql);
@ -736,7 +765,7 @@ public class PatientService extends TokenService {
                " c ON c.dcode = d.code " +
                " WHERE\n" +
                " d.`year` = '"+DateUtil.getSignYear()+"'" +
                " AND d.`code` LIKE '%-%'";
                " AND d.`code` LIKE '%-%' ORDER BY d.sort ASC";
        //String sesTotalSql ="SELECT count(1) AS Amount,f.server_type AS serverType,f.server_type_name As serverTypeName ,f.special_population AS specialPopulation,f.special_population_name AS specialPopulationName  FROM wlyy_sign_family f WHERE (f.doctor ='"+doctor+"' OR f.doctor_health ='"+doctor+"')  "+teamCodeSql+" AND f.`status`>0  AND f.special_population Is NOT NULL AND f.server_type IS NOT NULL GROUP BY f.special_population ORDER BY f.special_population ASC ";
        List<Map<String,Object>> sesTotal = jdbcTemplate.queryForList(sesTotalSql);

+ 211 - 307
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/statistic/StatisticsController.java

@ -1,7 +1,6 @@
package com.yihu.wlyy.web.statistic;
import com.yihu.wlyy.entity.statistics.PopulationBase;
import com.yihu.wlyy.entity.statistics.WlyyQuotaResult;
import com.yihu.wlyy.service.app.statistics.StatisticsAllService;
import com.yihu.wlyy.service.app.statistics.StatisticsService;
import com.yihu.wlyy.util.ValueComparator;
@ -11,6 +10,7 @@ import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@ -49,14 +49,14 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标按间隔统计  增量
     * 指标按间隔统计
     *
     * @param startDate 起始日期
     * @param endDate   结束时间
     * @param interval  时间间隔
     * @param area      区域或机构
     * @param level     级别
     * @param index     指标 3 4 5 27
     * @param index     指标
     * @return
     */
    @RequestMapping(value = "/interval")
@ -86,7 +86,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标期间 增长量
     * 指标期间增长量
     *
     * @param startDate
     * @param endDate
@ -118,16 +118,16 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标截止日期累积量  增量的累加接口
     * 指标截止日期累积量
     *
     * @param endDate     结束时间
     * @param area        父code
     * @param level       等级  1 团队,2 机构,3 区,4 市
     * @param index       指标代码 3 4 5 27
     * @param index       指标代码
     * @param level2_type 指标代码 例如性别 1 男 2 女  不传就返回男和女的总和
     * @return
     */
    @RequestMapping("/total")
        @RequestMapping("/total")
    @ResponseBody
    public String getIndexTotal(@RequestParam(required = true) String endDate,
                                @RequestParam(required = true) String area,
@ -149,7 +149,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标期间增长量    此接口前端没用
     * 指标期间增长量
     *
     * @param startDate
     * @param endDate
@ -160,7 +160,6 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/lowlevel_increment")
    @ResponseBody
    @Deprecated
    public String getIndexLowLevelIncrement(@RequestParam(required = true) String startDate,
                                            @RequestParam(required = true) String endDate,
                                            @RequestParam(required = true) String area,
@ -184,9 +183,8 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标截止日期      增量
     * 指标截止日期增量
     * (如:待预约量)
     *
     * @param endDate     结束时间
     * @param area        父code
     * @param level       等级  1 团队,2 机构,3 区,4 市
@ -204,14 +202,13 @@ public class StatisticsController extends BaseController {
                                        @RequestParam(required = true) String index,
                                        @RequestParam(required = true) int sort,
                                        @RequestParam(required = false) String lowLevel,
                                        @RequestParam(required = false) String level2_type,
                                        @RequestParam(required = false) String year) {
                                        @RequestParam(required = false) String level2_type) {
        try {
            String[] indexes = index.split(",");
            JSONObject result = new JSONObject();
            for (String idx : indexes) {
                result.put("index_" + idx, statisticsService.getLowLevelTotalDetail(endDate, area, level, idx, sort, lowLevel, level2_type, year));
                result.put("index_" + idx, statisticsService.getLowLevelTotalDetail(endDate, area, level, idx, sort, lowLevel, level2_type));
            }
            return write(200, "查询成功", "data", result);
@ -221,13 +218,13 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标截止日期累积量  增量
     * 指标截止日期累积量
     * 根据2个ID合并指标
     *
     * @param endDate
     * @param area
     * @param level
     * @param index   3,22
     * @param index
     * @return
     */
    @RequestMapping("/lowlevel_total_mesh")
@ -237,15 +234,14 @@ public class StatisticsController extends BaseController {
                                            @RequestParam(required = true) int level,//等级
                                            @RequestParam(required = true) String index,//指标code
                                            @RequestParam(required = true) int sort,//1是倒叙 0是正序
                                            @RequestParam(required = false) String lowLevel,
                                            @RequestParam(required = false) String year) {
                                            @RequestParam(required = false) String lowLevel) {
        try {
            String[] indexes = index.split(",");
            JSONObject result = new JSONObject();
            JSONArray returnJa = new JSONArray();
            List<JSONArray> jsonArrays = new ArrayList<>();
            JSONArray jsonArray1 = statisticsService.getLowLevelTotalDetail(endDate, area, level, indexes[0], sort, lowLevel, null, year);
            JSONArray jsonArray1 = statisticsService.getLowLevelTotalDetail(endDate, area, level, indexes[0], sort, lowLevel, null);
            jsonArrays.add(jsonArray1);
            JSONArray jsonArray2 = statisticsService.getLowLevelIncrementDetail(endDate, endDate, area, level, indexes[1], sort, lowLevel);
@ -263,22 +259,22 @@ public class StatisticsController extends BaseController {
                }
            } else {
                //如果是2个指标的时候,分别放入map中,以减少查询次数
                Map<String, JSONObject> in = new TreeMap<>();
                Map<String,JSONObject> in =new TreeMap<>();
                ValueComparator vc = new ValueComparator(in);
                Map<String, JSONObject> index2 = new TreeMap<>();
                Map<String,JSONObject> index2=new TreeMap<>();
                for (int i = 0; i < jsonArrays.get(0).length(); i++) {
                    JSONObject map1 = jsonArrays.get(0).getJSONObject(i);
                    in.put(map1.get("code").toString(), map1);
                    in.put(map1.get("code").toString(),map1);
                }
                Map<String, JSONObject> index1 = new TreeMap<>(vc);
                Map<String,JSONObject> index1 =new TreeMap<>(vc);
                index1.putAll(in);
                for (int i = 0; i < jsonArrays.get(1).length(); i++) {
                    JSONObject map1 = jsonArrays.get(1).getJSONObject(i);
                    index2.put(map1.get("code").toString(), map1);
                    index2.put(map1.get("code").toString(),map1);
                }
                for (Map.Entry<String, JSONObject> one : index1.entrySet()) {
                for(Map.Entry<String , JSONObject> one:index1.entrySet()){
                    JSONObject map1 = one.getValue();
                    JSONObject map2 = index2.get(one.getKey());
                    String amount = map1.get("amount").toString() + "," + map2.get("amount").toString();
@ -287,7 +283,7 @@ public class StatisticsController extends BaseController {
                }
            }
            if (level == 2) {
            if(level==2){
                statisticsAllService.translateTeamLeaderNameByCode(returnJa);
            }
            result.put("index_" + indexes[0], returnJa);
@ -304,7 +300,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标期间      增长量
     * 指标期间增长量
     *
     * @param startDate
     * @param endDate
@ -349,9 +345,7 @@ public class StatisticsController extends BaseController {
    public String getAreaSignInfo(@RequestParam(required = true) String endDate,
                                  @RequestParam(required = true) String area,
                                  @RequestParam(required = true) int level,
                                  @RequestParam(required = false) String lowCode,
                                  @RequestParam(required = false) String year
    ) {
                                  @RequestParam(required = false) String lowCode) {
        try {
            JSONObject result = new JSONObject();
@ -376,7 +370,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 获取三级指标增量  到达量
     * 获取三级指标增量
     *
     * @param startDate
     * @param endDate
@ -388,8 +382,7 @@ public class StatisticsController extends BaseController {
    @ResponseBody
    public String getSixFiveStatistics(@RequestParam(required = false) String startDate,
                                       @RequestParam(required = true) String endDate,
                                       @RequestParam(required = true) String area,
                                       int level) {
                                       @RequestParam(required = true) String area, int level) {
        try {
            JSONArray result = statisticsAllService.getSixFiveStatistics(endDate, area, level);
@ -401,16 +394,14 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标按间隔统计  到达量
     * 指标按间隔统计
     *
     * @param startDate 起始日期
     * @param endDate   结束时间
     * @param interval  时间间隔
     * @param area      区域或机构
     * @param level     级别
     * @param index     指标 除了增量的指标都会调用
     * @param lowCode   子维度
     * @param year      查询年份
     * @param index     指标
     * @return
     */
    @RequestMapping(value = "/interval_total")
@ -421,35 +412,17 @@ public class StatisticsController extends BaseController {
                                     @RequestParam(required = true) String area,
                                     @RequestParam(required = true) int level,
                                     @RequestParam(required = true) String index,
                                     @RequestParam(required = false) String lowCode,
                                     @RequestParam(required = false) String year) {
                                     @RequestParam(required = false) String lowCode) {
        try {
            String[] indexes = index.split(",");
            JSONObject result = new JSONObject();
            if (index != null) {
                for (String idx : indexes) {
                    JSONObject json = statisticsAllService.getDateTotal(startDate, endDate, interval, area, level, idx, lowCode);
                    //如果year不为空  那么因为是到达量 所以要扣除上一年的数据
                    if (!org.springframework.util.StringUtils.isEmpty(year) && !"2016".equals(year)) {
                        //得到上一个年份的的最后一天的统计数据
                        String date = year + "-06-30";//固定是 6月三十号 为一个年份的最后一天,如果是2017年份 那么就是2017-7-1 到 2018-6-30
                        WlyyQuotaResult wlyyQuotaResult = statisticsService.findOneQuotaResult(date, level, idx, area);
                        if (wlyyQuotaResult != null) {
                            JSONArray ja = json.getJSONArray("data");
                            for (int i = 0; i < ja.length(); i++) {
                                Integer value = Integer.valueOf(ja.getJSONObject(i).getString("amount"));
                                super.infoMessage("原来的总数:" + value);
                                ja.getJSONObject(i).put("amount", value - Integer.valueOf(wlyyQuotaResult.getResult()));
                                super.infoMessage("需要扣除的总数:" + wlyyQuotaResult.getResult());
                            }
                        }
                    }
                    result.put("index_" + idx, json);
                    result.put("index_" + idx, statisticsAllService.getDateTotal(startDate, endDate, interval, area, level, idx, lowCode));
                }
            }
            return write(200, "查询成功!", "data", result);
        } catch (Exception e) {
            return error(-1, "查询失败!");
@ -457,14 +430,13 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标截止日期累积量 到达量
     * 指标截止日期累积量
     *
     * @param date
     * @param area
     * @param level   level1_type等级 1:团队 2社区机构 3区级 4市级
     * @param index   quotoCode 18/19两率  28  13 17
     * @param sort    0:升序 1:降序
     * @param lowCode
     * @param level level1_type等级 1:团队 2社区机构 3区级 4市级
     * @param index quotoCode 18/19两率
     * @param sort  1降序排列-1升序排列
     * @return
     */
    @RequestMapping("/lowlevel_all")
@ -475,18 +447,20 @@ public class StatisticsController extends BaseController {
                                            @RequestParam(required = true) String index,
                                            @RequestParam(required = true) int sort,
                                            @RequestParam(required = false) String lowLevel,
                                            @RequestParam(required = false) String lowCode) {
                                            @RequestParam(required = false) String lowCode,
                                            @RequestParam(required = false) String startDate) {
        try {
            String[] indexes = index.split(",");
            JSONObject result = new JSONObject();
            if (StringUtils.isNotEmpty(lowCode)) {
//                指定level下特定查询级别
                if (index.equals("17")) {
                if(index.equals("17")){
                    result.put("index_" + index, statisticsAllService.getLevelTwoLowLevelTotalTeamLeader(date, area, level, index, sort, lowLevel, lowCode));
                } else {
                }else{
                    result.put("index_" + index, statisticsAllService.getLevelTwoLowLevelTotal(date, area, level, index, sort, lowLevel, lowCode));
                }
            } else {
//                未指定level下特定查询级别
                for (String idx : indexes) {
@ -494,11 +468,11 @@ public class StatisticsController extends BaseController {
                        result.put("index_" + idx, statisticsAllService.getLowLevelTotalSpecial(date, area, level, idx, sort, lowLevel));
                    } else if (idx.equals("1") || index.equals("21")) {
                        result.put("index_" + idx, statisticsAllService.getLowLevelTotal2(date, area, level, idx, sort, lowLevel));
                    } else if (idx.equals("28")) {
                        result.put("index_" + idx, statisticsService.getAvgAllInfo(level, area, lowLevel));
                    } else if (idx.equals("13")) {
                    } else if (idx.equals("28")){
                        result.put("index_" + idx, statisticsService.getAvgAllInfo(level,area,lowLevel));
                    } else if(idx.equals("13")){
                        result.put("index_" + idx, statisticsAllService.getLowLevelTotalTeamLeader(date, area, level, idx, sort, lowLevel));
                    } else {
                    }else{
                        result.put("index_" + idx, statisticsAllService.getLowLevelTotal(date, area, level, idx, sort, lowLevel));
                    }
                }
@ -540,7 +514,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 二级指标 到达量  废弃接口 前端没有调用
     * 二级指标到达量
     *
     * @param date
     * @param area
@ -550,7 +524,6 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping(value = "/leveltwo_all")
    @ResponseBody
    @Deprecated
    public String getIndexLevelTwoTotal(@RequestParam(required = true) String date,
                                        @RequestParam(required = true) String area,
                                        @RequestParam(required = true) int level,
@ -571,7 +544,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 指标截止日期  到达量
     * 指标截止日期到达量
     *
     * @param endDate
     * @param area
@ -584,26 +557,13 @@ public class StatisticsController extends BaseController {
    public String getIndexAll(@RequestParam(required = true) String endDate,
                              @RequestParam(required = true) String area,
                              @RequestParam(required = true) int level,
                              @RequestParam(required = true) String index,
                              @RequestParam(required = false) String year) {
                              @RequestParam(required = true) String index) {
        try {
            String[] indexes = index.split(",");
            JSONObject result = new JSONObject();
            for (String idx : indexes) {
                Long total = statisticsAllService.getIndexTotal(endDate, area, level, idx);
                super.infoMessage("原来的总数:" + total);
                //如果year不为空  那么因为是到达量 所以要扣除上一年的数据
                if (!org.springframework.util.StringUtils.isEmpty(year) && !"2016".equals(year)) {
                    //得到上一个年份的的最后一天的统计数据
                    String date = year + "-06-30";//固定是 6月三十号 为一个年份的最后一天,如果是2017年份 那么就是2017-7-1 到 2018-6-30
                    WlyyQuotaResult wlyyQuotaResult = statisticsService.findOneQuotaResult(date, level, idx, area);
                    if (wlyyQuotaResult != null) {
                        super.infoMessage("需要扣除的数目:" + wlyyQuotaResult.getResult());
                        total = total - Long.valueOf(wlyyQuotaResult.getResult());
                    }
                }
                result.put("index_" + idx, total);
                result.put("index_" + idx, statisticsAllService.getIndexTotal(endDate, area, level, idx));
            }
            return write(200, "查询成功", "data", result);
@ -723,7 +683,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取得分平均数
     *
     * @param level
     * @param area
     * @return
@ -732,7 +691,7 @@ public class StatisticsController extends BaseController {
    @ResponseBody
    public String getAVGSocre(@RequestParam(required = true) String level, @RequestParam(required = true) String area) {
        try {
            return write(200, "查询成功", "data", statisticsService.getAVGSocre(level, area));
            return write(200, "查询成功", "data", statisticsService.getAVGSocre(level,area));
        } catch (Exception e) {
            return error(-1, "查询失败");
        }
@ -741,17 +700,16 @@ public class StatisticsController extends BaseController {
    /**
     * 获取得分平均数按月份
     *
     * @return
     */
    @RequestMapping("/getAVGSocreByMonth")
    @ResponseBody
    public String getAVGSocreByMonth(@RequestParam(required = true) String level,
                                     @RequestParam(required = true) String area,
                                     @RequestParam(required = true) String statDate,
                                     @RequestParam(required = true) String endDate) {
    public String getAVGSocreByMonth(@RequestParam(required = true)String level ,
                                     @RequestParam(required = true)String area,
                                     @RequestParam(required = true)String statDate,
                                     @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getAVGSocreByMonth(level, area, statDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getAVGSocreByMonth(level,area,statDate,endDate));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -760,16 +718,15 @@ public class StatisticsController extends BaseController {
    /**
     * 统计当前团队,签约人数,服务次数,平均满意度
     *
     * @return
     */
    @RequestMapping("/getStatTitleInfo")
    @ResponseBody
    public String getStatTitleInfo(@RequestParam(required = true) String startDate,
                                   @RequestParam(required = true) String endDate) {
    public String getStatTitleInfo(@RequestParam(required = true)String startDate,
                                   @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getStatTitleInfo(getUID(), startDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getStatTitleInfo(getUID(),startDate,endDate));
            //return write(200, "查询成功", "data", statisticsService.getStatTitleInfo("xh1D201703150222",startDate,endDate));
        } catch (Exception e) {
@ -780,26 +737,25 @@ public class StatisticsController extends BaseController {
    /**
     * 获取签约折线图
     *
     * @param startDate
     * @param endDate
     * @param signType  0 签约,1 续签
     * @param type      0 按周,1 按月
     * @param signType 0 签约,1 续签
     * @param type 0 按周,1 按月
     * @return
     */
    @RequestMapping("/getSignCountLineByType")
    @ResponseBody
    public String getSignCountLineByType(@RequestParam(required = true) String startDate,
                                         @RequestParam(required = true) String endDate,
                                         @RequestParam(required = true) String signType,
                                         @RequestParam(required = true) String type) {
    public String getSignCountLineByType(@RequestParam(required = true)String startDate,
                                         @RequestParam(required = true)String endDate,
                                         @RequestParam(required = true)String signType,
                                         @RequestParam(required = true)String type){
        try {
            //判断是签约还是续签
            if ("0".equals(signType)) {
                return write(200, "查询成功", "data", statisticsService.getSignCountLineByType(getUID(), type, startDate, endDate));
            if("0".equals(signType)){
                return write(200, "查询成功", "data", statisticsService.getSignCountLineByType(getUID(),type,startDate,endDate));
                //return write(200, "查询成功", "data", statisticsService.getSignCountLineByType("xh1D201703150222",type,startDate,endDate));
            } else {
                return write(200, "查询成功", "data", statisticsService.getRenewCountLineByType(getUID(), type, startDate, endDate));
            }else{
                return write(200, "查询成功", "data", statisticsService.getRenewCountLineByType(getUID(),type,startDate,endDate));
                //return write(200, "查询成功", "data", statisticsService.getRenewCountLineByType("xh1D201703150222",type,startDate,endDate));
            }
        } catch (Exception e) {
@ -810,19 +766,18 @@ public class StatisticsController extends BaseController {
    /**
     * 获取咨询数和未回复数
     *
     * @param startDate
     * @param endDate
     * @param isNow     1 为当前;2为非当前
     * @param isNow 1 为当前;2为非当前
     * @return
     */
    @RequestMapping("/getReyStatbyTeam")
    @ResponseBody
    public String getReyStatbyTeam(@RequestParam(required = true) String startDate,
                                   @RequestParam(required = true) String endDate,
                                   @RequestParam(required = true) String isNow) {
    public String  getReyStatbyTeam(@RequestParam(required = true)String startDate,
                                    @RequestParam(required = true)String endDate,
                                    @RequestParam(required = true)String isNow){
        try {
            return write(200, "查询成功", "data", statisticsService.getReyStatbyTeam(getUID(), startDate, endDate, isNow));
            return write(200, "查询成功", "data", statisticsService.getReyStatbyTeam(getUID(),startDate,endDate,isNow));
            //return write(200, "查询成功", "data", statisticsService.getReyStatbyTeam("xh1D201703150222",startDate,endDate,isNow));
        } catch (Exception e) {
            error(e);
@ -832,17 +787,16 @@ public class StatisticsController extends BaseController {
    /**
     * 获取机构内服务排行
     *
     * @param startDate
     * @param endDate
     * @return
     */
    @RequestMapping("/getServiceRankingList")
    @ResponseBody
    public String getServiceRankingList(@RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate) {
    public String getServiceRankingList(@RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getServiceRankingList(getUID(), startDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getServiceRankingList(getUID(),startDate,endDate));
            //return write(200, "查询成功", "data", statisticsService.getServiceRankingList("xh1D201703150222",startDate,endDate));
        } catch (Exception e) {
            error(e);
@ -851,21 +805,20 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 获取平均值统计折线图
     *
     *  获取平均值统计折线图
     * @param startDate
     * @param endDate
     * @param type      0周,1月
     * @param type 0周,1月
     * @return
     */
    @RequestMapping("/getAvgLine")
    @ResponseBody
    public String getAvgLine(@RequestParam(required = true) String startDate,
                             @RequestParam(required = true) String endDate,
                             @RequestParam(required = true) String type) {
    public String getAvgLine(@RequestParam(required = true)String startDate,
                             @RequestParam(required = true)String endDate,
                             @RequestParam(required = true)String type){
        try {
            return write(200, "查询成功", "data", statisticsService.getAvgLine(getUID(), startDate, endDate, type));
            // return write(200, "查询成功", "data", statisticsService.getAvgLine("xh1D201703150222",startDate,endDate,type));
            return write(200, "查询成功", "data", statisticsService.getAvgLine(getUID(),startDate,endDate,type));
           // return write(200, "查询成功", "data", statisticsService.getAvgLine("xh1D201703150222",startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -874,12 +827,11 @@ public class StatisticsController extends BaseController {
    /**
     * 判断团队是否是团队长
     *
     * @return
     */
    @RequestMapping("/checkDoctorIsTeamLeder")
    @ResponseBody
    public String checkDoctorIsTeamLeder() {
    public String checkDoctorIsTeamLeder(){
        try {
            return write(200, "查询成功", "data", statisticsService.checkDoctorIsTeamleader(getUID()));
        } catch (Exception e) {
@ -890,21 +842,20 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队月或周咨询未回复和总数折线图
     *
     * @param teamCode  团队id
     * @param teamCode 团队id
     * @param startDate
     * @param endDate
     * @param type      0周,1月
     * @param type 0周,1月
     * @return
     */
    @RequestMapping("/getTeamConsultCount")
    @ResponseBody
    public String getTeamConsultCount(@RequestParam(required = true) String teamCode,
                                      @RequestParam(required = true) String startDate,
                                      @RequestParam(required = true) String endDate,
                                      @RequestParam(required = true) String type) {
    public String getTeamConsultCount(@RequestParam(required = true)String teamCode,
                                      @RequestParam(required = true)String startDate,
                                      @RequestParam(required = true)String endDate,
                                      @RequestParam(required = true)String type){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamConsultCount(teamCode, startDate, endDate, type));
            return write(200, "查询成功", "data", statisticsService.getTeamConsultCount(teamCode,startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -912,24 +863,23 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 计算团队医生月或周咨询未回复和总数折线图
     *
     *  计算团队医生月或周咨询未回复和总数折线图
     * @param teamCode
     * @param startDate
     * @param endDate
     * @param type      0周,1月
     * @param type 0周,1月
     * @param doctor
     * @return
     */
    @RequestMapping("/getTeamDoctorConsultCount")
    @ResponseBody
    public String getTeamDoctorConsultCount(@RequestParam(required = true) String teamCode,
                                            @RequestParam(required = true) String startDate,
                                            @RequestParam(required = true) String endDate,
                                            @RequestParam(required = true) String type,
                                            @RequestParam(required = true) String doctor) {
    public String getTeamDoctorConsultCount(@RequestParam(required = true)String teamCode,
                                             @RequestParam(required = true)String startDate,
                                             @RequestParam(required = true)String endDate,
                                             @RequestParam(required = true)String type,
                                             @RequestParam(required = true)String doctor){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorConsultCount(teamCode, startDate, endDate, type, doctor));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorConsultCount(teamCode,startDate,endDate,type,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -938,22 +888,21 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队内这成员,未回复数,总数,结束咨询数
     *
     * @param teamCode
     * @param startDate
     * @param endDate
     * @param sort      0降序,1升序
     * @param sort 0降序,1升序
     * @return
     */
    @RequestMapping("/getMemberConsultList")
    @ResponseBody
    public String getMemberConsultList(@RequestParam(required = true) String teamCode,
                                       @RequestParam(required = true) String startDate,
                                       @RequestParam(required = true) String endDate,
                                       @RequestParam(required = true) String sort,
                                       @RequestParam(required = true) String sortType) {
    public String getMemberConsultList(@RequestParam(required = true)String teamCode,
                                       @RequestParam(required = true)String startDate,
                                       @RequestParam(required = true)String endDate,
                                       @RequestParam(required = true)String sort,
                                       @RequestParam(required = true)String sortType){
        try {
            return write(200, "查询成功", "data", statisticsService.getMemberConsultList(teamCode, startDate, endDate, sort, sortType));
            return write(200, "查询成功", "data", statisticsService.getMemberConsultList(teamCode,startDate,endDate,sort,sortType));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -962,7 +911,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取Doctor咨询结果
     *
     * @param doctor
     * @param teamCode
     * @param startDate
@ -971,12 +919,12 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getDoctorConsultTitle")
    @ResponseBody
    public String getDoctorConsultTitle(@RequestParam(required = true) String doctor,
                                        @RequestParam(required = true) String teamCode,
                                        @RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate) {
    public String getDoctorConsultTitle(@RequestParam(required = true)String doctor,
                                        @RequestParam(required = true)String teamCode,
                                        @RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getDoctorConsultTitle(doctor, teamCode, startDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getDoctorConsultTitle(doctor,teamCode,startDate,endDate));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -985,7 +933,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队随访量折线统计图
     *
     * @param type
     * @param teamCode
     * @param startDate
@ -994,12 +941,12 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamFollowupLine")
    @ResponseBody
    public String getTeamFollowupLine(@RequestParam(required = true) String type,
                                      @RequestParam(required = true) String teamCode,
                                      @RequestParam(required = true) String startDate,
                                      @RequestParam(required = true) String endDate) {
    public String getTeamFollowupLine(@RequestParam(required = true)String type,
                                      @RequestParam(required = true)String teamCode,
                                      @RequestParam(required = true)String startDate,
                                      @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamFollowupLine(teamCode, startDate, endDate, type));
            return write(200, "查询成功", "data", statisticsService.getTeamFollowupLine(teamCode,startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1008,13 +955,13 @@ public class StatisticsController extends BaseController {
    @RequestMapping("/getTeamDoctorFollowupLine")
    @ResponseBody
    public String getTeamDoctorFollowupLine(@RequestParam(required = true) String type,
                                            @RequestParam(required = true) String teamCode,
                                            @RequestParam(required = true) String startDate,
                                            @RequestParam(required = true) String endDate,
                                            @RequestParam(required = true) String doctor) {
    public String getTeamDoctorFollowupLine(@RequestParam(required = true)String type,
                                            @RequestParam(required = true)String teamCode,
                                            @RequestParam(required = true)String startDate,
                                            @RequestParam(required = true)String endDate,
                                            @RequestParam(required = true)String doctor){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorFollowupLine(teamCode, startDate, endDate, type, doctor));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorFollowupLine(teamCode,startDate,endDate,type,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1023,23 +970,22 @@ public class StatisticsController extends BaseController {
    /**
     * 根据团队获取团队底下用户列表
     *
     * @param sort      0为降序,1为升序
     * @param sort 0为降序,1为升序
     * @param teamCode
     * @param startDate
     * @param endDate
     * @param sortType  0为总数排序,1为增量排序,2为计划中排序
     * @param sortType 0为总数排序,1为增量排序,2为计划中排序
     * @return
     */
    @RequestMapping("/getDoctorTeamFolList")
    @ResponseBody
    public String getDoctorTeamFolList(@RequestParam(required = true) String sort,
                                       @RequestParam(required = true) String teamCode,
                                       @RequestParam(required = true) String startDate,
                                       @RequestParam(required = true) String endDate,
                                       @RequestParam(required = true) String sortType) {
    public String getDoctorTeamFolList(@RequestParam(required = true)String sort,
                                       @RequestParam(required = true)String teamCode,
                                       @RequestParam(required = true)String startDate,
                                       @RequestParam(required = true)String endDate,
                                       @RequestParam(required = true)String sortType){
        try {
            return write(200, "查询成功", "data", statisticsService.getDoctorTeamFolList(startDate, endDate, teamCode, sort, sortType));
            return write(200, "查询成功", "data", statisticsService.getDoctorTeamFolList(startDate,endDate,teamCode,sort,sortType));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1048,7 +994,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取医生随访头信息
     *
     * @param teamCode
     * @param doctor
     * @param startDate
@ -1057,12 +1002,12 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamDoctorFolTitle")
    @ResponseBody
    public String getTeamDoctorFolTitle(@RequestParam(required = true) String teamCode,
                                        @RequestParam(required = true) String doctor,
                                        @RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate) {
    public String getTeamDoctorFolTitle(@RequestParam(required = true)String teamCode,
                                        @RequestParam(required = true)String doctor,
                                        @RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorFolTitle(teamCode, doctor, startDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorFolTitle(teamCode,doctor,startDate,endDate));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1071,7 +1016,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取待预约量团队统计则线图
     *
     * @param teamCode
     * @param type
     * @param startDate
@ -1080,12 +1024,12 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamResLine")
    @ResponseBody
    public String getTeamResLine(@RequestParam(required = true) String teamCode,
                                 @RequestParam(required = true) String type,
                                 @RequestParam(required = true) String startDate,
                                 @RequestParam(required = true) String endDate) {
    public String getTeamResLine(@RequestParam(required = true)String teamCode,
                                 @RequestParam(required = true)String type,
                                 @RequestParam(required = true)String startDate,
                                 @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamResLine(teamCode, startDate, endDate, type));
            return write(200, "查询成功", "data", statisticsService.getTeamResLine(teamCode,startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1094,7 +1038,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队医生预约量团队统计则线图
     *
     * @param teamCode
     * @param type
     * @param startDate
@ -1104,13 +1047,13 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamDoctorResLine")
    @ResponseBody
    public String getTeamDoctorResLine(@RequestParam(required = true) String teamCode,
                                       @RequestParam(required = true) String type,
                                       @RequestParam(required = true) String startDate,
                                       @RequestParam(required = true) String endDate,
                                       @RequestParam(required = true) String doctor) {
    public String getTeamDoctorResLine(@RequestParam(required = true)String teamCode,
                                       @RequestParam(required = true)String type,
                                       @RequestParam(required = true)String startDate,
                                       @RequestParam(required = true)String endDate,
                                       @RequestParam(required = true)String doctor){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorResLine(teamCode, startDate, endDate, type, doctor));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorResLine(teamCode,startDate,endDate,type,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1119,23 +1062,22 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队待预约量医生列表信息
     *
     * @param teamCode
     * @param startDate
     * @param endDate
     * @param sort      0为降序,1为升序
     * @param sortType  0为按总数,1为按增数
     * @param sort 0为降序,1为升序
     * @param sortType 0为按总数,1为按增数
     * @return
     */
    @RequestMapping("/getTeamDoctorResList")
    @ResponseBody
    public String getTeamDoctorResList(@RequestParam(required = true) String teamCode,
                                       @RequestParam(required = true) String startDate,
                                       @RequestParam(required = true) String endDate,
                                       @RequestParam(required = true) String sort,
                                       @RequestParam(required = true) String sortType) {
    public String getTeamDoctorResList(@RequestParam(required = true)String teamCode,
                                       @RequestParam(required = true)String startDate,
                                       @RequestParam(required = true)String endDate,
                                       @RequestParam(required = true)String sort,
                                       @RequestParam(required = true)String sortType){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorResList(teamCode, startDate, endDate, sort, sortType));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorResList(teamCode,startDate,endDate,sort,sortType));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1144,7 +1086,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队医生待预信息
     *
     * @param teamCode
     * @param doctor
     * @param startDate
@ -1153,12 +1094,12 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamDoctorResTitle")
    @ResponseBody
    public String getTeamDoctorResTitle(@RequestParam(required = true) String teamCode,
                                        @RequestParam(required = true) String doctor,
                                        @RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate) {
    public String getTeamDoctorResTitle(@RequestParam(required = true)String teamCode,
                                        @RequestParam(required = true)String doctor,
                                        @RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorResTitle(teamCode, doctor, startDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorResTitle(teamCode,doctor,startDate,endDate));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1167,21 +1108,20 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队健康指导折线图
     *
     * @param teamCode
     * @param startDate
     * @param endDate
     * @param type      0周,1月
     * @param type 0周,1月
     * @return
     */
    @RequestMapping("/getTeamGuidLine")
    @ResponseBody
    public String getTeamGuidLine(@RequestParam(required = true) String teamCode,
                                  @RequestParam(required = true) String startDate,
                                  @RequestParam(required = true) String endDate,
                                  @RequestParam(required = true) String type) {
    public String getTeamGuidLine(@RequestParam(required = true)String teamCode,
                                  @RequestParam(required = true)String startDate,
                                  @RequestParam(required = true)String endDate,
                                  @RequestParam(required = true)String type){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamGuidLine(teamCode, startDate, endDate, type));
            return write(200, "查询成功", "data", statisticsService.getTeamGuidLine(teamCode,startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1189,8 +1129,7 @@ public class StatisticsController extends BaseController {
    }
    /**
     * 获取团队医生则线图
     *
     *  获取团队医生则线图
     * @param teamCode
     * @param startDate
     * @param endDate
@ -1200,13 +1139,13 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamDoctorGuidLine")
    @ResponseBody
    public String getTeamDoctorGuidLine(@RequestParam(required = true) String teamCode,
                                        @RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate,
                                        @RequestParam(required = true) String type,
                                        @RequestParam(required = true) String doctor) {
    public String getTeamDoctorGuidLine(@RequestParam(required = true)String teamCode,
                                        @RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate,
                                        @RequestParam(required = true)String type,
                                        @RequestParam(required = true)String doctor){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorGuidLine(teamCode, startDate, endDate, type, doctor));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorGuidLine(teamCode,startDate,endDate,type,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1215,7 +1154,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队指导总数List
     *
     * @param teamCode
     * @param startDate
     * @param endDate
@ -1225,13 +1163,13 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamGuidList")
    @ResponseBody
    public String getTeamGuidList(@RequestParam(required = true) String teamCode,
                                  @RequestParam(required = true) String startDate,
                                  @RequestParam(required = true) String endDate,
                                  @RequestParam(required = true) String sort,
                                  @RequestParam(required = true) String sortType) {
    public String getTeamGuidList(@RequestParam(required = true)String teamCode,
                                  @RequestParam(required = true)String startDate,
                                  @RequestParam(required = true)String endDate,
                                  @RequestParam(required = true)String sort,
                                  @RequestParam(required = true)String sortType){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamGuidList(teamCode, startDate, endDate, sort, sortType));
            return write(200, "查询成功", "data", statisticsService.getTeamGuidList(teamCode,startDate,endDate,sort,sortType));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1240,7 +1178,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取医生健康指导头部信息
     *
     * @param teamCode
     * @param doctor
     * @param startDate
@ -1249,12 +1186,12 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamDoctorGuiTitle")
    @ResponseBody
    public String getTeamDoctorGuiTitle(@RequestParam(required = true) String teamCode,
                                        @RequestParam(required = true) String doctor,
                                        @RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate) {
    public String getTeamDoctorGuiTitle(@RequestParam(required = true)String teamCode,
                                        @RequestParam(required = true)String doctor,
                                        @RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorGuiTitle(teamCode, doctor, startDate, endDate));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorGuiTitle(teamCode,doctor,startDate,endDate));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1263,21 +1200,20 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队健康教育折线统计
     *
     * @param teamCode
     * @param startDate
     * @param endDate
     * @param type      0按周 1按月
     * @param type 0按周 1按月
     * @return
     */
    @RequestMapping("/getTeamEduLine")
    @ResponseBody
    public String getTeamEduLine(@RequestParam(required = true) String teamCode,
                                 @RequestParam(required = true) String startDate,
                                 @RequestParam(required = true) String endDate,
                                 @RequestParam(required = true) String type) {
    public String getTeamEduLine(@RequestParam(required = true)String teamCode,
                                 @RequestParam(required = true)String startDate,
                                 @RequestParam(required = true)String endDate,
                                 @RequestParam(required = true)String type){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamEduLine(teamCode, startDate, endDate, type));
            return write(200, "查询成功", "data", statisticsService.getTeamEduLine(teamCode,startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1286,7 +1222,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队健康
     *
     * @param teamCode
     * @param startDate
     * @param endDate
@ -1295,13 +1230,13 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamDoctorEduLine")
    @ResponseBody
    public String getTeamDoctorEduLine(@RequestParam(required = true) String teamCode,
                                       @RequestParam(required = true) String startDate,
                                       @RequestParam(required = true) String endDate,
                                       @RequestParam(required = true) String type,
                                       @RequestParam(required = true) String doctor) {
    public String getTeamDoctorEduLine(@RequestParam(required = true)String teamCode,
                                 @RequestParam(required = true)String startDate,
                                 @RequestParam(required = true)String endDate,
                                 @RequestParam(required = true)String type,
                                 @RequestParam(required = true)String doctor){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorEduLine(teamCode, startDate, endDate, type, doctor));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorEduLine(teamCode,startDate,endDate,type,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1310,7 +1245,6 @@ public class StatisticsController extends BaseController {
    /**
     * 获取团队成员健康教育列表
     *
     * @param teamCode
     * @param startDate
     * @param endDate
@ -1320,13 +1254,13 @@ public class StatisticsController extends BaseController {
     */
    @RequestMapping("/getTeamEduList")
    @ResponseBody
    public String getTeamEduList(@RequestParam(required = true) String teamCode,
                                 @RequestParam(required = true) String startDate,
                                 @RequestParam(required = true) String endDate,
                                 @RequestParam(required = true) String sort,
                                 @RequestParam(required = true) String sortType) {
    public String getTeamEduList(@RequestParam(required = true)String teamCode,
                                 @RequestParam(required = true)String startDate,
                                 @RequestParam(required = true)String endDate,
                                 @RequestParam(required = true)String sort,
                                 @RequestParam(required = true)String sortType){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamEduList(teamCode, startDate, endDate, sort, sortType));
            return write(200, "查询成功", "data", statisticsService.getTeamEduList(teamCode,startDate,endDate,sort,sortType));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1335,12 +1269,12 @@ public class StatisticsController extends BaseController {
    @RequestMapping("/getTeamDoctorEduTitle")
    @ResponseBody
    public String getTeamDoctorEduTitle(@RequestParam(required = true) String teamCode,
                                        @RequestParam(required = true) String startDate,
                                        @RequestParam(required = true) String endDate,
                                        @RequestParam(required = true) String doctor) {
    public String getTeamDoctorEduTitle(@RequestParam(required = true)String teamCode,
                                        @RequestParam(required = true)String startDate,
                                        @RequestParam(required = true)String endDate,
                                        @RequestParam(required = true)String doctor){
        try {
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorEduTitle(teamCode, startDate, endDate, doctor));
            return write(200, "查询成功", "data", statisticsService.getTeamDoctorEduTitle(teamCode,startDate,endDate,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
@ -1349,7 +1283,7 @@ public class StatisticsController extends BaseController {
    @RequestMapping("/getDotorInfo")
    @ResponseBody
    public String getDotorInfo(String code) {
    public String getDotorInfo(@RequestParam(required = true)String code){
        try {
            return write(200, "查询成功", "data", statisticsService.getDoctorInfo(code));
        } catch (Exception e) {
@ -1358,48 +1292,18 @@ public class StatisticsController extends BaseController {
        }
    }
    /**
     * 获取转签率和续签率
     * 前端:续签进展页面中用到
     * @param level 等级  4 市  3区  2社区 1团队
     * @param code  市 默认是厦门市 350200  区 就是区的code  社区就是社区的code 团队就是团队的code
     * @param year 年份 非比传
     * @return
     */
    @RequestMapping(value = "/getRenewPercentAndChangePercent", method = RequestMethod.GET)
    @RequestMapping("/getTeamRenewChangeLine")
    @ResponseBody
    public String getRenewPercentAndChangePercent(
            @RequestParam(required = true) String level,
            @RequestParam(required = true) String code,
            @RequestParam(required = false) String year) {
    public String getTeamRenewChangeLine(@RequestParam(required = true)String teamCode,
                                         @RequestParam(required = true)String startDate,
                                         @RequestParam(required = true)String endDate,
                                         @RequestParam(required = true)String type){
        try {
            return write(200, "查询成功", "data", statisticsService.getRenewPercentAndChangePercent(level, code,year));
            return write(200, "查询成功", "data", statisticsService.getTeamRenewChangeLine(teamCode,startDate,endDate,type));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
    /**
     * 获取转签人数,转签原因分析,转签分布
     * 前端:签约数据分析
     * @param level 等级  4 市  3区  2社区 1团队
     * @param code  市 默认是厦门市 350200  区 就是区的code  社区就是社区的code 团队就是团队的code
     * @param year 年份 非比传
     * @return
     */
    @RequestMapping(value = "/getRenewAnalysis", method = RequestMethod.GET)
    @ResponseBody
    public String getRenewAnalysis(
            @RequestParam(required = true) String level,
            @RequestParam(required = true) String code,
            @RequestParam(required = false) String year) {
        try {
            return write(200, "查询成功", "data", statisticsService.getRenewAnalysis(level, code,year));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
}

+ 14 - 14
patient-co-wlyy/src/main/webapp/WEB-INF/spring-mvc.xml

@ -76,19 +76,19 @@
		</property>
	</bean>
	
	<mvc:interceptors>
		<mvc:interceptor>
	        <mvc:mapping path="/patient/**"/>
	        <bean class="com.yihu.wlyy.interceptors.PatientInterceptor"/>
	    </mvc:interceptor>
	    <mvc:interceptor>
	        <mvc:mapping path="/doctor/**"/>
	        <bean class="com.yihu.wlyy.interceptors.DoctorInterceptor"/>
	    </mvc:interceptor>
	    <mvc:interceptor>
	        <mvc:mapping path="/user/**"/>
	        <bean class="com.yihu.wlyy.interceptors.UserInterceptor"/>
	    </mvc:interceptor>
	</mvc:interceptors>
	<!--<mvc:interceptors>-->
		<!--<mvc:interceptor>-->
	        <!--<mvc:mapping path="/patient/**"/>-->
	        <!--<bean class="com.yihu.wlyy.interceptors.PatientInterceptor"/>-->
	    <!--</mvc:interceptor>-->
	    <!--<mvc:interceptor>-->
	        <!--<mvc:mapping path="/doctor/**"/>-->
	        <!--<bean class="com.yihu.wlyy.interceptors.DoctorInterceptor"/>-->
	    <!--</mvc:interceptor>-->
	    <!--<mvc:interceptor>-->
	        <!--<mvc:mapping path="/user/**"/>-->
	        <!--<bean class="com.yihu.wlyy.interceptors.UserInterceptor"/>-->
	    <!--</mvc:interceptor>-->
	<!--</mvc:interceptors>-->
    
</beans>