Commit 2168145c3e6c2f46a9ab9f9c46bb7784cbe1a3ab
1 parent
ab35fcbe
会员:会员配置的积分相关字段加上point前缀
Showing
6 changed files
with
25 additions
and
25 deletions
sql/mysql/ruoyi-vue-pro.sql
| @@ -815,10 +815,10 @@ COMMIT; | @@ -815,10 +815,10 @@ COMMIT; | ||
| 815 | DROP TABLE IF EXISTS `member_config`; | 815 | DROP TABLE IF EXISTS `member_config`; |
| 816 | CREATE TABLE `member_config` ( | 816 | CREATE TABLE `member_config` ( |
| 817 | `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键', | 817 | `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键', |
| 818 | - `trade_deduct_enable` bit(1) NOT NULL COMMENT '是否开启积分抵扣', | ||
| 819 | - `trade_deduct_unit_price` int NOT NULL COMMENT '积分抵扣(单位:分)', | ||
| 820 | - `trade_deduct_max_price` int NULL DEFAULT NULL COMMENT '积分抵扣最大值', | ||
| 821 | - `trade_give_point` bigint NULL DEFAULT NULL COMMENT '1 元赠送多少分', | 818 | + `point_trade_deduct_enable` bit(1) NOT NULL COMMENT '是否开启积分抵扣', |
| 819 | + `point_trade_deduct_unit_price` int NOT NULL COMMENT '积分抵扣(单位:分)', | ||
| 820 | + `point_trade_deduct_max_price` int NULL DEFAULT NULL COMMENT '积分抵扣最大值', | ||
| 821 | + `point_trade_give_point` bigint NULL DEFAULT NULL COMMENT '1 元赠送多少分', | ||
| 822 | `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建者', | 822 | `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建者', |
| 823 | `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', | 823 | `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', |
| 824 | `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新者', | 824 | `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新者', |
| @@ -832,7 +832,7 @@ CREATE TABLE `member_config` ( | @@ -832,7 +832,7 @@ CREATE TABLE `member_config` ( | ||
| 832 | -- Records of member_config | 832 | -- Records of member_config |
| 833 | -- ---------------------------- | 833 | -- ---------------------------- |
| 834 | BEGIN; | 834 | BEGIN; |
| 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); | 835 | +INSERT INTO `member_config` (`id`, `point_trade_deduct_enable`, `point_trade_deduct_unit_price`, `point_trade_deduct_max_price`, `point_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 | COMMIT; | 836 | COMMIT; |
| 837 | 837 | ||
| 838 | -- ---------------------------- | 838 | -- ---------------------------- |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradePointGiveCalculator.java
| @@ -34,8 +34,8 @@ public class TradePointGiveCalculator implements TradePriceCalculator { | @@ -34,8 +34,8 @@ public class TradePointGiveCalculator implements TradePriceCalculator { | ||
| 34 | public void calculate(TradePriceCalculateReqBO param, TradePriceCalculateRespBO result) { | 34 | public void calculate(TradePriceCalculateReqBO param, TradePriceCalculateRespBO result) { |
| 35 | // 1.1 校验积分功能是否开启 | 35 | // 1.1 校验积分功能是否开启 |
| 36 | int givePointPerYuan = Optional.ofNullable(memberConfigApi.getConfig()) | 36 | int givePointPerYuan = Optional.ofNullable(memberConfigApi.getConfig()) |
| 37 | - .filter(config -> BooleanUtil.isTrue(config.getTradeDeductEnable())) | ||
| 38 | - .map(MemberConfigRespDTO::getTradeGivePoint) | 37 | + .filter(config -> BooleanUtil.isTrue(config.getPointTradeDeductEnable())) |
| 38 | + .map(MemberConfigRespDTO::getPointTradeGivePoint) | ||
| 39 | .orElse(0); | 39 | .orElse(0); |
| 40 | if (givePointPerYuan <= 0) { | 40 | if (givePointPerYuan <= 0) { |
| 41 | return; | 41 | return; |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradePointUsePriceCalculator.java
| @@ -78,18 +78,18 @@ public class TradePointUsePriceCalculator implements TradePriceCalculator { | @@ -78,18 +78,18 @@ public class TradePointUsePriceCalculator implements TradePriceCalculator { | ||
| 78 | 78 | ||
| 79 | private boolean isDeductPointEnable(MemberConfigRespDTO config) { | 79 | private boolean isDeductPointEnable(MemberConfigRespDTO config) { |
| 80 | return config != null && | 80 | return config != null && |
| 81 | - !BooleanUtil.isTrue(config.getTradeDeductEnable()) && // 积分功能是否启用 | ||
| 82 | - config.getTradeDeductUnitPrice() != null && config.getTradeDeductUnitPrice() > 0; // 有没有配置:1 积分抵扣多少分 | 81 | + !BooleanUtil.isTrue(config.getPointTradeDeductEnable()) && // 积分功能是否启用 |
| 82 | + config.getPointTradeDeductUnitPrice() != null && config.getPointTradeDeductUnitPrice() > 0; // 有没有配置:1 积分抵扣多少分 | ||
| 83 | } | 83 | } |
| 84 | 84 | ||
| 85 | private Integer calculatePointPrice(MemberConfigRespDTO config, Integer usePoint, TradePriceCalculateRespBO result) { | 85 | private Integer calculatePointPrice(MemberConfigRespDTO config, Integer usePoint, TradePriceCalculateRespBO result) { |
| 86 | // 每个订单最多可以使用的积分数量 | 86 | // 每个订单最多可以使用的积分数量 |
| 87 | - if (config.getTradeDeductMaxPrice() != null && config.getTradeDeductMaxPrice() > 0) { | ||
| 88 | - usePoint = Math.min(usePoint, config.getTradeDeductMaxPrice()); | 87 | + if (config.getPointTradeDeductMaxPrice() != null && config.getPointTradeDeductMaxPrice() > 0) { |
| 88 | + usePoint = Math.min(usePoint, config.getPointTradeDeductMaxPrice()); | ||
| 89 | } | 89 | } |
| 90 | // TODO @疯狂:这里应该是,抵扣到只剩下 0.01; | 90 | // TODO @疯狂:这里应该是,抵扣到只剩下 0.01; |
| 91 | // 积分优惠金额(分) | 91 | // 积分优惠金额(分) |
| 92 | - int pointPrice = usePoint * config.getTradeDeductUnitPrice(); | 92 | + int pointPrice = usePoint * config.getPointTradeDeductUnitPrice(); |
| 93 | if (result.getPrice().getPayPrice() <= pointPrice) { | 93 | if (result.getPrice().getPayPrice() <= pointPrice) { |
| 94 | // 禁止 0 元购 | 94 | // 禁止 0 元购 |
| 95 | throw exception(PRICE_CALCULATE_PAY_PRICE_ILLEGAL); | 95 | throw exception(PRICE_CALCULATE_PAY_PRICE_ILLEGAL); |
| @@ -99,7 +99,7 @@ public class TradePointUsePriceCalculator implements TradePriceCalculator { | @@ -99,7 +99,7 @@ public class TradePointUsePriceCalculator implements TradePriceCalculator { | ||
| 99 | // pointPrice = result.getPrice().getPayPrice(); | 99 | // pointPrice = result.getPrice().getPayPrice(); |
| 100 | // // 反推需要扣除的积分 | 100 | // // 反推需要扣除的积分 |
| 101 | // usePoint = NumberUtil.toBigDecimal(pointPrice) | 101 | // usePoint = NumberUtil.toBigDecimal(pointPrice) |
| 102 | -// .divide(NumberUtil.toBigDecimal(config.getTradeDeductUnitPrice()), 0, RoundingMode.HALF_UP) | 102 | +// .divide(NumberUtil.toBigDecimal(config.getPointTradeDeductUnitPrice()), 0, RoundingMode.HALF_UP) |
| 103 | // .intValue(); | 103 | // .intValue(); |
| 104 | // } | 104 | // } |
| 105 | // 记录使用的积分 | 105 | // 记录使用的积分 |
yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/config/dto/MemberConfigRespDTO.java
| @@ -13,20 +13,20 @@ public class MemberConfigRespDTO { | @@ -13,20 +13,20 @@ public class MemberConfigRespDTO { | ||
| 13 | /** | 13 | /** |
| 14 | * 积分抵扣开关 | 14 | * 积分抵扣开关 |
| 15 | */ | 15 | */ |
| 16 | - private Boolean tradeDeductEnable; | 16 | + private Boolean pointTradeDeductEnable; |
| 17 | /** | 17 | /** |
| 18 | * 积分抵扣,单位:分 | 18 | * 积分抵扣,单位:分 |
| 19 | * <p> | 19 | * <p> |
| 20 | * 1 积分抵扣多少分 | 20 | * 1 积分抵扣多少分 |
| 21 | */ | 21 | */ |
| 22 | - private Integer tradeDeductUnitPrice; | 22 | + private Integer pointTradeDeductUnitPrice; |
| 23 | /** | 23 | /** |
| 24 | * 积分抵扣最大值 | 24 | * 积分抵扣最大值 |
| 25 | */ | 25 | */ |
| 26 | - private Integer tradeDeductMaxPrice; | 26 | + private Integer pointTradeDeductMaxPrice; |
| 27 | /** | 27 | /** |
| 28 | * 1 元赠送多少分 | 28 | * 1 元赠送多少分 |
| 29 | */ | 29 | */ |
| 30 | - private Integer tradeGivePoint; | 30 | + private Integer pointTradeGivePoint; |
| 31 | 31 | ||
| 32 | } | 32 | } |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/config/vo/MemberConfigBaseVO.java
| @@ -14,18 +14,18 @@ public class MemberConfigBaseVO { | @@ -14,18 +14,18 @@ public class MemberConfigBaseVO { | ||
| 14 | 14 | ||
| 15 | @Schema(description = "积分抵扣开关", requiredMode = Schema.RequiredMode.REQUIRED, example = "true") | 15 | @Schema(description = "积分抵扣开关", requiredMode = Schema.RequiredMode.REQUIRED, example = "true") |
| 16 | @NotNull(message = "积分抵扣开发不能为空") | 16 | @NotNull(message = "积分抵扣开发不能为空") |
| 17 | - private Boolean tradeDeductEnable; | 17 | + private Boolean pointTradeDeductEnable; |
| 18 | 18 | ||
| 19 | @Schema(description = "积分抵扣,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "13506") | 19 | @Schema(description = "积分抵扣,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "13506") |
| 20 | @NotNull(message = "积分抵扣不能为空") | 20 | @NotNull(message = "积分抵扣不能为空") |
| 21 | - private Integer tradeDeductUnitPrice; | 21 | + private Integer pointTradeDeductUnitPrice; |
| 22 | 22 | ||
| 23 | @Schema(description = "积分抵扣最大值", requiredMode = Schema.RequiredMode.REQUIRED, example = "32428") | 23 | @Schema(description = "积分抵扣最大值", requiredMode = Schema.RequiredMode.REQUIRED, example = "32428") |
| 24 | @NotNull(message = "积分抵扣最大值不能为空") | 24 | @NotNull(message = "积分抵扣最大值不能为空") |
| 25 | - private Integer tradeDeductMaxPrice; | 25 | + private Integer pointTradeDeductMaxPrice; |
| 26 | 26 | ||
| 27 | @Schema(description = "1 元赠送多少分", requiredMode = Schema.RequiredMode.REQUIRED, example = "100") | 27 | @Schema(description = "1 元赠送多少分", requiredMode = Schema.RequiredMode.REQUIRED, example = "100") |
| 28 | @NotNull(message = "1 元赠送积分不能为空") | 28 | @NotNull(message = "1 元赠送积分不能为空") |
| 29 | - private Integer tradeGivePoint; | 29 | + private Integer pointTradeGivePoint; |
| 30 | 30 | ||
| 31 | } | 31 | } |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/config/MemberConfigDO.java
| @@ -29,20 +29,20 @@ public class MemberConfigDO extends BaseDO { | @@ -29,20 +29,20 @@ public class MemberConfigDO extends BaseDO { | ||
| 29 | /** | 29 | /** |
| 30 | * 积分抵扣开关 | 30 | * 积分抵扣开关 |
| 31 | */ | 31 | */ |
| 32 | - private Boolean tradeDeductEnable; | 32 | + private Boolean pointTradeDeductEnable; |
| 33 | /** | 33 | /** |
| 34 | * 积分抵扣,单位:分 | 34 | * 积分抵扣,单位:分 |
| 35 | * | 35 | * |
| 36 | * 1 积分抵扣多少分 | 36 | * 1 积分抵扣多少分 |
| 37 | */ | 37 | */ |
| 38 | - private Integer tradeDeductUnitPrice; | 38 | + private Integer pointTradeDeductUnitPrice; |
| 39 | /** | 39 | /** |
| 40 | * 积分抵扣最大值 | 40 | * 积分抵扣最大值 |
| 41 | */ | 41 | */ |
| 42 | - private Integer tradeDeductMaxPrice; | 42 | + private Integer pointTradeDeductMaxPrice; |
| 43 | /** | 43 | /** |
| 44 | * 1 元赠送多少分 | 44 | * 1 元赠送多少分 |
| 45 | */ | 45 | */ |
| 46 | - private Integer tradeGivePoint; | 46 | + private Integer pointTradeGivePoint; |
| 47 | 47 | ||
| 48 | } | 48 | } |