LAPTOP-KB9HII50\70708 hace 3 años
padre
commit
3a8e02a937

+ 65 - 1
business/base-service/src/main/java/com/yihu/jw/healthCare/service/HealthCareService.java

@ -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();