From 08814a21a3eaa0769a24aac9d754eaac21e6d999 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Tue, 21 Oct 2025 16:04:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=85=E5=80=BC=E5=85=91=E6=8D=A2=E7=A0=81?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/RechargeRedemptionController.java | 14 ++-- .../com/czg/market/dto/MkEnableConfigDTO.java | 40 ++++++++++++ .../com/czg/market/entity/MkEnableConfig.java | 4 ++ .../market/service/MkEnableConfigService.java | 6 +- .../com/czg/market/vo/MkEnableConfigVO.java | 65 +++++++++++++++++++ .../impl/MkEnableConfigServiceImpl.java | 27 ++++++-- 6 files changed, 141 insertions(+), 15 deletions(-) create mode 100644 cash-common/cash-common-service/src/main/java/com/czg/market/dto/MkEnableConfigDTO.java create mode 100644 cash-common/cash-common-service/src/main/java/com/czg/market/vo/MkEnableConfigVO.java diff --git a/cash-api/market-server/src/main/java/com/czg/controller/admin/RechargeRedemptionController.java b/cash-api/market-server/src/main/java/com/czg/controller/admin/RechargeRedemptionController.java index 816c7cb7..ddd49129 100644 --- a/cash-api/market-server/src/main/java/com/czg/controller/admin/RechargeRedemptionController.java +++ b/cash-api/market-server/src/main/java/com/czg/controller/admin/RechargeRedemptionController.java @@ -3,10 +3,12 @@ package com.czg.controller.admin; import com.czg.annotation.SaAdminCheckPermission; import com.czg.annotation.SaCheckMainShop; import com.czg.constant.TableValueConstant; +import com.czg.market.dto.MkEnableConfigDTO; import com.czg.market.dto.MkRechargeRedemptionConfigDTO; import com.czg.market.entity.MkRechargeRedemptionConfig; import com.czg.market.service.MkEnableConfigService; import com.czg.market.service.MkRechargeRedemptionConfigService; +import com.czg.market.vo.MkEnableConfigVO; import com.czg.market.vo.MkRechargeRedemptionCodeVO; import com.czg.market.vo.MkRechargeRedemptionConfigVO; import com.czg.resp.CzgResult; @@ -35,19 +37,19 @@ public class RechargeRedemptionController { private MkEnableConfigService enableConfigService; /** - * 配置开关 + * 开关。可用门店修改 */ @SaAdminCheckPermission(value = "rechargeRedemption:enable", name = "充值兑换状态修改") - @PutMapping("/{enable}") - public CzgResult upEnable(@PathVariable Integer enable) { - return CzgResult.success(enableConfigService.upEnable(StpKit.USER.getMainShopId(),StpKit.USER.getLoginIdAsLong(), enable, TableValueConstant.EnableConfig.Type.RECHARGE_REDEMPTION)); + @PutMapping("/enable") + public CzgResult upEnable(@Validated @RequestBody MkEnableConfigDTO dto) { + return CzgResult.success(enableConfigService.upEnable(StpKit.USER.getMainShopId(),StpKit.USER.getLoginIdAsLong(), dto, TableValueConstant.EnableConfig.Type.RECHARGE_REDEMPTION)); } /** - * 开关状态 + * 开关状态,可用门店详情 */ @GetMapping("/enable/status") - public CzgResult upEnable() { + public CzgResult upEnable() { return CzgResult.success(enableConfigService.detail(StpKit.USER.getMainShopId(), StpKit.USER.getLoginIdAsLong(), TableValueConstant.EnableConfig.Type.RECHARGE_REDEMPTION)); } diff --git a/cash-common/cash-common-service/src/main/java/com/czg/market/dto/MkEnableConfigDTO.java b/cash-common/cash-common-service/src/main/java/com/czg/market/dto/MkEnableConfigDTO.java new file mode 100644 index 00000000..1db94adc --- /dev/null +++ b/cash-common/cash-common-service/src/main/java/com/czg/market/dto/MkEnableConfigDTO.java @@ -0,0 +1,40 @@ + +package com.czg.market.dto; + +import com.czg.market.entity.MkConsumeCashbackStep; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; +import java.util.List; + +/** + * 新客立减 实体类。 + * + * @author zs + * @since 2025-09-16 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class MkEnableConfigDTO implements Serializable { + /** + * 可用门店列表 + */ + private List shopIdList; + /** + * 类型 all 全部可用 part部分门店可用 + */ + private String useType; + + /** + * 是否启用 + */ + private Integer isEnable; +} diff --git a/cash-common/cash-common-service/src/main/java/com/czg/market/entity/MkEnableConfig.java b/cash-common/cash-common-service/src/main/java/com/czg/market/entity/MkEnableConfig.java index f3b9be72..f9425597 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/market/entity/MkEnableConfig.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/market/entity/MkEnableConfig.java @@ -8,6 +8,7 @@ import java.io.Serializable; import java.time.LocalDateTime; import java.io.Serial; +import java.util.List; import lombok.AllArgsConstructor; import lombok.Builder; @@ -59,4 +60,7 @@ public class MkEnableConfig implements Serializable { private Long shopId; + private String useType; + private String shopIdList; + } diff --git a/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkEnableConfigService.java b/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkEnableConfigService.java index 58c3dff6..4a669839 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkEnableConfigService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/market/service/MkEnableConfigService.java @@ -1,6 +1,8 @@ package com.czg.market.service; import com.czg.constant.TableValueConstant; +import com.czg.market.dto.MkEnableConfigDTO; +import com.czg.market.vo.MkEnableConfigVO; import com.mybatisflex.core.service.IService; import com.czg.market.entity.MkEnableConfig; @@ -12,6 +14,6 @@ import com.czg.market.entity.MkEnableConfig; */ public interface MkEnableConfigService extends IService { - Boolean upEnable(Long mainShopId, Long shopId, Integer enable, TableValueConstant.EnableConfig.Type type); - Integer detail(Long mainShopId, Long shopId, TableValueConstant.EnableConfig.Type type); + Boolean upEnable(Long mainShopId, Long shopId, MkEnableConfigDTO dto, TableValueConstant.EnableConfig.Type type); + MkEnableConfigVO detail(Long mainShopId, Long shopId, TableValueConstant.EnableConfig.Type type); } diff --git a/cash-common/cash-common-service/src/main/java/com/czg/market/vo/MkEnableConfigVO.java b/cash-common/cash-common-service/src/main/java/com/czg/market/vo/MkEnableConfigVO.java new file mode 100644 index 00000000..938e5717 --- /dev/null +++ b/cash-common/cash-common-service/src/main/java/com/czg/market/vo/MkEnableConfigVO.java @@ -0,0 +1,65 @@ +package com.czg.market.vo; + +import com.mybatisflex.annotation.Column; +import com.mybatisflex.annotation.Id; +import com.mybatisflex.annotation.KeyType; +import com.mybatisflex.annotation.Table; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; +import java.time.LocalDateTime; +import java.util.List; + +/** + * 兑换码明细 实体类。 + * + * @author zs + * @since 2025-10-21 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Table("mk_enable_config") +public class MkEnableConfigVO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + @Id(keyType = KeyType.Auto) + private Long id; + + /** + * 主店id + */ + private Long mainShopId; + + /** + * 创建时间 + */ + @Column(onInsertValue = "now()") + private LocalDateTime createTime; + + /** + * 修改时间 + */ + @Column(onInsertValue = "now()", onUpdateValue = "now()") + private LocalDateTime updateTime; + + /** + * 模块类型 + */ + private String type; + + private Integer isEnable; + + private Long shopId; + + private String useType; + private List shopIdList; + +} diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkEnableConfigServiceImpl.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkEnableConfigServiceImpl.java index 7304edc6..f6566304 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkEnableConfigServiceImpl.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkEnableConfigServiceImpl.java @@ -1,6 +1,12 @@ package com.czg.service.market.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; import com.czg.constant.TableValueConstant; +import com.czg.market.dto.MkEnableConfigDTO; +import com.czg.market.vo.MkEnableConfigVO; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.spring.service.impl.ServiceImpl; import com.czg.market.entity.MkEnableConfig; @@ -18,7 +24,7 @@ import org.springframework.stereotype.Service; public class MkEnableConfigServiceImpl extends ServiceImpl implements MkEnableConfigService{ @Override - public Integer detail(Long mainShopId, Long shopId, TableValueConstant.EnableConfig.Type type) { + public MkEnableConfigVO detail(Long mainShopId, Long shopId, TableValueConstant.EnableConfig.Type type) { MkEnableConfig one = getOne(new QueryWrapper().eq(MkEnableConfig::getMainShopId, mainShopId).eq(MkEnableConfig::getType, type.getCode())); if (one == null) { one = new MkEnableConfig(); @@ -27,22 +33,29 @@ public class MkEnableConfigServiceImpl extends ServiceImpl