Forráskód Böngészése

【feat】【技术文档】
1.技术文档晚上表设计、功能设计,移除无效内容
2.增加实体类及其对应的mapper、service
3.完善sql脚本

ChenYL 11 hónapja
szülő
commit
a70ae85273
94 módosított fájl, 2551 hozzáadás és 8 törlés
  1. 3 0
      doc/sql/update-v3.sql
  2. 3 8
      doc/技术文档.md
  3. 51 0
      src/main/java/com/punchsettle/server/atomic/entity/Account.java
  4. 74 0
      src/main/java/com/punchsettle/server/atomic/entity/AccountTransferHistory.java
  5. 57 0
      src/main/java/com/punchsettle/server/atomic/entity/ItemConsumeWinHistory.java
  6. 39 0
      src/main/java/com/punchsettle/server/atomic/entity/NewUserStats.java
  7. 56 0
      src/main/java/com/punchsettle/server/atomic/entity/PointsStats.java
  8. 111 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTask.java
  9. 56 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTaskExt.java
  10. 100 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTaskHistory.java
  11. 44 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTaskRela.java
  12. 81 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInStatsMonth.java
  13. 81 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInStatsYear.java
  14. 69 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInStatus.java
  15. 69 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInStatusHistory.java
  16. 201 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInTask.java
  17. 57 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInTaskExt.java
  18. 99 0
      src/main/java/com/punchsettle/server/atomic/entity/PunchInTaskHistory.java
  19. 75 0
      src/main/java/com/punchsettle/server/atomic/entity/Reward.java
  20. 45 0
      src/main/java/com/punchsettle/server/atomic/entity/RewardAccountRela.java
  21. 74 0
      src/main/java/com/punchsettle/server/atomic/entity/RewardExchangeHistory.java
  22. 67 0
      src/main/java/com/punchsettle/server/atomic/entity/SettlePointsHistory.java
  23. 51 0
      src/main/java/com/punchsettle/server/atomic/entity/SettleTaskHistory.java
  24. 45 0
      src/main/java/com/punchsettle/server/atomic/entity/SysScheduleTask.java
  25. 69 0
      src/main/java/com/punchsettle/server/atomic/entity/SysScheduleTaskHistory.java
  26. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/AccountMapper.java
  27. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/AccountTransferHistoryMapper.java
  28. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/ItemConsumeWinHistoryMapper.java
  29. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/NewUserStatsMapper.java
  30. 13 0
      src/main/java/com/punchsettle/server/atomic/mapper/PointsStatsMapper.java
  31. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskExtMapper.java
  32. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskHistoryMapper.java
  33. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskMapper.java
  34. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskRelaMapper.java
  35. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatsMonthMapper.java
  36. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatsYearMapper.java
  37. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatusHistoryMapper.java
  38. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatusMapper.java
  39. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInTaskExtMapper.java
  40. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInTaskHistoryMapper.java
  41. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/PunchInTaskMapper.java
  42. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/RewardAccountRelaMapper.java
  43. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/RewardExchangeHistoryMapper.java
  44. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/RewardMapper.java
  45. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/SettlePointsHistoryMapper.java
  46. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/SettleTaskHistoryMapper.java
  47. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/SysScheduleTaskHistoryMapper.java
  48. 14 0
      src/main/java/com/punchsettle/server/atomic/mapper/SysScheduleTaskMapper.java
  49. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IAccountService.java
  50. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IAccountTransferHistoryService.java
  51. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IItemConsumeWinHistoryService.java
  52. 10 0
      src/main/java/com/punchsettle/server/atomic/service/INewUserStatsService.java
  53. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPointsStatsService.java
  54. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskExtService.java
  55. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskHistoryService.java
  56. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskRelaService.java
  57. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskService.java
  58. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInStatsMonthService.java
  59. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInStatsYearService.java
  60. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInStatusHistoryService.java
  61. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInStatusService.java
  62. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInTaskExtService.java
  63. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInTaskHistoryService.java
  64. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IPunchInTaskService.java
  65. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IRewardAccountRelaService.java
  66. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IRewardHistoryService.java
  67. 10 0
      src/main/java/com/punchsettle/server/atomic/service/IRewardService.java
  68. 10 0
      src/main/java/com/punchsettle/server/atomic/service/ISettlePointsHistoryService.java
  69. 10 0
      src/main/java/com/punchsettle/server/atomic/service/ISettleTaskHistoryService.java
  70. 10 0
      src/main/java/com/punchsettle/server/atomic/service/ISysScheduleTaskHistoryService.java
  71. 10 0
      src/main/java/com/punchsettle/server/atomic/service/ISysScheduleTaskService.java
  72. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/AccountServiceImpl.java
  73. 15 0
      src/main/java/com/punchsettle/server/atomic/service/impl/AccountTransferHistoryServiceImpl.java
  74. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/ItemConsumeWinHistoryServiceImpl.java
  75. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/NewUserStatsServiceImpl.java
  76. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PointsStatsServiceImpl.java
  77. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskExtServiceImpl.java
  78. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskHistoryServiceImpl.java
  79. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskRelaServiceImpl.java
  80. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskServiceImpl.java
  81. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatsMonthServiceImpl.java
  82. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatsYearServiceImpl.java
  83. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatusHistoryServiceImpl.java
  84. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatusServiceImpl.java
  85. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInTaskExtServiceImpl.java
  86. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInTaskHistoryServiceImpl.java
  87. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/PunchInTaskServiceImpl.java
  88. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/RewardAccountRelaServiceImpl.java
  89. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/RewardHistoryServiceImpl.java
  90. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/RewardServiceImpl.java
  91. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/SettlePointsHistoryServiceImpl.java
  92. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/SettleTaskHistoryServiceImpl.java
  93. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/SysScheduleTaskHistoryServiceImpl.java
  94. 14 0
      src/main/java/com/punchsettle/server/atomic/service/impl/SysScheduleTaskServiceImpl.java

