package com.panzhihua.sangeshenbian.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.sangeshenbian.model.entity.Banner; import com.panzhihua.sangeshenbian.model.query.BasePage; import com.panzhihua.sangeshenbian.model.vo.ComplaintTodoVO; import com.panzhihua.sangeshenbian.model.vo.MessageNotificationVO; import com.panzhihua.sangeshenbian.model.vo.PartyCardInfoVO; import com.panzhihua.sangeshenbian.service.IBannerService; import com.panzhihua.sangeshenbian.service.IComplaintService; import com.panzhihua.sangeshenbian.service.IMessageNotificationService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; 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 java.util.List; /** * @author mitao * @date 2025/2/23 */ @RestController @RequestMapping("/applet/home") @RequiredArgsConstructor @Api(tags = "首页相关接口") public class HomeController extends BaseController { private final IBannerService bannerService; private final IMessageNotificationService messageNotificationService; private final IComplaintService complaintService; @ApiOperation("获取banner列表") @GetMapping("/banner-list") public R> getBannerList() { return R.ok(bannerService.list()); } @GetMapping("/party-card-info") @ApiOperation("获取党员证信息") public R getPartyCardInfo() { LoginUserInfoVO loginUserInfo = getLoginUserInfo(); PartyCardInfoVO partyCardInfoVO = new PartyCardInfoVO(); partyCardInfoVO.setName(loginUserInfo.getName()); partyCardInfoVO.setIdCard(loginUserInfo.getIdCard()); partyCardInfoVO.setPartyOrganization(loginUserInfo.getCommunityName()); return R.ok(partyCardInfoVO); } @PostMapping("/message") @ApiOperation("获取消息列表") public R> getMessageList(@RequestBody BasePage page) { return R.ok(messageNotificationService.getMessageList(page,getUserId())); } @PostMapping("/todo-list") @ApiOperation("获取待办诉求") public R> getTodoList(@RequestBody BasePage page) { return R.ok(complaintService.getTodoList(page,getLoginUserInfo())); } }