punch_settle-ddl.sql 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. -- punch_settle.punch_in definition
  2. CREATE DATABASE `punch_settle` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */;
  3. CREATE TABLE `punch_in` (
  4. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  5. `task_name` varchar(128) NOT NULL COMMENT '任务名称',
  6. `reward_num` int NOT NULL COMMENT '奖励倍数',
  7. `weekend_double_flag` tinyint NOT NULL DEFAULT '0' COMMENT '是否启用周末双倍标志(0-不是,1-是)',
  8. `full_attendance_flag` tinyint NOT NULL DEFAULT '0' COMMENT '是否启用全勤奖励标志(0-不是,1-是)',
  9. `archive_flag` tinyint NOT NULL DEFAULT '0' COMMENT '是否归档标志(0-不是,1-是)',
  10. `created_by` bigint NOT NULL COMMENT '创建人',
  11. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  12. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  13. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  14. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  15. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  16. PRIMARY KEY (`id`)
  17. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='打卡任务表';
  18. -- punch_settle.punch_in_record definition
  19. CREATE TABLE `punch_in_record` (
  20. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  21. `punch_in_id` bigint NOT NULL COMMENT '打卡任务表主键',
  22. `punch_in_time` timestamp NOT NULL COMMENT '打卡时间',
  23. `punch_in_status` tinyint NOT NULL DEFAULT '1' COMMENT '打卡状态(1-待打卡,2-完成、3-未完成)',
  24. `created_by` bigint NOT NULL COMMENT '创建人',
  25. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  26. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  27. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  28. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  29. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  30. PRIMARY KEY (`id`)
  31. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='打卡任务记录表';
  32. -- punch_settle.punch_in_record_settlement_rela definition
  33. CREATE TABLE `punch_in_record_settlement_rela` (
  34. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  35. `record_id` bigint NOT NULL COMMENT '打卡任务记录表ID',
  36. `settlement_id` bigint NOT NULL COMMENT '打卡任务结算表ID',
  37. `created_by` bigint NOT NULL COMMENT '创建人',
  38. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  39. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  40. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  41. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  42. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  43. PRIMARY KEY (`id`)
  44. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='打卡任务记录与结算关联表';
  45. -- punch_settle.punch_in_settlement definition
  46. CREATE TABLE `punch_in_settlement` (
  47. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  48. `user_id` bigint NOT NULL COMMENT '用户表主键',
  49. `settle_reward_num` int NOT NULL COMMENT '结算奖励数',
  50. `before_settle_reward_num` int NOT NULL DEFAULT '0' COMMENT '结算前用户拥有的奖励数',
  51. `after_settle_reward_num` int NOT NULL DEFAULT '0' COMMENT '结算后用户拥有的奖励数',
  52. `settlement_task_id` bigint NOT NULL COMMENT '结算任务表id',
  53. `settlement_time` timestamp NOT NULL COMMENT '结算时间',
  54. `notify_id` bigint DEFAULT NULL COMMENT '通知表ID',
  55. `notify_status` varchar(20) DEFAULT NULL COMMENT '结算通知状态(fail-通知失败,success-成功通知,pending-待通知)',
  56. `notify_time` timestamp NULL DEFAULT NULL COMMENT '结算通知时间',
  57. `created_by` bigint NOT NULL COMMENT '创建人',
  58. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  59. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  60. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  61. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  62. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  63. PRIMARY KEY (`id`)
  64. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='打卡任务结算表';
  65. -- punch_settle.settlement_notify_task definition
  66. CREATE TABLE `settlement_notify_task` (
  67. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  68. `start_time` timestamp NULL DEFAULT NULL COMMENT '任务开始时间',
  69. `end_time` timestamp NULL DEFAULT NULL COMMENT '任务结束时间',
  70. `task_status` varchar(20) NOT NULL DEFAULT 'processing' COMMENT '任务状态(success-成功,fail-失败,processing-处理中)',
  71. `notify_num` int NOT NULL DEFAULT '0' COMMENT '通知数量',
  72. `notify_success_num` int NOT NULL DEFAULT '0' COMMENT '通知成功数量',
  73. `notify_fail_num` int NOT NULL DEFAULT '0' COMMENT '通知失败数量',
  74. `error_message` text COMMENT '失败异常信息',
  75. `created_by` bigint NOT NULL COMMENT '创建人',
  76. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  77. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  78. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  79. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  80. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  81. PRIMARY KEY (`id`)
  82. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通知定时任务执行记录表';
  83. -- punch_settle.settlement_task definition
  84. CREATE TABLE `settlement_task` (
  85. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  86. `start_time` timestamp NULL DEFAULT NULL COMMENT '任务开始时间',
  87. `end_time` timestamp NULL DEFAULT NULL COMMENT '任务结束时间',
  88. `task_status` varchar(20) NOT NULL DEFAULT 'processing' COMMENT '任务状态(success-成功,fail-失败,processing-处理中)',
  89. `processed_num` int NOT NULL DEFAULT '0' COMMENT '处理数量',
  90. `processed_success_num` int NOT NULL DEFAULT '0' COMMENT '处理成功数量',
  91. `processed_fail_num` int NOT NULL DEFAULT '0' COMMENT '处理失败数量',
  92. `error_message` text COMMENT '失败异常信息',
  93. `created_by` bigint NOT NULL COMMENT '创建人',
  94. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  95. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  96. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  97. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  98. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  99. PRIMARY KEY (`id`)
  100. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='奖励结算定时任务执行记录表';
  101. -- punch_settle.`user` definition
  102. CREATE TABLE `user` (
  103. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  104. `open_id` varchar(128) NOT NULL COMMENT '微信id',
  105. `nickname` varchar(100) DEFAULT NULL COMMENT '微信昵称',
  106. `avatar` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '微信头像url',
  107. `reward_num` int NOT NULL DEFAULT '0',
  108. `claimed_reward_num` int NOT NULL DEFAULT '0' COMMENT '已领取奖励数',
  109. `created_by` bigint NOT NULL COMMENT '创建人',
  110. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  111. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  112. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  113. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  114. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  115. PRIMARY KEY (`id`)
  116. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户表';
  117. -- punch_settle.user_reward definition
  118. CREATE TABLE `user_reward` (
  119. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  120. `user_id` bigint NOT NULL COMMENT '用户表主键',
  121. `total_reward_num` int NOT NULL COMMENT '总奖励数',
  122. `unclaimed_reward_num` int NOT NULL DEFAULT '0' COMMENT '未领取奖励数',
  123. `claimed_reward_num` int NOT NULL DEFAULT '0' COMMENT '已领取奖励数',
  124. `created_by` bigint NOT NULL COMMENT '创建人',
  125. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  126. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  127. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  128. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  129. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  130. PRIMARY KEY (`id`)
  131. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT=' 用户奖励数据表';
  132. -- punch_settle.user_claim_reward_record definition
  133. CREATE TABLE `user_claim_reward_record` (
  134. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  135. `user_id` bigint NOT NULL COMMENT '用户表主键',
  136. `claim_reward_num` int NOT NULL DEFAULT '0' COMMENT '本次领取奖励数',
  137. `claim_reward_time` timestamp NOT NULL COMMENT '领取奖励时间',
  138. `before_claim_reward_num` int NOT NULL DEFAULT '0' COMMENT '领取前用户拥有的奖励数',
  139. `after_claim_reward_num` int NOT NULL DEFAULT '0' COMMENT '领取后用户拥有的奖励数',
  140. `created_by` bigint NOT NULL COMMENT '创建人',
  141. `creation_time` timestamp NOT NULL COMMENT '创建时间',
  142. `last_updated_by` bigint NOT NULL COMMENT '最后更新人',
  143. `last_update_time` timestamp NOT NULL COMMENT '最后更新时间',
  144. `version` bigint NOT NULL DEFAULT '1' COMMENT '版本号',
  145. `delete_flag` tinyint NOT NULL DEFAULT '0' COMMENT '逻辑删除标志(0-未删除,1-已删除)',
  146. PRIMARY KEY (`id`)
  147. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='领取奖励记录表';