Browse Source

代码修改

yeshijie 8 years ago
parent
commit
4a9cae306d
17 changed files with 183 additions and 218 deletions
  1. 22 28
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/account/DoctorInfoService.java
  2. 14 18
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java
  3. 0 5
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/family/FamilyMemberService.java
  4. 8 10
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/health/PatientHealthGuidanceService.java
  5. 30 36
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java
  6. 8 10
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/PatientRemindService.java
  7. 14 14
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java
  8. 3 3
      patient-co-wlyy/src/main/java/com/yihu/wlyy/service/survey/ManagerQuestionnaireService.java
  9. 7 9
      patient-co-wlyy/src/main/java/com/yihu/wlyy/task/RemindExpensesTask.java
  10. 15 18
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/common/account/WechatController.java
  11. 7 9
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultPublicController.java
  12. 3 3
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/health/DoctorHealthEduArticleController.java
  13. 3 3
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/ManagerQuestionnaireController.java
  14. 7 9
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/booking/PatientBookingController.java
  15. 8 7
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/family/FamilyMemberController.java
  16. 24 30
      patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/BookingController.java
  17. 10 6
      patient-co-wlyy/src/main/java/com/yihu/wlyy/wechat/util/WeiXinOpenIdUtils.java

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

@ -887,20 +887,18 @@ public class DoctorInfoService extends BaseService {
//            }
//        }
        //发送代理人
        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
        if(jsonArray!=null&&jsonArray.length()>0){
            String first = (String) data.get("first");
            for (int i = 0;i<jsonArray.length();i++){
                JSONObject j  = jsonArray.getJSONObject(i);
                Patient member = (Patient) j.get("member");
                if(StringUtils.isNotBlank(member.getOpenid())){
                    JSONObject json = data;
                    json.remove("toUser");
                    json.put("toUser",member.getCode());
                    json.remove("first");
                    json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), json);
                }
                JSONObject json = data;
                json.remove("toUser");
                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);
            }
        }
    }
@ -1020,20 +1018,18 @@ public class DoctorInfoService extends BaseService {
//        }
        //发送代理人
        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
        if(jsonArray!=null&&jsonArray.length()>0){
            String first = (String) data.get("first");
            for (int i = 0;i<jsonArray.length();i++){
                JSONObject j  = jsonArray.getJSONObject(i);
                Patient member = (Patient) j.get("member");
                if(StringUtils.isNotBlank(member.getOpenid())){
                    JSONObject json = data;
                    json.remove("toUser");
                    json.put("toUser",member.getCode());
                    json.remove("first");
                    json.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), json);
                }
                JSONObject json = data;
                json.remove("toUser");
                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);
            }
        }
        return 1;
@ -1243,20 +1239,18 @@ public class DoctorInfoService extends BaseService {
//        }
        //发送代理人
        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
        if(jsonArray!=null&&jsonArray.length()>0){
            for (int i = 0;i<jsonArray.length();i++){
                JSONObject j  = jsonArray.getJSONObject(i);
                Patient member = (Patient) j.get("member");
                if(StringUtils.isNotBlank(member.getOpenid())){
                    JSONObject json = data;
                    json.remove("toUser");
                    json.put("toUser",member.getCode());
                    json.remove("first");
                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) json.get("relation"), member.getName()) + p.getName() + ",您好!因签约团队内分工调整,您的责任医生有变动," + oldDoctorName +
                            "医生无法继续为您服务,具体变动如下:");
                    PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), json);
                }
                JSONObject json = data;
                json.remove("toUser");
                json.put("toUser",member.getCode());
                json.remove("first");
                json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) json.get("relation"), p.getName()) + p.getName() + ",您好!因签约团队内分工调整,您的责任医生有变动," + oldDoctorName +
                        "医生无法继续为您服务,具体变动如下:");
                PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), p.getName(), json);
            }
        }
    }

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

