diff --git a/pom.xml b/pom.xml index 3f19cfe42..9507c2b43 100644 --- a/pom.xml +++ b/pom.xml @@ -15,6 +15,7 @@ yudao-module-system yudao-module-infra + yudao-module-tblist diff --git a/yudao-module-tblist/pom.xml b/yudao-module-tblist/pom.xml new file mode 100644 index 000000000..85db40292 --- /dev/null +++ b/yudao-module-tblist/pom.xml @@ -0,0 +1,26 @@ + + + 4.0.0 + + cn.iocoder.boot + yudao + ${revision} + + + yudao-module-tblist + pom + + ${project.artifactId} + + + demo 模块,主要实现 XXX、YYY、ZZZ 等功能。 + + + yudao-module-tblist-api + yudao-module-tblist-biz + + + + \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-api/pom.xml b/yudao-module-tblist/yudao-module-tblist-api/pom.xml new file mode 100644 index 000000000..db119e321 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-api/pom.xml @@ -0,0 +1,33 @@ + + + + cn.iocoder.boot + yudao-module-tblist + ${revision} + + 4.0.0 + yudao-module-tblist-api + jar + + ${project.artifactId} + + system 模块 API,暴露给其它模块调用 + + + + + cn.iocoder.boot + yudao-common + + + + + org.springframework.boot + spring-boot-starter-validation + true + + + + diff --git a/yudao-module-tblist/yudao-module-tblist-api/src/main/java/cn/iocoder/yudao/module/tblist/enums/ErrorCodeConstants_手动操作.java b/yudao-module-tblist/yudao-module-tblist-api/src/main/java/cn/iocoder/yudao/module/tblist/enums/ErrorCodeConstants_手动操作.java new file mode 100644 index 000000000..e69de29bb diff --git a/yudao-module-tblist/yudao-module-tblist-biz/pom.xml b/yudao-module-tblist/yudao-module-tblist-biz/pom.xml new file mode 100644 index 000000000..0c95f4b70 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/pom.xml @@ -0,0 +1,125 @@ + + + + cn.iocoder.boot + yudao-module-tblist + ${revision} + + 4.0.0 + yudao-module-tblist-biz + jar + + ${project.artifactId} + + system 模块下,我们放通用业务,支撑上层的核心业务。 + 例如说:用户、部门、权限、数据字典等等 + + + + + cn.iocoder.boot + yudao-module-tblist-api + ${revision} + + + cn.iocoder.boot + yudao-module-infra-api + ${revision} + + + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-data-permission + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-tenant + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-ip + + + + + cn.iocoder.boot + yudao-spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-validation + + + + + cn.iocoder.boot + yudao-spring-boot-starter-mybatis + + + + cn.iocoder.boot + yudao-spring-boot-starter-redis + + + + + cn.iocoder.boot + yudao-spring-boot-starter-job + + + + + cn.iocoder.boot + yudao-spring-boot-starter-mq + + + + + cn.iocoder.boot + yudao-spring-boot-starter-excel + + + + org.springframework.boot + spring-boot-starter-mail + + + + + com.xingyuv + spring-boot-starter-justauth + + + + com.github.binarywang + wx-java-mp-spring-boot-starter + + + com.github.binarywang + wx-java-miniapp-spring-boot-starter + + + + com.aliyun + aliyun-java-sdk-core + + + com.aliyun + aliyun-java-sdk-dysmsapi + + + com.tencentcloudapi + tencentcloud-sdk-java-sms + + + + com.xingyuv + spring-boot-starter-captcha-plus + + + + 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 new file mode 100644 index 000000000..e39bdb382 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java @@ -0,0 +1,97 @@ +package cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist; + +import org.springframework.web.bind.annotation.*; + +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + + +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + +import cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo.*; +import cn.iocoder.yudao.module.tblist.dal.dataobject.patientexamlist.PatientexamlistDO; +import cn.iocoder.yudao.module.tblist.service.patientexamlist.PatientexamlistService; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; + +@Tag(name = "管理后台 - PACS检查列表") +@RestController +@RequestMapping("/tblist/patientexamlist") +@Validated +public class PatientexamlistController { + + @Resource + private PatientexamlistService patientexamlistService; + + @PostMapping("/create") + @Operation(summary = "创建PACS检查列表") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:create')") + public CommonResult createPatientexamlist(@Valid @RequestBody PatientexamlistSaveReqVO createReqVO) { + return success(patientexamlistService.createPatientexamlist(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新PACS检查列表") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:update')") + public CommonResult updatePatientexamlist(@Valid @RequestBody PatientexamlistSaveReqVO updateReqVO) { + patientexamlistService.updatePatientexamlist(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除PACS检查列表") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:delete')") + public CommonResult deletePatientexamlist(@RequestParam("id") String id) { + patientexamlistService.deletePatientexamlist(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得PACS检查列表") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:query')") + public CommonResult getPatientexamlist(@RequestParam("id") String id) { + PatientexamlistDO patientexamlist = patientexamlistService.getPatientexamlist(id); + return success(BeanUtils.toBean(patientexamlist, PatientexamlistRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得PACS检查列表分页") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:query')") + public CommonResult> getPatientexamlistPage(@Valid PatientexamlistPageReqVO pageReqVO) { + PageResult pageResult = patientexamlistService.getPatientexamlistPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, PatientexamlistRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出PACS检查列表 Excel") + @PreAuthorize("@ss.hasPermission('tblist:patientexamlist:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportPatientexamlistExcel(@Valid PatientexamlistPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = patientexamlistService.getPatientexamlistPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "PACS检查列表.xls", "数据", PatientexamlistRespVO.class, + BeanUtils.toBean(list, PatientexamlistRespVO.class)); + } + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistPageReqVO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistPageReqVO.java new file mode 100644 index 000000000..760903955 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistPageReqVO.java @@ -0,0 +1,94 @@ +package cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - PACS检查列表分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class PatientexamlistPageReqVO extends PageParam { + + @Schema(description = "检查ID:体检编号、住院号、门诊号等", example = "26467") + private String examId; + + @Schema(description = "患者姓名", example = "赵六") + private String pName; + + @Schema(description = "性别") + private String gender; + + @Schema(description = "出生日期") + private Date birthday; + + @Schema(description = "检查日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] examDate; + + @Schema(description = "设备类型:CT DR MR B超 彩超等", example = "2") + private String deviceType; + + @Schema(description = "seri_dicomCount:序列数量/dicom数量") + private String seDc; + + @Schema(description = "检查项目名称", example = "张三") + private String examItemName; + + @Schema(description = "报告状态", example = "1") + private String reportstatus; + + @Schema(description = "申请日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] applicationDate; + + @Schema(description = "dicom文件上传时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] uploadDate; + + @Schema(description = "机构名称", example = "芋艿") + private String orgName; + + @Schema(description = "机构ID", example = "29289") + private String orgId; + + @Schema(description = "上级判读机构id列表:orgid1,orgid2,orgid3", example = "26015") + private String highLevelOrgId; + + @Schema(description = "创建时间:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createDate; + + @Schema(description = "检查所见", example = "随便") + private String examDescription; + + @Schema(description = "诊断结论") + private String diagResults; + + @Schema(description = "下诊断结论的时间:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] diagDate; + + @Schema(description = "诊断医生") + private String diagDoctor; + + @Schema(description = "审核医生") + private String reviewDoctor; + + @Schema(description = "审核日期:年月日时分秒") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] reviewDate; + + @Schema(description = "缩略图oss url, httP:oss url", example = "https://www.iocoder.cn") + private String thumbnailImgUrl; + + @Schema(description = "框架需要:创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistRespVO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistRespVO.java new file mode 100644 index 000000000..125aed557 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistRespVO.java @@ -0,0 +1,112 @@ +package cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - PACS检查列表 Response VO") +@Data +@ExcelIgnoreUnannotated +public class PatientexamlistRespVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "23598") + @ExcelProperty("主键") + private String id; + + @Schema(description = "检查ID:体检编号、住院号、门诊号等", example = "26467") + @ExcelProperty("检查ID:体检编号、住院号、门诊号等") + private String examId; + + @Schema(description = "患者姓名", example = "赵六") + @ExcelProperty("患者姓名") + private String pName; + + @Schema(description = "性别") + @ExcelProperty("性别") + private String gender; + + @Schema(description = "出生日期") + @ExcelProperty("出生日期") + private Date birthday; + + @Schema(description = "检查日期:年月日时分秒") + @ExcelProperty("检查日期:年月日时分秒") + private LocalDateTime examDate; + + @Schema(description = "设备类型:CT DR MR B超 彩超等", example = "2") + @ExcelProperty("设备类型:CT DR MR B超 彩超等") + private String deviceType; + + @Schema(description = "seri_dicomCount:序列数量/dicom数量") + @ExcelProperty("seri_dicomCount:序列数量/dicom数量") + private String seDc; + + @Schema(description = "检查项目名称", example = "张三") + @ExcelProperty("检查项目名称") + private String examItemName; + + @Schema(description = "报告状态", example = "1") + @ExcelProperty("报告状态") + private String reportstatus; + + @Schema(description = "申请日期:年月日时分秒") + @ExcelProperty("申请日期:年月日时分秒") + private LocalDateTime applicationDate; + + @Schema(description = "dicom文件上传时间") + @ExcelProperty("dicom文件上传时间") + private LocalDateTime uploadDate; + + @Schema(description = "机构名称", example = "芋艿") + @ExcelProperty("机构名称") + private String orgName; + + @Schema(description = "机构ID", example = "29289") + @ExcelProperty("机构ID") + private String orgId; + + @Schema(description = "上级判读机构id列表:orgid1,orgid2,orgid3", example = "26015") + @ExcelProperty("上级判读机构id列表:orgid1,orgid2,orgid3") + private String highLevelOrgId; + + @Schema(description = "创建时间:年月日时分秒") + @ExcelProperty("创建时间:年月日时分秒") + private LocalDateTime createDate; + + @Schema(description = "检查所见", example = "随便") + @ExcelProperty("检查所见") + private String examDescription; + + @Schema(description = "诊断结论") + @ExcelProperty("诊断结论") + private String diagResults; + + @Schema(description = "下诊断结论的时间:年月日时分秒") + @ExcelProperty("下诊断结论的时间:年月日时分秒") + private LocalDateTime diagDate; + + @Schema(description = "诊断医生") + @ExcelProperty("诊断医生") + private String diagDoctor; + + @Schema(description = "审核医生") + @ExcelProperty("审核医生") + private String reviewDoctor; + + @Schema(description = "审核日期:年月日时分秒") + @ExcelProperty("审核日期:年月日时分秒") + private LocalDateTime reviewDate; + + @Schema(description = "缩略图oss url, httP:oss url", example = "https://www.iocoder.cn") + @ExcelProperty("缩略图oss url, httP:oss url") + private String thumbnailImgUrl; + + @Schema(description = "框架需要:创建时间") + @ExcelProperty("框架需要:创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistSaveReqVO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistSaveReqVO.java new file mode 100644 index 000000000..282e61ad5 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/vo/PatientexamlistSaveReqVO.java @@ -0,0 +1,82 @@ +package cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - PACS检查列表新增/修改 Request VO") +@Data +public class PatientexamlistSaveReqVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "23598") + private String id; + + @Schema(description = "检查ID:体检编号、住院号、门诊号等", example = "26467") + private String examId; + + @Schema(description = "患者姓名", example = "赵六") + private String pName; + + @Schema(description = "性别") + private String gender; + + @Schema(description = "出生日期") + private Date birthday; + + @Schema(description = "检查日期:年月日时分秒") + private LocalDateTime examDate; + + @Schema(description = "设备类型:CT DR MR B超 彩超等", example = "2") + private String deviceType; + + @Schema(description = "seri_dicomCount:序列数量/dicom数量") + private String seDc; + + @Schema(description = "检查项目名称", example = "张三") + private String examItemName; + + @Schema(description = "报告状态", example = "1") + private String reportstatus; + + @Schema(description = "申请日期:年月日时分秒") + private LocalDateTime applicationDate; + + @Schema(description = "dicom文件上传时间") + private LocalDateTime uploadDate; + + @Schema(description = "机构名称", example = "芋艿") + private String orgName; + + @Schema(description = "机构ID", example = "29289") + private String orgId; + + @Schema(description = "上级判读机构id列表:orgid1,orgid2,orgid3", example = "26015") + private String highLevelOrgId; + + @Schema(description = "创建时间:年月日时分秒") + private LocalDateTime createDate; + + @Schema(description = "检查所见", example = "随便") + private String examDescription; + + @Schema(description = "诊断结论") + private String diagResults; + + @Schema(description = "下诊断结论的时间:年月日时分秒") + private LocalDateTime diagDate; + + @Schema(description = "诊断医生") + private String diagDoctor; + + @Schema(description = "审核医生") + private String reviewDoctor; + + @Schema(description = "审核日期:年月日时分秒") + private LocalDateTime reviewDate; + + @Schema(description = "缩略图oss url, httP:oss url", example = "https://www.iocoder.cn") + private String thumbnailImgUrl; + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/dataobject/patientexamlist/PatientexamlistDO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/dataobject/patientexamlist/PatientexamlistDO.java new file mode 100644 index 000000000..f5dee51b3 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/dataobject/patientexamlist/PatientexamlistDO.java @@ -0,0 +1,149 @@ +package cn.iocoder.yudao.module.tblist.dal.dataobject.patientexamlist; + +import lombok.*; + +import java.time.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +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; + +/** + * PACS检查列表 DO + * + * @author 李晓东 + */ +@TableName("tb_patientexamlist") +@KeySequence("tb_patientexamlist_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PatientexamlistDO extends BaseDO { + + /** + * 主键 + */ + @TableId(type = IdType.INPUT) + private String id; + /** + * 检查ID:体检编号、住院号、门诊号等 + */ + @TableField("examId") + private String examId; + /** + * 患者姓名 + */ + @TableField("pName") + private String pName; + /** + * + * 性别 + */ + @TableField("gender") + private String gender; + /** + * 出生日期 + */ + @TableField("birthday") + private Date birthday; + /** + * 检查日期:年月日时分秒 + */ + @TableField("examDate") + private LocalDateTime examDate; + /** + * 设备类型:CT DR MR B超 彩超等 + */ + @TableField("deviceType") + private String deviceType; + /** + * seri_dicomCount:序列数量/dicom数量 + */ + @TableField("se_Dc") + private String seDc; + /** + * 检查项目名称 + */ + @TableField("examItemName") + private String examItemName; + /** + * 报告状态 + */ + @TableField(value = "reportstatus") + private String reportstatus; + /** + * 申请日期:年月日时分秒 + */ + @TableField(value = "applicationDate") + private LocalDateTime applicationDate; + /** + * dicom文件上传时间 + */ + @TableField(value = "uploadDate") + private LocalDateTime uploadDate; + /** + * 机构名称 + */ + @TableField(value = "orgName") + private String orgName; + /** + * 机构ID + */ + @TableField(value = "orgId") + private String orgId; + /** + * 上级判读机构id列表:orgid1,orgid2,orgid3 + */ + @TableField(value = "highLevelOrgId") + private String highLevelOrgId; + /** + * 创建时间:年月日时分秒 + */ + @TableField(value = "createDate") + private LocalDateTime createDate; + /** + * 检查所见 + */ + @TableField(value = "examDescription") + private String examDescription; + /** + * 诊断结论 + */ + @TableField(value = "diagResults") + private String diagResults; + /** + * 下诊断结论的时间:年月日时分秒 + */ + @TableField(value = "diagDate") + private LocalDateTime diagDate; + /** + * 诊断医生 + */ + @TableField(value = "diagDoctor") + private String diagDoctor; + /** + * 审核医生 + */ + @TableField(value = "reviewDoctor") + private String reviewDoctor; + /** + * 审核日期:年月日时分秒 + */ + @TableField(value = "reviewDate") + private LocalDateTime reviewDate; + /** + * 缩略图oss url, httP:oss url + */ + @TableField(value = "thumbnailImgUrl") + private String thumbnailImgUrl; + +} \ No newline at end of file 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 new file mode 100644 index 000000000..0dfd759a1 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/patientexamlist/PatientexamlistMapper.java @@ -0,0 +1,48 @@ +package cn.iocoder.yudao.module.tblist.dal.mysql.patientexamlist; + +import java.util.*; + +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.module.tblist.dal.dataobject.patientexamlist.PatientexamlistDO; +import org.apache.ibatis.annotations.Mapper; +import cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo.*; + +/** + * PACS检查列表 Mapper + * + * @author 李晓东 + */ +@Mapper +public interface PatientexamlistMapper extends BaseMapperX { + + default PageResult selectPage(PatientexamlistPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(PatientexamlistDO::getExamId, reqVO.getExamId()) + .likeIfPresent(PatientexamlistDO::getPName, reqVO.getPName()) + .eqIfPresent(PatientexamlistDO::getGender, reqVO.getGender()) + .eqIfPresent(PatientexamlistDO::getBirthday, reqVO.getBirthday()) + .betweenIfPresent(PatientexamlistDO::getExamDate, reqVO.getExamDate()) + .eqIfPresent(PatientexamlistDO::getDeviceType, reqVO.getDeviceType()) + .eqIfPresent(PatientexamlistDO::getSeDc, reqVO.getSeDc()) + .likeIfPresent(PatientexamlistDO::getExamItemName, reqVO.getExamItemName()) + .eqIfPresent(PatientexamlistDO::getReportstatus, reqVO.getReportstatus()) + .betweenIfPresent(PatientexamlistDO::getApplicationDate, reqVO.getApplicationDate()) + .betweenIfPresent(PatientexamlistDO::getUploadDate, reqVO.getUploadDate()) + .likeIfPresent(PatientexamlistDO::getOrgName, reqVO.getOrgName()) + .eqIfPresent(PatientexamlistDO::getOrgId, reqVO.getOrgId()) + .eqIfPresent(PatientexamlistDO::getHighLevelOrgId, reqVO.getHighLevelOrgId()) + .betweenIfPresent(PatientexamlistDO::getCreateDate, reqVO.getCreateDate()) + .eqIfPresent(PatientexamlistDO::getExamDescription, reqVO.getExamDescription()) + .eqIfPresent(PatientexamlistDO::getDiagResults, reqVO.getDiagResults()) + .betweenIfPresent(PatientexamlistDO::getDiagDate, reqVO.getDiagDate()) + .eqIfPresent(PatientexamlistDO::getDiagDoctor, reqVO.getDiagDoctor()) + .eqIfPresent(PatientexamlistDO::getReviewDoctor, reqVO.getReviewDoctor()) + .betweenIfPresent(PatientexamlistDO::getReviewDate, reqVO.getReviewDate()) + .eqIfPresent(PatientexamlistDO::getThumbnailImgUrl, reqVO.getThumbnailImgUrl()) + .betweenIfPresent(PatientexamlistDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(PatientexamlistDO::getId)); + } + +} \ 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/PatientexamlistService.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java new file mode 100644 index 000000000..002c6c357 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java @@ -0,0 +1,57 @@ +package cn.iocoder.yudao.module.tblist.service.patientexamlist; + +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; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +import javax.validation.Valid; + +/** + * PACS检查列表 Service 接口 + * + * @author 李晓东 + */ +public interface PatientexamlistService { + + /** + * 创建PACS检查列表 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + String createPatientexamlist(@Valid PatientexamlistSaveReqVO createReqVO); + + /** + * 更新PACS检查列表 + * + * @param updateReqVO 更新信息 + */ + void updatePatientexamlist(@Valid PatientexamlistSaveReqVO updateReqVO); + + /** + * 删除PACS检查列表 + * + * @param id 编号 + */ + void deletePatientexamlist(String id); + + /** + * 获得PACS检查列表 + * + * @param id 编号 + * @return PACS检查列表 + */ + PatientexamlistDO getPatientexamlist(String id); + + /** + * 获得PACS检查列表分页 + * + * @param pageReqVO 分页查询 + * @return PACS检查列表分页 + */ + PageResult getPatientexamlistPage(PatientexamlistPageReqVO 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 new file mode 100644 index 000000000..0ac248322 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java @@ -0,0 +1,77 @@ +package cn.iocoder.yudao.module.tblist.service.patientexamlist; + +import cn.iocoder.yudao.framework.common.exception.ErrorCode; +import org.springframework.stereotype.Service; + +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; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + +import cn.iocoder.yudao.module.tblist.dal.mysql.patientexamlist.PatientexamlistMapper; + +import javax.annotation.Resource; + +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; + + +/** + * PACS检查列表 Service 实现类 + * + * @author 李晓东 + */ +@Service +@Validated +public class PatientexamlistServiceImpl implements PatientexamlistService { + + @Resource + private PatientexamlistMapper patientexamlistMapper; + + @Override + public String createPatientexamlist(PatientexamlistSaveReqVO createReqVO) { + // 插入 + PatientexamlistDO patientexamlist = BeanUtils.toBean(createReqVO, PatientexamlistDO.class); + patientexamlistMapper.insert(patientexamlist); + // 返回 + return patientexamlist.getId(); + } + + @Override + public void updatePatientexamlist(PatientexamlistSaveReqVO updateReqVO) { + // 校验存在 + validatePatientexamlistExists(updateReqVO.getId()); + // 更新 + PatientexamlistDO updateObj = BeanUtils.toBean(updateReqVO, PatientexamlistDO.class); + patientexamlistMapper.updateById(updateObj); + } + + @Override + public void deletePatientexamlist(String id) { + // 校验存在 + validatePatientexamlistExists(id); + // 删除 + patientexamlistMapper.deleteById(id); + } + + private void validatePatientexamlistExists(String id) { + if (patientexamlistMapper.selectById(id) == null) { + throw exception(new ErrorCode(101,"查询不到列表")); + } + } + + @Override + public PatientexamlistDO getPatientexamlist(String id) { + return patientexamlistMapper.selectById(id); + } + + @Override + public PageResult getPatientexamlistPage(PatientexamlistPageReqVO pageReqVO) { + return patientexamlistMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/resources/mapper/patientexamlist/PatientexamlistMapper.xml b/yudao-module-tblist/yudao-module-tblist-biz/src/main/resources/mapper/patientexamlist/PatientexamlistMapper.xml new file mode 100644 index 000000000..f1d383c54 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/resources/mapper/patientexamlist/PatientexamlistMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/yudao-server/pom.xml b/yudao-server/pom.xml index bc850b590..352f1f1d2 100644 --- a/yudao-server/pom.xml +++ b/yudao-server/pom.xml @@ -21,6 +21,11 @@ https://github.com/YunaiV/ruoyi-vue-pro + + cn.iocoder.boot + yudao-module-tblist-biz + ${revision} + cn.iocoder.boot yudao-module-system-biz diff --git a/yudao-server/src/main/resources/application-dev.yaml b/yudao-server/src/main/resources/application-dev.yaml index 73abf4bc7..cf0fb10d6 100644 --- a/yudao-server/src/main/resources/application-dev.yaml +++ b/yudao-server/src/main/resources/application-dev.yaml @@ -45,14 +45,14 @@ spring: primary: master datasource: master: - url: jdbc:mysql://127.0.0.1:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 - username: root - password: 1234 + url: jdbc:mysql://114.55.171.231:3306/cloudpacs?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 + username: admin + password: flowadmin slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改 lazy: true # 开启懒加载,保证启动速度 - url: jdbc:mysql://127.0.0.1:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 - username: root - password: 1234 + url: jdbc:mysql://114.55.171.231:3306/cloudpacs?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 + username: admin + password: flowadmin # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优 redis: diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index 873ccf29a..e23c1d097 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -47,23 +47,23 @@ spring: primary: master datasource: master: - url: jdbc:mysql://127.0.0.1:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 + url: jdbc:mysql://114.55.171.231:3306/cloudpacs?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 # url: jdbc:mysql://127.0.0.1:3306/ruoyi-vue-pro?useSSL=true&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai # MySQL Connector/J 5.X 连接的示例 # url: jdbc:postgresql://127.0.0.1:5432/ruoyi-vue-pro # PostgreSQL 连接的示例 # url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例 # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=ruoyi-vue-pro;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true;useUnicode=true;characterEncoding=utf-8 # SQLServer 连接的示例 # url: jdbc:dm://127.0.0.1:5236?schema=RUOYI_VUE_PRO # DM 连接的示例 - username: root - password: 1234 + username: admin + password: flowadmin # username: sa # SQL Server 连接的示例 # password: Yudao@2024 # SQL Server 连接的示例 # username: SYSDBA # DM 连接的示例 # password: SYSDBA001 # DM 连接的示例 slave: # 模拟从库,可根据自己需要修改 lazy: true # 开启懒加载,保证启动速度 - url: jdbc:mysql://127.0.0.1:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true - username: root - password: 1234 + url: jdbc:mysql://114.55.171.231:3306/cloudpacs?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true + username: admin + password: flowadmin # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优 redis: