wangzhinan 1 éve
szülő
commit
e2e342c37e

+ 53 - 0
business/es-service/src/main/java/com/yihu/jw/es/service/StatisticsEsService.java

@ -5844,6 +5844,59 @@ public class StatisticsEsService {
    }
    /**
     *  按照科室和医生查询列表
     *
     * @param flag
     * @param startDate
     * @param endDate
     * @param level
     * @param area
     * @param lowLevel
     * @param lowCode
     * @return
     * @throws Exception
     */
    public List<Map<String,Object>> getArticleTotalList(Integer flag,String startDate,String endDate,int level, String area, String lowLevel,String lowCode) throws Exception {
        if (flag==1){
            startDate = DateUtil.getFirstMonthDay() +" 00:00:00";
            endDate = DateUtil.getLastMonthDay()+" 23:59:59";
        } else if (flag==2) {
            startDate = DateUtil.getMonthDate(new Date(),-6)+" 00:00:00";
            endDate = DateUtil.getStringDateShort()+" 23:59:59";
        }else if (flag==3){
            startDate = DateUtil.getCurrentYearStartTime()+" 00:00:00";
            endDate = DateUtil.getCurrentYearEndTime() +" 23:59:59";
        }
        //文章发布数
        List<SaveModel> total = elasticsearchUtil.findListDateQuotaLevel1Empty(startDate, endDate,area,level, "75", SaveModel.timeLevel_ZL, lowLevel,lowCode);//总数
        List<Map<String,Object>> resultMaps = new ArrayList<>();
        for (SaveModel saveModel:total){
            Map<String,Object> map = new HashMap<>();
            if (SaveModel.doctorLevel.equals(lowLevel)) {
                map.put("code",saveModel.getDoctor());
                map.put("name", saveModel.getDoctorName());
            } else if (SaveModel.deptLevel.equals(lowLevel)) {
                map.put("code",saveModel.getDept());
                map.put("name", saveModel.getDeptName());
            } else if (SaveModel.OrgLevel.equals(lowLevel)) {
                map.put("code",saveModel.getHospital());
                map.put("name", saveModel.getHospitalName());
            }
            map.put("total",saveModel.getResult1());
            resultMaps.add(map);
        }
        Collections.sort(resultMaps, new Comparator<Map<String, Object>>() {
            public int compare(Map<String, Object> o1, Map<String, Object> o2) {
                return (Integer) o1.get("total") < (Integer) o2.get("total") ? 1 : ((Integer) o1.get("total") == (Integer) o2.get("total") ? 0 : -1);
            }
        });
        return resultMaps;
    }
    /**
     * 文章类型统计
     *

+ 2 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/hospital/BaseHospitalRequestMapping.java

@ -1498,6 +1498,8 @@ public class BaseHospitalRequestMapping {
        public static final String getArticleOperateDateLine = "/getArticleOperateDateLine";
        public static final String getArticleExcel="/getArticleExcel";
        public static final String getArticleTypeCircle="/getArticleTypeCircle";
        public static final String getArticleTotalList="/getArticleTotalList";
    }

+ 26 - 0
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/statistics/EsStatisticsEndpoint.java

@ -1091,6 +1091,32 @@ public class EsStatisticsEndpoint extends EnvelopRestEndpoint {
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.Statistics.getArticleTotalList)
    @ApiOperation(value = " 文章发布量排行")
    public Envelop getArticleTotalList(
            @ApiParam(name = "startDate", value = "开始时间", required = false)
            @RequestParam(value = "startDate", required = false) String startDate,
            @ApiParam(name = "endDate", value = "结束时间", required = false)
            @RequestParam(value = "endDate", required = false) String endDate,
            @ApiParam(name = "area", value = "区域编码 如 level2 area传市编码", required = true)
            @RequestParam(value = "area", required = true) String area,
            @ApiParam(name = "level", value = "2 市  3区  4医院 5、科室 6医生", required = true)
            @RequestParam(value = "level", required = true) int level,
            @ApiParam(name = "flag", value = "0自定义 1本月2近半年3本年", required = true)
            @RequestParam(value = "flag", required = true) Integer flag,
            @ApiParam(name = "lowLevel", value = "下一级区域等级   2 市  3区  4医院 5、科室 6医生", required = false)
            @RequestParam(value = "lowLevel", required = false) String lowLevel,
            @ApiParam(name = "lowCode", value = "", required = false)
            @RequestParam(value = "lowCode", required = false) String lowCode) {
        try {
            return success(statisticsEsService.getArticleTotalList(flag, startDate, endDate, level, area, lowLevel, lowCode));
        } catch (Exception e) {
            e.printStackTrace();
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.Statistics.getArticleTypeCircle)
    @ApiOperation(value = " 文章类型统计")