From 134d92dab4033035e8ebe80b5d7c03468b40db38 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期四, 07 十一月 2024 09:38:02 +0800
Subject: [PATCH] 新增 queue_sequence 表操作
---
jh-module-ecg/jh-module-ecg-api/src/main/java/cn/lihu/jh/module/ecg/enums/ErrorCodeConstants.java | 2
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/dataobject/sequence/SequenceDO.java | 55 ++++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceServiceImpl.java | 74 +++++++++
jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/sequence/SequenceMapper.xml | 12 +
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequenceRespVO.java | 47 +++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceService.java | 55 ++++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequencePageReqVO.java | 40 +++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequenceSaveReqVO.java | 33 ++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/SequenceController.java | 95 +++++++++++
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/mysql/sequence/SequenceMapper.java | 32 ++++
10 files changed, 445 insertions(+), 0 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 0469332..b1b00fd 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
@@ -54,4 +54,6 @@
ErrorCode CALL_NOT_EXISTS = new ErrorCode(1_010_008_000, "鍙彿涓嶅瓨鍦�");
ErrorCode CHECK_TYPE_NOT_EXISTS = new ErrorCode(1_010_009_000, "妫�鏌ョ被鍨嬩笉瀛樺湪");
+
+ ErrorCode SEQUENCE_NOT_EXISTS = new ErrorCode(1_010_010_000, "褰撳ぉ搴忓彿涓嶅瓨鍦�");
}
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/SequenceController.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/SequenceController.java
new file mode 100644
index 0000000..04a88a5
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/SequenceController.java
@@ -0,0 +1,95 @@
+package cn.lihu.jh.module.queue.controller.admin.sequence;
+
+import org.springframework.web.bind.annotation.*;
+import jakarta.annotation.Resource;
+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 jakarta.validation.constraints.*;
+import jakarta.validation.*;
+import jakarta.servlet.http.*;
+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.queue.controller.admin.sequence.vo.*;
+import cn.lihu.jh.module.queue.dal.dataobject.sequence.SequenceDO;
+import cn.lihu.jh.module.queue.service.sequence.SequenceService;
+
+@Tag(name = "绠$悊鍚庡彴 - 褰撳ぉ搴忓彿")
+@RestController
+@RequestMapping("/queue/sequence")
+@Validated
+public class SequenceController {
+
+ @Resource
+ private SequenceService sequenceService;
+
+ @PostMapping("/create")
+ @Operation(summary = "鍒涘缓褰撳ぉ搴忓彿")
+ @PreAuthorize("@ss.hasPermission('queue:sequence:create')")
+ public CommonResult<Integer> createSequence(@Valid @RequestBody SequenceSaveReqVO createReqVO) {
+ return success(sequenceService.createSequence(createReqVO));
+ }
+
+ @PutMapping("/update")
+ @Operation(summary = "鏇存柊褰撳ぉ搴忓彿")
+ @PreAuthorize("@ss.hasPermission('queue:sequence:update')")
+ public CommonResult<Boolean> updateSequence(@Valid @RequestBody SequenceSaveReqVO updateReqVO) {
+ sequenceService.updateSequence(updateReqVO);
+ return success(true);
+ }
+
+ @DeleteMapping("/delete")
+ @Operation(summary = "鍒犻櫎褰撳ぉ搴忓彿")
+ @Parameter(name = "id", description = "缂栧彿", required = true)
+ @PreAuthorize("@ss.hasPermission('queue:sequence:delete')")
+ public CommonResult<Boolean> deleteSequence(@RequestParam("id") Integer id) {
+ sequenceService.deleteSequence(id);
+ return success(true);
+ }
+
+ @GetMapping("/get")
+ @Operation(summary = "鑾峰緱褰撳ぉ搴忓彿")
+ @Parameter(name = "id", description = "缂栧彿", required = true, example = "1024")
+ @PreAuthorize("@ss.hasPermission('queue:sequence:query')")
+ public CommonResult<SequenceRespVO> getSequence(@RequestParam("id") Integer id) {
+ SequenceDO sequence = sequenceService.getSequence(id);
+ return success(BeanUtils.toBean(sequence, SequenceRespVO.class));
+ }
+
+ @GetMapping("/page")
+ @Operation(summary = "鑾峰緱褰撳ぉ搴忓彿鍒嗛〉")
+ @PreAuthorize("@ss.hasPermission('queue:sequence:query')")
+ public CommonResult<PageResult<SequenceRespVO>> getSequencePage(@Valid SequencePageReqVO pageReqVO) {
+ PageResult<SequenceDO> pageResult = sequenceService.getSequencePage(pageReqVO);
+ return success(BeanUtils.toBean(pageResult, SequenceRespVO.class));
+ }
+
+ @GetMapping("/export-excel")
+ @Operation(summary = "瀵煎嚭褰撳ぉ搴忓彿 Excel")
+ @PreAuthorize("@ss.hasPermission('queue:sequence:export')")
+ @ApiAccessLog(operateType = EXPORT)
+ public void exportSequenceExcel(@Valid SequencePageReqVO pageReqVO,
+ HttpServletResponse response) throws IOException {
+ pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+ List<SequenceDO> list = sequenceService.getSequencePage(pageReqVO).getList();
+ // 瀵煎嚭 Excel
+ ExcelUtils.write(response, "褰撳ぉ搴忓彿.xls", "鏁版嵁", SequenceRespVO.class,
+ BeanUtils.toBean(list, SequenceRespVO.class));
+ }
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequencePageReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequencePageReqVO.java
new file mode 100644
index 0000000..257f5ba
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequencePageReqVO.java
@@ -0,0 +1,40 @@
+package cn.lihu.jh.module.queue.controller.admin.sequence.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 SequencePageReqVO extends PageParam {
+
+ @Schema(description = "妫�鏌ョ被鍨�", example = "2")
+ private Integer checkType;
+
+ @Schema(description = "鏃舵")
+ private Integer timeSlot;
+
+ @Schema(description = "璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿")
+ private Integer queueNo;
+
+ @Schema(description = "璇ユ椂娈� vip 搴忓彿")
+ private Integer queueVipNo;
+
+ @Schema(description = "璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿婊�")
+ private Integer queueFull;
+
+ @Schema(description = "璇ユ椂娈� vip 搴忓彿婊�")
+ private Integer queueVipFull;
+
+ @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/queue/controller/admin/sequence/vo/SequenceRespVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequenceRespVO.java
new file mode 100644
index 0000000..4ca8062
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequenceRespVO.java
@@ -0,0 +1,47 @@
+package cn.lihu.jh.module.queue.controller.admin.sequence.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 SequenceRespVO {
+
+ @Schema(description = "DB 涓婚敭", requiredMode = Schema.RequiredMode.REQUIRED, example = "11958")
+ @ExcelProperty("DB 涓婚敭")
+ private Integer id;
+
+ @Schema(description = "妫�鏌ョ被鍨�", example = "2")
+ @ExcelProperty("妫�鏌ョ被鍨�")
+ private Integer checkType;
+
+ @Schema(description = "鏃舵")
+ @ExcelProperty("鏃舵")
+ private Integer timeSlot;
+
+ @Schema(description = "璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿")
+ @ExcelProperty("璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿")
+ private Integer queueNo;
+
+ @Schema(description = "璇ユ椂娈� vip 搴忓彿")
+ @ExcelProperty("璇ユ椂娈� vip 搴忓彿")
+ private Integer queueVipNo;
+
+ @Schema(description = "璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿婊�")
+ @ExcelProperty("璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿婊�")
+ private Integer queueFull;
+
+ @Schema(description = "璇ユ椂娈� vip 搴忓彿婊�")
+ @ExcelProperty("璇ユ椂娈� vip 搴忓彿婊�")
+ private Integer queueVipFull;
+
+ @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/queue/controller/admin/sequence/vo/SequenceSaveReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequenceSaveReqVO.java
new file mode 100644
index 0000000..b7f8b04
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/controller/admin/sequence/vo/SequenceSaveReqVO.java
@@ -0,0 +1,33 @@
+package cn.lihu.jh.module.queue.controller.admin.sequence.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import jakarta.validation.constraints.*;
+
+@Schema(description = "绠$悊鍚庡彴 - 褰撳ぉ搴忓彿鏂板/淇敼 Request VO")
+@Data
+public class SequenceSaveReqVO {
+
+ @Schema(description = "DB 涓婚敭", requiredMode = Schema.RequiredMode.REQUIRED, example = "11958")
+ private Integer id;
+
+ @Schema(description = "妫�鏌ョ被鍨�", example = "2")
+ private Integer checkType;
+
+ @Schema(description = "鏃舵")
+ private Integer timeSlot;
+
+ @Schema(description = "璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿")
+ private Integer queueNo;
+
+ @Schema(description = "璇ユ椂娈� vip 搴忓彿")
+ private Integer queueVipNo;
+
+ @Schema(description = "璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿婊�")
+ private Integer queueFull;
+
+ @Schema(description = "璇ユ椂娈� vip 搴忓彿婊�")
+ private Integer queueVipFull;
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/dataobject/sequence/SequenceDO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/dataobject/sequence/SequenceDO.java
new file mode 100644
index 0000000..40d750c
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/dataobject/sequence/SequenceDO.java
@@ -0,0 +1,55 @@
+package cn.lihu.jh.module.queue.dal.dataobject.sequence;
+
+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_sequence")
+@KeySequence("queue_sequence_seq") // 鐢ㄤ簬 Oracle銆丳ostgreSQL銆並ingbase銆丏B2銆丠2 鏁版嵁搴撶殑涓婚敭鑷銆傚鏋滄槸 MySQL 绛夋暟鎹簱锛屽彲涓嶅啓銆�
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class SequenceDO extends BaseDO {
+
+ /**
+ * DB 涓婚敭
+ */
+ @TableId
+ private Integer id;
+ /**
+ * 妫�鏌ョ被鍨�
+ */
+ private Integer checkType;
+ /**
+ * 鏃舵
+ */
+ private Integer timeSlot;
+ /**
+ * 璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿
+ */
+ private Integer queueNo;
+ /**
+ * 璇ユ椂娈� vip 搴忓彿
+ */
+ private Integer queueVipNo;
+ /**
+ * 璇ユ椂娈� 鏅�氭偅鑰� 搴忓彿婊�
+ */
+ private Integer queueFull;
+ /**
+ * 璇ユ椂娈� vip 搴忓彿婊�
+ */
+ private Integer queueVipFull;
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/mysql/sequence/SequenceMapper.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/mysql/sequence/SequenceMapper.java
new file mode 100644
index 0000000..76c0c08
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/dal/mysql/sequence/SequenceMapper.java
@@ -0,0 +1,32 @@
+package cn.lihu.jh.module.queue.dal.mysql.sequence;
+
+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.queue.dal.dataobject.sequence.SequenceDO;
+import org.apache.ibatis.annotations.Mapper;
+import cn.lihu.jh.module.queue.controller.admin.sequence.vo.*;
+
+/**
+ * 褰撳ぉ搴忓彿 Mapper
+ *
+ * @author 閲戝崕鍖婚櫌
+ */
+@Mapper
+public interface SequenceMapper extends BaseMapperX<SequenceDO> {
+
+ default PageResult<SequenceDO> selectPage(SequencePageReqVO reqVO) {
+ return selectPage(reqVO, new LambdaQueryWrapperX<SequenceDO>()
+ .eqIfPresent(SequenceDO::getCheckType, reqVO.getCheckType())
+ .eqIfPresent(SequenceDO::getTimeSlot, reqVO.getTimeSlot())
+ .eqIfPresent(SequenceDO::getQueueNo, reqVO.getQueueNo())
+ .eqIfPresent(SequenceDO::getQueueVipNo, reqVO.getQueueVipNo())
+ .eqIfPresent(SequenceDO::getQueueFull, reqVO.getQueueFull())
+ .eqIfPresent(SequenceDO::getQueueVipFull, reqVO.getQueueVipFull())
+ .betweenIfPresent(SequenceDO::getCreateTime, reqVO.getCreateTime())
+ .orderByDesc(SequenceDO::getId));
+ }
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceService.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceService.java
new file mode 100644
index 0000000..acc4dee
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceService.java
@@ -0,0 +1,55 @@
+package cn.lihu.jh.module.queue.service.sequence;
+
+import java.util.*;
+import jakarta.validation.*;
+import cn.lihu.jh.module.queue.controller.admin.sequence.vo.*;
+import cn.lihu.jh.module.queue.dal.dataobject.sequence.SequenceDO;
+import cn.lihu.jh.framework.common.pojo.PageResult;
+import cn.lihu.jh.framework.common.pojo.PageParam;
+
+/**
+ * 褰撳ぉ搴忓彿 Service 鎺ュ彛
+ *
+ * @author 閲戝崕鍖婚櫌
+ */
+public interface SequenceService {
+
+ /**
+ * 鍒涘缓褰撳ぉ搴忓彿
+ *
+ * @param createReqVO 鍒涘缓淇℃伅
+ * @return 缂栧彿
+ */
+ Integer createSequence(@Valid SequenceSaveReqVO createReqVO);
+
+ /**
+ * 鏇存柊褰撳ぉ搴忓彿
+ *
+ * @param updateReqVO 鏇存柊淇℃伅
+ */
+ void updateSequence(@Valid SequenceSaveReqVO updateReqVO);
+
+ /**
+ * 鍒犻櫎褰撳ぉ搴忓彿
+ *
+ * @param id 缂栧彿
+ */
+ void deleteSequence(Integer id);
+
+ /**
+ * 鑾峰緱褰撳ぉ搴忓彿
+ *
+ * @param id 缂栧彿
+ * @return 褰撳ぉ搴忓彿
+ */
+ SequenceDO getSequence(Integer id);
+
+ /**
+ * 鑾峰緱褰撳ぉ搴忓彿鍒嗛〉
+ *
+ * @param pageReqVO 鍒嗛〉鏌ヨ
+ * @return 褰撳ぉ搴忓彿鍒嗛〉
+ */
+ PageResult<SequenceDO> getSequencePage(SequencePageReqVO pageReqVO);
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceServiceImpl.java
new file mode 100644
index 0000000..d0477de
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/queue/service/sequence/SequenceServiceImpl.java
@@ -0,0 +1,74 @@
+package cn.lihu.jh.module.queue.service.sequence;
+
+import org.springframework.stereotype.Service;
+import jakarta.annotation.Resource;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.*;
+import cn.lihu.jh.module.queue.controller.admin.sequence.vo.*;
+import cn.lihu.jh.module.queue.dal.dataobject.sequence.SequenceDO;
+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.queue.dal.mysql.sequence.SequenceMapper;
+
+import static cn.lihu.jh.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.lihu.jh.module.queue.enums.ErrorCodeConstants.*;
+
+/**
+ * 褰撳ぉ搴忓彿 Service 瀹炵幇绫�
+ *
+ * @author 閲戝崕鍖婚櫌
+ */
+@Service
+@Validated
+public class SequenceServiceImpl implements SequenceService {
+
+ @Resource
+ private SequenceMapper sequenceMapper;
+
+ @Override
+ public Integer createSequence(SequenceSaveReqVO createReqVO) {
+ // 鎻掑叆
+ SequenceDO sequence = BeanUtils.toBean(createReqVO, SequenceDO.class);
+ sequenceMapper.insert(sequence);
+ // 杩斿洖
+ return sequence.getId();
+ }
+
+ @Override
+ public void updateSequence(SequenceSaveReqVO updateReqVO) {
+ // 鏍¢獙瀛樺湪
+ validateSequenceExists(updateReqVO.getId());
+ // 鏇存柊
+ SequenceDO updateObj = BeanUtils.toBean(updateReqVO, SequenceDO.class);
+ sequenceMapper.updateById(updateObj);
+ }
+
+ @Override
+ public void deleteSequence(Integer id) {
+ // 鏍¢獙瀛樺湪
+ validateSequenceExists(id);
+ // 鍒犻櫎
+ sequenceMapper.deleteById(id);
+ }
+
+ private void validateSequenceExists(Integer id) {
+ if (sequenceMapper.selectById(id) == null) {
+ throw exception(SEQUENCE_NOT_EXISTS);
+ }
+ }
+
+ @Override
+ public SequenceDO getSequence(Integer id) {
+ return sequenceMapper.selectById(id);
+ }
+
+ @Override
+ public PageResult<SequenceDO> getSequencePage(SequencePageReqVO pageReqVO) {
+ return sequenceMapper.selectPage(pageReqVO);
+ }
+
+}
\ No newline at end of file
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/sequence/SequenceMapper.xml b/jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/sequence/SequenceMapper.xml
new file mode 100644
index 0000000..5c78efb
--- /dev/null
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/resources/mapper/sequence/SequenceMapper.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.queue.dal.mysql.sequence.SequenceMapper">
+
+ <!--
+ 涓�鑸儏鍐典笅锛屽敖鍙兘浣跨敤 Mapper 杩涜 CRUD 澧炲垹鏀规煡鍗冲彲銆�
+ 鏃犳硶婊¤冻鐨勫満鏅紝渚嬪璇村琛ㄥ叧鑱旀煡璇紝鎵嶄娇鐢� XML 缂栧啓 SQL銆�
+ 浠g爜鐢熸垚鍣ㄦ殏鏃跺彧鐢熸垚 Mapper XML 鏂囦欢鏈韩锛屾洿澶氭帹鑽� MybatisX 蹇�熷紑鍙戞彃浠舵潵鐢熸垚鏌ヨ銆�
+ 鏂囨。鍙锛歨ttps://www.iocoder.cn/MyBatis/x-plugins/
+ -->
+
+</mapper>
\ No newline at end of file
--
Gitblit v1.9.3