瀏覽代碼

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

Shi Kejing 3 年之前
父節點
當前提交
54bbc4b195
共有 38 個文件被更改,包括 3089 次插入80 次删除
  1. 1 1
      business/base-service/src/main/java/com/yihu/jw/hospital/dict/service/WlyyHospitalSysDictService.java
  2. 7 1
      business/base-service/src/main/java/com/yihu/jw/internet/service/InternetCommonService.java
  3. 16 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/AchnsDoctorRecordDao.java
  4. 16 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpAppointmentOnlineDao.java
  5. 15 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpMedicalOnlineDao.java
  6. 16 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpnsDoctorRecordDao.java
  7. 16 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpnsDoctorScoreDao.java
  8. 16 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpnsOrganBaseDao.java
  9. 61 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/AchnsDoctorRecordService.java
  10. 57 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpAppointmentOnlineService.java
  11. 57 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpMedicalOnlineService.java
  12. 57 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpnsDoctorRecordService.java
  13. 57 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpnsDoctorScoreService.java
  14. 57 0
      business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpnsOrganBaseService.java
  15. 367 27
      business/es-service/src/main/java/com/yihu/jw/es/service/yqfk/YqfkService.java
  16. 10 0
      common/common-entity/src/main/java/com/yihu/jw/entity/hospital/article/KnowledgeArticleDictDO.java
  17. 71 0
      common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/AchnsDoctorRecordDO.java
  18. 210 0
      common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpAppointmentOnlineDO.java
  19. 200 0
      common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpMedicalOnlineDO.java
  20. 539 0
      common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpNsOrganBaseDO.java
  21. 268 0
      common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpnsDoctorRecordDO.java
  22. 144 0
      common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpnsDoctorScoreDO.java
  23. 2 0
      gateway/ag-basic/src/main/resources/application.yml
  24. 65 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/common/FileUploadController.java
  25. 7 1
      svr/svr-base/src/main/java/com/yihu/jw/base/service/menu/BaseMenuManageService.java
  26. 2 1
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/dao/device/DevicePatientHealthIndexDao.java
  27. 1 0
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/device/DoctorDeviceController.java
  28. 21 0
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/device/PadDeviceController.java
  29. 2 2
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/device/PatientDeviceController.java
  30. 46 0
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/contacts/ContactsService.java
  31. 153 37
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/PatientDeviceService.java
  32. 1 1
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/PatientHealthIndexService.java
  33. 71 0
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/YunXunDeviceService.java
  34. 10 3
      svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/security/SecurityMonitoringOrderService.java
  35. 1 1
      svr/svr-cloud-device/src/main/java/com/yihu/jw/care/service/DeviceUploadService.java
  36. 1 1
      svr/svr-cloud-device/src/main/java/com/yihu/jw/care/service/HvDeviceService.java
  37. 35 3
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/patient/PatientNoLoginEndPoint.java
  38. 413 0
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/thirdUpload/ThirdUploadEndpoint.java

+ 1 - 1
business/base-service/src/main/java/com/yihu/jw/hospital/dict/service/WlyyHospitalSysDictService.java

@ -55,7 +55,7 @@ public class WlyyHospitalSysDictService extends BaseJpaService<WlyyHospitalSysDi
                " t.hospital  as \"hospital\","+
                " t.img_url  as \"imgUrl\","+
                " t.create_time as \"createTime\""+
                " from wlyy_hospital_sys_dict t where 1=1 ";
                " from wlyy_hospital_sys_dict t where 1=1  ";
        if (StringUtils.isNoneBlank(name)){
            sql+=" and t.dict_name = '"+name+"'";
        }

+ 7 - 1
business/base-service/src/main/java/com/yihu/jw/internet/service/InternetCommonService.java

@ -1232,7 +1232,13 @@ public class InternetCommonService extends BaseJpaService<InternetUpErrorLogDO,
                jb.put("mobility_flag", "3");
                jb.put("long_medical_flag", "3");
                jb.put("pres_effec_days", 0);
                jb.put("total_price",info.get("drug_fee")== null?  0 : info.get("drug_fee"));
                String realOrder = "";
                if (info.get("real_order")!= null){
                    realOrder = info.get("real_order").toString();
                }
                String priceTotal="select sum(drug_fee) AS drug_fee from wlyy_prescription where real_order='"+realOrder+"'";
                Map<String,Object> map = jdbcTemplate.queryForMap(priceTotal);
                jb.put("total_price",map.get("drug_fee")== null?  0 : map.get("drug_fee"));
                jb.put("upload_time", DateUtil.dateToStr(new Date(),"yyyy-MM-dd HH:mm:ss"));
                jb.put("pres_photo", "");
                jb.put("pres_photos_list", "");

+ 16 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/AchnsDoctorRecordDao.java

@ -0,0 +1,16 @@
package com.yihu.jw.thirdUpload;
import com.yihu.jw.entity.thirdUpload.AchnsDoctorRecordDO;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface AchnsDoctorRecordDao extends PagingAndSortingRepository<AchnsDoctorRecordDO, String>, JpaSpecificationExecutor<AchnsDoctorRecordDO> {
    @Query("from AchnsDoctorRecordDO t where t.is_del='1' and t.create_time>=?1 and t.create_time<=?2")
    List<AchnsDoctorRecordDO> findAchnsDoctorRecordDOByCreateTime(Date startTime, Date endTime);
}

+ 16 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpAppointmentOnlineDao.java

@ -0,0 +1,16 @@
package com.yihu.jw.thirdUpload;
import com.yihu.jw.entity.base.team.BaseTeamDO;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpNsOrganBaseDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface UpAppointmentOnlineDao extends PagingAndSortingRepository<UpAppointmentOnlineDO, String>, JpaSpecificationExecutor<UpAppointmentOnlineDO> {
    @Query("from UpAppointmentOnlineDO t where t.is_del='1' and t.create_time>=?1 and t.create_time<=?2")
    List<UpAppointmentOnlineDO> findByCreateTime(Date startTime, Date endTime);
}

+ 15 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpMedicalOnlineDao.java

@ -0,0 +1,15 @@
package com.yihu.jw.thirdUpload;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpMedicalOnlineDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface UpMedicalOnlineDao extends PagingAndSortingRepository<UpMedicalOnlineDO, String>, JpaSpecificationExecutor<UpMedicalOnlineDO> {
    @Query("from UpMedicalOnlineDO t where t.is_del='1' and t.create_time>=?1 and t.create_time<=?2")
    List<UpMedicalOnlineDO> findByCreateTime(Date startTime, Date endTime);
}

+ 16 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpnsDoctorRecordDao.java

@ -0,0 +1,16 @@
package com.yihu.jw.thirdUpload;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorRecordDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorScoreDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface UpnsDoctorRecordDao extends PagingAndSortingRepository<UpnsDoctorRecordDO, String>, JpaSpecificationExecutor<UpnsDoctorRecordDO> {
    @Query("from UpnsDoctorRecordDO t where t.is_del='1' and t.create_time>=?1 and t.create_time<=?2")
    List<UpnsDoctorRecordDO> findByCreateTime(Date startTime, Date endTime);
}

+ 16 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpnsDoctorScoreDao.java

@ -0,0 +1,16 @@
package com.yihu.jw.thirdUpload;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpMedicalOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorScoreDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface UpnsDoctorScoreDao extends PagingAndSortingRepository<UpnsDoctorScoreDO, String>, JpaSpecificationExecutor<UpnsDoctorScoreDO> {
    @Query("from UpnsDoctorScoreDO t where t.is_del='1' and t.create_time>=?1 and t.create_time<=?2")
    List<UpnsDoctorScoreDO> findByCreateTime(Date startTime, Date endTime);
}

+ 16 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/UpnsOrganBaseDao.java

@ -0,0 +1,16 @@
package com.yihu.jw.thirdUpload;
import com.yihu.jw.entity.thirdUpload.AchnsDoctorRecordDO;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpNsOrganBaseDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface UpnsOrganBaseDao extends PagingAndSortingRepository<UpNsOrganBaseDO, String>, JpaSpecificationExecutor<UpNsOrganBaseDO> {
    @Query("from UpNsOrganBaseDO t where t.is_del='1' and t.create_time>=?1 and t.create_time<=?2")
    List<UpNsOrganBaseDO> findByCreateTime(Date startTime, Date endTime);
}

+ 61 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/AchnsDoctorRecordService.java

@ -0,0 +1,61 @@
package com.yihu.jw.thirdUpload.service;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference;
import com.yihu.jw.doctor.dao.BaseDoctorHospitalDao;
import com.yihu.jw.entity.base.dict.BaseFrequencyDictDO;
import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
import com.yihu.jw.entity.thirdUpload.AchnsDoctorRecordDO;
import com.yihu.jw.restmodel.iot.device.IotDeviceImportVO;
import com.yihu.jw.thirdUpload.AchnsDoctorRecordDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import static com.yihu.jw.util.common.BeanUtils.getNullPropertyNames;
@Service
public class AchnsDoctorRecordService extends BaseJpaService<AchnsDoctorRecordDO, AchnsDoctorRecordDao> {
    @Autowired
    private AchnsDoctorRecordDao achnsDoctorRecordDao;
    public void saveAchns(List<AchnsDoctorRecordDO> achnsDoctorRecordDOs) throws Exception{
        /*List<IotDeviceImportVO> importVOList = objectMapper.readValue(JSONObject.toJSONString(correctLs), new TypeReference<List<IotDeviceImportVO>>() {
        });*/
        for (AchnsDoctorRecordDO achnsDoctorRecordDO:achnsDoctorRecordDOs){
            if (StringUtils.isNotBlank(achnsDoctorRecordDO.getId())){
                AchnsDoctorRecordDO oldFrequency= achnsDoctorRecordDao.findOne(achnsDoctorRecordDO.getId());
                BeanUtils.copyProperties(achnsDoctorRecordDO, oldFrequency, getNullPropertyNames(achnsDoctorRecordDO));
                oldFrequency.setUpdate_time(new Date());
                oldFrequency.setIs_del("1");
                achnsDoctorRecordDao.save(oldFrequency);
            }else {
                achnsDoctorRecordDO.setCreate_time(new Date());
                achnsDoctorRecordDO.setIs_del("1");
                achnsDoctorRecordDao.save(achnsDoctorRecordDO);
            }
        }
    }
    public void deleteById(String id){
        AchnsDoctorRecordDO achnsDoctorRecordDO =  achnsDoctorRecordDao.findOne(id);
        if (achnsDoctorRecordDO!=null){
            achnsDoctorRecordDO.setIs_del("0");
            achnsDoctorRecordDao.save(achnsDoctorRecordDO);
        }
    }
    public List<AchnsDoctorRecordDO> findByCreateTime(String createTime){
        Date startTime= DateUtil.strToDate(createTime+" 00:00:00");
        Date endTime= DateUtil.strToDate(createTime+" 23:59:59");
        return achnsDoctorRecordDao.findAchnsDoctorRecordDOByCreateTime(startTime,endTime);
    }
}

+ 57 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpAppointmentOnlineService.java

@ -0,0 +1,57 @@
package com.yihu.jw.thirdUpload.service;
import com.yihu.jw.entity.thirdUpload.UpAppointmentOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorRecordDO;
import com.yihu.jw.thirdUpload.UpAppointmentOnlineDao;
import com.yihu.jw.thirdUpload.UpnsDoctorRecordDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import static com.yihu.jw.util.common.BeanUtils.getNullPropertyNames;
@Service
public class UpAppointmentOnlineService extends BaseJpaService<UpAppointmentOnlineDO, UpAppointmentOnlineDao> {
    @Autowired
    private UpAppointmentOnlineDao upAppointmentOnlineDao;
    public void saveUpAppointment(List<UpAppointmentOnlineDO> upAppointmentOnlineDOS) throws Exception{
        /*List<IotDeviceImportVO> importVOList = objectMapper.readValue(JSONObject.toJSONString(correctLs), new TypeReference<List<IotDeviceImportVO>>() {
        });*/
        for (UpAppointmentOnlineDO upAppointmentOnlineDO:upAppointmentOnlineDOS){
            if (StringUtils.isNotBlank(upAppointmentOnlineDO.getId())){
                UpAppointmentOnlineDO old= upAppointmentOnlineDao.findOne(upAppointmentOnlineDO.getId());
                BeanUtils.copyProperties(upAppointmentOnlineDO, old, getNullPropertyNames(upAppointmentOnlineDO));
                old.setUpdate_time(new Date());
                old.setIs_del("1");
                upAppointmentOnlineDao.save(old);
            }else {
                upAppointmentOnlineDO.setCreate_time(new Date());
                upAppointmentOnlineDO.setIs_del("1");
                upAppointmentOnlineDao.save(upAppointmentOnlineDO);
            }
        }
    }
    public void deleteById(String id){
        UpAppointmentOnlineDO upAppointmentOnlineDO =  upAppointmentOnlineDao.findOne(id);
        if (upAppointmentOnlineDO!=null){
            upAppointmentOnlineDO.setIs_del("0");
            upAppointmentOnlineDao.save(upAppointmentOnlineDO);
        }
    }
    public List<UpAppointmentOnlineDO> findByCreateTime(String createTime){
        Date startTime= DateUtil.strToDate(createTime+" 00:00:00");
        Date endTime= DateUtil.strToDate(createTime+" 23:59:59");
        return upAppointmentOnlineDao.findByCreateTime(startTime,endTime);
    }
}

+ 57 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpMedicalOnlineService.java

@ -0,0 +1,57 @@
package com.yihu.jw.thirdUpload.service;
import com.yihu.jw.entity.thirdUpload.UpMedicalOnlineDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorRecordDO;
import com.yihu.jw.thirdUpload.UpMedicalOnlineDao;
import com.yihu.jw.thirdUpload.UpnsDoctorRecordDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import static com.yihu.jw.util.common.BeanUtils.getNullPropertyNames;
@Service
public class UpMedicalOnlineService extends BaseJpaService<UpMedicalOnlineDO, UpMedicalOnlineDao> {
    @Autowired
    private UpMedicalOnlineDao upMedicalOnlineDao;
    public void saveUpMedicalOnline(List<UpMedicalOnlineDO> upMedicalOnlineDOS) throws Exception{
        /*List<IotDeviceImportVO> importVOList = objectMapper.readValue(JSONObject.toJSONString(correctLs), new TypeReference<List<IotDeviceImportVO>>() {
        });*/
        for (UpMedicalOnlineDO upMedicalOnlineDO:upMedicalOnlineDOS){
            if (StringUtils.isNotBlank(upMedicalOnlineDO.getId())){
                UpMedicalOnlineDO old= upMedicalOnlineDao.findOne(upMedicalOnlineDO.getId());
                BeanUtils.copyProperties(upMedicalOnlineDO, old, getNullPropertyNames(upMedicalOnlineDO));
                old.setUpdate_time(new Date());
                old.setIs_del("1");
                upMedicalOnlineDao.save(old);
            }else {
                upMedicalOnlineDO.setCreate_time(new Date());
                upMedicalOnlineDO.setIs_del("1");
                upMedicalOnlineDao.save(upMedicalOnlineDO);
            }
        }
    }
    public void deleteById(String id){
        UpMedicalOnlineDO upMedicalOnlineDO =  upMedicalOnlineDao.findOne(id);
        if (upMedicalOnlineDO!=null){
            upMedicalOnlineDO.setIs_del("0");
            upMedicalOnlineDao.save(upMedicalOnlineDO);
        }
    }
    public List<UpMedicalOnlineDO> findByCreateTime(String createTime){
        Date startTime= DateUtil.strToDate(createTime+" 00:00:00");
        Date endTime= DateUtil.strToDate(createTime+" 23:59:59");
        return upMedicalOnlineDao.findByCreateTime(startTime,endTime);
    }
}

+ 57 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpnsDoctorRecordService.java

