Browse Source

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

 Conflicts:
	svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/statistics/StatisticsService.java
liubing 3 years ago
parent
commit
e57a91b918

+ 28 - 28
svr/svr-base/src/main/resources/application.yml

@ -2,7 +2,7 @@
server:
server:
  port: ${server.svr-base-port}
  port: ${server.svr-base-port}
  tomcat:
  tomcat:
      basedir: /data/apps/temp2
    basedir: /data/apps/temp2
express:
express:
  sf_url: http://bsp-oisp.sf-express.com/bsp-oisp/sfexpressService
  sf_url: http://bsp-oisp.sf-express.com/bsp-oisp/sfexpressService
  sf_code: JKZL
  sf_code: JKZL
@ -26,9 +26,9 @@ spring:
    test-while-idle: true #指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除
    test-while-idle: true #指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除
    min-evictable-idle-time-millis: 3600000 #连接池中连接,在时间段内一直空闲,被逐出连接池的时间(1000*60*60),以毫秒为单位
    min-evictable-idle-time-millis: 3600000 #连接池中连接,在时间段内一直空闲,被逐出连接池的时间(1000*60*60),以毫秒为单位
    time-between-eviction-runs-millis: 300000 #在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位,一般比minEvictableIdleTimeMillis小
    time-between-eviction-runs-millis: 300000 #在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位,一般比minEvictableIdleTimeMillis小
#  sleuth:
#    sampler:
#      percentage: 1.0 #采用需要的请求的百分比 默认是0.1 即 10%
  #  sleuth:
  #    sampler:
  #      percentage: 1.0 #采用需要的请求的百分比 默认是0.1 即 10%
  redis:
  redis:
    database: 0 # Database index used by the connection factory.
    database: 0 # Database index used by the connection factory.
    password: # Login password of the redis server.
    password: # Login password of the redis server.
@ -40,18 +40,18 @@ spring:
      min-idle: 5  # 连接池中的最小空闲连接
      min-idle: 5  # 连接池中的最小空闲连接
  mail:
  mail:
    default-encoding: UTF-8
    default-encoding: UTF-8
#端口
    #端口
    port: 25
    port: 25
#协议
    #协议
    protocol: smtp
    protocol: smtp
    properties.mail.smtp.auth: true
    properties.mail.smtp.auth: true
    properties.mail.smtp.starttls.enable: true
    properties.mail.smtp.starttls.enable: true
    properties.mail.smtp.starttls.required: true
    properties.mail.smtp.starttls.required: true
    timeout: 1000
    timeout: 1000
    host: smtp.163.com
    host: smtp.163.com
#发送者的邮箱密码
    #发送者的邮箱密码
    password: xmijk181016jkzl
    password: xmijk181016jkzl
#发送者的邮箱账号
    #发送者的邮箱账号
    username: i_jiankang@163.com
    username: i_jiankang@163.com
es:
es:
  index:
  index:
@ -85,9 +85,9 @@ wechat:
spring:
spring:
  profiles: jwdev
  profiles: jwdev
  datasource:
  datasource:
#    url: jdbc:mysql://172.17.110.160/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
#    username: ssgg
#    password: ssgg
    #    url: jdbc:mysql://172.17.110.160/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    #    username: ssgg
    #    password: ssgg
    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    username: root
    username: root
    password: 123456
    password: 123456
@ -140,9 +140,9 @@ spring:
    url: jdbc:mysql://172.26.0.104/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    url: jdbc:mysql://172.26.0.104/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    username: ssgg
    username: ssgg
    password: ssgg@jkzl2019
    password: ssgg@jkzl2019
#    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
#    username: root
#    password: 123456
  #    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
  #    username: root
  #    password: 123456
  elasticsearch:
  elasticsearch:
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-nodes: 172.19.103.45:9300,172.19.103.68:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
    cluster-nodes: 172.19.103.45:9300,172.19.103.68:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
@ -189,9 +189,9 @@ spring:
    url: jdbc:mysql://172.26.0.104/iot-base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    url: jdbc:mysql://172.26.0.104/iot-base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    username: ssgg
    username: ssgg
    password: ssgg@jkzl2019
    password: ssgg@jkzl2019