@ -1815,19 +1815,17 @@ public class ConsultTeamService extends ConsultService {
            }
            //发送代理人
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
            if(jsonArray!=null&&jsonArray.length()>0){
                for (int i = 0;i<jsonArray.length();i++){
                    JSONObject j  = jsonArray.getJSONObject(i);
                    Patient member = (Patient) j.get("member");
                    if(StringUtils.isNotBlank(member.getOpenid())){
                        JSONObject data = json;
                        data.remove("toUser");
                        data.put("toUser",member.getCode());
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
                        PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 17, openId, p.getName(), data);
                    }
                    JSONObject data = json;
                    data.remove("toUser");
                    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, openId, p.getName(), data);
                }
            }
        } else {
@ -1858,19 +1856,17 @@ public class ConsultTeamService extends ConsultService {
                }
                //发送代理人
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                if(jsonArray!=null&&jsonArray.length()>0){
                    for (int i = 0;i<jsonArray.length();i++){
                        JSONObject j  = jsonArray.getJSONObject(i);
                        Patient member = (Patient) j.get("member");
                        if(StringUtils.isNotBlank(member.getOpenid())){
                            JSONObject data = json;
                            data.remove("toUser");
                            data.put("toUser",member.getCode());
                            data.remove("first");
                            data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
                            PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 17, member.getOpenid(), p.getName(), data);
                        }
                        JSONObject data = json;
                        data.remove("toUser");
                        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);
                    }
                }

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

@ -599,11 +599,6 @@ public class FamilyMemberService extends BaseService {
        if(familyMember==null||0==familyMember.getIsAuthorize()){
            return null;
        }
        Patient p = patientDao.findByCode(member);
        json.put("code", p.getCode());
        json.put("name", p.getName());
        return json;
    }

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

@ -154,20 +154,18 @@ public class PatientHealthGuidanceService extends BaseService {
				PushMsgTask.getInstance().putWxMsg(accessToken, 4, openId, patient.getName(), json);
			}
			//发送代理人
			JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(patient.getCode());
			JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(patient.getCode(),patient.getOpenid());
			if(jsonArray!=null&&jsonArray.length()>0){
				for (int i = 0;i<jsonArray.length();i++){
					JSONObject j  = jsonArray.getJSONObject(i);
					Patient member = (Patient) j.get("member");
					if(StringUtils.isNotBlank(member.getOpenid())){
						JSONObject data = json;
						data.remove("toUser");
						data.put("toUser",member.getCode());
						String first = (String) json.get("first");
						data.remove("first");
						data.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), member.getName()) + "健康指导提醒");
						PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 4, member.getOpenid(), member.getName(), data);
					}
					JSONObject data = json;
					data.remove("toUser");
					data.put("toUser",member.getCode());
					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);
				}
			}

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

@ -1037,8 +1037,8 @@ public class FamilyContractService extends BaseService {
                    if (StringUtils.isNotBlank(member.getOpenid())) {
                        String first = (String) json.get("first");
                        json.remove("first");
                        json.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), member.getName()));
                        PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), member.getName(), json);
                        json.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), sf.getName()));
                        PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), sf.getName(), json);
                    }
                }
            }
@ -1294,8 +1294,8 @@ public class FamilyContractService extends BaseService {
                if (StringUtils.isNotBlank(member.getOpenid())) {
                    String first = (String) json.get("first");
                    json.remove("first");
                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), member.getName(), json);
                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), p.getName(), json);
                }
            }
@ -1336,8 +1336,8 @@ public class FamilyContractService extends BaseService {
                if (StringUtils.isNotBlank(member.getOpenid())) {
                    String first = (String) json.get("first");
                    json.remove("first");
                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), member.getName(), json);
                    json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()));
                    PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), p.getName(), json);
                }
            }
