Commit ab35fcbe9b113dddb1205bd004c0b7fd77c89bf4

Authored by owen
1 parent 4f03635f

会员:积分配置改为会员配置

Showing 19 changed files with 180 additions and 154 deletions
sql/mysql/ruoyi-vue-pro.sql
... ... @@ -810,10 +810,10 @@ BEGIN;
810 810 COMMIT;
811 811  
812 812 -- ----------------------------
813   --- Table structure for member_point_config
  813 +-- Table structure for member_config
814 814 -- ----------------------------
815   -DROP TABLE IF EXISTS `member_point_config`;
816   -CREATE TABLE `member_point_config` (
  815 +DROP TABLE IF EXISTS `member_config`;
  816 +CREATE TABLE `member_config` (
817 817 `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
818 818 `trade_deduct_enable` bit(1) NOT NULL COMMENT '是否开启积分抵扣',
819 819 `trade_deduct_unit_price` int NOT NULL COMMENT '积分抵扣(单位:分)',
... ... @@ -826,13 +826,13 @@ CREATE TABLE `member_point_config` (
826 826 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
827 827 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
828 828 PRIMARY KEY (`id`) USING BTREE
829   -) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '会员积分配置表';
  829 +) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '会员配置表';
830 830  
831 831 -- ----------------------------
832   --- Records of member_point_config
  832 +-- Records of member_config
833 833 -- ----------------------------
834 834 BEGIN;
835   -INSERT INTO `member_point_config` (`id`, `trade_deduct_enable`, `trade_deduct_unit_price`, `trade_deduct_max_price`, `trade_give_point`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (5, b'1', 100, 2, 3, '1', '2023-08-20 09:54:42', '1', '2023-08-20 09:54:42', b'0', 1);
  835 +INSERT INTO `member_config` (`id`, `trade_deduct_enable`, `trade_deduct_unit_price`, `trade_deduct_max_price`, `trade_give_point`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (5, b'1', 100, 2, 3, '1', '2023-08-20 09:54:42', '1', '2023-08-20 09:54:42', b'0', 1);
836 836 COMMIT;
837 837  
838 838 -- ----------------------------
... ... @@ -1957,20 +1957,19 @@ INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_i
1957 1957 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2184, '自提门店导出', 'trade:delivery:pick-up-store:export', 3, 5, 2179, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-05-25 10:53:29', '', '2023-05-25 10:53:29', b'0');
1958 1958 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2209, '秒杀活动', '', 2, 3, 2030, 'seckill', 'ep:place', '', '', 0, b'1', b'1', b'1', '1', '2023-06-24 17:39:13', '1', '2023-06-24 18:55:15', b'0');
1959 1959 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2262, '会员中心', '', 1, 55, 0, '/member', 'ep:bicycle', NULL, NULL, 0, b'1', b'1', b'1', '1', '2023-06-10 00:42:03', '1', '2023-08-20 09:23:56', b'0');
1960   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2275, '积分配置', '', 2, 0, 2299, 'config', 'fa:archive', 'member/point/config/index', 'PointConfig', 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '1', '2023-08-20 12:01:20', b'0');
1961   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2276, '积分设置查询', 'point:config:query', 3, 1, 2275, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '', '2023-06-10 02:07:44', b'0');
1962   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2277, '积分设置创建', 'point:config:save', 3, 2, 2275, '', '', '', '', 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '1', '2023-06-27 20:32:31', b'0');
  1960 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2275, '会员配置', '', 2, 0, 2262, 'config', 'fa:archive', 'member/config/index', 'MemberConfig', 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '1', '2023-08-20 12:01:20', b'0');
  1961 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2276, '会员配置查询', 'member:config:query', 3, 1, 2275, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '', '2023-06-10 02:07:44', b'0');
  1962 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2277, '会员配置创建', 'member:config:save', 3, 2, 2275, '', '', '', '', 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '1', '2023-06-27 20:32:31', b'0');
1963 1963 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2281, '签到配置', '', 2, 2, 2300, 'config', 'ep:calendar', 'member/signin/config/index', 'SignInConfig', 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '1', '2023-08-20 19:25:51', b'0');
1964 1964 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2282, '积分签到规则查询', 'point:sign-in-config:query', 3, 1, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1965 1965 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2283, '积分签到规则创建', 'point:sign-in-config:create', 3, 2, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1966 1966 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2284, '积分签到规则更新', 'point:sign-in-config:update', 3, 3, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1967 1967 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2285, '积分签到规则删除', 'point:sign-in-config:delete', 3, 4, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1968   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2287, '积分记录', '', 2, 1, 2299, 'record', 'fa:asterisk', 'member/point/record/index', 'PointRecord', 0, b'1', b'1', b'1', '', '2023-06-10 04:18:50', '1', '2023-08-20 12:01:42', b'0');
1969   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2288, '用户积分记录查询', 'point:record:query', 3, 1, 2287, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 04:18:50', '', '2023-06-10 04:18:50', b'0');
  1968 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2287, '会员积分', '', 2, 1, 2262, 'point', 'ep:pointer', 'member/point/record/index', 'PointRecord', 0, b'1', b'1', b'1', '', '2023-06-10 04:18:50', '1', '2023-08-20 12:01:42', b'0');
  1969 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2288, '会员积分记录查询', 'point:record:query', 3, 1, 2287, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 04:18:50', '', '2023-06-10 04:18:50', b'0');
1970 1970 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2293, '签到记录', '', 2, 3, 2300, 'record', 'ep:chicken', 'member/signin/record/index', 'SignInRecord', 0, b'1', b'1', b'1', '', '2023-06-10 04:48:22', '1', '2023-08-20 19:26:02', b'0');
1971 1971 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2294, '用户签到积分查询', 'point:sign-in-record:query', 3, 1, 2293, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 04:48:22', '', '2023-06-10 04:48:22', b'0');
1972 1972 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2297, '用户签到积分删除', 'point:sign-in-record:delete', 3, 4, 2293, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 04:48:22', '', '2023-06-10 04:48:22', b'0');
1973   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2299, '会员积分', '', 1, 10, 2262, 'point', 'ep:pointer', '', '', 0, b'1', b'1', b'1', '1', '2023-06-27 22:48:51', '1', '2023-08-20 09:23:35', b'0');
1974 1973 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2300, '会员签到', '', 1, 11, 2262, 'signin', 'ep:alarm-clock', '', '', 0, b'1', b'1', b'1', '1', '2023-06-27 22:49:53', '1', '2023-08-20 09:23:48', b'0');
1975 1974 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2301, '回调通知', '', 2, 4, 1117, 'notify', 'example', 'pay/notify/index', 'PayNotify', 0, b'1', b'1', b'1', '', '2023-07-20 04:41:32', '1', '2023-07-20 13:45:08', b'0');
1976 1975 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2302, '支付通知查询', 'pay:notify:query', 3, 1, 2301, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-07-20 04:41:32', '', '2023-07-20 04:41:32', b'0');
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradePointGiveCalculator.java
... ... @@ -2,8 +2,8 @@ package cn.iocoder.yudao.module.trade.service.price.calculator;
2 2  
3 3 import cn.hutool.core.util.BooleanUtil;
4 4 import cn.iocoder.yudao.framework.common.util.number.MoneyUtils;
5   -import cn.iocoder.yudao.module.member.api.point.MemberPointApi;
6   -import cn.iocoder.yudao.module.member.api.point.dto.MemberPointConfigRespDTO;
  5 +import cn.iocoder.yudao.module.member.api.config.MemberConfigApi;
  6 +import cn.iocoder.yudao.module.member.api.config.dto.MemberConfigRespDTO;
7 7 import cn.iocoder.yudao.module.trade.service.price.bo.TradePriceCalculateReqBO;
8 8 import cn.iocoder.yudao.module.trade.service.price.bo.TradePriceCalculateRespBO;
9 9 import lombok.extern.slf4j.Slf4j;
... ... @@ -28,14 +28,14 @@ import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.
28 28 public class TradePointGiveCalculator implements TradePriceCalculator {
29 29  
30 30 @Resource
31   - private MemberPointApi memberPointApi;
  31 + private MemberConfigApi memberConfigApi;
32 32  
33 33 @Override
34 34 public void calculate(TradePriceCalculateReqBO param, TradePriceCalculateRespBO result) {
35 35 // 1.1 校验积分功能是否开启
36   - int givePointPerYuan = Optional.ofNullable(memberPointApi.getConfig())
  36 + int givePointPerYuan = Optional.ofNullable(memberConfigApi.getConfig())
37 37 .filter(config -> BooleanUtil.isTrue(config.getTradeDeductEnable()))
38   - .map(MemberPointConfigRespDTO::getTradeGivePoint)
  38 + .map(MemberConfigRespDTO::getTradeGivePoint)
39 39 .orElse(0);
40 40 if (givePointPerYuan <= 0) {
41 41 return;
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradePointUsePriceCalculator.java
... ... @@ -2,8 +2,8 @@ package cn.iocoder.yudao.module.trade.service.price.calculator;
2 2  
3 3 import cn.hutool.core.util.BooleanUtil;
4 4 import cn.hutool.core.util.StrUtil;
5   -import cn.iocoder.yudao.module.member.api.point.MemberPointApi;
6   -import cn.iocoder.yudao.module.member.api.point.dto.MemberPointConfigRespDTO;
  5 +import cn.iocoder.yudao.module.member.api.config.MemberConfigApi;
  6 +import cn.iocoder.yudao.module.member.api.config.dto.MemberConfigRespDTO;
7 7 import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
8 8 import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
9 9 import cn.iocoder.yudao.module.promotion.enums.common.PromotionTypeEnum;
... ... @@ -32,7 +32,7 @@ import static cn.iocoder.yudao.module.trade.enums.ErrorCodeConstants.PRICE_CALCU
32 32 public class TradePointUsePriceCalculator implements TradePriceCalculator {
33 33  
34 34 @Resource
35   - private MemberPointApi memberPointApi;
  35 + private MemberConfigApi memberConfigApi;
36 36 @Resource
37 37 private MemberUserApi memberUserApi;
38 38  
... ... @@ -44,7 +44,7 @@ public class TradePointUsePriceCalculator implements TradePriceCalculator {
44 44 return;
45 45 }
46 46 // 1.2 校验积分抵扣是否开启
47   - MemberPointConfigRespDTO config = memberPointApi.getConfig();
  47 + MemberConfigRespDTO config = memberConfigApi.getConfig();
48 48 if (!isDeductPointEnable(config)) {
49 49 return;
50 50 }
... ... @@ -76,13 +76,13 @@ public class TradePointUsePriceCalculator implements TradePriceCalculator {
76 76 TradePriceCalculatorHelper.recountAllPrice(result);
77 77 }
78 78  
79   - private boolean isDeductPointEnable(MemberPointConfigRespDTO config) {
  79 + private boolean isDeductPointEnable(MemberConfigRespDTO config) {
80 80 return config != null &&
81 81 !BooleanUtil.isTrue(config.getTradeDeductEnable()) && // 积分功能是否启用
82 82 config.getTradeDeductUnitPrice() != null && config.getTradeDeductUnitPrice() > 0; // 有没有配置:1 积分抵扣多少分
83 83 }
84 84  
85   - private Integer calculatePointPrice(MemberPointConfigRespDTO config, Integer usePoint, TradePriceCalculateRespBO result) {
  85 + private Integer calculatePointPrice(MemberConfigRespDTO config, Integer usePoint, TradePriceCalculateRespBO result) {
86 86 // 每个订单最多可以使用的积分数量
87 87 if (config.getTradeDeductMaxPrice() != null && config.getTradeDeductMaxPrice() > 0) {
88 88 usePoint = Math.min(usePoint, config.getTradeDeductMaxPrice());
... ...
yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/config/MemberConfigApi.java 0 → 100644
  1 +package cn.iocoder.yudao.module.member.api.config;
  2 +
  3 +import cn.iocoder.yudao.module.member.api.config.dto.MemberConfigRespDTO;
  4 +
  5 +/**
  6 + * 用户配置 API 接口
  7 + *
  8 + * @author owen
  9 + */
  10 +public interface MemberConfigApi {
  11 +
  12 + /**
  13 + * 获得积分配置
  14 + *
  15 + * @return 积分配置
  16 + */
  17 + MemberConfigRespDTO getConfig();
  18 +}
... ...
yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/point/dto/MemberPointConfigRespDTO.java renamed to yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/config/dto/MemberConfigRespDTO.java
1   -package cn.iocoder.yudao.module.member.api.point.dto;
  1 +package cn.iocoder.yudao.module.member.api.config.dto;
2 2  
3 3 import lombok.Data;
4 4  
... ... @@ -8,7 +8,7 @@ import lombok.Data;
8 8 * @author 芋道源码
9 9 */
10 10 @Data
11   -public class MemberPointConfigRespDTO {
  11 +public class MemberConfigRespDTO {
12 12  
13 13 /**
14 14 * 积分抵扣开关
... ...
yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/point/MemberPointApi.java
1 1 package cn.iocoder.yudao.module.member.api.point;
2 2  
3   -import cn.iocoder.yudao.module.member.api.point.dto.MemberPointConfigRespDTO;
4 3 import cn.iocoder.yudao.module.member.enums.point.MemberPointBizTypeEnum;
5 4  
6 5 import javax.validation.constraints.Min;
... ... @@ -12,14 +11,6 @@ import javax.validation.constraints.Min;
12 11 */
13 12 public interface MemberPointApi {
14 13  
15   - // TODO @疯狂:这个我们要不要搞成通用的会员配置?MemberConfig?
16   - /**
17   - * 获得积分配置
18   - *
19   - * @return 积分配置
20   - */
21   - MemberPointConfigRespDTO getConfig();
22   -
23 14 /**
24 15 * 增加用户积分
25 16 *
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/api/config/MemberConfigApiImpl.java 0 → 100644
  1 +package cn.iocoder.yudao.module.member.api.config;
  2 +
  3 +import cn.iocoder.yudao.module.member.api.config.dto.MemberConfigRespDTO;
  4 +import cn.iocoder.yudao.module.member.convert.config.MemberConfigConvert;
  5 +import cn.iocoder.yudao.module.member.service.config.MemberConfigService;
  6 +import org.springframework.stereotype.Service;
  7 +import org.springframework.validation.annotation.Validated;
  8 +
  9 +import javax.annotation.Resource;
  10 +
  11 +/**
  12 + * 用户配置 API 实现类
  13 + *
  14 + * @author owen
  15 + */
  16 +@Service
  17 +@Validated
  18 +public class MemberConfigApiImpl implements MemberConfigApi {
  19 +
  20 + @Resource
  21 + private MemberConfigService memberConfigService;
  22 +
  23 + @Override
  24 + public MemberConfigRespDTO getConfig() {
  25 + return MemberConfigConvert.INSTANCE.convert01(memberConfigService.getConfig());
  26 + }
  27 +
  28 +}
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/api/point/MemberPointApiImpl.java
1 1 package cn.iocoder.yudao.module.member.api.point;
2 2  
3 3 import cn.hutool.core.lang.Assert;
4   -import cn.iocoder.yudao.module.member.api.point.dto.MemberPointConfigRespDTO;
5   -import cn.iocoder.yudao.module.member.convert.point.MemberPointConfigConvert;
6 4 import cn.iocoder.yudao.module.member.enums.point.MemberPointBizTypeEnum;
7   -import cn.iocoder.yudao.module.member.service.point.MemberPointConfigService;
8 5 import cn.iocoder.yudao.module.member.service.point.MemberPointRecordService;
9 6 import org.springframework.stereotype.Service;
10 7 import org.springframework.validation.annotation.Validated;
... ... @@ -25,13 +22,6 @@ public class MemberPointApiImpl implements MemberPointApi {
25 22  
26 23 @Resource
27 24 private MemberPointRecordService memberPointRecordService;
28   - @Resource
29   - private MemberPointConfigService memberPointConfigService;
30   -
31   - @Override
32   - public MemberPointConfigRespDTO getConfig() {
33   - return MemberPointConfigConvert.INSTANCE.convert01(memberPointConfigService.getPointConfig());
34   - }
35 25  
36 26 @Override
37 27 public void addPoint(Long userId, Integer point, Integer bizType, String bizId) {
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/config/MemberConfigController.java 0 → 100644
  1 +package cn.iocoder.yudao.module.member.controller.admin.config;
  2 +
  3 +import cn.iocoder.yudao.framework.common.pojo.CommonResult;
  4 +import cn.iocoder.yudao.module.member.controller.admin.config.vo.MemberConfigRespVO;
  5 +import cn.iocoder.yudao.module.member.controller.admin.config.vo.MemberConfigSaveReqVO;
  6 +import cn.iocoder.yudao.module.member.convert.config.MemberConfigConvert;
  7 +import cn.iocoder.yudao.module.member.dal.dataobject.config.MemberConfigDO;
  8 +import cn.iocoder.yudao.module.member.service.config.MemberConfigService;
  9 +import io.swagger.v3.oas.annotations.Operation;
  10 +import io.swagger.v3.oas.annotations.tags.Tag;
  11 +import org.springframework.security.access.prepost.PreAuthorize;
  12 +import org.springframework.validation.annotation.Validated;
  13 +import org.springframework.web.bind.annotation.*;
  14 +
  15 +import javax.annotation.Resource;
  16 +import javax.validation.Valid;
  17 +
  18 +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
  19 +
  20 +@Tag(name = "管理后台 - 会员设置")
  21 +@RestController
  22 +@RequestMapping("/member/config")
  23 +@Validated
  24 +public class MemberConfigController {
  25 +
  26 + @Resource
  27 + private MemberConfigService memberConfigService;
  28 +
  29 + @PutMapping("/save")
  30 + @Operation(summary = "保存会员配置")
  31 + @PreAuthorize("@ss.hasPermission('member:config:save')")
  32 + public CommonResult<Boolean> saveConfig(@Valid @RequestBody MemberConfigSaveReqVO saveReqVO) {
  33 + memberConfigService.saveConfig(saveReqVO);
  34 + return success(true);
  35 + }
  36 +
  37 + @GetMapping("/get")
  38 + @Operation(summary = "获得会员配置")
  39 + @PreAuthorize("@ss.hasPermission('member:config:query')")
  40 + public CommonResult<MemberConfigRespVO> getConfig() {
  41 + MemberConfigDO config = memberConfigService.getConfig();
  42 + return success(MemberConfigConvert.INSTANCE.convert(config));
  43 + }
  44 +
  45 +}
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/point/vo/config/MemberPointConfigBaseVO.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/config/vo/MemberConfigBaseVO.java
1   -package cn.iocoder.yudao.module.member.controller.admin.point.vo.config;
  1 +package cn.iocoder.yudao.module.member.controller.admin.config.vo;
2 2  
3 3 import io.swagger.v3.oas.annotations.media.Schema;
4 4 import lombok.Data;
... ... @@ -6,11 +6,11 @@ import lombok.Data;
6 6 import javax.validation.constraints.NotNull;
7 7  
8 8 /**
9   - * 会员积分配置 Base VO,提供给添加、修改、详细的子 VO 使用
  9 + * 会员配置 Base VO,提供给添加、修改、详细的子 VO 使用
10 10 * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
11 11 */
12 12 @Data
13   -public class MemberPointConfigBaseVO {
  13 +public class MemberConfigBaseVO {
14 14  
15 15 @Schema(description = "积分抵扣开关", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
16 16 @NotNull(message = "积分抵扣开发不能为空")
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/point/vo/config/MemberPointConfigRespVO.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/config/vo/MemberConfigRespVO.java
1   -package cn.iocoder.yudao.module.member.controller.admin.point.vo.config;
  1 +package cn.iocoder.yudao.module.member.controller.admin.config.vo;
2 2  
3 3 import io.swagger.v3.oas.annotations.media.Schema;
4 4 import lombok.Data;
5 5 import lombok.EqualsAndHashCode;
6 6 import lombok.ToString;
7 7  
8   -@Schema(description = "管理后台 - 会员积分配置 Response VO")
  8 +@Schema(description = "管理后台 - 会员配置 Response VO")
9 9 @Data
10 10 @EqualsAndHashCode(callSuper = true)
11 11 @ToString(callSuper = true)
12   -public class MemberPointConfigRespVO extends MemberPointConfigBaseVO {
  12 +public class MemberConfigRespVO extends MemberConfigBaseVO {
13 13  
14 14 @Schema(description = "自增主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
15 15 private Long id;
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/point/vo/config/MemberPointConfigSaveReqVO.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/config/vo/MemberConfigSaveReqVO.java
1   -package cn.iocoder.yudao.module.member.controller.admin.point.vo.config;
  1 +package cn.iocoder.yudao.module.member.controller.admin.config.vo;
2 2  
3 3 import io.swagger.v3.oas.annotations.media.Schema;
4 4 import lombok.Data;
5 5 import lombok.EqualsAndHashCode;
6 6 import lombok.ToString;
7 7  
8   -@Schema(description = "管理后台 - 会员积分配置保存 Request VO")
  8 +@Schema(description = "管理后台 - 会员配置保存 Request VO")
9 9 @Data
10 10 @EqualsAndHashCode(callSuper = true)
11 11 @ToString(callSuper = true)
12   -public class MemberPointConfigSaveReqVO extends MemberPointConfigBaseVO {
  12 +public class MemberConfigSaveReqVO extends MemberConfigBaseVO {
13 13 }
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/point/MemberPointConfigController.java deleted
1   -package cn.iocoder.yudao.module.member.controller.admin.point;
2   -
3   -import cn.iocoder.yudao.framework.common.pojo.CommonResult;
4   -import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigRespVO;
5   -import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
6   -import cn.iocoder.yudao.module.member.convert.point.MemberPointConfigConvert;
7   -import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
8   -import cn.iocoder.yudao.module.member.service.point.MemberPointConfigService;
9   -import io.swagger.v3.oas.annotations.Operation;
10   -import io.swagger.v3.oas.annotations.tags.Tag;
11   -import org.springframework.security.access.prepost.PreAuthorize;
12   -import org.springframework.validation.annotation.Validated;
13   -import org.springframework.web.bind.annotation.*;
14   -
15   -import javax.annotation.Resource;
16   -import javax.validation.Valid;
17   -
18   -import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
19   -
20   -@Tag(name = "管理后台 - 会员积分设置")
21   -@RestController
22   -@RequestMapping("/member/point/config")
23   -@Validated
24   -public class MemberPointConfigController {
25   -
26   - @Resource
27   - private MemberPointConfigService memberPointConfigService;
28   -
29   - @PutMapping("/save")
30   - @Operation(summary = "保存会员积分配置")
31   - @PreAuthorize("@ss.hasPermission('point:config:save')")
32   - public CommonResult<Boolean> savePointConfig(@Valid @RequestBody MemberPointConfigSaveReqVO saveReqVO) {
33   - memberPointConfigService.savePointConfig(saveReqVO);
34   - return success(true);
35   - }
36   -
37   - @GetMapping("/get")
38   - @Operation(summary = "获得会员积分配置")
39   - @PreAuthorize("@ss.hasPermission('point:config:query')")
40   - public CommonResult<MemberPointConfigRespVO> getPointConfig() {
41   - MemberPointConfigDO config = memberPointConfigService.getPointConfig();
42   - return success(MemberPointConfigConvert.INSTANCE.convert(config));
43   - }
44   -
45   -}
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/config/MemberConfigConvert.java 0 → 100644
  1 +package cn.iocoder.yudao.module.member.convert.config;
  2 +
  3 +import cn.iocoder.yudao.module.member.api.config.dto.MemberConfigRespDTO;
  4 +import cn.iocoder.yudao.module.member.controller.admin.config.vo.MemberConfigRespVO;
  5 +import cn.iocoder.yudao.module.member.controller.admin.config.vo.MemberConfigSaveReqVO;
  6 +import cn.iocoder.yudao.module.member.dal.dataobject.config.MemberConfigDO;
  7 +import org.mapstruct.Mapper;
  8 +import org.mapstruct.factory.Mappers;
  9 +
  10 +/**
  11 + * 会员配置 Convert
  12 + *
  13 + * @author QingX
  14 + */
  15 +@Mapper
  16 +public interface MemberConfigConvert {
  17 +
  18 + MemberConfigConvert INSTANCE = Mappers.getMapper(MemberConfigConvert.class);
  19 +
  20 + MemberConfigRespVO convert(MemberConfigDO bean);
  21 +
  22 + MemberConfigDO convert(MemberConfigSaveReqVO bean);
  23 +
  24 + MemberConfigRespDTO convert01(MemberConfigDO config);
  25 +}
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/point/MemberPointConfigConvert.java deleted
1   -package cn.iocoder.yudao.module.member.convert.point;
2   -
3   -import cn.iocoder.yudao.module.member.api.point.dto.MemberPointConfigRespDTO;
4   -import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigRespVO;
5   -import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
6   -import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
7   -import org.mapstruct.Mapper;
8   -import org.mapstruct.factory.Mappers;
9   -
10   -/**
11   - * 会员积分配置 Convert
12   - *
13   - * @author QingX
14   - */
15   -@Mapper
16   -public interface MemberPointConfigConvert {
17   -
18   - MemberPointConfigConvert INSTANCE = Mappers.getMapper(MemberPointConfigConvert.class);
19   -
20   - MemberPointConfigRespVO convert(MemberPointConfigDO bean);
21   -
22   - MemberPointConfigDO convert(MemberPointConfigSaveReqVO bean);
23   -
24   - MemberPointConfigRespDTO convert01(MemberPointConfigDO pointConfig);
25   -}
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/point/MemberPointConfigDO.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/config/MemberConfigDO.java
1   -package cn.iocoder.yudao.module.member.dal.dataobject.point;
  1 +package cn.iocoder.yudao.module.member.dal.dataobject.config;
2 2  
3 3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
4 4 import com.baomidou.mybatisplus.annotation.KeySequence;
... ... @@ -7,19 +7,19 @@ import com.baomidou.mybatisplus.annotation.TableName;
7 7 import lombok.*;
8 8  
9 9 /**
10   - * 会员积分配置 DO
  10 + * 会员配置 DO
11 11 *
12 12 * @author QingX
13 13 */
14   -@TableName(value = "member_point_config", autoResultMap = true)
15   -@KeySequence("member_point_config_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
  14 +@TableName(value = "member_config", autoResultMap = true)
  15 +@KeySequence("member_config_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
16 16 @Data
17 17 @EqualsAndHashCode(callSuper = true)
18 18 @ToString(callSuper = true)
19 19 @Builder
20 20 @NoArgsConstructor
21 21 @AllArgsConstructor
22   -public class MemberPointConfigDO extends BaseDO {
  22 +public class MemberConfigDO extends BaseDO {
23 23  
24 24 /**
25 25 * 自增主键
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/point/MemberPointConfigMapper.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/config/MemberConfigMapper.java
1   -package cn.iocoder.yudao.module.member.dal.mysql.point;
  1 +package cn.iocoder.yudao.module.member.dal.mysql.config;
2 2  
3 3 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
4   -import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
  4 +import cn.iocoder.yudao.module.member.dal.dataobject.config.MemberConfigDO;
5 5 import org.apache.ibatis.annotations.Mapper;
6 6  
7 7 /**
... ... @@ -10,5 +10,5 @@ import org.apache.ibatis.annotations.Mapper;
10 10 * @author QingX
11 11 */
12 12 @Mapper
13   -public interface MemberPointConfigMapper extends BaseMapperX<MemberPointConfigDO> {
  13 +public interface MemberConfigMapper extends BaseMapperX<MemberConfigDO> {
14 14 }
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointConfigService.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/config/MemberConfigService.java
1   -package cn.iocoder.yudao.module.member.service.point;
  1 +package cn.iocoder.yudao.module.member.service.config;
2 2  
3   -import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
4   -import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
  3 +import cn.iocoder.yudao.module.member.controller.admin.config.vo.MemberConfigSaveReqVO;
  4 +import cn.iocoder.yudao.module.member.dal.dataobject.config.MemberConfigDO;
5 5  
6 6 import javax.validation.Valid;
7 7  
8 8 /**
9   - * 会员积分配置 Service 接口
  9 + * 会员配置 Service 接口
10 10 *
11 11 * @author QingX
12 12 */
13   -public interface MemberPointConfigService {
  13 +public interface MemberConfigService {
14 14  
15 15 /**
16   - * 保存会员积分配置
  16 + * 保存会员配置
17 17 *
18 18 * @param saveReqVO 更新信息
19 19 */
20   - void savePointConfig(@Valid MemberPointConfigSaveReqVO saveReqVO);
  20 + void saveConfig(@Valid MemberConfigSaveReqVO saveReqVO);
21 21  
22 22 /**
23   - * 获得会员积分配置
  23 + * 获得会员配置
24 24 *
25 25 * @return 积分配置
26 26 */
27   - MemberPointConfigDO getPointConfig();
  27 + MemberConfigDO getConfig();
28 28  
29 29 }
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointConfigServiceImpl.java renamed to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/config/MemberConfigServiceImpl.java
1   -package cn.iocoder.yudao.module.member.service.point;
  1 +package cn.iocoder.yudao.module.member.service.config;
2 2  
3 3 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
4   -import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
5   -import cn.iocoder.yudao.module.member.convert.point.MemberPointConfigConvert;
6   -import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
7   -import cn.iocoder.yudao.module.member.dal.mysql.point.MemberPointConfigMapper;
  4 +import cn.iocoder.yudao.module.member.controller.admin.config.vo.MemberConfigSaveReqVO;
  5 +import cn.iocoder.yudao.module.member.convert.config.MemberConfigConvert;
  6 +import cn.iocoder.yudao.module.member.dal.dataobject.config.MemberConfigDO;
  7 +import cn.iocoder.yudao.module.member.dal.mysql.config.MemberConfigMapper;
8 8 import org.springframework.stereotype.Service;
9 9 import org.springframework.validation.annotation.Validated;
10 10  
... ... @@ -12,32 +12,32 @@ import javax.annotation.Resource;
12 12 import java.util.List;
13 13  
14 14 /**
15   - * 会员积分配置 Service 实现类
  15 + * 会员配置 Service 实现类
16 16 *
17 17 * @author QingX
18 18 */
19 19 @Service
20 20 @Validated
21   -public class MemberPointConfigServiceImpl implements MemberPointConfigService {
  21 +public class MemberConfigServiceImpl implements MemberConfigService {
22 22  
23 23 @Resource
24   - private MemberPointConfigMapper memberPointConfigMapper;
  24 + private MemberConfigMapper memberConfigMapper;
25 25  
26 26 @Override
27   - public void savePointConfig(MemberPointConfigSaveReqVO saveReqVO) {
  27 + public void saveConfig(MemberConfigSaveReqVO saveReqVO) {
28 28 // 存在,则进行更新
29   - MemberPointConfigDO dbConfig = getPointConfig();
  29 + MemberConfigDO dbConfig = getConfig();
30 30 if (dbConfig != null) {
31   - memberPointConfigMapper.updateById(MemberPointConfigConvert.INSTANCE.convert(saveReqVO).setId(dbConfig.getId()));
  31 + memberConfigMapper.updateById(MemberConfigConvert.INSTANCE.convert(saveReqVO).setId(dbConfig.getId()));
32 32 return;
33 33 }
34 34 // 不存在,则进行插入
35   - memberPointConfigMapper.insert(MemberPointConfigConvert.INSTANCE.convert(saveReqVO));
  35 + memberConfigMapper.insert(MemberConfigConvert.INSTANCE.convert(saveReqVO));
36 36 }
37 37  
38 38 @Override
39   - public MemberPointConfigDO getPointConfig() {
40   - List<MemberPointConfigDO> list = memberPointConfigMapper.selectList();
  39 + public MemberConfigDO getConfig() {
  40 + List<MemberConfigDO> list = memberConfigMapper.selectList();
41 41 return CollectionUtils.getFirst(list);
42 42 }
43 43  
... ...