#    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
#    username: root
#    password: 123456
  #    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
  #    username: root
  #    password: 123456
  elasticsearch:
  elasticsearch:
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-nodes: 172.19.103.45:9300,172.19.103.68:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
    cluster-nodes: 172.19.103.45:9300,172.19.103.68:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
@ -239,9 +239,9 @@ spring:
    url: jdbc:mysql://172.26.0.195/iot-base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    url: jdbc:mysql://172.26.0.195/iot-base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    username: root
    username: root
    password: jkzlehr
    password: jkzlehr
#    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
#    username: root
#    password: 123456
  #    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
  #    username: root
  #    password: 123456
  elasticsearch:
  elasticsearch:
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-nodes: 172.19.103.45:9300,172.19.103.68:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
    cluster-nodes: 172.19.103.45:9300,172.19.103.68:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
@ -360,7 +360,7 @@ hospital:
wlyy:
wlyy:
  url: http://ehr.yihu.com/wlyy/
  url: http://ehr.yihu.com/wlyy/
wechat:
wechat:
#  id: xm_ykyy_wx
  #  id: xm_ykyy_wx
  id: d24d1367-7f4f-43af-910e-a0a43799e040
  id: d24d1367-7f4f-43af-910e-a0a43799e040
#文件服务器上传配置 0本地,1.I健康,2.内网调用
#文件服务器上传配置 0本地,1.I健康,2.内网调用
testPattern:
testPattern:
@ -424,9 +424,9 @@ spring:
    url: jdbc:mysql://10.90.32.3:20002/iot-base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    url: jdbc:mysql://10.90.32.3:20002/iot-base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
    username: wlyy_new
    username: wlyy_new
    password: J4&y9sk#1G
    password: J4&y9sk#1G
#    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
#    username: root
#    password: 123456
  #    url: jdbc:mysql://172.19.103.77/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true
  #    username: root
  #    password: 123456
  elasticsearch:
  elasticsearch:
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-nodes: 10.90.32.3:20010,10.90.32.3:20012 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
    cluster-nodes: 10.90.32.3:20010,10.90.32.3:20012 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
@ -599,9 +599,9 @@ im:
spring:
spring:
  profiles: hzprod
  profiles: hzprod
  datasource:
  datasource:
     url: jdbc:mysql://10.18.43.40:3306/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true&useSSL=false
     username: wlyy
     password: '0XxS3W*!cRj'
    url: jdbc:mysql://10.18.43.40:3306/base?useUnicode:true&characterEncoding=utf-8&autoReconnect=true&useSSL=false
    username: wlyy
    password: '0XxS3W*!cRj'
  elasticsearch:
  elasticsearch:
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-name: jkzl #集群名 默认elasticsearch
    cluster-nodes: 10.18.43.40:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
    cluster-nodes: 10.18.43.40:9300 #配置es节点信息,逗号分隔,如果没有指定,则启动ClientNode
@ -830,4 +830,4 @@ testPattern:
  sign: 1
  sign: 1
  remote_inner_url: 172.16.100.240:10023/open/fileUpload/upload_stream
  remote_inner_url: 172.16.100.240:10023/open/fileUpload/upload_stream
im:
im:
  im_list_get: http://127.0.0.1:3000/
  im_list_get: http://127.0.0.1:3000/

+ 1 - 1
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/consult/PatientConsultEndpoint.java

