Explorar el Código

Merge branch 'dev' of chenweida/patient-co-management into dev

chenweida hace 7 años
padre
commit
704c67e869
Se han modificado 20 ficheros con 222 adiciones y 123 borrados
  1. 14 4
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/DoctorInterceptor.java
  2. 10 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/PatientInterceptor.java
  3. 11 9
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/account/DoctorInfoService.java
  4. 7 5
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java
  5. 5 3
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/family/FamilyMemberService.java
  6. 3 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/followup/FollowUpService.java
  7. 5 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/health/PatientHealthGuidanceService.java
  8. 26 23
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java
  9. 4 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/PatientRemindService.java
  10. 23 21
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java
  11. 4 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/survey/ManagerQuestionnaireService.java
  12. 5 24
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/task/PushMsgTask.java
  13. 5 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/task/RemindExpensesTask.java
  14. 4 3
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/common/account/WechatController.java
  15. 7 4
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultPublicController.java
  16. 6 4
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/health/DoctorHealthEduArticleController.java
  17. 4 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/ManagerQuestionnaireController.java
  18. 4 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/booking/PatientBookingController.java
  19. 64 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/sign/PatientSignController.java
  20. 11 9
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/BookingController.java

+ 14 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/DoctorInterceptor.java

@ -8,6 +8,8 @@ import com.yihu.wlyy.util.SystemConf;
import com.yihu.wlyy.util.SystemData;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.method.HandlerMethod;
@ -27,6 +29,8 @@ import java.util.Map;
@Component
public class DoctorInterceptor extends BaseInterceptor {
    private Logger logger = LoggerFactory.getLogger(DoctorInterceptor.class);
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        boolean flag = true;
@ -54,7 +58,13 @@ public class DoctorInterceptor extends BaseInterceptor {
            String uid = json.has("uid") ? json.getString("uid") : "";
            String imei = json.has("imei") ? json.getString("imei") : "";
            String observer = json.has("observer") ? json.getString("observer") : "";
            Integer platform  = json.has("platform") ? json.getInt("platform") : 2;
            Integer platform = json.has("platform") ? json.getInt("platform") : 2;
            logger.info("tokenStr:"+tokenStr);
            logger.info("uid:"+uid);
            logger.info("imei:"+imei);
            logger.info("observer:"+observer);
            logger.info("platform:"+platform);
            //如果是观察者直接返回true
            if (!org.springframework.util.StringUtils.isEmpty(observer) && observer.equals("1")) {
                Class cls = ((HandlerMethod) handler).getBeanType();
@ -103,9 +113,9 @@ public class DoctorInterceptor extends BaseInterceptor {
            Token token = null;
            Map<String, Token> tempMap = null;
            if(platform==2){
            if (platform == 2) {
                tempMap = SystemData.doctorTokens;
            }else {
            } else {
                tempMap = SystemData.doctorPCTokens;
            }
            token = tempMap.get(uid);
@ -149,7 +159,7 @@ public class DoctorInterceptor extends BaseInterceptor {
    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        if(null==request.getAttribute("log-start")){
        if (null == request.getAttribute("log-start")) {
            return;
        }
        long start = (long) request.getAttribute("log-start");

+ 10 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/PatientInterceptor.java

@ -7,6 +7,8 @@ import com.yihu.wlyy.util.SystemConf;
import com.yihu.wlyy.util.SystemData;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.method.HandlerMethod;
@ -25,17 +27,19 @@ import java.util.Date;
@Component
public class PatientInterceptor extends BaseInterceptor {
	private Logger logger = LoggerFactory.getLogger(PatientInterceptor.class);
	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
		boolean flag = true;
		try {
			request.setCharacterEncoding("UTF-8");
			request.setAttribute("log-start", new Date().getTime());
			if(request.getRequestURI().contains("/patient/hosptail/getHositalByTownCode")||request.getRequestURI().contains("/patient/feedback/saveAppeal")||request.getRequestURI().contains("/doctor/sign/getTownList")){
			if(request.getRequestURI().contains("/patient/hosptail/getHositalByTownCode")||request.getRequestURI().contains("/patient/feedback/saveAppeal")){
				return true;
			}
			response.setCharacterEncoding("UTF-8");
			JSONObject json = getAgent(request);
			logger.info("userAgent:"+json);
			if (json == null) {
				// 未登录
				response.getOutputStream().write(error(SystemConf.NOT_LOGIN, "请登录后再操作!").getBytes());
@ -46,6 +50,11 @@ public class PatientInterceptor extends BaseInterceptor {
			String imei = json.has("imei") ? json.getString("imei") : "";
			String openid = json.has("openid") ? json.getString("openid") : "";
			int platform = json.has("platform") ? json.getInt("platform") : 1;
			logger.info("tokenStr:"+tokenStr);
			logger.info("uid:"+user);
			logger.info("imei:"+imei);
			logger.info("openid:"+openid);
			logger.info("platform:"+platform);
			if (StringUtils.isEmpty(imei)) {
				imei = openid;
			}

+ 11 - 9
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/account/DoctorInfoService.java

@ -107,6 +107,8 @@ public class DoctorInfoService extends BaseService {
    @Autowired
    private ImUtill ImUtill;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 获取医生的签约病人
@ -876,7 +878,7 @@ public class DoctorInfoService extends BaseService {
        //判断是否判定openId,有没有发则查找家人发送
        if (StringUtils.isNotBlank(p.getOpenid())) {
            PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), data);
            pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), data);
        }
//        else {
//            JSONObject json = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -885,7 +887,7 @@ public class DoctorInfoService extends BaseService {
//                String first = (String) data.get("first");
//                data.remove("first");
//                data.put("first", weiXinOpenIdUtils.getTitleMes(p, json.getInt("relation"), member.getName()) + first);
//                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
//                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
//
//            }
//        }
@ -901,7 +903,7 @@ public class DoctorInfoService extends BaseService {
                json.put("toUser",member.getCode());
                json.remove("first");
                json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName())+first);
                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
            }
        }
    }
@ -1013,7 +1015,7 @@ public class DoctorInfoService extends BaseService {
        }
        if (StringUtils.isNotBlank(p.getOpenid())) {
            PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), data);
            pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), data);
        }
//        else {
//            JSONObject json = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -1023,7 +1025,7 @@ public class DoctorInfoService extends BaseService {
//                String first = (String) data.get("first");
//                data.remove("first");
//                data.put("first", weiXinOpenIdUtils.getTitleMes(p, json.getInt("relation"), member.getName()) + first);
//                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
//                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
//            }
//        }
@ -1039,7 +1041,7 @@ public class DoctorInfoService extends BaseService {
                json.put("toUser",member.getCode());
                json.remove("first");
                json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName())+first);
                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
            }
        }
        return 1;
