From 5a6995e357285d5f8576d650c57a1ee8f6d3a17f Mon Sep 17 00:00:00 2001 From: lichuanyang <1176537920@qq.com> Date: Wed, 14 Aug 2024 12:04:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=B9=E9=87=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/applyform/ApplyformController.java | 19 +++--- .../admin/applyform/devicevo/DeviceVO.java | 2 +- .../vo/ReservationInfoSaveReqVO.java | 68 +++++++++++++++++++ .../admin/device/vo/DevicePageReqVO.java | 18 ++--- .../admin/device/vo/DeviceSaveReqVO.java | 6 ++ .../dal/dataobject/applyform/ApplyformDO.java | 9 ++- .../dal/device/DeviceDO.java | 14 ++-- .../dal/device/Mapper/DeviceMapper.java | 30 +++++++- .../service/applyform/ApplyformService.java | 11 ++- .../applyform/ApplyformServiceImpl.java | 62 +++++++++++++++-- .../applyform/device/DeviceServiceImpl.java | 29 +++----- .../admin/exampart/vo/ExampartSaveReqVO.java | 7 +- .../dal/mysql/exampart/ExampartMapper.java | 24 ++++++- .../service/exampart/ExampartServiceImpl.java | 23 +++---- .../PatientexamlistController.java | 16 +++++ .../vo/IllnessCasePageReqVO.java | 57 ++++++++++++++++ .../vo/ReportPrintPageReqVO.java | 46 +++++++++++++ .../PatientexamlistMapper.java | 31 +++++++++ .../PatientexamlistService.java | 16 +++++ .../PatientexamlistServiceImpl.java | 13 +++- 20 files changed, 430 insertions(+), 71 deletions(-) create mode 100644 yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/vo/ReservationInfoSaveReqVO.java create mode 100644 yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/IllnessCasePageReqVO.java create mode 100644 yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/ReportPrintPageReqVO.java diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/ApplyformController.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/ApplyformController.java index ef8d17937..4f60492ac 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/ApplyformController.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/ApplyformController.java @@ -80,6 +80,13 @@ public class ApplyformController { return success(applyformService.createApplyform(createReqVO)); } + @PostMapping("/createReservationInfo") + @Operation(summary = "创建预约登记") + @PreAuthorize("@ss.hasPermission('applyregistration:applyform:create')") + public CommonResult> createApplyform(@Valid @RequestBody ReservationInfoSaveReqVO createReqVO) { + return success(applyformService.createApplyform(createReqVO)); + } + @PutMapping("/update") @Operation(summary = "更新申请登记记录") @PreAuthorize("@ss.hasPermission('applyregistration:applyform:update')") @@ -121,13 +128,11 @@ public class ApplyformController { @Operation(summary = "导出申请登记记录 Excel") @PreAuthorize("@ss.hasPermission('applyregistration:applyform:export')") @ApiAccessLog(operateType = EXPORT) - public void exportApplyformExcel(@Valid ApplyformPageReqVO pageReqVO, - HttpServletResponse response) throws IOException { + public void exportApplyformExcel(@Valid ApplyformPageReqVO pageReqVO, HttpServletResponse response) throws IOException { pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); List list = applyformService.getApplyformPage(pageReqVO).getList(); // 导出 Excel - ExcelUtils.write(response, "申请登记记录.xls", "数据", ApplyformRespVO.class, - BeanUtils.toBean(list, ApplyformRespVO.class)); + ExcelUtils.write(response, "申请登记记录.xls", "数据", ApplyformRespVO.class, BeanUtils.toBean(list, ApplyformRespVO.class)); } @GetMapping("/getdevice") @@ -155,8 +160,7 @@ public class ApplyformController { AdminUserDO user = userService.getUser(getLoginUserId()); String device = deviceVO.getDevice(); if (!device.isEmpty()) { - LocalDateTime dateTime = LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), - DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); + LocalDateTime dateTime = LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); String[] result = device.split("\\|"); ApplyformSaveReqVO updateReqVO = new ApplyformSaveReqVO(); updateReqVO.setId(deviceVO.getID()); @@ -245,8 +249,7 @@ public class ApplyformController { //获取当前登陆用户 AdminUserDO user = userService.getUser(getLoginUserId()); //当前时间 - LocalDateTime dateTime = LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), - DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); + LocalDateTime dateTime = LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); //循环传递进来的参数 赋值 for (deviceupVO s : deviceVOList) { //新增对象 diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/devicevo/DeviceVO.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/devicevo/DeviceVO.java index 495824e6c..7e327ce89 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/devicevo/DeviceVO.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/devicevo/DeviceVO.java @@ -78,6 +78,6 @@ public class DeviceVO { * Scheduled Station AE Title:客户端的AETitle:设备操作台电脑的 AETitle */ @Schema(description = "AETitle") - private String ScheduledAET; + private String scheduledAET; } diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/vo/ReservationInfoSaveReqVO.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/vo/ReservationInfoSaveReqVO.java new file mode 100644 index 000000000..0d0d8611d --- /dev/null +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/applyform/vo/ReservationInfoSaveReqVO.java @@ -0,0 +1,68 @@ +package cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.time.*; +import java.util.List; + +@Schema(description = "管理后台 - 预约登记 ReservationInfoSaveReqVO") +@Data +public class ReservationInfoSaveReqVO { + + @Schema(description = "登记单号", example = "10624") + private String regId; + + @Schema(description = "登记来源") + private String regSource; + + @Schema(description = "examIdBase", example = "17552") + private String examIdBase; + + @Schema(description = "患者姓名", example = "王五") + private String pname; + + @Schema(description = "性别") + private String gender; + + @Schema(description = "患者联系电话") + private String contactTel; + + @Schema(description = "出生日期") + private LocalDateTime birthday; + + @Schema(description = "检查设备ID", example = "26048") + private String deviceId; + + @Schema(description = "检查设备名称", example = "张三") + private String deviceName; + + @Schema(description = "开单医生科室") + private String billDoctorDepartment; + + @Schema(description = "开单医生") + private String billgDoctor; + + @Schema(description = "登记时间") + private LocalDateTime regDate; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "examItems") + private List examItems; + + @Schema(description = "机构ID") + private String orgId; + + + /**内部类**/ + @Data + public static class ExamItem { + + private String examItemCode; + + private String examItemName; + + } + +} diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DevicePageReqVO.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DevicePageReqVO.java index e1a54f150..f502347bb 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DevicePageReqVO.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DevicePageReqVO.java @@ -4,6 +4,7 @@ import lombok.*; import io.swagger.v3.oas.annotations.media.Schema; import cn.iocoder.yudao.framework.common.pojo.PageParam; import org.springframework.format.annotation.DateTimeFormat; + import java.util.*; import java.time.LocalDateTime; @@ -16,14 +17,11 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ public class DevicePageReqVO extends PageParam { /*******在用参数******/ - @Schema(description = "设备信息描述", example = "设备名称、编号、型号") - private String deviceDesc; - @Schema(description = "设备名称", example = "赵六") private String deviceName; - @Schema(description = "设备唯一编号", example = "25589") - private String deviceId; + @Schema(description = "DR CT MR 超声等类别", example = "2") + private String deviceType; @Schema(description = "设备型号") private String deviceModel; @@ -34,18 +32,20 @@ public class DevicePageReqVO extends PageParam { @Schema(description = "设备归属科室") private String deviceDepartment; + @Schema(description = "设备唯一编号", example = "25589") + private String deviceId; + + @Schema(description = "设备信息描述", example = "设备名称、编号、型号") + private String deviceDesc; + @Schema(description = "机构ID", example = "18179") private String orgId; - /*******备选参数******/ @Schema(description = "设备生产商") private String deviceMaker; - @Schema(description = "DR CT MR 超声等类别", example = "2") - private String deviceType; - @Schema(description = "设备状态:0:失效,1:正常,设备故障或者淘汰,此状态置为 0", example = "1") private String deviceStatus; diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DeviceSaveReqVO.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DeviceSaveReqVO.java index 53ed3c926..87ea31206 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DeviceSaveReqVO.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/controller/admin/device/vo/DeviceSaveReqVO.java @@ -2,8 +2,11 @@ package cn.iocoder.yudao.module.applyregistration.controller.admin.device.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; + import javax.validation.constraints.*; + import org.springframework.format.annotation.DateTimeFormat; + import java.util.*; import java.time.LocalDateTime; @@ -56,6 +59,9 @@ public class DeviceSaveReqVO { @Schema(description = "备注", example = "随便") private String remark; + @Schema(description = "scheduledAET") + private String scheduledAET; + @Schema(description = "设备位置:XX楼XX室..") private String deviceLocalAddress; diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/dataobject/applyform/ApplyformDO.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/dataobject/applyform/ApplyformDO.java index e9ca819d6..3cc295b06 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/dataobject/applyform/ApplyformDO.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/dataobject/applyform/ApplyformDO.java @@ -1,12 +1,14 @@ package cn.iocoder.yudao.module.applyregistration.dal.dataobject.applyform; import lombok.*; + import java.util.*; import java.time.LocalDateTime; import java.time.LocalDateTime; import java.time.LocalDateTime; import java.time.LocalDateTime; import java.time.LocalDateTime; + import com.baomidou.mybatisplus.annotation.*; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; @@ -22,7 +24,7 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; @Builder @NoArgsConstructor @AllArgsConstructor -public class ApplyformDO { +public class ApplyformDO { /** * 主键 @@ -139,5 +141,10 @@ public class ApplyformDO { */ @TableField("deviceDepartmentCode") private String deviceDepartmentCode; + /** + * 备注 + */ + @TableField("remark") + private String remark; } \ No newline at end of file diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/DeviceDO.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/DeviceDO.java index 1872d70a7..79bf3cfbb 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/DeviceDO.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/DeviceDO.java @@ -13,7 +13,7 @@ import java.time.LocalDateTime; @AllArgsConstructor public class DeviceDO { - @TableId(value="ID",type = IdType.INPUT) + @TableId(value = "ID", type = IdType.INPUT) private String ID; /** @@ -104,6 +104,11 @@ public class DeviceDO { */ @TableField("remark") private String remark; + /** + * scheduledAET + */ + @TableField("scheduledAET") + private String scheduledAET; /** * 设备位置:XX楼XX室.. */ @@ -126,10 +131,5 @@ public class DeviceDO { */ @TableField("deleteDate") private LocalDateTime deleteDate; - /** - * - */ - @TableField("ScheduledAET") - private String ScheduledAET; - + } diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/Mapper/DeviceMapper.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/Mapper/DeviceMapper.java index 193e7cceb..5e892ccc2 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/Mapper/DeviceMapper.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/dal/device/Mapper/DeviceMapper.java @@ -2,18 +2,42 @@ package cn.iocoder.yudao.module.applyregistration.dal.device.Mapper; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.*; +import cn.iocoder.yudao.framework.mybatis.core.query.*; +import cn.iocoder.yudao.module.applyregistration.controller.admin.device.vo.*; import cn.iocoder.yudao.module.applyregistration.dal.device.DeviceDO; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Update; import java.util.List; @Mapper @InterceptorIgnore(tenantLine = "true") -public interface DeviceMapper extends BaseMapperX -{ +public interface DeviceMapper extends BaseMapperX { + //更新 + @Update(" UPDATE tb_device t1 SET \n" + + "t1.deviceName=#{deviceName},t1.deviceStatus=#{deviceStatus},t1.deviceType=#{deviceType},t1.deviceModel=#{deviceModel},\n" + + "t1.madeCompany=#{madeCompany},t1.madeCompanyTel=#{madeCompanyTel},t1.saleCompany=#{saleCompany},t1.saleCompanyTel=#{saleCompanyTel},\n" + + "t1.ScheduledAET=#{scheduledAET},t1.remark=#{remark},t1.departmentCode=#{departmentCode},t1.orgId=#{orgId},t1.deviceDepartment=#{deviceDepartment}\n" + + "WHERE t1.ID=#{id} ") + int updateDataById(DeviceSaveReqVO device); + + //删除 + @Update(" UPDATE tb_device t1 SET t1.isDelete=#{isdelete},t1.deletePerson=#{deletePerson},t1.deleteDate=#{deleteDate} WHERE t1.ID=#{ID} ") + int deleteDataById(DeviceDO device); + + //分页查询 + default PageResult selectPage(DevicePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .neIfPresent(DeviceDO::getIsdelete, '1') + .likeIfPresent(DeviceDO::getDeviceName, reqVO.getDeviceName()) + .likeIfPresent(DeviceDO::getDeviceModel, reqVO.getDeviceModel()) + .eqIfPresent(DeviceDO::getDeviceType, reqVO.getDeviceType()) + .eqIfPresent(DeviceDO::getDepartmentCode, reqVO.getDepartmentCode()) + .orderByAsc(DeviceDO::getDeviceName)); + } //获取机构表里的上级机构 List SelectDevice(@Param("orgId") String orgId); diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformService.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformService.java index d8b62b5a9..b74172127 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformService.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformService.java @@ -1,4 +1,5 @@ package cn.iocoder.yudao.module.applyregistration.service.applyform; + import java.util.List; import java.util.*; @@ -17,7 +18,7 @@ import javax.validation.Valid; * @author 李晓东 */ // -public interface ApplyformService extends IService{ +public interface ApplyformService extends IService { /** @@ -28,6 +29,14 @@ public interface ApplyformService extends IService{ */ String createApplyform(@Valid ApplyformSaveReqVO createReqVO); + /** + * 创建申请登记记录 + * + * @param createReqVO 创建信息 + * @return 编号集合 + */ + List createApplyform(@Valid ReservationInfoSaveReqVO createReqVO); + /** * 更新申请登记记录 * diff --git a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformServiceImpl.java b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformServiceImpl.java index 6d3779ed0..61bea8074 100644 --- a/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformServiceImpl.java +++ b/yudao-module-applyregistration/yudao-module-applyregistration-biz/src/main/java/cn/iocoder/yudao/module/applyregistration/service/applyform/ApplyformServiceImpl.java @@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.applyregistration.service.applyform; import cn.iocoder.yudao.framework.common.exception.ErrorCode; import cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.devicevo.deviceupVO; +import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO; +import cn.iocoder.yudao.module.system.service.user.AdminUserService; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -9,6 +11,8 @@ import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.function.Function; @@ -22,6 +26,7 @@ import cn.iocoder.yudao.module.applyregistration.dal.mysql.applyform.ApplyformMa import javax.annotation.Resource; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId; /** * 申请登记记录 Service 实现类 @@ -30,11 +35,14 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU */ @Service @Validated -public class ApplyformServiceImpl extends ServiceImpl implements ApplyformService { +public class ApplyformServiceImpl extends ServiceImpl implements ApplyformService { @Resource private ApplyformMapper applyformMapper; + @Resource + private AdminUserService userService; + @Override public String createApplyform(ApplyformSaveReqVO createReqVO) { // 插入 @@ -44,6 +52,54 @@ public class ApplyformServiceImpl extends ServiceImpl createApplyform(ReservationInfoSaveReqVO createReqVO) { + + List ids = new ArrayList<>(); + + //当前登陆用户 + AdminUserDO user = userService.getUser(getLoginUserId()); + //当前时间 + LocalDateTime dateTime = null; + //生成UUID + UUID guid = null; + //num + int num = 0; + + //VO转DO + ApplyformDO applyform = BeanUtils.toBean(createReqVO, ApplyformDO.class); + applyform.setPName(createReqVO.getPname()); + applyform.setOrgId(user.getOrgId()); + + if (createReqVO.getExamItems() != null && createReqVO.getExamItems().size() > 0) { + for (ReservationInfoSaveReqVO.ExamItem item : createReqVO.getExamItems()) { + //当前时间 + dateTime = LocalDateTime.parse( + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + ); + //生成UUID + guid = UUID.randomUUID(); + //num + num++; + + applyform.setId(guid.toString()); + applyform.setCreateDate(dateTime); + applyform.setExamId(createReqVO.getExamIdBase() + num); + applyform.setExamItemCode(item.getExamItemCode()); + applyform.setExamItemName(item.getExamItemName()); + + ids.add(applyform.getId()); + applyformMapper.insert(applyform); + } + } + + if (!(ids != null && ids.size() > 0)) + ids = Collections.emptyList(); + return ids; + + } + @Override public void updateApplyform(ApplyformSaveReqVO updateReqVO) { // 校验存在 @@ -63,7 +119,7 @@ public class ApplyformServiceImpl extends ServiceImpl getDevicelist(String orgId) { - return DeviceMapper.SelectDevice(orgId); + return DeviceMapper.SelectDevice(orgId); } @Override public PageResult getDevicePage(DevicePageReqVO pageReqVO) { - return DeviceMapper.selectPage(pageReqVO, new LambdaQueryWrapperX() - .likeIfPresent(DeviceDO::getDeviceDepartment, pageReqVO.getDeviceDepartment()) - .likeIfPresent(DeviceDO::getDeviceName, pageReqVO.getDeviceDesc()) - .likeIfPresent(DeviceDO::getDeviceId, pageReqVO.getDeviceDesc()) - .likeIfPresent(DeviceDO::getDeviceModel, pageReqVO.getDeviceDesc()) - .eq(DeviceDO::getIsdelete, '0')); + return DeviceMapper.selectPage(pageReqVO); } //其它方法 private void validateExists(String id) { if (DeviceMapper.selectById(id) == null) { - throw exception(new ErrorCode(1,"ID为空")); + throw exception(new ErrorCode(1, "ID为空")); } } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/exampart/vo/ExampartSaveReqVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/exampart/vo/ExampartSaveReqVO.java index edc112346..fa5cebb13 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/exampart/vo/ExampartSaveReqVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/exampart/vo/ExampartSaveReqVO.java @@ -2,8 +2,11 @@ package cn.iocoder.yudao.module.system.controller.admin.exampart.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; + import javax.validation.constraints.*; + import org.springframework.format.annotation.DateTimeFormat; + import java.util.*; import java.time.*; @@ -11,13 +14,13 @@ import java.time.*; @Data public class ExampartSaveReqVO { - @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "29261") + @Schema(description = "主键", example = "29261") private String id; @Schema(description = "检查部位名称", example = "张三") private String examPartName; - @Schema(description = "检查部位代码", requiredMode = Schema.RequiredMode.REQUIRED) + @Schema(description = "检查部位代码") private String examPartCode; @Schema(description = "机构ID", example = "23373") diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/exampart/ExampartMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/exampart/ExampartMapper.java index 5d155d1be..d86808639 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/exampart/ExampartMapper.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/exampart/ExampartMapper.java @@ -1,11 +1,14 @@ package cn.iocoder.yudao.module.system.dal.mysql.exampart; import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; -import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import cn.iocoder.yudao.framework.mybatis.core.query.*; +import cn.iocoder.yudao.framework.mybatis.core.mapper.*; +import cn.iocoder.yudao.module.system.controller.admin.exampart.vo.*; import cn.iocoder.yudao.module.system.dal.dataobject.exampart.ExampartDO; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Update; + import java.util.*; /** @@ -17,4 +20,21 @@ import java.util.*; @Mapper public interface ExampartMapper extends BaseMapperX { + //更新 + @Update(" UPDATE tb_exampart t1 SET t1.examPartCode=#{examPartCode},t1.examPartName=#{examPartName},t1.remark=#{remark},t1.orgId=#{orgId} WHERE t1.ID=#{id} ") + int updateDataById(ExampartSaveReqVO exampart); + + //删除 + @Update(" UPDATE tb_exampart t1 SET t1.isDelete=#{isDelete},t1.deletePerson=#{deletePerson},t1.deleteDate=#{deleteDate} WHERE t1.ID=#{ID} ") + int deleteDataById(ExampartDO exampart); + + //分页查询 + default PageResult selectPage(ExampartPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .neIfPresent(ExampartDO::getIsDelete, '1') + .likeIfPresent(ExampartDO::getExamPartName, reqVO.getExamPartName()) + .likeIfPresent(ExampartDO::getExamPartCode, reqVO.getExamPartCode()) + .orderByAsc(ExampartDO::getExamPartName)); + } + } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/exampart/ExampartServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/exampart/ExampartServiceImpl.java index 6ea24f62b..789eb7063 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/exampart/ExampartServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/exampart/ExampartServiceImpl.java @@ -44,9 +44,9 @@ public class ExampartServiceImpl implements ExampartService { //当前登陆用户 AdminUserDO user = userService.getUser(getLoginUserId()); //当前时间 - LocalDateTime dateTime= LocalDateTime.parse( + LocalDateTime dateTime = LocalDateTime.parse( LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), - DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") ); //生成UUID UUID guid = UUID.randomUUID(); @@ -66,10 +66,8 @@ public class ExampartServiceImpl implements ExampartService { public void updateExampart(ExampartSaveReqVO updateReqVO) { //校验存在 validateExists(updateReqVO.getId()); - //VO转DO - ExampartDO exampartDO = BeanUtils.toBean(updateReqVO, ExampartDO.class); - exampartMapper.updateById(exampartDO); + exampartMapper.updateDataById(updateReqVO); } @Override @@ -79,19 +77,19 @@ public class ExampartServiceImpl implements ExampartService { //当前登陆用户 AdminUserDO user = userService.getUser(getLoginUserId()); //当前时间 - LocalDateTime dateTime= LocalDateTime.parse( + LocalDateTime dateTime = LocalDateTime.parse( LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), - DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") ); //创建DO - ExampartDO exampartDO=new ExampartDO(); + ExampartDO exampartDO = new ExampartDO(); exampartDO.setID(id); exampartDO.setDeleteDate(dateTime); exampartDO.setDeletePerson(user.getUsername()); exampartDO.setIsDelete("1"); - exampartMapper.updateById(exampartDO); + exampartMapper.deleteDataById(exampartDO); } @Override @@ -106,16 +104,13 @@ public class ExampartServiceImpl implements ExampartService { @Override public PageResult getExampartPage(ExampartPageReqVO pageReqVO) { - return exampartMapper.selectPage(pageReqVO, new LambdaQueryWrapperX() - .likeIfPresent(ExampartDO::getExamPartName, pageReqVO.getExamPartName()) - .likeIfPresent(ExampartDO::getExamPartCode, pageReqVO.getExamPartCode()) - .eq(ExampartDO::getIsDelete, '0')); + return exampartMapper.selectPage(pageReqVO); } //其它方法 private void validateExists(String id) { if (exampartMapper.selectById(id) == null) { - throw exception(new ErrorCode(1,"ID为空")); + throw exception(new ErrorCode(1, "ID为空")); } } diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java index 8e14696f3..4b8caf07a 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java @@ -127,6 +127,22 @@ public class PatientexamlistController { return success(BeanUtils.toBean(pageResult, PatientexamlistRespVO.class)); } + @GetMapping("/pageIllnessCase") + @Operation(summary = "获得PACS病例管理分页") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:query')") + public CommonResult> getIllnessCasePage(@Valid IllnessCasePageReqVO pageReqVO) { + PageResult pageResult = patientexamlistService.getIllnessCasePage(pageReqVO); + return success(pageResult); + } + + @GetMapping("/pageReportPrintStatistics") + @Operation(summary = "获得PACS报告打印统计分页") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:query')") + public CommonResult> getReportPrintStatisticsPage(@Valid ReportPrintPageReqVO pageReqVO) { + PageResult pageResult = patientexamlistService.getReportPrintStatisticsPage(pageReqVO); + return success(pageResult); + } + @GetMapping("/export-excel") @Operation(summary = "导出PACS检查列表 Excel") @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:export')") diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/IllnessCasePageReqVO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/IllnessCasePageReqVO.java new file mode 100644 index 000000000..19f4778da --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/IllnessCasePageReqVO.java @@ -0,0 +1,57 @@ +package cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo; + +import cn.iocoder.yudao.framework.common.pojo.*; +import lombok.*; +import io.swagger.v3.oas.annotations.media.Schema; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.*; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - PACS检查列表分页 IllnessCasePageReqVO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class IllnessCasePageReqVO extends PageParam { + + @Schema(description = "登记单号") + private String regId; + + @Schema(description = "检查ID:体检编号、住院号、门诊号等", example = "26467") + private String examId; + + @Schema(description = "检查开始日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime examDate_ge; + + @Schema(description = "检查结束日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime examDate_le; + + @Schema(description = "设备类型:CT DR MR B超 彩超等", example = "2") + private String deviceType; + + @Schema(description = "影像设备名称") + private String deviceName; + + @Schema(description = "阴性阳性标记:0 为阴性, 1为阳性") + private String diagFlag; + + @Schema(description = "检查项目名称", example = "张三") + private String examItemName; + + @Schema(description = "报告状态", example = "1") + private String reportstatus; + + @Schema(description = "患者姓名", example = "赵六") + private String pname; + + @Schema(description = "性别") + private String gender; + + @Schema(description = "机构ID", example = "29289") + private String orgId; + + @Schema(description = "机构名称", example = "芋艿") + private String orgName; +} diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/ReportPrintPageReqVO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/ReportPrintPageReqVO.java new file mode 100644 index 000000000..6a35b4b74 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/ReportPrintPageReqVO.java @@ -0,0 +1,46 @@ +package cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo; + +import cn.iocoder.yudao.framework.common.pojo.*; +import lombok.*; +import io.swagger.v3.oas.annotations.media.Schema; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.*; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - PACS检查列表分页 ReportPrintPageReqVO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class ReportPrintPageReqVO extends PageParam { + + @Schema(description = "登记单号") + private String regId; + + @Schema(description = "检查ID:体检编号、住院号、门诊号等", example = "26467") + private String examId; + + @Schema(description = "检查开始日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime examDate_ge; + + @Schema(description = "检查结束日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime examDate_le; + + @Schema(description = "影像设备名称") + private String deviceName; + + @Schema(description = "设备类型:CT DR MR B超 彩超等", example = "2") + private String deviceType; + + @Schema(description = "患者姓名", example = "赵六") + private String pname; + + @Schema(description = "机构ID", example = "29289") + private String orgId; + + @Schema(description = "机构名称", example = "芋艿") + private String orgName; + +} diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/patientexamlist/PatientexamlistMapper.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/patientexamlist/PatientexamlistMapper.java index e5288992d..66e0122b0 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/patientexamlist/PatientexamlistMapper.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/patientexamlist/PatientexamlistMapper.java @@ -17,6 +17,37 @@ import cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo.*; @Mapper public interface PatientexamlistMapper extends BaseMapperX { + //IllnessCasePageReqVO分页 + default PageResult selectPage(IllnessCasePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .likeIfPresent(PatientexamlistDO::getRegId,reqVO.getRegId()) + .likeIfPresent(PatientexamlistDO::getExamId,reqVO.getExamId()) + .geIfPresent(PatientexamlistDO::getExamDate,reqVO.getExamDate_ge()) + .leIfPresent(PatientexamlistDO::getExamDate,reqVO.getExamDate_le()) + .likeIfPresent(PatientexamlistDO::getDeviceName,reqVO.getDeviceName()) + .likeIfPresent(PatientexamlistDO::getDeviceType,reqVO.getDeviceType()) + .eqIfPresent(PatientexamlistDO::getDiagFlag,reqVO.getDiagFlag()) + .likeIfPresent(PatientexamlistDO::getExamItemName,reqVO.getExamItemName()) + .likeIfPresent(PatientexamlistDO::getReportstatus,reqVO.getReportstatus()) + .likeIfPresent(PatientexamlistDO::getPName,reqVO.getPname()) + .likeIfPresent(PatientexamlistDO::getGender,reqVO.getGender()) + .orderByAsc(PatientexamlistDO::getRegId)); + } + + //ReportPrintPageReqVO分页 + default PageResult selectPage(ReportPrintPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .likeIfPresent(PatientexamlistDO::getRegId,reqVO.getRegId()) + .likeIfPresent(PatientexamlistDO::getExamId,reqVO.getExamId()) + .geIfPresent(PatientexamlistDO::getExamDate,reqVO.getExamDate_ge()) + .leIfPresent(PatientexamlistDO::getExamDate,reqVO.getExamDate_le()) + .likeIfPresent(PatientexamlistDO::getDeviceName,reqVO.getDeviceName()) + .eqIfPresent(PatientexamlistDO::getDeviceType,reqVO.getDeviceType()) + .likeIfPresent(PatientexamlistDO::getPName,reqVO.getPname()) + .orderByAsc(PatientexamlistDO::getRegId)); + } + + //PatientexamlistPageReqVO分页 default PageResult selectPage(PatientexamlistPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(PatientexamlistDO::getExamId, reqVO.getExamId()) diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java index 002c6c357..c0a7fb50e 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java @@ -54,4 +54,20 @@ public interface PatientexamlistService { */ PageResult getPatientexamlistPage(PatientexamlistPageReqVO pageReqVO); + /** + * 获得PACS病例管理分页 + * + * @param pageReqVO 分页查询 + * @return PACS检查列表分页 + */ + PageResult getIllnessCasePage(IllnessCasePageReqVO pageReqVO); + + /** + * 获得PACS报告打印统计分页 + * + * @param pageReqVO 分页查询 + * @return PACS检查列表分页 + */ + PageResult getReportPrintStatisticsPage(ReportPrintPageReqVO pageReqVO); + } \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java index 0ac248322..49d75def6 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java @@ -7,6 +7,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.transaction.annotation.Transactional; import java.util.*; + import cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo.*; import cn.iocoder.yudao.module.tblist.dal.dataobject.patientexamlist.PatientexamlistDO; import cn.iocoder.yudao.framework.common.pojo.PageResult; @@ -60,7 +61,7 @@ public class PatientexamlistServiceImpl implements PatientexamlistService { private void validatePatientexamlistExists(String id) { if (patientexamlistMapper.selectById(id) == null) { - throw exception(new ErrorCode(101,"查询不到列表")); + throw exception(new ErrorCode(101, "查询不到列表")); } } @@ -74,4 +75,14 @@ public class PatientexamlistServiceImpl implements PatientexamlistService { return patientexamlistMapper.selectPage(pageReqVO); } + @Override + public PageResult getIllnessCasePage(IllnessCasePageReqVO pageReqVO) { + return patientexamlistMapper.selectPage(pageReqVO); + } + + @Override + public PageResult getReportPrintStatisticsPage(ReportPrintPageReqVO pageReqVO) { + return patientexamlistMapper.selectPage(pageReqVO); + } + } \ No newline at end of file