@ -117,7 +117,7 @@ public class PatientConsultEndpoint extends EnvelopRestEndpoint {
	@PostMapping(value = "videoInviteMiniProgram")
	@PostMapping(value = "videoInviteMiniProgram")
	@ApiOperation(value = "医生端:发起/断开 会话小程序视频邀请", notes = "医生端:发起/断开 会话小程序视频邀请")
	@ApiOperation(value = "发起/断开 会话小程序视频邀请", notes = "发起/断开 会话小程序视频邀请")
	public Envelop videoInviteMiniProgram(@ApiParam(name = "sender_id", value = "发起人")
	public Envelop videoInviteMiniProgram(@ApiParam(name = "sender_id", value = "发起人")
										  @RequestParam(value = "sender_id",required = true) String sender_id,
										  @RequestParam(value = "sender_id",required = true) String sender_id,
										  @ApiParam(name = "reciver_id", value = "接收人")
										  @ApiParam(name = "reciver_id", value = "接收人")

+ 60 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/doctor/admin/AdminListInfoController.java

@ -0,0 +1,60 @@
package com.yihu.jw.care.endpoint.doctor.admin;
import com.yihu.jw.care.service.statistics.StatisticsService;
import com.yihu.jw.care.service.third.PatientInfoPlatFormService;
import com.yihu.jw.entity.care.message.BaseServiceNews;
import com.yihu.jw.restmodel.web.ListEnvelop;
import com.yihu.jw.restmodel.web.ObjEnvelop;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping(value = "/admin/list/info")
@Api(description = "管理端   列表展示信息")
public class AdminListInfoController extends EnvelopRestEndpoint {
    @Autowired
    private PatientInfoPlatFormService patientInfoPlatFormService;
    @Autowired
    private StatisticsService statisticsService;
    @GetMapping(value = "/getPatientDeviceInfoWithDetail")
    @ApiOperation("获取居民设备列表(带设备电量、预警情况、是否在线等信息)")
    public ObjEnvelop getPatientDeviceInfoWithDetail(@ApiParam(name="patient",value = "居民id",required = true)
                                                     @RequestParam(value = "patient")String patient){
        try {
            return ObjEnvelop.getSuccess("查询成功",patientInfoPlatFormService.getPatientDeviceInfoWithDetail(patient));
        }catch (Exception e){
            return failedObjEnvelopException2(e);
        }
    }
    @GetMapping(value = "/serviceDynamics")
    @ApiOperation("获取动态服务--管理员端")
    public ListEnvelop  serviceDynamics(@ApiParam(name = "page")
                                        @RequestParam(value = "page")Integer page,
                                        @ApiParam(name = "size")
                                        @RequestParam(value = "size")Integer size,
                                        @ApiParam(name = "area")
                                        @RequestParam(value = "area")String area,
                                        @ApiParam(name = "level")
                                        @RequestParam(value = "level")String level){
        try {
            List<BaseServiceNews> baseServiceNews = statisticsService.serviceDynamics(page, size, area, level);
            return ListEnvelop.getSuccess("查询成功",baseServiceNews);
        } catch (Exception e) {
            return failedListEnvelopException2(e);
        }
    }
}

+ 3 - 2
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/statistics/StatisticsEndpoint.java

@ -236,9 +236,10 @@ public class StatisticsEndpoint extends EnvelopRestEndpoint {
                                              @RequestParam(required = false) Integer deviceCode,
                                              @RequestParam(required = false) Integer deviceCode,
                                              @RequestParam(required = false) String deviceName,
                                              @RequestParam(required = false) String deviceName,
                                              @RequestParam(required = false) Integer page,
                                              @RequestParam(required = false) Integer page,
                                              @RequestParam(required = false) Integer size){
                                              @RequestParam(required = false) Integer size,
                                               @RequestParam(required = false)String dactor){
        try {
        try {
           return statisticsService.getAllDeviceLostMessage(area,deviceCode,deviceName,page,size);
           return statisticsService.getAllDeviceLostMessage(area,deviceCode,deviceName,page,size,dactor);
        }catch (Exception e){
        }catch (Exception e){
            return failedPageEnvelopException2(e);
            return failedPageEnvelopException2(e);
        }
        }

+ 0 - 2
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/consult/ConsultService.java

@ -125,8 +125,6 @@ public class ConsultService {
                String openId = basePatientWechatDos.get(0).getOpenid();
                String openId = basePatientWechatDos.get(0).getOpenid();
                messageUtil.putTemplateWxMessage(wechatId,"template_consult_notice","spthtx",openId,first,null,null,28,json, DateUtil.dateToChineseDate(new Date()),"视频请求","点击接收");
                messageUtil.putTemplateWxMessage(wechatId,"template_consult_notice","spthtx",openId,first,null,null,28,json, DateUtil.dateToChineseDate(new Date()),"视频请求","点击接收");
            }
            }
        }else{
            throw new Exception("接收者ID错误,无法找到该账号");
        }
        }
        return "success";
        return "success";
    }
    }

+ 1 - 2
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/message/DoctorMessageService.java

