public bool SaveProductMenu(List<ProductMenu> saveData, List<ProductMenu> saveDataBase)
        {
            using (DbContextTransaction transaction = Context.Database.BeginTransaction())
            {
                try
                {
                    long seq = ProductMenuDAO.GetProductMenuSEQ();
                    foreach (ProductMenu data in saveData)
                    {
                        switch (data.Status)
                        {
                            // Add new
                            case ModifyMode.Insert:
                                seq++;
                                data.ProductMenuID = GenerateID.ProductMenuID(seq);
                                this.ProductMenuDAO.InsertProductMenu(data);
                                break;
                            // Update
                            case ModifyMode.Update:
                                this.ProductMenuDAO.UpdateProductMenu(data);
                                break;
                            // Delete
                            case ModifyMode.Delete:
                                this.ProductMenuDAO.DeleteProductMenu(data);
                                break;
                        }
                    }

                    transaction.Commit();

                    return true;
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    BSLog.Logger.Error(ex.Message);
                    return false;
                }
            }
        }