Example #1
0
        public ICollection <Entities.Media> GetAll()
        {
            List <Entities.Media> medias = new List <Entities.Media>();

            SqlCommand cmd = new SqlCommand("spGetAllMedias", connection);

            cmd.CommandType = CommandType.StoredProcedure;
            connection.Open();
            SqlDataReader reader = cmd.ExecuteReader();

            while (reader.Read())
            {
                var media = new Entities.Media
                {
                    Id             = Convert.ToInt32(reader["Id"]),
                    Name           = reader["Name"].ToString(),
                    Url            = reader["Url"].ToString(),
                    Path           = reader["Path"].ToString(),
                    Type           = (MediaType)Enum.Parse(typeof(MediaType), reader["Type"].ToString()),
                    Done           = Convert.ToBoolean(reader["Done"]),
                    DateOfAddition = DateTime.Parse(reader["DateOfAddition"].ToString()),
                    Category       = new Entities.Category
                    {
                        Id   = Convert.ToInt32(reader["Category.Id"]),
                        Name = reader["Category.Name"].ToString()
                    }
                };
                medias.Add(media);
            }
            ;

            connection.Close();

            return(medias);
        }
Example #2
0
        public Entities.Media Insert(Entities.Media entity)
        {
            if (entity is null)
            {
                throw new ArgumentNullException(nameof(entity));
            }

            var cmd = new SqlCommand("spAddMedia", connection);

            connection.Open();

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@Name", entity.Name);
            cmd.Parameters.AddWithValue("@Url", entity.Url);
            cmd.Parameters.AddWithValue("@Path", entity.Path);
            cmd.Parameters.AddWithValue("@Type", entity.Type);
            cmd.Parameters.AddWithValue("@Done", entity.Done);
            cmd.Parameters.AddWithValue("@CategoryId", entity.Category.Id);
            cmd.Parameters.AddWithValue("@Date", DateTime.Now);

            var result = cmd.ExecuteNonQuery();

            connection.Close();

            if (result > 0)
            {
                return(entity);
            }
            else
            {
                throw new Exception("An error was encountered when inserting media");
            }
        }
Example #3
0
        public async Task <IActionResult> CreateMedia([FromBody] MediaForCreation media)
        {
            Entities.Media mediaToAdd = _mapper.Map <Entities.Media>(media);
            _mediasRepository.AddMedia(mediaToAdd);

            await _mediasRepository.SaveChangesAsync();

            return(CreatedAtRoute("GetMedia", new { id = mediaToAdd.Id }, mediaToAdd));
        }
Example #4
0
 public static void Get(Entities.Media media, string filepath)
 {
     if (System.IO.File.Exists(filepath))
     {
         new System.IO.IOException(filepath + "已经存在。");
     }
     System.IO.FileStream stream = new System.IO.FileStream(filepath, System.IO.FileMode.CreateNew);
     Utilitys.HttpUtility.Get.Download(string.Format(URL_GETMEDIA, Auth.GetToken(), media.media_id), stream);
 }
Example #5
0
        public void Upload(Entities.Media media, string mediaMappedPath)
        {
            byte[] fileBytes = File.ReadAllBytes(media.Path);

            mediaMappedPath += SpecificFolder;

            string newFileName = CreateGuidOnlyNumbersAndLetters() + Path.GetExtension(media.OriginalName);

            string targetRelativeUrl = Path.Combine(mediaMappedPath, newFileName);

            File.WriteAllBytes(targetRelativeUrl, fileBytes);

            media.Path = MediaFolder + SpecificFolder + newFileName;
        }
