71 lines
2.5 KiB
Java
71 lines
2.5 KiB
Java
package com.ai.da.controller;
|
|
|
|
import com.ai.da.common.response.Response;
|
|
import com.ai.da.common.security.jwt.JWTTokenHelper;
|
|
import com.ai.da.model.dto.*;
|
|
import com.ai.da.model.vo.AccountLoginVO;
|
|
import com.ai.da.model.vo.AccountPreLoginVO;
|
|
import com.ai.da.service.AccountService;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.validation.Valid;
|
|
|
|
|
|
@Api(tags = "Account模块")
|
|
@Slf4j
|
|
@RestController
|
|
@RequestMapping("/api/account")
|
|
public class AccountController {
|
|
|
|
@Resource
|
|
private AccountService accountService;
|
|
|
|
@ApiOperation(value = "预先登入")
|
|
@PostMapping("/preLogin")
|
|
public Response<AccountPreLoginVO> preLogin(@Valid @RequestBody AccountPreLoginDTO accountDTO) {
|
|
return Response.success(accountService.preLogin(accountDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "登入")
|
|
@PostMapping("/login")
|
|
public Response<AccountLoginVO> login(@Valid @RequestBody AccountLoginDTO accountDTO, HttpServletRequest request) {
|
|
return Response.success(accountService.login(accountDTO, request));
|
|
}
|
|
|
|
@ApiOperation(value = "绑定邮箱")
|
|
@PostMapping("/bindEmail")
|
|
public Response<Boolean> bindEmail(@Valid @RequestBody AccountBindEmailDTO accountBindEmailDTO) {
|
|
return Response.success(accountService.bindEmail(accountBindEmailDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "忘记密码")
|
|
@PostMapping("/resetPwd")
|
|
public Response<Boolean> resetPwd(@Valid @RequestBody AccountRegisterDTO accountRegisterDTO) {
|
|
return Response.success(accountService.forgetPwd(accountRegisterDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "发送邮件")
|
|
@PostMapping("/sendEmail")
|
|
public Response<Boolean> sendEmail(@Valid @RequestBody EmailSendDTO emailSendDTO) {
|
|
return Response.success(accountService.sendEmail(emailSendDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "登出")
|
|
@PostMapping("/logout")
|
|
public Response<Boolean> logout(@Valid @RequestBody AccountLogoutDTO accountLogoutDTO) {
|
|
return Response.success(accountService.logout(accountLogoutDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "是否登入")
|
|
@PostMapping("/isLogin")
|
|
public Response<Boolean> isLogin(@Valid @RequestBody AccountLogoutDTO accountLogoutDTO) {
|
|
return Response.success(accountService.isLogin(accountLogoutDTO));
|
|
}
|
|
|
|
}
|