|
@@ -16,7 +16,6 @@ import cn.tr.module.smart.app.controller.vo.WxDoctorClinicRoomThumbnailVO;
|
|
|
import cn.tr.module.smart.common.dto.BizClinicAddOrEditDTO;
|
|
import cn.tr.module.smart.common.dto.BizClinicAddOrEditDTO;
|
|
|
import cn.tr.module.smart.common.dto.BizClinicRoomDTO;
|
|
import cn.tr.module.smart.common.dto.BizClinicRoomDTO;
|
|
|
import cn.tr.module.smart.common.dto.BizClinicRoomQueryDTO;
|
|
import cn.tr.module.smart.common.dto.BizClinicRoomQueryDTO;
|
|
|
-import cn.tr.module.smart.common.dto.BizDeptDTO;
|
|
|
|
|
import cn.tr.module.smart.common.entity.BizWxAppletQuestionAnswerEntity;
|
|
import cn.tr.module.smart.common.entity.BizWxAppletQuestionAnswerEntity;
|
|
|
import cn.tr.module.smart.common.enums.ClinicPhaseEnums;
|
|
import cn.tr.module.smart.common.enums.ClinicPhaseEnums;
|
|
|
import cn.tr.module.smart.common.enums.InfusionBindType;
|
|
import cn.tr.module.smart.common.enums.InfusionBindType;
|
|
@@ -695,13 +694,48 @@ public class BizClinicRoomServiceImpl implements IBizClinicRoomService {
|
|
|
//若未监护,则证明该手术是由医生端发起的,添加监护信息(手术信息以医生输入为主,如果医生没有输入,则按照病人输入的来)
|
|
//若未监护,则证明该手术是由医生端发起的,添加监护信息(手术信息以医生输入为主,如果医生没有输入,则按照病人输入的来)
|
|
|
clinicRoomDoctorUserService.stdInsertBizClinicRoomDoctor(userId, clinicRoom.getId());
|
|
clinicRoomDoctorUserService.stdInsertBizClinicRoomDoctor(userId, clinicRoom.getId());
|
|
|
//更新医生录入手术信息
|
|
//更新医生录入手术信息
|
|
|
- clinicRoom.setClinicStatus(ClinicPhaseEnums.BEFORE);
|
|
|
|
|
|
|
+ if (ObjectUtil.compare(source.getClinicStartTime(), new Date()) > 0) {
|
|
|
|
|
+ clinicRoom.setClinicStatus(ClinicPhaseEnums.BEFORE);
|
|
|
|
|
+ clinicRoom.setClinicEndTime(null);
|
|
|
|
|
+ }
|
|
|
clinicRoom.setClinicStartTime(clinicStartTime);
|
|
clinicRoom.setClinicStartTime(clinicStartTime);
|
|
|
- clinicRoom.setClinicEndTime(null);
|
|
|
|
|
clinicRoom.setDeptId(source.getDeptId());
|
|
clinicRoom.setDeptId(source.getDeptId());
|
|
|
clinicRoom.setDeptName(source.getDeptName());
|
|
clinicRoom.setDeptName(source.getDeptName());
|
|
|
clinicRoom.setClinicName(source.getClinicName());
|
|
clinicRoom.setClinicName(source.getClinicName());
|
|
|
- return baseRepository.updateById(clinicRoom)!=0;
|
|
|
|
|
|
|
+ return baseRepository.updateById(clinicRoom) != 0;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @param source
|
|
|
|
|
+ * @description: 医生端新增手术信息
|
|
|
|
|
+ * @author wangzl
|
|
|
|
|
+ * @date 2025/9/23
|
|
|
|
|
+ */
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public Boolean stdInsertDoctorApp(BizClinicAddOrEditDTO source) {
|
|
|
|
|
+ String userId = LoginUserStrategy.tr.getCurrentUserId();
|
|
|
|
|
+ String patientCode = source.getPatientCode();
|
|
|
|
|
+ //1、先判断是否已经添加过了患者信息
|
|
|
|
|
+ BizPatientPO patient = patientRepository.selectOne(new LambdaQueryWrapper<BizPatientPO>()
|
|
|
|
|
+ .eq(BizPatientPO::getPatientCode, patientCode)
|
|
|
|
|
+ .last("limit 1"));
|
|
|
|
|
+ if (ObjectUtil.isNull(patient)) {
|
|
|
|
|
+ patient = patientService.insertBizPatientAndReturnObj(source);
|
|
|
|
|
+ }
|
|
|
|
|
+ BizClinicRoomPO clinicRoom = BizClinicRoomMapper.INSTANCE.convertPO(source);
|
|
|
|
|
+ clinicRoom.setPatientId(patient.getId());
|
|
|
|
|
+ clinicRoom.setFollowUpCount(0);
|
|
|
|
|
+ clinicRoom.setFollowUp(Boolean.FALSE);
|
|
|
|
|
+ clinicRoom.setLastModifyUserType(UserTypeEnums.APP_DOCTOR);
|
|
|
|
|
+ clinicRoom.setLastModifyUserBy(userId);
|
|
|
|
|
+ clinicRoom.setClinicStatus(ClinicPhaseEnums.BEFORE);
|
|
|
|
|
+ this.baseRepository.insert(clinicRoom);
|
|
|
|
|
+ //更新患者绑定的最新手术id
|
|
|
|
|
+ patient.setCurrentClinicId(clinicRoom.getId());
|
|
|
|
|
+ patientRepository.updateById(patient);
|
|
|
|
|
+ //更新医生看护列表
|
|
|
|
|
+ clinicRoomDoctorUserService.stdInsertBizClinicRoomDoctor(userId, clinicRoom.getId());
|
|
|
|
|
+ return Boolean.TRUE;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|