瀏覽代碼

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

wangzhinan 7 月之前
父節點
當前提交
c5bc37693d

+ 9 - 0
server/svr-authentication/src/main/java/com/yihu/jw/security/model/WlyyUserSimple.java

@ -46,6 +46,7 @@ WlyyUserSimple implements Serializable {
    private int expiresIn;
    private String state;
    private String openid; //患者openid
    private String yktDoctorId; //医养 钉钉账户id
    private String archiveType;//档案类型 1老人 2新生儿
    public String getId() {
@ -180,4 +181,12 @@ WlyyUserSimple implements Serializable {
    public void setArchiveType(String archiveType) {
        this.archiveType = archiveType;
    }
    public String getYktDoctorId() {
        return yktDoctorId;
    }
    public void setYktDoctorId(String yktDoctorId) {
        this.yktDoctorId = yktDoctorId;
    }
}

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

@ -712,41 +712,57 @@ public class WlyyLoginEndpoint extends AbstractEndpoint {
    //获取私钥
    public KeyPair getKeyPair(HttpSession httpSession,HttpServletRequest request){
        String referer = request.getHeader("Referer");
        if(referer.indexOf("https://yyfbxt.szhz.hangzhou.gov.cn")==0){
            OauthKeypairDO keypairDO = oauthKeypairDao.findByCode("yyfbxtKey");
            KeyPair keyPair = (KeyPair) SerializeUtil.unSerialize(keypairDO.getKeyPair());
            return keyPair;
        }
        KeyPair keyPair = (KeyPair) httpSession.getAttribute("privateKey");
        OauthKeypairDO keypairDO = oauthKeypairDao.findByCode("yyfbxtKey");
        KeyPair keyPair = (KeyPair) SerializeUtil.unSerialize(keypairDO.getKeyPair());
        return keyPair;
//        String referer = request.getHeader("Referer");
//        if(referer.indexOf("https://yyfbxt.szhz.hangzhou.gov.cn")==0){
//            OauthKeypairDO keypairDO = oauthKeypairDao.findByCode("yyfbxtKey");
//            KeyPair keyPair = (KeyPair) SerializeUtil.unSerialize(keypairDO.getKeyPair());
//            return keyPair;
//        }
//        KeyPair keyPair = (KeyPair) httpSession.getAttribute("privateKey");
//        return keyPair;
    }
    @RequestMapping(value = "/oauth/getPublicKey", method = RequestMethod.GET)
    public ObjEnvelop<PublickeyVO> getPublicKey(HttpSession httpSession, HttpServletRequest request) {
        String referer = request.getHeader("Referer");
        if(referer.indexOf("https://yyfbxt.szhz.hangzhou.gov.cn")==0){
            //跨域时公钥固定
            OauthKeypairDO keypairDO = oauthKeypairDao.findByCode("yyfbxtKey");
            if (keypairDO == null) {
                KeyPair keyPair = com.yihu.jw.security.utils.RSAUtils.getKey();
                byte[] bytekey = SerializeUtil.ObjTOSerialize(keyPair);
                OauthKeypairDO kpDO = new OauthKeypairDO();
                kpDO.setCode("yyfbxtKey");
                kpDO.setKeyPair(bytekey);
                keypairDO = oauthKeypairDao.save(kpDO);
            }
            KeyPair keyPair = (KeyPair) SerializeUtil.unSerialize(keypairDO.getKeyPair());
            PublickeyVO pk = new PublickeyVO();
            pk.setPublicKey(com.yihu.jw.security.utils.RSAUtils.generateBase64PublicKey(keyPair));
            return ObjEnvelop.getSuccess("success", pk);
        }
        KeyPair keyPair = com.yihu.jw.security.utils.RSAUtils.getKey();
        httpSession.setAttribute("privateKey", keyPair);
        OauthKeypairDO keypairDO = oauthKeypairDao.findByCode("yyfbxtKey");
        if (keypairDO == null) {
            KeyPair keyPair = com.yihu.jw.security.utils.RSAUtils.getKey();
            byte[] bytekey = SerializeUtil.ObjTOSerialize(keyPair);
            OauthKeypairDO kpDO = new OauthKeypairDO();
            kpDO.setCode("yyfbxtKey");
            kpDO.setKeyPair(bytekey);
            keypairDO = oauthKeypairDao.save(kpDO);
        }
        KeyPair keyPair = (KeyPair) SerializeUtil.unSerialize(keypairDO.getKeyPair());
        PublickeyVO pk = new PublickeyVO();
        pk.setPublicKey(com.yihu.jw.security.utils.RSAUtils.generateBase64PublicKey(keyPair));
        return ObjEnvelop.getSuccess("success", pk);
//        String referer = request.getHeader("Referer");
//        if(referer.indexOf("https://yyfbxt.szhz.hangzhou.gov.cn")==0){
//            //跨域时公钥固定
//            OauthKeypairDO keypairDO = oauthKeypairDao.findByCode("yyfbxtKey");
//            if (keypairDO == null) {
//                KeyPair keyPair = com.yihu.jw.security.utils.RSAUtils.getKey();
//                byte[] bytekey = SerializeUtil.ObjTOSerialize(keyPair);
//                OauthKeypairDO kpDO = new OauthKeypairDO();
//                kpDO.setCode("yyfbxtKey");
//                kpDO.setKeyPair(bytekey);
//                keypairDO = oauthKeypairDao.save(kpDO);
//            }
//            KeyPair keyPair = (KeyPair) SerializeUtil.unSerialize(keypairDO.getKeyPair());
//            PublickeyVO pk = new PublickeyVO();
//            pk.setPublicKey(com.yihu.jw.security.utils.RSAUtils.generateBase64PublicKey(keyPair));
//            return ObjEnvelop.getSuccess("success", pk);
//        }
//        KeyPair keyPair = com.yihu.jw.security.utils.RSAUtils.getKey();
//        httpSession.setAttribute("privateKey", keyPair);
//        PublickeyVO pk = new PublickeyVO();
//        pk.setPublicKey(com.yihu.jw.security.utils.RSAUtils.generateBase64PublicKey(keyPair));
//        return ObjEnvelop.getSuccess("success", pk);
    }
    /**