|
|
@ -42,13 +42,9 @@ public class FirstAidRecordService implements IFirstAidRecordService { |
|
|
|
@Resource |
|
|
|
private FirstAidRecordDao firstAidRecordDao; |
|
|
|
@Resource |
|
|
|
private CodeDictionariesMapper dictionariesMapper; |
|
|
|
@Resource |
|
|
|
private CodeParentDao codeParentDao; |
|
|
|
@Resource |
|
|
|
private FirstAidDao firstAidDao; |
|
|
|
@Resource |
|
|
|
private FirstAidLogDao firstAidLogDao; |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@ -61,7 +57,7 @@ public class FirstAidRecordService implements IFirstAidRecordService { |
|
|
|
@Override |
|
|
|
public PatientVo.QueryAidRecordN queryAidRecordN(PatientDto.QueryAidRecord param, Long userId) { |
|
|
|
PatientVo.QueryAidRecordN queryAidRecord = new PatientVo.QueryAidRecordN(); |
|
|
|
Map<String,List<String>> recordMap = new HashMap<>(); |
|
|
|
Map<String,List<String>> recordMap = new HashMap<>(16); |
|
|
|
//查询记录信息
|
|
|
|
List<PatientVo.AidRecord> aidRecords = patientDao.queryRecordByAidId(param.getProjectId(),param.getCodeList()); |
|
|
|
if(CollectionUtil.isNotEmpty(aidRecords)){ |
|
|
@ -119,9 +115,7 @@ public class FirstAidRecordService implements IFirstAidRecordService { |
|
|
|
//判断答案是否为空
|
|
|
|
if(CollectionUtil.isNotEmpty(codeAndAnswer.getAnswer())){ |
|
|
|
//循环答案
|
|
|
|
codeAndAnswer.getAnswer().forEach(answer -> { |
|
|
|
saveRecord(param.getUserType(), userId, firstAid.getId(), codeAndAnswer.getQuestionCode(), StrUtil.isBlank(answer) ? "" : answer,param.getProjectId()); |
|
|
|
}); |
|
|
|
codeAndAnswer.getAnswer().forEach(answer -> saveRecord(param.getUserType(), userId, firstAid.getId(), codeAndAnswer.getQuestionCode(), StrUtil.isBlank(answer) ? "" : answer,param.getProjectId())); |
|
|
|
}else { |
|
|
|
saveRecord(param.getUserType(), userId, firstAid.getId(), codeAndAnswer.getQuestionCode(), "",param.getProjectId()); |
|
|
|
} |
|
|
@ -188,37 +182,38 @@ public class FirstAidRecordService implements IFirstAidRecordService { |
|
|
|
} |
|
|
|
}); |
|
|
|
} else if (firstAid.getDataStatus() == Constant.DataStatus.DischargeRefuse.status) { |
|
|
|
// 出院审核拒绝,只允许修改出院信息
|
|
|
|
pageChildCode(param); |
|
|
|
} else if (firstAid.getDataStatus() == Constant.DataStatus.ApplyFor.status |
|
|
|
|| firstAid.getDataStatus() == Constant.DataStatus.ApplyForRefuse.status){ |
|
|
|
// 申请修改/修改拒绝
|
|
|
|
// 出院是否审核通过过
|
|
|
|
FirstAidLogExample logExample = new FirstAidLogExample(); |
|
|
|
logExample.createCriteria().andFirstAidIdEqualTo(firstAid.getId()) |
|
|
|
.andOperationTypeEqualTo(Constant.DataStatus.DischargePass.status); |
|
|
|
long l = firstAidLogDao.countByExample(logExample); |
|
|
|
if (l > 0) { |
|
|
|
// 有,则都不修改
|
|
|
|
throw new BaseException(DefaultCodeError.NO_DATA_MODIFY_PRIVILEGE); |
|
|
|
} else { |
|
|
|
pageChildCode(param); |
|
|
|
} |
|
|
|
// 出院审核拒绝,只允许修改出院信息 × 出院审核拒绝,数据全部可以修改
|
|
|
|
// pageChildCode(param);
|
|
|
|
log.info("出院审核拒绝,数据都可以修改"); |
|
|
|
// } else if (firstAid.getDataStatus() == Constant.DataStatus.ApplyFor.status
|
|
|
|
// || firstAid.getDataStatus() == Constant.DataStatus.ApplyForRefuse.status){
|
|
|
|
// // 申请修改/修改拒绝(只有出院审核通过可以申请修改,一旦申请修改,不允许修改)
|
|
|
|
// // 出院是否审核通过过
|
|
|
|
// FirstAidLogExample logExample = new FirstAidLogExample();
|
|
|
|
// logExample.createCriteria().andFirstAidIdEqualTo(firstAid.getId())
|
|
|
|
// .andOperationTypeEqualTo(Constant.DataStatus.DischargePass.status);
|
|
|
|
// long l = firstAidLogDao.countByExample(logExample);
|
|
|
|
// if (l > 0) {
|
|
|
|
// // 有,则都不修改
|
|
|
|
// throw new BaseException(DefaultCodeError.NO_DATA_MODIFY_PRIVILEGE);
|
|
|
|
// } else {
|
|
|
|
// pageChildCode(param);
|
|
|
|
// }
|
|
|
|
} else { |
|
|
|
// 出院通过
|
|
|
|
// 出院审核通过 申请修改 申请拒绝
|
|
|
|
throw new BaseException(DefaultCodeError.NO_DATA_MODIFY_PRIVILEGE); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void pageChildCode(PatientDto.SaveAidRecordN param) { |
|
|
|
List<String> children = codeParentDao.queryChildren(Constant.QuestionCode.DISCHARGE); |
|
|
|
param.getCodeAndAnswerList().forEach(codeAndAnswer -> { |
|
|
|
if (!children.contains(codeAndAnswer.getQuestionCode())) { |
|
|
|
log.info("{}不是出院的code,不能修改", codeAndAnswer.getQuestionCode() ); |
|
|
|
throw new BaseException(DefaultCodeError.NO_DATA_MODIFY_PRIVILEGE); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
// private void pageChildCode(PatientDto.SaveAidRecordN param) {
|
|
|
|
// List<String> children = codeParentDao.queryChildren(Constant.QuestionCode.DISCHARGE);
|
|
|
|
// param.getCodeAndAnswerList().forEach(codeAndAnswer -> {
|
|
|
|
// if (!children.contains(codeAndAnswer.getQuestionCode())) {
|
|
|
|
// log.info("{}不是出院的code,不能修改", codeAndAnswer.getQuestionCode() );
|
|
|
|
// throw new BaseException(DefaultCodeError.NO_DATA_MODIFY_PRIVILEGE);
|
|
|
|
// }
|
|
|
|
// });
|
|
|
|
// }
|
|
|
|
|
|
|
|
private void saveRecord(byte userType, Long userId, Long firstAidId, String code, String answer,Long projectId) { |
|
|
|
//添加日志表,不管数据是否重复
|
|
|
|