public async Task <Response> UpsertTag(UpsertTagCmd request) { if (!string.IsNullOrEmpty(request.Id)) { var item = await _context.Tags.SingleOrDefaultAsync(x => x.Id == request.Id); if (item == null) { throw new BusinessLogicException("رکوردی یافت نشد"); } item.Title = request.Title; _context.Tags.Update(item); } else { var item = new Tag { Id = Guid.NewGuid().ToString(), Title = request.Title, CreatedAt = DateTime.Now }; await _context.Tags.AddAsync(item); } await _context.SaveChangesAsync(); return(new Response { Status = true, Message = "success" }); }
public async Task <IActionResult> Upsert([FromBody] UpsertTagCmd request) { try { var result = await _service.UpsertTag(request); return(Ok(result)); } catch (BusinessLogicException ex) { return(BadRequest(new Response { Status = false, Message = ex.Message })); } catch (Exception e) { return(BadRequest(new Response { Status = false, Message = ErrorMessages.UnkownError })); } }