From d45bdbaef3b82489682f312eac04c017489dfdd1 Mon Sep 17 00:00:00 2001 From: 13405411873 <1994398261@qq.com> Date: Thu, 3 Apr 2025 15:49:27 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E9=98=85=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../busi/controller/BusiNoticeController.java | 2 +- .../controller/BusiSubscribeController.java | 5 ++ .../com/ruoyi/busi/domain/BusiSubscribe.java | 4 ++ .../ruoyi/busi/mapper/BusiNoticeMapper.java | 11 ++++ .../busi/service/IBusiNoticeService.java | 3 + .../service/impl/BusiNoticeServiceImpl.java | 29 +++++++++ .../com/ruoyi/busi/vo/SubscribeDataObj.java | 34 +++++++++++ .../mapper/busi/BusiNoticeMapper.xml | 61 +++++++++++++++++++ 8 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/busi/vo/SubscribeDataObj.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeController.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeController.java index a53b9a0..5dea874 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeController.java @@ -228,7 +228,7 @@ public class BusiNoticeController extends BaseController @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { Page page = new Page<>(pageNum, pageSize); - IPage list = busiNoticeService.appFootprintList(query,page); + IPage list = busiNoticeService.subscribeList(query,page); return success(list); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiSubscribeController.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiSubscribeController.java index 10636b5..c39ffd9 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiSubscribeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiSubscribeController.java @@ -1,8 +1,10 @@ package com.ruoyi.busi.controller; +import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.busi.domain.BusiSubscribe; import com.ruoyi.busi.service.IBusiSubscribeService; +import com.ruoyi.busi.vo.SubscribeDataObj; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -55,6 +57,9 @@ public class BusiSubscribeController extends BaseController { public AjaxResult save(@RequestBody BusiSubscribe busiSubscribe) { Long userId = SecurityUtils.getUserId(); busiSubscribe.setUserId(userId); + SubscribeDataObj subscribeDataObj = JSONObject.parseObject(busiSubscribe.getJsonObj(), SubscribeDataObj.class); + busiSubscribe.setNewNotice(subscribeDataObj.getNewNotice()?"1":"0"); + busiSubscribe.setForkNotice(subscribeDataObj.getForkNotice()?"1":"0"); busiSubscribeService.saveOrUpdate(busiSubscribe); return success(); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiSubscribe.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiSubscribe.java index 9fa721f..051b78d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiSubscribe.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiSubscribe.java @@ -32,5 +32,9 @@ public class BusiSubscribe extends DlBaseEntity /** $column.columnComment */ @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") private String jsonObj; + //符合订阅设置的新通告 0 否 1是 + private String newNotice; + //订阅通告主新通告0否 1是 + private String forkNotice; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiNoticeMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiNoticeMapper.java index 525718f..1b2d589 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiNoticeMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiNoticeMapper.java @@ -8,6 +8,7 @@ import com.ruoyi.busi.domain.BusiNotice; import com.ruoyi.busi.query.AppNoticeQuery; import com.ruoyi.busi.query.BusiNoticeQuery; import com.ruoyi.busi.vo.BusiNoticeVo; +import com.ruoyi.busi.vo.SubscribeDataObj; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -50,6 +51,16 @@ public interface BusiNoticeMapper extends BaseMapper { **/ IPage appFootprintList(@Param("entity") AppNoticeQuery query, Page page); + /** + * 小程序端查询订阅通告列表 + * @author zcy + * @date 15:39 2025/3/29 + * @param subscribeDataObj 查询条件 + * @return com.ruoyi.common.core.domain.AjaxResult + **/ + IPage subscribeList(@Param("entity") SubscribeDataObj subscribeDataObj, Page page); + + /** * 小程序端查询通告详细信息 * @author 朱春云 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeService.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeService.java index c7ea263..e6eac8a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeService.java @@ -81,4 +81,7 @@ public interface IBusiNoticeService extends IService * @return JSONObject **/ JSONObject appGetDetail(String noticeId); + + IPage subscribeList(AppNoticeQuery query, Page page); + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeServiceImpl.java index 17bd949..fd1ae01 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeServiceImpl.java @@ -8,11 +8,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.base.domain.BaseCategory; import com.ruoyi.base.service.IBaseCategoryService; import com.ruoyi.busi.domain.BusiNoticeSign; +import com.ruoyi.busi.domain.BusiSubscribe; import com.ruoyi.busi.domain.BusiUserLove; import com.ruoyi.busi.mapper.BusiNoticeSignMapper; import com.ruoyi.busi.query.AppNoticeQuery; +import com.ruoyi.busi.service.IBusiSubscribeService; import com.ruoyi.busi.service.IBusiUserLoveService; import com.ruoyi.busi.vo.BusiNoticeVo; +import com.ruoyi.busi.vo.SubscribeDataObj; import com.ruoyi.common.core.domain.DlBaseEntity; import java.util.stream.Collectors; @@ -65,6 +68,8 @@ public class BusiNoticeServiceImpl extends ServiceImpl queryListPage(BusiNoticeQuery query, Page page) { @@ -322,6 +327,30 @@ public class BusiNoticeServiceImpl extends ServiceImpl subscribeList(AppNoticeQuery query, Page page) { + //获取当前登录用户 + Long userId = SecurityUtils.getUserId(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BusiSubscribe::getUserId,userId).last("limit 1"); + BusiSubscribe subscribe = subscribeService.getOne(queryWrapper); + if(null!=subscribe){ + //如果使用订阅 则获取 订阅规则进行查询 + SubscribeDataObj subscribeDataObj = JSONObject.parseObject(subscribe.getJsonObj(), SubscribeDataObj.class); + return baseMapper.subscribeList(subscribeDataObj,page); + }else { + //未设置订阅则使用常规查询 + return this.queryAppListPage(query,page); + } + + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/SubscribeDataObj.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/SubscribeDataObj.java new file mode 100644 index 0000000..6f1dff4 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/SubscribeDataObj.java @@ -0,0 +1,34 @@ +package com.ruoyi.busi.vo; + +import lombok.Data; + +import java.util.List; + +@Data +public class SubscribeDataObj { + //领域 博主类型 + private List bloggerTypeCode; + //平台 + private List platformCode; + //通告类型 + private List noticeTypeCode; + //关键词 + private List keywordsList; + //奖励类型 + private List rewardTypeCode; + //粉丝数量是否限制 + private Boolean fansLimit; + //粉丝数量上限 + private Integer fansUp; + //粉丝数量下限 + private Integer fansDown; + //费用是否限制 + private Boolean feeLimit; + //费用上限 + private Double feeDown; + //费用下限 + private Double feeUp; + // + private Boolean newNotice; + private Boolean forkNotice; +} diff --git a/ruoyi-admin/src/main/resources/mapper/busi/BusiNoticeMapper.xml b/ruoyi-admin/src/main/resources/mapper/busi/BusiNoticeMapper.xml index 567ac34..615104a 100644 --- a/ruoyi-admin/src/main/resources/mapper/busi/BusiNoticeMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/busi/BusiNoticeMapper.xml @@ -197,5 +197,66 @@ order by dbns.create_time desc +