| 
					
				 | 
			
			
				@ -1,40 +1,53 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				package com.yihu.jw.healthUpload.service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONArray; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.sun.org.apache.bcel.internal.generic.NEW; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.dict.dao.DictHospitalDeptDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.doctor.dao.BaseDoctorDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.doctor.dao.BaseDoctorHospitalDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.doctor.dao.BaseDoctorRoleDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.dict.DictHospitalDeptDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.doctor.BaseDoctorDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.doctor.BaseDoctorRoleDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.wx.WxAccessTokenDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.wx.WxPushLogDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.wx.WxTemplateConfigDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.healthUpload.BaseDoctorHealthUploadDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.healthUpload.BaseDoctorMemberDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.hospital.DmHospitalDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.hospital.dict.BaseDeptDict; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.healthUpload.dao.BaseDoctorHealthUploadDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.healthUpload.dao.BaseDoctorMemberDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.restmodel.base.dict.DictHospitalDeptVO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.restmodel.web.MixEnvelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.common.PwdUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.date.DateUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.idcard.IdCardUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.wechat.WeixinMessagePushUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.utils.StringUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.utils.hibernate.HibenateUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.wechat.dao.WxPushLogDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.wechat.dao.WxTemplateConfigDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.wechat.service.WxAccessTokenService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.mysql.query.BaseJpaService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import jxl.format.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import jxl.write.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.collections.map.HashedMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.Logger; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.LoggerFactory; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.BeanUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.data.domain.PageRequest; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import javax.print.DocFlavor; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import javax.transaction.Transactional; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.io.IOException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.io.OutputStream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.text.DecimalFormat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.ArrayList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.Date; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.Map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				@Service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				@Transactional 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -50,26 +63,40 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private BaseDoctorHospitalDao baseDoctorHospitalDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private DictHospitalDeptDao dictHospitalDeptDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private BaseDoctorRoleDao doctorRoleDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private WeixinMessagePushUtils weixinMessagePushUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private WxTemplateConfigDao wxTemplateConfigDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private WxAccessTokenService wxAccessTokenService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private WxPushLogDao wxPushLogDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private HibenateUtils hibenateUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 新增医生成员关系 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param ids 逗号隔开 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param ids      逗号隔开 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<BaseDoctorMemberDO> saveAndCreateMember(String doctorId,String ids){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String str[] =ids.split(","); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<BaseDoctorMemberDO> saveAndCreateMember(String doctorId, String ids) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String str[] = ids.split(","); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorMemberDO> baseDoctorMemberDOList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<str.length;i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i < str.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String memberId = str[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            BaseDoctorMemberDO memberDO = doctorMemberDao.findByDoctorIdAndMemberIdAndDel(doctorId,memberId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (memberDO==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            BaseDoctorMemberDO memberDO = doctorMemberDao.findByDoctorIdAndMemberIdAndDel(doctorId, memberId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (memberDO == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                BaseDoctorMemberDO baseDoctorMemberDO = new BaseDoctorMemberDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO.setDel(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO.setDoctorId(doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO.setMemberId(memberId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO.setUpdateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO= doctorMemberDao.save(baseDoctorMemberDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDO = doctorMemberDao.save(baseDoctorMemberDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorMemberDOList.add(baseDoctorMemberDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -78,60 +105,62 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 查询医生的成员列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<BaseDoctorMemberDO> selectByDoctorId(String doctorId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       List<BaseDoctorMemberDO> baseDoctorMemberDOList = doctorMemberDao.findByDoctorIdAndDel(doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorMemberDO memberDO1 = doctorMemberDao.findByDoctorIdAndMemberIdAndDel(doctorId,doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<BaseDoctorMemberDO> selectByDoctorId(String doctorId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorMemberDO> baseDoctorMemberDOList = doctorMemberDao.findByDoctorIdAndDel(doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorMemberDO memberDO1 = doctorMemberDao.findByDoctorIdAndMemberIdAndDel(doctorId, doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //添加本人 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (memberDO1==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (memberDO1 == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            BaseDoctorMemberDO baseDoctorMemberDO = new BaseDoctorMemberDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO.setDel(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO.setDoctorId(doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO.setMemberId(doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO.setUpdateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO= doctorMemberDao.save(baseDoctorMemberDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO = doctorMemberDao.save(baseDoctorMemberDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (BaseDoctorMemberDO memberDO : baseDoctorMemberDOList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(memberDO.getMemberId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (baseDoctorDO != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                memberDO.setBaseDoctorDO(baseDoctorDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       for (BaseDoctorMemberDO memberDO:baseDoctorMemberDOList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(memberDO.getMemberId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if (baseDoctorDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               memberDO.setBaseDoctorDO(baseDoctorDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       return baseDoctorMemberDOList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return baseDoctorMemberDOList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 查询医生的成员列表带有已上报次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<BaseDoctorMemberDO> selectCountByDoctorId(String doctorId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<BaseDoctorMemberDO> selectCountByDoctorId(String doctorId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorMemberDO> baseDoctorMemberDOList = doctorMemberDao.findByDoctorIdAndDel(doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (BaseDoctorMemberDO memberDO:baseDoctorMemberDOList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (BaseDoctorMemberDO memberDO : baseDoctorMemberDOList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(memberDO.getMemberId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (baseDoctorDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (baseDoctorDO != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                memberDO.setBaseDoctorDO(baseDoctorDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<BaseDoctorHealthUploadDO> baseDoctorHealthUploadDOList = baseDoctorHealthUploadDao.findByDoctorIdAndConsumer(memberDO.getMemberId(),doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            memberDO.setCount(baseDoctorHealthUploadDOList.size()+""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<BaseDoctorHealthUploadDO> baseDoctorHealthUploadDOList = baseDoctorHealthUploadDao.findByDoctorIdAndConsumer(memberDO.getMemberId(), doctorId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            memberDO.setCount(baseDoctorHealthUploadDOList.size() + ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return baseDoctorMemberDOList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 查询某一个成员id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param id 成员id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorMemberDO selectById(String id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorMemberDO selectById(String id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorMemberDO baseDoctorMemberDO = doctorMemberDao.findById(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(baseDoctorMemberDO.getMemberId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (baseDoctorDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (baseDoctorDO != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorMemberDO.setBaseDoctorDO(baseDoctorDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorHospitalDO> doctorHospitalDOS = baseDoctorHospitalDao.findByDoctorCode(baseDoctorMemberDO.getMemberId()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -141,10 +170,11 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 删除某个成员 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param id 成员id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorMemberDO delDoctorMember(String id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorMemberDO delDoctorMember(String id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorMemberDO baseDoctorMemberDO = doctorMemberDao.findById(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        baseDoctorMemberDO.setDel(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        baseDoctorMemberDO = doctorMemberDao.save(baseDoctorMemberDO); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -153,12 +183,56 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 提交健康信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param baseDoctorHealthUploadDO 健康信息实体类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorHealthUploadDO createHealthUploadInfo(BaseDoctorHealthUploadDO baseDoctorHealthUploadDO){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorHealthUploadDO createHealthUploadInfo(BaseDoctorHealthUploadDO baseDoctorHealthUploadDO) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        baseDoctorHealthUploadDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return baseDoctorHealthUploadDao.save(baseDoctorHealthUploadDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        baseDoctorHealthUploadDO = baseDoctorHealthUploadDao.save(baseDoctorHealthUploadDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorHospitalDO> doctorHospitalDOS = baseDoctorHospitalDao.findByDoctorCode(baseDoctorHealthUploadDO.getDoctorId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (baseDoctorHealthUploadDO.getHealthCode() == 2 || baseDoctorHealthUploadDO.getHealthCode() == 3 || Double.parseDouble(baseDoctorHealthUploadDO.getTemperature()) >= 37.3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    || baseDoctorHealthUploadDO.getIsSymptoms() == 1 || baseDoctorHealthUploadDO.getIsEpidemic() == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<BaseDoctorRoleDO> roleDOS = doctorRoleDao.findByRoleCode("admin"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                for (BaseDoctorRoleDO roleDO : roleDOS) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    BaseDoctorDO doctorDO = baseDoctorDao.findById(roleDO.getDoctorCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (doctorDO != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (!StringUtils.isNoneBlank(doctorDO.getOpenid())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            logger.info("该用户" + doctorDO.getName() + "没有openid,无法推送模版消息,用户ID:" + doctorDO.getId() + "wechatId:xm_mlwyy_wx"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            WxTemplateConfigDO config = wxTemplateConfigDao.findByWechatIdAndTemplateNameAndSceneAndStatus("xm_mlwyy_wx", "template_unusual_notice", "jkzlyctxtz", 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            WxTemplateConfigDO newConfig = new WxTemplateConfigDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            BeanUtils.copyProperties(config, newConfig); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            if (doctorHospitalDOS != null && doctorHospitalDOS.size() != 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                newConfig.setFirst(config.getFirst().replace("key1", doctorHospitalDOS.get(0).getDeptName()).replace("key2", baseDoctorHealthUploadDO.getDoctorName())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                newConfig.setFirst(config.getFirst().replace("key1的", "").replace("key2", baseDoctorHealthUploadDO.getDoctorName())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            newConfig.setKeyword2(baseDoctorHealthUploadDO.getDoctorName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            newConfig.setKeyword3(DateUtil.getStringDate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            newConfig.setUrl("https://www.cityihealth.com/hlwyy/healthMonitoring/#/health/commit?id=" + baseDoctorHealthUploadDO.getId() + "&docCode=" + baseDoctorHealthUploadDO.getDoctorId() + ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            WxAccessTokenDO wxAccessTokenDO = wxAccessTokenService.getWxAccessTokenById("xm_mlwyy_wx"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            logger.info("=======setUrl========" + newConfig.getUrl()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            weixinMessagePushUtils.putWxMsg(wxAccessTokenDO.getAccessToken(), doctorDO.getOpenid(), newConfig); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        //保存发送模板记录, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        WxPushLogDO wxPushLogDO = new WxPushLogDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDO.setOpenid(doctorDO.getOpenid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDO.setReceiver(doctorDO.getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDO.setWechatId("xm_mlwyy_wx"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDO.setReceiverName(doctorDO.getName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDO.setScene("jkzlyctxtz"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        wxPushLogDao.save(wxPushLogDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } catch (Exception e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            e.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return baseDoctorHealthUploadDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -167,31 +241,32 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorId 医生id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public MixEnvelop selectHealthUploadInfoByDoctorId(String doctorId,String startDate,String endDate,Integer page,Integer pageSize){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        PageRequest pageRequest = new PageRequest(page-1,pageSize); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public MixEnvelop selectHealthUploadInfoByDoctorId(String doctorId, String startDate, String endDate, Integer page, Integer pageSize) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        PageRequest pageRequest = new PageRequest(page - 1, pageSize); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        MixEnvelop mixEnvelop = new MixEnvelop(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorHealthUploadDO> list = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date startTime = DateUtil.strToDateLong(startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date endTime = DateUtil.strToDateLong(endDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list = baseDoctorHealthUploadDao.selectHealthUploadInfoByDoctorIdAndDate(doctorId,startTime,endTime,pageRequest); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list =baseDoctorHealthUploadDao.selectHealthUploadInfoByDoctorId(doctorId,pageRequest); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list = baseDoctorHealthUploadDao.selectHealthUploadInfoByDoctorIdAndDate(doctorId, startTime, endTime, pageRequest); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list = baseDoctorHealthUploadDao.selectHealthUploadInfoByDoctorId(doctorId, pageRequest); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        mixEnvelop.setCurrPage(page); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        mixEnvelop.setPageSize(pageSize); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        mixEnvelop.setDetailModelList(list); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        mixEnvelop.setTotalCount(list==null?0:list.size()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        mixEnvelop.setTotalCount(list == null ? 0 : list.size()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return mixEnvelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorHealthUploadDO selectHealthInfoById(String id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorHealthUploadDO selectHealthInfoById(String id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorHealthUploadDO baseDoctorHealthUploadDO = baseDoctorHealthUploadDao.findById(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return baseDoctorHealthUploadDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 新增加医生信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param photo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param name 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param idcard 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -203,7 +278,7 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param idType 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorDO  saveDoctorInfo(String id,String photo,String name,String idcard,String sex,String mobile,String dept,String deptName,String idCardType,String idType) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorDO saveDoctorInfo(String id, String photo, String name, String idcard, String sex, String mobile, String dept, String deptName, String idCardType, String idType, Integer mark) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorDO baseDoctorDO = new BaseDoctorDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(id)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO = baseDoctorDao.findById(id); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -214,6 +289,7 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setIdcard(idcard); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setSex(Integer.parseInt(sex)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setMobile(mobile); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setMark(mark); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String deptCode = dept; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setChargeType("1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO = baseDoctorDao.save(baseDoctorDO); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -229,7 +305,7 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setDel("1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDao.save(baseDoctorHospitalDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                BaseDoctorHospitalDO baseDoctorHospitalDO = new BaseDoctorHospitalDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setOrgCode("350211A1002"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setOrgName("马銮湾医院"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -246,6 +322,7 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setSex(Integer.parseInt(sex)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setLocked(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setEnabled(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setMark(mark); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String disableFlag = "0"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //互联网医院:1停用,0使用  转 i健康:1正常,0作废 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorDO.setDel("1".equals(disableFlag) ? "0" : "1"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -285,7 +362,7 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setDel("1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDao.save(baseDoctorHospitalDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                BaseDoctorHospitalDO baseDoctorHospitalDO = new BaseDoctorHospitalDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setOrgCode("350211A1002"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                baseDoctorHospitalDO.setOrgName("马銮湾医院"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -302,34 +379,33 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param dept 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param level 1院级管理员,2科室管理员 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param level    1院级管理员,2科室管理员 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject selectHealthByRole(String dept,int level,String doctorId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject selectHealthByRole(String dept, int level, String doctorId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String nowDate = DateUtil.getStringDateShort(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //今日本人提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String benrenSql = "select count(1) as total from base_doctor_health_upload where consumer='"+doctorId+"' and consumer in(doctor_id) and  create_time >='"+nowDate+" 00:00:00' and create_time<='"+nowDate+" 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String benrenSql = "select count(1) as total from base_doctor_health_upload where consumer='" + doctorId + "' and consumer in(doctor_id) and  create_time >='" + nowDate + " 00:00:00' and create_time<='" + nowDate + " 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //今日提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String personSql = "select count(1) as total from base_doctor_health_upload where consumer='"+doctorId+"' and  create_time >='"+nowDate+" 00:00:00' and create_time<='"+nowDate+" 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String personSql = "select count(1) as total from base_doctor_health_upload where consumer='" + doctorId + "' and  create_time >='" + nowDate + " 00:00:00' and create_time<='" + nowDate + " 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //代上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String daishangbaoSql = "select count(1) as total from base_doctor_health_upload where consumer='"+doctorId+"' and consumer not in(doctor_id)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String daishangbaoSql = "select count(1) as total from base_doctor_health_upload where consumer='" + doctorId + "' and consumer not in(doctor_id)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //本人上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String benrenshangbaoSql = "select count(1) as total from base_doctor_health_upload where consumer='"+doctorId+"' and consumer in(doctor_id)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String doctorSql =""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String benrenshangbaoSql = "select count(1) as total from base_doctor_health_upload where consumer='" + doctorId + "' and consumer in(doctor_id)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String doctorSql = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (level==1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (level == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql =" select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql = " select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //今日上报人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = "select COUNT(DISTINCT d.doctor_id) as \"total\" from base_doctor_health_upload d where 1=1 and d.create_time >='"+nowDate+" 00:00:00' and d.create_time<='"+nowDate+" 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (level==2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = "select COUNT(DISTINCT d.doctor_id) as \"total\" from base_doctor_health_upload d where 1=1 and d.create_time >='" + nowDate + " 00:00:00' and d.create_time<='" + nowDate + " 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else if (level == 2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           doctorSql =" select COUNT(1) as \"total\" from base_doctor d where d.del=1 and id IN (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '"+dept+"' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql = " select COUNT(1) as \"total\" from base_doctor d where d.del=1 and id IN (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + dept + "' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //今日上报人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = "select COUNT(DISTINCT d.doctor_id) as \"total\" from base_doctor_health_upload d where 1=1 and doctor_id in (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '"+dept+"' and dh.del=1 ) and d.create_time >='"+nowDate+" 00:00:00' and d.create_time<='"+nowDate+" 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = "select COUNT(DISTINCT d.doctor_id) as \"total\" from base_doctor_health_upload d where 1=1 and doctor_id in (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + dept + "' and dh.del=1 ) and d.create_time >='" + nowDate + " 00:00:00' and d.create_time<='" + nowDate + " 23:59:59'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //今日提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int personTotal = 0; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -343,56 +419,56 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int sqlTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //今日未上报人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int notUploadTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> personMap = jdbcTemplate.queryForMap(personSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (personMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (personMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> personMap = jdbcTemplate.queryForMap(personSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (personMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (personMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                personTotal = Integer.parseInt(personMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> daishangbaoMap = jdbcTemplate.queryForMap(daishangbaoSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (daishangbaoMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (daishangbaoMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> daishangbaoMap = jdbcTemplate.queryForMap(daishangbaoSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (daishangbaoMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (daishangbaoMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                daishangbaoTotal = Integer.parseInt(daishangbaoMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> benrenshangbaoMap = jdbcTemplate.queryForMap(benrenshangbaoSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (benrenshangbaoMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (benrenshangbaoMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> benrenshangbaoMap = jdbcTemplate.queryForMap(benrenshangbaoSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (benrenshangbaoMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (benrenshangbaoMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                benrenshangbaoTotal = Integer.parseInt(benrenshangbaoMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> doctorMap = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (doctorMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (doctorMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> doctorMap = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (doctorMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (doctorMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorTotal = Integer.parseInt(doctorMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> sqlMap = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (sqlMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (sqlMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> sqlMap = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (sqlMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (sqlMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlTotal = Integer.parseInt(sqlMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int benrenTotal=0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> benrenMap = jdbcTemplate.queryForMap(benrenSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (benrenMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (benrenMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int benrenTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> benrenMap = jdbcTemplate.queryForMap(benrenSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (benrenMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (benrenMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                benrenTotal = Integer.parseInt(benrenMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("personTotal",personTotal);//今日上报人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("daishangbaoTotal",daishangbaoTotal);//代上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("benrenshangbaoTotal",benrenshangbaoTotal);//已上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("doctorTotal",doctorTotal);//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("sqlTotal",sqlTotal);//今日上报人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("notUploadTotal",doctorTotal-sqlTotal);//今日未上报人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("benrenTotal",benrenTotal);//今日本人提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("personTotal", personTotal);//今日上报人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("daishangbaoTotal", daishangbaoTotal);//代上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("benrenshangbaoTotal", benrenshangbaoTotal);//已上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("doctorTotal", doctorTotal);//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("sqlTotal", sqlTotal);//今日上报人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("notUploadTotal", doctorTotal - sqlTotal);//今日未上报人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("benrenTotal", benrenTotal);//今日本人提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return object; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -401,103 +477,102 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param dept 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param idType 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param status 上报状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param state 健康状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param status    上报状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param state     健康状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param startDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject selectHeaderTotal(String dept,String idType,String status,String state,String startDate,String endDate,String name){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject object =new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String day = DateUtil.getTwoDay(endDate,startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String doctorSql =" select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject selectHeaderTotal(String dept, String idType, String status, String state, String startDate, String endDate, String name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String day = DateUtil.getTwoDay(endDate, startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String doctorSql = " select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer total = 0;//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "select COUNT(DISTINCT d.doctor_id) as \"total\" from base_doctor_health_upload d where 1=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String deptCondition = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(dept)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptCondition +=" (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '"+dept+"' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(dept)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptCondition += " (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + dept + "' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String idTypeCondition = " "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idType)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            idTypeCondition +="  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '"+idType+"')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idType)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            idTypeCondition += "  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '" + idType + "')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql+=" and d.id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql += " and d.id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql+=" and d.id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql += " and d.id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql+=" and d.name like '%"+name+"%' " ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorSql += " and d.name like '%" + name + "%' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> map = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> map = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String doctorTotal = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (map!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             doctorTotal = map.get("total").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (map != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            doctorTotal = map.get("total").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(doctorTotal)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(doctorTotal)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (!day.equalsIgnoreCase("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                total = Integer.parseInt(doctorTotal)*Integer.parseInt(day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                total= Integer.parseInt(doctorTotal); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (!day.equalsIgnoreCase("0")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                total = Integer.parseInt(doctorTotal) * Integer.parseInt(day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                total = Integer.parseInt(doctorTotal); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer yishangbaoTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer weishangbaoTotal =0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer weishangbaoTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer zhengchangTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer yichangTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(state)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (state.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql +=" and (d.health_code not in(2,3) and CAST(d.temperature as DECIMAL)<37.3 and  d.is_symptoms=2 and d.is_epidemic=2) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else if (state.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql +=" and (d.health_code in(2,3) OR CAST(d.temperature as DECIMAL)>=37.3 OR  d.is_symptoms=1 OR d.is_epidemic=1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(state)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (state.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and (d.health_code not in(2,3) and CAST(d.temperature as DECIMAL)<37.3 and  d.is_symptoms=2 and d.is_epidemic=2) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else if (state.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and (d.health_code in(2,3) OR CAST(d.temperature as DECIMAL)>=37.3 OR  d.is_symptoms=1 OR d.is_epidemic=1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql+=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql+=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //已上传 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> yishangchaungMap = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (yishangchaungMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yishangchaungMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> yishangchaungMap = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (yishangchaungMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yishangchaungMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                yishangbaoTotal = Integer.parseInt(yishangchaungMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //未上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        weishangbaoTotal=total-yishangbaoTotal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        weishangbaoTotal = total - yishangbaoTotal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //上传总次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer shangchuanTotal= 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer shangchuanTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String shangchuanTotalSql = "select COUNT(1) as \"total\" from base_doctor_health_upload d where 1=1  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql +=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql +=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            shangchuanTotalSql += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> shangchuanMap = jdbcTemplate.queryForMap(shangchuanTotalSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (shangchuanMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (shangchuanMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> shangchuanMap = jdbcTemplate.queryForMap(shangchuanTotalSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (shangchuanMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (shangchuanMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotal = Integer.parseInt(shangchuanMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -506,52 +581,52 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //正常、异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sqlZhengchang = "select COUNT(1) as \"total\" from base_doctor_health_upload d where 1=1 and (d.health_code not in(2,3) AND CAST(d.temperature as DECIMAL)<37.3 AND  d.is_symptoms=2 and  d.is_epidemic=2) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang +=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang +=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlZhengchang += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> zhengchangMap = jdbcTemplate.queryForMap(sqlZhengchang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (zhengchangMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (zhengchangMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> zhengchangMap = jdbcTemplate.queryForMap(sqlZhengchang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (zhengchangMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (zhengchangMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                zhengchangTotal = Integer.parseInt(zhengchangMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sqlYichang = "select COUNT(1) as \"total\" from base_doctor_health_upload d where 1=1 and (d.health_code in(2,3) OR CAST(d.temperature as DECIMAL)>=37.3 OR  d.is_symptoms=1 OR d.is_epidemic=1)  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang +=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang +=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlYichang += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> yichangMap = jdbcTemplate.queryForMap(sqlYichang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (yichangMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yichangMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> yichangMap = jdbcTemplate.queryForMap(sqlYichang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (yichangMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yichangMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                yichangTotal = Integer.parseInt(yichangMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("total",total);//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("yishangbaoTotal",yishangbaoTotal);//已上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("weishangbaoTotal",weishangbaoTotal);//未上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("zhengchangTotal",zhengchangTotal);//上报正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("yichangTotal",yichangTotal);//上报异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("shangchuanTotal",shangchuanTotal);//上传总次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("total", total);//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("yishangbaoTotal", yishangbaoTotal);//已上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("weishangbaoTotal", weishangbaoTotal);//未上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("zhengchangTotal", zhengchangTotal);//上报正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("yichangTotal", yichangTotal);//上报异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        object.put("shangchuanTotal", shangchuanTotal);//上传总次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return object; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -561,113 +636,115 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param dept 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param idType 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param status 上报状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param state 健康状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param status    上报状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param state     健康状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param startDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<Map<String,Object>> selectHeaderList(String dept,String idType,String status,String state,String startDate,String endDate,String name){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<Map<String, Object>> selectHeaderList(String dept, String idType, String status, String state, String startDate, String endDate, String name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String deptSql = " select code,name from dict_hospital_dept hd where hd.consult_dept_flag=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptSql += " and hd.code IN(SELECT dha.dept_code FROM base_doctor_hospital dha LEFT JOIN base_doctor da ON da.id=dha.doctor_code where da.name LIKE '%"+name+"%') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptSql += " and hd.code IN(SELECT dha.dept_code FROM base_doctor_hospital dha LEFT JOIN base_doctor da ON da.id=dha.doctor_code where da.name LIKE '%" + name + "%') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(dept)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptSql +=" and hd.code = '"+dept+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(dept)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptSql += " and hd.code = '" + dept + "' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String,Object>> mapList = jdbcTemplate.queryForList(deptSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (Map<String,Object> deptmap:mapList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(status)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String, Object>> mapList = jdbcTemplate.queryForList(deptSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (Map<String, Object> deptmap : mapList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String deptCode = deptmap.get("code").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject object =new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String day = DateUtil.getTwoDay(endDate,startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql =" select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String day = DateUtil.getTwoDay(endDate, startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql = " select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer total = 0;//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String sql = "select COUNT(DISTINCT d.doctor_id) as \"total\" from base_doctor_health_upload d where 1=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String deptCondition = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCode)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                deptCondition +=" (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '"+deptCode+"' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCode)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                deptCondition += " (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + deptCode + "' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String idTypeCondition = " "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idType)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                idTypeCondition +="  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '"+idType+"')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idType)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                idTypeCondition += "  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '" + idType + "')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.name like '%"+name+"%' " ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.name like '%" + name + "%' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> map = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> map = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorTotal = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (map!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (map != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorTotal = map.get("total").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(doctorTotal)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(doctorTotal)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                //总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (!day.equalsIgnoreCase("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    total = Integer.parseInt(doctorTotal)*Integer.parseInt(day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    total= Integer.parseInt(doctorTotal); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (!day.equalsIgnoreCase("0")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    total = Integer.parseInt(doctorTotal) * Integer.parseInt(day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    total = Integer.parseInt(doctorTotal); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer yishangbaoTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer weishangbaoTotal =0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer weishangbaoTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer zhengchangTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer yichangTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(state)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (state.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    sql +=" and (d.health_code not in(2,3) and CAST(d.temperature as DECIMAL)<37.3 and  d.is_symptoms=2 and d.is_epidemic=2) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else if (state.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    sql +=" and (d.health_code in(2,3) OR CAST(d.temperature as DECIMAL)>=37.3 OR  d.is_symptoms=1 OR d.is_epidemic=1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(state)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (state.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    sql += " and (d.health_code not in(2,3) and CAST(d.temperature as DECIMAL)<37.3 and  d.is_symptoms=2 and d.is_epidemic=2) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if (state.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    sql += " and (d.health_code in(2,3) OR CAST(d.temperature as DECIMAL)>=37.3 OR  d.is_symptoms=1 OR d.is_epidemic=1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql+=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql+=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //已上传 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> yishangchaungMap = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yishangchaungMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (yishangchaungMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> yishangchaungMap = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yishangchaungMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (yishangchaungMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    yishangbaoTotal = Integer.parseInt(yishangchaungMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //未上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            weishangbaoTotal=total-yishangbaoTotal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            weishangbaoTotal = total - yishangbaoTotal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //上传总次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer shangchuanTotal= 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer shangchuanTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String shangchuanTotalSql = "select COUNT(1) as \"total\" from base_doctor_health_upload d where 1=1  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql +=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql +=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                shangchuanTotalSql += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> shangchuanMap = jdbcTemplate.queryForMap(shangchuanTotalSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (shangchuanMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (shangchuanMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> shangchuanMap = jdbcTemplate.queryForMap(shangchuanTotalSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (shangchuanMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (shangchuanMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    shangchuanTotal = Integer.parseInt(shangchuanMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -676,53 +753,53 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //正常、异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String sqlZhengchang = "select COUNT(1) as \"total\" from base_doctor_health_upload d where 1=1 and (d.health_code not in(2,3) AND CAST(d.temperature as DECIMAL)<37.3 AND  d.is_symptoms=2 and  d.is_epidemic=2) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang +=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang +=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlZhengchang += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> zhengchangMap = jdbcTemplate.queryForMap(sqlZhengchang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (zhengchangMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (zhengchangMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> zhengchangMap = jdbcTemplate.queryForMap(sqlZhengchang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (zhengchangMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (zhengchangMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    zhengchangTotal = Integer.parseInt(zhengchangMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String sqlYichang = "select COUNT(1) as \"total\" from base_doctor_health_upload d where 1=1 and (d.health_code in(2,3) OR CAST(d.temperature as DECIMAL)>=37.3 OR  d.is_symptoms=1 OR d.is_epidemic=1)  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang +=" and d.create_time >='"+startDate+" 00:00:00' and d.create_time<='"+endDate+" 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(startDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang += " and d.create_time >='" + startDate + " 00:00:00' and d.create_time<='" + endDate + " 23:59:59' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang +=" and d.doctor_id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang += " and d.doctor_id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang +=" and d.doctor_id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang += " and d.doctor_id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang+=" and d.doctor_name like '%"+name+"%'" ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlYichang += " and d.doctor_name like '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> yichangMap = jdbcTemplate.queryForMap(sqlYichang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yichangMap!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (yichangMap.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> yichangMap = jdbcTemplate.queryForMap(sqlYichang); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (yichangMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (yichangMap.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    yichangTotal = Integer.parseInt(yichangMap.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("total",total);//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("yishangbaoTotal",yishangbaoTotal);//已上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("weishangbaoTotal",weishangbaoTotal);//未上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("zhengchangTotal",zhengchangTotal);//上报正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("yichangTotal",yichangTotal);//上报异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("shangchuanTotal",shangchuanTotal);//上传总次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptmap.put("tongyishuju",object); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("total", total);//总人次 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("yishangbaoTotal", yishangbaoTotal);//已上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("weishangbaoTotal", weishangbaoTotal);//未上报 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("zhengchangTotal", zhengchangTotal);//上报正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("yichangTotal", yichangTotal);//上报异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("shangchuanTotal", shangchuanTotal);//上传总次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            deptmap.put("tongyishuju", object); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return mapList; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -739,60 +816,60 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray selectListByTotal(String dept,String idType,String status,String state,String startDate,String endDate,String name){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long days = DateUtil.getDays(endDate,startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray selectListByTotal(String dept, String idType, String status, String state, String startDate, String endDate, String name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long days = DateUtil.getDays(endDate, startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<String> list = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Date startTime = DateUtil.strToDateShort(startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<=days;i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date date = DateUtil.getPreDays(startTime,i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i <= days; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date date = DateUtil.getPreDays(startTime, i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String str = DateUtil.dateToStrShort(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list.add(str); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray array = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<list.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i < list.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String date = list.get(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql =" select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql = " select COUNT(1) as \"total\" from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String deptCondition = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(dept)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                deptCondition +=" (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '"+dept+"' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(dept)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                deptCondition += " (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + dept + "' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String idTypeCondition = " "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idType)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                idTypeCondition +="  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '"+idType+"')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idType)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                idTypeCondition += "  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '" + idType + "')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(status)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (status.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else if (status.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id not in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(status)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (status.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if (status.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id not in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(state)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (state.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' and (d1.health_code not in(2,3) and CAST(d1.temperature as DECIMAL)<37.3 and  d1.is_symptoms=2 and d1.is_epidemic=2))  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else if (state.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1)) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(state)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (state.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' and (d1.health_code not in(2,3) and CAST(d1.temperature as DECIMAL)<37.3 and  d1.is_symptoms=2 and d1.is_epidemic=2))  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if (state.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1)) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql +=" and d.name LIKE  '%"+name+"%' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.name LIKE  '%" + name + "%' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> map = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> map = jdbcTemplate.queryForMap(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer total = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (map!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (map.get("total")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (map != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (map.get("total") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    total = Integer.parseInt(map.get("total").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("time",date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("total",total); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("time", date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("total", total); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            array.add(object); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return array; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -807,97 +884,97 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param state 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param startDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param name total 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param name      total 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray selectListInfoByTotal(String dept,String idType,String status,String state,String startDate,String endDate,String name){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long days = DateUtil.getDays(endDate,startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray selectListInfoByTotal(String dept, String idType, String status, String state, String startDate, String endDate, String name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long days = DateUtil.getDays(endDate, startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<String> list = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Date startTime = DateUtil.strToDateShort(startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<=days;i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date date = DateUtil.getPreDays(startTime,i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i <= days; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date date = DateUtil.getPreDays(startTime, i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String str = DateUtil.dateToStrShort(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list.add(str); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray array = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<list.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i < list.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String date = list.get(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql =" select d.name,d.id,d.job_title_name as jobTitleName,d.photo from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql = " select d.name,d.id,d.job_title_name as jobTitleName,d.photo from base_doctor d where d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String deptCondition = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(dept)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                deptCondition +=" (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '"+dept+"' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(dept)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                deptCondition += " (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + dept + "' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String idTypeCondition = " "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idType)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                idTypeCondition +="  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '"+idType+"')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idType)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                idTypeCondition += "  (select d1.id from base_doctor d1 where 1=1 and d1.id_type = '" + idType + "')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.id IN "+deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(deptCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id IN " + deptCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql+=" and d.id IN "+idTypeCondition ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(idTypeCondition)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id IN " + idTypeCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(status)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (status.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id in (select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else if (status.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id not in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(status)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (status.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id in (select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if (status.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id not in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(state)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (state.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' and (d1.health_code not in(2,3) and CAST(d1.temperature as DECIMAL)<37.3 and  d1.is_symptoms=2 and d1.is_epidemic=2) )  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else if (state.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql +=" and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1)) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(state)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (state.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' and (d1.health_code not in(2,3) and CAST(d1.temperature as DECIMAL)<37.3 and  d1.is_symptoms=2 and d1.is_epidemic=2) )  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if (state.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    doctorSql += " and d.id in(select d1.doctor_id from base_doctor_health_upload d1 where 1=1 and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1)) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql +=" and d.NAME  LIKE '%"+name+"%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.NAME  LIKE '%" + name + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<Map<String,Object>> mapList = jdbcTemplate.queryForList(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String,Object> map:mapList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<Map<String, Object>> mapList = jdbcTemplate.queryForList(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String, Object> map : mapList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String id = map.get("id").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<BaseDoctorHospitalDO> hospitalDOList = baseDoctorHospitalDao.findByDoctorCode(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                map.put("deptInfo",hospitalDOList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                map.put("deptInfo", hospitalDOList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String stateCondition = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (StringUtils.isNoneBlank(state)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (state.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        stateCondition +=" and (d1.health_code not in(2,3) and CAST(d1.temperature as DECIMAL)<37.3 and  d1.is_symptoms=2 and d1.is_epidemic=2)  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (state.equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        stateCondition +=" and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (StringUtils.isNoneBlank(state)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (state.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        stateCondition += " and (d1.health_code not in(2,3) and CAST(d1.temperature as DECIMAL)<37.3 and  d1.is_symptoms=2 and d1.is_epidemic=2)  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } else if (state.equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        stateCondition += " and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String sql = "select d1.health_code,d1.temperature,d1.is_symptoms as isSymptoms,d1.is_epidemic as isEpidemic,d1.id,d1.consumer,d1.consumer_name as consumerName,date_format(d1.create_time ,'%Y-%m-%d %H:%i:%S' ) AS createTime from base_doctor_health_upload d1 where 1=1 "+stateCondition+" and d1.create_time >='"+date+" 00:00:00' and d1.create_time<='"+date+" 23:59:59' and d1.doctor_id = '"+id+"' order by d1.create_time desc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<Map<String,Object>> mapList1 = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (mapList1!=null&&mapList1.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    for (Map<String,Object> map1:mapList1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String sql = "select d1.health_code,d1.temperature,d1.is_symptoms as isSymptoms,d1.is_epidemic as isEpidemic,d1.id,d1.consumer,d1.consumer_name as consumerName,date_format(d1.create_time ,'%Y-%m-%d %H:%i:%S' ) AS createTime from base_doctor_health_upload d1 where 1=1 " + stateCondition + " and d1.create_time >='" + date + " 00:00:00' and d1.create_time<='" + date + " 23:59:59' and d1.doctor_id = '" + id + "' order by d1.create_time desc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<Map<String, Object>> mapList1 = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (mapList1 != null && mapList1.size() != 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    for (Map<String, Object> map1 : mapList1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String healthCode = map1.get("health_code").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        Double temperature = Double.parseDouble(map1.get("temperature").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isSymptoms = map1.get("isSymptoms").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isEpidemic = map1.get("isEpidemic").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (healthCode.equalsIgnoreCase("2")||healthCode.equalsIgnoreCase("3")|| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                temperature>=37.3||isSymptoms.equalsIgnoreCase("1")||isEpidemic.equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            map1.put("healthState","异常"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            map1.put("healthState","正常"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (healthCode.equalsIgnoreCase("2") || healthCode.equalsIgnoreCase("3") || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                temperature >= 37.3 || isSymptoms.equalsIgnoreCase("1") || isEpidemic.equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            map1.put("healthState", "异常"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            map1.put("healthState", "正常"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        map.put("uploadState","已上报"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        map.put("uploadId",map1.get("id").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        map.put("uploadState", "已上报"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        map.put("uploadId", map1.get("id").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("recordList",mapList1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("healthState","未知"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("uploadState","未上报"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("uploadId",""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("consumer",""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("consumerName",""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("createTime",""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("recordList",mapList1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("recordList", mapList1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("healthState", "未知"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("uploadState", "未上报"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("uploadId", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("consumer", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("consumerName", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("createTime", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("recordList", mapList1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("time",date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("list",mapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("time", date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("list", mapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            array.add(object); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return array; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -911,19 +988,19 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray selectListInfoExcelByTotal(OutputStream os,String startDate,String endDate) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long days = DateUtil.getDays(endDate,startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray selectListInfoExcelByTotal(OutputStream os, String startDate, String endDate, String dept) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long days = DateUtil.getDays(endDate, startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<String> list = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Date startTime = DateUtil.strToDateShort(startDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<=days;i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date date = DateUtil.getPreDays(startTime,i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i <= days; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date date = DateUtil.getPreDays(startTime, i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String str = DateUtil.dateToStrShort(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            list.add(str); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray array = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<list.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i < list.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String date = list.get(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql ="SELECT\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String doctorSql = "SELECT\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\td.idcard as idcard,\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\td.name as name,\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\td.mobile as mobile,\n" + 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -942,177 +1019,180 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\tdhu.is_outside as isOutside,\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\tdhu.is_nucleate as isNucleate,\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\tdhu.is_outside_high as isOutsideHigh, \n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "date_format(dhu.create_time ,'%Y-%m-%d %H:%i:%S' ) AS createTime "+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "date_format(dhu.create_time ,'%Y-%m-%d %H:%i:%S' ) AS createTime " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " FROM\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "\tbase_doctor d\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "LEFT JOIN /* (SELECT * FROM base_doctor_health_upload dhu1*/ base_doctor_health_upload dhu ON dhu.doctor_id = d.id WHERE dhu.create_time >= '"+date+" 00:00:00' AND dhu.create_time <= '"+date+" 23:59:59'   "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<Map<String,Object>> mapList = jdbcTemplate.queryForList(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String,Object> map:mapList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "LEFT JOIN /* (SELECT * FROM base_doctor_health_upload dhu1*/ base_doctor_health_upload dhu ON dhu.doctor_id = d.id WHERE dhu.create_time >= '" + date + " 00:00:00' AND dhu.create_time <= '" + date + " 23:59:59'  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(dept)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                doctorSql += " and d.id in (select dh.doctor_code from base_doctor_hospital dh where dh.dept_code = '" + dept + "' and dh.del=1 )"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<Map<String, Object>> mapList = jdbcTemplate.queryForList(doctorSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String, Object> map : mapList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String id = map.get("id").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<BaseDoctorHospitalDO> baseDoctorHospitalDOS = baseDoctorHospitalDao.findByDoctorCode(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (baseDoctorHospitalDOS!=null&&baseDoctorHospitalDOS.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("deptName",baseDoctorHospitalDOS.get(0).getDeptName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (baseDoctorHospitalDOS != null && baseDoctorHospitalDOS.size() != 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    map.put("deptName", baseDoctorHospitalDOS.get(0).getDeptName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("time",date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("list",mapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("time", date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("list", mapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            array.add(object); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        pushListWritePriceTotal(os,array,startDate,endDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        pushListWritePriceTotal(os, array, startDate, endDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return array; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * mergeCells(a,b,c,d) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * a 单元格的列号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     b 单元格的行号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     c 从单元格[a,b]起,向左合并到c列 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     d 从单元格[a,b]起,向下合并到d行 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * <p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * b 单元格的行号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * <p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * c 从单元格[a,b]起,向左合并到c列 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * <p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * d 从单元格[a,b]起,向下合并到d行 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 收入日报导出 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param os 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param ls 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param startTime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endTime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void pushListWritePriceTotal(OutputStream os,JSONArray ls,String startTime, String endTime) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void pushListWritePriceTotal(OutputStream os, JSONArray ls, String startTime, String endTime) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        WritableWorkbook wwb = jxl.Workbook.createWorkbook(os); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i=0;i<ls.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject jsonObject = ls.getJSONObject(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String time = jsonObject.getString("time"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            WritableSheet ws; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ws = wwb.createSheet(time, i+1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String[] header = {"互联网综合服务平台健康上报情况","","","","","","","","","","","","","",""};// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int k = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (String h : header) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                addCell(ws, 0, k, h);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                k++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i = 0; i < ls.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject jsonObject = ls.getJSONObject(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String time = jsonObject.getString("time"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                WritableSheet ws; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                ws = wwb.createSheet(time, i + 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String[] header = {"互联网综合服务平台健康上报情况", "", "", "", "", "", "", "", "", "", "", "", "", "", ""};// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                int k = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                for (String h : header) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, 0, k, h);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    k++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String[] header2 = {"科室","姓名","电话","身份类别","上报状态","所在地","体温","健康码","行程码","异常症状","涉疫人员","14天内从外地返","核酸检测","14天内有同往人从中高风险返厦","健康状态","上报时间"};// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int k2 = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (String h : header2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                addCell(ws, 1, k2, h);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                k2++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int j= 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONArray array = jsonObject.getJSONArray("list"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int z=0;z<array.size();z++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                j=j+1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject object = array.getJSONObject(z); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                addCell(ws, j, 0, object.getString("deptName"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                addCell(ws, j, 1, object.getString("name"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                addCell(ws, j, 2, object.getString("mobile"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (StringUtils.isNoneBlank(object.getString("idType"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 3, object.getString("idType"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 3, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String[] header2 = {"科室", "姓名", "电话", "身份类别", "上报状态", "所在地", "体温", "健康码", "行程码", "异常症状", "涉疫人员", "14天内从外地返", "核酸检测", "14天内有同往人从中高风险返厦", "健康状态", "上报时间"};// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                int k2 = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                for (String h : header2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, 1, k2, h);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    k2++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (StringUtils.isNoneBlank(object.getString("temperature"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String address = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if ( StringUtils.isNoneBlank(object.getString("provinceName"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        address +=object.getString("provinceName"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if ( StringUtils.isNoneBlank(object.getString("cityName"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        address +=object.getString("cityName"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if ( StringUtils.isNoneBlank(object.getString("townName"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        address +=object.getString("townName"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 4, "已上报");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 5,address);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 6, object.getString("temperature"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String healthCodeName=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String healthStateName= ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("healthCode").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        healthCodeName="绿码"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("healthCode").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        healthCodeName="红码"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("healthCode").equalsIgnoreCase("3")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        healthCodeName="黄码"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("healthCode").equalsIgnoreCase("2")||object.getString("healthCode").equalsIgnoreCase("3")|| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            object.getDouble("temperature")>=37.3||object.getString("isSymtoms").equalsIgnoreCase("1")||object.getString("isEpidemic").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        healthStateName="异常"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        healthStateName="正常"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String tourCodeName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("tourCode").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        tourCodeName="带星"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("tourCode").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        tourCodeName="不带星"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String isSymtomsName=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("isSymtoms").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isSymtomsName="是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("isSymtoms").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isSymtomsName="否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String isEpidemicName=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("isEpidemic").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isEpidemicName="是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("isEpidemic").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isEpidemicName="否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String isOutsideName=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("isOutside").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isOutsideName="是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("isOutside").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isOutsideName="否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String isNucleateName=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("isNucleate").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isNucleateName="未做"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("isNucleate").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isNucleateName="已做(院内)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("isNucleate").equalsIgnoreCase("3")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isNucleateName="已做(院外)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String isOutsideHighName=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("isOutsideHigh").equalsIgnoreCase("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isOutsideHighName="是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else if (object.getString("isOutsideHigh").equalsIgnoreCase("2")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        isOutsideHighName="否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String createTime= ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.get("createTime")!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        createTime = object.getString("createTime"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                int j = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONArray array = jsonObject.getJSONArray("list"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                for (int z = 0; z < array.size(); z++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    j = j + 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject object = array.getJSONObject(z); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 0, object.getString("deptName"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 1, object.getString("name"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 2, object.getString("mobile"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (StringUtils.isNoneBlank(object.getString("idType"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 3, object.getString("idType"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 3, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (StringUtils.isNoneBlank(object.getString("temperature"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String address = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (StringUtils.isNoneBlank(object.getString("provinceName"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            address += object.getString("provinceName"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (StringUtils.isNoneBlank(object.getString("cityName"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            address += object.getString("cityName"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (StringUtils.isNoneBlank(object.getString("townName"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            address += object.getString("townName"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 4, "已上报");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 5, address);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 6, object.getString("temperature"));//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String healthCodeName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String healthStateName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("healthCode").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            healthCodeName = "绿码"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("healthCode").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            healthCodeName = "红码"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("healthCode").equalsIgnoreCase("3")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            healthCodeName = "黄码"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("healthCode").equalsIgnoreCase("2") || object.getString("healthCode").equalsIgnoreCase("3") || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                object.getDouble("temperature") >= 37.3 || object.getString("isSymtoms").equalsIgnoreCase("1") || object.getString("isEpidemic").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            healthStateName = "异常"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            healthStateName = "正常"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String tourCodeName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("tourCode").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            tourCodeName = "带星"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("tourCode").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            tourCodeName = "不带星"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isSymtomsName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("isSymtoms").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isSymtomsName = "是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("isSymtoms").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isSymtomsName = "否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isEpidemicName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("isEpidemic").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isEpidemicName = "是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("isEpidemic").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isEpidemicName = "否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isOutsideName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("isOutside").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isOutsideName = "是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("isOutside").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isOutsideName = "否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isNucleateName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("isNucleate").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isNucleateName = "未做"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("isNucleate").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isNucleateName = "已做(院内)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("isNucleate").equalsIgnoreCase("3")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isNucleateName = "已做(院外)"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isOutsideHighName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("isOutsideHigh").equalsIgnoreCase("1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isOutsideHighName = "是"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } else if (object.getString("isOutsideHigh").equalsIgnoreCase("2")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isOutsideHighName = "否"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String createTime = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.get("createTime") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            createTime = object.getString("createTime"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 7, healthCodeName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 8, tourCodeName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 9, isSymtomsName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 10, isEpidemicName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 11, isOutsideName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 12, isNucleateName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 13, isOutsideHighName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 14, healthStateName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 15, createTime);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 4, "未上报");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 5, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 6, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 7, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 8, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 9, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 10, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 11, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 12, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 13, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 14, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    addCell(ws, j, 15, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 7, healthCodeName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 8, tourCodeName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 9, isSymtomsName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 10, isEpidemicName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 11, isOutsideName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 12, isNucleateName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 13, isOutsideHighName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 14, healthStateName);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 15, createTime);//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 4, "未上报");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 5, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 6, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 7, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 8, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 9, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 10, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 11, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 12, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 13, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 14, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        addCell(ws, j, 15, "");//表名,行,列,header 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                ws.mergeCells(0, 0, 15, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ws.mergeCells(0,0,15,0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wwb.write(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wwb.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } catch (IOException e) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1121,6 +1201,7 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw e; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    //添加单元格内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void addCell(WritableSheet ws, int row, int column, String data) throws WriteException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Label label = new Label(column, row, data); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1134,16 +1215,97 @@ public class BaseDoctorHealthUploadService extends BaseJpaService<BaseDoctorHeal 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 查下最新一次记录 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param consumer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorHealthUploadDO selectRecordByDoctorIdAndConsumer(String doctorId,String consumer){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BaseDoctorHealthUploadDO selectRecordByDoctorIdAndConsumer(String doctorId, String consumer) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BaseDoctorHealthUploadDO baseDoctorHealthUploadDO = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorHealthUploadDO> doctorHealthUploadDOList = baseDoctorHealthUploadDao.findByDoctorIdAndConsumer(doctorId,consumer); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (doctorHealthUploadDOList!=null&&doctorHealthUploadDOList.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDoctorHealthUploadDO> doctorHealthUploadDOList = baseDoctorHealthUploadDao.findByDoctorIdAndConsumer(doctorId, consumer); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (doctorHealthUploadDOList != null && doctorHealthUploadDOList.size() != 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            baseDoctorHealthUploadDO = doctorHealthUploadDOList.get(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return baseDoctorHealthUploadDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param orgCode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param dept 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param doctorCode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param key 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param flag 是否异常1是0否 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<Map<String, Object>> findDoctorByHospitalAndDept(String orgCode, String dept, String doctorCode,String key, Integer flag) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.id AS \"id\", " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.photo AS \"photo\", " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.name AS \"name\", " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.expertise AS \"expertise\"," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.introduce AS \"introduce\"," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.job_title_code AS \"jobTitleCode\", " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.job_title_name AS \"jobTitleName\"," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.charge_type AS \"chargeType\"," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.outpatient_type AS \"outpatientType\"," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.consult_status AS \"consultStatus\"," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " h.dept_code AS \"deptCode\","+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " h.dept_name AS \"deptName\","+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " h.org_code AS \"orgCode\","+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " h.org_name AS \"orgName\","+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " t.photo AS \"hosptialphoto\","+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.id_type AS \"idType\","+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " d.id_card_type AS \"idCardType\" "+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " FROM " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " base_doctor d " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " JOIN base_doctor_hospital h ON h.doctor_code = d.id " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " left join base_org t on t.id = h.org_code" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " WHERE  " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " 1=1 and d.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> params = new HashedMap(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(dept)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " AND h.dept_code = '" + dept + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(orgCode)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " AND h.org_code = '" + orgCode + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(key)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " AND (h.dept_name like '%" + key + "%' OR d.name like '%" + key + "%' OR d.expertise like '%" + key + "%') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (flag!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (flag==1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " and d.id IN (select d.doctor_id from base_doctor_health_upload d1 where 1=1 and (d1.health_code in(2,3) OR CAST(d1.temperature as DECIMAL)>=37.3 OR  d1.is_symptoms=1 OR d1.is_epidemic=1) and d1.create_time >='"+DateUtil.getStringDateShort()+" 00:00:00"+"' and d1.create_time <='"+DateUtil.getStringDateShort()+" 23:59:59"+"')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String, Object>> list = hibenateUtils.createSQLQuery(sql, params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (Map<String,Object> map:list){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String id = map.get("id").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date startTime = DateUtil.strToDateLong(DateUtil.getStringDateShort()+" 00:00:00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date endTime = DateUtil.strToDateLong(DateUtil.getStringDateShort()+" 23:59:59"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<BaseDoctorHealthUploadDO> healthUploadDOS = baseDoctorHealthUploadDao.selectHealthUploadInfoByDoctorIdAndStartAndEnd(id,startTime,endTime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (healthUploadDOS!=null&&healthUploadDOS.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                map.put("healthUpload",healthUploadDOS.get(0)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                map.put("healthUpload",null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (list != null && list.size() > 0 && StringUtils.isNotBlank(doctorCode)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //排序 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i = 0; i < list.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String id = (String) list.get(i).get("id"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (doctorCode.equals(id)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    Collections.swap(list, 0, i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |