提交 be4dcb59 authored 作者: 杨凯's avatar 杨凯

feat:家庭医生初始化

上级 a4adf680
...@@ -33,10 +33,7 @@ import org.springframework.util.CollectionUtils; ...@@ -33,10 +33,7 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.util.Date; import java.util.*;
import java.util.List;
import java.util.Objects;
import java.util.Random;
/** /**
* @ClassName: PatientServiceImpl * @ClassName: PatientServiceImpl
...@@ -97,29 +94,18 @@ public class PatientServiceImpl implements PatientService { ...@@ -97,29 +94,18 @@ public class PatientServiceImpl implements PatientService {
String doctorName = reqVo.getDoctorName(); String doctorName = reqVo.getDoctorName();
Long deptId = reqVo.getDeptId(); Long deptId = reqVo.getDeptId();
String deptName = reqVo.getDeptName(); String deptName = reqVo.getDeptName();
List<PatientSignEntity> patientSignEntities = new ArrayList<>();
if (SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) { if (SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus())) {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>(); patientSignEntities = getPatientSignList(reqVo.getPhone(), reqVo.getPackageOrderId(),
PatientSignEntity patientSign = new PatientSignEntity(); SignStatus.SIGNED.getValue(), StatusEnum.IN_CONSULTATION.getValue());
patientSign.setPatientPhone(reqVo.getPhone());
patientSign.setPackageOrderId(reqVo.getPackageOrderId());
patientSign.setSignStatus(SignStatus.SIGNED.getValue());
patientSign.setStatus(StatusEnum.IN_CONSULTATION.getValue());
psWrapper.setEntity(patientSign);
List<PatientSignEntity> patientSignEntities = patientSignMapper.selectList(psWrapper);
if (!patientSignEntities.isEmpty()) { if (!patientSignEntities.isEmpty()) {
return BaseResponse.error("已经有进行中的签约的医生,不能再进行签约!!!"); return BaseResponse.error("已经有进行中的签约的医生,不能再进行签约!!!");
} }
} else if (SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus())) { } else if (SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus())) {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>(); patientSignEntities = getPatientSignList(reqVo.getPhone(), reqVo.getPackageOrderId(),
PatientSignEntity patientSign = new PatientSignEntity(); SignStatus.CANCEL.getValue(), StatusEnum.IN_CONSULTATION.getValue());
patientSign.setPatientPhone(reqVo.getPhone());
patientSign.setPackageOrderId(reqVo.getPackageOrderId());
patientSign.setSignStatus(SignStatus.CANCEL.getValue());
patientSign.setStatus(StatusEnum.IN_CONSULTATION.getValue());
psWrapper.setEntity(patientSign);
List<PatientSignEntity> patientSignEntities = patientSignMapper.selectList(psWrapper);
if (!patientSignEntities.isEmpty()) { if (!patientSignEntities.isEmpty()) {
return BaseResponse.error("已经有进行中的签约的医生,不能再进行签约!!!"); return BaseResponse.error("已经有进行中的改签医生,不能再进行改签签约!!!");
} }
} else { } else {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>(); QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>();
...@@ -141,18 +127,6 @@ public class PatientServiceImpl implements PatientService { ...@@ -141,18 +127,6 @@ public class PatientServiceImpl implements PatientService {
deptId = Long.valueOf(scheduleRecordEntity.getDeptId()); deptId = Long.valueOf(scheduleRecordEntity.getDeptId());
deptName = scheduleRecordEntity.getDeptName(); deptName = scheduleRecordEntity.getDeptName();
} }
if (SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus())) {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>();
PatientSignEntity patientSign = new PatientSignEntity();
patientSign.setPatientPhone(reqVo.getPhone());
psWrapper.setEntity(patientSign);
psWrapper.between("update_time", entity.getBenefitsStartTime(), entity.getBenefitsEndTime());
List<PatientSignEntity> patientSignEntities = patientSignMapper.selectList(psWrapper);
if (!patientSignEntities.isEmpty() && patientSignEntities.size() >= 2) {
return BaseResponse.error("30天之内已经进行过改签医生,不能在进行改签!!!");
}
}
// 处理换绑医生 // 处理换绑医生
if ((Objects.nonNull(reqVo.getAdmId()) || Objects.nonNull(reqVo.getSignSeqId()) if ((Objects.nonNull(reqVo.getAdmId()) || Objects.nonNull(reqVo.getSignSeqId())
&& SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus()))) { && SignStatus.CANCEL.getValue().equals(reqVo.getSignStatus()))) {
...@@ -194,8 +168,8 @@ public class PatientServiceImpl implements PatientService { ...@@ -194,8 +168,8 @@ public class PatientServiceImpl implements PatientService {
patientSignEntity.setStatus(StatusEnum.IN_CONSULTATION.getValue()); patientSignEntity.setStatus(StatusEnum.IN_CONSULTATION.getValue());
patientSignEntity.setPackageOrderId(reqVo.getPackageOrderId()); patientSignEntity.setPackageOrderId(reqVo.getPackageOrderId());
patientSignEntity.setSignEndTime(signEndTime); patientSignEntity.setSignEndTime(signEndTime);
if (Objects.nonNull(reqVo.getSignSeqId())) { if (!patientSignEntities.isEmpty()) {
patientSignEntity.setSignId(reqVo.getSignSeqId()); patientSignEntity.setSignId(patientSignEntities.get(0).getSignId());
} }
patientSignMapper.insert(patientSignEntity); patientSignMapper.insert(patientSignEntity);
...@@ -259,7 +233,10 @@ public class PatientServiceImpl implements PatientService { ...@@ -259,7 +233,10 @@ public class PatientServiceImpl implements PatientService {
} }
// 推送第三方签名相关订单信息 // 推送第三方签名相关订单信息
thirdOrderPushUtil.pushSignedOrder(String.valueOf(reqVo.getDoctorId()), reqVo.getPhone(), String.valueOf(patientSignEntity.getId()), reqVo.getPackageOrderId(), reqVo.getSignStatus()); thirdOrderPushUtil.pushSignedOrder(String.valueOf(reqVo.getDoctorId()), reqVo.getPhone(),
SignStatus.SIGNED.getValue().equals(reqVo.getSignStatus()) ? String.valueOf(patientSignEntity.getId()) :
String.valueOf(patientSignEntity.getSignId()),
reqVo.getPackageOrderId(), reqVo.getSignStatus());
imMsgTemplateService.sendImMsg(sendImMsgDTO); imMsgTemplateService.sendImMsg(sendImMsgDTO);
...@@ -331,4 +308,27 @@ public class PatientServiceImpl implements PatientService { ...@@ -331,4 +308,27 @@ public class PatientServiceImpl implements PatientService {
log.info("当前下单的医生:{}", JSON.toJSONString(scheduleRecordEntity)); log.info("当前下单的医生:{}", JSON.toJSONString(scheduleRecordEntity));
return scheduleRecordEntity; return scheduleRecordEntity;
} }
/**
* 查询患者签名信息
*
* @param phone
* @param packageOrderId
* @param signStatus
* @param status
* @return
*/
List<PatientSignEntity> getPatientSignList(String phone, String packageOrderId, Integer signStatus, Integer status) {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>();
PatientSignEntity patientSign = new PatientSignEntity();
patientSign.setPatientPhone(phone);
patientSign.setPackageOrderId(packageOrderId);
patientSign.setSignStatus(signStatus);
patientSign.setStatus(status);
psWrapper.setEntity(patientSign);
psWrapper.orderByDesc("create_time");
List<PatientSignEntity> patientSignEntities = patientSignMapper.selectList(psWrapper);
return patientSignEntities;
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论