From ea1a62ba6484d6c6cb1ca67dcea938a95ba18fc6 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期一, 26 五月 2025 18:26:26 +0800 Subject: [PATCH] 新增加用户端接口 --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/miniapp/AppMemberController.java | 149 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 134 insertions(+), 15 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/miniapp/AppMemberController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/miniapp/AppMemberController.java index b0a0247..1533e98 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/miniapp/AppMemberController.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/miniapp/AppMemberController.java @@ -1,21 +1,32 @@ package com.ruoyi.member.controller.miniapp; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.utils.SecurityUtils; -import com.ruoyi.member.domain.dto.AppUserAuthorizeDto; -import com.ruoyi.member.domain.vo.AppUserAuthorizeVo; +import com.ruoyi.member.domain.dto.AppMemberBrowseDto; +import com.ruoyi.member.domain.vo.AppBirthdayCardVo; +import com.ruoyi.member.domain.vo.AppMemberPrizePageVo; +import com.ruoyi.member.domain.vo.AppSuggestPageVo; import com.ruoyi.member.domain.vo.AppUserInfoVo; +import com.ruoyi.member.service.birthday.BirthdayCardService; +import com.ruoyi.member.service.member.BrowseRecordService; import com.ruoyi.member.service.member.MemberService; -import com.ruoyi.system.api.domain.dto.AppEditUserDto; +import com.ruoyi.member.service.member.MemberSuggestService; +import com.ruoyi.system.api.constant.AppErrorConstant; +import com.ruoyi.system.api.domain.dto.*; import com.ruoyi.system.api.domain.poji.member.Member; -import com.ruoyi.system.api.domain.poji.sys.SysUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.time.LocalDate; +import java.util.List; /** * @author jqs34 @@ -24,23 +35,23 @@ * @date 2023年04月19日 * @version: 1.0 */ -@Api(value = "小程序配置相关接口", tags = "小程序配置相关接口", description = "小程序配置相关接口") +@Api(value = "小程序会员相关接口", tags = "小程序会员相关接口", description = "小程序会员相关接口") @RestController @RequestMapping("/app/member") public class AppMemberController { - @Autowired + @Resource private MemberService memberService; + @Resource + private MemberSuggestService memberSuggestService; - @RequestMapping(value = "/getAppUserAuthorize", method = RequestMethod.POST) - @ApiOperation(value = "获取用户授权信息") - public R<AppUserAuthorizeVo> getAppUserAuthorize(@RequestBody AppUserAuthorizeDto appUserAuthorizeDto) { - Long userId = SecurityUtils.getUserId(); - appUserAuthorizeDto.setUserId(userId); - AppUserAuthorizeVo appUserAuthorizeVo = memberService.getAppUserAuthorize(appUserAuthorizeDto); - return R.ok(appUserAuthorizeVo); - } + @Resource + private BirthdayCardService birthdayCardService; + + @Resource + private BrowseRecordService browseRecordService; + @RequestMapping(value = "/getAppUserInfo", method = RequestMethod.POST) @ApiOperation(value = "获取用户信息") @@ -59,4 +70,112 @@ return R.ok(); } + @RequestMapping(value = "/pageAppUserSuggest", method = RequestMethod.POST) + @ApiOperation(value = "分页获取用户建议列表") + public R<Page<AppSuggestPageVo>> pageAppUserSuggest(@RequestBody AppSuggestPageDto appSuggestPageDto) { + Long userId = SecurityUtils.getUserId(); + appSuggestPageDto.setUserId(userId); + Page<AppSuggestPageVo> page = new Page<>(); + page.setSize(appSuggestPageDto.getPageSize()); + page.setCurrent(appSuggestPageDto.getPageNum()); + List<AppSuggestPageVo> appSuggestPageVoList = memberSuggestService.pageAppUserSuggest(page,appSuggestPageDto); + return R.ok(page.setRecords(appSuggestPageVoList)); + } + + @RequestMapping(value = "/userSuggest", method = RequestMethod.POST) + @ApiOperation(value = "用户发起建议") + public R userSuggest(@RequestBody AppUserSuggestDto appUserSuggestDto) { + Long userId = SecurityUtils.getUserId(); + appUserSuggestDto.setUserId(userId); + memberSuggestService.userSuggest(appUserSuggestDto); + IntegralChangeDto integralChangeDto = new IntegralChangeDto(); + if(appUserSuggestDto.getSuggestType()==1){ + integralChangeDto.setIntegralType(2); + }else{ + integralChangeDto.setIntegralType(3); + } + integralChangeDto.setUserId(userId); + memberService.changeIntegral(integralChangeDto); + return R.ok(); + } + + @RequestMapping(value = "/getUserBirthdayCard", method = RequestMethod.POST) + @ApiOperation(value = "获取用户生日卡信息") + public R<AppBirthdayCardVo> getUserBirthdayCard() { + Long userId = SecurityUtils.getUserId(); + Member member = memberService.getByUserId(userId); + AppBirthdayCardVo appBirthdayCardVo = new AppBirthdayCardVo(); + appBirthdayCardVo.setCheckBirthdayCard(0); + Integer check = birthdayCardService.checkBirthdayCard(member.getRelationShopId(),member.getBindingFlag()); + if(check==1){ + appBirthdayCardVo.setCheckBirthdayCard(1); + if(StringUtils.isNotBlank(member.getBirthday())){ + appBirthdayCardVo.setHaveBirthdayFlag(1); + String birthday = member.getBirthday(); + LocalDate today = LocalDate.now(); + int birthdayMonth = Integer.parseInt(birthday.split("-")[1]); + int todayMonth = today.getMonthValue(); + if (birthdayMonth == todayMonth) { + appBirthdayCardVo = birthdayCardService.getUserBirthdayCard(userId,member.getRelationShopId()); + appBirthdayCardVo.setCheckBirthdayCard(1); + appBirthdayCardVo.setHaveBirthdayFlag(1); + appBirthdayCardVo.setInBirthdayFlag(1); + } else { + appBirthdayCardVo.setHaveBirthdayFlag(1); + appBirthdayCardVo.setInBirthdayFlag(0); + } + }else{ + appBirthdayCardVo.setHaveBirthdayFlag(0); + } + } + + return R.ok(appBirthdayCardVo); + } + + @RequestMapping(value = "/getBirthdayGift", method = RequestMethod.POST) + @ApiOperation(value = "领取生日礼包") + public R<AppBirthdayCardVo> getBirthdayGift() { + Long userId = SecurityUtils.getUserId(); + Member member = memberService.getByUserId(userId); + AppBirthdayCardVo appBirthdayCardVo = new AppBirthdayCardVo(); + if(StringUtils.isNotBlank(member.getBirthday())){ + appBirthdayCardVo.setHaveBirthdayFlag(1); + String birthday = member.getBirthday(); + LocalDate today = LocalDate.now(); + int birthdayMonth = Integer.parseInt(birthday.split("-")[1]); + int todayMonth = today.getMonthValue(); + if (birthdayMonth == todayMonth) { + appBirthdayCardVo = birthdayCardService.getBirthdayGift(userId,member.getRelationShopId()); + appBirthdayCardVo.setHaveBirthdayFlag(1); + appBirthdayCardVo.setInBirthdayFlag(1); + } else { + throw new ServiceException(AppErrorConstant.BIRTHDAY_ERROR); + } + }else{ + throw new ServiceException(AppErrorConstant.BIRTHDAY_NULL); + } + return R.ok(appBirthdayCardVo); + } + + @RequestMapping(value = "/pageAppMemberPrize", method = RequestMethod.POST) + @ApiOperation(value = "分页获取用户奖品列表") + public R<Page<AppMemberPrizePageVo>> pageAppMemberPrize(@RequestBody AppPageDto appPageDto) { + Long userId = SecurityUtils.getUserId(); + appPageDto.setUserId(userId); + Page<AppMemberPrizePageVo> page = new Page<>(); + page.setSize(appPageDto.getPageSize()); + page.setCurrent(appPageDto.getPageNum()); + List<AppMemberPrizePageVo> memberPrizePageVoList = birthdayCardService.pageAppMemberPrize(page,userId); + return R.ok(page.setRecords(memberPrizePageVoList)); + } + + + @RequestMapping(value = "/browseRecord", method = RequestMethod.POST) + @ApiOperation(value = "浏览记录") + public R browseRecord(@RequestBody AppMemberBrowseDto appMemberBrowseDto) { + Long userId = SecurityUtils.getUserId(); + appMemberBrowseDto.setUserId(userId); + browseRecordService.browseRecord(appMemberBrowseDto); + return R.ok(); + } } -- Gitblit v1.7.1