@ -0,0 +1,57 @@
package com.yihu.jw.thirdUpload.service;
import com.yihu.jw.entity.thirdUpload.UpNsOrganBaseDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorRecordDO;
import com.yihu.jw.thirdUpload.UpnsDoctorRecordDao;
import com.yihu.jw.thirdUpload.UpnsOrganBaseDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import static com.yihu.jw.util.common.BeanUtils.getNullPropertyNames;
@Service
public class UpnsDoctorRecordService extends BaseJpaService<UpnsDoctorRecordDO, UpnsDoctorRecordDao> {
    @Autowired
    private UpnsDoctorRecordDao upnsDoctorRecordDao;
    public void saveUpnsDoctorRecord(List<UpnsDoctorRecordDO> upnsDoctorRecordDOS) throws Exception{
        /*List<IotDeviceImportVO> importVOList = objectMapper.readValue(JSONObject.toJSONString(correctLs), new TypeReference<List<IotDeviceImportVO>>() {
        });*/
        for (UpnsDoctorRecordDO upnsDoctorRecordDO:upnsDoctorRecordDOS){
            if (StringUtils.isNotBlank(upnsDoctorRecordDO.getId())){
                UpnsDoctorRecordDO old= upnsDoctorRecordDao.findOne(upnsDoctorRecordDO.getId());
                BeanUtils.copyProperties(upnsDoctorRecordDO, old, getNullPropertyNames(upnsDoctorRecordDO));
                old.setUpdate_time(new Date());
                old.setIs_del("1");
                upnsDoctorRecordDao.save(old);
            }else {
                upnsDoctorRecordDO.setCreate_time(new Date());
                upnsDoctorRecordDO.setIs_del("1");
                upnsDoctorRecordDao.save(upnsDoctorRecordDO);
            }
        }
    }
    public void deleteById(String id){
        UpnsDoctorRecordDO upnsDoctorRecordDO =  upnsDoctorRecordDao.findOne(id);
        if (upnsDoctorRecordDO!=null){
            upnsDoctorRecordDO.setIs_del("0");
            upnsDoctorRecordDao.save(upnsDoctorRecordDO);
        }
    }
    public List<UpnsDoctorRecordDO> findByCreateTime(String createTime){
        Date startTime= DateUtil.strToDate(createTime+" 00:00:00");
        Date endTime= DateUtil.strToDate(createTime+" 23:59:59");
        return upnsDoctorRecordDao.findByCreateTime(startTime,endTime);
    }
}

+ 57 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpnsDoctorScoreService.java

@ -0,0 +1,57 @@
package com.yihu.jw.thirdUpload.service;
import com.yihu.jw.entity.thirdUpload.AchnsDoctorRecordDO;
import com.yihu.jw.entity.thirdUpload.UpnsDoctorScoreDO;
import com.yihu.jw.thirdUpload.AchnsDoctorRecordDao;
import com.yihu.jw.thirdUpload.UpnsDoctorScoreDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import static com.yihu.jw.util.common.BeanUtils.getNullPropertyNames;
@Service
public class UpnsDoctorScoreService extends BaseJpaService<UpnsDoctorScoreDO, UpnsDoctorScoreDao> {
    @Autowired
    private UpnsDoctorScoreDao upnsDoctorScoreDao;
    public void saveUpnsDoctorScore(List<UpnsDoctorScoreDO> upnsDoctorScoreDOS) throws Exception{
        /*List<IotDeviceImportVO> importVOList = objectMapper.readValue(JSONObject.toJSONString(correctLs), new TypeReference<List<IotDeviceImportVO>>() {
        });*/
        for (UpnsDoctorScoreDO upnsDoctorScoreDO:upnsDoctorScoreDOS){
            if (StringUtils.isNotBlank(upnsDoctorScoreDO.getId())){
                UpnsDoctorScoreDO old= upnsDoctorScoreDao.findOne(upnsDoctorScoreDO.getId());
                BeanUtils.copyProperties(upnsDoctorScoreDO, old, getNullPropertyNames(upnsDoctorScoreDO));
                old.setUpdate_time(new Date());
                old.setIs_del("1");
                upnsDoctorScoreDao.save(old);
            }else {
                upnsDoctorScoreDO.setCreate_time(new Date());
                upnsDoctorScoreDO.setIs_del("1");
                upnsDoctorScoreDao.save(upnsDoctorScoreDO);
            }
        }
    }
    public void deleteById(String id){
        UpnsDoctorScoreDO upnsDoctorScoreDO =  upnsDoctorScoreDao.findOne(id);
        if (upnsDoctorScoreDO!=null){
            upnsDoctorScoreDO.setIs_del("0");
            upnsDoctorScoreDao.save(upnsDoctorScoreDO);
        }
    }
    public List<UpnsDoctorScoreDO> findByCreateTime(String createTime){
        Date startTime= DateUtil.strToDate(createTime+" 00:00:00");
        Date endTime= DateUtil.strToDate(createTime+" 23:59:59");
        return upnsDoctorScoreDao.findByCreateTime(startTime,endTime);
    }
}

+ 57 - 0
business/base-service/src/main/java/com/yihu/jw/thirdUpload/service/UpnsOrganBaseService.java

@ -0,0 +1,57 @@
package com.yihu.jw.thirdUpload.service;
import com.yihu.jw.entity.thirdUpload.AchnsDoctorRecordDO;
import com.yihu.jw.entity.thirdUpload.UpNsOrganBaseDO;
import com.yihu.jw.thirdUpload.AchnsDoctorRecordDao;
import com.yihu.jw.thirdUpload.UpnsOrganBaseDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import static com.yihu.jw.util.common.BeanUtils.getNullPropertyNames;
@Service
public class UpnsOrganBaseService extends BaseJpaService<UpNsOrganBaseDO, UpnsOrganBaseDao> {
    @Autowired
    private UpnsOrganBaseDao upnsOrganBaseDao;
    public void saveUpnsOrganBase(List<UpNsOrganBaseDO> upNsOrganBaseDOS) throws Exception{
        /*List<IotDeviceImportVO> importVOList = objectMapper.readValue(JSONObject.toJSONString(correctLs), new TypeReference<List<IotDeviceImportVO>>() {
        });*/
        for (UpNsOrganBaseDO upNsOrganBaseDO:upNsOrganBaseDOS){
            if (StringUtils.isNotBlank(upNsOrganBaseDO.getId())){
                UpNsOrganBaseDO old= upnsOrganBaseDao.findOne(upNsOrganBaseDO.getId());
                BeanUtils.copyProperties(upNsOrganBaseDO, old, getNullPropertyNames(upNsOrganBaseDO));
                old.setUpdate_time(new Date());
                old.setIs_del("1");
                upnsOrganBaseDao.save(old);
            }else {
                upNsOrganBaseDO.setCreate_time(new Date());
                upNsOrganBaseDO.setIs_del("1");
                upnsOrganBaseDao.save(upNsOrganBaseDO);
            }
        }
    }
    public void deleteById(String id){
        UpNsOrganBaseDO upNsOrganBaseDO =  upnsOrganBaseDao.findOne(id);
        if (upNsOrganBaseDO!=null){
            upNsOrganBaseDO.setIs_del("0");
            upnsOrganBaseDao.save(upNsOrganBaseDO);
        }
    }
    public List<UpNsOrganBaseDO> findByCreateTime(String createTime){
        Date startTime= DateUtil.strToDate(createTime+" 00:00:00");
        Date endTime= DateUtil.strToDate(createTime+" 23:59:59");
        return upnsOrganBaseDao.findByCreateTime(startTime,endTime);
    }
}

+ 367 - 27
business/es-service/src/main/java/com/yihu/jw/es/service/yqfk/YqfkService.java

