forked from AcaMate/AcaMate_API
[🐛] user/academy API EF 로직 수정
This commit is contained in:
parent
4e7130ea63
commit
6ef2a32d24
|
@ -28,6 +28,8 @@ namespace Back.Program.Controllers.V1
|
||||||
private readonly ILogger<UserController> _logger = logger;
|
private readonly ILogger<UserController> _logger = logger;
|
||||||
private readonly SessionManager _sessionManager = sessionManager;
|
private readonly SessionManager _sessionManager = sessionManager;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
[CustomOperation("회원 정보 조회", "회원 정보 조회 (자기자신)", "사용자")]
|
[CustomOperation("회원 정보 조회", "회원 정보 조회 (자기자신)", "사용자")]
|
||||||
public async Task<IActionResult> GetUserData(string token)
|
public async Task<IActionResult> GetUserData(string token)
|
||||||
|
@ -35,18 +37,19 @@ namespace Back.Program.Controllers.V1
|
||||||
if (string.IsNullOrEmpty(token)) return BadRequest(APIResponse.InvalidInputError());
|
if (string.IsNullOrEmpty(token)) return BadRequest(APIResponse.InvalidInputError());
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
string summary = repositoryService.ReadSummary(typeof(UserController), "GetUserData");
|
string summary = repositoryService.ReadSummary(typeof(UserController), "GetUserData");
|
||||||
|
|
||||||
if (token == "VO00")
|
if (token == "VO00")
|
||||||
{
|
{
|
||||||
var (code, WebAuthResult) = await dedicateWeb.GetAuthToken();
|
var (code, WebAuthResult) = await dedicateWeb.GetAuthToken();
|
||||||
if (code != "000") return Ok(APIResponse.Send(code, $"{WebAuthResult}", new { }));
|
if (code != "000") return Ok(APIResponse.Send(code, $"{WebAuthResult}", new { }));
|
||||||
token = WebAuthResult;
|
token = WebAuthResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
var result = await userService.GetUser(summary, token);
|
var result = await userService.GetUser(summary, token);
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[HttpGet("login")]
|
[HttpGet("login")]
|
||||||
[CustomOperation("SNS 로그인", "로그인 후 회원이 있는지 확인", "사용자")]
|
[CustomOperation("SNS 로그인", "로그인 후 회원이 있는지 확인", "사용자")]
|
||||||
public async Task<IActionResult> Login(string accType, string snsId)
|
public async Task<IActionResult> Login(string accType, string snsId)
|
||||||
|
@ -54,20 +57,19 @@ namespace Back.Program.Controllers.V1
|
||||||
// API 동작 파라미터 입력 값 확인
|
// API 동작 파라미터 입력 값 확인
|
||||||
if (string.IsNullOrEmpty(accType) && string.IsNullOrEmpty(snsId)) return BadRequest(APIResponse.InvalidInputError());
|
if (string.IsNullOrEmpty(accType) && string.IsNullOrEmpty(snsId)) return BadRequest(APIResponse.InvalidInputError());
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
|
|
||||||
string summary = repositoryService.ReadSummary(typeof(UserController), "Login");
|
string summary = repositoryService.ReadSummary(typeof(UserController), "Login");
|
||||||
var result = await userService.Login(summary, accType, snsId);
|
var result = await userService.Login(summary, accType, snsId);
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[HttpPost("register")]
|
[HttpPost("register")]
|
||||||
[CustomOperation("회원 가입", "사용자 회원 가입", "사용자")]
|
[CustomOperation("회원 가입", "사용자 회원 가입", "사용자")]
|
||||||
public async Task<IActionResult> UserRegister([FromBody] UserAll request)
|
public async Task<IActionResult> UserRegister([FromBody] UserAll request)
|
||||||
{
|
{
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
string summary = repositoryService.ReadSummary(typeof(UserController), "UserRegister");
|
string summary = repositoryService.ReadSummary(typeof(UserController), "UserRegister");
|
||||||
|
|
||||||
var result = await userService.Register(summary, request);
|
var result = await userService.Register(summary, request);
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
@ -80,6 +82,13 @@ namespace Back.Program.Controllers.V1
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
string summary = repositoryService.ReadSummary(typeof(UserController), "Logout");
|
string summary = repositoryService.ReadSummary(typeof(UserController), "Logout");
|
||||||
|
|
||||||
|
if (token == "VO00")
|
||||||
|
{
|
||||||
|
var (code, WebAuthResult) = await dedicateWeb.GetAuthToken();
|
||||||
|
if (code != "000") return Ok(APIResponse.Send(code, $"{WebAuthResult}", new { }));
|
||||||
|
token = WebAuthResult;
|
||||||
|
}
|
||||||
|
|
||||||
var result = await userService.Logout(summary, token);
|
var result = await userService.Logout(summary, token);
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
@ -92,79 +101,93 @@ namespace Back.Program.Controllers.V1
|
||||||
if (string.IsNullOrEmpty(token)) return BadRequest(APIResponse.InvalidInputError());
|
if (string.IsNullOrEmpty(token)) return BadRequest(APIResponse.InvalidInputError());
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
string summary = repositoryService.ReadSummary(typeof(UserController), "Cancel");
|
string summary = repositoryService.ReadSummary(typeof(UserController), "Cancel");
|
||||||
|
|
||||||
|
if (token == "VO00")
|
||||||
|
{
|
||||||
|
var (code, WebAuthResult) = await dedicateWeb.GetAuthToken();
|
||||||
|
if (code != "000") return Ok(APIResponse.Send(code, $"{WebAuthResult}", new { }));
|
||||||
|
token = WebAuthResult;
|
||||||
|
}
|
||||||
|
|
||||||
var result = await userService.Cancel(summary, token);
|
var result = await userService.Cancel(summary, token);
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[HttpGet("academy")]
|
[HttpGet("academy")]
|
||||||
[CustomOperation("학원 리스트 확인", "사용자가 등록된 학원 리스트 확인", "사용자")]
|
[CustomOperation("학원 리스트 확인", "사용자가 등록된 학원 리스트 확인", "사용자")]
|
||||||
public async Task<IActionResult> GetAcademyData(string token)
|
public async Task<IActionResult> GetAcademyData(string token)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(token)) return BadRequest(APIResponse.InvalidInputError());
|
if (string.IsNullOrEmpty(token)) return BadRequest(APIResponse.InvalidInputError());
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
string summary = repositoryService.ReadSummary(typeof(UserController), "ReadAcademyInfo");
|
string summary = repositoryService.ReadSummary(typeof(UserController), "GetAcademyData");
|
||||||
|
|
||||||
|
if (token == "VO00")
|
||||||
|
{
|
||||||
|
var (code, WebAuthResult) = await dedicateWeb.GetAuthToken();
|
||||||
|
if (code != "000") return Ok(APIResponse.Send(code, $"{WebAuthResult}", new { }));
|
||||||
|
token = WebAuthResult;
|
||||||
|
}
|
||||||
|
|
||||||
var result = await userService.GetAcademy(summary, token);
|
var result = await userService.GetAcademy(summary, token);
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 근데 회원 정보를 변경하는게 뭐뭐를 변경해야 하는지 아직 정해진게 없어서 이건 일단 보류
|
// 근데 회원 정보를 변경하는게 뭐뭐를 변경해야 하는지 아직 정해진게 없어서 이건 일단 보류
|
||||||
/*
|
/*
|
||||||
[HttpGet("set")]
|
[HttpGet("set")]
|
||||||
[CustomOperation("회원 정보 변경", "회원 정보 변경", "사혹자")]
|
[CustomOperation("회원 정보 변경", "회원 정보 변경", "사혹자")]
|
||||||
public async Task<IActionResult> SetUserData(string token, string refresh) //, [FromBody])
|
public async Task<IActionResult> SetUserData(string token, string refresh) //, [FromBody])
|
||||||
|
{
|
||||||
|
if (string.IsNullOrEmpty(token) || string.IsNullOrEmpty(refresh))
|
||||||
|
return BadRequest(APIResponse.InvalidInputError());
|
||||||
|
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
|
string summary = String.Empty;
|
||||||
|
|
||||||
|
try
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(token) || string.IsNullOrEmpty(refresh))
|
summary = _repositoryService.ReadSummary(typeof(UserController), "Cancel");
|
||||||
return BadRequest(APIResponse.InvalidInputError());
|
|
||||||
if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
|
||||||
string summary = String.Empty;
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
summary = _repositoryService.ReadSummary(typeof(UserController), "Cancel");
|
|
||||||
|
|
||||||
|
|
||||||
// 여기서 애초에 토큰 관련 에러가 2개가 나오게 만들어져 있음
|
// 여기서 애초에 토큰 관련 에러가 2개가 나오게 만들어져 있음
|
||||||
var validateToken = await _repositoryService.ValidateToken(token, refresh);
|
var validateToken = await _repositoryService.ValidateToken(token, refresh);
|
||||||
var user = await _dbContext.User.FirstOrDefaultAsync(u => u.uid == validateToken.uid);
|
var user = await _dbContext.User.FirstOrDefaultAsync(u => u.uid == validateToken.uid);
|
||||||
|
|
||||||
}
|
|
||||||
catch (TokenException tokenEx)
|
|
||||||
{
|
|
||||||
return Ok(APIResponse.Send("101", $"[{summary}], 입력 받은 토큰의 문제", Empty));
|
|
||||||
}
|
|
||||||
catch (RefreshRevokeException refreshEx)
|
|
||||||
{
|
|
||||||
return Ok(APIResponse.Send("102", $"[{summary}], 폐기된 리프레시 토큰", Empty));
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
return StatusCode(500, APIResponse.UnknownError($"[{summary}], {ex.Message}"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
catch (TokenException tokenEx)
|
||||||
|
{
|
||||||
|
return Ok(APIResponse.Send("101", $"[{summary}], 입력 받은 토큰의 문제", Empty));
|
||||||
|
}
|
||||||
|
catch (RefreshRevokeException refreshEx)
|
||||||
|
{
|
||||||
|
return Ok(APIResponse.Send("102", $"[{summary}], 폐기된 리프레시 토큰", Empty));
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
return StatusCode(500, APIResponse.UnknownError($"[{summary}], {ex.Message}"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
string uid = "";
|
string uid = "";
|
||||||
if (token == "System") uid = "System";
|
if (token == "System") uid = "System";
|
||||||
else {
|
else {
|
||||||
if (string.IsNullOrEmpty(token) || string.IsNullOrEmpty(refresh)) return BadRequest(APIResponse.InvalidInputError());
|
if (string.IsNullOrEmpty(token) || string.IsNullOrEmpty(refresh)) return BadRequest(APIResponse.InvalidInputError());
|
||||||
if(!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
if(!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError());
|
||||||
|
|
||||||
var validateToken = await _repositoryService.ValidateToken(token, refresh);
|
|
||||||
uid = validateToken.uid;
|
|
||||||
}
|
|
||||||
|
|
||||||
string summary = String.Empty;
|
var validateToken = await _repositoryService.ValidateToken(token, refresh);
|
||||||
try
|
uid = validateToken.uid;
|
||||||
{
|
}
|
||||||
summary = _repositoryService.ReadSummary(typeof(PushController), "GetUserData");
|
|
||||||
}
|
string summary = String.Empty;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
summary = _repositoryService.ReadSummary(typeof(PushController), "GetUserData");
|
||||||
|
}
|
||||||
*/
|
*/
|
|
@ -34,7 +34,7 @@ namespace Back.Program.Repositories.V1
|
||||||
public Task<List<AcademyName>> FindAcademies(string uid)
|
public Task<List<AcademyName>> FindAcademies(string uid)
|
||||||
{
|
{
|
||||||
var academyList = _context.UserAcademy
|
var academyList = _context.UserAcademy
|
||||||
.Join(_context.Academy, ua => ua.uid, a => a.uid, (ua, a) => new { ua, a })
|
.Join(_context.Academy, ua => ua.bid, a => a.bid, (ua, a) => new { ua, a })
|
||||||
.Where(s => s.ua.uid == uid)
|
.Where(s => s.ua.uid == uid)
|
||||||
.Select(s => new AcademyName { bid = s.a.bid, name = s.a.business_name })
|
.Select(s => new AcademyName { bid = s.a.bid, name = s.a.business_name })
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
|
@ -236,10 +236,8 @@ namespace Back.Program.Services.V1
|
||||||
var uid = validToken.FindFirst(ClaimTypes.NameIdentifier)?.Value ?? string.Empty;
|
var uid = validToken.FindFirst(ClaimTypes.NameIdentifier)?.Value ?? string.Empty;
|
||||||
var user = await _userRepository.FindUser(uid);
|
var user = await _userRepository.FindUser(uid);
|
||||||
if (user == null) return APIResponse.Send<object>("001", $"[{summary}], 회원 정보 확인 오류", new { });
|
if (user == null) return APIResponse.Send<object>("001", $"[{summary}], 회원 정보 확인 오류", new { });
|
||||||
|
|
||||||
var academyList = await _userRepository.FindAcademies(uid);
|
var academyList = await _userRepository.FindAcademies(uid);
|
||||||
|
_logger.LogInformation($"[{summary}]: 성공 - {System.Text.Json.JsonSerializer.Serialize(academyList)}");
|
||||||
_logger.LogInformation($"[{summary}]: 성공");
|
|
||||||
return APIResponse.Send<object>("000", $"[{summary}], 정상.", academyList);
|
return APIResponse.Send<object>("000", $"[{summary}], 정상.", academyList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user