|
|
|
@ -29,6 +29,7 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import javax.annotation.Resource; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Comparator; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
/** |
|
|
|
@ -72,6 +73,23 @@ public class WisdomCarService implements IWisdomCarService { |
|
|
|
|
|
|
|
@Override |
|
|
|
public WisdomCarVo.PatientProject createCase(CreateCaseDto.PatientInfo param, Long userId) { |
|
|
|
String idCard = ""; |
|
|
|
if (StrUtil.isNotBlank(param.getPatientIdCard())){ |
|
|
|
idCard = (String) redisUtil.get(Constant.REDIS_ID_CARD+param.getPatientIdCard()); |
|
|
|
|
|
|
|
if (StrUtil.isBlank(idCard)){ |
|
|
|
redisUtil.set(Constant.REDIS_ID_CARD+param.getPatientIdCard(),param.getPatientIdCard(),300); |
|
|
|
}else{ |
|
|
|
throw new BaseException(CodeEnum.PATIENT_PROJECT_REPEAT); |
|
|
|
} |
|
|
|
PatientProjectExample patientExample = new PatientProjectExample(); |
|
|
|
patientExample.createCriteria().andIdCardEqualTo(param.getPatientIdCard()); |
|
|
|
List<PatientProject> patientProjects = patientProjectDao.selectByExample(patientExample); |
|
|
|
if (CollectionUtil.isNotEmpty(patientProjects)){ |
|
|
|
throw new BaseException(CodeEnum.PATIENT_PROJECT_REPEAT); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
Long patientProjectId = null; |
|
|
|
//tall中需要添加的成员
|
|
|
|
MemberRoleDto.SaveMemberForTemplate saveMemberForTemplate = new MemberRoleDto.SaveMemberForTemplate(); |
|
|
|
@ -109,6 +127,18 @@ public class WisdomCarService implements IWisdomCarService { |
|
|
|
patient.setPhone(param.getPatientPhone()); |
|
|
|
} |
|
|
|
patientProjectDao.insertSelective(patient); |
|
|
|
//添加患者成员
|
|
|
|
if (ObjectUtil.isNotNull(param.getPatientPhone())){ |
|
|
|
MemberRoleDto.MemberForTemplate memberForTemplate = new MemberRoleDto.MemberForTemplate(); |
|
|
|
List<String> roleName = new ArrayList<>(); |
|
|
|
roleName.add(Constant.PATIENT_FAMILY); |
|
|
|
memberForTemplate.setPhone(param.getPatientPhone()); |
|
|
|
memberForTemplate.setRoleName(roleName); |
|
|
|
if (ObjectUtil.isNotNull(param.getPatientName())){ |
|
|
|
memberForTemplate.setMemberName(param.getPatientName()); |
|
|
|
} |
|
|
|
memberList.add(memberForTemplate); |
|
|
|
} |
|
|
|
|
|
|
|
//患者家属
|
|
|
|
if (ObjectUtil.isNotNull(param.getFamilyName()) || ObjectUtil.isNotNull(param.getFamilyPhone())){ |
|
|
|
@ -118,18 +148,18 @@ public class WisdomCarService implements IWisdomCarService { |
|
|
|
patientFamily.setPhone(param.getFamilyPhone()); |
|
|
|
patientFamily.setPatientId(patient.getId()); |
|
|
|
patientFamilyDao.insertSelective(patientFamily); |
|
|
|
// if (ObjectUtil.isNotNull(param.getFamilyPhone())){
|
|
|
|
// MemberRoleDto.MemberForTemplate memberForTemplate = new MemberRoleDto.MemberForTemplate();
|
|
|
|
// //添加对应角色名称
|
|
|
|
// List<String> roleName = new ArrayList<>();
|
|
|
|
// roleName.add(Constant.PATIENT_FAMILY);
|
|
|
|
// memberForTemplate.setRoleName(roleName);
|
|
|
|
// memberForTemplate.setPhone(param.getFamilyPhone());
|
|
|
|
// if (ObjectUtil.isNotNull(param.getFamilyName())){
|
|
|
|
// memberForTemplate.setMemberName(param.getFamilyName());
|
|
|
|
// }
|
|
|
|
// memberList.add(memberForTemplate);
|
|
|
|
// }
|
|
|
|
//添加患者家属成员
|
|
|
|
if (ObjectUtil.isNotNull(param.getFamilyPhone())){ |
|
|
|
MemberRoleDto.MemberForTemplate memberForTemplate = new MemberRoleDto.MemberForTemplate(); |
|
|
|
List<String> roleName = new ArrayList<>(); |
|
|
|
roleName.add(Constant.PATIENT_FAMILY); |
|
|
|
memberForTemplate.setRoleName(roleName); |
|
|
|
memberForTemplate.setPhone(param.getFamilyPhone()); |
|
|
|
if (ObjectUtil.isNotNull(param.getFamilyName())){ |
|
|
|
memberForTemplate.setMemberName(param.getFamilyName()); |
|
|
|
} |
|
|
|
memberList.add(memberForTemplate); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//查找正在值班得急救医生和急救护士
|
|
|
|
@ -370,13 +400,13 @@ public class WisdomCarService implements IWisdomCarService { |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public List<WisdomCarVo.queryBindingCarRun> queryBindingCarRun(WisdomCarDto.queryBindingCarRun param, Long userId) { |
|
|
|
List<WisdomCarVo.queryBindingCarRun> queryBindingCarRunList = patientWisdomCarDao.queryBindingCarIsRun(param.getCarId()); |
|
|
|
public List<WisdomCarVo.QueryBindingCarRun> queryBindingCarRun(WisdomCarDto.QueryBindingCarRun param, Long userId) { |
|
|
|
List<WisdomCarVo.QueryBindingCarRun> queryBindingCarRunList = patientWisdomCarDao.queryBindingCarIsRun(param.getCarId()); |
|
|
|
if(CollectionUtil.isEmpty(queryBindingCarRunList)){ |
|
|
|
log.info("未找到对应的平车在运行"); |
|
|
|
throw new BaseException(CodeEnum.PARAM_ERROR); |
|
|
|
} |
|
|
|
for (WisdomCarVo.queryBindingCarRun queryBindingCarRun : queryBindingCarRunList) { |
|
|
|
for (WisdomCarVo.QueryBindingCarRun queryBindingCarRun : queryBindingCarRunList) { |
|
|
|
//通过平车id把 平车的平车编号信息存入
|
|
|
|
WisdomCar wisdomCar = wisdomcarDao.selectByPrimaryKey(param.getCarId()); |
|
|
|
if (ObjectUtil.isNotNull(wisdomCar)){ |
|
|
|
@ -396,5 +426,45 @@ public class WisdomCarService implements IWisdomCarService { |
|
|
|
return queryBindingCarRunList; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public List<WisdomCarVo.QueryAllCar> queryAllCar(WisdomCarDto.QueryAllCar param, Long userId) { |
|
|
|
HospitalMemberExample example = new HospitalMemberExample(); |
|
|
|
example.createCriteria().andUserIdEqualTo(userId); |
|
|
|
List<HospitalMember> hospitalMembers = hospitalMemberDao.selectByExample(example); |
|
|
|
if (CollectionUtil.isEmpty(hospitalMembers)) { |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
Long hospitalId = hospitalMembers.get(0).getHospitalId(); |
|
|
|
List<WisdomCarVo.QueryAllCar> queryAllCarList = wisdomcarDao.queryAllCar(hospitalId); |
|
|
|
if(CollectionUtil.isEmpty(queryAllCarList)){ |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
for (WisdomCarVo.QueryAllCar queryAllCar : queryAllCarList) { |
|
|
|
//通过平车id
|
|
|
|
WisdomCarVo.BindingCarInfo bindingCar = patientWisdomCarDao.queryBindingCar(queryAllCar.getId()); |
|
|
|
if(ObjectUtil.isNull(bindingCar)){ |
|
|
|
//未绑定
|
|
|
|
queryAllCar.setType((byte) 0); |
|
|
|
} else { |
|
|
|
queryAllCar.setPatientCarId(bindingCar.getPatientCarId()); |
|
|
|
queryAllCar.setPatientId(bindingCar.getPatientId()); |
|
|
|
PatientProject patientProject = patientProjectDao.selectByPrimaryKey(queryAllCar.getPatientId()); |
|
|
|
if(ObjectUtil.isNotNull(patientProject)){ |
|
|
|
queryAllCar.setMedicalRecordNum(patientProject.getMedicalRecordNum()); |
|
|
|
queryAllCar.setName(patientProject.getName()); |
|
|
|
queryAllCar.setSex(patientProject.getSex()); |
|
|
|
queryAllCar.setAge(patientProject.getAge()); |
|
|
|
queryAllCar.setIdCard(patientProject.getIdCard()); |
|
|
|
queryAllCar.setPhone(patientProject.getPhone()); |
|
|
|
queryAllCar.setType((byte) 1); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
//根据类型进行排序 0 1 未绑定是0 绑定是1
|
|
|
|
queryAllCarList.sort(Comparator.comparing(obj -> ((WisdomCarVo.QueryAllCar) obj).getType())); |
|
|
|
return queryAllCarList; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|