Bläddra i källkod

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

trick9191 8 år sedan
förälder
incheckning
151c011c8e

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

@ -3534,7 +3534,7 @@ public class FamilyContractService extends BaseService {
                        if(labelCode.indexOf("-")==-1){
                            if(labelCode.equals(serverType)){
                                Map<String,String> code = new HashMap<>();
                                code.put("code",serverType);
                                code.put("code",(String)p.get("patient"));
                                codes.add(code);
                                iterator.remove();
                            }
@ -3542,7 +3542,7 @@ public class FamilyContractService extends BaseService {
                            String[] key = labelCode.split("-");
                            if(key[0].equals(serverType)){
                                Map<String,String> code = new HashMap<>();
                                code.put("code",serverType);
                                code.put("code",(String)p.get("patient"));
                                codes.add(code);
                                iterator.remove();
                            }

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

@ -982,6 +982,85 @@ public class SignWebService extends BaseService {
    }
    /**
     * 批量提醒用户
     *
     * @param access_token
     * @param doctor
     * @return
     * @throws Exception
     */
    public int sendRenewOverToPatients(String access_token, String doctor) throws Exception {
        String sql = "SELECT " +
                " p. NAME, " +
                " p.openid, " +
                " t.doctor_name doctorName, " +
                " p. CODE, " +
                " p.mobile " +
                " FROM " +
                " wlyy_sign_family t, " +
                " wlyy_patient p " +
                " WHERE " +
                " t.patient = p. CODE " +
                " AND t.doctor = '"+doctor+"' " +
                " AND t.status =-4 " +
                " AND t.expenses_status = '1' " +
                " AND t.sign_year = '"+(DateUtil.getSignYear()-1)+"' " +
                " AND NOT EXISTS ( " +
                " SELECT " +
                "  1 " +
                " FROM " +
                "  wlyy_sign_family a " +
                " WHERE " +
                "  a.patient = t.patient " +
                " AND a.status>0  " +
                " AND a.sign_year = '"+DateUtil.getSignYear()+"' " +
                ")";
        List<Map<String, Object>> signFamilies = jdbcTemplate.queryForList(sql, new Object[]{doctor});
        if (signFamilies != null && signFamilies.size() > 0) {
            for (Map<String, Object> signFamily : signFamilies) {
                String openid = (String) signFamily.get("openid");
                String name = (String) signFamily.get("name");
                String doctorName = (String) signFamily.get("doctorName");
                JSONObject json = new JSONObject();
                json.put("keyword1", "续签家庭医生");
                json.put("keyword2", DateUtil.dateToStr(new Date(), "yyyy-MM-dd"));
                json.put("remark", "提醒医生 :" + doctorName + "\n"
                        + "我们将继续为您提供优质的健康服务。");
                if (StringUtils.isNotBlank(openid)) {
                    json.put("first", name + ",您好!\n" +
                            "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                    PushMsgTask.getInstance().putWxMsg(access_token, 16, openid, name, json);
                } else {
                    //如果自己没有绑定,则发给家人
                    String code = (String) signFamily.get("code");
                    JSONObject j = weiXinOpenIdUtils.getFamilyOpenId(code);
                    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" +
                                name + ",您好!\n" +
                                "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。");
                        PushMsgTask.getInstance().putWxMsg(access_token, 16, member.getOpenid(), member.getName(), json);
                    } else {
                        //发送短信
                        String mobile = (String) signFamily.get("mobile");
                        if (StringUtils.isNotBlank(mobile)) {
                            SMSService.sendMsg(mobile, name + "您好!您的家庭医生将于6月30日到期,为了继续给您提供健康服务,请关注“厦门i健康”公众号,回复“续签”,进行家庭医生线上续签。");
                        }
                    }
                }
            }
            return 1;
        }
        return 0;
    }
    /**
     * 同意或拒绝签约签约
     *

+ 7 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/sign/DoctorFamilyContractController.java

@ -223,6 +223,13 @@ public class DoctorFamilyContractController extends WeixinBaseController {
    @ResponseBody
    public String getPatientLables(String labelType, String level, String oldDoctorCode, Long teamCode) {
        try {
            //修改年度服务类型1.3.4需求
            if("1".equals(labelType)){
                JSONObject  rs =  familyContractService.getServerPatientList(teamCode);
                return write(200, "查询成功!", "data", rs);
            }
            int count = 0;
            List listNum = new ArrayList();
            JSONObject list = familyContractService.getPatientByLable(oldDoctorCode, labelType, level, teamCode);

+ 7 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/sign/DoctorSignController.java

@ -424,7 +424,13 @@ public class DoctorSignController extends WeixinBaseController {
    @ApiOperation(value = "提醒用户签约接口")
    public String sendRenewToPatients(){
        try{
            int rs = signWebService.sendRenewToPatients(getAccessToken(),getUID());
            int rs ;
            if(DateUtil.getNowMonth()>=7){
                rs = signWebService.sendRenewOverToPatients(getAccessToken(),getUID());
            }else{
                rs = signWebService.sendRenewToPatients(getAccessToken(),getUID());
            }
            //int rs = signWebService.sendRenewToPatients(getAccessToken(),"zbqD201703150222");
            if(rs == 0){
                return write(200, "您当前签约用户无需提醒!", "data", rs);