public async Task <IActionResult> Create(AreaResource resource) { var response = new SingleModelResponse <AreaResource>(); if (resource == null) { response.DidError = true; response.ErrorMessage = "Input cannot be null."; return(response.ToHttpResponse()); } try { var area = new Area(); _mapper.Map(resource, area); var entity = await _areaRepository.AddAsync(area); response.Model = _mapper.Map(entity, resource); response.Message = "The data was saved successfully"; } catch (Exception ex) { response.DidError = true; response.ErrorMessage = ex.ToString(); } return(response.ToHttpResponse()); }
public async Task <IActionResult> GetAsync(int id) { var response = new SingleModelResponse <AreaResource>(); try { var entity = await _areaRepository.Query().Include(x => x.Functions) .FirstOrDefaultAsync(x => x.Id == id); if (entity == null) { response.DidError = true; response.ErrorMessage = "Input could not be found."; return(response.ToHttpResponse()); } var resource = new AreaResource(); _mapper.Map(entity, resource); response.Model = resource; } catch (Exception ex) { response.DidError = true; response.ErrorMessage = ex.Message; } return(response.ToHttpResponse()); }
public async Task <IActionResult> Delete(int id) { var response = new SingleModelResponse <AreaResource>(); try { var areaWithFunctions = await _areaRepository.Query().Include(x => x.Functions) .SingleOrDefaultAsync(x => x.Id == id); foreach (var function in areaWithFunctions.Functions) { function.IdArea = null; } var entity = await _areaRepository.DeleteAsync(id); var resource = new AreaResource(); response.Model = _mapper.Map(entity, resource); response.Message = "The record was deleted successfully"; } catch (Exception ex) { response.DidError = true; response.ErrorMessage = ex.Message; } return(response.ToHttpResponse()); }
public async Task <IActionResult> Update(int id, AreaResource resource) { var response = new SingleModelResponse <AreaResource>(); if (resource == null) { response.DidError = true; response.ErrorMessage = "Input cannot be null."; return(response.ToHttpResponse()); } try { var area = await _areaRepository.FindAsync(x => x.Id == id); if (area == null || resource == null) { response.DidError = true; response.ErrorMessage = "Input could not be found."; return(response.ToHttpResponse()); } _mapper.Map(resource, area); await _areaRepository.UpdateAsync(area); response.Model = _mapper.Map(area, resource); response.Message = "The data was saved successfully"; } catch (Exception ex) { response.DidError = true; response.ErrorMessage = ex.ToString(); } return(response.ToHttpResponse()); }
public async Task <IActionResult> Update(int id, [FromBody] AreaResource resource) { return(await _areaService.Update(id, resource)); }
public async Task <IActionResult> Create([FromBody] AreaResource resource) { return(await _areaService.Create(resource)); }