diff --git a/Program/V1/Controllers/PushController.cs b/Program/V1/Controllers/PushController.cs index 3a348d2..91ec2b8 100644 --- a/Program/V1/Controllers/PushController.cs +++ b/Program/V1/Controllers/PushController.cs @@ -33,49 +33,35 @@ public class PushController : ControllerBase [HttpGet()] [CustomOperation("푸시 확인", "저장된 양식을 확인 할 수 있다.", "푸시")] + [ProducesResponseType(StatusCodes.Status200OK, Type = typeof(APIResponseStatus))] public async Task GetPush(string bid, string? pid, string? category) { - if (!(await _dbContext.Academy.AnyAsync(a=>a.bid == bid))) - return Ok(APIResponse.Send("100", "존재하지 않는 BID", Empty)); - - List pushData = new List(); - - if (pid == null && category == null) - { - pushData = await _dbContext.DBPayload - .Where(p => p.bid == bid) - .ToListAsync(); - } - else if (pid != null && category == null) - { - pushData = await _dbContext.DBPayload - .Where(p => p.bid == bid && p.pid == pid) - .ToListAsync(); - } - else if (pid == null && category != null) - { - pushData = await _dbContext.DBPayload - .Where(p => p.bid == bid && p.category == category) - .ToListAsync(); - } - else //if (pid != null && category != null) - { - pushData = await _dbContext.DBPayload - .Where(p => p.bid == bid && p.pid == pid && p.category == category) - .ToListAsync(); - } + string summary = String.Empty; try - { + { + summary = _repositoryService.ReadSummary(typeof(PushController), "GetPush"); + + if (!(await _dbContext.Academy.AnyAsync(a=>a.bid == bid))) + return Ok(APIResponse.Send("100", $"[{summary}], 존재하지 않는 BID", Empty)); + + List pushData = new List(); + var pushQuery = _dbContext.DBPayload.Where(p => p.bid == bid); + if (pid != null) + pushQuery = pushQuery.Where(p=>p.pid == pid); + if (category != null) + pushQuery = pushQuery.Where(p=>p.category == category); + pushData = await pushQuery.ToListAsync(); + if (pushData.Count > 0) { - return Ok(APIResponse.Send("000", "정상", pushData)); + return Ok(APIResponse.Send("000", $"[{summary}, 정상", pushData)); } - return Ok(APIResponse.Send("001", "PUSH 데이터가 없음", Empty)); + return Ok(APIResponse.Send("001", $"[{summary}], PUSH 데이터 없음", Empty)); } catch (Exception ex) { - _logger.LogError($"[푸시] {ex.Message}"); + _logger.LogError($"[{summary}] : {ex.Message}"); return StatusCode(500, APIResponse.UnknownError()); } } @@ -180,33 +166,30 @@ public class PushController : ControllerBase } }); - - return Ok(APIResponse.Send("000", "정상", Empty)); - + return Ok(APIResponse.Send("000", $"[{summary}], 정상", Empty)); } catch (PushInvalidException ex) { - _logger.LogError(ex.Message); - return Ok(APIResponse.Send("001", $"[{summary}]: 푸시 송신 중 문제 발생",Empty)); + _logger.LogError($"[{summary}] : {ex.Message}"); + return Ok(APIResponse.Send("001", $"[{summary}], 푸시 송신 중 문제 발생",Empty)); } catch (Exception ex) { - _logger.LogError($"[푸시] {ex.Message}"); + _logger.LogError($"[{summary}] : {ex.Message}"); return StatusCode(500, APIResponse.UnknownError()); } } [HttpPost("set")] - [CustomOperation("[푸시 변경]", "저장된 양식을 변경한다.", "푸시")] + [CustomOperation("푸시 변경", "저장된 양식을 변경한다.", "푸시")] [ProducesResponseType(StatusCodes.Status200OK, Type = typeof(APIResponseStatus))] public async Task SetPush([FromBody] DBPayload request) { - - if (!ModelState.IsValid) return BadRequest(APIResponse.InvalidInputError()); - try - { + string summary = String.Empty; + try { + summary = _repositoryService.ReadSummary(typeof(PushController), "SetPush"); var dbPayload = await _dbContext.DBPayload .FirstOrDefaultAsync(p => p.pid == request.pid && p.bid == request.bid); @@ -218,16 +201,16 @@ public class PushController : ControllerBase if (dbPayload.alert_yn != request.alert_yn) dbPayload.alert_yn = request.alert_yn; if (dbPayload.category != request.category && request.category != "") dbPayload.category = request.category; if (dbPayload.content != request.content) dbPayload.content = request.content; - // if (await _repositoryService.SaveData(dbPayload, p => p.pid)) if (await _repositoryService.SaveData(dbPayload)) - return Ok(APIResponse.Send("000", "[푸시 변경] : PUSH 정보 변경 완료", Empty)); + return Ok(APIResponse.Send("000", $"[{summary}], 정상", Empty)); + // TODO - 로그 추가 } - return Ok(APIResponse.Send("100", "PID, BID 또는 Cabinet 오류", Empty)); + return Ok(APIResponse.Send("100", $"[{summary}], PID, BID 또는 Cabinet 오류", Empty)); } catch (Exception ex) { - _logger.LogError($"[푸시] {ex.Message}"); + _logger.LogError($"[{summary}] : {ex.Message}"); return StatusCode(500, APIResponse.UnknownError()); } } @@ -277,32 +260,32 @@ public class PushController : ControllerBase pid = payload.pid, create_uid = uid, create_date = DateTime.Now, - log = $"[{summary}] {payload.pid} 최초 생성 - {uid}" + log = $"[{summary}] : {payload.pid} 최초 생성 - {uid}" }; // 로그를 이제 만들어서 추가를 해야 합니다. if (await _repositoryService.SaveData(logPush)) - _logger.LogInformation("[푸시 생성] 로그 추가"); + _logger.LogInformation($"[{summary}] : 로그 추가"); - return Ok(APIResponse.Send("000", "정상, push 저장 완료", Empty)); + return Ok(APIResponse.Send("000", $"[{summary}], 정상", Empty)); } } - return Ok(APIResponse.Send("100", "학원 정보(BID) 확인 불가", Empty)); + return Ok(APIResponse.Send("100", $"[{summary}], 학원 정보(BID) 확인 불가", Empty)); } catch (TokenException tokenEx) { - _logger.LogInformation($"[푸시 생성] : {tokenEx}"); - return Ok(APIResponse.Send("001", "[푸시 생성] : 토큰에 문제가 있음",Empty)); + _logger.LogInformation($"[{summary}] : {tokenEx}"); + return Ok(APIResponse.Send("001", $"[{summary}], 토큰에 문제가 있음",Empty)); } catch (RefreshRevokeException refreshEx) { - _logger.LogInformation($"[푸시 생성] : {refreshEx}"); - return Ok(APIResponse.Send("001", "[푸시 생성] : 폐기된 리프레시 토큰",Empty)); + _logger.LogInformation($"[{summary}] : {refreshEx}"); + return Ok(APIResponse.Send("001", $"[{summary}], 폐기된 리프레시 토큰",Empty)); } catch (Exception ex) { - _logger.LogError($"[푸시] {ex.Message}"); + _logger.LogError($"[{summary}] : {ex.Message}"); return StatusCode(500, APIResponse.UnknownError()); } }