提交 68f8e322 authored 作者: 杨凯's avatar 杨凯

feat:家庭医生初始化

上级 3cb36f12
...@@ -30,6 +30,7 @@ import com.ebaiyihui.family.doctor.server.util.UUIDUtil; ...@@ -30,6 +30,7 @@ import com.ebaiyihui.family.doctor.server.util.UUIDUtil;
import com.ebaiyihui.family.doctor.server.vo.OrderTaskVo; import com.ebaiyihui.family.doctor.server.vo.OrderTaskVo;
import com.ebaiyihui.framework.response.BaseResponse; import com.ebaiyihui.framework.response.BaseResponse;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -105,14 +106,16 @@ public class PatientServiceImpl implements PatientService { ...@@ -105,14 +106,16 @@ public class PatientServiceImpl implements PatientService {
PatientSignEntity oldPatientSignEntity = new PatientSignEntity(); PatientSignEntity oldPatientSignEntity = new PatientSignEntity();
// 改签或者排班医生获取签约的id // 改签或者排班医生获取签约的id
Date signCreateTime = null;
if (!SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) { if (!SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>(); QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>();
PatientSignEntity patientSign = new PatientSignEntity(); PatientSignEntity patientSign = new PatientSignEntity();
patientSign.setAdmId(reqVo.getAdmId()); patientSign.setAdmId(reqVo.getAdmId());
psWrapper.setEntity(patientSign); psWrapper.setEntity(patientSign);
oldPatientSignEntity = patientSignMapper.selectOne(psWrapper); oldPatientSignEntity = patientSignMapper.selectOne(psWrapper);
signCreateTime = oldPatientSignEntity.getCreateTime(); Date signCreateTime = oldPatientSignEntity.getCreateTime();
PatientSignEntity tempOldPatientSignEntity = new PatientSignEntity();
BeanUtils.copyProperties(oldPatientSignEntity, tempOldPatientSignEntity);
log.info("tempOldPatientSignEntity={}", tempOldPatientSignEntity);
log.info("入参查询oldPatientSignEntity={}", oldPatientSignEntity); log.info("入参查询oldPatientSignEntity={}", oldPatientSignEntity);
// 改签查询原始签约信息 // 改签查询原始签约信息
if (SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus()) && !oldPatientSignEntity.getSignId().equals(0L)) { if (SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus()) && !oldPatientSignEntity.getSignId().equals(0L)) {
...@@ -122,35 +125,35 @@ public class PatientServiceImpl implements PatientService { ...@@ -122,35 +125,35 @@ public class PatientServiceImpl implements PatientService {
cpsWrapper.setEntity(cPatientSign); cpsWrapper.setEntity(cPatientSign);
oldPatientSignEntity = patientSignMapper.selectOne(cpsWrapper); oldPatientSignEntity = patientSignMapper.selectOne(cpsWrapper);
log.info("改签查询原始oldPatientSignEntity={}", oldPatientSignEntity); log.info("改签查询原始oldPatientSignEntity={}", oldPatientSignEntity);
}
}
if (!SignStatus.NORMAL.getValue().equals(reqVo.getSignStatus())) {
Integer signStatus = SignStatus.SIGNED.getValue();
Integer status = StatusEnum.IN_CONSULTATION.getValue();
if (SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) {
List<PatientSignEntity> patientSignEntities = getPatientSignList(reqVo.getPhone(), reqVo.getPackageOrderId(),
signStatus, status);
if (!patientSignEntities.isEmpty()) {
if (SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) {
return BaseResponse.error("已经有进行中的签约或者改签医生,不能再进行签约或者改签!!!");
}
}
} else {
log.info("signCreateTime={}, signStartTime={}, signEndTime={}", signCreateTime, signStartTime, signEndTime); log.info("signCreateTime={}, signStartTime={}, signEndTime={}", signCreateTime, signStartTime, signEndTime);
if (signCreateTime.after(signStartTime) && signCreateTime.before(signEndTime)) { if (signCreateTime.after(signStartTime) && signCreateTime.before(signEndTime)) {
return BaseResponse.error("已经有进行中的签约或者改签医生,不能再进行签约或者改签!!!"); return BaseResponse.error("已经有进行中的签约或者改签医生,不能再进行签约或者改签!!!");
} }
}
// 处理换绑医生
if ((!StringUtils.isEmpty(reqVo.getAdmId()) || !StringUtils.isEmpty(reqVo.getSignSeqId()))) {
if (Objects.nonNull(tempOldPatientSignEntity)) {
signEndTime = tempOldPatientSignEntity.getSignEndTime();
tempOldPatientSignEntity.setStatus(StatusEnum.FINISH_APPLY.getValue());
tempOldPatientSignEntity.setSignStatus(SignStatus.CANCEL.getValue());
tempOldPatientSignEntity.setSubStatus(2);
tempOldPatientSignEntity.setSignEndTime(curDate);
patientSignMapper.updateById(tempOldPatientSignEntity);
} else { } else {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>(); return BaseResponse.error("未查询到的签约医生,不能进行改签!!!");
PatientSignEntity patientSign = new PatientSignEntity(); }
patientSign.setSignId(oldPatientSignEntity.getId()); }
patientSign.setStatus(StatusEnum.IN_CONSULTATION.getValue());
patientSign.setSignStatus(SignStatus.NORMAL.getValue());
psWrapper.setEntity(patientSign); } else if (SignStatus.NORMAL.getValue().equals(reqVo.getSignStatus())) { // 排班签约信息
PatientSignEntity patientSignEntity = patientSignMapper.selectOne(psWrapper); QueryWrapper<PatientSignEntity> nPsWrapper = new QueryWrapper<>();
PatientSignEntity nPatientSign = new PatientSignEntity();
nPatientSign.setSignId(oldPatientSignEntity.getId());
nPatientSign.setStatus(StatusEnum.IN_CONSULTATION.getValue());
nPatientSign.setSignStatus(SignStatus.NORMAL.getValue());
nPsWrapper.setEntity(nPatientSign);
PatientSignEntity patientSignEntity = patientSignMapper.selectOne(nPsWrapper);
if (Objects.nonNull(patientSignEntity)) { if (Objects.nonNull(patientSignEntity)) {
return BaseResponse.success(patientSignEntity.getAdmId()); return BaseResponse.success(patientSignEntity.getAdmId());
} }
...@@ -162,30 +165,15 @@ public class PatientServiceImpl implements PatientService { ...@@ -162,30 +165,15 @@ public class PatientServiceImpl implements PatientService {
deptId = Long.valueOf(scheduleRecordEntity.getDeptId()); deptId = Long.valueOf(scheduleRecordEntity.getDeptId());
deptName = scheduleRecordEntity.getDeptName(); deptName = scheduleRecordEntity.getDeptName();
} }
} else { // 首次签约
Integer signStatus = SignStatus.SIGNED.getValue();
// 处理换绑医生 Integer status = StatusEnum.IN_CONSULTATION.getValue();
if ((!StringUtils.isEmpty(reqVo.getAdmId()) || !StringUtils.isEmpty(reqVo.getSignSeqId())) List<PatientSignEntity> patientSignEntities = getPatientSignList(reqVo.getPhone(), reqVo.getPackageOrderId(),
&& SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus())) { signStatus, status);
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>(); if (!patientSignEntities.isEmpty()) {
PatientSignEntity patientSign = new PatientSignEntity(); if (SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) {
if (Objects.nonNull(reqVo.getAdmId())) { return BaseResponse.error("已经有进行中的签约或者改签医生,不能再进行签约或者改签!!!");
patientSign.setAdmId(reqVo.getAdmId());
}
if (Objects.nonNull(reqVo.getSignSeqId())) {
patientSign.setId(Long.valueOf(reqVo.getSignSeqId()));
} }
psWrapper.setEntity(patientSign);
PatientSignEntity patientSignEntity = patientSignMapper.selectOne(psWrapper);
if (Objects.nonNull(patientSignEntity)) {
signEndTime = patientSignEntity.getSignEndTime();
patientSignEntity.setStatus(StatusEnum.FINISH_APPLY.getValue());
patientSignEntity.setSignStatus(SignStatus.CANCEL.getValue());
patientSignEntity.setSubStatus(2);
patientSignEntity.setSignEndTime(curDate);
patientSignMapper.updateById(patientSignEntity);
} else {
return BaseResponse.error("未查询到的签约医生,不能进行改签!!!");
} }
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论