public async Task <ResponseModel> CreateCategoryAsync(CategoryManageModel categoryManagerModel) { var category = await _categoryResponsitory.FetchFirstAsync(x => x.Name == categoryManagerModel.Name); if (category != null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.BadRequest, Message = MessageConstants.EXISTED_CREATED }); } else { category = AutoMapper.Mapper.Map <Category>(categoryManagerModel); await _categoryResponsitory.InsertAsync(category); category = await GetAll().FirstOrDefaultAsync(x => x.Id == category.Id); return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.OK, Data = new CategoryViewModel(category), Message = MessageConstants.CREATED_SUCCESSFULLY }); } }
public async Task <IActionResult> Update(Guid id, [FromBody] CategoryManageModel categoryManageModel) { var responseModel = await _categoryService.UpdateCategoryAsync(id, categoryManageModel); if (responseModel.StatusCode == System.Net.HttpStatusCode.OK) { return(Ok(responseModel)); } else { return(BadRequest(new { Message = responseModel.Message })); } }
public async Task <IActionResult> Post([FromBody] CategoryManageModel categoryManageModel) { var responseModel = await _categoryService.CreateCategoryAsync(categoryManageModel); if (responseModel.StatusCode == System.Net.HttpStatusCode.OK) { var category = (CategoryViewModel)responseModel.Data; return(Ok(category)); } else { return(BadRequest(responseModel.Message)); } }
public async Task <Result <CategoryManageModel> > UpdateCategory([FromBody] CategoryManageModel model) { if (!Validate(model)) { return(null); } var item = model.Convert(); var sUserId = _userManager.GetUserId(User); int userId; if (Int32.TryParse(sUserId, out userId)) { item.UserId = userId; } item = await categoryService.UpdateCategoryAsync(item); return(new CategoryManageModel(item)); }
public async Task <ResponseModel> UpdateCategoryAsync(Guid id, CategoryManageModel categoryManageModel) { var category = await _categoryResponsitory.GetByIdAsync(id); if (category == null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.NotFound, Message = MessageConstants.NOT_FOUND }); } else { var existedCategory = await _categoryResponsitory.FetchFirstAsync(x => x.Name == categoryManageModel.Name && x.Id != id); if (existedCategory != null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.BadRequest, Message = MessageConstants.EXISTED_CREATED }); } else { categoryManageModel.SetDataToModel(category); await _categoryResponsitory.UpdateAsync(category); return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.OK, Data = new CategoryViewModel(category), Message = MessageConstants.UPDATED_SUCCESSFULLY }); } } }
public async Task <ResponseModel> UpdateCategoryAsync(Guid id, CategoryManageModel categoryManageModel) { var category = await _categoryRepository.GetByIdAsync(id); if (category == null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.NotFound, Message = "This category does not exist. Please try again!" }); } else { var existedCategoryName = await _categoryRepository.FetchFirstAsync(x => x.Name == categoryManageModel.Name && x.Id != id); if (existedCategoryName != null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.BadRequest, Message = "Category " + categoryManageModel.Name + " has already existed on system. Please try again!", }); } else { categoryManageModel.SetCategoryModel(category); await _categoryRepository.UpdateAsync(category); return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.OK, Data = new CategoryViewModel(category) }); } } }
public async Task <ResponseModel> CreateCategoryAsync(CategoryManageModel categoryManageModel) { var category = await _categoryRepository.FetchFirstAsync(x => x.Name == categoryManageModel.Name); if (category != null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.BadRequest, Message = "This category has already existed. You can try again with the update!", }); } else { category = AutoMapper.Mapper.Map <Category>(categoryManageModel); await _categoryRepository.InsertAsync(category); return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.OK, Data = new CategoryViewModel(category), }); } }