LAPTOP-KB9HII50\70708 11 miesięcy temu
rodzic
commit
4b25cd7dac

+ 3 - 0
server/svr-authentication/src/main/java/com/yihu/jw/security/dao/patient/BasePatientDao.java

@ -36,6 +36,9 @@ public interface BasePatientDao extends JpaRepository<BasePatientDO, String>, Jp
    @Query("from BasePatientDO p where p.mobile = ?1 and p.del=?2")
    List<BasePatientDO> findByMobileAndDel(String mobile, String del);
    @Query("from BasePatientDO p where p.idcard = ?1 and p.del=?2")
    List<BasePatientDO> findListByIdcardAndDel(String idcard, String del);
//    @Modifying
//    @Query(" update BasePatientDO a set a.openid=?2 where a.id=?1 ")
//    int updateOpenId(String id, String openId);

+ 2 - 3
server/svr-authentication/src/main/java/com/yihu/jw/security/oauth2/provider/endpoint/WlyyLoginEndpoint.java

@ -2365,7 +2365,7 @@ public class WlyyLoginEndpoint extends AbstractEndpoint {
        return ObjEnvelop.getError("登录失败!");
    }*/
    @RequestMapping(value = "/oauth/registerPatientAndLogin", method = RequestMethod.POST)
    public ObjEnvelop registerPatientAndLogin(String name, String mobile, String idcard, String ssc, String pw,
    public ObjEnvelop registerPatientAndLogin(String name, String mobile, String idcard, String cardType, String ssc, String pw,
                                              String client_id, String login_type, String captcha, String openid, String wxId
            , String geetestChallenge, String geetestValidate, String geetestSeccode) throws Exception {
@ -2461,8 +2461,7 @@ public class WlyyLoginEndpoint extends AbstractEndpoint {
            }
        } else {
            try {
                Map<String, Object> rs = registerService.registerPatient(mobile, pw, name, idcard, ssc, openid);
                Map<String, Object> rs = registerService.registerPatient(mobile, pw, name, idcard,cardType, ssc, openid);
                String code = rs.get("code").toString();
                if (!"1".equals(code)) {
                    ObjEnvelop objEnvelop = new ObjEnvelop();

+ 13 - 8
server/svr-authentication/src/main/java/com/yihu/jw/security/service/RegisterService.java

@ -123,7 +123,7 @@ public class RegisterService {
        rs.put("mes","保存用户信息失败");
        return rs;
    }
    public Map<String,Object> registerPatient(String mobile,String pw,String name,String idcard,String ssc,String openid)throws Exception{
    public Map<String,Object> registerPatient(String mobile,String pw,String name,String idcard, String cardType,String ssc,String openid)throws Exception{
        Map<String,Object> rs = new HashedMap();
        try{
@ -133,10 +133,22 @@ public class RegisterService {
                rs.put("mes","手机号已经存在");
                return rs;
            }
            List<BasePatientDO> p3 = basePatientDao.findListByIdcardAndDel(idcard, "1");
            if (p3 != null && p3.size() > 0) {
                BasePatientDO tmp = p3.get(0);
                rs.put("code", "-3");
                rs.put("mobile", StringUtils.isNotBlank(tmp.getMobile()) ? tmp.getMobile() : tmp.getMobileRemarks());
                rs.put("mes", "当前身份证已有注册信息,请填写正确的手机号登录");
                return rs;
            }
            if (StringUtils.isNotBlank(idcard)) {
                idcard = idcard.toUpperCase();
            }
            BasePatientDO patient = new BasePatientDO();
            String salt = UUID.randomUUID().toString().substring(0,5);
            patient.setPassword(MD5.md5Hex(pw + "{" + salt + "}"));
            patient.setSalt(salt);
            patient.setCardType(cardType);
            patient.setMobile(mobile);
            patient.setDel("1");
            patient.setEnabled(1);
@ -153,13 +165,6 @@ public class RegisterService {
            if(StringUtils.isNoneBlank(openid)){
                patient.setOpenid(openid);
            }
            if("hz_yyyzh_wx".equalsIgnoreCase(wechatId)){//杭州医养头像初始化
                if(StringUtils.isBlank(patient.getPhoto())){
                    String sql = " select dict_value from wlyy_hospital_sys_dict where dict_name='hz_default_avatar' and dict_code='jiashunan' ";
                    String hzPhoto = jdbcTemplate.queryForObject(sql,String.class);
                    patient.setPhoto(hzPhoto);
                }
            }
            BasePatientDO temp = basePatientDao.save(patient);