@ -1432,21 +1432,19 @@ public class FamilyContractService extends BaseService {
//                }
//            }
            //发送代理人
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(sf.getPatient());
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(sf.getPatient(),sf.getOpenid());
            if(jsonArray!=null&&jsonArray.length()>0){
                Patient p = patientDao.findByCode(patient);
                for (int i = 0;i<jsonArray.length();i++){
                    JSONObject j  = jsonArray.getJSONObject(i);
                    Patient member = (Patient) j.get("member");
                    if(StringUtils.isNotBlank(member.getOpenid())){
                        JSONObject data = json;
                        data.remove("toUser");
                        data.put("toUser",member.getCode());
                        String first = (String) json.get("first");
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName()));
                        PushMsgTask.getInstance().putWxMsg(access_token, 5, member.getOpenid(), member.getName(), data);
                    }
                    JSONObject data = json;
                    data.remove("toUser");
                    data.put("toUser",member.getCode());
                    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);
                }
            }
        } else {
@ -1479,21 +1477,19 @@ public class FamilyContractService extends BaseService {
//                }
//            }
            //发送代理人
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(sf.getPatient());
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(sf.getPatient(),sf.getOpenid());
            if(jsonArray!=null&&jsonArray.length()>0){
                Patient p = patientDao.findByCode(patient);
                for (int i = 0;i<jsonArray.length();i++){
                    JSONObject j  = jsonArray.getJSONObject(i);
                    Patient member = (Patient) j.get("member");
                    if(StringUtils.isNotBlank(member.getOpenid())){
                        JSONObject data = json;
                        data.remove("toUser");
                        data.put("toUser",member.getCode());
                        String first = (String) json.get("first");
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName()));
                        PushMsgTask.getInstance().putWxMsg(access_token, 5, member.getOpenid(), member.getName(), data);
                    }
                    JSONObject data = json;
                    data.remove("toUser");
                    data.put("toUser",member.getCode());
                    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);
                }
            }
@ -2123,20 +2119,18 @@ public class FamilyContractService extends BaseService {
//                }
//            }
            //发送代理人
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
            if(jsonArray!=null&&jsonArray.length()>0){
                for (int i = 0;i<jsonArray.length();i++){
                    JSONObject j  = jsonArray.getJSONObject(i);
                    Patient member = (Patient) j.get("member");
                    if(StringUtils.isNotBlank(member.getOpenid())){
                        JSONObject data = msg;
                        data.remove("toUser");
                        data.put("toUser",member.getCode());
                        String first = (String) data.get("first");
                        data.remove("first");
                        data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName()));
                        PushMsgTask.getInstance().putWxMsg(accessTokenUtils.getAccessToken(), 10, member.getOpenid(), member.getName(), data);
                    }
                    JSONObject data = msg;
                    data.remove("toUser");
                    data.put("toUser",member.getCode());
                    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);
                }
            }

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

@ -241,21 +241,19 @@ public class PatientRemindService extends BaseService {
//                    }
//                }
            //发送代理人
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
            JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
            if(jsonArray!=null&&jsonArray.length()>0){
                String first = (String) json.get("doctorName");
                for (int i = 0;i<jsonArray.length();i++){
                    JSONObject j  = jsonArray.getJSONObject(i);
                    Patient member = (Patient) j.get("member");
                    if(StringUtils.isNotBlank(member.getOpenid())){
                        isOpenIdExist = true;
                        JSONObject data = json;
                        data.remove("toUser");
                        data.put("toUser",member.getCode());
                        data.remove("doctorName");
                        data.put("doctorName", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()) +"\n"+first);
                        PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, member.getOpenid(), member.getName(), data);
                    }
                    isOpenIdExist = true;
                    JSONObject data = json;
                    data.remove("toUser");
                    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);
                }
            }

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

