package com.ruoyi.web.controller.system;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ruoyi.common.core.domain.BasePage;
|
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.model.LoginUser;
|
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.framework.web.service.TokenService;
|
import com.ruoyi.system.model.TbMessage;
|
import com.ruoyi.system.model.TbUser;
|
import com.ruoyi.system.query.UserMessageQuery;
|
import com.ruoyi.system.service.TbMessageService;
|
import com.ruoyi.system.service.TbUserService;
|
import com.ruoyi.system.vo.InviteUserListVo;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.ArrayList;
|
|
@Slf4j
|
@RestController
|
@RequestMapping("/message")
|
@Api(tags = "消息模块")
|
public class messageController {
|
|
@Autowired
|
private TbUserService userService;
|
|
@Autowired
|
private TbMessageService messageService;
|
|
@Autowired
|
private TokenService tokenService;
|
|
@ApiOperation(value = "获取用户消息",tags = {"消息模块"})
|
@GetMapping("/getUserMessage")
|
public R<Page<TbMessage>> getUserMessage(UserMessageQuery query) {
|
LoginUser loginUser = tokenService.getLoginUser();
|
Long userId = loginUser.getUserId();
|
Page<TbMessage> page = messageService.page(new Page<>(query.getPageNum(), query.getPageSize()), new LambdaQueryWrapper<TbMessage>().eq(TbMessage::getUserId, userId));
|
return R.ok(page);
|
}
|
|
|
@ApiOperation(value = "消息已读",tags = {"消息模块"})
|
@PostMapping("/readMessage")
|
public R<?> readMessage(String id) {
|
LoginUser loginUser = tokenService.getLoginUser();
|
Long userId = loginUser.getUserId();
|
TbMessage message = messageService.getById(id);
|
if(!message.getUserId().equals(userId.toString())){
|
return R.fail("无权限");
|
}
|
message.setIsRead(1);
|
messageService.updateById(message);
|
return R.ok();
|
}
|
|
@ApiOperation(value = "账号注销",tags = {"账号注销"})
|
@GetMapping("/accountCancellation")
|
public R<?> accountCancellation() {
|
LoginUser loginUser = tokenService.getLoginUser();
|
Long userId = loginUser.getUserId();
|
TbUser user = userService.getById(userId);
|
user.setStatus(3);
|
userService.updateById(user);
|
return R.ok(user);
|
}
|
|
|
|
// @ApiOperation(value = "分享有礼列表",tags = {"分享有礼列表"})
|
// @GetMapping("/getInviteUserList")
|
// public R<Page<InviteUserListVo>> getInviteUserList(BasePage page) {
|
// LoginUser loginUser = tokenService.getLoginUser();
|
// Long userId = loginUser.getUserId();
|
// Page<TbUser> page1 = userService.page(new Page<>(page.getPageNum(), page.getPageSize()), new LambdaQueryWrapper<TbUser>().eq(TbUser::getInviteId, userId).orderByDesc(TbUser::getCreateTime));
|
// Page<InviteUserListVo> inviteUserListVoPage = new Page<>();
|
// if(page1.getRecords().isEmpty()){
|
// return R.ok(inviteUserListVoPage);
|
// }
|
// ArrayList<InviteUserListVo> inviteUserListVos = new ArrayList<>();
|
// for (TbUser record : page1.getRecords()) {
|
// InviteUserListVo inviteUserListVo = new InviteUserListVo();
|
// inviteUserListVo.setUsername(record.getUserName());
|
// inviteUserListVo.setCreateTime(record.getCreateTime());
|
// inviteUserListVo.setInviteNum(record.getInviteNum());
|
// inviteUserListVos.add(inviteUserListVo);
|
// }
|
// BeanUtils.copyProperties(page1,inviteUserListVoPage);
|
// inviteUserListVoPage.setRecords(inviteUserListVos);
|
// return R.ok(inviteUserListVoPage);
|
// }
|
|
|
}
|