Administrator
2025-05-06 c7c6de51f730e7c15ee23682acc432af839a5bac
feat(mall): 为社交圈信息添加互动统计

- 在 ApiScInfoVo 中添加点赞数、关注数和转发数字段
- 在 HappySocialCircleMapper 中添加相应的 SQL 查询
- 在 ApiHappySocialCircleServiceImpl 中集成新功能
3 files modified
19 ■■■■■ changed files
src/main/java/cc/mrbird/febs/mall/service/impl/ApiHappySocialCircleServiceImpl.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/vo/activity/ApiScInfoVo.java 9 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/HappySocialCircleMapper.xml 3 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiHappySocialCircleServiceImpl.java
@@ -3,9 +3,11 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.enumerates.StateUpDownEnum;
import cc.mrbird.febs.mall.dto.activity.ApiScInfoDto;
import cc.mrbird.febs.mall.entity.HappyFollow;
import cc.mrbird.febs.mall.entity.HappySocialCircle;
import cc.mrbird.febs.mall.entity.HappySocialCircleCategory;
import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.mapper.HappyFollowMapper;
import cc.mrbird.febs.mall.mapper.HappySocialCircleCategoryMapper;
import cc.mrbird.febs.mall.mapper.HappySocialCircleMapper;
import cc.mrbird.febs.mall.mapper.MallMemberMapper;
@@ -14,6 +16,7 @@
import cc.mrbird.febs.mall.vo.activity.ApiScCategoryInfoVo;
import cc.mrbird.febs.mall.vo.activity.ApiScInfoVo;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -23,6 +26,9 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
@Slf4j
@Service
@@ -30,6 +36,7 @@
public class ApiHappySocialCircleServiceImpl extends ServiceImpl<HappySocialCircleMapper, HappySocialCircle> implements ApiHappySocialCircleService {
    private final HappySocialCircleCategoryMapper happySocialCircleCategoryMapper;
    private final HappyFollowMapper happyFollowMapper;
    private final MallMemberMapper  mallMemberMapper;
    @Override
    public FebsResponse allCategory() {
src/main/java/cc/mrbird/febs/mall/vo/activity/ApiScInfoVo.java
@@ -33,4 +33,13 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createdTime;
    @ApiModelProperty(value = "点赞数")
    private Integer zanCnt;
    @ApiModelProperty(value = "关注数")
    private Integer followCnt;
    @ApiModelProperty(value = "转发数")
    private Integer sendCnt;
}
src/main/resources/mapper/modules/HappySocialCircleMapper.xml
@@ -9,6 +9,9 @@
            b.name as memberName,
            a.name as name,
            a.CREATED_TIME as createdTime,
               (select count(*) from happy_follow where source_type = 2 and DELETE_FLAG = 0 and source_id = a.id and type = 1) as followCnt,
               (select count(*) from happy_follow where source_type = 2 and DELETE_FLAG = 0 and source_id = a.id and type = 2) as zanCnt,
               (select count(*) from happy_follow where source_type = 2 and DELETE_FLAG = 0 and source_id = a.id and type = 3) as sendCnt,
            a.index_file as indexFile
        from happy_social_circle a
        left join mall_member b on a.member_id = b.id