@ -14,7 +14,6 @@ import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
import com.yihu.jw.entity.base.notice.UserNoticeDO;
import com.yihu.jw.entity.base.notice.UserNoticeDO;
import com.yihu.jw.entity.care.message.OrgNoticeDO;
import com.yihu.jw.entity.care.message.OrgNoticeDO;
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
import com.yihu.jw.hospital.message.dao.SystemMessageDao;
import com.yihu.jw.hospital.message.dao.SystemMessageDao;
import com.yihu.jw.restmodel.ResponseContant;
import com.yihu.jw.restmodel.ResponseContant;
import com.yihu.jw.restmodel.web.PageEnvelop;
import com.yihu.jw.restmodel.web.PageEnvelop;
@ -322,7 +321,7 @@ public class DoctorMessageService {
        String sql =  "select DISTINCT GROUP_CONCAT(sm.id) id,sm.type AS type,sm.title AS title,sm.sender AS sender,sm.sender_name AS senderName,\n" +
        String sql =  "select DISTINCT GROUP_CONCAT(sm.id) id,sm.type AS type,sm.title AS title,sm.sender AS sender,sm.sender_name AS senderName,\n" +
                "  sm.receiver AS receiver,sm.receiver_name AS receiver_name,sm.relation_code AS relationCode,\n" +
                "  sm.receiver AS receiver,sm.receiver_name AS receiver_name,sm.relation_code AS relationCode,\n" +
                "  sm.data AS data,sm.is_read AS isRead,sm.create_time AS createTime,sm.sender_photo AS sender_photo\n" +
                "  sm.data AS data,sm.is_read AS isRead,DATE_FORMAT(sm.create_time,'%Y-%m-%d') AS createTime,sm.sender_photo AS sender_photo\n" +
                "  from base_system_message sm LEFT JOIN wlyy_patient_device pd ON sm.relation_code = pd.device_sn where sm.receiver = '"+doctor+"' AND sm.type=43 and sm.del=1 ";
                "  from base_system_message sm LEFT JOIN wlyy_patient_device pd ON sm.relation_code = pd.device_sn where sm.receiver = '"+doctor+"' AND sm.type=43 and sm.del=1 ";
        if (StringUtils.isNotBlank(deviceCode)&&!"''".equals(deviceCode)){
        if (StringUtils.isNotBlank(deviceCode)&&!"''".equals(deviceCode)){

+ 1 - 1
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/org/BaseOrgService.java

@ -35,7 +35,7 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
            sql += " and a.code = '"+orgCode+"' ";
            sql += " and a.code = '"+orgCode+"' ";
        }
        }
        sql += "a.code NOT IN (SELECT DISTINCT dict_code from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_org' and dict_code is not null)";
        sql += " a.code NOT IN (SELECT DISTINCT dict_code from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_org' and dict_code is not null)";
        return jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(BaseOrgDO.class));
        return jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(BaseOrgDO.class));
    }
    }

+ 72 - 4
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/statistics/StatisticsService.java