@ -1234,7 +1236,7 @@ public class DoctorInfoService extends BaseService {
        if (StringUtils.isNotBlank(p.getOpenid())) {
            data.put("first", p.getName() + ",您签约团队的全科医生已变更,您的新全科医生信息如下:");
            PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), data);
            pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), data);
        }
//        else {
//            //如果自己没有绑定,则发给家人
@ -1243,7 +1245,7 @@ public class DoctorInfoService extends BaseService {
//            if (StringUtils.isNotBlank(member.getOpenid())) {
//                data.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) json.get("relation"), member.getName()) + p.getName() + ",您好!因签约团队内分工调整,您的责任医生有变动," + oldDoctorName +
//                        "医生无法继续为您服务,具体变动如下:");
//                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
//                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
//            }
//        }
@ -1258,7 +1260,7 @@ public class DoctorInfoService extends BaseService {
                json.put("toUser",member.getCode());
                json.remove("first");
                json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) json.get("relation"), p.getName()) + p.getName() + ",您好!您签约团队的全科医生已变更,您的新全科医生信息如下:");
                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
            }
        }
    }

+ 7 - 5
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java

@ -120,6 +120,8 @@ public class ConsultTeamService extends ConsultService {
    @Value("${im.im_list_get}")
    private String im_list_get;
    @Autowired
    private PushMsgTask pushMsgTask;
    @PostConstruct
    public void init() {
@ -683,7 +685,7 @@ public class ConsultTeamService extends ConsultService {
                            continue;
                        }
                        // 推送消息给医生
                        PushMsgTask.getInstance().put(ctd.getTo(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_CONSULT_TEAM_REPLY.D_CT_02.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_CONSULT_TEAM_REPLY.指定咨询.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_CONSULT_TEAM_REPLY.您有新的消息.name(), temp.getConsult());
                        pushMsgTask.put(ctd.getTo(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_CONSULT_TEAM_REPLY.D_CT_02.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_CONSULT_TEAM_REPLY.指定咨询.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_CONSULT_TEAM_REPLY.您有新的消息.name(), temp.getConsult());
                    }
                }
                // 医生未读数量+1
@ -1962,7 +1964,7 @@ public class ConsultTeamService extends ConsultService {
                String first = endName + ",您好!您有1条咨询已结束,请及时对咨询医生进行评价。";
                json.put("first", first);
                if(StringUtils.isNotBlank(p.getOpenid())){
                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 17, openId, p.getName(), json);
                    pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 17, openId, p.getName(), json);
                }
                //发送代理人
@ -1976,7 +1978,7 @@ public class ConsultTeamService extends ConsultService {
                        data.put("toUser",member.getCode());
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName())+first);
                        PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 17, member.getOpenid(), p.getName(), data);
                        pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 17, member.getOpenid(), p.getName(), data);
                    }
                }
            }
@ -2004,7 +2006,7 @@ public class ConsultTeamService extends ConsultService {
                String first = name + ",您好!您有1条咨询已结束,请及时对咨询医生进行评价。";
                json.put("first", first);
                if(StringUtils.isNotBlank(p.getOpenid())){
                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 17, openId, p.getName(), json);
                    pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 17, openId, p.getName(), json);
                }
                //发送代理人
@ -2018,7 +2020,7 @@ public class ConsultTeamService extends ConsultService {
                        data.put("toUser",member.getCode());
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName())+first);
                        PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 17, member.getOpenid(), p.getName(), data);
                        pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 17, member.getOpenid(), p.getName(), data);
                    }
                }

+ 5 - 3
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/family/FamilyMemberService.java

@ -57,6 +57,8 @@ public class FamilyMemberService extends BaseService {
    Map<Integer, String> relations = new HashMap<>();
    @Autowired
    private PushMsgTask pushMsgTask;
    @Autowired
    private CommonUtil CommonUtil;
    @Autowired
@ -1019,7 +1021,7 @@ public class FamilyMemberService extends BaseService {
                                "点击查看家人。");
                        System.out.println("-----sendMes----:openId "+p.getOpenid()+"-----access_token-----:"+access_token+"--json--");
                        //此消息为定向推送,无需家人代收
                        PushMsgTask.getInstance().putWxMsg(access_token, 13, p.getOpenid(), p.getName(), json);
                        pushMsgTask.putWxMsg(access_token, 13, p.getOpenid(), p.getName(), json);
                    }
                }
                return st;
@ -1040,7 +1042,7 @@ public class FamilyMemberService extends BaseService {
                json.put("remark"," ");
                System.out.println("-----sendMes----:openId "+p.getOpenid()+"-----access_token-----:"+access_token+"--json--");
                //此消息为定向推送,无需家人代收
                PushMsgTask.getInstance().putWxMsg(access_token, 14, p.getOpenid(), p.getName(), json);
                pushMsgTask.putWxMsg(access_token, 14, p.getOpenid(), p.getName(), json);
                return 2;
            }
        }
@ -1190,7 +1192,7 @@ public class FamilyMemberService extends BaseService {
                "点击立即处理。");
        json.put("member", member);
        //此消息为定向推送,无需家人代收
        PushMsgTask.getInstance().putWxMsg(access_token, 12, m.getOpenid(), m.getName(), json);
        pushMsgTask.putWxMsg(access_token, 12, m.getOpenid(), m.getName(), json);
        return 1;
    }

+ 3 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/followup/FollowUpService.java