+ 3 - 0
doc/sql/update-v3.sql

@@ -607,6 +607,9 @@ update punch_in_task_history set punch_in_status = 'UNDONE' where punch_in_statu
 DROP TABLE IF EXISTS punch_in_record;
 DROP TABLE IF EXISTS punch_in_record_settlement_rela;
 
+RENAME TABLE punch_settle.reward_history TO punch_settle.reward_exchange_history;
+
+
 
 
 

+ 3 - 8
doc/技术文档.md

@@ -14,13 +14,6 @@ ui设计工具:即时设计
 
 
 
-待增加功能
-
-1. 结算规则要支持节假日补充规则
-2. 打卡任务的年视图的统计功能
-
-
-
 ## 系统功能
 
 
@@ -312,6 +305,8 @@ ui设计工具:即时设计
 
 8. 新用户数量统计
 
+9. 自动删除无使用的数据
+
 
 
 ##### 运维接口
@@ -912,7 +907,7 @@ ui设计工具:即时设计
 
 ### 奖励兑换记录
 
-表名:reward_history
+表名:reward_exchange_history
 
 | 字段                           | 类型        | 描述                                     | 索引     |
 | ------------------------------ | ----------- | ---------------------------------------- | -------- |

+ 51 - 0
src/main/java/com/punchsettle/server/atomic/entity/Account.java

@@ -0,0 +1,51 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 账户
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "account")
+public class Account extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 2106615506104959073L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 账户名称
+     */
+    @Column(name = "account_name")
+    private String accountName;
+
+    /**
+     * 账户类型(BASIC-基本户,GENERAL-一般户)
+     */
+    @Column(name = "account_type")
+    private String accountType;
+
+    /**
+     * 奖励积分
+     */
+    @Column(name = "points")
+    private Integer points;
+
+}

+ 74 - 0
src/main/java/com/punchsettle/server/atomic/entity/AccountTransferHistory.java

@@ -0,0 +1,74 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 账户转账记录
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "account_transfer_history")
+public class AccountTransferHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 4221282706046172721L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 转出账户id
+     */
+    @Column(name = "sender_account_id")
+    private Long senderAccountId;
+
+    /**
+     * 转入账户id
+     */
+    @Column(name = "recipient_account_id")
+    private Long recipientAccountId;
+
+    /**
+     * 转账积分
+     */
+    @Column(name = "transfer_points")
+    private Integer transferPoints;
+
+    /**
+     * 转出账户转出前积分
+     */
+    @Column(name = "sa_points_before_transfer")
+    private Integer saPointsBeforeTransfer;
+
+    /**
+     * 转出账户转出后积分
+     */
+    @Column(name = "sa_points_after_transfer")
+    private Integer saPointsAfterTransfer;
+
+    /**
+     * 转入账户转入前积分
+     */
+    @Column(name = "ra_points_before_transfer")
+    private Integer raPointsBeforeTransfer;
+
+    /**
+     * 转入账户转入后积分
+     */
+    @Column(name = "ra_points_after_transfer")
+    private Integer raPointsAfterTransfer;
+}

+ 57 - 0
src/main/java/com/punchsettle/server/atomic/entity/ItemConsumeWinHistory.java

@@ -0,0 +1,57 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 物品消费与中奖记录
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "lottery_scratch_record")
+public class ItemConsumeWinHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 7263000861735955244L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 动作(消费-CONSUME,中奖-WIN,撤销消费-REVERSE_CONSUME,撤销中奖-REVERSE_WIN)
+     */
+    @Column(name = "action")
+    private String action;
+
+    /**
+     * 来源
+     */
+    @Column(name = "source")
+    private String source;
+
+    /**
+     * 种类
+     */
+    @Column(name = "category")
+    private String category;
+
+    /**
+     * 金额(元)
+     */
+    @Column(name = "amount")
+    private BigDecimal amount;
+}

+ 39 - 0
src/main/java/com/punchsettle/server/atomic/entity/NewUserStats.java

@@ -0,0 +1,39 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 新用户数据统计
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "new_user_stats")
+public class NewUserStats extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 6328306652525151160L;
+
+    /**
+     * 统计时间(格式:yyyy-MM-dd)
+     */
+    @Column(name = "stats_time")
+    private String statsTime;
+
+    /**
+     * 新用户数量
+     */
+    @Column(name = "new_user_count")
+    private Integer newUserCount;
+
+}

+ 56 - 0
src/main/java/com/punchsettle/server/atomic/entity/PointsStats.java

@@ -0,0 +1,56 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 积分数据统计
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "points_stats")
+public class PointsStats extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -3999261546475470489L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 统计时间(格式:yyyy-MM-dd)
+     */
+    @Column(name = "stats_time")
+    private String statsTime;
+
+    /**
+     * 每日积分的结算数
+     */
+    @Column(name = "settle_points")
+    private Integer settlePoints;
+
+    /**
+     * 每日积分的消耗数量
+     */
+    @Column(name = "consume_points")
+    private Integer consumePoints;
+
+    /**
+     * 每日剩余总积分
+     */
+    @Column(name = "total_points")
+    private Integer totalPoints;
+}

+ 111 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTask.java

