You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.2 KiB
66 lines
2.2 KiB
package com.example.demo.controller;
|
|
|
|
import com.example.demo.Util.JWTUtil;
|
|
import com.example.demo.Util.TokenPayload;
|
|
import com.example.demo.domain.entity.Admin;
|
|
import com.example.demo.domain.vo.Result;
|
|
import com.example.demo.service.AdminService;
|
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.security.core.userdetails.UserDetails;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
/**
|
|
* @program: GOLD
|
|
* @ClassName AdminController
|
|
* @description:
|
|
* @author: huangqizhen
|
|
* @create: 2025−07-01 10:39
|
|
* @Version 1.0
|
|
**/
|
|
@RestController
|
|
@RequestMapping("/admin")
|
|
@RequiredArgsConstructor
|
|
@Slf4j
|
|
@CrossOrigin
|
|
public class AdminController {
|
|
@Autowired
|
|
private AdminService adminService;
|
|
@PostMapping("/login")
|
|
public Result login(@RequestBody Admin admin) {
|
|
|
|
try {
|
|
admin = adminService.login(admin);
|
|
String token = JWTUtil.createJWT(admin);
|
|
System.out.println( token);
|
|
admin.setPassword(null);
|
|
return Result.success(token,admin);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
log.error(e.getMessage());
|
|
return Result.error(e.getMessage());
|
|
}
|
|
}
|
|
@PostMapping("/userinfo")
|
|
public UserDetails getUserInfo(@RequestBody String requestBody) {
|
|
ObjectMapper objectMapper = new ObjectMapper();
|
|
TokenPayload token1;
|
|
try {
|
|
token1 = objectMapper.readValue(requestBody, TokenPayload.class);
|
|
} catch (JsonProcessingException e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
String token = token1.getToken();
|
|
|
|
System.out.println("1/*/*/*/*//*-*-*-*-*-*-1" +token);
|
|
try {
|
|
System.out.println("/+/+/+/+/+/+/+//" + JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class));
|
|
return JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class);
|
|
} catch (Exception e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
}
|
|
}
|