@ -80,6 +80,8 @@ public class FollowUpService extends BaseService {
    @Autowired
    private PatientService patientService;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
@ -677,7 +679,7 @@ public class FollowUpService extends BaseService {
                    message.setReadonly(1);//是否只读消息
                    list.add(message);
                    // 推送消息给医生
                    PushMsgTask.getInstance().put(doctor, "4", title, content, "");
                    pushMsgTask.put(doctor, "4", title, content, "");
                }
                messageDao.save(list);

+ 5 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/health/PatientHealthGuidanceService.java

@ -53,6 +53,9 @@ public class PatientHealthGuidanceService extends BaseService {
	@Autowired
	private WeiXinAccessTokenUtils weiXinAccessTokenUtils;
	@Autowired
	private PushMsgTask pushMsgTask;
	public JSONObject findById(Long id){
		PatientHealthGuidance guidance = patientHealthGuidanceDao.findOne(id);
@ -151,7 +154,7 @@ public class PatientHealthGuidanceService extends BaseService {
			json.put("remark", "请点击查看");
			if(StringUtils.isNotEmpty(openId)){
				// 推送消息到微信端
				PushMsgTask.getInstance().putWxMsg(accessToken, 4, openId, patient.getName(), json);
				pushMsgTask.putWxMsg(accessToken, 4, openId, patient.getName(), json);
			}
			//发送代理人
			JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(patient.getCode(),patient.getOpenid());
@ -165,7 +168,7 @@ public class PatientHealthGuidanceService extends BaseService {
					//String first = (String) json.get("first");
					data.remove("first");
					data.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), patient.getName()) + "健康指导提醒");
					PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 4, member.getOpenid(), patient.getName(), data);
					pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 4, member.getOpenid(), patient.getName(), data);
				}
			}

+ 26 - 23
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java

@ -137,6 +137,9 @@ public class FamilyContractService extends BaseService {
    @Value("${im.data_base_name}")
    private String im_dataBase_name;
    @Autowired
    private PushMsgTask pushMsgTask;
    public SignFamily findSignFamilyByCode(String code) {
        return signFamilyDao.findByCodeAndType(code, 2);
    }
@ -543,7 +546,7 @@ public class FamilyContractService extends BaseService {
            JSONObject jsonObject = doctorWorkTimeService.isDoctorWorking(doctor);
            if (jsonObject.getString("status").equals("1")) {
                //如果在工作时间内就推送
                PushMsgTask.getInstance().put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), "您有一条新的家庭签约申请!", patient);
                pushMsgTask.put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), "您有一条新的家庭签约申请!", patient);
            }
        }
        json.put("id", p.getId());
@ -640,7 +643,7 @@ public class FamilyContractService extends BaseService {
            JSONObject jsonObject = doctorWorkTimeService.isDoctorWorking(doctor);
            if (jsonObject.getString("status").equals("1")) {
                //如果在工作时间内就推送
                PushMsgTask.getInstance().put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), "您有一条新的家庭签约申请!", patient);
                pushMsgTask.put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), "您有一条新的家庭签约申请!", patient);
            }
        }
@ -780,7 +783,7 @@ public class FamilyContractService extends BaseService {
        JSONObject jsonObject = doctorWorkTimeService.isDoctorWorking(doctor);
        if (jsonObject.getString("status").equals("1")) {
            //如果在工作时间内就推送
            PushMsgTask.getInstance().put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_SIGN_WEB_RELIEVE.D_SW_02.name(), MessageType.MESSAGE_TYPE_DOCTOR_SIGN_WEB_RELIEVE.家庭签约.name(), patientName + " 申请解除与您的家庭签约!", patient);
            pushMsgTask.put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_SIGN_WEB_RELIEVE.D_SW_02.name(), MessageType.MESSAGE_TYPE_DOCTOR_SIGN_WEB_RELIEVE.家庭签约.name(), patientName + " 申请解除与您的家庭签约!", patient);
        }
        return 1;
    }
@ -1120,7 +1123,7 @@ public class FamilyContractService extends BaseService {
            json.put("agent", "0");
            if (StringUtils.isNotBlank(sf.getOpenid())) {
                // 添加到发送队列
                PushMsgTask.getInstance().putWxMsg(access_token, 1, sf.getOpenid(), sf.getName(), json);
                pushMsgTask.putWxMsg(access_token, 1, sf.getOpenid(), sf.getName(), json);
            }
//            else {
//                JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(patient.getCode());
@ -1130,7 +1133,7 @@ public class FamilyContractService extends BaseService {
//                        //String first = (String) json.get("first");
//                        json.remove("first");
//                        json.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), sf.getName()));
//                        PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), sf.getName(), json);
//                        pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), sf.getName(), json);
//                    }
//                }
//            }
@ -1148,7 +1151,7 @@ public class FamilyContractService extends BaseService {
                    //String first = (String) json.get("first");
                    data.remove("first");
                    data.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), patient.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                    pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                }
            }
@ -1400,7 +1403,7 @@ public class FamilyContractService extends BaseService {
            if (StringUtils.isNotBlank(sf.getOpenid())) {
                // 添加到发送队列
                PushMsgTask.getInstance().putWxMsg(access_token, 2, sf.getOpenid(), sf.getName(), json);
                pushMsgTask.putWxMsg(access_token, 2, sf.getOpenid(), sf.getName(), json);
            }
//            else {
//                JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -1409,7 +1412,7 @@ public class FamilyContractService extends BaseService {
//                    //String first = (String) json.get("first");
//                    json.remove("first");
//                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
//                    PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), p.getName(), json);
//                    pushMsgTask.putWxMsg(access_token, 2, member.getOpenid(), p.getName(), json);
//                }
//            }
            //发送代理人
@ -1424,7 +1427,7 @@ public class FamilyContractService extends BaseService {
                    //String first = (String) json.get("first");
                    data.remove("first");
                    data.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), p.getName(), data);
                    pushMsgTask.putWxMsg(access_token, 2, member.getOpenid(), p.getName(), data);
                }
            }
@ -1462,7 +1465,7 @@ public class FamilyContractService extends BaseService {
            json.put("agent", "0"); //是否是代理 否
            // 添加到发送队列
            if (StringUtils.isNotBlank(sf.getOpenid())) {
                PushMsgTask.getInstance().putWxMsg(access_token, 1, sf.getOpenid(), sf.getName(), json);
                pushMsgTask.putWxMsg(access_token, 1, sf.getOpenid(), sf.getName(), json);
            }
//            else {
//                JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -1471,7 +1474,7 @@ public class FamilyContractService extends BaseService {
//                    //String first = (String) json.get("first");
//                    json.remove("first");
//                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
//                    PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), p.getName(), json);
//                    pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), p.getName(), json);
//                }
//            }
            //发送代理人
@ -1488,7 +1491,7 @@ public class FamilyContractService extends BaseService {
                    //String first = (String) json.get("first");
                    data.remove("first");
                    data.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), p.getName(), data);
                    pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), p.getName(), data);
                }
            }
