public async Task <DatabaseResponse> CreateSubCategory(CreateSubCategoryMaster SubCategoryMaster) { try { SqlParameter[] parameters = { new SqlParameter("@Name", SqlDbType.NVarChar), new SqlParameter("@Name_Ar", SqlDbType.NVarChar), new SqlParameter("@CategoryId", SqlDbType.NVarChar), new SqlParameter("@CreatedBy", SqlDbType.Int), new SqlParameter("@Weight", SqlDbType.Int) }; parameters[0].Value = SubCategoryMaster.Name; parameters[1].Value = SubCategoryMaster.Name_Ar; parameters[2].Value = SubCategoryMaster.CategoryId; parameters[3].Value = SubCategoryMaster.CreatedBy; parameters[4].Value = SubCategoryMaster.Weight; _DataHelper = new DataAccessHelper("CreateSubCategory", parameters, _configuration); DataTable dt = new DataTable(); int result = await _DataHelper.RunAsync(dt); List <SubCategoryMaster> subCategories = new List <SubCategoryMaster>(); if (dt != null && dt.Rows.Count > 0) { subCategories = (from model in dt.AsEnumerable() select new SubCategoryMaster() { Id = model.Field <int>("Id"), Name = model.Field <string>("Name"), Name_Ar = model.Field <string>("Name_Ar"), CategoryId = model.Field <int>("CategoryId"), CategoryName = model.Field <string>("CategoryName"), CreatedBy = model.Field <string>("CreatedBy"), CreatedOn = model.Field <DateTime>("CreatedOn"), UpdatedOn = model.Field <DateTime>("UpdatedOn"), UpdatedBy = model.Field <string>("UpdatedBy"), Active = model.Field <bool>("Active"), Weight = model.Field <int>("Weight") }).ToList(); } return(new DatabaseResponse { ResponseCode = result, Results = subCategories }); } catch (Exception ex) { Log.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical)); throw; } finally { _DataHelper.Dispose(); } }
public async Task <IActionResult> Post([FromBody] CreateSubCategoryMaster subCategory) { try { if (!ModelState.IsValid) { return(Ok(new OperationResponse { HasSucceeded = false, IsDomainValidationErrors = true, StatusCode = ((int)ResponseStatus.BadRequest).ToString(), Message = string.Join("; ", ModelState.Values .SelectMany(x => x.Errors) .Select(x => x.ErrorMessage)) })); } SubCategoryDataAccess _subCategoryAccess = new SubCategoryDataAccess(_iconfiguration); DatabaseResponse response = await _subCategoryAccess.CreateSubCategory(subCategory); if (response.ResponseCode == (int)DbReturnValue.CreateSuccess) { return(Ok(new OperationResponse { HasSucceeded = true, IsDomainValidationErrors = false, Message = EnumExtensions.GetDescription(DbReturnValue.CreateSuccess), ReturnedObject = response.Results })); } else { Log.Error(EnumExtensions.GetDescription(DbReturnValue.CreationFailed)); return(Ok(new OperationResponse { HasSucceeded = false, IsDomainValidationErrors = false, Message = EnumExtensions.GetDescription(DbReturnValue.RecordExists), ReturnedObject = response.Results })); } } catch (Exception ex) { Log.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical)); return(Ok(new OperationResponse { HasSucceeded = false, Message = StatusMessages.ServerError, StatusCode = ((int)ResponseStatus.ServerError).ToString(), IsDomainValidationErrors = false })); } }