Ejemplo n.º 1
0
        /// <summary>
        /// +1 or -1 Sotock
        /// </summary>
        /// <param name="IdMovie">Movie ID</param>
        /// <param name="increment">Increment like</param>
        /// <returns>Result object</returns>
        public DBResult <Movie> IncrementStockCounter(int IdMovie, int increment)
        {
            DBResult <Movie> dbResult = new DBResult <Movie>();

            try
            {
                using (SevenDaysContext db = new SevenDaysContext(Configuration))
                {
                    var movie = db.Movie.Find(IdMovie);
                    if (movie != null)
                    {
                        movie.Stock += increment;

                        db.Movie.Update(movie);
                        db.SaveChangesAsync();
                        dbResult.Success = true;
                        dbResult.Item    = movie;
                    }
                    else
                    {
                        dbResult.Message = "Movie not found";
                    }
                }
            }
            catch (Exception ex)
            {
                dbResult.Message = Common.GetMessageError(ex);
            }

            return(dbResult);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Save audit log for Mavie Table
        /// </summary>
        /// <param name="movie">Movie object edited</param>
        /// <param name="idUser">User</param>
        /// <returns>Result</returns>
        public DBResult <AuditMovieLog> AddAuditLog(Movie movie, int idUser)
        {
            DBResult <AuditMovieLog> dbResult = new DBResult <AuditMovieLog>();

            try
            {
                using (SevenDaysContext db = new SevenDaysContext(Configuration))
                {
                    AuditMovieLog audit = new AuditMovieLog()
                    {
                        IdMovie     = movie.IdMovie,
                        IdUser      = idUser,
                        Title       = movie.Title,
                        RentalPrice = movie.RentalPrice,
                        SalePrice   = movie.SalePrice,
                        Action      = "Update",
                    };
                    db.AuditMovieLog.Add(audit);
                    db.SaveChangesAsync();
                    dbResult.Item = audit;
                }
            }
            catch (Exception ex)
            {
                dbResult.Message = Common.GetMessageError(ex);
            }
            return(dbResult);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Patch Movie
        /// </summary>
        /// <param name="patchMovie">patch document</param>
        /// <param name="idMovie">Id Movie</param>
        /// <returns>Result object</returns>
        public async Task <DBResult <Movie> > PatchMovie(JsonPatchDocument <Movie> patchMovie, int idMovie)
        {
            DBResult <Movie> dbResult = new DBResult <Movie>();

            try
            {
                using (SevenDaysContext db = new SevenDaysContext(Configuration))
                {
                    // Get our original object from the database.
                    var movie = await db.Movie.FindAsync(idMovie);

                    if (movie == null)
                    {
                        dbResult.Message = "Movie not found";
                        return(dbResult);
                    }

                    // Applying Path to DB Object
                    patchMovie.ApplyTo(movie);
                    db.Movie.Update(movie);
                    await db.SaveChangesAsync();

                    dbResult.Item    = movie;
                    dbResult.Success = true;
                }
            }
            catch (Exception ex)
            {
                dbResult.Message = Common.GetMessageError(ex);
            }


            return(dbResult);
        }