@ -1568,7 +1571,7 @@ public class FamilyContractService extends BaseService {
            if (StringUtils.isNotBlank(sf.getOpenid())) {
                // 添加到发送队列
                PushMsgTask.getInstance().putWxMsg(access_token, 5, sf.getOpenid(), sf.getName(), json);
                pushMsgTask.putWxMsg(access_token, 5, sf.getOpenid(), sf.getName(), json);
            }
//            else {
//                JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(patient);
@ -1578,7 +1581,7 @@ public class FamilyContractService extends BaseService {
//                    json.remove("first");
//                    Patient p = patientDao.findByCode(patient);
//                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
//                    PushMsgTask.getInstance().putWxMsg(access_token, 5, member.getOpenid(), member.getName(), json);
//                    pushMsgTask.putWxMsg(access_token, 5, member.getOpenid(), member.getName(), json);
//                }
//            }
            //发送代理人
@ -1594,7 +1597,7 @@ public class FamilyContractService extends BaseService {
                    //String first = (String) json.get("first");
                    data.remove("first");
                    data.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 5, member.getOpenid(), p.getName(), data);
                    pushMsgTask.putWxMsg(access_token, 5, member.getOpenid(), p.getName(), data);
                }
            }
        } else {
@ -1613,7 +1616,7 @@ public class FamilyContractService extends BaseService {
            if (StringUtils.isNotBlank(sf.getOpenid())) {
                // 添加到发送队列
                PushMsgTask.getInstance().putWxMsg(access_token, 5, sf.getOpenid(), sf.getName(), json);
                pushMsgTask.putWxMsg(access_token, 5, sf.getOpenid(), sf.getName(), json);
            }
//            else {
//                JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(patient);
@ -1623,7 +1626,7 @@ public class FamilyContractService extends BaseService {
//                    json.remove("first");
//                    Patient p = patientDao.findByCode(patient);
//                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()));
//                    PushMsgTask.getInstance().putWxMsg(access_token, 5, member.getOpenid(), member.getName(), json);
//                    pushMsgTask.putWxMsg(access_token, 5, member.getOpenid(), member.getName(), json);
//                }
//            }
            //发送代理人
@ -1639,7 +1642,7 @@ public class FamilyContractService extends BaseService {
                    //String first = (String) json.get("first");
                    data.remove("first");
                    data.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 5, member.getOpenid(), p.getName(), data);
                    pushMsgTask.putWxMsg(access_token, 5, member.getOpenid(), p.getName(), data);
                }
            }
@ -2246,7 +2249,7 @@ public class FamilyContractService extends BaseService {
        for (JSONObject msg : wxMessages) {
            if (StringUtils.isNotBlank(p.getOpenid())) {
                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), msg);
                pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, p.getOpenid(), p.getName(), msg);
            }
//            else {
//                //如果自己没有绑定,则发给家人
@ -2261,7 +2264,7 @@ public class FamilyContractService extends BaseService {
//                    } catch (Exception e) {
//                        e.printStackTrace();
//                    }
//                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), msg);
//                    pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), msg);
//                }
//            }
            //发送代理人
@ -2276,7 +2279,7 @@ public class FamilyContractService extends BaseService {
                    String first = (String) data.get("first");
                    data.remove("first");
                    data.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), data);
                    pushMsgTask.putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), data);
                }
            }
@ -3339,7 +3342,7 @@ public class FamilyContractService extends BaseService {
            JSONObject jsonObject = doctorWorkTimeService.isDoctorWorking(doctor);
            if (jsonObject.getString("status").equals("1")) {
                //如果在工作时间内就推送
                PushMsgTask.getInstance().put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), p.getName() + "申请与您续签家庭医生", patient);
                pushMsgTask.put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), p.getName() + "申请与您续签家庭医生", patient);
            }
        }
@ -3534,7 +3537,7 @@ public class FamilyContractService extends BaseService {
            JSONObject jsonObject = doctorWorkTimeService.isDoctorWorking(doctor);
            if (jsonObject.getString("status").equals("1")) {
                //如果在工作时间内就推送
                PushMsgTask.getInstance().put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), p.getName() + "申请与您续签家庭医生", patient);
                pushMsgTask.put(doctor, MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.D_SW_01.name(), MessageType.MESSAGE_TYPE_DOCTOR_NEW_SIGN_WEB.家庭签约.name(), p.getName() + "申请与您续签家庭医生", patient);
            }
        }

+ 4 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/PatientRemindService.java

@ -59,6 +59,8 @@ public class PatientRemindService extends BaseService {
    @Autowired
    SMSService sMSService;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 缴费提醒
     *
@ -229,7 +231,7 @@ public class PatientRemindService extends BaseService {
            if(StringUtils.isNotBlank(p.getOpenid())){
                isOpenIdExist = true;
                // 添加到发送队列
                PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, p.getOpenid(), p.getName(), json);
                pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 8, p.getOpenid(), p.getName(), json);
                wFlag = true;
            }
//                else{
@ -256,7 +258,7 @@ public class PatientRemindService extends BaseService {
                    data.put("toUser",member.getCode());
                    data.remove("doctorName");
                    data.put("doctorName", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()) +"\n"+first);
                    PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, member.getOpenid(), p.getName(), data);
                    pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 8, member.getOpenid(), p.getName(), data);
                    wFlag = true;
                }
            }

+ 23 - 21
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java

@ -111,6 +111,8 @@ public class SignWebService extends BaseService {
    private CountryDao countryDao;
    @Autowired
    private SMSService smsService;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 厦门市
     */
@ -1275,7 +1277,7 @@ public class SignWebService extends BaseService {
                    flag = false;
                    json.put("first", name + ",您好!\n" +
                            "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                    PushMsgTask.getInstance().putWxMsg(access_token, 16, openid, name, json);
                    pushMsgTask.putWxMsg(access_token, 16, openid, name, json);
                }
                //发送代理人
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(patient, openid);
@ -1291,7 +1293,7 @@ public class SignWebService extends BaseService {
                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), p.getName()) + "\n" +
                                name + ",您好!\n" +
                                "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                        PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 8, member.getOpenid(), p.getName(), data);
                        pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 8, member.getOpenid(), p.getName(), data);
                    }
                }
