From b52419d0b2e36c718ed041c8e78ec8be514be7b6 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Fri, 26 Jan 2024 20:10:03 +0800
Subject: [PATCH] fix
---
src/main/resources/mapper/modules/MallVipBenefitsMapper.xml | 17 +++++++++++++++++
src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsMapper.java | 4 ++++
src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java | 8 +++++++-
src/main/resources/mapper/modules/MallVipConfigMapper.xml | 6 ++++++
src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefits.java | 2 ++
5 files changed, 36 insertions(+), 1 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefits.java b/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefits.java
index 885af9f..0e28065 100644
--- a/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefits.java
+++ b/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefits.java
@@ -47,6 +47,8 @@
*/
private String remark;
+ private Integer isJump;
+
@TableField(exist = false)
private List<MallVipBenefitsDetails> details;
}
diff --git a/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsMapper.java b/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsMapper.java
index d71df4b..89319c5 100644
--- a/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsMapper.java
+++ b/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsMapper.java
@@ -6,9 +6,13 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
public interface MallVipBenefitsMapper extends BaseMapper<MallVipBenefits> {
IPage<MallVipBenefits> selectVipBenefitsListInPage(Page<MallVipBenefits> page);
MallVipBenefits selectVipBenefitsById(@Param("id") Long id);
+
+ List<MallVipBenefits> selectVipBenefitsByIds(@Param("list") List<Long> ids);
}
diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java
index c1a15ae..3f3b1fe 100644
--- a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java
@@ -46,7 +46,13 @@
@Override
public List<MallVipConfig> findConfigList() {
- return this.baseMapper.selectVipConfigList();
+ List<MallVipConfig> configs = this.baseMapper.selectVipConfigList();
+ configs.forEach(item -> {
+ item.getBenefits().forEach(benefits -> {
+ benefits.setIsJump(CollUtil.isEmpty(benefits.getDetails()) ? 2 : 1);
+ });
+ });
+ return configs;
}
@Override
diff --git a/src/main/resources/mapper/modules/MallVipBenefitsMapper.xml b/src/main/resources/mapper/modules/MallVipBenefitsMapper.xml
index ce44de8..f04bd59 100644
--- a/src/main/resources/mapper/modules/MallVipBenefitsMapper.xml
+++ b/src/main/resources/mapper/modules/MallVipBenefitsMapper.xml
@@ -39,4 +39,21 @@
left join mall_vip_benefits_details benefitsDetail on benefits.id=benefitsDetail.benefits_id
where benefits.id=#{id}
</select>
+
+ <select id="selectVipBenefitsByIds" resultMap="VipBenefitsMap">
+ select
+ benefits.*,
+ benefitsDetail.id c_id
+ ,benefitsDetail.image
+ ,benefitsDetail.is_click
+ ,benefitsDetail.link_type
+ ,benefitsDetail.content
+ ,benefitsDetail.seq
+ from mall_vip_benefits benefits
+ left join mall_vip_benefits_details benefitsDetail on benefits.id=benefitsDetail.benefits_id
+ where benefits.id in
+ <foreach collection="list" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
+ </select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MallVipConfigMapper.xml b/src/main/resources/mapper/modules/MallVipConfigMapper.xml
index 4b9675a..5387d10 100644
--- a/src/main/resources/mapper/modules/MallVipConfigMapper.xml
+++ b/src/main/resources/mapper/modules/MallVipConfigMapper.xml
@@ -18,6 +18,10 @@
<id property="id" column="c_id" />
<result property="name" column="c_name" />
<result property="icon" column="c_icon" />
+
+ <collection property="details" ofType="cc.mrbird.febs.vip.entity.MallVipBenefitsDetails">
+ <id property="id" column="d_id" />
+ </collection>
</collection>
</resultMap>
@@ -31,9 +35,11 @@
,benefits.id c_id
,benefits.name c_name
,benefits.icon c_icon
+ ,details.id d_id
from mall_vip_config config
inner join mall_vip_config_benefits configBenefits on config.id=configBenefits.config_id
inner join mall_vip_benefits benefits on configBenefits.benefits_id=benefits.id
+ left join mall_vip_benefits_details details on benefits.id = details.benefits_id
order by level
</select>
--
Gitblit v1.9.1