|
@@ -224,8 +224,15 @@ public class ClinicController {
|
|
|
resultMap.put("message", "当前医生不存在");
|
|
|
return resultMap;
|
|
|
}
|
|
|
- List<MzfzPatientOrder> data = mzfzPatientOrderService.queryByPatientId(patientId, tokenUser.getUserIdCode());
|
|
|
- List<String> deptCodes=userDeptRelationService.queryAllByUserIdCode(tokenUser.getUserIdCode());
|
|
|
+ List<String> deptCodes = userDeptRelationService.queryAllByUserIdCode(tokenUser.getUserIdCode());
|
|
|
+ Boolean isYjDept = false;
|
|
|
+ isYjDept = checkYjDept(deptCodes, isYjDept);
|
|
|
+ List<MzfzPatientOrder> data =null;
|
|
|
+ if(isYjDept){
|
|
|
+ data=Arrays.asList(mzfzPatientOrderService.queryLastClinicedFzOrder(patientId));
|
|
|
+ }else {
|
|
|
+ data = mzfzPatientOrderService.queryByPatientId(patientId, tokenUser.getUserIdCode());
|
|
|
+ }
|
|
|
//
|
|
|
// if (data == null || data.size() == 0) {
|
|
|
// if(deptCodes!=null && deptCodes.size()>0){
|
|
@@ -267,9 +274,9 @@ public class ClinicController {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- if(deptCodes!=null && deptCodes.size()>0){
|
|
|
- for (String code:deptCodes){
|
|
|
- List<TurnToConsultation> turnToConsultations = turnToConsultationService.queryUnConsultationByTargetDept(patientId,code, tokenUser.getUserIdCode());
|
|
|
+ if (deptCodes != null && deptCodes.size() > 0) {
|
|
|
+ for (String code : deptCodes) {
|
|
|
+ List<TurnToConsultation> turnToConsultations = turnToConsultationService.queryUnConsultationByTargetDept(patientId, code, tokenUser.getUserIdCode());
|
|
|
if (turnToConsultations != null && turnToConsultations.size() > 0) {
|
|
|
for (TurnToConsultation turnToConsultation : turnToConsultations) {
|
|
|
MzPatientMi mzPatientMi = mzPatientMiService.queryByPatientId(turnToConsultation.getPatientId());
|
|
@@ -287,9 +294,9 @@ public class ClinicController {
|
|
|
}
|
|
|
}
|
|
|
//如果没有挂号,查询是否可免挂号接诊
|
|
|
- if(data==null || data.size()==0){
|
|
|
- if(deptCodes!=null && deptCodes.size()>0){
|
|
|
- for (String code:deptCodes){
|
|
|
+ if (data == null || data.size() == 0) {
|
|
|
+ if (deptCodes != null && deptCodes.size() > 0) {
|
|
|
+ for (String code : deptCodes) {
|
|
|
ZdUnitCode zdUnitCode = zdUnitCodeService.queryByCode(code);
|
|
|
if (YesNoEnum.NO.code.equals(zdUnitCode.getGhjzFlag())) {
|
|
|
resultMap.put("code", 200);
|
|
@@ -312,6 +319,27 @@ public class ClinicController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 判断当前医生是否是医技科室
|
|
|
+ * @param deptCodes
|
|
|
+ * @param isYjDept
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private Boolean checkYjDept(List<String> deptCodes, Boolean isYjDept) {
|
|
|
+ if (deptCodes != null && deptCodes.size() > 0) {
|
|
|
+ List<ZdUnitCode> zdUnitCodes = zdUnitCodeService.queryZdUnitCodeByCodes(deptCodes);
|
|
|
+ if (zdUnitCodes != null && zdUnitCodes.size() > 0) {
|
|
|
+ for (ZdUnitCode zdUnitCode : zdUnitCodes) {
|
|
|
+ if (ZdUnitCode.YJ_CLASS_CODE.equals(zdUnitCode.getClassCode())) {
|
|
|
+ isYjDept = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return isYjDept;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 根据id查询就诊信息
|
|
@@ -362,7 +390,7 @@ public class ClinicController {
|
|
|
String patientId = clinic.getCommonParams();
|
|
|
if (StringUtils.isBlank(clinic.getCommonParams())) {
|
|
|
clinic.setCommonParams(null);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
//不加前模糊,因为数据库索引会不生效
|
|
|
clinic.setCommonParams(clinic.getCommonParams() + "%");
|
|
|
}
|
|
@@ -388,8 +416,15 @@ public class ClinicController {
|
|
|
}
|
|
|
if (StringUtils.isBlank(clinic.getDoctorCode())) {
|
|
|
User tokenUser = TokenUtil.getUser(httpServletRequest);
|
|
|
- clinic.setDoctorCode(tokenUser.getUserIdCode());
|
|
|
- clinic.setDeptCodes(userDeptRelationService.queryAllByUserIdCode(tokenUser.getUserIdCode()));
|
|
|
+ List<String> deptNos = userDeptRelationService.queryAllByUserIdCode(tokenUser.getUserIdCode());
|
|
|
+ Boolean isYjDept = false;
|
|
|
+ //暂时只开放医技可以可以接诊全院患者,不修改历史处方
|
|
|
+ //isYjDept = checkYjDept(deptNos, isYjDept);
|
|
|
+ //医技科室是可以看到全部患者信息,非医技科室需要加查询条件
|
|
|
+ if (!isYjDept) {
|
|
|
+ clinic.setDoctorCode(tokenUser.getUserIdCode());
|
|
|
+ clinic.setDeptCodes(deptNos);
|
|
|
+ }
|
|
|
} else {
|
|
|
//前端传的-1需要清空 //如果医生字段是-1,说明是查询就诊轨迹,就诊轨迹不限制科室和医生
|
|
|
clinic.setDoctorCode(null);
|
|
@@ -456,7 +491,6 @@ public class ClinicController {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* 初始化就诊记录表 全局初始化或者部分初始化
|
|
|
*
|