@@ -0,0 +1,111 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_multi_task")
+public class PunchInMultiTask extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -8616950431388861152L;
+
+    /**
+     * 打卡多任务唯一ID
+     */
+    @Column(name = "multi_task_unique_id")
+    private Long multiTaskUniqueId;
+
+    /**
+     * 任务状态(活跃-ACTIVE,归档-ARCHIVE)
+     */
+    @Column(name = "multi_task_status")
+    private String multiTaskStatus;
+
+    /**
+     * 任务修改版本
+     */
+    @Column(name = "multi_task_version")
+    private Integer multiTaskVersion;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 打卡方式(次数-COUNT,比率-RATE)
+     */
+    @Column(name = "punch_in_method")
+    private String punchInMethod;
+
+    /**
+     * 打卡完成次数
+     */
+    @Column(name = "punch_in_done_count")
+    private Integer punchInDoneCount;
+
+    /**
+     * 打卡完成率
+     */
+    @Column(name = "punch_in_done_rate")
+    private BigDecimal punchInDoneRate;
+
+    /**
+     * 奖励的积分(基本)
+     */
+    @Column(name = "points")
+    private Integer points;
+
+    /**
+     * 是否启用宽限期(ENABLED-启用,DISABLED-关闭)
+     */
+    @Column(name = "grace_status")
+    private String graceStatus;
+
+    /**
+     * 宽限期(单位:天)
+     */
+    @Column(name = "grace_day")
+    private Integer graceDay;
+
+    /**
+     * 打卡中断天数(单位:天)
+     */
+    @Column(name = "interrupted_day")
+    private Integer interruptedDay;
+
+    /**
+     * 惩罚天数(单位:天)
+     */
+    @Column(name = "penalty_day")
+    private Integer penaltyDay;
+
+    /**
+     * 额外奖励方式(无-NONE,固定-FIXED,区间-INTERVAL)
+     */
+    @Column(name = "extra_method")
+    private String extraMethod;
+
+    /**
+     * 奖励的积分(额外)
+     */
+    @Column(name = "extra_points")
+    private Integer extraPoints;
+}

+ 56 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTaskExt.java

@@ -0,0 +1,56 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务拓展表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punchJ_in_multi_task_ext")
+public class PunchInMultiTaskExt extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -1842326979030637250L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 多任务ID
+     */
+    @Column(name = "multi_task_unique_id")
+    private Long multiTaskUniqueId;
+
+    /**
+     * 使用维度(一天-ONE_DAY,多天-MULTI_DAY)
+     */
+    @Column(name = "dimension")
+    private String dimension;
+
+    /**
+     * 起始值(单位:次)
+     */
+    @Column(name = "initial_value")
+    private Integer initialValue;
+
+    /**
+     * 奖励的积分(额外)
+     */
+    @Column(name = "extra_points")
+    private Integer extraPoints;
+}

+ 100 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTaskHistory.java

@@ -0,0 +1,100 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务记录表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_multi_task_history")
+public class PunchInMultiTaskHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -8993538007673896334L;
+
+    /**
+     * 打卡多任务唯一ID
+     */
+    @Column(name = "punch_in_multi_task_unique_id")
+    private Long punchInMultiTaskUniqueId;
+
+    /**
+     * 打卡日期
+     */
+    @Column(name = "punch_in_date")
+    private String punchInDate;
+
+    /**
+     * 打卡状态(DONE-完成,UNDONE-未完成)
+     */
+    @Column(name = "punch_in_status")
+    private String punchInStatus;
+
+    /**
+     * 总任务数
+     */
+    @Column(name = "total_task_count")
+    private Integer totalTaskCount;
+
+    /**
+     * 打卡完成数
+     */
+    @Column(name = "punch_in_done_count")
+    private Integer punchInDoneCount;
+
+    /**
+     * 打卡完成率
+     */
+    @Column(name = "punch_in_done_rate")
+    private BigDecimal punchInDoneRate;
+
+    /**
+     * 连续打卡状态(正常打卡-NORMAL、中断--INTERRUPTED)
+     */
+    @Column(name = "consecutive_status")
+    private String consecutiveStatus;
+
+    /**
+     * 连续天数,第一天开始就等于1
+     */
+    @Column(name = "consecutive_day")
+    private Integer consecutiveDay;
+
+    /**
+     * 结算任务执行ID
+     */
+    @Column(name = "settle_task_history_id")
+    private Long settleTaskHistoryId;
+
+    /**
+     * 结算状态(未结算-UNSETTLED,宽限期跳过J-GRACE_SKIP,惩罚跳过-PENALTY_SKIP,已结算-SETTLED)
+     */
+    @Column(name = "settle_status")
+    private String settleStatus;
+
+    /**
+     * 结算时的打卡多任务ID
+     */
+    @Column(name = "settle_punch_in_multi_task_id")
+    private Long settlePunchInMultiTaskId;
+
+    /**
+     * 结算奖励积分
+     */
+    @Column(name = "settle_points")
+    private Integer settlePoints;
+
+}

+ 44 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInMultiTaskRela.java

@@ -0,0 +1,44 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务关联表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_multi_task_rela")
+public class PunchInMultiTaskRela extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 3897475522655680161L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 打卡多任务ID
+     */
+    @Column(name = "punch_in_multi_task_id")
+    private Long punchInMultiTaskId;
+
+    /**
+     * 打卡任务ID
+     */
+    @Column(name = "punch_in_task_id")
+    private Long punchInTaskId;
+}

+ 81 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInStatsMonth.java

@@ -0,0 +1,81 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务月数据统计
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_stats_month")
+public class PunchInStatsMonth extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -590856736982272243L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 任务唯一ID
+     */
+    @Column(name = "task_unique_id")
+    private Long taskUniqueId;
+
+    /**
+     * 统计时间(格式:yyyy-MM)
+     */
+    @Column(name = "stats_time")
+    private String statsTime;
+
+    /**
+     * 本月需打卡数
+     */
+    @Column(name = "punch_in_total_count")
+    private Integer punchInTotalCount;
+
+    /**
+     * 本月已打卡数
+     */
+    @Column(name = "punch_in_count")
+    private Integer punchInCount;
+
+    /**
+     * 本月完成打卡数
+     */
+    @Column(name = "punch_in_done_count")
+    private Integer punchInDoneCount;
+
+    /**
+     * 本月打卡率
+     */
+    @Column(name = "punch_in_rate")
+    private BigDecimal punchInRate;
+
+    /**
+     * 本月打卡完成率
+     */
+    @Column(name = "punch_in_done_rate")
+    private BigDecimal punchInDoneRate;
+
+    /**
+     * 本月获取积分数
+     */
+    @Column(name = "points")
+    private Integer points;
+}

