| 
					
				 | 
			
			
				@ -442,8 +442,23 @@ public class ManagerQuestionnaireController extends WeixinBaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                pushMsgTask.sendWeixinMessage(accessToken, 11, openId, name, json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<String> codes = surveyUserDao.findBySurveyCodeAndStatus(code); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            SendMessage sendMessage = new SendMessage(code, codes, getAccessToken()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            new Thread(sendMessage).start(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String accessToken = getAccessToken(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String str = "{\"remark\":\"我们将按调查最终结果,优化健康服务。\",\"keyword1\":\"调查问卷\"}"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject json = new JSONObject(str); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            codes.stream().forEach(c -> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Patient p = patientDao.findByCode(c); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String name = p.getName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String openId = p.getOpenid(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("keyword2", sdf.format(new Date())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("toUser", c); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("survey_id", code); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("first", name + ",您好!为了给您提供更好的家庭医生健康服务,现有一份问卷需要您填写。"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                PushMsgTask.getInstance().putWxMsg(accessToken, 11, openId, name, json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return write(200, "发送成功!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } catch (Exception e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            e.printStackTrace(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -472,37 +487,5 @@ public class ManagerQuestionnaireController extends WeixinBaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 线程发送模板消息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    class SendMessage implements Runnable { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        private String code; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        private List<String> codes; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        private String str = "{\"remark\":\"我们将按调查最终结果,优化健康服务。\",\"keyword1\":\"调查问卷\"}"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        private String accessToken; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        private JSONObject json = new JSONObject(str); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        public SendMessage(String code, List<String> codes, String accessToken) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            this.code = code; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            this.codes = codes; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            this.accessToken = accessToken; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        public void run() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            json.put("survey_id", code); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (String cod : codes) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Patient p = patientDao.findByCode(cod); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String name = p.getName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String openId = p.getOpenid(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("keyword2", sdf.format(new Date())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("toUser", cod); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                json.put("first", name + ",您好!为了给您提供更好的家庭医生健康服务,现有一份问卷需要您填写。"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                PushMsgTask.getInstance().putWxMsg(accessToken, 11, openId, name, json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |