punch_settle-ddl.sql 9.5 KB

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