/// <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); }
public ActionResult <bool> UpdateMovieDetails([FromBody] SaveMovieBundle input) { if (input != null) { bool isSaved = _movies.UpdateMovieData(input); return(Ok(isSaved)); } else { return(BadRequest()); } }
/// <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); }
/// <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); }