From 1ed6dd5f36a8a9d36a6660f36d1ef49601c53488 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期一, 12 八月 2024 14:13:26 +0800
Subject: [PATCH] 新增 排队 查看功能
---
jh-module-ecg/jh-module-ecg-api/src/main/java/cn/lihu/jh/module/ecg/enums/ErrorCodeConstants.java | 3
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java | 95 +++++++++
jh-server/src/main/resources/application-local.yaml | 12
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueRespVO.java | 67 ++++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/queue/queueDO.java | 75 +++++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java | 75 +++++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java | 58 +++++
sql/mysql/jh.sql | 7
jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/queue/queueMapper.xml | 12 +
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/queueMapper.java | 37 +++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queuePageReqVO.java | 55 +++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueService.java | 56 +++++
12 files changed, 541 insertions(+), 11 deletions(-)
diff --git a/jh-module-ecg/jh-module-ecg-api/src/main/java/cn/lihu/jh/module/ecg/enums/ErrorCodeConstants.java b/jh-module-ecg/jh-module-ecg-api/src/main/java/cn/lihu/jh/module/ecg/enums/ErrorCodeConstants.java
index 970d307..98827aa 100644
--- a/jh-module-ecg/jh-module-ecg-api/src/main/java/cn/lihu/jh/module/ecg/enums/ErrorCodeConstants.java
+++ b/jh-module-ecg/jh-module-ecg-api/src/main/java/cn/lihu/jh/module/ecg/enums/ErrorCodeConstants.java
@@ -10,5 +10,6 @@
public interface ErrorCodeConstants {
ErrorCode APPOINTMENT_NOT_EXISTS = new ErrorCode(1_010_000_000, "棰勭害涓嶅瓨鍦�");
- ErrorCode ROOM_NOT_EXISTS = new ErrorCode(1_010_000_001, "璇婂鍜岃瘖鐤楀簥涓嶅瓨鍦�");
+ ErrorCode ROOM_NOT_EXISTS = new ErrorCode(1_010_001_000, "璇婂鍜岃瘖鐤楀簥涓嶅瓨鍦�");
+ ErrorCode QUEUE_NOT_EXISTS = new ErrorCode(1_010_002_000, "鎺掗槦涓嶅瓨鍦�");
}
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java
new file mode 100644
index 0000000..70dede7
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java
@@ -0,0 +1,95 @@
+package cn.lihu.jh.module.ecg.controller.admin.queue;
+
+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.lihu.jh.framework.common.pojo.PageParam;
+import cn.lihu.jh.framework.common.pojo.PageResult;
+import cn.lihu.jh.framework.common.pojo.CommonResult;
+import cn.lihu.jh.framework.common.util.object.BeanUtils;
+import static cn.lihu.jh.framework.common.pojo.CommonResult.success;
+
+import cn.lihu.jh.framework.excel.core.util.ExcelUtils;
+
+import cn.lihu.jh.framework.apilog.core.annotation.ApiAccessLog;
+import static cn.lihu.jh.framework.apilog.core.enums.OperateTypeEnum.*;
+
+import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*;
+import cn.lihu.jh.module.ecg.dal.dataobject.queue.queueDO;
+import cn.lihu.jh.module.ecg.service.queue.queueService;
+
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import javax.annotation.Resource;
+
+@Tag(name = "绠$悊鍚庡彴 - 鎺掗槦")
+@RestController
+@RequestMapping("/ecg/queue")
+@Validated
+public class queueController {
+
+ @Resource
+ private queueService queueService;
+
+ @PostMapping("/create")
+ @Operation(summary = "鍒涘缓鎺掗槦")
+ @PreAuthorize("@ss.hasPermission('ecg:queue:create')")
+ public CommonResult<Integer> createqueue(@Valid @RequestBody queueSaveReqVO createReqVO) {
+ return success(queueService.createqueue(createReqVO));
+ }
+
+ @PutMapping("/update")
+ @Operation(summary = "鏇存柊鎺掗槦")
+ @PreAuthorize("@ss.hasPermission('ecg:queue:update')")
+ public CommonResult<Boolean> updatequeue(@Valid @RequestBody queueSaveReqVO updateReqVO) {
+ queueService.updatequeue(updateReqVO);
+ return success(true);
+ }
+
+ @DeleteMapping("/delete")
+ @Operation(summary = "鍒犻櫎鎺掗槦")
+ @Parameter(name = "id", description = "缂栧彿", required = true)
+ @PreAuthorize("@ss.hasPermission('ecg:queue:delete')")
+ public CommonResult<Boolean> deletequeue(@RequestParam("id") Integer id) {
+ queueService.deletequeue(id);
+ return success(true);
+ }
+
+ @GetMapping("/get")
+ @Operation(summary = "鑾峰緱鎺掗槦")
+ @Parameter(name = "id", description = "缂栧彿", required = true, example = "1024")
+ @PreAuthorize("@ss.hasPermission('ecg:queue:query')")
+ public CommonResult<queueRespVO> getqueue(@RequestParam("id") Integer id) {
+ queueDO queue = queueService.getqueue(id);
+ return success(BeanUtils.toBean(queue, queueRespVO.class));
+ }
+
+ @GetMapping("/page")
+ @Operation(summary = "鑾峰緱鎺掗槦鍒嗛〉")
+ @PreAuthorize("@ss.hasPermission('ecg:queue:query')")
+ public CommonResult<PageResult<queueRespVO>> getqueuePage(@Valid queuePageReqVO pageReqVO) {
+ PageResult<queueDO> pageResult = queueService.getqueuePage(pageReqVO);
+ return success(BeanUtils.toBean(pageResult, queueRespVO.class));
+ }
+
+ @GetMapping("/export-excel")
+ @Operation(summary = "瀵煎嚭鎺掗槦 Excel")
+ @PreAuthorize("@ss.hasPermission('ecg:queue:export')")
+ @ApiAccessLog(operateType = EXPORT)
+ public void exportqueueExcel(@Valid queuePageReqVO pageReqVO,
+ HttpServletResponse response) throws IOException {
+ pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+ List<queueDO> list = queueService.getqueuePage(pageReqVO).getList();
+ // 瀵煎嚭 Excel
+ ExcelUtils.write(response, "鎺掗槦.xls", "鏁版嵁", queueRespVO.class,
+ BeanUtils.toBean(list, queueRespVO.class));
+ }
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queuePageReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queuePageReqVO.java
new file mode 100644
index 0000000..1a2c529
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queuePageReqVO.java
@@ -0,0 +1,55 @@
+package cn.lihu.jh.module.ecg.controller.admin.queue.vo;
+
+import lombok.*;
+import java.util.*;
+import io.swagger.v3.oas.annotations.media.Schema;
+import cn.lihu.jh.framework.common.pojo.PageParam;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+import static cn.lihu.jh.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
+
+@Schema(description = "绠$悊鍚庡彴 - 鎺掗槦鍒嗛〉 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class queuePageReqVO extends PageParam {
+
+ @Schema(description = "鎮h�呯紪鍙�", example = "30473")
+ private String patId;
+
+ @Schema(description = "鎮h�呭鍚�", example = "鑺嬭壙")
+ private String patName;
+
+ @Schema(description = "鎮h�呮�у埆")
+ private Boolean patGender;
+
+ @Schema(description = "棰勭害鏃堕棿娈�")
+ private Integer bookTimeslot;
+
+ @Schema(description = "棰勭害妫�鏌ョ被鍨�", example = "1")
+ private Boolean bookCheckType;
+
+ @Schema(description = "鎺掗槦搴忓彿")
+ private Integer seqNum;
+
+ @Schema(description = "10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡", example = "1")
+ private Boolean status;
+
+ @Schema(description = "杩囧彿鏍囪")
+ private Boolean passed;
+
+ @Schema(description = "棰勭害杩囨湡鏍囪")
+ private Boolean expired;
+
+ @Schema(description = "璇婂缂栧彿")
+ private String roomNum;
+
+ @Schema(description = "璇婄枟搴婄紪鍙�")
+ private String bedNum;
+
+ @Schema(description = "鍒涘缓鏃堕棿")
+ @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+ private LocalDateTime[] createTime;
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueRespVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueRespVO.java
new file mode 100644
index 0000000..a6c75da
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueRespVO.java
@@ -0,0 +1,67 @@
+package cn.lihu.jh.module.ecg.controller.admin.queue.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+import com.alibaba.excel.annotation.*;
+
+@Schema(description = "绠$悊鍚庡彴 - 鎺掗槦 Response VO")
+@Data
+@ExcelIgnoreUnannotated
+public class queueRespVO {
+
+ @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "21320")
+ @ExcelProperty("id")
+ private Integer id;
+
+ @Schema(description = "鎮h�呯紪鍙�", requiredMode = Schema.RequiredMode.REQUIRED, example = "30473")
+ @ExcelProperty("鎮h�呯紪鍙�")
+ private String patId;
+
+ @Schema(description = "鎮h�呭鍚�", requiredMode = Schema.RequiredMode.REQUIRED, example = "鑺嬭壙")
+ @ExcelProperty("鎮h�呭鍚�")
+ private String patName;
+
+ @Schema(description = "鎮h�呮�у埆")
+ @ExcelProperty("鎮h�呮�у埆")
+ private Boolean patGender;
+
+ @Schema(description = "棰勭害鏃堕棿娈�", requiredMode = Schema.RequiredMode.REQUIRED)
+ @ExcelProperty("棰勭害鏃堕棿娈�")
+ private Integer bookTimeslot;
+
+ @Schema(description = "棰勭害妫�鏌ョ被鍨�", example = "1")
+ @ExcelProperty("棰勭害妫�鏌ョ被鍨�")
+ private Boolean bookCheckType;
+
+ @Schema(description = "鎺掗槦搴忓彿", requiredMode = Schema.RequiredMode.REQUIRED)
+ @ExcelProperty("鎺掗槦搴忓彿")
+ private Integer seqNum;
+
+ @Schema(description = "10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @ExcelProperty("10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡")
+ private Boolean status;
+
+ @Schema(description = "杩囧彿鏍囪", requiredMode = Schema.RequiredMode.REQUIRED)
+ @ExcelProperty("杩囧彿鏍囪")
+ private Boolean passed;
+
+ @Schema(description = "棰勭害杩囨湡鏍囪", requiredMode = Schema.RequiredMode.REQUIRED)
+ @ExcelProperty("棰勭害杩囨湡鏍囪")
+ private Boolean expired;
+
+ @Schema(description = "璇婂缂栧彿")
+ @ExcelProperty("璇婂缂栧彿")
+ private String roomNum;
+
+ @Schema(description = "璇婄枟搴婄紪鍙�")
+ @ExcelProperty("璇婄枟搴婄紪鍙�")
+ private String bedNum;
+
+ @Schema(description = "鍒涘缓鏃堕棿", requiredMode = Schema.RequiredMode.REQUIRED)
+ @ExcelProperty("鍒涘缓鏃堕棿")
+ private LocalDateTime createTime;
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java
new file mode 100644
index 0000000..91eedcc
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java
@@ -0,0 +1,58 @@
+package cn.lihu.jh.module.ecg.controller.admin.queue.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.*;
+
+
+@Schema(description = "绠$悊鍚庡彴 - 鎺掗槦鏂板/淇敼 Request VO")
+@Data
+public class queueSaveReqVO {
+
+ @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "21320")
+ private Integer id;
+
+ @Schema(description = "鎮h�呯紪鍙�", requiredMode = Schema.RequiredMode.REQUIRED, example = "30473")
+ @NotEmpty(message = "鎮h�呯紪鍙蜂笉鑳戒负绌�")
+ private String patId;
+
+ @Schema(description = "鎮h�呭鍚�", requiredMode = Schema.RequiredMode.REQUIRED, example = "鑺嬭壙")
+ @NotEmpty(message = "鎮h�呭鍚嶄笉鑳戒负绌�")
+ private String patName;
+
+ @Schema(description = "鎮h�呮�у埆")
+ private Boolean patGender;
+
+ @Schema(description = "棰勭害鏃堕棿娈�", requiredMode = Schema.RequiredMode.REQUIRED)
+ @NotNull(message = "棰勭害鏃堕棿娈典笉鑳戒负绌�")
+ private Integer bookTimeslot;
+
+ @Schema(description = "棰勭害妫�鏌ョ被鍨�", example = "1")
+ private Boolean bookCheckType;
+
+ @Schema(description = "鎺掗槦搴忓彿", requiredMode = Schema.RequiredMode.REQUIRED)
+ @NotNull(message = "鎺掗槦搴忓彿涓嶈兘涓虹┖")
+ private Integer seqNum;
+
+ @Schema(description = "10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @NotNull(message = "10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡涓嶈兘涓虹┖")
+ private Boolean status;
+
+ @Schema(description = "杩囧彿鏍囪", requiredMode = Schema.RequiredMode.REQUIRED)
+ @NotNull(message = "杩囧彿鏍囪涓嶈兘涓虹┖")
+ private Boolean passed;
+
+ @Schema(description = "棰勭害杩囨湡鏍囪", requiredMode = Schema.RequiredMode.REQUIRED)
+ @NotNull(message = "棰勭害杩囨湡鏍囪涓嶈兘涓虹┖")
+ private Boolean expired;
+
+ @Schema(description = "璇婂缂栧彿")
+ private String roomNum;
+
+ @Schema(description = "璇婄枟搴婄紪鍙�")
+ private String bedNum;
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/queue/queueDO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/queue/queueDO.java
new file mode 100644
index 0000000..183d4ac
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/queue/queueDO.java
@@ -0,0 +1,75 @@
+package cn.lihu.jh.module.ecg.dal.dataobject.queue;
+
+import lombok.*;
+import java.util.*;
+import java.time.LocalDateTime;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.*;
+import cn.lihu.jh.framework.mybatis.core.dataobject.BaseDO;
+
+/**
+ * 鎺掗槦 DO
+ *
+ * @author 鑺嬮亾婧愮爜
+ */
+@TableName("queue")
+@KeySequence("queue_seq") // 鐢ㄤ簬 Oracle銆丳ostgreSQL銆並ingbase銆丏B2銆丠2 鏁版嵁搴撶殑涓婚敭鑷銆傚鏋滄槸 MySQL 绛夋暟鎹簱锛屽彲涓嶅啓銆�
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class queueDO extends BaseDO {
+
+ /**
+ * id
+ */
+ @TableId
+ private Integer id;
+ /**
+ * 鎮h�呯紪鍙�
+ */
+ private String patId;
+ /**
+ * 鎮h�呭鍚�
+ */
+ private String patName;
+ /**
+ * 鎮h�呮�у埆
+ */
+ private Boolean patGender;
+ /**
+ * 棰勭害鏃堕棿娈�
+ */
+ private Integer bookTimeslot;
+ /**
+ * 棰勭害妫�鏌ョ被鍨�
+ */
+ private Boolean bookCheckType;
+ /**
+ * 鎺掗槦搴忓彿
+ */
+ private Integer seqNum;
+ /**
+ * 10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡
+ */
+ private Boolean status;
+ /**
+ * 杩囧彿鏍囪
+ */
+ private Boolean passed;
+ /**
+ * 棰勭害杩囨湡鏍囪
+ */
+ private Boolean expired;
+ /**
+ * 璇婂缂栧彿
+ */
+ private String roomNum;
+ /**
+ * 璇婄枟搴婄紪鍙�
+ */
+ private String bedNum;
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/queueMapper.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/queueMapper.java
new file mode 100644
index 0000000..19a33bc
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/queueMapper.java
@@ -0,0 +1,37 @@
+package cn.lihu.jh.module.ecg.dal.mysql.queue;
+
+import java.util.*;
+
+import cn.lihu.jh.framework.common.pojo.PageResult;
+import cn.lihu.jh.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.lihu.jh.framework.mybatis.core.mapper.BaseMapperX;
+import cn.lihu.jh.module.ecg.dal.dataobject.queue.queueDO;
+import org.apache.ibatis.annotations.Mapper;
+import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*;
+
+/**
+ * 鎺掗槦 Mapper
+ *
+ * @author 鑺嬮亾婧愮爜
+ */
+@Mapper
+public interface queueMapper extends BaseMapperX<queueDO> {
+
+ default PageResult<queueDO> selectPage(queuePageReqVO reqVO) {
+ return selectPage(reqVO, new LambdaQueryWrapperX<queueDO>()
+ .eqIfPresent(queueDO::getPatId, reqVO.getPatId())
+ .likeIfPresent(queueDO::getPatName, reqVO.getPatName())
+ .eqIfPresent(queueDO::getPatGender, reqVO.getPatGender())
+ .eqIfPresent(queueDO::getBookTimeslot, reqVO.getBookTimeslot())
+ .eqIfPresent(queueDO::getBookCheckType, reqVO.getBookCheckType())
+ .eqIfPresent(queueDO::getSeqNum, reqVO.getSeqNum())
+ .eqIfPresent(queueDO::getStatus, reqVO.getStatus())
+ .eqIfPresent(queueDO::getPassed, reqVO.getPassed())
+ .eqIfPresent(queueDO::getExpired, reqVO.getExpired())
+ .eqIfPresent(queueDO::getRoomNum, reqVO.getRoomNum())
+ .eqIfPresent(queueDO::getBedNum, reqVO.getBedNum())
+ .betweenIfPresent(queueDO::getCreateTime, reqVO.getCreateTime())
+ .orderByDesc(queueDO::getId));
+ }
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueService.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueService.java
new file mode 100644
index 0000000..92afb62
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueService.java
@@ -0,0 +1,56 @@
+package cn.lihu.jh.module.ecg.service.queue;
+
+import java.util.*;
+import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*;
+import cn.lihu.jh.module.ecg.dal.dataobject.queue.queueDO;
+import cn.lihu.jh.framework.common.pojo.PageResult;
+import cn.lihu.jh.framework.common.pojo.PageParam;
+
+import javax.validation.Valid;
+
+/**
+ * 鎺掗槦 Service 鎺ュ彛
+ *
+ * @author 鑺嬮亾婧愮爜
+ */
+public interface queueService {
+
+ /**
+ * 鍒涘缓鎺掗槦
+ *
+ * @param createReqVO 鍒涘缓淇℃伅
+ * @return 缂栧彿
+ */
+ Integer createqueue(@Valid queueSaveReqVO createReqVO);
+
+ /**
+ * 鏇存柊鎺掗槦
+ *
+ * @param updateReqVO 鏇存柊淇℃伅
+ */
+ void updatequeue(@Valid queueSaveReqVO updateReqVO);
+
+ /**
+ * 鍒犻櫎鎺掗槦
+ *
+ * @param id 缂栧彿
+ */
+ void deletequeue(Integer id);
+
+ /**
+ * 鑾峰緱鎺掗槦
+ *
+ * @param id 缂栧彿
+ * @return 鎺掗槦
+ */
+ queueDO getqueue(Integer id);
+
+ /**
+ * 鑾峰緱鎺掗槦鍒嗛〉
+ *
+ * @param pageReqVO 鍒嗛〉鏌ヨ
+ * @return 鎺掗槦鍒嗛〉
+ */
+ PageResult<queueDO> getqueuePage(queuePageReqVO pageReqVO);
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java
new file mode 100644
index 0000000..defd969
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java
@@ -0,0 +1,75 @@
+package cn.lihu.jh.module.ecg.service.queue;
+
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.*;
+import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*;
+import cn.lihu.jh.module.ecg.dal.dataobject.queue.queueDO;
+import cn.lihu.jh.framework.common.pojo.PageResult;
+import cn.lihu.jh.framework.common.pojo.PageParam;
+import cn.lihu.jh.framework.common.util.object.BeanUtils;
+
+import cn.lihu.jh.module.ecg.dal.mysql.queue.queueMapper;
+
+import javax.annotation.Resource;
+
+import static cn.lihu.jh.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.lihu.jh.module.ecg.enums.ErrorCodeConstants.*;
+
+/**
+ * 鎺掗槦 Service 瀹炵幇绫�
+ *
+ * @author 鑺嬮亾婧愮爜
+ */
+@Service
+@Validated
+public class queueServiceImpl implements queueService {
+
+ @Resource
+ private queueMapper queueMapper;
+
+ @Override
+ public Integer createqueue(queueSaveReqVO createReqVO) {
+ // 鎻掑叆
+ queueDO queue = BeanUtils.toBean(createReqVO, queueDO.class);
+ queueMapper.insert(queue);
+ // 杩斿洖
+ return queue.getId();
+ }
+
+ @Override
+ public void updatequeue(queueSaveReqVO updateReqVO) {
+ // 鏍¢獙瀛樺湪
+ validatequeueExists(updateReqVO.getId());
+ // 鏇存柊
+ queueDO updateObj = BeanUtils.toBean(updateReqVO, queueDO.class);
+ queueMapper.updateById(updateObj);
+ }
+
+ @Override
+ public void deletequeue(Integer id) {
+ // 鏍¢獙瀛樺湪
+ validatequeueExists(id);
+ // 鍒犻櫎
+ queueMapper.deleteById(id);
+ }
+
+ private void validatequeueExists(Integer id) {
+ if (queueMapper.selectById(id) == null) {
+ throw exception(QUEUE_NOT_EXISTS);
+ }
+ }
+
+ @Override
+ public queueDO getqueue(Integer id) {
+ return queueMapper.selectById(id);
+ }
+
+ @Override
+ public PageResult<queueDO> getqueuePage(queuePageReqVO pageReqVO) {
+ return queueMapper.selectPage(pageReqVO);
+ }
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/queue/queueMapper.xml b/jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/queue/queueMapper.xml
new file mode 100644
index 0000000..278805f
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/queue/queueMapper.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.lihu.jh.module.ecg.dal.mysql.queue.queueMapper">
+
+ <!--
+ 涓�鑸儏鍐典笅锛屽敖鍙兘浣跨敤 Mapper 杩涜 CRUD 澧炲垹鏀规煡鍗冲彲銆�
+ 鏃犳硶婊¤冻鐨勫満鏅紝渚嬪璇村琛ㄥ叧鑱旀煡璇紝鎵嶄娇鐢� XML 缂栧啓 SQL銆�
+ 浠g爜鐢熸垚鍣ㄦ殏鏃跺彧鐢熸垚 Mapper XML 鏂囦欢鏈韩锛屾洿澶氭帹鑽� MybatisX 蹇�熷紑鍙戞彃浠舵潵鐢熸垚鏌ヨ銆�
+ 鏂囨。鍙锛歨ttps://www.iocoder.cn/MyBatis/x-plugins/
+ -->
+
+</mapper>
\ No newline at end of file
diff --git a/jh-server/src/main/resources/application-local.yaml b/jh-server/src/main/resources/application-local.yaml
index 970b71c..ac5815c 100644
--- a/jh-server/src/main/resources/application-local.yaml
+++ b/jh-server/src/main/resources/application-local.yaml
@@ -50,7 +50,7 @@
primary: master
datasource:
master:
- url: jdbc:mysql://rm-cn-lbj3spkaz000cx2o.rwlb.rds.aliyuncs.com:3306/lihu?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 杩炴帴鐨勭ず渚�
+ url: jdbc:mysql://116.62.18.175:6002/lihu?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 杩炴帴鐨勭ず渚�
@@ -58,8 +58,8 @@
# url: jdbc:dm://127.0.0.1:5236?schema=RUOYI_VUE_PRO # DM 杩炴帴鐨勭ず渚�
# url: jdbc:kingbase8://127.0.0.1:54321/test # 浜哄ぇ閲戜粨 KingbaseES 杩炴帴鐨勭ず渚�
# url: jdbc:postgresql://127.0.0.1:5432/postgres # OpenGauss 杩炴帴鐨勭ず渚�
- username: yinyu
- password: Root@yinyu
+ username: hxsoft
+ password: Hxerp2000
# username: sa # SQL Server 杩炴帴鐨勭ず渚�
# password: Jh@2024 # SQL Server 杩炴帴鐨勭ず渚�
# username: SYSDBA # DM 杩炴帴鐨勭ず渚�
@@ -68,9 +68,9 @@
# password: Jh@2024 # OpenGauss 杩炴帴鐨勭ず渚�
slave: # 妯℃嫙浠庡簱锛屽彲鏍规嵁鑷繁闇�瑕佷慨鏀�
lazy: true # 寮�鍚噿鍔犺浇锛屼繚璇佸惎鍔ㄩ�熷害
- url: jdbc:mysql://rm-cn-lbj3spkaz000cx2o.rwlb.rds.aliyuncs.com:3306/lihu?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 杩炴帴鐨勭ず渚�
- username: yinyu
- password: Root@yinyu
+ url: jdbc:mysql://116.62.18.175:6002/lihu?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 杩炴帴鐨勭ず渚�
+ username: hxsoft
+ password: Hxerp2000
# Redis 閰嶇疆銆俁edisson 榛樿鐨勯厤缃冻澶熶娇鐢紝涓�鑸笉闇�瑕佽繘琛岃皟浼�
redis:
diff --git a/sql/mysql/jh.sql b/sql/mysql/jh.sql
index 61ccf03..eb88b04 100644
--- a/sql/mysql/jh.sql
+++ b/sql/mysql/jh.sql
@@ -47,10 +47,9 @@
`pat_id` varchar(30) NOT NULL COMMENT '鎮h�呯紪鍙�',
`pat_name` varchar(10) NOT NULL COMMENT '鎮h�呭鍚�',
`pat_gender` bit(1) DEFAULT NULL COMMENT '鎮h�呮�у埆',
- `book_period_start` datetime NOT NULL COMMENT '棰勭害妫�鏌ユ椂闂存',
- `book_period_end` datetime NOT NULL COMMENT '棰勭害妫�鏌ユ椂闂存',
+ `book_timeslot` int NOT NULL COMMENT '棰勭害鏃堕棿娈�',
`book_check_type` tinyint(1) DEFAULT NULL COMMENT '棰勭害妫�鏌ョ被鍨�',
- `seq_id` int NOT NULL COMMENT '鎺掗槦搴忓彿',
+ `seq_num` int NOT NULL COMMENT '鎺掗槦搴忓彿',
`status` tinyint(1) NOT NULL COMMENT '10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡',
`passed` tinyint(1) NOT NULL COMMENT '杩囧彿鏍囪',
`expired` tinyint(1) NOT NULL COMMENT '棰勭害杩囨湡鏍囪',
@@ -63,7 +62,7 @@
`update_time` datetime NOT NULL COMMENT '鏇存柊鏃堕棿',
`deleted` bit(1) DEFAULT 0 COMMENT '鍒犻櫎鏍囪',
PRIMARY KEY (`id`),
- UNIQUE KEY `idx_seq_id` (`seq_id`)
+ UNIQUE KEY `idx_seq_id` (`seq_num`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='鎺掗槦琛�';
--
Gitblit v1.9.3