+ 81 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInStatsYear.java

@@ -0,0 +1,81 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务年数据统计
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_stats_year")
+public class PunchInStatsYear extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 4320138404959615628L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 任务唯一ID
+     */
+    @Column(name = "task_unique_id")
+    private Long taskUniqueId;
+
+    /**
+     * 统计时间(格式:yyyy)
+     */
+    @Column(name = "stats_time")
+    private String statsTime;
+
+    /**
+     * 本年需打卡数
+     */
+    @Column(name = "punch_in_total_count")
+    private Integer punchInTotalCount;
+
+    /**
+     * 本年已打卡数
+     */
+    @Column(name = "punch_in_count")
+    private Integer punchInCount;
+
+    /**
+     * 本年完成打卡数
+     */
+    @Column(name = "punch_in_done_count")
+    private Integer punchInDoneCount;
+
+    /**
+     * 本年打卡率
+     */
+    @Column(name = "punch_in_rate")
+    private BigDecimal punchInRate;
+
+    /**
+     * 本年打卡完成率
+     */
+    @Column(name = "punch_in_done_rate")
+    private BigDecimal punchInDoneRate;
+
+    /**
+     * 本年获取积分数
+     */
+    @Column(name = "points")
+    private Integer points;
+}

+ 69 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInStatus.java

@@ -0,0 +1,69 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务状态表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_status")
+public class PunchInStatus extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 3336593993245280066L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 打卡多任务唯一ID
+     */
+    @Column(name = "punch_in_multi_task_unique_id")
+    private Long punchInMultiTaskUniqueId;
+
+    /**
+     * 打卡任务唯一ID
+     */
+    @Column(name = "punch_in_task_unique_id")
+    private Long punchInTaskUniqueId;
+
+    /**
+     * 连续打卡状态(正常打卡-NORMAL、中断--INTERRUPTED)
+     */
+    @Column(name = "consecutive_status")
+    private String consecutiveStatus;
+
+    /**
+     * 连续天数,第一天开始就等于1
+     */
+    @Column(name = "consecutive_day")
+    private Integer consecutiveDay;
+
+    /**
+     * 开始日期
+     */
+    @Column(name = "start_date")
+    private Date startDate;
+
+    /**
+     * 结束日期
+     */
+    @Column(name = "end_date")
+    private Date endDate;
+
+}

+ 69 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInStatusHistory.java

@@ -0,0 +1,69 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务状态记录表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_status_history")
+public class PunchInStatusHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 4985644914965499020L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 打卡多任务唯一ID
+     */
+    @Column(name = "punch_in_multi_task_unique_id")
+    private Long punchInMultiTaskUniqueId;
+
+    /**
+     * 打卡任务唯一ID
+     */
+    @Column(name = "punch_in_task_unique_id")
+    private Long punchInTaskUniqueId;
+
+    /**
+     * 连续打卡状态(正常打卡-NORMAL、中断--INTERRUPTED)
+     */
+    @Column(name = "consecutive_status")
+    private String consecutiveStatus;
+
+    /**
+     * 连续天数,第一天开始就等于1
+     */
+    @Column(name = "consecutive_day")
+    private Integer consecutiveDay;
+
+    /**
+     * 开始日期
+     */
+    @Column(name = "start_date")
+    private Date startDate;
+
+    /**
+     * 结束日期
+     */
+    @Column(name = "end_date")
+    private Date endDate;
+
+}

+ 201 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInTask.java

