Exemplo n.º 1
0
        /// <summary>
        /// Business layer function to update data of movie
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public bool UpdateMovieData(SaveMovieBundle input)
        {
            bool isDataSaved = false;

            try
            {
                if (input != null)
                {
                    int movieId = input.Id;

                    if (movieId > 0)
                    {
                        isDataSaved = _movieRepo.UpdateMovie(input);

                        _movieRepo.RemoveActorMovieMapping(movieId);

                        if (input.ActorIds != null && input.ActorIds.Any())
                        {
                            foreach (int actorId in input.ActorIds)
                            {
                                _movieRepo.SaveActorMovieMapping(movieId, actorId);
                            }
                        }
                    }

                    isDataSaved = true;
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            return(isDataSaved);
        }
Exemplo n.º 2
0
 public ActionResult <bool> UpdateMovieDetails([FromBody] SaveMovieBundle input)
 {
     if (input != null)
     {
         bool isSaved = _movies.UpdateMovieData(input);
         return(Ok(isSaved));
     }
     else
     {
         return(BadRequest());
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Data layer function to save movie data into database.
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public int SaveMovie(SaveMovieBundle input)
        {
            int insertedId = 0;

            try
            {
                using (MySqlConnection conn = _dbFactory.GetConnection())
                {
                    using (MySqlCommand cmd = new MySqlCommand())
                    {
                        cmd.CommandText = "addmovie";
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.Connection  = conn;

                        cmd.Parameters.AddWithValue("par_name", input.MovieTitle);
                        cmd.Parameters.AddWithValue("par_releasedate", input.ReleaseDate.Date);
                        cmd.Parameters.AddWithValue("par_plot", input.Plot);
                        cmd.Parameters.AddWithValue("par_poster", input.PosterPath);
                        cmd.Parameters.AddWithValue("par_producerid", input.ProducerId);

                        conn.Open();

                        using (IDataReader dr = cmd.ExecuteReader())
                        {
                            if (dr != null)
                            {
                                while (dr.Read())
                                {
                                    insertedId = Convert.ToInt32(dr["id"]);
                                }
                            }
                        }

                        conn.Close();
                    }
                }
            }
            catch (MySqlException e)
            {
                Console.WriteLine(e);
            }
            catch (Exception)
            {
                throw;
            }

            return(insertedId);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Data layer function to update movie related data in database.
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        /// <exception cref="NotImplementedException"></exception>
        public bool UpdateMovie(SaveMovieBundle input)
        {
            bool isUpdated = false;

            try
            {
                using (MySqlConnection conn = _dbFactory.GetConnection())
                {
                    using (MySqlCommand cmd = new MySqlCommand())
                    {
                        cmd.CommandText = "updatemovie";
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.Connection  = conn;

                        cmd.Parameters.AddWithValue("par_movieid", input.Id);
                        cmd.Parameters.AddWithValue("par_name", input.MovieTitle);
                        cmd.Parameters.AddWithValue("par_releasedate", input.ReleaseDate.Date);
                        cmd.Parameters.AddWithValue("par_plot", input.Plot);
                        cmd.Parameters.AddWithValue("par_poster", input.PosterPath);
                        cmd.Parameters.AddWithValue("par_producerid", input.ProducerId);

                        conn.Open();

                        isUpdated = cmd.ExecuteNonQuery() > 0;

                        conn.Close();
                    }
                }
            }
            catch (MySqlException e)
            {
                Console.WriteLine(e);
            }
            catch (Exception)
            {
                throw;
            }

            return(isUpdated);
        }