|
@ -2,6 +2,11 @@ package com.yihu.jw.healthCare.service;
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.yihu.jw.doctor.dao.BaseDoctorDao;
|
|
|
import com.yihu.jw.doctor.dao.BaseDoctorHospitalDao;
|
|
|
import com.yihu.jw.doctor.service.BaseDoctorHosService;
|
|
|
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
|
|
|
import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
|
|
|
import com.yihu.jw.entity.hospital.consult.WlyyHospitalSysDictDO;
|
|
|
import com.yihu.jw.healthCare.utils.AES;
|
|
|
import com.yihu.jw.healthCare.utils.MD5;
|
|
@ -29,7 +34,10 @@ public class HealthCareService {
|
|
|
private Logger logger = LoggerFactory.getLogger(HealthCareService.class);
|
|
|
@Autowired
|
|
|
private WlyyHospitalSysDictDao hospitalSysDictDao;
|
|
|
|
|
|
@Autowired
|
|
|
private BaseDoctorHospitalDao doctorHospitalDao;
|
|
|
@Autowired
|
|
|
private BaseDoctorDao doctorDao;
|
|
|
@Autowired
|
|
|
private HttpClientUtil httpClientUtil;
|
|
|
|
|
@ -93,6 +101,62 @@ public class HealthCareService {
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 2.3.1 医师身份验证(处方权,多点执业等)
|
|
|
*/
|
|
|
public void doctorAuthentication(String doctorId) throws Exception{
|
|
|
BaseDoctorDO doctorDO = doctorDao.findOne(doctorId);
|
|
|
List<BaseDoctorHospitalDO> doctorHospitalDOS = doctorHospitalDao.findByDoctorCode(doctorId);
|
|
|
if(doctorHospitalDOS.size()<=0){
|
|
|
throw new Exception("未找到医生科室编码");
|
|
|
}
|
|
|
BaseDoctorHospitalDO doctorHospitalDO = doctorHospitalDOS.get(0);
|
|
|
JSONObject data = new JSONObject();
|
|
|
data.put("his_dept_code",doctorHospitalDO.getDeptCode());//his内部科室编码
|
|
|
data.put("his_dept_name",doctorHospitalDO.getDeptName());//his内部科室名称
|
|
|
// data.put("dept_code","");//医保科室编码 String N
|
|
|
// data.put("dept_name","");//医保科室名称 String N
|
|
|
data.put("name",doctorDO.getName());//医师姓名
|
|
|
data.put("idcard",doctorDO.getIdcard());//医师证件号
|
|
|
data.put("cert_type","");//医师证件类型
|
|
|
|
|
|
requestYlz(data.toJSONString(),"N20.17.02.01");
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 2.3.2 医师人脸签到表单地址
|
|
|
* @param doctorId
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
public void doctorFaceCheckInAddress(String doctorId)throws Exception{
|
|
|
WlyyHospitalSysDictDO hospitalSysDictDO = hospitalSysDictDao.findOne("ylzConfigFaceReturnUrl");
|
|
|
if(hospitalSysDictDO == null){
|
|
|
throw new Exception("未配置回调地址");
|
|
|
}
|
|
|
BaseDoctorDO doctorDO = doctorDao.findOne(doctorId);
|
|
|
JSONObject data = new JSONObject();
|
|
|
data.put("name",doctorDO.getName());//医师姓名
|
|
|
data.put("idcard",doctorDO.getIdcard());//医师证件号
|
|
|
data.put("cert_type","");//医师证件类型
|
|
|
data.put("redirect_url",hospitalSysDictDO.getDictValue());//回调地址
|
|
|
requestYlz(data.toJSONString(),"N20.17.02.02");
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 2.3.3 获取医师人脸签到数据
|
|
|
*/
|
|
|
public void doctorFaceCheckInData(String doctorId)throws Exception{
|
|
|
BaseDoctorDO doctorDO = doctorDao.findOne(doctorId);
|
|
|
JSONObject data = new JSONObject();
|
|
|
data.put("name",doctorDO.getName());//医师姓名
|
|
|
data.put("idcard",doctorDO.getIdcard());//医师证件号
|
|
|
data.put("cert_type","");//医师证件类型
|
|
|
requestYlz(data.toJSONString(),"N20.17.02.05");
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public String getYlzToken() throws Exception {
|
|
|
String token = null;
|
|
|
initConfig();
|