@@ -0,0 +1,201 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_task")
+public class PunchInTask extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -8123216246400989207L;
+
+    /**
+     * 任务唯一ID
+     */
+    @Column(name = "task_unique_id")
+    private Long taskUniqueId;
+
+    /**
+     * 任务状态(活跃-ACTIVE,归档-ARCHIVE)
+     */
+    @Column(name = "task_status")
+    private String taskStatus;
+
+    /**
+     * 任务修改版本
+     */
+    @Column(name = "task_version")
+    private Integer taskVersion;
+
+    /**
+     * 任务名称
+     */
+    @Column(name = "task_name")
+    private String taskName;
+
+    /**
+     * 任务描述
+     */
+    @Column(name = "description")
+    private String description;
+
+    /**
+     * 奖励的积分(基本)
+     */
+    @Column(name = "points")
+    private Integer points;
+
+    /**
+     * 结束日期
+     */
+    @Column(name = "end_date")
+    private Date endDate;
+
+    /**
+     * 是否归档(活跃-ACTIVE,归档-ARCHIVE)
+     */
+    @Column(name = "archive_status")
+    private String archiveStatus;
+
+    /**
+     * 显示顺序
+     */
+    @Column(name = "display_order")
+    private Integer displayOrder;
+
+    /**
+     * 显示时间
+     */
+    @Column(name = "display_time")
+    private Date displayTime;
+
+    /**
+     * 打卡方式(单次打卡-SINGLE,计数-COUNT、计时-TIMING)
+     */
+    @Column(name = "punch_in_method")
+    private String punchInMethod;
+
+    /**
+     * 比较规则(大于等于-GTE,小于等于-LTE)
+     */
+    @Column(name = "compare_rule")
+    private String compareRule;
+
+    /**
+     * 次数记录
+     */
+    @Column(name = "count_track")
+    private Integer countTrack;
+
+    /**
+     * 时间记录
+     */
+    @Column(name = "time_track")
+    private Date timeTrack;
+
+    /**
+     * 是否启用节假日奖励(ENABLED-启用,DISABLED-关闭)
+     */
+    @Column(name = "holiday_status")
+    private String holidayStatus;
+
+    /**
+     * 次数记录(节假日用)
+     */
+    @Column(name = "holiday_count_track")
+    private Integer holidayCountTrack;
+
+    /**
+     * 时间记录(节假日用)
+     */
+    @Column(name = "holiday_time_track")
+    private Date holidayTimeTrack;
+
+    /**
+     * 是否启用全勤奖励(ENABLED-启用,DISABLED-关闭)
+     */
+    @Column(name = "full_attendance_status")
+    private String fullAttendanceStatus;
+
+    /**
+     * 全勤周期(周-WEEK,月-MONTH)
+     */
+    @Column(name = "full_attendance_period")
+    private String fullAttendancePeriod;
+
+    /**
+     * 全勤容错次数
+     */
+    @Column(name = "full_attendance_fault_tolerance_cnt")
+    private Integer fullAttendanceFaultToleranceCnt;
+
+    /**
+     * 重复周期类型(每日-EVERYDAY、法定工作日-WORKDAY、法定节假日(含周末)-HOLIADY、自定义(周一至周日)-CUSTOM)
+     */
+    @Column(name = "repeat_category")
+    private String repeatCategory;
+
+    /**
+     * 自定义重复日(周一-1,周二-2,周三-3,周四-4,周五-5,周六-6,周日-7)
+     */
+    @Column(name = "repeat_custom_day")
+    private String repeatCustomDay;
+
+    /**
+     * 额外奖励方式(无-NONE,固定-FIXED,区间-INTERVAL)
+     */
+    @Column(name = "extra_method")
+    private String extraMethod;
+
+    /**
+     * 额外的时间间隔
+     */
+    @Column(name = "extra_time_step")
+    private Date extraTimeStep;
+
+    /**
+     * 是否启用宽限期(ENABLED-启用,DISABLED-关闭)
+     */
+    @Column(name = "grace_status")
+    private String graceStatus;
+
+    /**
+     * 宽限期(单位:天)
+     */
+    @Column(name = "grace_day")
+    private Integer graceDay;
+
+    /**
+     * 打卡中断天数(单位:天)
+     */
+    @Column(name = "interrupted_day")
+    private Integer interruptedDay;
+
+    /**
+     * 惩罚天数(单位:天)
+     */
+    @Column(name = "penalty_day")
+    private Integer penaltyDay;
+
+    /**
+     * 是否启用自动打卡(ENABLED-启用,DISABLED-关闭)
+     */
+    @Column(name = "auto_status")
+    private String autoStatus;
+
+}

+ 57 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInTaskExt.java

@@ -0,0 +1,57 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务拓展表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_task_ext")
+public class PunchInTaskExt extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -400469506734374326L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 打卡任务ID
+     */
+    @Column(name = "punch_in_task_id")
+    private Long punchInTaskId;
+
+    /**
+     * 使用维度(一天-ONE_DAY,多天-MULTI_DAY)
+     */
+    @Column(name = "dimension")
+    private String dimension;
+
+    /**
+     * 起始值(单位:次)
+     */
+    @Column(name = "initial_value")
+    private Integer initialValue;
+
+    /**
+     * 奖励的积分(额外)
+     */
+    @Column(name = "extra_points")
+    private Integer extraPoints;
+
+}

+ 99 - 0
src/main/java/com/punchsettle/server/atomic/entity/PunchInTaskHistory.java

@@ -0,0 +1,99 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务记录表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "punch_in_task_history")
+public class PunchInTaskHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -6614493342545702250L;
+
+    /**
+     * 用户ID
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 打卡任务唯一ID
+     */
+    @Column(name = "punch_in_task_unique_id")
+    private Long punchInTaskUniqueId;
+
+    /**
+     * 打卡日期
+     */
+    @Column(name = "punch_in_date")
+    private String punchInDate;
+
+    /**
+     * 打卡状态(DONE-完成,UNDONE-未完成)
+     */
+    @Column(name = "punch_in_status")
+    private String punchInStatus;
+
+    /**
+     * 次数记录
+     */
+    @Column(name = "count_track")
+    private Integer countTrack;
+
+    /**
+     * 时间记录
+     */
+    @Column(name = "time_track")
+    private Date timeTrack;
+
+    /**
+     * 连续打卡状态(正常打卡-NORMAL、中断--INTERRUPTED)
+     */
+    @Column(name = "consecutive_status")
+    private String consecutiveStatus;
+
+    /**
+     * 连续天数,第一天开始就等于1
+     */
+    @Column(name = "consecutive_day")
+    private Integer consecutiveDay;
+
+    /**
+     * 结算任务执行ID
+     */
+    @Column(name = "settle_task_history_id")
+    private Long settleTaskHistoryId;
+
+    /**
+     * 结算状态(未结算-UNSETTLED,宽限期跳过J-GRACE_SKIP,惩罚跳过-PENALTY_SKIP,已结算-SETTLED)
+     */
+    @Column(name = "settle_status")
+    private String settleStatus;
+
+    /**
+     * 结算时的打卡任务ID
+     */
+    @Column(name = "settle_punch_in_task_id")
+    private Long settlePunchInTaskId;
+
+    /**
+     * 结算奖励积分
+     */
+    @Column(name = "settle_points")
+    private Integer settlePoints;
+
+}

+ 75 - 0
src/main/java/com/punchsettle/server/atomic/entity/Reward.java