Example #6
0
        public Entities.Media GetById(int id)
        {
            if (id <= 0)
            {
                throw new ArgumentException("Bad id was provided");
            }

            Entities.Media media = new Entities.Media();

            SqlCommand cmd = new SqlCommand("spGetMediaById", connection);

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@Id", id);
            connection.Open();
            SqlDataReader reader = cmd.ExecuteReader();

            while (reader.Read())
            {
                media.Id             = Convert.ToInt32(reader["Id"]);
                media.Name           = reader["Name"].ToString();
                media.Url            = reader["Url"].ToString();
                media.Path           = reader["Path"].ToString();
                media.Type           = (MediaType)Enum.Parse(typeof(MediaType), reader["Type"].ToString());
                media.Done           = Convert.ToBoolean(reader["Done"]);
                media.DateOfAddition = DateTime.Parse(reader["DateOfAddition"].ToString());
                if (!(reader["Category.Id"] is DBNull))
                {
                    media.Category = new Entities.Category
                    {
                        Id   = Convert.ToInt32(reader["Category.Id"]),
                        Name = reader["Category.Name"].ToString()
                    }
                }
                ;
            }

            connection.Close();

            return(media);
        }
Example #7
0
        public Entities.Media Update(Entities.Media entity)
        {
            if (entity is null)
            {
                throw new ArgumentNullException(nameof(entity));
            }
            if (entity.Id <= 0)
            {
                throw new ArgumentException("The provided media has wrong properties. Please check the object's id.");
            }

            var cmd = new SqlCommand("spUpdateMedia", connection);

            connection.Open();

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@Id", entity.Id);
            cmd.Parameters.AddWithValue("@Name", entity.Name);
            cmd.Parameters.AddWithValue("@Url", entity.Url);
            cmd.Parameters.AddWithValue("@Path", entity.Path);
            cmd.Parameters.AddWithValue("@Type", entity.Type);
            cmd.Parameters.AddWithValue("@Done", entity.Done);
            cmd.Parameters.AddWithValue("@CategoryId", entity.Category.Id);
            cmd.Parameters.AddWithValue("@Date", DateTime.Now);

            var result = cmd.ExecuteNonQuery();

            connection.Close();

            if (result > 0)
            {
                return(entity);
            }
            else
            {
                throw new Exception("An error was encountered when updating media");
            }
        }
Example #8
0
        public void AfterTransferResultReturns(Boolean Success, Guid pOrderNumber, String pMsg)
        {//continue delivery and emailing after received bank's transfer message
            using (TransactionScope lScope = new TransactionScope())
            {
                using (VideoStoreEntityModelContainer lContainer = new VideoStoreEntityModelContainer())
                {
                    Entities.Order pOrder = lContainer.Orders.Include("Delivery").Include("OrderItems.Media").Include("Customer")
                                            .Where((pOrder1) => pOrder1.OrderNumber == pOrderNumber).FirstOrDefault();
                    foreach (Entities.OrderItem oi in pOrder.OrderItems)
                    {
                        Entities.Media media = oi.Media;
                        Entities.Stock stock = lContainer.Stocks.Where((p) => p.Media.Id == media.Id).FirstOrDefault();
                        media.Stocks = stock;
                    }
                    if (Success)
                    {
                        pOrder.UpdateStockLevels();
                        PlaceDeliveryForOrder(pOrder);
                        lContainer.Orders.ApplyChanges(pOrder);
                        lContainer.SaveChanges();
                    }
                    else
                    {
                        Common.Model.SendEmailMessage emailMessage = new Common.Model.SendEmailMessage()
                        {
                            Topic       = "Email",
                            Message     = pMsg + " Order number: " + pOrderNumber + ".",
                            ToAddresses = pOrder.Customer.Email,
                            Date        = new DateTime()
                        };

                        PublisherServiceClient lClient = new PublisherServiceClient();
                        lClient.Publish(emailMessage);
                    }
                    lScope.Complete();
                }
            }
        }
Example #9
0
 public void UploadMediaEntityToFileSystem(Entities.Media media)
 {
     _mediaManager.Upload(media, _mediaMappedPath);
 }
Example #10
0
 public static System.IO.MemoryStream Get(Entities.Media media)
 {
     System.IO.MemoryStream stream = new System.IO.MemoryStream();
     Utilitys.HttpUtility.Get.Download(string.Format(URL_GETMEDIA, Auth.GetToken(), media.media_id), stream);
     return(stream);
 }
Example #11
0
 public static void Download(this Entities.Media media, string path)
 {
     DD.Media.Get(media, path);
 }