install.sql 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. CREATE TABLE `qimall_addons_boss_weight` (
  2. `id` int(10) NOT NULL AUTO_INCREMENT,
  3. `mall_id` int(10) NOT NULL DEFAULT 0 COMMENT '商城ID',
  4. `user_id` int(10) NOT NULL DEFAULT 0 COMMENT '用户ID',
  5. `level` tinyint(4) NOT NULL DEFAULT 0 COMMENT '股东等级',
  6. `commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '累计永久佣金,单位:元',
  7. `extra_commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '累计额外佣金,单位:元',
  8. `temp_extra_commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '额外分红金额,主要用于判断是否会导致超额',
  9. `total_commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '累计总佣金,单位:元',
  10. `upgrade_status` smallint(6) NOT NULL DEFAULT 0 COMMENT '1条件升级,2购买指定商品升级,3手动升级',
  11. `upgrade_level_at` int(10) NOT NULL DEFAULT 0 COMMENT '股东等级升级时间',
  12. `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '',
  13. `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  14. `created_at` int(10) NOT NULL DEFAULT 0 COMMENT '创建时间',
  15. `updated_at` int(10) NOT NULL DEFAULT 0 COMMENT '修改时间',
  16. PRIMARY KEY (`id`) USING BTREE,
  17. INDEX `mall_id`(`mall_id`) USING BTREE,
  18. INDEX `user_id`(`user_id`) USING BTREE,
  19. INDEX `mall_id+user_id`(`mall_id`, `user_id`) USING BTREE
  20. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '股东用户表' ROW_FORMAT = Dynamic;
  21. CREATE TABLE `qimall_addons_boss_weight_commission_item_setting` (
  22. `id` int(11) NOT NULL AUTO_INCREMENT,
  23. `mall_id` int(11) NOT NULL COMMENT '商城ID',
  24. `is_enable` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用股东分红:0:否;1是',
  25. `is_alone` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否独立设置:0:否;1是',
  26. `is_extra` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否开启额外分红:0:否;1是',
  27. `item_id` int(11) NOT NULL DEFAULT 0 COMMENT '项目id',
  28. `item_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '项目类型:商品goods',
  29. `commission_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '分佣类型:佣金:commission',
  30. `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  31. `created_at` int(11) NOT NULL DEFAULT 0,
  32. `updated_at` int(11) NOT NULL DEFAULT 0,
  33. PRIMARY KEY (`id`) USING BTREE,
  34. INDEX `mall_id+item_id`(`mall_id`, `item_id`) USING BTREE
  35. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '股东项目分佣设置' ROW_FORMAT = Dynamic;
  36. CREATE TABLE `qimall_addons_boss_weight_commission_item_setting_detail` (
  37. `id` int(11) NOT NULL AUTO_INCREMENT,
  38. `mall_id` int(11) NOT NULL COMMENT '商城ID',
  39. `boss_commission_item_setting_id` int(11) NOT NULL,
  40. `level` int(11) NOT NULL DEFAULT 0,
  41. `prize` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '团队奖',
  42. `extra_prize` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '平级奖',
  43. `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  44. `created_at` int(11) NOT NULL DEFAULT 0,
  45. `updated_at` int(11) NOT NULL DEFAULT 0,
  46. PRIMARY KEY (`id`) USING BTREE,
  47. INDEX `mall_id+boss_commission_item_setting_id`(`mall_id`, `boss_commission_item_setting_id`) USING BTREE
  48. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '股东项目分佣设置详情' ROW_FORMAT = Dynamic;
  49. CREATE TABLE `qimall_addons_boss_weight_commission_job` (
  50. `id` int(10) NOT NULL AUTO_INCREMENT,
  51. `mall_id` int(10) NOT NULL DEFAULT 0 COMMENT '商城ID',
  52. `date_limit` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '结算开始~结束日期',
  53. `compute_period` tinyint(1) NOT NULL DEFAULT 0 COMMENT '结算周期:1天,2周,3月',
  54. `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  55. `created_at` int(10) NOT NULL DEFAULT 0,
  56. `updated_at` int(10) NOT NULL DEFAULT 0,
  57. PRIMARY KEY (`id`) USING BTREE,
  58. INDEX `mall_id`(`mall_id`, `date_limit`) USING BTREE
  59. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '股东分红已结算日期记录表' ROW_FORMAT = Dynamic;
  60. CREATE TABLE `qimall_addons_boss_weight_commission_log` (
  61. `id` int(10) NOT NULL AUTO_INCREMENT,
  62. `mall_id` int(10) NOT NULL DEFAULT 0 COMMENT '商城ID',
  63. `user_id` int(10) NOT NULL DEFAULT 0 COMMENT '用户ID',
  64. `amounts` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '结算总金额,单位:元',
  65. `commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '永久/额外佣金,单位:元',
  66. `type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '奖励类型:1永久分红,2额外分红,3股东奖励',
  67. `compute_period` tinyint(1) NOT NULL DEFAULT 0 COMMENT '结算周期:1天,2周,3月',
  68. `start_time` int(10) NOT NULL DEFAULT 0 COMMENT '结算开始日期',
  69. `end_time` int(10) NOT NULL DEFAULT 0 COMMENT '结算开始日期',
  70. `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  71. `created_at` int(10) NOT NULL DEFAULT 0,
  72. `updated_at` int(10) NOT NULL DEFAULT 0,
  73. PRIMARY KEY (`id`) USING BTREE,
  74. INDEX `mall_id+user_id`(`mall_id`, `user_id`) USING BTREE
  75. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '股东分红记录表' ROW_FORMAT = Dynamic;
  76. CREATE TABLE `qimall_addons_boss_weight_level` (
  77. `id` int(10) NOT NULL AUTO_INCREMENT,
  78. `mall_id` int(10) NOT NULL DEFAULT 0 COMMENT '商城ID',
  79. `level` tinyint(4) NOT NULL DEFAULT -1 COMMENT '股东等级',
  80. `name` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '等级名称',
  81. `is_auto_upgrade` int(10) NOT NULL DEFAULT 0 COMMENT '是否自动升级【0否,1是】',
  82. `upgrade_type_condition` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否开启条件升级【0否,1是】',
  83. `condition_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '满足条件:1满足其一,2满足所有',
  84. `checked_condition_values` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '升级条件的值集合',
  85. `checked_condition_keys` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '被选中的升级条件的key集合',
  86. `upgrade_type_goods` tinyint(6) NOT NULL DEFAULT 0 COMMENT '是否开启购买商品升级【0否,1是】',
  87. `goods_ids` varchar(3000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '指定商品id集合',
  88. `goods_list` varchar(5000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '指定商品信息列表json',
  89. `goods_type` smallint(6) NOT NULL DEFAULT 0 COMMENT '商品升级类型:1任意商品,2指定商品',
  90. `buy_goods_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '购买商品升级条件:0订单完成,1支付完成',
  91. `explain` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '等级说明',
  92. `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  93. `created_at` int(10) NOT NULL DEFAULT 0,
  94. `updated_at` int(10) NOT NULL DEFAULT 0,
  95. PRIMARY KEY (`id`) USING BTREE,
  96. INDEX `mall_id`(`mall_id`) USING BTREE,
  97. INDEX `mall_id+level`(`mall_id`, `level`) USING BTREE
  98. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '股东等级表' ROW_FORMAT = Dynamic;
  99. CREATE TABLE `qimall_addons_boss_weight_level_setting` (
  100. `id` int(11) NOT NULL AUTO_INCREMENT,
  101. `mall_id` int(11) NOT NULL COMMENT '商城ID',
  102. `level` int(11) NOT NULL DEFAULT 0,
  103. `commission_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '分佣类型:积分score;佣金:commission',
  104. `from_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '分佣类型:股东;',
  105. `prize` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '永久分红,单位:百分比',
  106. `extra_prize` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '额外分红,单位:百分比',
  107. `is_extra` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否开启额外分红【0否,1是】',
  108. `extra_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '获取额外分红的类型:1购物,2条件,3任意',
  109. `extra_is_limit` tinyint(4) NOT NULL DEFAULT 0 COMMENT '额外分红是否存在上限【0否,1是】',
  110. `extra_limit_price` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '额外分红上限金额,单位:元',
  111. `weight_status` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否开启加权分红。0-不开启,1-开启',
  112. `weight_member_num` int(11) NOT NULL DEFAULT 0 COMMENT '加权分红条件,直推会员数量',
  113. `weight_product_num` int(11) NOT NULL DEFAULT 0 COMMENT '加权分红条件,购买产品数量',
  114. `weight_num` int(11) NOT NULL DEFAULT 0 COMMENT '加权分红配置,满足条件奖励的权重数量',
  115. `weight_level_ratio` int(11) NOT NULL DEFAULT 0 COMMENT '加权分红配置,等级分红比例',
  116. `weight_turnover_ratio` int(11) NOT NULL DEFAULT 0 COMMENT '加权分红配置,营业额比例',
  117. `weight_max_price` int(11) NOT NULL DEFAULT 0 COMMENT '加权分红配置。分红上限金额',
  118. `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  119. `created_at` int(11) NOT NULL DEFAULT 0,
  120. `updated_at` int(11) NOT NULL DEFAULT 0,
  121. PRIMARY KEY (`id`) USING BTREE,
  122. INDEX `mall_id`(`mall_id`) USING BTREE,
  123. INDEX `level`(`level`) USING BTREE
  124. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '股东分佣设置' ROW_FORMAT = Dynamic;
  125. CREATE TABLE `qimall_addons_boss_weight_price` (
  126. `id` int(11) NOT NULL AUTO_INCREMENT,
  127. `user_id` int(11) NOT NULL DEFAULT 0,
  128. `level` int(11) NOT NULL DEFAULT 0 COMMENT '等级',
  129. `price` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '分红总金额',
  130. `created_at` int(11) NOT NULL DEFAULT 0,
  131. `updated_at` int(11) NOT NULL DEFAULT 0,
  132. PRIMARY KEY (`id`) USING BTREE,
  133. INDEX `user_id`(`user_id`) USING BTREE
  134. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'boss用户分红金额表' ROW_FORMAT = Dynamic;
  135. CREATE TABLE `qimall_addons_boss_weight_reward_log` (
  136. `id` int(10) NOT NULL AUTO_INCREMENT,
  137. `mall_id` int(10) NOT NULL DEFAULT 0 COMMENT '商城ID',
  138. `order_id` int(10) NOT NULL DEFAULT 0 COMMENT '订单ID',
  139. `order_no` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '订单编号',
  140. `user_id` int(10) NOT NULL DEFAULT 0 COMMENT '用户ID',
  141. `type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '结算类型:1永久分红,2额外分红',
  142. `level` tinyint(4) NOT NULL DEFAULT -1 COMMENT '结算时用户的股东等级',
  143. `average_count` int(10) NOT NULL DEFAULT 0 COMMENT '结算人数',
  144. `amounts` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '结算的总金额,单位:元',
  145. `commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '结算的佣金,单位:元',
  146. `settlement_config` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '结算时的配置',
  147. `settlement_data` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '结算时的数据',
  148. `is_settlement` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否已结算【0否,1是】',
  149. `date` int(8) NOT NULL DEFAULT 0 COMMENT '数据生成日期',
  150. `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态[-1:删除;0:禁用;1启用]',
  151. `created_at` int(10) NOT NULL DEFAULT 0,
  152. `updated_at` int(10) NOT NULL DEFAULT 0,
  153. PRIMARY KEY (`id`) USING BTREE,
  154. INDEX `mall_id`(`mall_id`) USING BTREE,
  155. INDEX `mall_id+user_id`(`mall_id`, `user_id`) USING BTREE,
  156. INDEX `order_id`(`order_id`) USING BTREE,
  157. INDEX `mall_id+date`(`mall_id`, `date`) USING BTREE
  158. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '股东分红奖励记录表' ROW_FORMAT = Dynamic;
  159. INSERT INTO `qimall_crontab_task`(`name`, `command`, `type`, `rule`, `is_warning`, `status`, `created_at`, `updated_at`) VALUES ('股东分红加权分红', 'boss-weight/boss-weight-crontab/send-commission', 2, '0 30 0 * * *', 0, 1, 1649757214, 1649757214);
  160. -- 2022-7-16
  161. ALTER TABLE `qimall_addons_boss_weight_level_setting`
  162. ADD COLUMN `weight_is_limit` tinyint(11) NOT NULL DEFAULT 0 COMMENT '是否开启权重限制条件 0 否 1 是',
  163. ADD COLUMN `checked_weight_values` varchar(1000) NOT NULL DEFAULT '' COMMENT '权重限制规则';
  164. ALTER TABLE `qimall_addons_boss_weight`
  165. ADD COLUMN `boss_weight_status` tinyint(1) NOT NULL DEFAULT 0 COMMENT '股东权重状态 0 正常 1 达指定分红未复购商品权重失效 2 规定时间内未消费权重失效';
  166. INSERT INTO `qimall_crontab_task` (`name`, `command`, `type`, `rule`, `is_warning`, `status`) VALUES ('股东加权分红状态每天更新', 'boss-weight/boss-weight-crontab/update-weight-rule', '2', '0 0 1 * * *', '0', '1');