@@ -0,0 +1,75 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 奖励
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "reward")
+public class Reward extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -2024475288387635287L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 奖励唯一id
+     */
+    @Column(name = "reward_unique_id")
+    private Long rewardUniqueId;
+
+    /**
+     * 奖励状态(活跃-ACTIVE,归档-ARCHIVE)
+     */
+    @Column(name = "reward_status")
+    private String rewardStatus;
+
+    /**
+     * 奖励修改版本
+     */
+    @Column(name = "reward_version")
+    private Integer rewardVersion;
+
+    /**
+     * 奖励名称
+     */
+    @Column(name = "reward_name")
+    private String rewardName;
+
+    /**
+     * 兑换所需积分
+     */
+    @Column(name = "exchange_points")
+    private Integer exchangePoints;
+
+    /**
+     * 是否启用自动兑换(ENABLED-启用,DISABLED-关闭)
+     */
+    @Column(name = "auto_status")
+    private String autoStatus;
+
+    /**
+     * 自动兑换数量
+     */
+    @Column(name = "auto_exchange_count")
+    private Integer autoExchangeCount;
+
+}

+ 45 - 0
src/main/java/com/punchsettle/server/atomic/entity/RewardAccountRela.java

@@ -0,0 +1,45 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 奖励与账户关联表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "reward_account_rela")
+public class RewardAccountRela extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 8795424951513167739L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 奖励唯一id
+     */
+    @Column(name = "reward_unique_id")
+    private Long rewardUniqueId;
+
+    /**
+     * 账户id
+     */
+    @Column(name = "account_id")
+    private Long accountId;
+
+}

+ 74 - 0
src/main/java/com/punchsettle/server/atomic/entity/RewardExchangeHistory.java

@@ -0,0 +1,74 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 奖励兑换记录
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "reward_exchange_history")
+public class RewardExchangeHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -4690848138157009792L;
+
+    /**
+     * 用户id
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 奖励id
+     */
+    @Column(name = "reward_id")
+    private Long rewardId;
+
+    /**
+     * 兑换类型(手动兑换-MANUAL,自动兑换-AUTO)
+     */
+    @Column(name = "exchange_method")
+    private String exchangeMethod;
+
+    /**
+     * 兑换次数
+     */
+    @Column(name = "exchange_count")
+    private Integer exchangeCount;
+
+    /**
+     * 兑换所需总积分
+     */
+    @Column(name = "exchange_total_points")
+    private Integer exchangeTotalPoints;
+
+    /**
+     * 兑换使用的账户id
+     */
+    @Column(name = "account_id")
+    private Long accountId;
+
+    /**
+     * 兑换前账户中的积分
+     */
+    @Column(name = "account_points_before_exchange")
+    private Integer accountPointsBeforeExchange;
+
+    /**
+     * 兑换后账户中的积分
+     */
+    @Column(name = "account_points_after_exchange")
+    private Integer accountPointsAfterExchange;
+
+}

+ 67 - 0
src/main/java/com/punchsettle/server/atomic/entity/SettlePointsHistory.java

@@ -0,0 +1,67 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author 
+ *
+ */
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 结算积分记录表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "settle_points_history")
+public class SettlePointsHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -9148914013607322749L;
+
+    /**
+     * 结算任务执行ID
+     */
+    @Column(name = "settle_task_history_id")
+    private Long settleTaskHistoryId;
+
+    /**
+     * 用户表主键
+     */
+    @Column(name = "user_id")
+    private Long userId;
+
+    /**
+     * 结算日期
+     */
+    @Column(name = "settle_date")
+    private String settleDate;
+
+    /**
+     * 结算积分
+     */
+    @Column(name = "settle_points")
+    private Integer settlePoints;
+
+    /**
+     * 结算前用户拥有的积分
+     */
+    @Column(name = "before_settle_points")
+    private Integer beforeSettlePoints;
+
+    /**
+     * 结算后用户拥有的积分
+     */
+    @Column(name = "after_settle_points")
+    private Integer afterSettlePoints;
+
+}

+ 51 - 0
src/main/java/com/punchsettle/server/atomic/entity/SettleTaskHistory.java

@@ -0,0 +1,51 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 结算任务执行记录表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "settle_task_history")
+public class SettleTaskHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -2423468891775917629L;
+
+    /**
+     * 结算日期
+     */
+    @Column(name = "settle_date")
+    private String settleDate;
+
+    /**
+     * 待处理总结算数量
+     */
+    @Column(name = "processed_total_num")
+    private Integer processedTotalNum;
+
+    /**
+     * 处理已结算数量
+     */
+    @Column(name = "processed_settle_num")
+    private Integer processedSettleNum;
+
+    /**
+     * 处理没结算数量
+     */
+    @Column(name = "processed_unsettle_num")
+    private Integer processedUnsettleNum;
+
+}

+ 45 - 0
src/main/java/com/punchsettle/server/atomic/entity/SysScheduleTask.java

@@ -0,0 +1,45 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 定时任务执行配置表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "sys_schedule_task")
+public class SysScheduleTask extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -4270771293500604837L;
+
+    /**
+     * 定时任务编码
+     */
+    @Column(name = "task_code")
+    private String taskCode;
+
+    /**
+     * 定时任务名称
+     */
+    @Column(name = "task_name")
+    private String taskName;
+
+    /**
+     * 是否启用定时任务(ENABLE-启用、DISABLE-关闭)
+     */
+    @Column(name = "execute_status")
+    private String executeStatus;
+
+}

+ 69 - 0
src/main/java/com/punchsettle/server/atomic/entity/SysScheduleTaskHistory.java

