Переглянути джерело

缴费提醒修改、统计修改

lyr 8 роки тому
батько
коміт
49ab44f0ff

+ 59 - 10
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/statistics/StatisticsAllService.java

@ -68,6 +68,8 @@ public class StatisticsAllService extends BaseService {
    public long getIndexTotal(String endDate, String area, int level, String index) {
        long total = 0;
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        boolean preFlag = false;
        String preDate = endDate;
        if (endDate.compareTo(dateFormat.format(new Date())) >= 0) {
            String val = redisTemplate.opsForValue().get("quota:" + index + ":" + level + ":" + area + ":" + getQuotaTimeStamp());
@ -76,8 +78,16 @@ public class StatisticsAllService extends BaseService {
                if (valJson.has("num")) {
                    total = valJson.getInt("num");
                }
            } else {
                preFlag = true;
                Calendar today = Calendar.getInstance();
                today.add(Calendar.DATE, -1);
                preDate = dateFormat.format(today.getTime());
            }
        } else {
            preFlag = true;
        }
        if (preFlag) {
            // 查询语句
            String sql = " select " +
                    "     ifnull(result,'0') amount" +
@ -101,7 +111,7 @@ public class StatisticsAllService extends BaseService {
                sql += " and qkdoctor_code = ?";
            }
            List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, new Object[]{index, level, endDate, area});
            List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, new Object[]{index, level, preDate, area});
            if (result != null && result.size() > 0) {
                total = (result.get(0).get("amount") != null ? Long.valueOf(result.get(0).get("amount").toString()) : 0L);
@ -122,16 +132,26 @@ public class StatisticsAllService extends BaseService {
    public long getWeiJiaoFei(String endDate, String area, int level) {
        long total = 0;
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        boolean preFlag = false;
        String preDate = endDate;
        if (endDate.compareTo(dateFormat.format(new Date())) >= 0) {
            String val = redisTemplate.opsForValue().get("quota:16:" + level + ":"+ area + ":0:" + getQuotaTimeStamp());
            String val = redisTemplate.opsForValue().get("quota:16:" + level + ":" + area + ":0:" + getQuotaTimeStamp());
            if (!StringUtils.isEmpty(val)) {
                JSONObject valJson = new JSONObject(val);
                if (valJson.has("num")) {
                    total = valJson.getInt("num");
                }
            } else {
                preFlag = true;
                Calendar today = Calendar.getInstance();
                today.add(Calendar.DATE, -1);
                preDate = dateFormat.format(today.getTime());
            }
        } else {
            preFlag = true;
        }
        if (preFlag) {
            // 查询语句
            String sql = " select " +
                    "     ifnull(result,'0') amount" +
@ -156,7 +176,7 @@ public class StatisticsAllService extends BaseService {
                sql += " and qkdoctor_code = ?";
            }
            List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, new Object[]{level, endDate, area});
            List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, new Object[]{level, preDate, area});
            if (result != null && result.size() > 0) {
                total = (result.get(0).get("amount") != null ? Long.valueOf(result.get(0).get("amount").toString()) : 0L);
@ -239,13 +259,11 @@ public class StatisticsAllService extends BaseService {
        List<Map<String, Object>> resultList = new ArrayList<>();
        if (date.compareTo(dateFormat.format(new Date())) >= 0) {
            resultList = getTodayLowLevelTotal(date, area, level, index, lowLevel);
            resultList = getTodayLowLevelTotal(area, level, index, sort, lowLevel);
        } else {
            resultList = getTodayBeforeLowLevelTotal(date, area, level, index, sort, lowLevel);
        }
        // 结果为空时,自建结果集
        if (resultList == null || resultList.size() < 1) {
            resultList = getLowLevelMapKey(level, low_level, area);
@ -373,14 +391,13 @@ public class StatisticsAllService extends BaseService {
    /**
     * 获取今天某个区域一级指标的下级统计
     *
     * @param date
     * @param area
     * @param level
     * @param index
     * @param lowLevel
     * @return
     */
    public List<Map<String, Object>> getTodayLowLevelTotal(String date, String area, int level, String index, String lowLevel) {
    public List<Map<String, Object>> getTodayLowLevelTotal(String area, int level, String index, int sort, String lowLevel) throws Exception {
        List<Map<String, Object>> resultList = new ArrayList<>();
        String low_level = String.valueOf(StringUtils.isEmpty(lowLevel) ? (level - 1) : lowLevel);
        String redisData = redisTemplate.opsForValue().get("quota:" + index + ":" + level + ":" + area + ":" + low_level + ":" + getQuotaTimeStamp());
@ -398,6 +415,11 @@ public class StatisticsAllService extends BaseService {
                resultList.add(data);
            }
        } else {
            Calendar today = Calendar.getInstance();
            today.add(Calendar.DATE, -1);
            String preDate = new SimpleDateFormat("yyyy-MM-dd").format(today.getTime());
            resultList = getTodayBeforeLowLevelTotal(preDate, area, level, index, sort, lowLevel);
        }
        if (resultList.size() < 1) {
@ -649,6 +671,11 @@ public class StatisticsAllService extends BaseService {
                resultList.add(data);
            }
        } else {
            Calendar today = Calendar.getInstance();
            today.add(Calendar.DATE, -1);
            String preDate = new SimpleDateFormat("yyyy-MM-dd").format(today.getTime());
            resultList = getTodyBeforeLevelTwototal(preDate, area, level, index);
        }
        if (resultList.size() < 1) {
@ -834,6 +861,8 @@ public class StatisticsAllService extends BaseService {
        String areaField = "";
        SimpleDateFormat datef = new SimpleDateFormat("yyyy-MM-dd");
        List<Map<String, Object>> resultList = new ArrayList<>();
        boolean preFlag = false;
        String preDate = endDate;
        if (endDate.compareTo(datef.format(new Date())) >= 0) {
            String redisData = redisTemplate.opsForValue().get("quota:12:" + level + ":" + area + ":6:" + getQuotaTimeStamp());
@ -851,8 +880,17 @@ public class StatisticsAllService extends BaseService {
                    resultList.add(data);
                }
            } else {
                preFlag = true;
                Calendar today = Calendar.getInstance();
                today.add(Calendar.DATE, -1);
                preDate = datef.format(today.getTime());
            }
        } else {
            preFlag = true;
        }
        if (preFlag) {
            if (level == 4) {
                // 市级别
                areaField = "city";
@ -884,7 +922,7 @@ public class StatisticsAllService extends BaseService {
                    "   and " + areaField + " = ? " +
                    " group by level3_type,level3_type_name";
            resultList = jdbcTemplate.queryForList(sql, new Object[]{level, endDate, area});
            resultList = jdbcTemplate.queryForList(sql, new Object[]{level, preDate, area});
        }
        if (resultList == null || resultList.size() < 1) {
@ -947,6 +985,8 @@ public class StatisticsAllService extends BaseService {
        String areaField = "";
        long total = 0;
        SimpleDateFormat datef = new SimpleDateFormat("yyyy-MM-dd");
        boolean preFlag = false;
        String preDate = endDate;
        if (endDate.compareTo(datef.format(new Date())) >= 0) {
            String code = "6";
@ -956,8 +996,17 @@ public class StatisticsAllService extends BaseService {
                if (valJson.has("num")) {
                    total = valJson.getInt("num");
                }
            } else {
                preFlag = true;
                Calendar today = Calendar.getInstance();
                today.add(Calendar.DATE, -1);
                preDate = datef.format(today.getTime());
            }
        } else {
            preFlag = true;
        }
        if (preFlag) {
            if (level == 4) {
                // 市级别
                areaField = "city";
@ -988,7 +1037,7 @@ public class StatisticsAllService extends BaseService {
            List<Map<String, Object>> result = null;
            result = jdbcTemplate.queryForList(sql, new Object[]{level, endDate, area});
            result = jdbcTemplate.queryForList(sql, new Object[]{level, preDate, area});
            if (result != null && result.size() > 0) {
                total = (result.get(0).get("amount") == null ? 0 : Math.round(Double.valueOf(result.get(0).get("amount").toString())));

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/task/PushMsgTask.java

@ -366,7 +366,7 @@ public class PushMsgTask {
                temp.setTemplate_id(temp_id);
                WechatTemplateData keyword1 = new WechatTemplateData();
                keyword1.setColor("#000000");
                keyword1.setValue(json.getString("first"));
                keyword1.setValue("提醒医生:" + json.getString("doctorName"));
                m.put("first", keyword1);
                WechatTemplateData keyword2 = new WechatTemplateData();
                keyword2.setColor("#000000");

+ 1 - 1
patient-co-wlyy/src/main/resources/system.properties

@ -119,7 +119,7 @@ yihu_guahao_secret=sanshi
#微信模板消息ID
#----------------开发环境-----------------#
#签约邀请
doctor_invitel_template=MQn79bx1ofb6hekhmRIuqLU7KjySJQzaBzrimgqVrzA
doctor_invitel_template=TLWrBtNE2kBJaFCdVzDOOnQC8N2TtRY9ZxEzwZXQcR0
#咨询回复
template_consult_notice=qSOW0DBxO3qEBm4ucG0Ial0jxsOyD7_f2TFK5e-mQEc
#签约成功