@ -1313,7 +1315,7 @@ public class SignWebService extends BaseService {
//                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), p.getName()) + "\n" +
//                                name + ",您好!\n" +
//                                "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
//                        PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), p.getName(), json);
//                        pushMsgTask.putWxMsg(access_token, 16, member.getOpenid(), p.getName(), json);
//                    } else {
//                        //发送短信
//                        String mobile = (String) signFamily.get("mobile");
@ -1384,7 +1386,7 @@ public class SignWebService extends BaseService {
                if (StringUtils.isNotBlank(openid)) {
                    json.put("first", name + ",您好!\n" +
                            "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                    PushMsgTask.getInstance().putWxMsg(access_token, 16, openid, name, json);
                    pushMsgTask.putWxMsg(access_token, 16, openid, name, json);
                }
                //发送代理人
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(patient, openid);
@ -1400,7 +1402,7 @@ public class SignWebService extends BaseService {
                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), p.getName()) + "\n" +
                                name + ",您好!\n" +
                                "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                        PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 16, member.getOpenid(), p.getName(), data);
                        pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 16, member.getOpenid(), p.getName(), data);
                    }
                }
                if (flag) {
@ -1421,7 +1423,7 @@ public class SignWebService extends BaseService {
//                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), p.getName()) + "\n" +
//                                name + ",您好!\n" +
//                                "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
//                        PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), p.getName(), json);
//                        pushMsgTask.putWxMsg(access_token, 16, member.getOpenid(), p.getName(), json);
//                    } else {
//                        //发送短信
//                        String mobile = (String) signFamily.get("mobile");
@ -1523,12 +1525,12 @@ public class SignWebService extends BaseService {
                        data.put("first", renew.getName() + ",您好!\n" +
                                "您的家庭医生续签申请已被拒绝");
                        data.put("remark", "您可选择其他医生进行签约。");
                        PushMsgTask.getInstance().putWxMsg(access_token, 2, patient.getOpenid(), patient.getName(), data);
                        pushMsgTask.putWxMsg(access_token, 2, patient.getOpenid(), patient.getName(), data);
                    } else if ("1".equals(state)) {
                        data.put("first", renew.getName() + ",您好!\n" +
                                "您的家庭医生续签申请已通过");
                        data.put("remark", "待自动扣费成功后,家庭医生将续签成功。");
                        PushMsgTask.getInstance().putWxMsg(access_token, 1, patient.getOpenid(), patient.getName(), data);
                        pushMsgTask.putWxMsg(access_token, 1, patient.getOpenid(), patient.getName(), data);
                    }
                }
                //发送代理人
@ -1545,13 +1547,13 @@ public class SignWebService extends BaseService {
                                    patient.getName() + ",您好!\n" +
                                    "您的家庭医生续签申请已被拒绝");
                            data.put("remark", "您可选择其他医生进行签约。");
                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
                            pushMsgTask.putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
                        } else if ("1".equals(state)) {
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), patient.getName()) + "\n" +
                                    patient.getName() + ",您好!\n" +
                                    "您的家庭医生续签申请已通过");
                            data.put("remark", "待自动扣费成功后,家庭医生将续签成功。");
                            PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                            pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                        }
                    }
                }
@ -1567,13 +1569,13 @@ public class SignWebService extends BaseService {
//                                    patient.getName() + ",您好!\n" +
//                                    "您的家庭医生续签申请已被拒绝");
//                            data.put("remark", "您可选择其他医生进行签约。");
//                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
//                            pushMsgTask.putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
//                        } else if ("1".equals(state)) {
//                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), patient.getName()) + "\n" +
//                                    patient.getName() + ",您好!\n" +
//                                    "您的家庭医生续签申请已通过");
//                            data.put("remark", "待自动扣费成功后,家庭医生将续签成功。");
//                            PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
//                            pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
//                        }
//                    }
//                }
@ -1687,12 +1689,12 @@ public class SignWebService extends BaseService {
                        data.put("first", renew.getName() + ",您好!\n" +
                                "您的家庭医生续签申请已被拒绝");
                        data.put("remark", "您可在到期后选择其他医生进行签约。");
                        PushMsgTask.getInstance().putWxMsg(access_token, 2, patient.getOpenid(), patient.getName(), data);
                        pushMsgTask.putWxMsg(access_token, 2, patient.getOpenid(), patient.getName(), data);
                    } else if ("1".equals(state)) {
                        data.put("first", renew.getName() + ",您好!\n" +
                                "您的家庭医生续签申请已通过");
                        data.put("remark", "待自动扣费成功后,家庭医生将续签成功。");
                        PushMsgTask.getInstance().putWxMsg(access_token, 1, patient.getOpenid(), patient.getName(), data);
                        pushMsgTask.putWxMsg(access_token, 1, patient.getOpenid(), patient.getName(), data);
                    }
                }
                //发送代理人
@ -1709,13 +1711,13 @@ public class SignWebService extends BaseService {
                                    patient.getName() + ",您好!\n" +
                                    "您的家庭医生续签申请已被拒绝");
                            data.put("remark", "您可在到期后选择其他医生进行签约。");
                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
                            pushMsgTask.putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
                        } else if ("1".equals(state)) {
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), patient.getName()) + "\n" +
                                    patient.getName() + ",您好!\n" +
                                    "您的家庭医生续签申请已通过");
                            data.put("remark", "待自动扣费成功后,家庭医生将续签成功。");
                            PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                            pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                        }
                    }
                }