@ -965,10 +965,10 @@ public class SignWebService extends BaseService {
                    Patient member = (Patient) j.get("member");
                    Patient p = patientService.findByCode(code);
                    if (StringUtils.isNotBlank(member.getOpenid())) {
                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), member.getName()) + "\n" +
                        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(), member.getName(), json);
                        PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), p.getName(), json);
                    } else {
                        //发送短信
                        String mobile = (String) signFamily.get("mobile");
@ -1044,10 +1044,10 @@ public class SignWebService extends BaseService {
                    Patient member = (Patient) j.get("member");
                    Patient p = patientService.findByCode(code);
                    if (StringUtils.isNotBlank(member.getOpenid())) {
                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), member.getName()) + "\n" +
                        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(), member.getName(), json);
                        PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), p.getName(), json);
                    } else {
                        //发送短信
                        String mobile = (String) signFamily.get("mobile");
@ -1159,17 +1159,17 @@ public class SignWebService extends BaseService {
                    if (StringUtils.isNotBlank(member.getOpenid())) {
                        if ("0".equals(state)) {
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), member.getName()) + "\n" +
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), patient.getName()) + "\n" +
                                    patient.getName() + ",您好!\n" +
                                    "您的家庭医生续签申请已被拒绝");
                            data.put("remark", "您可选择其他医生进行签约。");
                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), member.getName(), data);
                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
                        } else if ("1".equals(state)) {
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), member.getName()) + "\n" +
                            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(), member.getName(), data);
                            PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                        }
                    }
                }
@ -1290,17 +1290,17 @@ public class SignWebService extends BaseService {
                    if (StringUtils.isNotBlank(member.getOpenid())) {
                        if ("0".equals(state)) {
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), member.getName()) + "\n" +
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), patient.getName()) + "\n" +
                                    patient.getName() + ",您好!\n" +
                                    "您的家庭医生续签申请已被拒绝");
                            data.put("remark", "您可在到期后选择其他医生进行签约。");
                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), member.getName(), data);
                            PushMsgTask.getInstance().putWxMsg(access_token, 2, member.getOpenid(), patient.getName(), data);
                        } else if ("1".equals(state)) {
                            data.put("first", weiXinOpenIdUtils.getTitleMes(patient, (int) j.get("relation"), member.getName()) + "\n" +
                            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(), member.getName(), data);
                            PushMsgTask.getInstance().putWxMsg(access_token, 1, member.getOpenid(), patient.getName(), data);
                        }
                    }
                }
@ -1474,10 +1474,10 @@ public class SignWebService extends BaseService {
            JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(patientCode);
            Patient member = (Patient) j.get("member");
            if (StringUtils.isNotBlank(member.getOpenid())) {
                json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), member.getName()) + "\n" +
                json.put("first", weiXinOpenIdUtils.getTitleMes(p, (int) j.get("relation"), name) + "\n" +
                        name + ",您好!\n" +
                        "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), member.getName(), json);
                PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), name, json);
                patientSetReminFlag(patientCode);
                return 1;
            } else {

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

@ -279,7 +279,7 @@ public class ManagerQuestionnaireService extends BaseService {
//                            }
//                        }
                        //发送代理人
                        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                        if(jsonArray!=null&&jsonArray.length()>0){
                            for (int i = 0;i<jsonArray.length();i++){
                                JSONObject j  = jsonArray.getJSONObject(i);
@ -289,11 +289,11 @@ public class ManagerQuestionnaireService extends BaseService {
                                    json.put("toUser",member.getCode());
                                    json.remove("first");
                                    try {
                                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()) + first);
                                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()) + first);
                                    } catch (Exception e) {
                                        e.printStackTrace();
                                    }
                                    PushMsgTask.getInstance().sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), member.getName(), json);
                                    PushMsgTask.getInstance().sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), p.getName(), json);
                                }
                            }
                        }

+ 7 - 9
patient-co-wlyy/src/main/java/com/yihu/wlyy/task/RemindExpensesTask.java

@ -70,20 +70,18 @@ public class RemindExpensesTask implements Runnable {
                    PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, p.getOpenid(), p.getName(), json);
                }
                //发送代理人
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                if(jsonArray!=null&&jsonArray.length()>0){
                    String first = (String) json.get("doctorName");
                    for (int i = 0;i<jsonArray.length();i++){
                        JSONObject j  = jsonArray.getJSONObject(i);
                        Patient member = (Patient) j.get("member");
                        if(StringUtils.isNotBlank(member.getOpenid())){
                            JSONObject data = json;
                            data.remove("toUser");
                            data.put("toUser",member.getCode());
                            data.remove("doctorName");
                            data.put("doctorName", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()) +"\n"+first);
                            PushMsgTask.getInstance().putWxMsg(tokenUtils.getAccessToken(), 8, member.getOpenid(), member.getName(), data);
                        }
                        JSONObject data = json;
                        data.remove("toUser");
                        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);
                    }
                }

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