@@ -0,0 +1,69 @@
+package com.punchsettle.server.atomic.entity;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+import com.punchsettle.server.common.pojo.BaseEntity;
+import jakarta.persistence.Column;
+import jakarta.persistence.Table;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 定时任务执行记录表
+ * @date 2025/04/08 09:49
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Table(name = "sys_schedule_task_history")
+public class SysScheduleTaskHistory extends BaseEntity implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 3292621323250168581L;
+
+    /**
+     * 定时任务编码
+     */
+    @Column(name = "task_code")
+    private String taskCode;
+
+    /**
+     * 定时任务名称
+     */
+    @Column(name = "task_name")
+    private String taskName;
+
+    /**
+     * 启动方式(AUTO-自动,MANUAL-手动)
+     */
+    @Column(name = "launch_method")
+    private String launchMethod;
+
+    /**
+     * 任务开始时间
+     */
+    @Column(name = "start_time")
+    private Date startTime;
+
+    /**
+     * 任务结束时间
+     */
+    @Column(name = "end_time")
+    private Date endTime;
+
+    /**
+     * 执行状态(RUNNING-执行中,SUCCESS-成功,FAIL-失败)
+     */
+    @Column(name = "execute_status")
+    private String processStatus;
+
+    /**
+     * 错误信息
+     */
+    @Column(name = "error_message")
+    private String errorMessage;
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/AccountMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.Account;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 账户 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface AccountMapper extends Mapper<Account> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/AccountTransferHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.AccountTransferHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 账户转账记录 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface AccountTransferHistoryMapper extends Mapper<AccountTransferHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/ItemConsumeWinHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.ItemConsumeWinHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 物品消费与中奖记录 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface ItemConsumeWinHistoryMapper extends Mapper<ItemConsumeWinHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/NewUserStatsMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.NewUserStats;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 新用户数据统计 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface NewUserStatsMapper extends Mapper<NewUserStats> {
+
+}

+ 13 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PointsStatsMapper.java

