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