@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.care.dao.device.PatientDeviceDao;
import com.yihu.jw.care.dao.device.PatientDeviceDao;
import com.yihu.jw.care.dao.message.BaseServiceNewsDao;
import com.yihu.jw.care.service.patient.CarePatientService;
import com.yihu.jw.care.service.patient.CarePatientService;
import com.yihu.jw.care.service.role.RoleService;
import com.yihu.jw.care.service.role.RoleService;
import com.yihu.jw.care.util.CommonUtil;
import com.yihu.jw.care.util.CommonUtil;
@ -16,6 +17,7 @@ import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
import com.yihu.jw.entity.base.login.BaseLoginLogDO;
import com.yihu.jw.entity.base.login.BaseLoginLogDO;
import com.yihu.jw.entity.base.patient.BasePatientDO;
import com.yihu.jw.entity.base.patient.BasePatientDO;
import com.yihu.jw.entity.care.device.DevicePatientDevice;
import com.yihu.jw.entity.care.device.DevicePatientDevice;
import com.yihu.jw.entity.care.message.BaseServiceNews;
import com.yihu.jw.es.es.ElasticSearchHelperUtil;
import com.yihu.jw.es.es.ElasticSearchHelperUtil;
import com.yihu.jw.es.util.ElasticsearchUtil;
import com.yihu.jw.es.util.ElasticsearchUtil;
import com.yihu.jw.es.util.SaveModel;
import com.yihu.jw.es.util.SaveModel;
@ -25,7 +27,6 @@ import com.yihu.jw.patient.dao.BasePatientDao;
import com.yihu.jw.restmodel.web.PageEnvelop;
import com.yihu.jw.restmodel.web.PageEnvelop;
import com.yihu.jw.util.common.IdCardUtil;
import com.yihu.jw.util.common.IdCardUtil;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.utils.StringUtil;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.Logger;
@ -86,6 +87,8 @@ public class StatisticsService {
    private CarePatientService carePatientService;
    private CarePatientService carePatientService;
    @Autowired
    @Autowired
    private RoleService roleService;
    private RoleService roleService;
    @Autowired
    private BaseServiceNewsDao baseServiceNewsDao;
    private static final String defalutArea = "330100";
    private static final String defalutArea = "330100";
@ -1490,7 +1493,7 @@ public class StatisticsService {
        return result;
        return result;
    }
    }
    public PageEnvelop getAllDeviceLostMessage(String area, Integer deviceCode,String deviceName,Integer page, Integer size) {
    public PageEnvelop getAllDeviceLostMessage(String area, Integer deviceCode,String deviceName,Integer page, Integer size,String doctor) {
        page = page > 0 ? page - 1 : 0;
        page = page > 0 ? page - 1 : 0;
        String sql = "";
        String sql = "";
        boolean dc = null==deviceCode;
        boolean dc = null==deviceCode;
@ -1499,12 +1502,12 @@ public class StatisticsService {
             sql = "select GROUP_CONCAT(id) id,type,title,sender,sender_name senderName,\n" +
             sql = "select GROUP_CONCAT(id) id,type,title,sender,sender_name senderName,\n" +
                    "receiver,receiver_name receiverName,relation_code relationCode,\n" +
                    "receiver,receiver_name receiverName,relation_code relationCode,\n" +
                    "data,is_read isRead,create_time createTime,sender_photo\n" +
                    "data,is_read isRead,create_time createTime,sender_photo\n" +
                    "from base_system_message where type=43 and del=1 GROUP BY relation_code order by createTime desc ";
                    "from base_system_message where type=43 and del=1 receiver = '"+doctor+"'  GROUP BY relation_code order by createTime desc ";
        }else {
        }else {
             sql = "select DISTINCT GROUP_CONCAT(sm.id) id,sm.type AS type,sm.title AS title,sm.sender AS sender,sm.sender_name AS senderName,\n" +
             sql = "select DISTINCT GROUP_CONCAT(sm.id) id,sm.type AS type,sm.title AS title,sm.sender AS sender,sm.sender_name AS senderName,\n" +
                    " sm.receiver AS receiver,sm.receiver_name AS receiver_name,sm.relation_code AS relationCode,\n" +
                    " sm.receiver AS receiver,sm.receiver_name AS receiver_name,sm.relation_code AS relationCode,\n" +
                    " sm.data AS data,sm.is_read AS isRead,sm.create_time AS createTime,sm.sender_photo AS sender_photo\n" +
                    " sm.data AS data,sm.is_read AS isRead,sm.create_time AS createTime,sm.sender_photo AS sender_photo\n" +
                    " from base_system_message sm LEFT JOIN wlyy_patient_device pd ON sm.relation_code = pd.device_sn where sm.type=43 and sm.del=1  ";
                    " from base_system_message sm LEFT JOIN wlyy_patient_device pd ON sm.relation_code = pd.device_sn where sm.type=43 and sm.del=1 sm.receiver = '"+doctor+"'  ";
            if (dc) {
            if (dc) {
                sql +=" AND pd.category_code = '"+deviceCode+"'";
                sql +=" AND pd.category_code = '"+deviceCode+"'";
@ -2561,6 +2564,71 @@ public class StatisticsService {
        return list;
        return list;
    }
    }
    public List<BaseServiceNews> serviceDynamics(Integer page,Integer size,String area,String level){
        if (null==page){
            page=0;
        }
        page = page>0?page-1:0;
        if(size==null||size<1){
            size = 9;
        }
        List<String> jkzlPatients = jdbcTemplate.queryForList("SELECT dict_code FROM wlyy_hospital_sys_dict WHERE dict_name LIKE '%jkzl%' ",String.class);
        List<BaseServiceNews> result = new ArrayList<>();
        String olderFilter = roleService.getOlderRoleSQL(area,level);
        String baseServiceSql = "select sn.* from base_service_news sn where sn.type = 1 " + olderFilter.replace("{patient}","sn.code");
        if ("330100".equals(area)){
                baseServiceSql +=" UNION SELECT sn.* FROM base_service_news sn WHERE sn.type =2 ";
        }else {
            // 1省 2市 3区县 4机构 5团队 6医生
            baseServiceSql +=" UNION SELECT sn.* FROM base_service_news sn LEFT JOIN base_team_member tm ON sn.`code` = tm.doctor_code WHERE sn.type =2  AND tm.del =1 ";
            if ("4".equals(level)){
                baseServiceSql +=" AND tm.org_code ='"+area+"'";
            }
            if ("5".equals(level)){
                baseServiceSql += " AND tm.team_code ='"+area+"'";
            }
        }
        baseServiceSql += " sn.create_time DESC LIMIT "+(page-1)*size+","+page+"";
        List<BaseServiceNews> list = jdbcTemplate.query(baseServiceSql,new BeanPropertyRowMapper<>(BaseServiceNews.class));
        for (BaseServiceNews tmp:list){
            if (jkzlPatients.contains(tmp.getCode())){
                continue;
            }
            BasePatientDO patientDO = patientDao.findById(tmp.getCode());
            if (null!=patientDO){
                tmp.setArchiveType(patientDO.getArchiveType());
                tmp.setResidentialArea(patientDO.getResidentialArea());
            }
            String relationCode = tmp.getRelationCode();
            if (StringUtils.isNotBlank(relationCode)){
                if ("1".equals(tmp.getType())){//上门
                    String sql = " select group_concat(Distinct name SEPARATOR '、') from base_door_coach_fee_detail where  order_id ='"+relationCode+"' and status =1 ";
                    List<String> serviceItems = jdbcTemplate.queryForList(sql,String.class);
                    if (serviceItems.size()>0){
                        tmp.setServeItems(serviceItems.get(0));
                    }
                }
                if ("3".equals(tmp.getType())||"4".equals(tmp.getType())){//生活照料
                    String sql = " select group_concat(Distinct name SEPARATOR '、') from base_life_care_fee_detail where order_id ='"+relationCode+"' ";
                    List<String> serviceItems = jdbcTemplate.queryForList(sql,String.class);
                    if (serviceItems.size()>0){
                        tmp.setServeItems(serviceItems.get(0));
                    }
                }
                if ("5".equals(tmp.getType())){
                    String sql = "";
                }
            }
            result.add(tmp);
        }
        return result;
    }
    /**
    /**
     * 咨询排名情况
     * 咨询排名情况
     * @param endDate
     * @param endDate

+ 2 - 2
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/third/PatientInfoPlatFormService.java

@ -782,14 +782,14 @@ public class PatientInfoPlatFormService {
                sql = "select * from base_patient_step where 1=1  and device_sn='"+deviceSn+"' order by create_time desc limit 1";
                sql = "select * from base_patient_step where 1=1  and device_sn='"+deviceSn+"' order by create_time desc limit 1";
                sqlResult = jdbcTemplate.queryForList(sql);
                sqlResult = jdbcTemplate.queryForList(sql);
                if (sqlResult.size()>0) {
                if (sqlResult.size()>0) {
                    detailInfo.put("steps",sqlResult.get(0).get("steps"));
                    detailInfo.put("steps",sqlResult.get(0));
                }else {
                }else {
                    detailInfo.put("steps","无步数数据");
                    detailInfo.put("steps","无步数数据");
                }
                }
                sql ="SELECT * FROM wlyy_patient_health_index WHERE type = 5 and device_sn = '"+deviceSn+"' AND del = 1 ORDER BY record_date DESC LIMIT 1";
                sql ="SELECT * FROM wlyy_patient_health_index WHERE type = 5 and device_sn = '"+deviceSn+"' AND del = 1 ORDER BY record_date DESC LIMIT 1";
                sqlResult = jdbcTemplate.queryForList(sql);
                sqlResult = jdbcTemplate.queryForList(sql);
                if (sqlResult.size()>0){
                if (sqlResult.size()>0){
                    detailInfo.put("heartRate",sqlResult.get(0).get("value1"));
                    detailInfo.put("heartRate",sqlResult.get(0));
                }else {
                }else {
                    detailInfo.put("heartRate","无心率数据");
                    detailInfo.put("heartRate","无心率数据");
                }
                }