@@ -0,0 +1,13 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PointsStats;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 积分数据统计 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PointsStatsMapper extends Mapper< PointsStats> {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskExtMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInMultiTaskExt;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务拓展表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInMultiTaskExtMapper extends Mapper<PunchInMultiTaskExt> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInMultiTaskHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务记录表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInMultiTaskHistoryMapper extends Mapper<PunchInMultiTaskHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInMultiTask;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInMultiTaskMapper extends Mapper<PunchInMultiTask> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInMultiTaskRelaMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInMultiTaskRela;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡多任务关联表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInMultiTaskRelaMapper extends Mapper<PunchInMultiTaskRela> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatsMonthMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInStatsMonth;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务月数据统计 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInStatsMonthMapper extends Mapper<PunchInStatsMonth> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatsYearMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInStatsYear;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务年数据统计 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInStatsYearMapper extends Mapper<PunchInStatsYear> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatusHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInStatusHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务状态记录表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInStatusHistoryMapper extends Mapper<PunchInStatusHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInStatusMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInStatus;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务状态表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInStatusMapper extends Mapper<PunchInStatus> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInTaskExtMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInTaskExt;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务拓展表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInTaskExtMapper extends Mapper<PunchInTaskExt> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInTaskHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInTaskHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务记录表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInTaskHistoryMapper extends Mapper<PunchInTaskHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/PunchInTaskMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.PunchInTask;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 打卡任务表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface PunchInTaskMapper extends Mapper<PunchInTask> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/RewardAccountRelaMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.RewardAccountRela;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 奖励与账户关联表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface RewardAccountRelaMapper extends Mapper<RewardAccountRela> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/RewardExchangeHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.RewardExchangeHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 奖励兑换记录 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface RewardExchangeHistoryMapper extends Mapper<RewardExchangeHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/RewardMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.Reward;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 奖励 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface RewardMapper extends Mapper<Reward> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/SettlePointsHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.SettlePointsHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 结算积分记录表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface SettlePointsHistoryMapper extends Mapper<SettlePointsHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/SettleTaskHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.SettleTaskHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 结算任务执行记录表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface SettleTaskHistoryMapper extends Mapper<SettleTaskHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/SysScheduleTaskHistoryMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.SysScheduleTaskHistory;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 定时任务执行记录表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface SysScheduleTaskHistoryMapper extends Mapper<SysScheduleTaskHistory> {
+
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/mapper/SysScheduleTaskMapper.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.mapper;
+
+import com.punchsettle.server.atomic.entity.SysScheduleTask;
+import tk.mybatis.mapper.common.Mapper;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @description 定时任务执行配置表 Mapper
+ * @date 2025/04/08 10:30
+ */
+public interface SysScheduleTaskMapper extends Mapper<SysScheduleTask> {
+
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IAccountService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:35
+ * @description 账户 service
+ */
+public interface IAccountService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IAccountTransferHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:35
+ * @description 账户转账记录 service
+ */
+public interface IAccountTransferHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IItemConsumeWinHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:36
+ * @description 物品消费与中奖记录 service
+ */
+public interface IItemConsumeWinHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/INewUserStatsService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:36
+ * @description 新用户数据统计 service
+ */
+public interface INewUserStatsService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPointsStatsService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:36
+ * @description 积分数据统计 service
+ */
+public interface IPointsStatsService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskExtService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:36
+ * @description 打卡多任务拓展表 service
+ */
+public interface IPunchInMultiTaskExtService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:36
+ * @description 打卡多任务记录表 service
+ */
+public interface IPunchInMultiTaskHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskRelaService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:37
+ * @description 打卡多任务关联表 service
+ */
+public interface IPunchInMultiTaskRelaService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInMultiTaskService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:36
+ * @description 打卡多任务表 service
+ */
+public interface IPunchInMultiTaskService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInStatsMonthService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:37
+ * @description 打卡任务月数据统计 service
+ */
+public interface IPunchInStatsMonthService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInStatsYearService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:37
+ * @description 打卡任务年数据统计 service
+ */
+public interface IPunchInStatsYearService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInStatusHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:37
+ * @description 打卡任务状态记录表 service
+ */
+public interface IPunchInStatusHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInStatusService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:37
+ * @description 打卡任务状态表 service
+ */
+public interface IPunchInStatusService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInTaskExtService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 打卡任务拓展表 service
+ */
+public interface IPunchInTaskExtService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInTaskHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 打卡任务记录表 service
+ */
+public interface IPunchInTaskHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IPunchInTaskService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 打卡任务表 service
+ */
+public interface IPunchInTaskService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IRewardAccountRelaService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 奖励与账户关联表 service
+ */
+public interface IRewardAccountRelaService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IRewardHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 奖励兑换记录 service
+ */
+public interface IRewardHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/IRewardService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 奖励 service
+ */
+public interface IRewardService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/ISettlePointsHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:38
+ * @description 结算积分记录表 service
+ */
+public interface ISettlePointsHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/ISettleTaskHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:39
+ * @description 结算任务执行记录表 service
+ */
+public interface ISettleTaskHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/ISysScheduleTaskHistoryService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:39
+ * @description 定时任务执行记录表 service
+ */
+public interface ISysScheduleTaskHistoryService {
+}

+ 10 - 0
src/main/java/com/punchsettle/server/atomic/service/ISysScheduleTaskService.java

@@ -0,0 +1,10 @@
+package com.punchsettle.server.atomic.service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:39
+ * @description 定时任务执行配置表 service
+ */
+public interface ISysScheduleTaskService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/AccountServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IAccountService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:50
+ * @description 账户 service
+ */
+@Service
+public class AccountServiceImpl implements IAccountService {
+}

+ 15 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/AccountTransferHistoryServiceImpl.java

@@ -0,0 +1,15 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IAccountTransferHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:50
+ * @description
+ * 账户转账记录 service
+ */
+@Service
+public class AccountTransferHistoryServiceImpl implements IAccountTransferHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/ItemConsumeWinHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IItemConsumeWinHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:50
+ * @description 物品消费与中奖记录 service
+ */
+@Service
+public class ItemConsumeWinHistoryServiceImpl implements IItemConsumeWinHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/NewUserStatsServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.INewUserStatsService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:50
+ * @description 新用户数据统计 service
+ */
+@Service
+public class NewUserStatsServiceImpl implements INewUserStatsService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PointsStatsServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPointsStatsService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:51
+ * @description 积分数据统计 service
+ */
+@Service
+public class PointsStatsServiceImpl implements IPointsStatsService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskExtServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInMultiTaskExtService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:51
+ * @description 打卡多任务拓展表 service
+ */
+@Service
+public class PunchInMultiTaskExtServiceImpl implements IPunchInMultiTaskExtService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInMultiTaskHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:51
+ * @description 打卡多任务记录表 service
+ */
+@Service
+public class PunchInMultiTaskHistoryServiceImpl implements IPunchInMultiTaskHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskRelaServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInMultiTaskRelaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:51
+ * @description 打卡多任务关联表 service
+ */
+@Service
+public class PunchInMultiTaskRelaServiceImpl implements IPunchInMultiTaskRelaService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInMultiTaskServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInMultiTaskService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:52
+ * @description 打卡多任务表 service
+ */
+@Service
+public class PunchInMultiTaskServiceImpl implements IPunchInMultiTaskService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatsMonthServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInStatsMonthService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:52
+ * @description 打卡任务月数据统计 service
+ */
+@Service
+public class PunchInStatsMonthServiceImpl implements IPunchInStatsMonthService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatsYearServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInStatsYearService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:52
+ * @description 打卡任务年数据统计 service
+ */
+@Service
+public class PunchInStatsYearServiceImpl implements IPunchInStatsYearService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatusHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInStatusHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:52
+ * @description 打卡任务状态记录表 service
+ */
+@Service
+public class PunchInStatusHistoryServiceImpl implements IPunchInStatusHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInStatusServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInStatusService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:53
+ * @description 打卡任务状态表 service
+ */
+@Service
+public class PunchInStatusServiceImpl implements IPunchInStatusService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInTaskExtServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInTaskExtService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:54
+ * @description 打卡任务拓展表 service
+ */
+@Service
+public class PunchInTaskExtServiceImpl implements IPunchInTaskExtService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInTaskHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInTaskHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:54
+ * @description 打卡任务记录表 service
+ */
+@Service
+public class PunchInTaskHistoryServiceImpl implements IPunchInTaskHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/PunchInTaskServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IPunchInTaskService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:54
+ * @description 打卡任务表 service
+ */
+@Service
+public class PunchInTaskServiceImpl implements IPunchInTaskService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/RewardAccountRelaServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IRewardAccountRelaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:54
+ * @description 奖励与账户关联表 service
+ */
+@Service
+public class RewardAccountRelaServiceImpl implements IRewardAccountRelaService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/RewardHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IRewardHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:54
+ * @description 奖励兑换记录 service
+ */
+@Service
+public class RewardHistoryServiceImpl implements IRewardHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/RewardServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.IRewardService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:54
+ * @description 奖励 service
+ */
+@Service
+public class RewardServiceImpl implements IRewardService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/SettlePointsHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.ISettlePointsHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:55
+ * @description 结算积分记录表 service
+ */
+@Service
+public class SettlePointsHistoryServiceImpl implements ISettlePointsHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/SettleTaskHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.ISettleTaskHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:55
+ * @description 结算任务执行记录表 service
+ */
+@Service
+public class SettleTaskHistoryServiceImpl implements ISettleTaskHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/SysScheduleTaskHistoryServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.ISysScheduleTaskHistoryService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:55
+ * @description 定时任务执行记录表 service
+ */
+@Service
+public class SysScheduleTaskHistoryServiceImpl implements ISysScheduleTaskHistoryService {
+}

+ 14 - 0
src/main/java/com/punchsettle/server/atomic/service/impl/SysScheduleTaskServiceImpl.java

@@ -0,0 +1,14 @@
+package com.punchsettle.server.atomic.service.impl;
+
+import com.punchsettle.server.atomic.service.ISysScheduleTaskService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tyuio
+ * @version 1.0.0
+ * @date 2025/4/8 10:55
+ * @description 定时任务执行配置表 service
+ */
+@Service
+public class SysScheduleTaskServiceImpl implements ISysScheduleTaskService {
+}