예제 #1
0
        public async Task <IActionResult> Post([FromBody] CreateCopyrightMaster copyright)
        {
            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))
                    }));
                }

                CopyrightDataAccess _copyrightAccess = new  CopyrightDataAccess(_iconfiguration);

                DatabaseResponse response = await _copyrightAccess.CreateCopyright(copyright);

                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.CreationFailed),
                        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
                }));
            }
        }
예제 #2
0
        public async Task <DatabaseResponse> CreateCopyright(CreateCopyrightMaster copyright)
        {
            try
            {
                SqlParameter[] parameters =
                {
                    new SqlParameter("@Title",             SqlDbType.NVarChar),
                    new SqlParameter("@Description",       SqlDbType.Text),
                    new SqlParameter("@Title_Ar",          SqlDbType.NVarChar),
                    new SqlParameter("@Description_Ar",    SqlDbType.NVarChar),
                    new SqlParameter("@CreatedBy",         SqlDbType.Int),
                    new SqlParameter("@Media",             SqlDbType.NVarChar),
                    new SqlParameter("@Protected",         SqlDbType.Bit),
                    new SqlParameter("@IsResourceProtect", SqlDbType.Bit),
                    new SqlParameter("@Weight",            SqlDbType.Int)
                };

                parameters[0].Value = copyright.Title;
                parameters[1].Value = copyright.Description;
                parameters[2].Value = copyright.Title_Ar;
                parameters[3].Value = copyright.Description_Ar;
                parameters[4].Value = copyright.CreatedBy;
                parameters[5].Value = copyright.Media;
                parameters[6].Value = copyright.Protected;
                parameters[7].Value = copyright.IsResourceProtect;
                parameters[8].Value = copyright.Weight;
                _DataHelper         = new DataAccessHelper("CreateCopyright", parameters, _configuration);

                DataTable dt = new DataTable();

                int result = await _DataHelper.RunAsync(dt);

                List <CopyrightMaster> copyrights = new List <CopyrightMaster>();

                if (dt != null && dt.Rows.Count > 0)
                {
                    copyrights = (from model in dt.AsEnumerable()
                                  select new CopyrightMaster()
                    {
                        Id = model.Field <int>("Id"),
                        Title = model.Field <string>("Title"),
                        Description = model.Field <string>("Description"),
                        Title_Ar = model.Field <string>("Title_Ar"),
                        Description_Ar = model.Field <string>("Description_Ar"),
                        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"),
                        Protected = model.Field <bool>("Protected"),
                        IsResourceProtect = model.Field <bool>("IsResourceProtect"),
                        Weight = model.Field <int>("Weight")
                    }).ToList();
                }

                return(new DatabaseResponse {
                    ResponseCode = result, Results = copyrights
                });
            }

            catch (Exception ex)
            {
                Log.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical));
                throw;
            }
            finally
            {
                _DataHelper.Dispose();
            }
        }