|
@@ -73,6 +73,18 @@ public class SiMzFeeService {
|
|
|
regstrtn = mzDao.selectRegstrtn(p.getPatNo(), p.getTimes());
|
|
|
}
|
|
|
|
|
|
+ // 当医生有医保姓名时,优先使用医保姓名
|
|
|
+ try {
|
|
|
+ String ybName = mzDao.getYbName(p.getDoctorCode());
|
|
|
+ if(StringUtil.isNotEmpty(ybName) && regstrtn != null) {
|
|
|
+ log.info("门诊挂号医生{},使用医保姓名:{}", p.getDoctorName(), ybName);
|
|
|
+ regstrtn.setDrName(ybName);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ log.error("获取医保姓名出错:{}", p.getDoctorCode());
|
|
|
+ }
|
|
|
+
|
|
|
if (null == regstrtn) {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR,
|
|
|
"mz_visit_table或t_si_pat_info 信息为空,请联系医生重开处方。");
|
|
@@ -230,6 +242,19 @@ public class SiMzFeeService {
|
|
|
base.setDiseDorNo(dor.getCode());
|
|
|
base.setDiseDorName(dor.getName());
|
|
|
}
|
|
|
+
|
|
|
+ // 当有医保姓名时,优先使用医保姓名
|
|
|
+ try {
|
|
|
+ String ybName = mzDao.getYbName(base.getDiseDorNo());
|
|
|
+ if(StringUtil.isNotEmpty(ybName)){
|
|
|
+ log.info("门诊就诊信息上传医生{},使用医保姓名:{}", base.getDiseDorName(), ybName);
|
|
|
+ base.setDiseDorName(ybName);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ log.error("获取医保姓名出错:{}", base.getDiseDorNo());
|
|
|
+ }
|
|
|
+
|
|
|
String[] icds = icdCodeNew.split(",");
|
|
|
for (int i = 0; i < icds.length; i++) {
|
|
|
String icd = icds[i];
|
|
@@ -244,6 +269,7 @@ public class SiMzFeeService {
|
|
|
diag.setDiagTime(base.getDiagTime());
|
|
|
diag.setDiseDorNo(base.getDiseDorNo());
|
|
|
diag.setDiseDorName(base.getDiseDorName());
|
|
|
+
|
|
|
diagnosesList.add(diag);
|
|
|
}
|
|
|
} else {
|
|
@@ -317,9 +343,22 @@ public class SiMzFeeService {
|
|
|
item.setRxCircFlag(YesOrNo.NO.getCodeStr());
|
|
|
item.setBilgDeptCodg(mzVisit.getVisitDeptCode());
|
|
|
item.setBilgDeptName(mzVisit.getVisitDeptName());
|
|
|
+
|
|
|
if (siPatInfo.getMedType().equals("51")) {
|
|
|
item.setMatnFeeFlag("1");
|
|
|
}
|
|
|
+
|
|
|
+ // 当医生有医保姓名时,优先使用医保姓名
|
|
|
+ try {
|
|
|
+ String ybName = mzDao.getYbName(item.getBilgDrCodg());
|
|
|
+ if(StringUtil.isNotEmpty(ybName)) {
|
|
|
+ log.info("门诊费用上传医生{},使用医保姓名:{}", item.getBilgDrName(), ybName);
|
|
|
+ item.setBilgDrName(ybName);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ log.error("获取医保姓名出错:{}", item.getBilgDrCodg());
|
|
|
+ }
|
|
|
});
|
|
|
JSONObject input = exec.makeTradeHeaderWithInsureArea(SiFunction.UPLOAD_OUTPATIENT_FEE_DETAILS,
|
|
|
siPatInfo.getInsuplcAdmdvs(), p.getStaffId());
|