@ -1,41 +1,38 @@
package com.yihu.wlyy.web.common.account;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.util.*;
import com.yihu.wlyy.entity.login.LoginLog;
import com.yihu.wlyy.entity.patient.PatientFamilyMember;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.SocialSecurityInfo;
import com.yihu.wlyy.entity.security.AccessToken;
import com.yihu.wlyy.entity.security.Token;
import com.yihu.wlyy.logs.BusinessLogs;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.SocialSecurityInfoDao;
import com.yihu.wlyy.service.app.family.FamilyMemberService;
import com.yihu.wlyy.service.app.family.FamilyService;
import com.yihu.wlyy.service.common.SMSService;
import com.yihu.wlyy.service.common.account.AccessTokenService;
import com.yihu.wlyy.service.common.account.PatientService;
import com.yihu.wlyy.service.common.account.TokenService;
import com.yihu.wlyy.service.common.login.LoginLogService;
import com.yihu.wlyy.util.*;
import com.yihu.wlyy.task.PushMsgTask;
import com.yihu.wlyy.util.HttpUtil;
import com.yihu.wlyy.util.IdcardValidator;
import com.yihu.wlyy.util.MD5;
import com.yihu.wlyy.util.RSAUtils;
import com.yihu.wlyy.web.WeixinBaseController;
import com.yihu.wlyy.wechat.util.WeiXinOpenIdUtils;
import io.swagger.annotations.Api;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.security.Token;
import com.yihu.wlyy.service.common.SMSService;
import com.yihu.wlyy.service.common.account.PatientService;
import com.yihu.wlyy.service.common.account.TokenService;
import com.yihu.wlyy.task.PushMsgTask;
import com.yihu.wlyy.web.WeixinBaseController;
import java.net.URLDecoder;
import java.util.*;
/**
 * @author calvin
@ -617,8 +614,8 @@ public class WechatController extends WeixinBaseController {
                if (StringUtils.isNotBlank(member.getOpenid())) {
                    String first = (String) json.get("first");
                    json.remove("first");
                    json.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), member.getName()) + first);
                    PushMsgTask.getInstance().putWxMsg(getAccessToken(), 5, member.getOpenid(), member.getName(), json);
                    json.put("first", weiXinOpenIdUtils.getTitleMes(patient, j.getInt("relation"), patient.getName()) + first);
                    PushMsgTask.getInstance().putWxMsg(getAccessToken(), 5, member.getOpenid(), patient.getName(), json);
                }
            }

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

@ -262,19 +262,17 @@ public class DoctorConsultPublicController extends BaseController {
//					}
//				}
				//发送代理人
				JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
				JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
				if(jsonArray!=null&&jsonArray.length()>0){
					for (int i = 0;i<jsonArray.length();i++){
						JSONObject j  = jsonArray.getJSONObject(i);
						Patient member = (Patient) j.get("member");
						if(StringUtils.isNotBlank(member.getOpenid())){
							JSONObject data = json;
							data.remove("toUser");
							data.put("toUser",member.getCode());
							data.remove("first");
							data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
							PushMsgTask.getInstance().putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 3, member.getOpenid(), member.getName(), data);
						}
						JSONObject data = json;
						data.remove("toUser");
						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);
					}
				}

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

@ -469,7 +469,7 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
//                        }
//                    }
                    //发送代理人
                    JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId((String)map.get("code"));
                    JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId((String)map.get("code"),openid);
                    if(jsonArray!=null&&jsonArray.length()>0){
                        Patient p = patientService.findByCode((String)map.get("code"));
                        for (int i=0;i<jsonArray.length();i++){
@ -480,9 +480,9 @@ public class DoctorHealthEduArticleController extends WeixinBaseController {
                            data.put("toUser",member.getCode());
                            String first = (String)data.get("first");
                            data.remove("first");
                            data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.isNull("relation")?1:j.getInt("relation"),member.getName()));
                            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.getInstance().putWxMsg(getAccessToken(), 9, member.getOpenid(), p.getName(), data);
                            }
                        }
                    }

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

@ -499,7 +499,7 @@ public class ManagerQuestionnaireController extends WeixinBaseController {
//                            }
//                        }
                        //发送代理人
                        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                        if(jsonArray!=null&&jsonArray.length()>0){
                            for (int i = 0;i<jsonArray.length();i++){
                                JSONObject j  = jsonArray.getJSONObject(i);
@ -509,11 +509,11 @@ public class ManagerQuestionnaireController extends WeixinBaseController {
                                    json.put("toUser",member.getCode());
                                    json.remove("first");
                                    try {
                                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), member.getName()) + first);
                                        json.put("first", weiXinOpenIdUtils.getTitleMes(p, j.getInt("relation"), p.getName()) + first);
                                    } catch (Exception e) {
                                        e.printStackTrace();
                                    }
                                    PushMsgTask.getInstance().sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), member.getName(), json);
                                    PushMsgTask.getInstance().sendWeixinMessage(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), p.getName(), json);
                                }
                            }
                        }

+ 7 - 9
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/booking/PatientBookingController.java

@ -95,20 +95,18 @@ public class PatientBookingController extends WeixinBaseController{
//                        }
//                    }
                    //发送代理人
                    JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                    JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                    if(jsonArray!=null&&jsonArray.length()>0){
                        String first = (String) json.get("first");
                        for (int i = 0;i<jsonArray.length();i++){
                            JSONObject j  = jsonArray.getJSONObject(i);
                            Patient member = (Patient) j.get("member");
                            if(StringUtils.isNotBlank(member.getOpenid())){
                                JSONObject data = json;
                                data.remove("toUser");
                                data.put("toUser",member.getCode());
                                data.remove("first");
                                data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName())+first);
                                PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, member.getOpenid(), member.getName(), data);
                            }
                            JSONObject data = json;
                            data.remove("toUser");
                            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);
                        }
                    }
                }

+ 8 - 7
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/family/FamilyMemberController.java

@ -230,19 +230,20 @@ public class FamilyMemberController extends WeixinBaseController {
                              @ApiParam(name = "familyMember", value = "家人code", defaultValue = "")
                              @RequestParam(value = "familyMember", required = true) String familyMember){
        try {
            Patient member = patientDao.findByCode(patient);
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("code", member.getCode());
            jsonObject.put("name", member.getName());
            if(patient.equals(familyMember)){
                return success("查询成功");
                return write(200,"自己","data", jsonObject);
            }
            JSONObject json = familyMemberService.isAuthorize(patient,familyMember);
            if(json==null){
                Patient member = patientDao.findByCode(familyMember);
                JSONObject jsonObject = new JSONObject();
                jsonObject.put("code", member.getCode());
                jsonObject.put("name", member.getName());
                return write(1,"未授权","data", json);
                return write(1,"未授权","data", jsonObject);
            }
            return write(200, "查询成功", "data", json);
            return write(200, "查询成功", "data", jsonObject);
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1, "查询失败");

+ 24 - 30
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/BookingController.java

@ -325,20 +325,18 @@ public class BookingController extends WeixinBaseController {
//                    }
//                }
                //发送代理人
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                if(jsonArray!=null&&jsonArray.length()>0){
                    for (int i = 0;i<jsonArray.length();i++){
                        JSONObject j  = jsonArray.getJSONObject(i);
                        Patient member = (Patient) j.get("member");
                        if(StringUtils.isNotBlank(member.getOpenid())){
                            JSONObject data = json;
                            data.remove("toUser");
                            data.put("toUser",member.getCode());
                            String first = (String) json.get("first");
                            data.remove("first");
                            data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName()));
                            PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, member.getOpenid(), member.getName(), data);
                        }
                        JSONObject data = json;
                        data.remove("toUser");
                        data.put("toUser",member.getCode());
                        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);
                    }
                }
@ -419,20 +417,18 @@ public class BookingController extends WeixinBaseController {
//                        }
//                    }
                    //发送代理人
                    JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                    JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                    if(jsonArray!=null&&jsonArray.length()>0){
                        for (int i = 0;i<jsonArray.length();i++){
                            JSONObject j  = jsonArray.getJSONObject(i);
                            Patient member = (Patient) j.get("member");
                            if(StringUtils.isNotBlank(member.getOpenid())){
                                JSONObject data = json;
                                data.remove("toUser");
                                data.put("toUser",member.getCode());
                                String first = (String) json.get("first");
                                data.remove("first");
                                data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName()));
                                PushMsgTask.getInstance().putWxMsg(getAccessToken(), 7, member.getOpenid(), member.getName(), data);
                            }
                            JSONObject data = json;
                            data.remove("toUser");
                            data.put("toUser",member.getCode());
                            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);
                        }
                    }
                }
@ -565,20 +561,18 @@ public class BookingController extends WeixinBaseController {
//                            }
//                        }
                        //发送代理人
                        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode());
                        JSONArray jsonArray = weiXinOpenIdUtils.getAgentOpenId(p.getCode(),p.getOpenid());
                        if(jsonArray!=null&&jsonArray.length()>0){
                            for (int i = 0;i<jsonArray.length();i++){
                                JSONObject j  = jsonArray.getJSONObject(i);
                                Patient member = (Patient) j.get("member");
                                if(StringUtils.isNotBlank(member.getOpenid())){
                                    JSONObject data = json;
                                    data.remove("toUser");
                                    data.put("toUser",member.getCode());
                                    String first = (String) json.get("first");
                                    data.remove("first");
                                    data.put("first",weiXinOpenIdUtils.getTitleMes(p,j.getInt("relation"),member.getName()));
                                    PushMsgTask.getInstance().putWxMsg(getAccessToken(), 6, member.getOpenid(), member.getName(), data);
                                }
                                JSONObject data = json;
                                data.remove("toUser");
                                data.put("toUser",member.getCode());
                                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);
                            }
                        }

+ 10 - 6
patient-co-wlyy/src/main/java/com/yihu/wlyy/wechat/util/WeiXinOpenIdUtils.java

@ -105,21 +105,25 @@ public class WeiXinOpenIdUtils {
     * @param code
     * @return
     */
    public JSONArray getAgentOpenId(String code) {
    public JSONArray getAgentOpenId(String code,String openid) {
        JSONArray result = new JSONArray();
        StringBuffer sql = new StringBuffer("SELECT * FROM wlyy_patient_family_member t WHERE t.patient = '" + code + "' and t.is_authorize =1 ");
        List<Map<String, Object>> members = jdbcTemplate.queryForList(sql.toString());
        if (members != null && members.size() > 0) {
            Map<String,String> map = new HashMap<>();
            for (Map<String, Object> member : members) {
                String memberCode = (String) member.get("family_member");
                if (StringUtils.isNotBlank(memberCode)) {
                    Patient p = patientDao.findByCode(memberCode);
                    if (StringUtils.isNotBlank(p.getOpenid())) {
                        JSONObject json = new JSONObject();
                        json.put("member", p);
                        json.put("relation", (int) member.get("family_relation"));
                        result.put(json);
                    if (StringUtils.isNotBlank(p.getOpenid())&&!p.getOpenid().equals(openid)) {
                        if(!map.containsKey(p.getOpenid())){
                            map.put(p.getOpenid(),p.getOpenid());
                            JSONObject json = new JSONObject();
                            json.put("member", p);
                            json.put("relation", (int) member.get("family_relation"));
                            result.put(json);
                        }
                    }
                }
            }