From 43b79969ee96a0a9944f1cd499b9068f07a257ad Mon Sep 17 00:00:00 2001 From: yang <2119157836@qq.com> Date: Tue, 22 Apr 2025 17:07:15 +0800 Subject: [PATCH] =?UTF-8?q?feat(communityCenter):=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E7=A4=BE=E5=8C=BA=E9=80=9A=E7=9F=A5=E5=8A=9F=E8=83=BD=E5=B9=B6?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=94=B6=E7=9B=8A=E4=BF=A1=E6=81=AF=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CommunityAdviceController.java | 43 +++++++++++ .../communityCenter/IncomeInfoController.java | 11 +-- .../domain/dto/CommunityAdvicePageRes.java | 24 ++++++ .../domain/dto/IncomeInfoListPageRes.java | 16 ++-- .../domain/vo/CommunityAdviceVo.java | 74 +++++++++++++++++++ .../domain/vo/IncomeInfoListVo.java | 8 ++ .../mapper/CommunityAdviceMapper.java | 10 +++ .../mapper/IncomeInfoMapper.java | 7 +- .../service/CommunityAdviceService.java | 5 ++ .../service/IncomeInfoService.java | 2 +- .../impl/CommunityAdviceServiceImpl.java | 21 ++++++ .../service/impl/IncomeInfoServiceImpl.java | 9 +-- .../service/impl/PublishServiceImpl.java | 1 - .../communityCenter/CommunityAdviceMapper.xml | 20 +++++ .../communityCenter/IncomeInfoMapper.xml | 44 ++++++----- .../mapper/communityCenter/PublishMapper.xml | 1 + 16 files changed, 254 insertions(+), 42 deletions(-) create mode 100644 mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityAdviceController.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/CommunityAdvicePageRes.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/CommunityAdviceVo.java create mode 100644 mcwl-communityCenter/src/main/resources/mapper/communityCenter/CommunityAdviceMapper.xml diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityAdviceController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityAdviceController.java new file mode 100644 index 0000000..705248a --- /dev/null +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityAdviceController.java @@ -0,0 +1,43 @@ +package com.mcwl.web.controller.communityCenter; + + +import com.mcwl.common.core.domain.R; +import com.mcwl.common.core.page.TableDataInfo; +import com.mcwl.communityCenter.domain.dto.*; +import com.mcwl.communityCenter.domain.vo.CommunityDetailVo; +import com.mcwl.communityCenter.service.CommunityAdviceService; +import com.mcwl.communityCenter.service.CommunityService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import javax.validation.constraints.NotNull; + +/** + * 社区通知 + */ +@Api(tags = "社区通知") +@RestController +@RequestMapping("communityAdvice") +@RequiredArgsConstructor +public class CommunityAdviceController { + + private final CommunityAdviceService communityAdviceService; + + + /** + * 获取通知列表 + */ + @ApiOperation(value = "获取通知列表") + @PostMapping("adviceList") + public TableDataInfo getCommunityAdviceList(@RequestBody CommunityAdvicePageRes communityAdvicePageRes) { + return communityAdviceService.getCommunityAdviceList(communityAdvicePageRes); + } + + + + +} diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/IncomeInfoController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/IncomeInfoController.java index 899f844..524536b 100644 --- a/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/IncomeInfoController.java +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/IncomeInfoController.java @@ -12,10 +12,7 @@ import com.mcwl.communityCenter.service.QuestionService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -46,9 +43,9 @@ public class IncomeInfoController { * 社区收益 */ @ApiOperation(value = "社区收益") - @PostMapping("communityIncome") - public R communityIncome(@Valid @RequestBody IncomeInfoRes incomeInfoRes) { - return incomeInfoService.communityIncome(incomeInfoRes); + @GetMapping("communityIncome") + public R communityIncome() { + return incomeInfoService.communityIncome(); } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/CommunityAdvicePageRes.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/CommunityAdvicePageRes.java new file mode 100644 index 0000000..bfaafa3 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/CommunityAdvicePageRes.java @@ -0,0 +1,24 @@ +package com.mcwl.communityCenter.domain.dto; + +import com.mcwl.common.core.page.PageDomain; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 社区通知列表分页请求参数 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "社区通知列表分页请求参数") +public class CommunityAdvicePageRes extends PageDomain { + + /** + * 通知类型 0社区通知 1回复我的 2待我回复 3点赞 + */ + @ApiModelProperty(value = "通知类型 0社区通知 1回复我的 2待我回复 3点赞") + private Integer adviceType; + + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/IncomeInfoListPageRes.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/IncomeInfoListPageRes.java index 7f2b6bd..44f418e 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/IncomeInfoListPageRes.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/dto/IncomeInfoListPageRes.java @@ -17,12 +17,16 @@ import javax.validation.constraints.NotNull; @ApiModel(value = "收益明细请求参数") public class IncomeInfoListPageRes extends PageDomain { - @NotNull(message = "社区id不能为空") - @ApiModelProperty(value = "社区id", required = true) - private Long communityId; + /** + * 搜索内容 + */ + @ApiModelProperty(value = "搜索内容") + private String searchContent; - @NotNull(message = "租户id不能为空") - @ApiModelProperty(value = "租户id", required = true) - private Long tenantId; + /** + * 收益类型 + */ + @ApiModelProperty(value = "收益类型") + private Integer type; } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/CommunityAdviceVo.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/CommunityAdviceVo.java new file mode 100644 index 0000000..a081fd3 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/CommunityAdviceVo.java @@ -0,0 +1,74 @@ +package com.mcwl.communityCenter.domain.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * 社区通知返回数据 + */ +@Data +@ApiModel(value = "社区通知返回数据") +public class CommunityAdviceVo { + + /** + * 社区id + */ + @ApiModelProperty(value = "社区id") + private Long id; + + /** + * 租户id + */ + @ApiModelProperty(value = "租户id") + private Long tenantId; + + /** + * 发送人 + */ + @ApiModelProperty(value = "发送人") + private Long sendUserId; + + /** + * 发送人名称 + */ + @ApiModelProperty(value = "发送人名称") + private String sendUserName; + + /** + * 发送人头像 + */ + @ApiModelProperty(value = "发送人头像") + private String sendUserAvatar; + + /** + * 标题 + */ + @ApiModelProperty(value = "标题") + private String title; + + /** + * 内容 + */ + @ApiModelProperty(value = "内容") + private String content; + + /** + * 是否已读 + */ + @ApiModelProperty(value = "是否已读") + private Integer isRead; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createTime; + + + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/IncomeInfoListVo.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/IncomeInfoListVo.java index 5f0f11c..8650bd7 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/IncomeInfoListVo.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/vo/IncomeInfoListVo.java @@ -1,5 +1,6 @@ package com.mcwl.communityCenter.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Builder; @@ -21,6 +22,12 @@ public class IncomeInfoListVo { @ApiModelProperty(value = "用户名称") private String userName; + /** + * 用户头像 + */ + @ApiModelProperty(value = "用户头像") + private String avatar; + /** * 社区名称 */ @@ -43,6 +50,7 @@ public class IncomeInfoListVo { * 收益时间 */ @ApiModelProperty(value = "收益时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityAdviceMapper.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityAdviceMapper.java index 8e41cdc..c3d21bc 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityAdviceMapper.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityAdviceMapper.java @@ -1,10 +1,20 @@ package com.mcwl.communityCenter.mapper; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.mcwl.communityCenter.domain.Community; import com.mcwl.communityCenter.domain.CommunityAdvice; +import com.mcwl.communityCenter.domain.dto.CommunityAdvicePageRes; +import com.mcwl.communityCenter.domain.vo.CommunityAdviceVo; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; @Mapper public interface CommunityAdviceMapper extends BaseMapper { + + List getCommunityAdviceList(Page page, + @Param("communityAdvicePageRes") CommunityAdvicePageRes communityAdvicePageRes); } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/IncomeInfoMapper.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/IncomeInfoMapper.java index 1cb7399..b9a2d81 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/IncomeInfoMapper.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/IncomeInfoMapper.java @@ -20,14 +20,15 @@ import java.util.List; public interface IncomeInfoMapper extends BaseMapper { @InterceptorIgnore(tenantLine = "true") - IncomeAmountVo communityIncome(@Param("incomeInfoRes") IncomeInfoRes incomeInfoRes); + IncomeAmountVo communityIncome(@Param("userId") Long userId); @InterceptorIgnore(tenantLine = "true") - IncomeAmountVo questionIncome(@Param("incomeInfoRes") IncomeInfoRes incomeInfoRes); + IncomeAmountVo questionIncome(@Param("userId") Long userId); Double totalIncome(); @InterceptorIgnore(tenantLine = "true") List incomeList(Page page, - @Param("incomeInfoListPageRes") IncomeInfoListPageRes incomeInfoListPageRes); + @Param("incomeInfoListPageRes") IncomeInfoListPageRes incomeInfoListPageRes, + @Param("userId") Long userId); } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityAdviceService.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityAdviceService.java index f4fe6e1..dfefb6a 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityAdviceService.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityAdviceService.java @@ -1,8 +1,13 @@ package com.mcwl.communityCenter.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.mcwl.common.core.page.TableDataInfo; import com.mcwl.communityCenter.domain.Community; import com.mcwl.communityCenter.domain.CommunityAdvice; +import com.mcwl.communityCenter.domain.dto.CommunityAdvicePageRes; + +import javax.validation.Valid; public interface CommunityAdviceService extends IService { + TableDataInfo getCommunityAdviceList(@Valid CommunityAdvicePageRes communityAdvicePageRes); } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/IncomeInfoService.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/IncomeInfoService.java index 46c0fa9..e00acdc 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/IncomeInfoService.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/IncomeInfoService.java @@ -14,7 +14,7 @@ import javax.validation.Valid; public interface IncomeInfoService extends IService { - R communityIncome(@Valid IncomeInfoRes incomeInfoRes); + R communityIncome(); TableDataInfo incomeList(@Valid IncomeInfoListPageRes incomeInfoListPageRes); } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityAdviceServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityAdviceServiceImpl.java index adeaaa8..bbfac8a 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityAdviceServiceImpl.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityAdviceServiceImpl.java @@ -1,17 +1,38 @@ package com.mcwl.communityCenter.service.impl; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mcwl.common.constant.HttpStatus; +import com.mcwl.common.core.page.TableDataInfo; import com.mcwl.communityCenter.domain.Community; import com.mcwl.communityCenter.domain.CommunityAdvice; +import com.mcwl.communityCenter.domain.dto.CommunityAdvicePageRes; +import com.mcwl.communityCenter.domain.vo.CommunityAdviceVo; import com.mcwl.communityCenter.mapper.CommunityAdviceMapper; import com.mcwl.communityCenter.mapper.CommunityMapper; import com.mcwl.communityCenter.service.CommunityAdviceService; import com.mcwl.communityCenter.service.CommunityService; import org.springframework.stereotype.Service; +import java.util.List; + @Service public class CommunityAdviceServiceImpl extends ServiceImpl implements CommunityAdviceService { + @Override + public TableDataInfo getCommunityAdviceList(CommunityAdvicePageRes communityAdvicePageRes) { + Page page = new Page<>(communityAdvicePageRes.getPageNum(), communityAdvicePageRes.getPageSize()); + List communityAdviceList = baseMapper.getCommunityAdviceList(page, communityAdvicePageRes); + + + // 封装分页信息 + TableDataInfo rspData = new TableDataInfo(); + rspData.setCode(HttpStatus.SUCCESS); + rspData.setMsg("查询成功"); + rspData.setRows(communityAdviceList); + rspData.setTotal(page.getTotal()); + return rspData; + } } diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/IncomeInfoServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/IncomeInfoServiceImpl.java index 80299c6..e1d504b 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/IncomeInfoServiceImpl.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/IncomeInfoServiceImpl.java @@ -40,13 +40,13 @@ public class IncomeInfoServiceImpl extends ServiceImpl communityIncome(IncomeInfoRes incomeInfoRes) { + public R communityIncome() { // 社区收益 - IncomeAmountVo communityIncome = baseMapper.communityIncome(incomeInfoRes); + IncomeAmountVo communityIncome = baseMapper.communityIncome(SecurityUtils.getUserId()); // 问答收益 - IncomeAmountVo questionIncome = baseMapper.questionIncome(incomeInfoRes); + IncomeAmountVo questionIncome = baseMapper.questionIncome(SecurityUtils.getUserId()); // 累计收益 Double totalIncome = baseMapper.totalIncome(); @@ -63,8 +63,7 @@ public class IncomeInfoServiceImpl extends ServiceImpl page = this.initPage(incomeInfoListPageRes); - page.addOrder(new OrderItem("ii.create_time", false)); - List incomeInfoList = baseMapper.incomeList(page, incomeInfoListPageRes); + List incomeInfoList = baseMapper.incomeList(page, incomeInfoListPageRes, SecurityUtils.getUserId()); // 封装分页信息 diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java index 9e5aa5a..1d1d4a6 100644 --- a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java @@ -214,7 +214,6 @@ public class PublishServiceImpl extends ServiceImpl impl @Override public TableDataInfo publishList(PublishPageRes publishPageRes) { Page page = this.initPage(publishPageRes); - page.addOrder(new OrderItem("create_time", false)); List publishList = baseMapper.publishList(page, publishPageRes); diff --git a/mcwl-communityCenter/src/main/resources/mapper/communityCenter/CommunityAdviceMapper.xml b/mcwl-communityCenter/src/main/resources/mapper/communityCenter/CommunityAdviceMapper.xml new file mode 100644 index 0000000..981c4bf --- /dev/null +++ b/mcwl-communityCenter/src/main/resources/mapper/communityCenter/CommunityAdviceMapper.xml @@ -0,0 +1,20 @@ + + + + + + + \ No newline at end of file diff --git a/mcwl-communityCenter/src/main/resources/mapper/communityCenter/IncomeInfoMapper.xml b/mcwl-communityCenter/src/main/resources/mapper/communityCenter/IncomeInfoMapper.xml index 06f1a3d..b06cc11 100644 --- a/mcwl-communityCenter/src/main/resources/mapper/communityCenter/IncomeInfoMapper.xml +++ b/mcwl-communityCenter/src/main/resources/mapper/communityCenter/IncomeInfoMapper.xml @@ -6,21 +6,19 @@ @@ -30,18 +28,26 @@ WHERE del_flag = '0' diff --git a/mcwl-communityCenter/src/main/resources/mapper/communityCenter/PublishMapper.xml b/mcwl-communityCenter/src/main/resources/mapper/communityCenter/PublishMapper.xml index 75fbcff..bbbf475 100644 --- a/mcwl-communityCenter/src/main/resources/mapper/communityCenter/PublishMapper.xml +++ b/mcwl-communityCenter/src/main/resources/mapper/communityCenter/PublishMapper.xml @@ -112,6 +112,7 @@ + order by create_time desc