|
@@ -14,6 +14,7 @@ import thyyxxk.webserver.config.exception.BizException;
|
|
|
import thyyxxk.webserver.config.exception.ExceptionEnum;
|
|
|
import thyyxxk.webserver.constants.sidicts.*;
|
|
|
import thyyxxk.webserver.constants.YesOrNo;
|
|
|
+import thyyxxk.webserver.dao.his.inpatient.DoctorsAdviseDao;
|
|
|
import thyyxxk.webserver.dao.his.inpatient.PatientDao;
|
|
|
import thyyxxk.webserver.dao.his.medicalinsurance.*;
|
|
|
import thyyxxk.webserver.entity.ResultVo;
|
|
@@ -45,6 +46,7 @@ public class SiZyService {
|
|
|
private static final String ERROR_MESSAGE = "err_msg";
|
|
|
private static final String OUTPUT = "output";
|
|
|
private final SiZyDao dao;
|
|
|
+ private final DoctorsAdviseDao doctorsAdviseDao;
|
|
|
private final PatientDao patientDao;
|
|
|
private final SiQueryService queryService;
|
|
|
private final SiQueryDao queryDao;
|
|
@@ -62,9 +64,10 @@ public class SiZyService {
|
|
|
@Autowired
|
|
|
public SiZyService(SiZyDao dao, PatientDao patientDao, SiQueryService queryService, SiQueryDao queryDao, SiSetlinfoDao setlinfoDao,
|
|
|
SiSetldetailDao setldetldao, SiChargeTempDao chrgtmpdao, SiLogDao logDao, ExecService exec,
|
|
|
- DismissService dismissService, SiZySrvc zySrvc, MedinsurConfig cfg) {
|
|
|
+ DismissService dismissService, SiZySrvc zySrvc, MedinsurConfig cfg, DoctorsAdviseDao doctorsAdviseDao) {
|
|
|
this.dao = dao;
|
|
|
this.patientDao = patientDao;
|
|
|
+ this.doctorsAdviseDao = doctorsAdviseDao;
|
|
|
this.queryService = queryService;
|
|
|
this.queryDao = queryDao;
|
|
|
this.setlinfodao = setlinfoDao;
|
|
@@ -79,6 +82,19 @@ public class SiZyService {
|
|
|
|
|
|
public String admissRegister(ZyPatientInfo p, ZyOrJzYbData ybData) {
|
|
|
AdmMdtrtinfo admMdtrtinfo = ybData.getAdmMdtrtinfo(p);
|
|
|
+
|
|
|
+ // 当医生有医保姓名时,优先使用医保姓名
|
|
|
+ try {
|
|
|
+ String ybName = doctorsAdviseDao.getYbName(admMdtrtinfo.getChfpdrName());
|
|
|
+ if(StringUtil.isNotEmpty(ybName)) {
|
|
|
+ log.info("门诊挂号医生{},使用医保姓名:{}", admMdtrtinfo.getChfpdrName(), ybName);
|
|
|
+ admMdtrtinfo.setChfpdrName(ybName);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ log.error("获取医保姓名出错:{}", admMdtrtinfo.getAtddrNo());
|
|
|
+ }
|
|
|
+
|
|
|
List<AdmDiseinfo> admDiseinfos = ybData.getAdmDiseinfo(p.getInpatientNo(), p.getAdmissTimes());
|
|
|
admDiseinfos.forEach(item -> {
|
|
|
item.setDiseDorNo(admMdtrtinfo.getAtddrNo());
|