|
@@ -10,6 +10,7 @@ import com.diagbot.enums.IsDeleteEnum;
|
|
import com.diagbot.exception.CommonErrorCode;
|
|
import com.diagbot.exception.CommonErrorCode;
|
|
import com.diagbot.exception.CommonException;
|
|
import com.diagbot.exception.CommonException;
|
|
import com.diagbot.service.impl.MedBehospitalTypeServiceImpl;
|
|
import com.diagbot.service.impl.MedBehospitalTypeServiceImpl;
|
|
|
|
+import com.diagbot.service.impl.MedCheckInfoServiceImpl;
|
|
import com.diagbot.service.impl.MedicalRecordServiceImpl;
|
|
import com.diagbot.service.impl.MedicalRecordServiceImpl;
|
|
import com.diagbot.util.DateUtil;
|
|
import com.diagbot.util.DateUtil;
|
|
import com.diagbot.util.ListUtil;
|
|
import com.diagbot.util.ListUtil;
|
|
@@ -30,6 +31,8 @@ public class MedCheckWorkFacade {
|
|
@Autowired
|
|
@Autowired
|
|
SysUserFacade sysUserFacade;
|
|
SysUserFacade sysUserFacade;
|
|
@Autowired
|
|
@Autowired
|
|
|
|
+ private MedCheckInfoServiceImpl medCheckInfoServiceImpl;
|
|
|
|
+ @Autowired
|
|
private MedCheckInfoFacade medCheckInfoFacade;
|
|
private MedCheckInfoFacade medCheckInfoFacade;
|
|
@Autowired
|
|
@Autowired
|
|
private MedBehospitalTypeServiceImpl medBehospitalTypeServiceImpl;
|
|
private MedBehospitalTypeServiceImpl medBehospitalTypeServiceImpl;
|
|
@@ -46,64 +49,64 @@ public class MedCheckWorkFacade {
|
|
*/
|
|
*/
|
|
public Boolean addCheckWork(MedCheckWorkAddVO medCheckWorkVO) {
|
|
public Boolean addCheckWork(MedCheckWorkAddVO medCheckWorkVO) {
|
|
|
|
|
|
|
|
+ boolean flag = false;
|
|
Date now = DateUtil.now();
|
|
Date now = DateUtil.now();
|
|
|
|
+ //获取核查任务类型(0-科室任务 1-院级 2-质控科)
|
|
|
|
+ Integer workType = medCheckWorkVO.getWorkType();
|
|
|
|
+ //获取操作类型(0-取消,1-添加)
|
|
|
|
+ Integer checkStatus = medCheckWorkVO.getCheckStatus();
|
|
Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
|
|
Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
|
|
Long principleId = Long.valueOf(SysUserUtils.getCurrentPrincipleID());
|
|
Long principleId = Long.valueOf(SysUserUtils.getCurrentPrincipleID());
|
|
- QueryWrapper<SysUser> userQuer = new QueryWrapper<>();
|
|
|
|
- userQuer.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
|
|
|
+ SysUser user = sysUserFacade.getOne(new QueryWrapper<SysUser>()
|
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
.eq("id", principleId)
|
|
.eq("id", principleId)
|
|
- .eq("status", 1);
|
|
|
|
- SysUser user = sysUserFacade.getOne(userQuer);
|
|
|
|
|
|
+ .eq("status", 1));
|
|
String principleName = user.getLinkman();
|
|
String principleName = user.getLinkman();
|
|
- //操作类型(0-取消,1-添加)
|
|
|
|
- if (medCheckWorkVO.getCheckType() == 0) {
|
|
|
|
|
|
+ //取消核查任务【操作类型(0-取消,1-添加)】
|
|
|
|
+ if (checkStatus != null && checkStatus == 0) {
|
|
|
|
+ //判断核查任务是否生成
|
|
QueryWrapper<MedCheckInfo> medicalRecordQe = new QueryWrapper<>();
|
|
QueryWrapper<MedCheckInfo> medicalRecordQe = new QueryWrapper<>();
|
|
- medicalRecordQe.eq("hospital_id", medCheckWorkVO.getHospitalId());
|
|
|
|
|
|
+ medicalRecordQe.eq("hospital_id", hospitalId);
|
|
medicalRecordQe.eq("is_deleted", IsDeleteEnum.N.getKey());
|
|
medicalRecordQe.eq("is_deleted", IsDeleteEnum.N.getKey());
|
|
if (medCheckWorkVO.getBehospitalCodeList().size() > 0) {
|
|
if (medCheckWorkVO.getBehospitalCodeList().size() > 0) {
|
|
medicalRecordQe.in("behospital_code", medCheckWorkVO.getBehospitalCodeList());
|
|
medicalRecordQe.in("behospital_code", medCheckWorkVO.getBehospitalCodeList());
|
|
}
|
|
}
|
|
-// List<MedCheckInfo> medCheckInfoList = medCheckInfoFacade.list(medicalRecordQe);
|
|
|
|
List<MedCheckInfo> list = medCheckInfoFacade.list(medicalRecordQe);
|
|
List<MedCheckInfo> list = medCheckInfoFacade.list(medicalRecordQe);
|
|
if (ListUtil.isEmpty(list)) {
|
|
if (ListUtil.isEmpty(list)) {
|
|
- throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL, "存在未生成数据!");
|
|
|
|
|
|
+ throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL, "存在未生成核查任务!");
|
|
}
|
|
}
|
|
|
|
|
|
- medCheckInfoFacade.getBaseMapper().getUpdateBatch(medCheckWorkVO.getBehospitalCodeList());
|
|
|
|
- } else {
|
|
|
|
- //获取核查任务类型(0-科室任务 1-院级 2-质控科)
|
|
|
|
- switch (medCheckWorkVO.getWorkType()) {
|
|
|
|
- case 0:
|
|
|
|
- //该病历没有核查的时候, 就添加核查记录
|
|
|
|
- List<MedCheckInfo> medCheckInfoList = new ArrayList<>();
|
|
|
|
- for (String behospitalCode : medCheckWorkVO.getBehospitalCodeList()) {
|
|
|
|
- MedCheckInfo medCheckInfo = new MedCheckInfo();
|
|
|
|
- medCheckInfo.setBehospitalCode(behospitalCode);
|
|
|
|
- medCheckInfo.setGmtCreate(now);
|
|
|
|
- medCheckInfo.setGmtModified(now);
|
|
|
|
- medCheckInfo.setHospitalId(hospitalId);
|
|
|
|
- medCheckInfo.setCheckType(medCheckWorkVO.getCheckType());
|
|
|
|
- medCheckInfo.setJobCreator(principleId);
|
|
|
|
- medCheckInfo.setJobCreatorName(principleName);
|
|
|
|
- medCheckInfo.setJobCreateTime(now);
|
|
|
|
- medCheckInfo.setJobType(medCheckWorkVO.getWorkType());
|
|
|
|
- medCheckInfo.setJobDistributionTime(now);
|
|
|
|
- medCheckInfoList.add(medCheckInfo);
|
|
|
|
- }
|
|
|
|
- medCheckInfoFacade.saveBatch(medCheckInfoList);
|
|
|
|
- break;
|
|
|
|
- case 1:
|
|
|
|
- break;
|
|
|
|
- default:
|
|
|
|
- break;
|
|
|
|
|
|
+ int i = medCheckInfoFacade.getBaseMapper().deleteBatchCodes(medCheckWorkVO.getBehospitalCodeList());
|
|
|
|
+ } else if (checkStatus != null && checkStatus == 1) {
|
|
|
|
+ //生成核查任务
|
|
|
|
+ MedCheckInfo data = medCheckInfoFacade.getOne(new QueryWrapper<MedCheckInfo>()
|
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
|
+ .eq("hospital_id", hospitalId)
|
|
|
|
+ .in("behospital_code", medCheckWorkVO.getBehospitalCodeList())
|
|
|
|
+ );
|
|
|
|
+ //任务是否存在
|
|
|
|
+ if (data != null) {
|
|
|
|
+ throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL, "核查任务已存在!");
|
|
}
|
|
}
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
|
|
-// List<MedCheckWork> checkWorkList = new ArrayList<>();
|
|
|
|
-
|
|
|
|
-// return medCheckWorkServiceImpl.saveBatch(checkWorkList, 10);
|
|
|
|
- return null;
|
|
|
|
|
|
+ //该病历没有核查的时候, 就添加核查记录
|
|
|
|
+ List<MedCheckInfo> medCheckInfoList = new ArrayList<>();
|
|
|
|
+ for (String behospitalCode : medCheckWorkVO.getBehospitalCodeList()) {
|
|
|
|
+ MedCheckInfo medCheckInfo = new MedCheckInfo();
|
|
|
|
+ medCheckInfo.setIsDeleted(IsDeleteEnum.N.getKey());
|
|
|
|
+ medCheckInfo.setGmtCreate(now);
|
|
|
|
+ medCheckInfo.setBehospitalCode(behospitalCode);
|
|
|
|
+ medCheckInfo.setHospitalId(hospitalId);
|
|
|
|
+ medCheckInfo.setCheckType(medCheckWorkVO.getCheckType());
|
|
|
|
+ medCheckInfo.setJobCreator(principleId);
|
|
|
|
+ medCheckInfo.setJobCreatorName(principleName);
|
|
|
|
+ medCheckInfo.setJobCreateTime(now);
|
|
|
|
+ medCheckInfo.setJobType(medCheckWorkVO.getWorkType());
|
|
|
|
+ medCheckInfoList.add(medCheckInfo);
|
|
|
|
+ }
|
|
|
|
+ flag = medCheckInfoServiceImpl.saveBatch(medCheckInfoList);
|
|
|
|
+ }
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|