| 
					
				 | 
			
			
				@ -22,6 +22,7 @@ import org.apache.commons.collections.CollectionUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				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.beans.factory.annotation.Value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.jdbc.core.BeanPropertyRowMapper; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -58,8 +59,8 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private BaseDoctorDao baseDoctorDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private BasePatientDao basePatientDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Value("${server.server_url}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String server_url; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Value("${tnzyy.tnzyy_url}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String tnzyy_url; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    //发送微信模板消息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private  String sendMessageUrl = "http://172.16.100.37:8090/hospitalPortal-sms/sms/sendMessage"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -153,9 +154,24 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    //推送模板消息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param wechatId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param templateName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param scene 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param openId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param first 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param url 跳转链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param remark 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param type  模板通知类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param josn 用于对跳转连接的修改, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param keywords 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void putTemplateWxMessage(String wechatId, String templateName, String scene, String openId, String first,String url, String remark, Integer type,JSONObject josn,String ...keywords) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            System.out.println(wechatId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxAccessTokenService.getWxAccessTokenById(wechatId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<WxAccessTokenDO> list = wxAccessTokenDao.getWxAccessTokenById(wechatId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(list.size()==0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                return; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -166,7 +182,9 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                logger.info("wx_access_token表获取为空,wechatId" + wechatId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            WxTemplateConfigDO newConfig = wxTemplateConfigDao.findByWechatIdAndTemplateNameAndSceneAndStatus(wechatId, templateName, scene, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            WxTemplateConfigDO templateConfig = wxTemplateConfigDao.findByWechatIdAndTemplateNameAndSceneAndStatus(wechatId, templateName, scene, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            WxTemplateConfigDO newConfig = new WxTemplateConfigDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            BeanUtils.copyProperties(templateConfig,newConfig); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (newConfig == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                logger.info("微信模板不存在!请确认wechatId:" + wechatId + ",templateName:" + templateName + ",scene:" + scene); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                return; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -176,7 +194,7 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                newConfig.setFirst(first); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(url)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                newConfig.setUrl(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               newConfig.setUrl(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(remark)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                newConfig.setRemark(remark); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -190,32 +208,32 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (keyLength >= 2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(StringUtils.isNoneBlank(keywords[1])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword1(keywords[1]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword2(keywords[1]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (keyLength >= 3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(StringUtils.isNoneBlank(keywords[2])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword1(keywords[2]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword3(keywords[2]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (keyLength >= 4) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(StringUtils.isNoneBlank(keywords[3])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword1(keywords[3]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword4(keywords[3]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (keyLength >= 5) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(StringUtils.isNoneBlank(keywords[4])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword1(keywords[4]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword5(keywords[4]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (keyLength >= 6) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(StringUtils.isNoneBlank(keywords[5])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword1(keywords[5]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword6(keywords[5]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (keyLength >= 7) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(StringUtils.isNoneBlank(keywords[6])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword1(keywords[6]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    newConfig.setKeyword7(keywords[6]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //发起微信消息模板推送 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -228,7 +246,10 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public WxTemplateConfigDO setTemPlateUrl(WxTemplateConfigDO wxTemplateConfigDO,Integer type,String openid,JSONObject json){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = server_url + "wx/html/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = tnzyy_url + "taian-wx/html/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (json==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return wxTemplateConfigDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (type==30){//反馈通知 测试 TPbq9m0SAiVfRhXtXq17SDmYIfrJ8Whp2NpSrq9wlfI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(json.containsKey("consult")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                wxTemplateConfigDO.setUrl(url + wxTemplateConfigDO.getUrl() + "?openid=" + openid + "&consult=" + json.getString("consult")); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -240,17 +261,17 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                wxTemplateConfigDO.setUrl(url + wxTemplateConfigDO.getUrl() + "?resultCode=" + json.getString("resultCode")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (type==31){ //上门服务医生评分   //TPbq9m0SAiVfRhXtXq17SDmYIfrJ8Whp2NpSrq9wlfI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (type==31){ //上门服务医生评分   // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxTemplateConfigDO.setUrl(url + wxTemplateConfigDO.getUrl()+"?openid=" + openid + "&id=" + json.getString("id")+ "&finish=" + json.getString("finish")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(type==32){  //TPbq9m0SAiVfRhXtXq17SDmYIfrJ8Whp2NpSrq9wlfI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String url1 = server_url + "wx/common/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(type==32){  // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String url1 = tnzyy_url + "wx/common/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxTemplateConfigDO.setUrl(url1 + wxTemplateConfigDO.getUrl()+"?openid=" + openid + "&consult=" + json.getString("consult") + "&status=" + json.getInteger("status")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(type==34){ //TPbq9m0SAiVfRhXtXq17SDmYIfrJ8Whp2NpSrq9wlfI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxTemplateConfigDO.setUrl(url + wxTemplateConfigDO.getUrl() + "?openid=" + openid + "&orderId=" + json.get("orderId")+ "&authorizeImage=" + json.getString("authorizeImage")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(type==34){ //居民授权电子健康卡 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxTemplateConfigDO.setUrl(url + wxTemplateConfigDO.getUrl() + "?openid=" + openid + "&orderId=" + json.getString("orderId")+ "&authorizeImage=" + json.getString("authorizeImage")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (type==19){  //zSR9w5AjfZFLc_g8AxGBvDKZASoKAeXQuGnvPAQzvps 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (type==19){  // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String urlStr= wxTemplateConfigDO.getUrl(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            boolean status = urlStr.contains("openid="); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(!status){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -258,6 +279,9 @@ public class MessageUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxTemplateConfigDO.setUrl(url + urlStr ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (type==35){//支付提醒 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            wxTemplateConfigDO.setUrl(url + wxTemplateConfigDO.getUrl()+json.getString("orderId")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return wxTemplateConfigDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 |