@ -2,12 +2,18 @@ package com.yihu.jw.es.service.yqfk;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.entity.IntegerIdentityEntity;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.utils.StringUtil;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import javax.persistence.criteria.CriteriaBuilder;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -34,49 +40,381 @@ public class YqfkService {
     */
    public JSONObject yqfkStatisticsHead(String startTime,String endTime){
        JSONObject object = new JSONObject();
        String sql = "select COUNT(1) as confirmedTotal from MID_CDC_CASE_INFO where ";
        object.put("confirmed","");//现有确诊
        object.put("newHome","");//新增本土
        object.put("newAsymptomatic","");//新增无症状;
        object.put("confirmedTotal","");//累计确诊
        object.put("cureTotal","");//累计治愈
        object.put("deathTotal","");//累计死亡
        //现有确诊
        String nowConfirmedSql = "SELECT\n" +
                "\tCOUNT(1) AS confirmedTotal\n" +
                "FROM\n" +
                "\tMID_CDC_CASE_INFO\n" +
                "WHERE\n" +
                "\tdim_cond IS NOT NULL\n" +
                "AND dim_cond NOT IN ('6', '7')\n" +
                "AND dim_input_case = '99'\n" +
                "AND DIM_CASE_TYPE = '1'\n" +
                "and LOCAL_CASE_FLAG ='是'";
        logger.info("nowConfirmedSql"+nowConfirmedSql);
        Map<String,Object> confirmedMap = jdbcTemplate.queryForMap(nowConfirmedSql);
        Integer newConfirmedTotal = 0;
        if (confirmedMap!=null){
            newConfirmedTotal=Integer.parseInt(confirmedMap.get("confirmedTotal").toString());
        }
        //新增本土
        String newHomeSql = "select COUNT(1) as newHomeTotal from MID_CDC_CASE_INFO where dim_cond is not null AND dim_input_case = '99' AND dim_cond not in('6','7') AND DIM_CASE_TYPE = '1' and LOCAL_CASE_FLAG ='是' and diag_time >='"+ DateUtil.getStringDateShort()+" 00:00:00"+"'"+" and diag_time >='"+ DateUtil.getStringDateShort()+" 23:59:59"+"'";
        logger.info("newHomeSql"+newHomeSql);
        Map<String,Object> newHomeMap = jdbcTemplate.queryForMap(newHomeSql);
        Integer newHomeTotal = 0;
        if (newHomeMap!=null){
            newHomeTotal=Integer.parseInt(newHomeMap.get("newHomeTotal").toString());
        }
        //新增无症状
        String newAsymptomaticSql = "select COUNT(1) as newAsymptomaticTotal from MID_CDC_CASE_INFO where dim_cond is not null AND dim_cond in('0') AND dim_input_case = '99' AND DIM_CASE_TYPE = '1' and LOCAL_CASE_FLAG ='是' and diag_time >='"+ DateUtil.getStringDateShort()+" 00:00:00"+"'"+" and diag_time >='"+ DateUtil.getStringDateShort()+" 23:59:59"+"'";
        logger.info("newAsymptomaticSql"+newAsymptomaticSql);
        Map<String,Object> newAsymptomaticeMap = jdbcTemplate.queryForMap(newAsymptomaticSql);
        Integer newAsymptomaticTotal = 0;
        if (newAsymptomaticeMap!=null){
            newAsymptomaticTotal=Integer.parseInt(newAsymptomaticeMap.get("newAsymptomaticTotal").toString());
        }
        //累计确诊
        String confirmedTotalSql = "select COUNT(1) as confirmedTotal from MID_CDC_CASE_INFO where  DIM_CASE_TYPE = '1' and LOCAL_CASE_FLAG ='是' AND dim_input_case = '99' AND dim_cond is not null ";
        logger.info("confirmedTotalSql"+confirmedTotalSql);
        Map<String,Object> confirmedTotalMap = jdbcTemplate.queryForMap(confirmedTotalSql);
        Integer confirmedTotalTotal = 0;
        if (confirmedTotalMap!=null){
            confirmedTotalTotal=Integer.parseInt(confirmedTotalMap.get("confirmedTotal").toString());
        }
        //累计治愈
        String cureTotalSql = "select COUNT(1) as cureTotal from MID_CDC_CASE_INFO where dim_cond is not null AND DIM_CASE_TYPE = '1' and LOCAL_CASE_FLAG ='是' AND dim_input_case = '99' AND dim_cond in('6') ";
        logger.info("cureTotalSql"+cureTotalSql);
        Map<String,Object> cureTotalMap = jdbcTemplate.queryForMap(cureTotalSql);
        Integer cureTotalTotal = 0;
        if (cureTotalMap!=null){
            cureTotalTotal=Integer.parseInt(cureTotalMap.get("cureTotal").toString());
        }
        //累计死亡
        String deathTotalSql = "select COUNT(1) as deathTotal from MID_CDC_CASE_INFO where dim_cond is not null AND DIM_CASE_TYPE = '1' and LOCAL_CASE_FLAG ='是' AND dim_input_case = '99' AND dim_cond in('7') ";
        logger.info("deathTotalSql"+deathTotalSql);
        Map<String,Object> deathTotalMap = jdbcTemplate.queryForMap(deathTotalSql);
        Integer deathTotalTotal = 0;
        if (deathTotalMap!=null){
            deathTotalTotal=Integer.parseInt(deathTotalMap.get("deathTotal").toString());
        }
        object.put("confirmed",newConfirmedTotal);//现有确诊
        object.put("newHome",newHomeTotal);//新增本土
        object.put("newAsymptomatic",newAsymptomaticTotal);//新增无症状;
        object.put("confirmedTotal",confirmedTotalTotal);//累计确诊
        object.put("cureTotal",cureTotalTotal);//累计治愈
        object.put("deathTotal",deathTotalTotal);//累计死亡
        return object;
    }
    public JSONObject yqfkStatisticsTail(String startTime,String endTime){
    /**
     * 疫情防控底部-密接次接数据统计
     * @param patientId
     * @param endTime
     * @return
     */
    public JSONObject yqfkStatisticsTail(String patientId,String endTime){
        JSONObject object = new JSONObject();
        String patientSql = "";
        if (StringUtils.isNoneBlank(patientId)){
            String[] str= patientId.split(",");
            String patientList = "";
            for (int i=0;i<str.length;i++){
                patientList+="'"+str[i]+"',";
            }
            if (StringUtils.isNoneBlank(patientList)){
                patientList=patientList.substring(0,patientList.length()-1);
            }
            patientSql=" AND PATIENT_ID IN ("+patientList+")   ";
        }else {
            patientSql = "  AND PATIENT_ID IN (SELECT md.PATIENT_ID FROM MID_CDC_CASE_INFO md where  md.DIM_CASE_TYPE IN ('1','3'))   ";
        }
        JSONObject MjObject = new JSONObject();//在厦密接
        MjObject.put("zyTotal","");//正转运
        MjObject.put("jdTotal","");//在酒店/已采核酸
        MjObject.put("dlsTotal","");//待落实
        MjObject.put("total","");//总计
        //密接已隔离
        String mjGlSql = "select count(1) as \"glTotal\" from MID_CDC_CCC_INFO where  dim_track_stat=1 AND dim_mg_mode=1"+patientSql;
        logger.info("mjGlSql"+mjGlSql);
        Map<String,Object> mjglMap= jdbcTemplate.queryForMap(mjGlSql);
        Integer mjglTotal = 0;
        if (mjglMap!=null){
            mjglTotal = Integer.parseInt(mjglMap.get("glTotal").toString());
        }
        //县区列表
        String countySqlList = "select DIM_COUNTY as \"code\",DIM_COUNTY_NAME as \"area\" from DIM_COUNTY_DICT where DIM_AREA = '350200'";
        List<Map<String,Object>> countySqlMapList = jdbcTemplate.queryForList(countySqlList);
        logger.info("countySqlList"+countySqlList);
        //密接已隔离列表
        String mjGlSqlList = "select dim_county,COUNT(1) as total  from MID_CDC_CCC_INFO  where  dim_track_stat=1 and dim_county is not NULL AND dim_mg_mode=1 "+patientSql+"  GROUP BY dim_county ORDER BY COUNT(1) DESC   ";
        List<Map<String,Object>> mjGlSqlMapList = jdbcTemplate.queryForList(mjGlSqlList);
        //密接待落实列表
        String mjDlsSqlList = "select dim_county,COUNT(1) as total  from MID_CDC_CCC_INFO  where  dim_imp_stat NOT IN('1') and dim_imp_stat is not NULL AND dim_mg_mode=1 "+patientSql+"  GROUP BY dim_county ORDER BY COUNT(1) DESC   ";
        List<Map<String,Object>> mjDlsSqlMapList = jdbcTemplate.queryForList(mjDlsSqlList);
        List<Map<String,Object>> mjList = countySqlMapList;
        for (Map<String,Object> map:mjList){
            String code = map.get("code").toString();
            for (Map<String,Object> map1:mjGlSqlMapList){
                String dimCounty = map1.get("dim_county").toString();
                if (code.equalsIgnoreCase(dimCounty)){
                    map.put("ygl",map1.get("total"));
                }
            }
        }
        for (Map<String,Object> map:mjList){
            String code = map.get("code").toString();
            for (Map<String,Object> map1:mjDlsSqlMapList){
                String dimCounty = map1.get("dim_county").toString();
                if (code.equalsIgnoreCase(dimCounty)){
                    map.put("dls",map1.get("total"));
                }
            }
        }
        for (Map<String,Object> map:mjList){
            Integer total = 0;
            if (map.get("ygl")!=null){
                Integer ygl = Integer.parseInt(map.get("ygl").toString());
                if (map.get("dls")!=null){
                    Integer dls = Integer.parseInt(map.get("dls").toString());
                    total = ygl+dls;
                }else {
                    map.put("dls",0);
                    total = ygl;
                }
            }else {
                map.put("ygl",0);
                if (map.get("dls")!=null){
                    Integer dls = Integer.parseInt(map.get("dls").toString());
                    total = dls;
                }else {
                    map.put("dls",0);
                }
            }
            map.put("total",total);
        }
        //密接待落实
        String mjDlsSql = "select count(1) as \"dlsTotal\" from MID_CDC_CCC_INFO where dim_imp_stat NOT IN('1') and dim_imp_stat is not NULL AND dim_mg_mode=1 "+patientSql;
        logger.info("mjDlsSql"+mjDlsSql);
        Map<String,Object> mjdlsMap= jdbcTemplate.queryForMap(mjDlsSql);
        Integer mjDlsTotal = 0;
        if (mjdlsMap!=null){
            mjDlsTotal = Integer.parseInt(mjdlsMap.get("dlsTotal").toString());
        }
        /*   MjObject.put("zyTotal","");//正转运*/
        MjObject.put("ygl",mjglTotal);//已隔离
        MjObject.put("dls",mjDlsTotal);//待落实
        MjObject.put("total",mjglTotal+mjDlsTotal);//总计
        MjObject.put("list",mjList);//列表
        //次密接已隔离
        String cmglSql = "select count(1) as \"glTotal\" from MID_CDC_CCC_SED_INFO where dim_track_stat=1 AND dim_mg_mode=1 "+patientSql;;
        logger.info("cmglSql"+cmglSql);
        Map<String,Object> cmglMap= jdbcTemplate.queryForMap(cmglSql);
        Integer cmglTotal = 0;
        if (cmglMap!=null){
            cmglTotal = Integer.parseInt(cmglMap.get("glTotal").toString());
        }
        //次密接待落实
        String cmDlsSql = "select count(1) as \"dlsTotal\" from MID_CDC_CCC_SED_INFO where dim_imp_stat NOT IN('1') and dim_imp_stat is not NULL AND dim_mg_mode=1 "+patientSql;;
        logger.info("cmDlsSql"+cmDlsSql);
        Map<String,Object> cmdlsMap= jdbcTemplate.queryForMap(cmDlsSql);
        Integer cmDlsTotal = 0;
        if (cmdlsMap!=null){
            cmDlsTotal = Integer.parseInt(cmdlsMap.get("dlsTotal").toString());
        }
        //县区列表
        String cmCountySqlList = "select DIM_COUNTY as \"code\",DIM_COUNTY_NAME as \"area\" from DIM_COUNTY_DICT where DIM_AREA = '350200'";
        List<Map<String,Object>> cmCountySqlMapList = jdbcTemplate.queryForList(cmCountySqlList);
        logger.info("cmCountySqlMapList"+cmCountySqlMapList);
        //次密接已隔离列表
        String cmGlSqlList = "select dim_county,COUNT(1) as total  from MID_CDC_CCC_SED_INFO  where  dim_track_stat=1 and dim_county is not NULL AND dim_mg_mode=1 "+patientSql+"  GROUP BY dim_county ORDER BY COUNT(1) DESC   ";
        List<Map<String,Object>> cmGlSqlMapList = jdbcTemplate.queryForList(cmGlSqlList);
        //次密接待落实列表
        String cmDlsSqlList = "select dim_county,COUNT(1) as total  from MID_CDC_CCC_SED_INFO  where  dim_imp_stat NOT IN('1') and dim_imp_stat is not NULL AND dim_mg_mode=1 "+patientSql+"  GROUP BY dim_county ORDER BY COUNT(1) DESC   ";
        List<Map<String,Object>> cmDlsSqlMapList = jdbcTemplate.queryForList(cmDlsSqlList);
        List<Map<String,Object>> cmList = cmCountySqlMapList;
        logger.info("cmList"+cmList);
        for (Map<String,Object> map:cmList){
            String code = map.get("code").toString();
            for (Map<String,Object> map1:cmGlSqlMapList){
                String dimCounty = map1.get("dim_county").toString();
                if (code.equalsIgnoreCase(dimCounty)){
                    map.put("ygl",map1.get("total"));
                }
            }
        }
        for (Map<String,Object> map:cmList){
            String code = map.get("code").toString();
            for (Map<String,Object> map1:cmDlsSqlMapList){
                String dimCounty = map1.get("dim_county").toString();
                if (code.equalsIgnoreCase(dimCounty)){
                    map.put("dls",map1.get("total"));
                }
            }
        }
        for (Map<String,Object> map:cmList){
            Integer total = 0;
            if (map.get("ygl")!=null){
                Integer ygl = Integer.parseInt(map.get("ygl").toString());
                if (map.get("dls")!=null){
                    Integer dls = Integer.parseInt(map.get("dls").toString());
                    total = ygl+dls;
                }else {
                    map.put("dls",0);
                    total = ygl;
                }
            }else {
                map.put("ygl",0);
                if (map.get("dls")!=null){
                    Integer dls = Integer.parseInt(map.get("dls").toString());
                    total = dls;
                }else {
                    map.put("dls",0);
                }
            }
            map.put("total",total);
        }
        JSONObject CmObject = new JSONObject();//在厦次密
        CmObject.put("zyTotal","");//正转运
        CmObject.put("jdTotal","");//在酒店/已采核酸
        CmObject.put("dlsTotal","");//待落实
        CmObject.put("total","");//总计
      /*  CmObject.put("zyTotal","");//正转运*/
        CmObject.put("ygl",cmglTotal);//已隔离
        CmObject.put("dls",cmDlsTotal);//待落实
        CmObject.put("total",cmglTotal+cmDlsTotal);//总计
        CmObject.put("list",cmList);//列表
        //一般密接已隔离
        String ybglSql = "select count(1) as \"glTotal\" from MID_KEYNOTE_CROWD_INFO where dim_track_stat=1 AND dim_mg_mode=1 "+patientSql;
        logger.info("ybglSql"+ybglSql);
        Map<String,Object> ybglMap= jdbcTemplate.queryForMap(ybglSql);
        Integer ybglTotal = 0;
        if (ybglMap!=null){
            ybglTotal = Integer.parseInt(ybglMap.get("glTotal").toString());
        }
        //一般密接待落实
        String ybDlsSql = "select count(1) as \"dlsTotal\" from MID_KEYNOTE_CROWD_INFO where dim_imp_stat NOT IN('1') and dim_imp_stat is not NULL AND dim_mg_mode=1 "+patientSql;;
        logger.info("ybDlsSql"+ybDlsSql);
        Map<String,Object> ybdlsMap= jdbcTemplate.queryForMap(ybDlsSql);
        Integer ybDlsTotal = 0;
        if (ybdlsMap!=null){
            ybDlsTotal = Integer.parseInt(ybdlsMap.get("dlsTotal").toString());
        }
        //县区列表
        String ybCountySqlList = "select DIM_COUNTY as \"code\",DIM_COUNTY_NAME as \"area\" from DIM_COUNTY_DICT where DIM_AREA = '350200'";
        List<Map<String,Object>> ybCountySqlMapList = jdbcTemplate.queryForList(ybCountySqlList);
        logger.info("ybCountySqlMapList"+ybCountySqlList);
        //次密接已隔离列表
        String ybGlSqlList = "select dim_county,COUNT(1) as total  from MID_KEYNOTE_CROWD_INFO  where  dim_track_stat=1 and dim_county is not NULL AND dim_mg_mode=1 "+patientSql+"  GROUP BY dim_county ORDER BY COUNT(1) DESC   ";
        List<Map<String,Object>> ybGlSqlMapList = jdbcTemplate.queryForList(ybGlSqlList);
        //次密接待落实列表
        String ybDlsSqlList = "select dim_county,COUNT(1) as total  from MID_KEYNOTE_CROWD_INFO  where  dim_imp_stat NOT IN('1') and dim_imp_stat is not NULL AND dim_mg_mode=1 "+patientSql+"  GROUP BY dim_county ORDER BY COUNT(1) DESC   ";
        List<Map<String,Object>> ybDlsSqlMapList = jdbcTemplate.queryForList(ybDlsSqlList);
        List<Map<String,Object>> ybList = ybCountySqlMapList;
        logger.info("ybList="+ybList);
        for (Map<String,Object> map:ybList){
            String code = map.get("code").toString();
            for (Map<String,Object> map1:ybGlSqlMapList){
                String dimCounty = map1.get("dim_county").toString();
                if (code.equalsIgnoreCase(dimCounty)){
                    map.put("ygl",map1.get("total"));
                }
            }
        }
        for (Map<String,Object> map:ybList){
            String code = map.get("code").toString();
            for (Map<String,Object> map1:ybDlsSqlMapList){
                String dimCounty = map1.get("dim_county").toString();
                if (code.equalsIgnoreCase(dimCounty)){
                    map.put("dls",map1.get("total"));
                }
            }
        }
        for (Map<String,Object> map:ybList){
            Integer total = 0;
            if (map.get("ygl")!=null){
                Integer ygl = Integer.parseInt(map.get("ygl").toString());
                if (map.get("dls")!=null){
                    Integer dls = Integer.parseInt(map.get("dls").toString());
                    total = ygl+dls;
                }else {
                    map.put("dls",0);
                    total = ygl;
                }
            }else {
                map.put("ygl",0);
                if (map.get("dls")!=null){
                    Integer dls = Integer.parseInt(map.get("dls").toString());
                    total = dls;
                }else {
                    map.put("dls",0);
                }
            }
            map.put("total",total);
        }
        JSONObject ybObject = new JSONObject();//在厦一般接触者
        ybObject.put("zyTotal","");//正转运
        ybObject.put("jdTotal","");//在酒店/已采核酸
        ybObject.put("dlsTotal","");//待落实
        ybObject.put("total","");//总计
        object.put("MjObject",MjObject);
        object.put("CmObject", CmObject);
        object.put("ybObject",ybObject);
/*        ybObject.put("zyTotal","");//正转运*/
        ybObject.put("ygl",ybglTotal);//已隔离
        ybObject.put("dls",ybDlsTotal);//待落实
        ybObject.put("total",ybDlsTotal+ybglTotal);//总计
        ybObject.put("list",ybList);
        object.put("zxmj",MjObject);
        object.put("zxcm", CmObject);
        object.put("zxybjcz",ybObject);
        return object;
    }
    public  List<Map<String, Object>> confirmedList(){
        String confirmedListSql = "select PATIENT_ID as \"patientId\",PATIENT_NAME as \"patientName\",PATIENT_SEX as \"patientSex\",PATIENT_AGE as \"patientAge\",DIAG_TIME as \"diagTime\" from MID_CDC_CASE_INFO ";
    /**
     * 确诊人数详情
     * @return
     * @param flag 1、本地 2、外地协查,3、境外输入,4全部,5、本地阳性、6、境外阳性
     */
    public  List<Map<String, Object>> confirmedList(String name,String flag){
        String localSql = "";
        if (StringUtils.isNoneBlank(flag)&&flag!=null){
            if (flag.equalsIgnoreCase("1")){//本地
                localSql=" and  md.LOCAL_CASE_FLAG = '是' AND md.dim_input_case = '99' and md.DIM_CASE_TYPE = '1'  ";
            }else if (flag.equalsIgnoreCase("2")){//外地协查
                localSql=" and  md.LOCAL_CASE_FLAG = '否'  and md.DIM_CASE_TYPE = '1'  ";
            }else if (flag.equalsIgnoreCase("3")){//境外输入
                localSql=" and  md.LOCAL_CASE_FLAG = '是'  and md.DIM_CASE_TYPE = '1' AND md.dim_input_case != '99' ";
            }else if (flag.equalsIgnoreCase("4")){//全部
                localSql=" and md.DIM_CASE_TYPE IN ('1','3') ";
            }else if (flag.equalsIgnoreCase("5")){//本地阳性
                localSql=" and md.DIM_CASE_TYPE IN ('3') and  md.LOCAL_CASE_FLAG = '是' AND md.dim_input_case = '99' ";
            }else if (flag.equalsIgnoreCase("6")){//境外阳性
                localSql=" and md.DIM_CASE_TYPE IN ('3') and  md.LOCAL_CASE_FLAG = '是' AND md.dim_input_case != '99' ";
            }
        }
        String confirmedListSql = "SELECT\n" +
                "\tmd.PATIENT_ID AS \"patientId\",\n" +
                "\tmd.PATIENT_NAME AS \"patientName\",\n" +
                "\tmd.PATIENT_SEX AS \"patientSex\",\n" +
                "\tmd.PATIENT_AGE AS \"patientAge\",\n" +
                "\tmd.DIAG_TIME AS \"diagTime\",\n" +
                "\tmd.DIM_COND AS \"dimCond\",\n" +
                "\tp.DIM_PROV_NAME AS \"dimProvName\",\n" +
                "\ta.DIM_AREA_NAME AS \"dimAreaName\",\n" +
                "\tmj.total as \"mjTotal\",\n" +
                "\tcm.total as \"cmjTotal\",\n" +
                "\tyb.total as \"ybmjTotal\"\n" +
                "FROM\n" +
                "\tMID_CDC_CASE_INFO md\n" +
                "LEFT JOIN DIM_PROV_DICT p ON p.DIM_PROV = md.DIM_CS_PROV\n" +
                "LEFT JOIN DIM_AREA_DICT a ON a.DIM_AREA = md.DIM_CS_AREA\n" +
                "LEFT JOIN MID_CDC_CCC_INFO_COUNT mj ON mj.patientId = md.PATIENT_ID\n" +
                "LEFT JOIN MID_CDC_CCC_SED_INFO_COUNT cm ON cm.patientId = md.PATIENT_ID\n" +
                "LEFT JOIN MID_KEYNOTE_CROWD_INFO_COUNT yb ON yb.patientId = md.PATIENT_ID" +
                " WHERE\n" +
                "   1=1 "+localSql;
        if (name!=null&&name!=""){
            confirmedListSql =confirmedListSql+" and md.PATIENT_NAME LIKE '%"+name+"%'";
        }
        logger.info("confirmedListSql"+confirmedListSql);
        List<Map<String, Object>> confirmedList = jdbcTemplate.queryForList(confirmedListSql);
        if (confirmedList!=null&&confirmedList.size()!=0){
      /*  if (confirmedList!=null&&confirmedList.size()!=0){
            for (Map<String,Object> map:confirmedList){
                String patientId = map.get("patientId").toString();
                //密接人数计算
                String mjTotalSql = "select count(1) as total from MID_CDC_CCC_INFO where PATIENT_ID='"+patientId+"'";
                logger.info("mjTotalSql"+mjTotalSql);
                List<Map<String, Object>> mjList = jdbcTemplate.queryForList(mjTotalSql);
                Integer mjTotal = 0;//密接人数
                if (mjList!=null&&mjList.size()!=0){
@ -86,6 +424,7 @@ public class YqfkService {
                //次密接人数计算
                String cmjTotalSql = "select count(1) as total from MID_CDC_CCC_SED_INFO where PATIENT_ID='"+patientId+"'";
                logger.info("cmjTotalSql"+cmjTotalSql);
                List<Map<String, Object>> cmjList = jdbcTemplate.queryForList(cmjTotalSql);
                Integer cmjTotal = 0;//密接人数
                if (cmjList!=null&&cmjList.size()!=0){
@ -96,6 +435,7 @@ public class YqfkService {
                //一般接触人数计算
                String ybmjTotalSql = "select count(1) as total from MID_KEYNOTE_CROWD_INFO where PATIENT_ID='"+patientId+"'";
                logger.info("ybmjTotalSql"+ybmjTotalSql);
                List<Map<String, Object>> ybmjList = jdbcTemplate.queryForList(ybmjTotalSql);
                Integer ybmjTotal = 0;//密接人数
                if (ybmjList!=null&&ybmjList.size()!=0){
@ -103,7 +443,7 @@ public class YqfkService {
                }
                map.put("ybmjTotal",ybmjTotal);
            }
        }
        }*/
        return confirmedList;
    }

+ 10 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/article/KnowledgeArticleDictDO.java

@ -30,6 +30,7 @@ public class KnowledgeArticleDictDO extends UuidIdentityEntity {
	private String content; // 文章内容
	private String source;  // 文章来源--客服
	private String image;   // 封面图片
	private String vedioUrl;//视频url
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
	private Date createTime;  // 添加时间
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
@ -306,4 +307,13 @@ public class KnowledgeArticleDictDO extends UuidIdentityEntity {
	public void setIntro(String intro) {
		this.intro = intro;
	}
	@Column(name = "vedio_url")
	public String getVedioUrl() {
		return vedioUrl;
	}
	public void setVedioUrl(String vedioUrl) {
		this.vedioUrl = vedioUrl;
	}
}

+ 71 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/AchnsDoctorRecordDO.java

@ -0,0 +1,71 @@
package com.yihu.jw.entity.thirdUpload;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
@Entity
@Table(name = "achns_doctor_record")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class AchnsDoctorRecordDO extends UuidIdentityEntity {
    private String organ_code;
    private String organ_name;
    private String id_card;
    private Date create_time;
    private Date update_time;
    private String is_del;
    @Column(name = "is_del")
    public String getIs_del() {
        return is_del;
    }
    public void setIs_del(String is_del) {
        this.is_del = is_del;
    }
    @Column(name = "update_time")
    public Date getUpdate_time() {
        return update_time;
    }
    public void setUpdate_time(Date update_time) {
        this.update_time = update_time;
    }
    @Column(name = "organ_code")
    public String getOrgan_code() {
        return organ_code;
    }
    public void setOrgan_code(String organ_code) {
        this.organ_code = organ_code;
    }
    @Column(name = "organ_name")
    public String getOrgan_name() {
        return organ_name;
    }
    public void setOrgan_name(String organ_name) {
        this.organ_name = organ_name;
    }
    @Column(name = "id_card")
    public String getId_card() {
        return id_card;
    }
    public void setId_card(String id_card) {
        this.id_card = id_card;
    }
    @Column(name = "create_time")
    public Date getCreate_time() {
        return create_time;
    }
    public void setCreate_time(Date create_time) {
        this.create_time = create_time;
    }
}

+ 210 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpAppointmentOnlineDO.java

@ -0,0 +1,210 @@
package com.yihu.jw.entity.thirdUpload;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;
@Entity
@Table(name = "up_appointment_online")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class UpAppointmentOnlineDO extends UuidIdentityEntity {
    private String origin_id;
    private String cd_org;
    private String cd_area;
    private String cd_org_sub;
    private String reg_time;
    private String fg_visit;
    private String reg_dep_code;
    private String reg_dep_name;
    private String reg_subject_code;
    private String reg_subject_name;
    private BigDecimal reg_price;
    private String pt_name;
    private String ge_code;
    private String pt_age;
    private String card_type;
    private String id_no;
    private String pt_tel;
    private String crt_date;
    private Date create_time;
    private Date update_time;
    private String is_del;
    @Column(name = "cd_org_sub")
    public String getCd_org_sub() {
        return cd_org_sub;
    }
    public void setCd_org_sub(String cd_org_sub) {
        this.cd_org_sub = cd_org_sub;
    }
    @Column(name = "is_del")
    public String getIs_del() {
        return is_del;
    }
    public void setIs_del(String is_del) {
        this.is_del = is_del;
    }
    @Column(name = "update_time")
    public Date getUpdate_time() {
        return update_time;
    }
    public void setUpdate_time(Date update_time) {
        this.update_time = update_time;
    }
    @Column(name = "create_time")
    public Date getCreate_time() {
        return create_time;
    }
    public void setCreate_time(Date create_time) {
        this.create_time = create_time;
    }
    @Column(name = "origin_id")
    public String getOrigin_id() {
        return origin_id;
    }
    public void setOrigin_id(String origin_id) {
        this.origin_id = origin_id;
    }
    @Column(name = "cd_org")
    public String getCd_org() {
        return cd_org;
    }
    public void setCd_org(String cd_org) {
        this.cd_org = cd_org;
    }
    @Column(name = "cd_area")
    public String getCd_area() {
        return cd_area;
    }
    public void setCd_area(String cd_area) {
        this.cd_area = cd_area;
    }
    @Column(name = "reg_time")
    public String getReg_time() {
        return reg_time;
    }
    public void setReg_time(String reg_time) {
        this.reg_time = reg_time;
    }
    @Column(name = "fg_visit")
    public String getFg_visit() {
        return fg_visit;
    }
    public void setFg_visit(String fg_visit) {
        this.fg_visit = fg_visit;
    }
    @Column(name = "reg_dep_code")
    public String getReg_dep_code() {
        return reg_dep_code;
    }
    public void setReg_dep_code(String reg_dep_code) {
        this.reg_dep_code = reg_dep_code;
    }
    @Column(name = "reg_dep_name")
    public String getReg_dep_name() {
        return reg_dep_name;
    }
    public void setReg_dep_name(String reg_dep_name) {
        this.reg_dep_name = reg_dep_name;
    }
    @Column(name = "reg_subject_code")
    public String getReg_subject_code() {
        return reg_subject_code;
    }
    public void setReg_subject_code(String reg_subject_code) {
        this.reg_subject_code = reg_subject_code;
    }
    @Column(name = "reg_subject_name")
    public String getReg_subject_name() {
        return reg_subject_name;
    }
    public void setReg_subject_name(String reg_subject_name) {
        this.reg_subject_name = reg_subject_name;
    }
    @Column(name = "reg_price")
    public BigDecimal getReg_price() {
        return reg_price;
    }
    public void setReg_price(BigDecimal reg_price) {
        this.reg_price = reg_price;
    }
    @Column(name = "pt_name")
    public String getPt_name() {
        return pt_name;
    }
    public void setPt_name(String pt_name) {
        this.pt_name = pt_name;
    }
    @Column(name = "ge_code")
    public String getGe_code() {
        return ge_code;
    }
    public void setGe_code(String ge_code) {
        this.ge_code = ge_code;
    }
    @Column(name = "pt_age")
    public String getPt_age() {
        return pt_age;
    }
    public void setPt_age(String pt_age) {
        this.pt_age = pt_age;
    }
    @Column(name = "card_type")
    public String getCard_type() {
        return card_type;
    }
    public void setCard_type(String card_type) {
        this.card_type = card_type;
    }
    @Column(name = "id_no")
    public String getId_no() {
        return id_no;
    }
    public void setId_no(String id_no) {
        this.id_no = id_no;
    }
    @Column(name = "pt_tel")
    public String getPt_tel() {
        return pt_tel;
    }
    public void setPt_tel(String pt_tel) {
        this.pt_tel = pt_tel;
    }
    @Column(name = "crt_date")
    public String getCrt_date() {
        return crt_date;
    }
    public void setCrt_date(String crt_date) {
        this.crt_date = crt_date;
    }
}

+ 200 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpMedicalOnlineDO.java

@ -0,0 +1,200 @@
package com.yihu.jw.entity.thirdUpload;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
@Entity
@Table(name = "up_medical_online")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class UpMedicalOnlineDO extends UuidIdentityEntity {
    private String cd_org;
    private String cd_area;
    private String cd_org_sub;
    private String app_time;
    private String app_dep_code;
    private String app_class_code;
    private String app_class_name;
    private String id_doctor;
    private String fg_handle;
    private String handle_time;
    private String pt_name;
    private String ge_code;
    private String card_type;
    private String id_no;
    private String pt_tel;
    private String crt_date;
    private String origin_id;
    private Date create_time;
    private Date update_time;
    private String is_del;
    @Column(name = "is_del")
    public String getIs_del() {
        return is_del;
    }
    public void setIs_del(String is_del) {
        this.is_del = is_del;
    }
    @Column(name = "update_time")
    public Date getUpdate_time() {
        return update_time;
    }
    public void setUpdate_time(Date update_time) {
        this.update_time = update_time;
    }
    @Column(name = "create_time")
    public Date getCreate_time() {
        return create_time;
    }
    public void setCreate_time(Date create_time) {
        this.create_time = create_time;
    }
    @Column(name = "cd_org")
    public String getCd_org() {
        return cd_org;
    }
    public void setCd_org(String cd_org) {
        this.cd_org = cd_org;
    }
    @Column(name = "cd_area")
    public String getCd_area() {
        return cd_area;
    }
    public void setCd_area(String cd_area) {
        this.cd_area = cd_area;
    }
    @Column(name = "cd_org_sub")
    public String getCd_org_sub() {
        return cd_org_sub;
    }
    public void setCd_org_sub(String cd_org_sub) {
        this.cd_org_sub = cd_org_sub;
    }
    @Column(name = "app_time")
    public String getApp_time() {
        return app_time;
    }
    public void setApp_time(String app_time) {
        this.app_time = app_time;
    }
    @Column(name = "app_dep_code")
    public String getApp_dep_code() {
        return app_dep_code;
    }
    public void setApp_dep_code(String app_dep_code) {
        this.app_dep_code = app_dep_code;
    }
    @Column(name = "app_class_code")
    public String getApp_class_code() {
        return app_class_code;
    }
    public void setApp_class_code(String app_class_code) {
        this.app_class_code = app_class_code;
    }
    @Column(name = "app_class_name")
    public String getApp_class_name() {
        return app_class_name;
    }
    public void setApp_class_name(String app_class_name) {
        this.app_class_name = app_class_name;
    }
    @Column(name = "id_doctor")
    public String getId_doctor() {
        return id_doctor;
    }
    public void setId_doctor(String id_doctor) {
        this.id_doctor = id_doctor;
    }
    @Column(name = "fg_handle")
    public String getFg_handle() {
        return fg_handle;
    }
    public void setFg_handle(String fg_handle) {
        this.fg_handle = fg_handle;
    }
    @Column(name = "handle_time")
    public String getHandle_time() {
        return handle_time;
    }
    public void setHandle_time(String handle_time) {
        this.handle_time = handle_time;
    }
    @Column(name = "pt_name")
    public String getPt_name() {
        return pt_name;
    }
    public void setPt_name(String pt_name) {
        this.pt_name = pt_name;
    }
    @Column(name = "ge_code")
    public String getGe_code() {
        return ge_code;
    }
    public void setGe_code(String ge_code) {
        this.ge_code = ge_code;
    }
    @Column(name = "card_type")
    public String getCard_type() {
        return card_type;
    }
    public void setCard_type(String card_type) {
        this.card_type = card_type;
    }
    @Column(name = "id_no")
    public String getId_no() {
        return id_no;
    }
    public void setId_no(String id_no) {
        this.id_no = id_no;
    }
    @Column(name = "pt_tel")
    public String getPt_tel() {
        return pt_tel;
    }
    public void setPt_tel(String pt_tel) {
        this.pt_tel = pt_tel;
    }
    @Column(name = "crt_date")
    public String getCrt_date() {
        return crt_date;
    }
    public void setCrt_date(String crt_date) {
        this.crt_date = crt_date;
    }
    @Column(name = "origin_id")
    public String getOrigin_id() {
        return origin_id;
    }
    public void setOrigin_id(String origin_id) {
        this.origin_id = origin_id;
    }
}

+ 539 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpNsOrganBaseDO.java

@ -0,0 +1,539 @@
package com.yihu.jw.entity.thirdUpload;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
@Entity
@Table(name = "upns_organ_base")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class UpNsOrganBaseDO extends UuidIdentityEntity {
    private String organ_code;
    private String organ_name;
    private String corporation;
    private String no_pra_lic;
    private String  second_organ_name;
    private String charge_person;
    private String org_levelorgan_type;
    private String economic_type;
    private String organ_type;
    private String organ_sub;
    private String hospital_district;
    private String hospital_address;
    private String hospital_phone;
    private String hospital_img;
    private String bus_lic;
    private String corp_idcord_head;
    private String corp_idcord_tail;
    private String pra_lic;
    private String net_service;
    private String net_service_ot;
    private String service_dept;
    private String txt_introduction;
    private String protocol_type;
    private String protocol_content;
    private String publish_date;
    private String protocol_name;
    private String quai_mang_dept;
    private String info_mang_dept;
    private String medi_service_dept;
    private String server_type;
    private String server_total;
    private String server_ip;
    private String mp_system_type;
    private String mp_system_total;
    private String tran_link;
    private String tran_link_band;
    private String server_system_name;
    private String server_system_ip;
    private String tech_manual;
    private String server_manual;
    private String secu_level;
    private String secu_level_cert;
    private String emr_level;
    private String emr_level_cert;
    private String zone_record_share;
    private String prov_monitor;
    private String prov_service;
    private String server_func;
    private String third_compeny_name;
    private String third_compeny_code;
    private String third_compeny_cert;
    private String third_compeny_corp;
    private String third_compeny_corp_id;
    private String third_compeny_prot;
    private String green_road;
    private Date create_time;
    private Date update_time;
    private String is_del;
    @Column(name = "update_time")
    public Date getUpdate_time() {
        return update_time;
    }
    public void setUpdate_time(Date update_time) {
        this.update_time = update_time;
    }
    @Column(name = "is_del")
    public String getIs_del() {
        return is_del;
    }
    public void setIs_del(String is_del) {
        this.is_del = is_del;
    }
    @Column(name = "organ_code")
    public String getOrgan_code() {
        return organ_code;
    }
    public void setOrgan_code(String organ_code) {
        this.organ_code = organ_code;
    }
    @Column(name = "organ_name")
    public String getOrgan_name() {
        return organ_name;
    }
    public void setOrgan_name(String organ_name) {
        this.organ_name = organ_name;
    }
    @Column(name = "corporation")
    public String getCorporation() {
        return corporation;
    }
    public void setCorporation(String corporation) {
        this.corporation = corporation;
    }
    @Column(name = "no_pra_lic")
    public String getNo_pra_lic() {
        return no_pra_lic;
    }
    public void setNo_pra_lic(String no_pra_lic) {
        this.no_pra_lic = no_pra_lic;
    }
    @Column(name = " second_organ_name")
    public String getSecond_organ_name() {
        return second_organ_name;
    }
    public void setSecond_organ_name(String second_organ_name) {
        this.second_organ_name = second_organ_name;
    }
    @Column(name = "charge_person")
    public String getCharge_person() {
        return charge_person;
    }
    public void setCharge_person(String charge_person) {
        this.charge_person = charge_person;
    }
    @Column(name = "org_levelorgan_type")
    public String getOrg_levelorgan_type() {
        return org_levelorgan_type;
    }
    public void setOrg_levelorgan_type(String org_levelorgan_type) {
        this.org_levelorgan_type = org_levelorgan_type;
    }
    @Column(name = "economic_type")
    public String getEconomic_type() {
        return economic_type;
    }
    public void setEconomic_type(String economic_type) {
        this.economic_type = economic_type;
    }
    @Column(name = "organ_type")
    public String getOrgan_type() {
        return organ_type;
    }
    public void setOrgan_type(String organ_type) {
        this.organ_type = organ_type;
    }
    @Column(name = "organ_sub")
    public String getOrgan_sub() {
        return organ_sub;
    }
    public void setOrgan_sub(String organ_sub) {
        this.organ_sub = organ_sub;
    }
    @Column(name = "hospital_district")
    public String getHospital_district() {
        return hospital_district;
    }
    public void setHospital_district(String hospital_district) {
        this.hospital_district = hospital_district;
    }
    @Column(name = "hospital_address")
    public String getHospital_address() {
        return hospital_address;
    }
    public void setHospital_address(String hospital_address) {
        this.hospital_address = hospital_address;
    }
    @Column(name = "hospital_phone")
    public String getHospital_phone() {
        return hospital_phone;
    }
    public void setHospital_phone(String hospital_phone) {
        this.hospital_phone = hospital_phone;
    }
    @Column(name = "hospital_img")
    public String getHospital_img() {
        return hospital_img;
    }
    public void setHospital_img(String hospital_img) {
        this.hospital_img = hospital_img;
    }
    @Column(name = "bus_lic")
    public String getBus_lic() {
        return bus_lic;
    }
    public void setBus_lic(String bus_lic) {
        this.bus_lic = bus_lic;
    }
    @Column(name = "corp_idcord_head")
    public String getCorp_idcord_head() {
        return corp_idcord_head;
    }
    public void setCorp_idcord_head(String corp_idcord_head) {
        this.corp_idcord_head = corp_idcord_head;
    }
    @Column(name = "corp_idcord_tail")
    public String getCorp_idcord_tail() {
        return corp_idcord_tail;
    }
    public void setCorp_idcord_tail(String corp_idcord_tail) {
        this.corp_idcord_tail = corp_idcord_tail;
    }
    @Column(name = "pra_lic")
    public String getPra_lic() {
        return pra_lic;
    }
    public void setPra_lic(String pra_lic) {
        this.pra_lic = pra_lic;
    }
    @Column(name = "net_service")
    public String getNet_service() {
        return net_service;
    }
    public void setNet_service(String net_service) {
        this.net_service = net_service;
    }
    @Column(name = "net_service_ot")
    public String getNet_service_ot() {
        return net_service_ot;
    }
    public void setNet_service_ot(String net_service_ot) {
        this.net_service_ot = net_service_ot;
    }
    @Column(name = "service_dept")
    public String getService_dept() {
        return service_dept;
    }
    public void setService_dept(String service_dept) {
        this.service_dept = service_dept;
    }
    @Column(name = "txt_introduction")
    public String getTxt_introduction() {
        return txt_introduction;
    }
    public void setTxt_introduction(String txt_introduction) {
        this.txt_introduction = txt_introduction;
    }
    @Column(name = "protocol_type")
    public String getProtocol_type() {
        return protocol_type;
    }
    public void setProtocol_type(String protocol_type) {
        this.protocol_type = protocol_type;
    }
    @Column(name = "protocol_content")
    public String getProtocol_content() {
        return protocol_content;
    }
    public void setProtocol_content(String protocol_content) {
        this.protocol_content = protocol_content;
    }
    @Column(name = "publish_date")
    public String getPublish_date() {
        return publish_date;
    }
    public void setPublish_date(String publish_date) {
        this.publish_date = publish_date;
    }
    @Column(name = "protocol_name")
    public String getProtocol_name() {
        return protocol_name;
    }
    public void setProtocol_name(String protocol_name) {
        this.protocol_name = protocol_name;
    }
    @Column(name = "quai_mang_dept")
    public String getQuai_mang_dept() {
        return quai_mang_dept;
    }
    public void setQuai_mang_dept(String quai_mang_dept) {
        this.quai_mang_dept = quai_mang_dept;
    }
    @Column(name = "info_mang_dept")
    public String getInfo_mang_dept() {
        return info_mang_dept;
    }
    public void setInfo_mang_dept(String info_mang_dept) {
        this.info_mang_dept = info_mang_dept;
    }
    @Column(name = "medi_service_dept")
    public String getMedi_service_dept() {
        return medi_service_dept;
    }
    public void setMedi_service_dept(String medi_service_dept) {
        this.medi_service_dept = medi_service_dept;
    }
    @Column(name = "server_type")
    public String getServer_type() {
        return server_type;
    }
    public void setServer_type(String server_type) {
        this.server_type = server_type;
    }
    @Column(name = "server_total")
    public String getServer_total() {
        return server_total;
    }
    public void setServer_total(String server_total) {
        this.server_total = server_total;
    }
    @Column(name = "server_ip")
    public String getServer_ip() {
        return server_ip;
    }
    public void setServer_ip(String server_ip) {
        this.server_ip = server_ip;
    }
    @Column(name = "mp_system_type")
    public String getMp_system_type() {
        return mp_system_type;
    }
    public void setMp_system_type(String mp_system_type) {
        this.mp_system_type = mp_system_type;
    }
    @Column(name = "mp_system_total")
    public String getMp_system_total() {
        return mp_system_total;
    }
    public void setMp_system_total(String mp_system_total) {
        this.mp_system_total = mp_system_total;
    }
    @Column(name = "tran_link")
    public String getTran_link() {
        return tran_link;
    }
    public void setTran_link(String tran_link) {
        this.tran_link = tran_link;
    }
    @Column(name = "tran_link_band")
    public String getTran_link_band() {
        return tran_link_band;
    }
    public void setTran_link_band(String tran_link_band) {
        this.tran_link_band = tran_link_band;
    }
    @Column(name = "server_system_name")
    public String getServer_system_name() {
        return server_system_name;
    }
    public void setServer_system_name(String server_system_name) {
        this.server_system_name = server_system_name;
    }
    @Column(name = "server_system_ip")
    public String getServer_system_ip() {
        return server_system_ip;
    }
    public void setServer_system_ip(String server_system_ip) {
        this.server_system_ip = server_system_ip;
    }
    @Column(name = "tech_manual")
    public String getTech_manual() {
        return tech_manual;
    }
    public void setTech_manual(String tech_manual) {
        this.tech_manual = tech_manual;
    }
    @Column(name = "server_manual")
    public String getServer_manual() {
        return server_manual;
    }
    public void setServer_manual(String server_manual) {
        this.server_manual = server_manual;
    }
    @Column(name = "secu_level")
    public String getSecu_level() {
        return secu_level;
    }
    public void setSecu_level(String secu_level) {
        this.secu_level = secu_level;
    }
    @Column(name = "secu_level_cert")
    public String getSecu_level_cert() {
        return secu_level_cert;
    }
    public void setSecu_level_cert(String secu_level_cert) {
        this.secu_level_cert = secu_level_cert;
    }
    @Column(name = "emr_level")
    public String getEmr_level() {
        return emr_level;
    }
    public void setEmr_level(String emr_level) {
        this.emr_level = emr_level;
    }
    @Column(name = "emr_level_cert")
    public String getEmr_level_cert() {
        return emr_level_cert;
    }
    public void setEmr_level_cert(String emr_level_cert) {
        this.emr_level_cert = emr_level_cert;
    }
    @Column(name = "zone_record_share")
    public String getZone_record_share() {
        return zone_record_share;
    }
    public void setZone_record_share(String zone_record_share) {
        this.zone_record_share = zone_record_share;
    }
    @Column(name = "prov_monitor")
    public String getProv_monitor() {
        return prov_monitor;
    }
    public void setProv_monitor(String prov_monitor) {
        this.prov_monitor = prov_monitor;
    }
    @Column(name = "prov_service")
    public String getProv_service() {
        return prov_service;
    }
    public void setProv_service(String prov_service) {
        this.prov_service = prov_service;
    }
    @Column(name = "server_func")
    public String getServer_func() {
        return server_func;
    }
    public void setServer_func(String server_func) {
        this.server_func = server_func;
    }
    @Column(name = "third_compeny_name")
    public String getThird_compeny_name() {
        return third_compeny_name;
    }
    public void setThird_compeny_name(String third_compeny_name) {
        this.third_compeny_name = third_compeny_name;
    }
    @Column(name = "third_compeny_code")
    public String getThird_compeny_code() {
        return third_compeny_code;
    }
    public void setThird_compeny_code(String third_compeny_code) {
        this.third_compeny_code = third_compeny_code;
    }
    @Column(name = "third_compeny_cert")
    public String getThird_compeny_cert() {
        return third_compeny_cert;
    }
    public void setThird_compeny_cert(String third_compeny_cert) {
        this.third_compeny_cert = third_compeny_cert;
    }
    @Column(name = "third_compeny_corp")
    public String getThird_compeny_corp() {
        return third_compeny_corp;
    }
    public void setThird_compeny_corp(String third_compeny_corp) {
        this.third_compeny_corp = third_compeny_corp;
    }
    @Column(name = "third_compeny_corp_id")
    public String getThird_compeny_corp_id() {
        return third_compeny_corp_id;
    }
    public void setThird_compeny_corp_id(String third_compeny_corp_id) {
        this.third_compeny_corp_id = third_compeny_corp_id;
    }
    @Column(name = "third_compeny_prot")
    public String getThird_compeny_prot() {
        return third_compeny_prot;
    }
    public void setThird_compeny_prot(String third_compeny_prot) {
        this.third_compeny_prot = third_compeny_prot;
    }
    @Column(name = "green_road")
    public String getGreen_road() {
        return green_road;
    }
    public void setGreen_road(String green_road) {
        this.green_road = green_road;
    }
    @Column(name = "create_time")
    public Date getCreate_time() {
        return create_time;
    }
    public void setCreate_time(Date create_time) {
        this.create_time = create_time;
    }
}

+ 268 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpnsDoctorRecordDO.java

@ -0,0 +1,268 @@
package com.yihu.jw.entity.thirdUpload;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
@Entity
@Table(name = "upns_doctor_record")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class UpnsDoctorRecordDO extends UuidIdentityEntity {
    private String organ_code;
    private String organ_name;
    private String doc_name;
    private String docimg;
    private String id_card;
    private String sex;
    private String birthday;
    private String subject;
    private String subject_name;
    private String belong_dept;
    private String belong_dept_name;
    private String doo_tel;
    private String title_rec_date;
    private String prac_type;
    private String title_code;
    private String first_compeny_code;
    private String first_compeny_name;
    private String secd_compeny_code;
    private String secd_compeny_name;
    private String net_service;
    private String cert_no;
    private String prac_no;
    private String doc_cert;
    private String cert_doc_prac;
    private String txt_introduction;
    private Date create_time;
    private Date update_time;
    private String is_del;
    @Column(name = "is_del")
    public String getIs_del() {
        return is_del;
    }
    public void setIs_del(String is_del) {
        this.is_del = is_del;
    }
    @Column(name = "update_time")
    public Date getUpdate_time() {
        return update_time;
    }
    public void setUpdate_time(Date update_time) {
        this.update_time = update_time;
    }
    @Column(name = "create_time")
    public Date getCreate_time() {
        return create_time;
    }
    public void setCreate_time(Date create_time) {
        this.create_time = create_time;
    }
    @Column(name = "organ_code")
    public String getOrgan_code() {
        return organ_code;
    }
    public void setOrgan_code(String organ_code) {
        this.organ_code = organ_code;
    }
    @Column(name = "organ_name")
    public String getOrgan_name() {
        return organ_name;
    }
    public void setOrgan_name(String organ_name) {
        this.organ_name = organ_name;
    }
    @Column(name = "doc_name")
    public String getDoc_name() {
        return doc_name;
    }
    public void setDoc_name(String doc_name) {
        this.doc_name = doc_name;
    }
    @Column(name = "docimg")
    public String getDocimg() {
        return docimg;
    }
    public void setDocimg(String docimg) {
        this.docimg = docimg;
    }
    @Column(name = "id_card")
    public String getId_card() {
        return id_card;
    }
    public void setId_card(String id_card) {
        this.id_card = id_card;
    }
    @Column(name = "sex")
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    @Column(name = "birthday")
    public String getBirthday() {
        return birthday;
    }
    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }
    @Column(name = "subject")
    public String getSubject() {
        return subject;
    }
    public void setSubject(String subject) {
        this.subject = subject;
    }
    @Column(name = "subject_name")
    public String getSubject_name() {
        return subject_name;
    }
    public void setSubject_name(String subject_name) {
        this.subject_name = subject_name;
    }
    @Column(name = "belong_dept")
    public String getBelong_dept() {
        return belong_dept;
    }
    public void setBelong_dept(String belong_dept) {
        this.belong_dept = belong_dept;
    }
    @Column(name = "belong_dept_name")
    public String getBelong_dept_name() {
        return belong_dept_name;
    }
    public void setBelong_dept_name(String belong_dept_name) {
        this.belong_dept_name = belong_dept_name;
    }
    @Column(name = "doo_tel")
    public String getDoo_tel() {
        return doo_tel;
    }
    public void setDoo_tel(String doo_tel) {
        this.doo_tel = doo_tel;
    }
    @Column(name = "title_rec_date")
    public String getTitle_rec_date() {
        return title_rec_date;
    }
    public void setTitle_rec_date(String title_rec_date) {
        this.title_rec_date = title_rec_date;
    }
    @Column(name = "prac_type")
    public String getPrac_type() {
        return prac_type;
    }
    public void setPrac_type(String prac_type) {
        this.prac_type = prac_type;
    }
    @Column(name = "title_code")
    public String getTitle_code() {
        return title_code;
    }
    public void setTitle_code(String title_code) {
        this.title_code = title_code;
    }
    @Column(name = "first_compeny_code")
    public String getFirst_compeny_code() {
        return first_compeny_code;
    }
    public void setFirst_compeny_code(String first_compeny_code) {
        this.first_compeny_code = first_compeny_code;
    }
    @Column(name = "first_compeny_name")
    public String getFirst_compeny_name() {
        return first_compeny_name;
    }
    public void setFirst_compeny_name(String first_compeny_name) {
        this.first_compeny_name = first_compeny_name;
    }
    @Column(name = "secd_compeny_code")
    public String getSecd_compeny_code() {
        return secd_compeny_code;
    }
    public void setSecd_compeny_code(String secd_compeny_code) {
        this.secd_compeny_code = secd_compeny_code;
    }
    @Column(name = "secd_compeny_name")
    public String getSecd_compeny_name() {
        return secd_compeny_name;
    }
    public void setSecd_compeny_name(String secd_compeny_name) {
        this.secd_compeny_name = secd_compeny_name;
    }
    @Column(name = "net_service")
    public String getNet_service() {
        return net_service;
    }
    public void setNet_service(String net_service) {
        this.net_service = net_service;
    }
    @Column(name = "cert_no")
    public String getCert_no() {
        return cert_no;
    }
    public void setCert_no(String cert_no) {
        this.cert_no = cert_no;
    }
    @Column(name = "prac_no")
    public String getPrac_no() {
        return prac_no;
    }
    public void setPrac_no(String prac_no) {
        this.prac_no = prac_no;
    }
    @Column(name = "doc_cert")
    public String getDoc_cert() {
        return doc_cert;
    }
    public void setDoc_cert(String doc_cert) {
        this.doc_cert = doc_cert;
    }
    @Column(name = "cert_doc_prac")
    public String getCert_doc_prac() {
        return cert_doc_prac;
    }
    public void setCert_doc_prac(String cert_doc_prac) {
        this.cert_doc_prac = cert_doc_prac;
    }
    @Column(name = "txt_introduction")
    public String getTxt_introduction() {
        return txt_introduction;
    }
    public void setTxt_introduction(String txt_introduction) {
        this.txt_introduction = txt_introduction;
    }
}

+ 144 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/thirdUpload/UpnsDoctorScoreDO.java

@ -0,0 +1,144 @@
package com.yihu.jw.entity.thirdUpload;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
@Entity
@Table(name = "upns_doctor_score")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class UpnsDoctorScoreDO extends UuidIdentityEntity {
    private String id_doctor;
    private String organ_code;
    private String organ_name;
    private String net_service;
    private String net_service_name;
    private String val_score;
    private String grader;
    private String dt_grade;
    private String crt_date;
    private String origin_id;
    private String grade_content;
    private Date create_time;
    private Date update_time;
    private String is_del;
    @Column(name = "grade_content")
    public String getGrade_content() {
        return grade_content;
    }
    public void setGrade_content(String grade_content) {
        this.grade_content = grade_content;
    }
    @Column(name = "update_time")
    public Date getUpdate_time() {
        return update_time;
    }
    public void setUpdate_time(Date update_time) {
        this.update_time = update_time;
    }
    @Column(name = "is_del")
    public String getIs_del() {
        return is_del;
    }
    public void setIs_del(String is_del) {
        this.is_del = is_del;
    }
    @Column(name = "create_time")
    public Date getCreate_time() {
        return create_time;
    }
    public void setCreate_time(Date create_time) {
        this.create_time = create_time;
    }
    @Column(name = "id_doctor")
    public String getId_doctor() {
        return id_doctor;
    }
    public void setId_doctor(String id_doctor) {
        this.id_doctor = id_doctor;
    }
    @Column(name = "organ_code")
    public String getOrgan_code() {
        return organ_code;
    }
    public void setOrgan_code(String organ_code) {
        this.organ_code = organ_code;
    }
    @Column(name = "organ_name")
    public String getOrgan_name() {
        return organ_name;
    }
    public void setOrgan_name(String organ_name) {
        this.organ_name = organ_name;
    }
    @Column(name = "net_service")
    public String getNet_service() {
        return net_service;
    }
    public void setNet_service(String net_service) {
        this.net_service = net_service;
    }
    @Column(name = "net_service_name")
    public String getNet_service_name() {
        return net_service_name;
    }
    public void setNet_service_name(String net_service_name) {
        this.net_service_name = net_service_name;
    }
    @Column(name = "val_score")
    public String getVal_score() {
        return val_score;
    }
    public void setVal_score(String val_score) {
        this.val_score = val_score;
    }
    @Column(name = "grader")
    public String getGrader() {
        return grader;
    }
    public void setGrader(String grader) {
        this.grader = grader;
    }
    @Column(name = "dt_grade")
    public String getDt_grade() {
        return dt_grade;
    }
    public void setDt_grade(String dt_grade) {
        this.dt_grade = dt_grade;
    }
    @Column(name = "crt_date")
    public String getCrt_date() {
        return crt_date;
    }
    public void setCrt_date(String crt_date) {
        this.crt_date = crt_date;
    }
    @Column(name = "origin_id")
    public String getOrigin_id() {
        return origin_id;
    }
    public void setOrigin_id(String origin_id) {
        this.origin_id = origin_id;
    }
}

+ 2 - 0
gateway/ag-basic/src/main/resources/application.yml

@ -2,6 +2,8 @@ server:
  port: ${server.ag-basic-port}
  tomcat:
    basedir: /data/apps/temp
    max-http-form-post-size: -1
  max-http-header-size: 102400
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver

+ 65 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/common/FileUploadController.java

@ -17,6 +17,7 @@ import com.yihu.jw.rm.base.BaseRequestMapping;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.http.entity.ContentType;
import org.slf4j.Logger;
@ -59,7 +60,8 @@ public class FileUploadController extends EnvelopRestEndpoint {
    @Autowired
    private ObjectMapper objectMapper;
    @Autowired
    private FileManageService filemanage;
    private FileManageService fileManageService;
    @PostMapping(value = BaseRequestMapping.FileUpload.UPLOAD_STREAM_IMG)
    @ApiOperation(value = "文件流上传图片", notes = "文件流上传图片")
@ -176,4 +178,66 @@ public class FileUploadController extends EnvelopRestEndpoint {
        return success("上传成功", uploadVO);
    }
    @PostMapping(value = BaseRequestMapping.FileUpload.UPLOAD_STREAM_video)
    @ApiOperation(value = "文件流上传文件", notes = "文件流上传文件")
    public ObjEnvelop<UploadVO> uploadStreamVideo(@ApiParam(value = "文件", required = true)
                                                  @RequestParam(value = "file", required = true) MultipartFile file,
                                                  @ApiParam(value = "文件", required = false)
                                                  @RequestParam(value = "filename", required = false) String filename,
                                                  @ApiParam(value = "taskId", required = false)
                                                  @RequestParam(value = "taskId", required = false) String taskId,
                                                  @ApiParam(value = "chunk", required = false)
                                                  @RequestParam(value = "chunk", required = false) Integer chunk,
                                                  @ApiParam(value = "文件", required = false)
                                                  @RequestParam(value = "sizesize", required = false) Long size,
                                                  @ApiParam(value = "chunkTotal", required = false)
                                                  @RequestParam(value = "chunkTotal", required = false) Integer chunkTotal,
                                                  @ApiParam(value = "objectType", required = false)
                                                  @RequestParam(value = "objectType", required = false) Integer objectType
    ) throws Exception{
        UploadVO uploadVO = new UploadVO();
        MutilFileInfo files = new MutilFileInfo();
        files.setChunk(chunk);
        files.setChunkTotal(chunkTotal);
        files.setFile(file);
        files.setObjectType(objectType);
        files.setSize(file.getSize());
        files.setTaskId(taskId);
        String taskid = fileManageService.chunkUploadByMappedByteBuffer(files);
        if ("unCompelete".equalsIgnoreCase(taskid)){
            System.out.println("第"+files.getChunk());
            return success("未传完",uploadVO);
        }else {
            File file1 = new File(taskid);
            FileInputStream input = new FileInputStream(file1);
            MultipartFile multipartFile = new MockMultipartFile("file", file1.getName(), "text/plain", IOUtils.toByteArray(input));
            if (isClose.equalsIgnoreCase("1")){
                Map<String, Object> map = fileUploadService.uploadImg(multipartFile);
                uploadVO.setFullUri(map.get("accessory").toString());
            }else if(isClose.equals("2")){
                //内网上传
                String rs = fileUploadService.request(remote_inner_url,multipartFile,null);
                logger.info(rs);
                JSONObject json = JSON.parseObject(rs);
                uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
            }else {
                // 得到文件的完整名称  xxx.txt
                String originalFilename = multipartFile.getOriginalFilename();
                //判断文件名称是否有包含后缀,及前端是否有传后缀名称,有的话拼接图片后缀
                if(originalFilename.lastIndexOf(".") == 0 && StringUtils.isNotEmpty(filename)){
                    originalFilename = originalFilename +"."+filename;
                }
                InputStream inputStream = multipartFile.getInputStream();
                uploadVO = fileUploadService.uploadStream(inputStream,originalFilename,fastdfs_file_url);
                file1.delete();
            }
            return success("上传成功", uploadVO);
        }
    }
}

+ 7 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/service/menu/BaseMenuManageService.java

@ -635,7 +635,13 @@ public class BaseMenuManageService {
                " t.menu_img as \"menuImg\"  " +
                "from base_menu_dict t  where 1=1 and t.is_del ='1' ";
        if (StringUtils.isNoneBlank(parentId)){
            sql+=" and t.parent_id='"+parentId+"'";
            String str[]=parentId.split(",");
            String parentIds = "";
            for (int i=0;i<str.length;i++){
                parentIds +="'"+str[i]+"',";
            }
            parentIds.substring(0,parentIds.length()-1);
            sql+=" and t.parent_id in ("+parentIds+") ";
        }
        if (status!=null){
            sql+=" and t.status="+status+"";

+ 2 - 1
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/dao/device/DevicePatientHealthIndexDao.java

@ -58,7 +58,7 @@ public interface DevicePatientHealthIndexDao
	@Query(value = "select DATE_FORMAT(a.record_date,'%Y-%m-%d') from wlyy_patient_health_index a where a.user = ?1 and a.type=?2 and a.record_date >= ?3 and a.record_date <= ?4 and a.del = '1' group by DATE_FORMAT(a.record_date,'%Y-%m-%d') order by DATE_FORMAT(a.record_date,'%Y-%m-%d') desc limit ?5 ,?6",nativeQuery = true)
	List<String> findDateList(String patient, int type, Date start, Date end, int currentSize, int pageSize);
	
	@Query(value= " select * from wlyy_patient_health_index where type in (1,2) and record_date BETWEEN ?1 AND ?2  AND user in (select p.code from wlyy.wlyy_patient p INNER JOIN wlyy.wlyy_sign_family s on s.patient = p.code RIGHT JOIN wlyy_sign_patient_label_info sp on sp.patient = p.code where  s.status > 0 AND s.admin_team_code = ?3 and (s.doctor = ?4 or s.doctor_health =?4) and sp.status = 1 and sp.label_type = 3 and (sp.label = 1 or sp.label = 2))",nativeQuery = true)
	List<DevicePatientHealthIndex> findByTeamcodeAndRecordDate(Date start, Date end, String teamcode, String doctorcode);
@ -77,4 +77,5 @@ public interface DevicePatientHealthIndexDao
	@Modifying
	@Query("update DevicePatientHealthIndex a set a.manageResult=1 where a.id in (?1) ")
	void handleHealthIndex(Long[] id);
}

+ 1 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/device/DoctorDeviceController.java

@ -151,4 +151,5 @@ public class DoctorDeviceController extends BaseController {
		}
	}
}

+ 21 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/device/PadDeviceController.java

@ -308,4 +308,25 @@ public class PadDeviceController extends BaseController {
        }
    }
    @RequestMapping(value ="addPatientSosContacts",method = RequestMethod.POST)
    @ApiOperation(value = "设备绑定添加联系人")
    public String addPatientSosContacts(@ApiParam(name = "patient", value = "patient", defaultValue = "patient")
                                           @RequestParam(value = "patient", required = true) String patient,
                                        @ApiParam(name = "jsonStr", value = "patient", defaultValue = "patient")
                                        @RequestParam(value = "jsonStr", required = true) String jsonStr){
        try {
            JSONObject result = contactsService.addPatientSosContacts(patient,jsonStr);
            if (ResponseContant.success == result.getInteger(ResponseContant.resultFlag)){
                return success("添加成功");
            }
            else {
                return error(-1,result.getString(ResponseContant.resultMsg));
            }
        }catch (Exception e){
            return errorResult(e);
        }
    }
}

+ 2 - 2
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/device/PatientDeviceController.java

@ -77,7 +77,7 @@ public class PatientDeviceController extends BaseController {
                                   @ApiParam(name = "date", value = "日期", defaultValue = "2021-08-24")
                                   @RequestParam(value = "date", required = true) String date){
        try {
            return write(200,"获取成功","data",patientDeviceService.gasConcentration(patientId,date));
            return write(200,"获取成功","data",patientDeviceService.gasConcentration(patientId,date,null));
        } catch (Exception ex) {
            return errorResult(ex);
        }
@ -429,7 +429,7 @@ public class PatientDeviceController extends BaseController {
        }
    }
    @ApiOperation("获取设备详情信息")
    @ApiOperation("获取设备详情数据 --设备可多人绑定查询数据时与patient无关")
    @RequestMapping(value = "getPatientDeviceData",method = RequestMethod.GET)
    public String getPatientDeviceData(@ApiParam(name="patient")
                                       @RequestParam(value = "patient")String patient,

+ 46 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/contacts/ContactsService.java

@ -287,6 +287,52 @@ public class ContactsService {
        result.put(ResponseContant.resultFlag,ResponseContant.success);
        result.put(ResponseContant.resultMsg,"修改成功");
        return result;
    }
    /**
     *设备绑定添加居民紧急联系人
     */
    public JSONObject addPatientSosContacts(String patient,String jsonStr) throws Exception {
        JSONObject result = new JSONObject();
        List<PatientSosContactsDO> list = sosContactsDao.findByPatientOrderByUpdateTimeDesc(patient);
        JSONArray jsonArray = JSONArray.parseArray(jsonStr);
        for (int i=0;i<jsonArray.size();i++){
            list = sosContactsDao.findByPatientAndDel(patient,1);
            JSONObject obj = jsonArray.getJSONObject(i);
            String num = obj.getString("num");
            String name = obj.getString("name");
            String relation = obj.getString("relation");
            Integer seqid=0;
            if (list.size()>=2){
                List<String> sosContacts =list.stream().map(PatientSosContactsDO::getSosPhone).collect(Collectors.toList());
                if (!sosContacts.contains(num)){
                    result.put(ResponseContant.resultFlag,ResponseContant.fail);
                    result.put(ResponseContant.resultMsg,"该用户紧急联系人已上限");
                    return result;
                }
            }
            if (list.size()>0){
                seqid = list.get(0).getPhoneSeqid();
            }
            PatientSosContactsDO contactsDO = sosContactsDao.findByPatientAndSosPhone(patient,num);
            if(null==contactsDO){
                contactsDO = new PatientSosContactsDO();
                contactsDO.setPhoneSeqid(1==seqid?2:1);
            }
            contactsDO.setDel(1);
            contactsDO.setPatient(patient);
            contactsDO.setSosName(name);
            contactsDO.setSosPhone(num);
            contactsDO.setRelation(Integer.parseInt(relation));
            contactsDO.setSuccessFlag(0);
            sosContactsDao.save(contactsDO);
        }
        result.put(ResponseContant.resultFlag,ResponseContant.success);
        result.put(ResponseContant.resultMsg,"修改成功");
        return result;
    }
    public void delSosNumber(List<Map<String,Object>> sims,String patient,String[] numTmp) {

+ 153 - 37
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/PatientDeviceService.java

@ -61,6 +61,7 @@ import javax.annotation.PostConstruct;
import java.text.MessageFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Component
@Transactional(rollbackFor = Exception.class)
@ -172,9 +173,15 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
     * 燃气浓度
     * @param patient
     */
    public List<Map<String,Object>> gasConcentration(String patient,String date){
    public List<Map<String,Object>> gasConcentration(String patient,String date,String deviceSn){
        String sql = "SELECT r.value,r.create_time from wlyy_patient_device pd,base_device_health_index r " +
                "WHERE pd.device_sn = r.device_sn and pd.`user` = '"+patient+"' ";
                "WHERE pd.device_sn = r.device_sn  ";
        if (StringUtils.isNotBlank(patient)){
            sql +=" and pd.`user` = '"+patient+"' ";
        }
        if (StringUtils.isNotBlank(deviceSn)){
            sql +=" and r.device_sn = '"+deviceSn+"' ";
        }
        sql += " and pd.category_code='14' and r.create_time>'"+date+" 00:00:00' and r.create_time<'"+date+" 23:59:59'  ORDER BY r.create_time desc ";
        List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
@ -209,6 +216,11 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
        String userType = devicePatientDevice.getUserType();
        String sosAddress = null;
        String url ="";
        String sql = " select count(id) from wlyy_patient_device where user='"+devicePatientDevice.getUser()+"' and  device_sn='sn' and del=0 ";
        if (jdbcTemplate.queryForObject(sql,Integer.class)>0){
            return -5;
        }
        if (userType == null) {
            userType = "-1";
            devicePatientDevice.setUserType("-1");
@ -247,7 +259,7 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
                //V1.0.0    监控器、报警器、燃气传感器 烟雾传感器支持一个设备绑定多个居民
                //监控器 12   报警器 7  14  15
                if ("12".equals(type) || "14".equals(type) || "15".equals(type) || "7".equals(type) ) {
                if ("12".equals(type) || "14".equals(type) || "15".equals(type)) {
                    if (devicePatientDevice.getUser().equals(device.getUser())) {
                        System.out.println("居民已经绑定此sn码:"+sn);
                        return -5;
@ -902,12 +914,11 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
                result.put(ResponseContant.resultFlag,ResponseContant.fail);
                result.put(ResponseContant.resultMsg,"居民未绑定该设备");
            }else {
                String sql = "select dd.photo,pd.device_sn,dd.brands,dd.category_code,dd.model,pd.device_name,date_format(pd.czrq,'%Y-%m-%d %H:%i:%S' ) deviceTime " +
                        "from dm_device dd INNER JOIN wlyy_patient_device pd on dd.category_code = pd.category_code INNER JOIN wlyy_devices wd on dd.model = wd.device_model and pd.device_sn = wd.device_code \n" +
                        "where 1=1 and  pd.del=0 and pd.device_sn ='"+deviceSn+"' group by pd.user";
                String sql = "select dd.photo,GROUP_CONCAT( p.name) as patientName,pd.device_sn,dd.brands,dd.category_code,dd.model,pd.device_name,date_format(pd.czrq,'%Y-%m-%d %H:%i:%S' ) deviceTime " +
                        "from dm_device dd INNER JOIN wlyy_patient_device pd on dd.category_code = pd.category_code INNER JOIN base_patient p on p.id = pd.user \n" +
                        "where 1=1 and  pd.del=0 and pd.device_sn ='"+deviceSn+"' group by pd.device_sn";
                Map<String,Object> devInfo = jdbcTemplate.queryForMap(sql);
                devInfo.put("patient",patient);
                devInfo.put("patientName",patientDO.getName());
                devInfo.put("sosContactsDOS",new ArrayList<>());
                if ("4".equals(device.getCategoryCode())||"7".equals(device.getCategoryCode())){
                    devInfo.put("sosContactsDOS",contactsService.getPatientSosContacts(patient));
@ -919,9 +930,13 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
                    case "2"://血糖设备
                        break;
                    case "4"://手表 围栏与轨迹
                        if (StringUtils.isBlank(day)){
                            day = DateUtil.getStringDateShort();
                        }
                        devInfoObj =  securityMonitoringOrderService.patientSignTopicInfo(devInfoObj,patient,"preventLost");
                        //轨迹动态
                        JSONArray locations = getX1Locations(deviceSn,day.replace("-",""));
                        devInfoObj.put("routes",locations);
                        break;
                    case "7"://报警器 紧急工单
                        break;
@ -942,13 +957,13 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
                        if (StringUtils.isBlank(day)){
                            day = DateUtil.getStringDateShort();
                        }
                        List<Map<String,Object>> listTmp = gasConcentration(patient,day);
                        List<Map<String,Object>> listTmp = gasConcentration(patient,day,deviceSn);
                        devInfoObj.put("monitorInfo",listTmp);
                        devInfoObj.put("day",day);
                        securityMonitoringOrderService.preventGasLeakage(devInfoObj,patient,false);
                        break;
                    case "15"://烟感报警器 获取最新浓度
                        securityMonitoringOrderService.preventFire(devInfoObj,patient,false);
                        securityMonitoringOrderService.preventFire(devInfoObj,patient,deviceSn,false);
                        devInfoObj.put("day",DateUtil.getStringDateShort());
                        break;
                }
@ -975,13 +990,13 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
            }else{
                switch (device.getCategoryCode()){
                    case "1"://血压设备
                        result = getHealthIndex(result,deviceSn,patient,page,pageSize);
                        result = getHealthIndex(result,1,deviceSn,patient,page,pageSize);
                        break;
                    case "2"://血糖设备
                        result = getHealthIndex(result,deviceSn,patient,page,pageSize);
                        result = getHealthIndex(result,2,deviceSn,patient,page,pageSize);
                        break;
                    default://安防设备
                        result  = getEmeWarn(result,deviceSn,patient,page,pageSize);
                        result  = getEmeWarn(result,deviceSn,null,page,pageSize);
                        break;
                }
            }
@ -991,29 +1006,105 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
        return result;
    }
    public JSONObject getHealthIndex(JSONObject result,String deviceSn,String patient,Integer page,Integer pageSize){
        String sqlCount = "select count(id) from wlyy_patient_health_index where user ='"+patient+"' and device_sn='"+deviceSn+"' " +
                " and del=1 ";
        String sql = "select *,CAST(DATE_FORMAT(record_date,'%Y-%m-%d %H:%i:%S') as char) record_date from wlyy_patient_health_index where user ='"+patient+"' and device_sn='"+deviceSn+"' " +
                " and del=1 order by record_date desc limit "+page*pageSize+","+pageSize;
        long count = jdbcTemplate.queryForObject(sqlCount,long.class);
        List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
        for (Map<String,Object> tmp:list){
            Integer type =Integer.parseInt(tmp.get("type").toString());
            String value1 = tmp.get("value1")==null?null:tmp.get("value1").toString();
            String value2 = tmp.get("value2")==null?null:tmp.get("value2").toString();
            String value3 = tmp.get("value3")==null?null:tmp.get("value3").toString();
            String value4 = tmp.get("value4")==null?null:tmp.get("value4").toString();
            String value5 = tmp.get("value5")==null?null:tmp.get("value5").toString();
            String value6 = tmp.get("value6")==null?null:tmp.get("value6").toString();
            String value7 = tmp.get("value7")==null?null:tmp.get("value7").toString();
            com.alibaba.fastjson.JSONArray errorInfo = healthIndexUtil.verifyHealthIndex(type,value1,value2,value3,value4,value5,value6,value7);
            tmp.put("errorInfo",errorInfo);
    public JSONObject getHealthIndex(JSONObject result,Integer type,String deviceSn,String patient,Integer page,Integer pageSize){
        page = page>0?page-1:0;
        Long count =0l;
        PageRequest pageRequest = new PageRequest(page, pageSize);
        result.put("dataList",new ArrayList<>());
        if (type == 1) {
            List<Object> re = new ArrayList<>();
            String countSql =" select count(Distinct DATE_FORMAT(a.record_date,'%Y-%m-%d')) from wlyy_patient_health_index a where a.user = '"+patient+"' " +
                    " and a.type=1 and a.device_sn='"+deviceSn+"' and a.del = '1' ";
            count = jdbcTemplate.queryForObject(countSql,Long.class);
            String sql =" select DATE_FORMAT(a.record_date,'%Y-%m-%d') from wlyy_patient_health_index a where a.user = '"+patient+"' " +
                    " and a.type=1 and a.device_sn='"+deviceSn+"' and a.del = '1' group by DATE_FORMAT(a.record_date,'%Y-%m-%d') order by DATE_FORMAT(a.record_date,'%Y-%m-%d') desc limit "+pageRequest.getOffset()+" ,"+pageRequest.getPageSize();
            List<String> dateList = jdbcTemplate.queryForList(sql,String.class);
            if (dateList != null && dateList.size() > 0) {
                for (String dateString : dateList) {
                    com.alibaba.fastjson.JSONObject obj = healthIndexService.getPatientXT_Json(patient, dateString);
                    if (obj != null) {
                        re.add(obj);
                    }
                }
            }
            result.put("dataList",re);
        }
        else if (type == 2){
            JSONArray re = new JSONArray();
            // 排序
            String countSql =" select count(distinct user,value1,value2,value3,value4,value5,value6,value7,type,record_date,sort_date ) from wlyy_patient_health_index a where a.user = '"+patient+"' " +
                    " and a.type=2 and a.device_sn='"+deviceSn+"' and a.del = '1'  ";
            count = jdbcTemplate.queryForObject(countSql,Long.class);
            String sql = "SELECT " +
                    "MIN(id) id" +
                    ", user" +
                    ",value1" +
                    ",value2" +
                    ",value3" +
                    ",value4" +
                    ",value5" +
                    ",value6" +
                    ",value7" +
                    ",device_sn" +
                    ",type" +
                    ",record_date" +
                    ",sort_date" +
                    ",czrq as createDate" +
                    ",min(czrq) czrq " +
                    " from wlyy_patient_health_index " +
                    " WHERE `user` = '" + patient + "' " +
                    " and type =" + type +" "+
                    " and device_sn='"+deviceSn+"' "+
                    " and del = '1' " +
                    " GROUP BY user,value1,value2,value3,value4,value5,value6,value7,type,record_date,sort_date " +
                    " order by record_date desc ,sort_date desc limit " + pageRequest.getOffset() + " ," + pageRequest.getPageSize() + " ";
            List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
            for (Map<String, Object> map : list) {
                JSONObject json = new JSONObject();
                json.put("id", map.get("id"));
                json.put("healthindexid", map.get("id"));
                json.put("patient", map.get("user"));
                json.put("value1", map.get("value1"));
                json.put("value2", map.get("value2"));
                json.put("value3", map.get("value3"));
                json.put("value4", map.get("value4"));
                json.put("value5", map.get("value5"));
                json.put("value6", map.get("value6"));
                json.put("value7", map.get("value7"));
                json.put("deviceSn", map.get("device_sn") == null ? "" : map.get("device_sn"));
                json.put("type", map.get("type"));
                Date date = (Date) map.get("record_date");
                if (type == 2) {
                    json.put("date", DateUtil.dateToStr(date, DateUtil.YYYY_MM_DD_HH_MM_SS));
                } else {
                    json.put("date", DateUtil.dateToStr(date, DateUtil.YYYY_MM_DD));
                }
                json.put("sortDate", map.get("sort_date"));
                json.put("czrq", map.get("czrq"));
                //是否为补传数据(设备上传且测量时间和创建时间不匹配)
                Date recordDate = (Date)map.get("record_date");
                Date createDate = (Date) map.get("createDate");
                String recordTime = DateUtil.dateToStr(recordDate,DateUtil.YYYY_MM_DD);
                String createTime = DateUtil.dateToStr(createDate,DateUtil.YYYY_MM_DD);
                if (map.get("device_sn") == null){
                    json.put("isSupplement",0);
                }else {
                    if (recordTime.compareToIgnoreCase(createTime)==0){
                        json.put("isSupplement",0);
                    }else {
                        json.put("isSupplement",1);
                    }
                }
                re.put(json);
            }
            result.put("dataList",re);
        }
        result.put("total",count);
        result.put("page",page+1);
        result.put("pageSize",pageSize);
        result.put("dataList",list);
        return result;
    }
@ -1024,15 +1115,23 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
                " and ord.patient='"+patient+"' " +
                "UNION All " +
                "select count(ord.id)  as total from base_security_monitoring_order ord  where ord.device_sn='"+deviceSn+"' " +
                " and ord.patient='"+patient+"' )A ";
        long count = jdbcTemplate.queryForObject(sqlCount,long.class);
                " {{patient}} )A ";
        String sql = "select '20' as OrderType,ord.id,ord.patient,ord.patient_name,ord.doctor,ord.status,ord.doctor_name," +
                "'紧急呼叫' as serve_desc,DATE_FORMAT(ord.create_time,'%Y-%m-%d %H:%i:%S') create_time " +
                "from base_emergency_assistance_order ord  where ord.device_sn='"+deviceSn+"' and ord.patient='"+patient+"' " +
                "UNION " +
                "select  '22' as 'OrderType',ord.id,ord.patient,ord.patient_name,ord.doctor,ord.status,ord.doctor_name," +
                "ord.serve_desc,DATE_FORMAT(ord.create_time,'%Y-%m-%d %H:%i:%S') create_time from base_security_monitoring_order ord " +
                " where ord.device_sn='"+deviceSn+"' and ord.patient='"+patient+"'  order by create_time desc limit "+page*pageSize+","+pageSize;
                " where ord.device_sn='"+deviceSn+"' {{patient}}  order by create_time desc limit "+page*pageSize+","+pageSize;
        if (StringUtils.isNotBlank(patient)){
            sqlCount = sqlCount.replace("{{patient}}","and ord.patient='"+patient+"' ");
            sql = sql.replace("{{patient}}","and ord.patient='"+patient+"' ");
        }else {
            sqlCount = sqlCount.replace("{{patient}}"," ");
            sql = sql.replace("{{patient}}"," ");
        }
        long count = jdbcTemplate.queryForObject(sqlCount,long.class);
        List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
        result.put("total",count);
        result.put("page",page+1);
@ -1202,7 +1301,9 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
     * @param time_begin YYYYMMDD 日期
     * @return
     */
    public com.alibaba.fastjson.JSONObject getX1Locations(String deviceSn,String time_begin){
    public JSONArray getX1Locations(String deviceSn,String time_begin){
        JSONArray result = new JSONArray();
        String url = AqgConfig.X1_locations+"?device="+deviceSn+"&depth="+1+"&rows_per_page="+300;
        if (StringUtils.isNotBlank(time_begin)){
@ -1212,8 +1313,23 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
        headers.put("Accept", MediaType.APPLICATION_JSON.toString());
        headers.put("Cookie", getCookie());
        String  responseStr = httpClientUtil.get(url,"utf-8",headers);
        com.alibaba.fastjson.JSONObject result = JSON.parseObject(responseStr);
        com.alibaba.fastjson.JSONObject resObj = JSON.parseObject(responseStr);
        if (resObj.getBooleanValue("success")){
            com.alibaba.fastjson.JSONArray arr = resObj.getJSONArray("objs");
            arr.sort(Comparator.comparing(obj -> ((com.alibaba.fastjson.JSONObject) obj).getJSONObject("created_at").getLong("$date")));
            for (int i=0;i<arr.size();i++){
                try {
                    com.alibaba.fastjson.JSONObject obj = arr.getJSONObject(i);
                    com.alibaba.fastjson.JSONArray pointArr = obj.getJSONObject("point").getJSONArray("coordinates");
                    Double lon = pointArr.getDouble(0);
                    Double lat = pointArr.getDouble(1);
                    com.alibaba.fastjson.JSONObject pointJson = gpsUtil.gcj02_To_Bd09(lat,lon);
                    result.put(pointJson);
                }catch (Exception e){
                }
            }
        }
        return result;
    }

+ 1 - 1
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/PatientHealthIndexService.java

@ -245,7 +245,7 @@ public class PatientHealthIndexService extends BaseJpaService<DevicePatientHealt
     *
     * @return
     */
    private com.alibaba.fastjson.JSONObject getPatientXT_Json(String patient, String dateString) {
    public com.alibaba.fastjson.JSONObject getPatientXT_Json(String patient, String dateString) {
        com.alibaba.fastjson.JSONObject obj = new com.alibaba.fastjson.JSONObject();
        obj.put("user", patient);
        boolean hadData = false;

+ 71 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/YunXunDeviceService.java

@ -0,0 +1,71 @@
package com.yihu.jw.care.service.device;
import com.yihu.jw.util.http.HttpClientUtil;
import com.yihu.jw.utils.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
 * Created with IntelliJ IDEA.
 * 云芯拐杖设备对接
 * @Author: yeshijie
 * @Date: 2021/8/27
 * @Description:
 */
@Service
public class YunXunDeviceService {
    private static Logger logger = LoggerFactory.getLogger(YunXunDeviceService.class);
    @Autowired
    private HttpClientUtil httpClientUtil;
    /**
     * 设置紧急联系人
     * @param sn
     * @param phone1
     * @param phone2
     * @param phone3
     */
    public void setSos(String sn,String phone1,String phone2,String phone3){
        if(StringUtil.isBlank(phone1)){
            return;
        }
        //[IC*334588000000156*0027*SOS,00000000000,00000000000]
        String order = "SOS,"+phone1;
        if(!StringUtil.isBlank(phone2)){
            order += ","+phone2;
        }
        if(!StringUtil.isBlank(phone3)){
            order += ","+phone3;
        }
        String instruction = "[IC*"+sn+"*"+hex10To16(order.length())+"]";
        sendInstruction(sn,instruction);
    }
    /**
     * 发送指令接口
     * @param instruction
     */
    public void sendInstruction(String sn,String instruction){
        try {
            String url = "http://117.24.13.79:43210/yunxin/sendMessage?deviceSN="+sn+"&message="+instruction;
            String response = httpClientUtil.get(url,"UTF-8");
            logger.info("sendInstruction="+response);
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    /**
     * 保留4位 十进制转十六进制
     * @param ten
     * @return
     */
    public String hex10To16(int ten){
        return String.format("%04x",ten);
    }
}

+ 10 - 3
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/security/SecurityMonitoringOrderService.java

@ -1413,9 +1413,16 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
        }
    }
    public void preventFire(JSONObject result,String patient,boolean video){
    public void preventFire(JSONObject result,String patient,String deviceSn,boolean video){
        String sql = "SELECT r.value from wlyy_patient_device pd,base_device_health_index r " +
                "WHERE pd.device_sn = r.device_sn and pd.`user` = '"+patient+"' ";
                "WHERE pd.device_sn = r.device_sn  ";
        if (StringUtils.isNotBlank(patient)){
            sql+=" and pd.`user` = '"+patient+"' ";
        }
        if (StringUtils.isNotBlank(deviceSn)){
            sql+=" and  r.device_sn = '"+deviceSn+"' ";
        }
        sql += " and pd.category_code='15' ORDER BY r.create_time desc LIMIT 1";
        List<Map<String,Object>> list1 = jdbcTemplate.queryForList(sql);
@ -1492,7 +1499,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
            preventOutOfBed(result, patient,true,null);
        }
        if ("preventFire".equals(topicItem)||StringUtils.isBlank(topicItem)){
            preventFire(result, patient,true);
            preventFire(result, patient,null,true);
        }
        if ("preventGasLeakage".equals(topicItem)||StringUtils.isBlank(topicItem)){
            preventGasLeakage(result, patient,true);

+ 1 - 1
svr/svr-cloud-device/src/main/java/com/yihu/jw/care/service/DeviceUploadService.java

@ -446,7 +446,7 @@ public class DeviceUploadService {
            String order = tmp[3];
            if(order.contains(",")){
                String tmp1[] = order.split(",");
                if("UD".equals(tmp1[0])){
                if("UD".equals(tmp1[0])||"CRUD".equals(tmp1[0])){
                    //处理位置信息
                    String lat,lon;
                    if("A".equals(tmp1[4])){

+ 1 - 1
svr/svr-cloud-device/src/main/java/com/yihu/jw/care/service/HvDeviceService.java

@ -172,7 +172,7 @@ public class HvDeviceService {
            String deviceStatus = jsonObject.getString("deviceStatus");
            List<HvDeviceRecord> list = hvdeviceRecordDao.findByDeviceId(deviceID);
            if(list.size()>0){
                updContactStatus(list.get(0).getDeviceSn(),0);
                updContactStatus(list.get(0).getDeviceSn(),Integer.valueOf(deviceStatus));
            }
        }
    }

+ 35 - 3
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/patient/PatientNoLoginEndPoint.java

@ -2567,15 +2567,47 @@ public class PatientNoLoginEndPoint extends EnvelopRestEndpoint {
        }
    }
    /*  =================================疫情防控代码开始========================================================    */
    @GetMapping(value = BaseHospitalRequestMapping.PatientNoLogin.confirmedList)
    @ApiOperation(value = "确诊列表", notes = "确诊列表")
    public ListEnvelop confirmedList(){
    public ListEnvelop confirmedList(@ApiParam(name = "name", value = "姓名")
                                         @RequestParam(value = "name",required = false)String name,
                                     @ApiParam(name = "localCaseFlag", value = "本地或者外地")
                                         @RequestParam(value = "localCaseFlag",required = false)String localCaseFlag){
        try {
            return success(yqfkService.confirmedList());
            return success(yqfkService.confirmedList(name,localCaseFlag));
        } catch (Exception e){
            return  failedListEnvelopException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.PatientNoLogin.yqfkStatisticsHead)
    @ApiOperation(value = "头部确诊数量", notes = "头部确诊数量")
    public ObjEnvelop yqfkStatisticsHead(@ApiParam(name = "startTime", value = "开始时间")
                                              @RequestParam(value = "startTime",required = false)String startTime,
                                          @ApiParam(name = "endTime", value = "结束时间")
                                          @RequestParam(value = "endTime",required = false)String endTime){
        try {
            return success(yqfkService.yqfkStatisticsHead(startTime,endTime));
        } catch (Exception e){
            return  failedObjEnvelopException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.PatientNoLogin.yqfkStatisticsTail)
    @ApiOperation(value = "密接数量统计", notes = "密接数量统计")
    public ObjEnvelop yqfkStatisticsTail(@ApiParam(name = "patientId", value = "患者id")
                                         @RequestParam(value = "patientId",required = false)String patientId,
                                         @ApiParam(name = "endTime", value = "结束时间")
                                         @RequestParam(value = "endTime",required = false)String endTime){
        try {
            return success(yqfkService.yqfkStatisticsTail(patientId,endTime));
        } catch (Exception e){
            return  failedObjEnvelopException(e);
        }
    }
    /*  =================================疫情防控代码结束========================================================    */
}

+ 413 - 0
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/thirdUpload/ThirdUploadEndpoint.java

@ -0,0 +1,413 @@
package com.yihu.jw.hospital.endpoint.thirdUpload;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.jw.entity.base.dict.BaseFrequencyDictDO;
import com.yihu.jw.entity.hospital.article.KnowledgeCategoryDO;
import com.yihu.jw.entity.thirdUpload.*;
import com.yihu.jw.restmodel.iot.device.IotDeviceImportVO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.ListEnvelop;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import com.yihu.jw.rm.hospital.BaseHospitalRequestMapping;
import com.yihu.jw.thirdUpload.UpnsOrganBaseDao;
import com.yihu.jw.thirdUpload.service.*;
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.*;
import java.util.ArrayList;
import java.util.List;
@RestController
@RequestMapping("/monitoringPlatform")
@Api(value = "监管平台数据增删改查", description = "监管平台数据增删改查", tags = {"监管平台数据增删改查"})
public class ThirdUploadEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private ObjectMapper objectMapper;
    @Autowired
    private AchnsDoctorRecordService achnsDoctorRecordService;
    @Autowired
    private UpAppointmentOnlineService upAppointmentOnlineService;
    @Autowired
    private UpMedicalOnlineService upMedicalOnlineService;
    @Autowired
    private UpnsDoctorRecordService upnsDoctorRecordService;
    @Autowired
    private UpnsDoctorScoreService upnsDoctorScoreService;
    @Autowired
    private UpnsOrganBaseService upnsOrganBaseService;
    @PostMapping("/saveAchns")
    @ApiOperation(value = "保存医师唯一标识")
    public Envelop saveAchns(@ApiParam(name = "jsonData", value = "")
                               @RequestParam(name = "jsonData", required = true) String jsonData) throws Exception {
        try {
            List<AchnsDoctorRecordDO> dealList = objectMapper.readValue(jsonData, new TypeReference<List<AchnsDoctorRecordDO>>() {
        });
            achnsDoctorRecordService.saveAchns(dealList);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/deleteAchns")
    @ApiOperation(value = "删除医师唯一标识")
    public Envelop deleteAchns(@ApiParam(name = "id", value = "")
                             @RequestParam(name = "id", required = true) String id) throws Exception {
        try {
            achnsDoctorRecordService.deleteById(id);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findAchnsByCreateTime")
    @ApiOperation(value = "查询医师唯一标识")
    public Envelop findAchnsByCreateTime(@ApiParam(name = "date", value = "yyyy-mm-dd")
                               @RequestParam(name = "date", required = true) String date) throws Exception {
        try {
            return success(achnsDoctorRecordService.findByCreateTime(date));
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findAchnsList")
    @ApiOperation(value = "获取医师唯一标识分类列表")
    public ListEnvelop findAchnsList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
            @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
            @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
            @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize)throws Exception{
        try {
            List<AchnsDoctorRecordDO> list  = achnsDoctorRecordService.search(fields,filters,sorts,page,pageSize);
            return success(list);
        }catch (Exception e){
            return failedListEnvelopException(e);
        }
    }
    @PostMapping("/saveUpApp")
    @ApiOperation(value = "保存网上预约挂号")
    public Envelop saveUpAppointmentOnline(@ApiParam(name = "jsonData", value = "")
                             @RequestParam(name = "jsonData", required = true) String jsonData) throws Exception {
        try {
            List<UpAppointmentOnlineDO> dealList = objectMapper.readValue(jsonData, new TypeReference<List<UpAppointmentOnlineDO>>() {
            });
            upAppointmentOnlineService.saveUpAppointment(dealList);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/deleteUpApp")
    @ApiOperation(value = "删除网上预约挂号")
    public Envelop deleteUpAppointmentOnline(@ApiParam(name = "id", value = "")
                               @RequestParam(name = "id", required = true) String id) throws Exception {
        try {
            upAppointmentOnlineService.deleteById(id);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpAppByCreateTime")
    @ApiOperation(value = "查询网上预约挂号")
    public Envelop findUpAppByCreateTime(@ApiParam(name = "date", value = "yyyy-mm-dd")
                                         @RequestParam(name = "date", required = true) String date) throws Exception {
        try {
            return success(upAppointmentOnlineService.findByCreateTime(date));
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpAppList")
    @ApiOperation(value = "获取网上预约挂号分类列表")
    public ListEnvelop findUpAppList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
            @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
            @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
            @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize)throws Exception{
        try {
            List<UpAppointmentOnlineDO> list  = upAppointmentOnlineService.search(fields,filters,sorts,page,pageSize);
            return success(list);
        }catch (Exception e){
            return failedListEnvelopException(e);
        }
    }
    @PostMapping("/saveUpMedical")
    @ApiOperation(value = "保存在线医技预约")
    public Envelop saveUpMedical(@ApiParam(name = "jsonData", value = "")
                             @RequestParam(name = "jsonData", required = true) String jsonData) throws Exception {
        try {
            List<UpMedicalOnlineDO> dealList = objectMapper.readValue(jsonData, new TypeReference<List<UpMedicalOnlineDO>>() {
            });
            upMedicalOnlineService.saveUpMedicalOnline(dealList);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/deleteUpMedical")
    @ApiOperation(value = "删除在线医技预约")
    public Envelop deleteUpMedical(@ApiParam(name = "id", value = "")
                               @RequestParam(name = "id", required = true) String id) throws Exception {
        try {
            upMedicalOnlineService.deleteById(id);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpMedicalByCreateTime")
    @ApiOperation(value = "查询在线医技预约")
    public Envelop findUpMedicalByCreateTime(@ApiParam(name = "date", value = "yyyy-mm-dd")
                                         @RequestParam(name = "date", required = true) String date) throws Exception {
        try {
            return success(upMedicalOnlineService.findByCreateTime(date));
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpMedicalList")
    @ApiOperation(value = "获取在线医技预约分类列表")
    public ListEnvelop findUpMedicalList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
            @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
            @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
            @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize)throws Exception{
        try {
            List<UpMedicalOnlineDO> list  = upMedicalOnlineService.search(fields,filters,sorts,page,pageSize);
            return success(list);
        }catch (Exception e){
            return failedListEnvelopException(e);
        }
    }
    @PostMapping("/saveUpnsDr")
    @ApiOperation(value = "保存医师基本信息")
    public Envelop saveUpnsDr(@ApiParam(name = "jsonData", value = "")
                             @RequestParam(name = "jsonData", required = true) String jsonData) throws Exception {
        try {
            List<UpnsDoctorRecordDO> dealList = objectMapper.readValue(jsonData, new TypeReference<List<UpnsDoctorRecordDO>>() {
            });
            upnsDoctorRecordService.saveUpnsDoctorRecord(dealList);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/deleteUpnsDr")
    @ApiOperation(value = "删除医师基本信息")
    public Envelop deleteUpnsDr(@ApiParam(name = "id", value = "")
                               @RequestParam(name = "id", required = true) String id) throws Exception {
        try {
            upnsDoctorRecordService.deleteById(id);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpnsDrByCreateTime")
    @ApiOperation(value = "查询医师基本信息")
    public Envelop findUpnsDrByCreateTime(@ApiParam(name = "date", value = "yyyy-mm-dd")
                                         @RequestParam(name = "date", required = true) String date) throws Exception {
        try {
            return success(upnsDoctorRecordService.findByCreateTime(date));
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpnsDrList")
    @ApiOperation(value = "获取医师基本信息分类列表")
    public ListEnvelop findUpnsDrList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
            @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
            @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
            @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize)throws Exception{
        try {
            List<UpnsDoctorRecordDO> list  = upnsDoctorRecordService.search(fields,filters,sorts,page,pageSize);
            return success(list);
        }catch (Exception e){
            return failedListEnvelopException(e);
        }
    }
    @PostMapping("/saveUpnsDs")
    @ApiOperation(value = "保存医生评价信息")
    public Envelop saveUpnsDs(@ApiParam(name = "jsonData", value = "")
                             @RequestParam(name = "jsonData", required = true) String jsonData) throws Exception {
        try {
            List<UpnsDoctorScoreDO> dealList = objectMapper.readValue(jsonData, new TypeReference<List<UpnsDoctorScoreDO>>() {
            });
            upnsDoctorScoreService.saveUpnsDoctorScore(dealList);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/deleteUpnsDs")
    @ApiOperation(value = "删除医生评价信息")
    public Envelop deleteUpnsDs(@ApiParam(name = "id", value = "")
                               @RequestParam(name = "id", required = true) String id) throws Exception {
        try {
            upnsDoctorScoreService.deleteById(id);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpnsDsByCreateTime")
    @ApiOperation(value = "查询医生评价信息")
    public Envelop findUpnsDsByCreateTime(@ApiParam(name = "date", value = "yyyy-mm-dd")
                                         @RequestParam(name = "date", required = true) String date) throws Exception {
        try {
            return success(upnsDoctorScoreService.findByCreateTime(date));
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpnsDsList")
    @ApiOperation(value = "获取医生评价信息分类列表")
    public ListEnvelop findUpnsDsList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
            @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
            @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
            @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize)throws Exception{
        try {
            List<UpnsDoctorScoreDO> list  = upnsDoctorScoreService.search(fields,filters,sorts,page,pageSize);
            return success(list);
        }catch (Exception e){
            return failedListEnvelopException(e);
        }
    }
    @PostMapping("/saveUpnsOrg")
    @ApiOperation(value = "保存医院基本信息")
    public Envelop saveUpnsOrg(@ApiParam(name = "jsonData", value = "")
                             @RequestParam(name = "jsonData", required = true) String jsonData) throws Exception {
        try {
            List<UpNsOrganBaseDO> dealList = objectMapper.readValue(jsonData, new TypeReference<List<UpNsOrganBaseDO>>() {
            });
            upnsOrganBaseService.saveUpnsOrganBase(dealList);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/deleteUpnsOrg")
    @ApiOperation(value = "删除医院基本信息")
    public Envelop deleteUpnsOrg(@ApiParam(name = "id", value = "")
                               @RequestParam(name = "id", required = true) String id) throws Exception {
        try {
            upnsOrganBaseService.deleteById(id);
            return success("操作成功");
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpnsOrgByCreateTime")
    @ApiOperation(value = "查询医院基本信息")
    public Envelop findUpnsOrgByCreateTime(@ApiParam(name = "date", value = "yyyy-mm-dd")
                                         @RequestParam(name = "date", required = true) String date) throws Exception {
        try {
            return success(upnsOrganBaseService.findByCreateTime(date));
        }catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping("/findUpnsOrgList")
    @ApiOperation(value = "获取医院基本信息分类列表")
    public ListEnvelop findUpnsOrgList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
            @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
            @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
            @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize)throws Exception{
        try {
            List<UpNsOrganBaseDO> list  = upnsOrganBaseService.search(fields,filters,sorts,page,pageSize);
            return success(list);
        }catch (Exception e){
            return failedListEnvelopException(e);
        }
    }
}