@ -1731,13 +1733,13 @@ public class SignWebService extends BaseService {
//                                    patient.getName() + ",您好!\n" +
//                                    "您的家庭医生续签申请已被拒绝");
//                            data.put("remark", "您可在到期后选择其他医生进行签约。");
//                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
//                            pushMsgTask.putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
//                        } else if ("1".equals(state)) {
//                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), patient.getName()) + "\n" +
//                                    patient.getName() + ",您好!\n" +
//                                    "您的家庭医生续签申请已通过");
//                            data.put("remark", "待自动扣费成功后,家庭医生将续签成功。");
//                            PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
//                            pushMsgTask.putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
//                        }
//                    }
//                }
@ -1939,7 +1941,7 @@ public class SignWebService extends BaseService {
        if (StringUtils.isNotBlank(openid)) {
            json.put("first", name + ",您好!\n" +
                    "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
            PushMsgTask.getInstance().putWxMsg(access_token, 16, openid, name, json);
            pushMsgTask.putWxMsg(access_token, 16, openid, name, json);
            patientSetReminFlag(patientCode);
            return 1;
        }
@ -1958,7 +1960,7 @@ public class SignWebService extends BaseService {
                json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), p.getName()) + "\n" +
                        name + ",您好!\n" +
                        "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 16, member.getOpenid(), p.getName(), data);
                pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 16, member.getOpenid(), p.getName(), data);
            }
        }
        if (flag) {
@ -1981,7 +1983,7 @@ public class SignWebService extends BaseService {
//                json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), name) + "\n" +
//                        name + ",您好!\n" +
//                        "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
//                PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), name, json);
//                pushMsgTask.putWxMsg(access_token, 16, member.getOpenid(), name, json);
//                patientSetReminFlag(patientCode);
//                return 1;
//            } else {

+ 4 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/survey/ManagerQuestionnaireService.java

@ -80,6 +80,8 @@ public class ManagerQuestionnaireService extends BaseService {
    private WeiXinAccessTokenUtils weiXinAccessTokenUtils;
    @Autowired
    WeiXinOpenIdUtils weiXinOpenIdUtils;
    @Autowired
    private PushMsgTask pushMsgTask;
    private Logger logger = LoggerFactory.getLogger(this.getClass());
@ -297,7 +299,7 @@ public class ManagerQuestionnaireService extends BaseService {
                            // 添加到发送队列
                            logger.error("json =======>" + json);
//                            PushMsgTask.getInstance().putWxMsg(accessToken, 11, openId, name, json);
                            PushMsgTask.getInstance().sendWeixinMessage(accessToken, 11, openId, name, json);
                            pushMsgTask.sendWeixinMessage(accessToken, 11, openId, name, json);
                        }
//                        else {
//                            JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(p.getOpenid());
@ -330,7 +332,7 @@ public class ManagerQuestionnaireService extends BaseService {
                                    } catch (Exception e) {
                                        e.printStackTrace();
                                    }
                                    PushMsgTask.getInstance().sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), p.getName(), json);
                                    pushMsgTask.sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), p.getName(), json);
                                }
                            }
                        }

+ 5 - 24
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/task/PushMsgTask.java

@ -12,44 +12,25 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Scope;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.PostConstruct;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.LinkedBlockingQueue;
@Controller
@RequestMapping(value = "/pushMsgTask", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@Api(description = "消息推送")
@Component
public class PushMsgTask {
    private static Logger logger = LoggerFactory.getLogger(PushMsgTask.class);
    // 最大容量为50的数组堵塞队列
    private static LinkedBlockingQueue<JSONObject> queue = new LinkedBlockingQueue<JSONObject>();
    private static PushMsgTask instance;
    private static Object lock = new Object();
    public static PushMsgTask getInstance() {
        synchronized (lock) {
            if (instance == null) {
                instance = new PushMsgTask();
                instance.run();
            }
        }
        return instance;
    }
    @RequestMapping(value = "aa")
    @ResponseBody
    public String test() {
        return "1111";
    }
    @Autowired
    private HttpUtil httpUtil;
    @Value("${server.server_url}")
@ -140,7 +121,7 @@ public class PushMsgTask {
            }
        }
    }
    @PostConstruct
    private void run() {
        new Thread(new ConsumerTask(httpUtil)).start();
    }

+ 5 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/task/RemindExpensesTask.java

@ -34,9 +34,12 @@ public class RemindExpensesTask implements Runnable {
    WeiXinOpenIdUtils weiXinOpenIdUtils;
    @Autowired
    ConsultService consultService;
    @Autowired
    private PushMsgTask pushMsgTask;
    private SMSService smsService;
    public RemindExpensesTask(List<Patient> patients, Doctor doctor, Hospital hospital,SMSService smsService) {
        this.patients = patients;
        this.doctor = doctor;
@ -70,7 +73,7 @@ public class RemindExpensesTask implements Runnable {
                json.put("remark", "");
                if (StringUtils.isNotEmpty(p.getOpenid())) {
                    // 添加到发送队列
                    PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, p.getOpenid(), p.getName(), json);
                    pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 8, p.getOpenid(), p.getName(), json);
                }
                //发送代理人
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
@ -84,7 +87,7 @@ public class RemindExpensesTask implements Runnable {
                        data.put("toUser",member.getCode());
                        data.remove("doctorName");
                        data.put("doctorName", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()) +"\n"+first);
                        PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, member.getOpenid(), p.getName(), data);
                        pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 8, member.getOpenid(), p.getName(), data);
                    }
                }

+ 4 - 3
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/common/account/WechatController.java

@ -64,7 +64,8 @@ public class WechatController extends WeixinBaseController {
    AccessTokenService accessTokenService;
    @Autowired
    HttpUtil HttpUtil;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 患者注册-验证手机号
@ -609,7 +610,7 @@ public class WechatController extends WeixinBaseController {
            //判断是否判定openId,有没有发则查找家人发送
            if (StringUtils.isNotBlank(patient.getOpenid())) {
                // 添加到发送队列
                PushMsgTask.getInstance().putWxMsg(getAccessToken(), 5, patient.getOpenid(), patient.getName(), json);
                pushMsgTask.putWxMsg(getAccessToken(), 5, patient.getOpenid(), patient.getName(), json);
            } else {
                JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(patient.getCode());
                Patient member = (Patient) j.get("member");
@ -617,7 +618,7 @@ public class WechatController extends WeixinBaseController {
                    String first = (String) json.get("first");
                    json.remove("first");
                    json.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), patient.getName()) + first);
                    PushMsgTask.getInstance().putWxMsg(getAccessToken(), 5, member.getOpenid(), patient.getName(), json);
                    pushMsgTask.putWxMsg(getAccessToken(), 5, member.getOpenid(), patient.getName(), json);
                }
            }

