|
@ -3,9 +3,12 @@ package com.yihu.jw.security.service;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.yihu.jw.entity.base.patient.BasePatientDO;
|
|
import com.yihu.jw.entity.base.patient.BasePatientDO;
|
|
|
|
import com.yihu.jw.entity.base.wx.BasePatientWechatDo;
|
|
import com.yihu.jw.entity.hospital.family.WlyyPatientFamilyMemberDO;
|
|
import com.yihu.jw.entity.hospital.family.WlyyPatientFamilyMemberDO;
|
|
import com.yihu.jw.security.dao.patient.BasePatientDao;
|
|
import com.yihu.jw.security.dao.patient.BasePatientDao;
|
|
|
|
import com.yihu.jw.security.dao.patient.BasePatientWechatDao;
|
|
import com.yihu.jw.security.dao.patient.WlyyPatientFamilyMemberDao;
|
|
import com.yihu.jw.security.dao.patient.WlyyPatientFamilyMemberDao;
|
|
|
|
import com.yihu.jw.security.model.PatientWechat;
|
|
import com.yihu.jw.security.utils.AES;
|
|
import com.yihu.jw.security.utils.AES;
|
|
import com.yihu.jw.security.utils.IdCardUtil;
|
|
import com.yihu.jw.security.utils.IdCardUtil;
|
|
import com.yihu.utils.security.MD5;
|
|
import com.yihu.utils.security.MD5;
|
|
@ -20,9 +23,12 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.net.URLDecoder;
|
|
import java.net.URLDecoder;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
|
import java.util.List;
|
|
import java.util.UUID;
|
|
import java.util.UUID;
|
|
import org.springframework.util.Base64Utils;
|
|
import org.springframework.util.Base64Utils;
|
|
|
|
|
|
|
|
import javax.sound.midi.MidiDevice;
|
|
|
|
|
|
/**
|
|
/**
|
|
* Created by Trick on 2020/2/24.
|
|
* Created by Trick on 2020/2/24.
|
|
*/
|
|
*/
|
|
@ -36,6 +42,8 @@ public class OauthWjwConfigService {
|
|
private BasePatientDao basePatientDao;
|
|
private BasePatientDao basePatientDao;
|
|
@Autowired
|
|
@Autowired
|
|
private WlyyPatientFamilyMemberDao familyMemberDao;
|
|
private WlyyPatientFamilyMemberDao familyMemberDao;
|
|
|
|
@Autowired
|
|
|
|
private BasePatientWechatDao basePatientWechatDao;
|
|
|
|
|
|
public BasePatientDO savePatient(String data)throws Exception{
|
|
public BasePatientDO savePatient(String data)throws Exception{
|
|
logger.info("savePatient :"+data);
|
|
logger.info("savePatient :"+data);
|
|
@ -52,6 +60,7 @@ public class OauthWjwConfigService {
|
|
String userSex = info.getString("userSex");
|
|
String userSex = info.getString("userSex");
|
|
String userIdNo = info.getString("userIdNo");
|
|
String userIdNo = info.getString("userIdNo");
|
|
String dType = info.getString("dType");
|
|
String dType = info.getString("dType");
|
|
|
|
String openId = info.getString("openid");
|
|
|
|
|
|
if(StringUtils.isNotBlank(userIdNo)){
|
|
if(StringUtils.isNotBlank(userIdNo)){
|
|
|
|
|
|
@ -84,6 +93,7 @@ public class OauthWjwConfigService {
|
|
String pw = userIdNo.substring(userIdNo.length()-6);
|
|
String pw = userIdNo.substring(userIdNo.length()-6);
|
|
|
|
|
|
patient.setIdcard(userIdNo);
|
|
patient.setIdcard(userIdNo);
|
|
|
|
patient.setCardType("01");
|
|
patient.setName(name);
|
|
patient.setName(name);
|
|
patient.setPassword(MD5.md5Hex(pw + "{" + salt + "}"));
|
|
patient.setPassword(MD5.md5Hex(pw + "{" + salt + "}"));
|
|
patient.setSalt(salt);
|
|
patient.setSalt(salt);
|
|
@ -112,8 +122,22 @@ public class OauthWjwConfigService {
|
|
basePatientFamilyMemberDO.setFamilyMember(patient.getId());
|
|
basePatientFamilyMemberDO.setFamilyMember(patient.getId());
|
|
familyMemberDao.save(basePatientFamilyMemberDO);
|
|
familyMemberDao.save(basePatientFamilyMemberDO);
|
|
}
|
|
}
|
|
|
|
List<BasePatientWechatDo> patientWechatDos = basePatientWechatDao.findByWechatIdAndPatientId("xm_tasy_wx",patient.getId());
|
|
|
|
if (patientWechatDos!=null&&patientWechatDos.size()!=0){
|
|
|
|
BasePatientWechatDo basePatientWechatDo = patientWechatDos.get(0);
|
|
|
|
basePatientWechatDo.setOpenid(openId);
|
|
|
|
}else {
|
|
|
|
BasePatientWechatDo patientWechatDo = new BasePatientWechatDo();
|
|
|
|
patientWechatDo.setOpenid(openId);
|
|
|
|
patientWechatDo.setCreateTime(new Date());
|
|
|
|
patientWechatDo.setPatientId(patient.getId());
|
|
|
|
patientWechatDo.setWechatId("xm_tasy_wx");
|
|
|
|
patientWechatDo.setSaasId("prod");
|
|
|
|
basePatientWechatDao.save(patientWechatDo);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return basePatientDO;
|
|
|
|
|
|
return patient;
|
|
|
|
|
|
}
|
|
}
|
|
return null;
|
|
return null;
|