public async Task <IActionResult> Upsert([FromBody] UpsertCategoryCmd request) { try { var result = await _service.UpsertCategory(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 })); } }
public async Task <Response> UpsertCategory(UpsertCategoryCmd request) { if (!string.IsNullOrEmpty(request.Id)) { var item = await _context.Categories.SingleOrDefaultAsync(x => x.Id == request.Id); if (item == null) { throw new BusinessLogicException("رکوردی یافت نشد"); } item.Title = request.Title; _context.Categories.Update(item); } else { var item = new Category { Id = Guid.NewGuid().ToString(), Title = request.Title, CreatedAt = DateTime.Now }; await _context.Categories.AddAsync(item); } await _context.SaveChangesAsync(); return(new Response { Status = true, Message = "success" }); }