+ 7 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultPublicController.java

@ -53,6 +53,9 @@ public class DoctorConsultPublicController extends BaseController {
	WeiXinAccessTokenUtils weiXinAccessTokenUtils;
	@Autowired
	WeiXinOpenIdUtils weiXinOpenIdUtils;
	@Autowired
	private PushMsgTask pushMsgTask;
	/**
	 * 查询公共咨询记录
	 * @param type 查询类型:0全部,1我的回答
@ -251,7 +254,7 @@ public class DoctorConsultPublicController extends BaseController {
				//判断是否判定openId,有没有发则查找家人发送
				if(StringUtils.isNotBlank(p.getOpenid())){
					// 添加到发送队列
					PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, p.getOpenid(), p.getName(), json);
					pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, p.getOpenid(), p.getName(), json);
				}
//				else{
//					JSONObject j  = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -260,7 +263,7 @@ public class DoctorConsultPublicController extends BaseController {
//						String first = (String) json.get("first");
//						json.remove("first");
//						json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
//						PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, member.getOpenid(), member.getName(), json);
//						pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, member.getOpenid(), member.getName(), json);
//					}
//				}
				//发送代理人
@ -274,13 +277,13 @@ public class DoctorConsultPublicController extends BaseController {
						data.put("toUser",member.getCode());
						data.remove("first");
						data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName())+first);
						PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, member.getOpenid(), p.getName(), data);
						pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, member.getOpenid(), p.getName(), data);
					}
				}
				// 推送消息给患者
				//PushMsgTask.getInstance().put(cp.getPatient(), MessageType.MESSAGE_TYPE_PATIENT_CONSULT_PUBLIC_REPLY.P_CP_01.name(), MessageType.MESSAGE_TYPE_PATIENT_CONSULT_PUBLIC_REPLY.公共咨询.name(), MessageType.MESSAGE_TYPE_PATIENT_CONSULT_PUBLIC_REPLY.医生回复了您.name(), consult);
				//pushMsgTask.put(cp.getPatient(), MessageType.MESSAGE_TYPE_PATIENT_CONSULT_PUBLIC_REPLY.P_CP_01.name(), MessageType.MESSAGE_TYPE_PATIENT_CONSULT_PUBLIC_REPLY.公共咨询.name(), MessageType.MESSAGE_TYPE_PATIENT_CONSULT_PUBLIC_REPLY.医生回复了您.name(), consult);
				return success("回复成功!");
			} else {
				return error(-1, "回复失败!");

+ 6 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/health/DoctorHealthEduArticleController.java

@ -78,6 +78,8 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
    ConsultService consultService;
    @Autowired
    WeiXinOpenIdUtils weiXinOpenIdUtils;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 查询
@ -451,7 +453,7 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
                    Map<String, Object> map = msgs.get(key);
                    String openid = (String)map.get("openid");
                    if(StringUtils.isNotBlank(openid)){
                        PushMsgTask.getInstance().putWxMsg(getAccessToken(), 9,
                        pushMsgTask.putWxMsg(getAccessToken(), 9,
                                map.get("openid") == null ? "" : map.get("openid").toString(),
                                map.get("name") == null ? "" : map.get("name").toString(),
                                (JSONObject) map.get("json"));
@ -465,7 +467,7 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
//                        data.remove("first");
//                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.isNull("relation")?1:j.getInt("relation"),p.getName()));
//                        if(StringUtils.isNotBlank(member.getOpenid())){
//                            PushMsgTask.getInstance().putWxMsg(getAccessToken(), 9, member.getOpenid(), member.getName(), data);
//                            pushMsgTask.putWxMsg(getAccessToken(), 9, member.getOpenid(), member.getName(), data);
//                        }
//                    }
                    //发送代理人
@ -482,7 +484,7 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
                            data.remove("first");
                            data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.isNull("relation")?1:j.getInt("relation"),p.getName()));
                            if(StringUtils.isNotBlank(member.getOpenid())){
                                PushMsgTask.getInstance().putWxMsg(getAccessToken(), 9, member.getOpenid(), p.getName(), data);
                                pushMsgTask.putWxMsg(getAccessToken(), 9, member.getOpenid(), p.getName(), data);
                            }
                        }
                    }
@ -493,7 +495,7 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
                    BusinessLogs.info(BusinessLogs.BusinessType.article, getUID(), heap.getPatient(), new JSONObject(heap));
                }
                // 推送消息给患者
                PushMsgTask.getInstance().put(messages);
                pushMsgTask.put(messages);
                return success("发送成功!");
            }
        } catch (Exception e) {

+ 4 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/ManagerQuestionnaireController.java

@ -51,6 +51,8 @@ public class ManagerQuestionnaireController extends WeixinBaseController {
    private WeiXinAccessTokenUtils weiXinAccessTokenUtils;
    private Logger logger = LoggerFactory.getLogger(this.getClass());
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 获取问卷列表
     *
@ -480,7 +482,7 @@ public class ManagerQuestionnaireController extends WeixinBaseController {
                            // 添加到发送队列
                            logger.error("json =======>" + json);
//                            PushMsgTask.getInstance().putWxMsg(accessToken, 11, openId, name, json);
                            PushMsgTask.getInstance().sendWeixinMessage(accessToken, 11, openId, name, json);
                            pushMsgTask.sendWeixinMessage(accessToken, 11, openId, name, json);
                        }
//                        else {
//                            JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(p.getOpenid());
@ -513,7 +515,7 @@ public class ManagerQuestionnaireController extends WeixinBaseController {
                                    } catch (Exception e) {
                                        e.printStackTrace();
                                    }
                                    PushMsgTask.getInstance().sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), p.getName(), json);
                                    pushMsgTask.sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), p.getName(), json);
                                }
                            }
                        }

+ 4 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/booking/PatientBookingController.java

@ -43,6 +43,8 @@ public class PatientBookingController extends WeixinBaseController{
    WeiXinOpenIdUtils weiXinOpenIdUtils;
    @Autowired
    private JwSmjkService jwSmjkService;
    @Autowired
    private PushMsgTask pushMsgTask;
    @RequestMapping(value = "CancelOrder", method = RequestMethod.POST)
@ -91,7 +93,7 @@ public class PatientBookingController extends WeixinBaseController{
                    //判断是否判定openId,有没有发则查找家人发送
                    if(StringUtils.isNotBlank(p.getOpenid())){
                        // 添加到发送队列
                        PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, p.getOpenid(), obj.getName(), json);
                        pushMsgTask.putWxMsg(getAccessToken(), 7, p.getOpenid(), obj.getName(), json);
                    }
//                    else{
//                        JSONObject j  = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -115,7 +117,7 @@ public class PatientBookingController extends WeixinBaseController{
                            data.put("toUser",member.getCode());
                            data.remove("first");
                            data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName())+first);
                            PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, member.getOpenid(), p.getName(), data);
                            pushMsgTask.putWxMsg(getAccessToken(), 7, member.getOpenid(), p.getName(), data);
                        }
                    }
                }

+ 64 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/sign/PatientSignController.java

@ -339,4 +339,68 @@ public class PatientSignController extends BaseController {
            return error(-1, "查询失败");
        }
    }
    /**
     * 获取厦门市区
     * @return
     */
    @RequestMapping(value = "/getTownList", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getTownList(){
        try {
            return write(200, "查询成功", "data", signWebService.getTownList());
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
    /**
     * 获取街道下居委会
     * @param street
     * @return
     */
    @RequestMapping(value = "/getCountryListByStreet", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getCountryListByStreet(@RequestParam(required = true)String street){
        try {
            return write(200, "查询成功", "data", signWebService.getCountryListByStreet(street));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
    /**
     * 获取居委会字段
     * @param countryCode
     * @return
     */
    @RequestMapping(value = "/updatePatientCountry", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String setPatientCountry(@RequestParam(required = true)String countryCode){
        try {
            return write(200, "保存成功", "data", signWebService.setPatientCountry(countryCode,getRepUID()));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
    /**
     * 获取区域下街道
     * @param town
     * @return
     */
    @RequestMapping(value = "/getStreetListByTown", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getStreetListByTown(@RequestParam(required = true)String town){
        try {
            return write(200, "查询成功", "data", signWebService.getStreetListByTown(town));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
}

+ 11 - 9
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/BookingController.java

@ -72,6 +72,8 @@ public class BookingController extends WeixinBaseController {
    private JwSmjkService jwSmjkService;
    @Autowired
    private HttpClientUtil HttpClientUtil;
    @Autowired
    private PushMsgTask pushMsgTask;
    /**
     * 根据城市编码获取相应挂号服务
@ -334,7 +336,7 @@ public class BookingController extends WeixinBaseController {
                //判断是否判定openId,有没有发则查找家人发送
                if(StringUtils.isNotBlank(p.getOpenid())){
                        // 添加到发送队列
                        PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, p.getOpenid(), p.getName(), json);
                        pushMsgTask.putWxMsg(getAccessToken(), 6, p.getOpenid(), p.getName(), json);
                }
//                else{
//                    JSONObject j  = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -343,7 +345,7 @@ public class BookingController extends WeixinBaseController {
//                        String first = (String) json.get("first");
//                        json.remove("first");
//                        json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
//                        PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, member.getOpenid(), member.getName(), json);
//                        pushMsgTask.putWxMsg(getAccessToken(), 6, member.getOpenid(), member.getName(), json);
//                    }
//                }
                //发送代理人
@ -358,7 +360,7 @@ public class BookingController extends WeixinBaseController {
                        //String first = (String) json.get("first");
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName()));
                        PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, member.getOpenid(), p.getName(), data);
                        pushMsgTask.putWxMsg(getAccessToken(), 6, member.getOpenid(), p.getName(), data);
                    }
                }
@ -426,7 +428,7 @@ public class BookingController extends WeixinBaseController {
                    //判断是否判定openId,有没有发则查找家人发送
                    if(StringUtils.isNotBlank(p.getOpenid())){
                        // 添加到发送队列
                        PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, p.getOpenid(), obj.getName(), json);
                        pushMsgTask.putWxMsg(getAccessToken(), 7, p.getOpenid(), obj.getName(), json);
                    }
//                    else{
//                        JSONObject j  = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -435,7 +437,7 @@ public class BookingController extends WeixinBaseController {
//                            String first = (String) json.get("first");
//                            json.remove("first");
//                            json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
//                            PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, member.getOpenid(), member.getName(), json);
//                            pushMsgTask.putWxMsg(getAccessToken(), 7, member.getOpenid(), member.getName(), json);
//                        }
//                    }
                    //发送代理人
@ -450,7 +452,7 @@ public class BookingController extends WeixinBaseController {
                            //String first = (String) json.get("first");
                            data.remove("first");
                            data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName()));
                            PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, member.getOpenid(), p.getName(), data);
                            pushMsgTask.putWxMsg(getAccessToken(), 7, member.getOpenid(), p.getName(), data);
                        }
                    }
                }
@ -570,7 +572,7 @@ public class BookingController extends WeixinBaseController {
                        //判断是否判定openId,有没有发则查找家人发送
                        if(StringUtils.isNotBlank(p.getOpenid())){
                            // 添加到发送队列
                            PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, p.getOpenid(), patientName, json);
                            pushMsgTask.putWxMsg(getAccessToken(), 6, p.getOpenid(), patientName, json);
                        }
//                        else{
//                            JSONObject j  = weiXinOpenIdUtils.getFamilyOpenId(p.getCode());
@ -579,7 +581,7 @@ public class BookingController extends WeixinBaseController {
//                                String first = (String) json.get("first");
//                                json.remove("first");
//                                json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
//                                PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, member.getOpenid(), member.getName(), json);
//                                pushMsgTask.putWxMsg(getAccessToken(), 6, member.getOpenid(), member.getName(), json);
//                            }
//                        }
                        //发送代理人
@ -594,7 +596,7 @@ public class BookingController extends WeixinBaseController {
                                //String first = (String) json.get("first");
                                data.remove("first");
                                data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),p.getName()));
                                PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, member.getOpenid(), p.getName(), data);
                                pushMsgTask.putWxMsg(getAccessToken(), 6, member.getOpenid(), p.getName(), data);
                            }
                        }