private bool InitiateTrackingTransaction(int MemberInGameID)
        {
            TrackingTransaction trackingTransaction = new TrackingTransaction();

            trackingTransaction.MemberInGameID    = MemberInGameID;
            trackingTransaction.TimeInitiated     = DateTime.Now;
            trackingTransaction.DurationRemaining = 90;
            trackingTransaction.DateInserted      = DateTime.Now;
            trackingTransaction.DateModified      = DateTime.Now;

            db.TrackingTransactions.Add(trackingTransaction);

            try
            {
                db.SaveChanges();
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                           ve.PropertyName, ve.ErrorMessage);
                    }
                }
                return(false);
            }
            return(true);
        }
Exemple #2
0
        public ActionResult Create([Bind(Include = "GameMemberFilterID,GameID,CountryID,StateID,CityID,AgeBandID,GenderID,Territory,MemberSubscriptionTypeID")] GameMemberFilter gamememberfilter)
        {
            List <SelectListItem> AgeGroups;
            List <SelectListItem> Genders;

            GetAgesAndGenders(out AgeGroups, out Genders);

            if (ModelState.IsValid)
            {
                db.GameMemberFilters.Add(gamememberfilter);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.AgeBandID = new SelectList(AgeGroups, "Value", "Text");
            ViewBag.GenderID  = new SelectList(Genders, "Value", "text");
            ViewBag.GameID    = new SelectList(db.Games, "GameID", "GameCode");
            ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName");
            ViewBag.StateID   = new SelectList(db.CountryStates, "StateID", "StateName");

            ViewBag.Territory = new SelectList(db.Territories, "TerritoryID", "TerritoryCode");
            ViewBag.MemberSubscriptionTypeID = new SelectList(db.MemberSubscriptionTypes, "MemberSubscriptionTypeID", "MemberSubscriptionTypeCode");

            return(View(gamememberfilter));
        }
Exemple #3
0
        public ActionResult Create([Bind(Include = "ProductCategoryID,ProductCategoryCode,ProductCategoryName,ProductCategoryDescription,DateInserted,DateUpdated,USR")] ProductCategory productCategory)
        {
            if (ModelState.IsValid)
            {
                db.ProductCategories.Add(productCategory);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(productCategory));
        }
Exemple #4
0
        public ActionResult Create([Bind(Include = "ContractID,ContractCode,ContractDetail,DateInserted,DateUpdated,USR")] Contract contract)
        {
            if (ModelState.IsValid)
            {
                db.Contracts.Add(contract);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(contract));
        }
Exemple #5
0
        public ActionResult Create([Bind(Include = "GameTypeID,GameTypeCode,GameTypeName,GameTypeDescription,DateInserted,DateUpdated,USR")] GameType gameType)
        {
            if (ModelState.IsValid)
            {
                db.GameTypes.Add(gameType);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(gameType));
        }
Exemple #6
0
        public ActionResult Create([Bind(Include = "LanguageID,LanguageName,LanguageTwoLetters,LanguageThreeLetters")] Language language)
        {
            if (ModelState.IsValid)
            {
                db.Languages.Add(language);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(language));
        }
        public ActionResult Create([Bind(Include = "AddressID,AddressType,AddressLine1,AddressLine2,AddressLine3,Country,StateOrProvince,ZipOrPostalCode,DateInserted,DateUpdated,USR")] Address address)
        {
            if (ModelState.IsValid)
            {
                db.Addresses.Add(address);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(address));
        }
        public ActionResult Create([Bind(Include = "CurrencyID,CurrencyCode,CurrencySymbol,CountryID")] Currency currency)
        {
            if (ModelState.IsValid)
            {
                db.Currencies.Add(currency);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName", currency.CountryID);
            return(View(currency));
        }
Exemple #9
0
        public ActionResult Create([Bind(Include = "SerialNumberID,Serial,ProductLocationID,Used,DateInserted,DateUsed")] SerialNumber serialNumber)
        {
            if (ModelState.IsValid)
            {
                db.SerialNumbers.Add(serialNumber);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ProductLocationID = new SelectList(db.ProductLocations, "ProductLocationID", "USR", serialNumber.ProductLocationID);
            return(View(serialNumber));
        }
        public ActionResult Create([Bind(Include = "LanguageItemID,LanguageID,LanguageItemKey,LanguageItemValue")] LanguageItem languageitem)
        {
            if (ModelState.IsValid)
            {
                db.LanguageItems.Add(languageitem);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.LanguageID = new SelectList(db.Languages, "LanguageID", "LanguageName", languageitem.LanguageID);
            return(View(languageitem));
        }
Exemple #11
0
        public ActionResult Create([Bind(Include = "GameTemplateID,GameTemplateCode,GameTypeID,DateInserted,DateUpdated,USR,GameRuleCode,GameRuleDetail,OrderInGame")] GameTemplate gametemplate)
        {
            if (ModelState.IsValid)
            {
                db.GameTemplates.Add(gametemplate);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.GameTypeID = new SelectList(db.GameTypes, "GameTypeID", "GameTypeCode", gametemplate.GameTypeID);
            return(View(gametemplate));
        }
Exemple #12
0
        public ActionResult Create([Bind(Include = "OwnerID,OwnerCode,OwnerName,OwnerType,BankingDetailBank,BankingDetailAccountNumber,BankingDetailAccountType,BankingDetailBranchCode,BankingDetailBranchName,BankingDetailDefaultReference,EmailAddress,ContactPerson,TelephoneOffice,TelephoneMobile,AddressID,DateInserted,DateUpdated,USR")] Owner owner)
        {
            if (ModelState.IsValid)
            {
                db.Owners.Add(owner);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.AddressID = new SelectList(db.Addresses, "AddressID", "AddressType", owner.AddressID);
            return(View(owner));
        }
Exemple #13
0
        public ActionResult Create([Bind(Include = "TerritoryID,TerritoryCode,OwnerID,ContractID,TerritoryName,TerritoryDescription,DateInserted,DateUpdated,USR")] Territory territory)
        {
            if (ModelState.IsValid)
            {
                db.Territories.Add(territory);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ContractID = new SelectList(db.Contracts, "ContractID", "ContractCode", territory.ContractID);
            ViewBag.OwnerID    = new SelectList(db.Owners, "OwnerID", "OwnerCode", territory.OwnerID);
            return(View(territory));
        }
Exemple #14
0
        public ActionResult Create([Bind(Include = "GameRuleID,GameRuleCode,GameID,FilterCriteria,Schedule,ChainGameRuleID,GameRuleDetail,ExcecuteTime,DateInserted,DateUpdated,USR,GameTemplateID")] GameRule gamerule)
        {
            if (ModelState.IsValid)
            {
                db.GameRules.Add(gamerule);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.GameID         = new SelectList(db.Games, "GameID", "GameCode", gamerule.GameID);
            ViewBag.GameTemplateID = new SelectList(db.GameTemplates, "GameTemplateID", "GameTemplateCode", gamerule.GameTemplateID);
            return(View(gamerule));
        }
        public ActionResult Create([Bind(Include = "ProductInWatchListID,MemberID,ProductID,DateInserted,DateUpdated,USR")] ProductInWatchList productInWatchList)
        {
            if (ModelState.IsValid)
            {
                db.ProductInWatchLists.Add(productInWatchList);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.MemberID  = new SelectList(db.Members, "MemberID", "IdentityType", productInWatchList.MemberID);
            ViewBag.ProductID = new SelectList(db.Products, "ProductID", "ProductSKUCode", productInWatchList.ProductID);
            return(View(productInWatchList));
        }
Exemple #16
0
        public ActionResult Create([Bind(Include = "MemberInterestID,MemberID,ProductCategoryID,DateInserted,DateUpdated,USR")] MemberInterest memberInterest)
        {
            if (ModelState.IsValid)
            {
                db.MemberInterests.Add(memberInterest);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.MemberID          = new SelectList(db.Members, "MemberID", "IdentityType", memberInterest.MemberID);
            ViewBag.ProductCategoryID = new SelectList(db.ProductCategories, "ProductCategoryID", "ProductCategoryCode", memberInterest.ProductCategoryID);
            return(View(memberInterest));
        }
Exemple #17
0
        public ActionResult Create([Bind(Include = "VoucherID,VoucherNumber,ProductLocationID,Used,DateInserted,DateUsed")] Voucher voucher)
        {
            VoucherValidator validator = new VoucherValidator();

            if (ModelState.IsValid && validator.Validate(voucher).IsValid)
            {
                db.Vouchers.Add(voucher);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ProductLocationID = new SelectList(db.ProductLocations, "ProductLocationID", "USR", voucher.ProductLocationID);
            return(View(voucher));
        }
Exemple #18
0
        public ActionResult Create([Bind(Include = "GameID,GameCode,GameTypeID,GameName,GameDescription,DateInserted,DateUpdated,USR")] Game game)
        {
            if (ModelState.IsValid)
            {
                db.Games.Add(game);
                try
                {
                    db.SaveChanges();
                }
                catch (System.Data.Entity.Validation.DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                          eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                               ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                }
                return(RedirectToAction("Index"));
            }

            ViewBag.GameTypeID = new SelectList(db.GameTypes, "GameTypeID", "GameTypeCode", game.GameTypeID);
            ViewBag.GameID     = new SelectList(db.NextGames, "GameID", "USR", game.GameID);
            return(View(game));
        }
Exemple #19
0
        public ActionResult Create([Bind(Include = "CountryID,StateID,CityID,TerritoryDefinitionID,TerritoryDefinitionCode,TerritoryID,ZipOrPostalCode,IPAddress,PhysicalCoordinates,DateInserted,DateUpdated,USR")] TerritoryDefinition territorydefinition)
        {
            if (ModelState.IsValid)
            {
                db.TerritoryDefinitions.Add(territorydefinition);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.TerritoryID = new SelectList(db.Territories, "TerritoryID", "TerritoryCode", territorydefinition.TerritoryID);
            ViewBag.CountryID   = new SelectList(db.Countries, "CountryID", "CountryName", territorydefinition.CountryID);
            ViewBag.StateID     = new SelectList(db.CountryStates, "StateID", "StateName", territorydefinition.StateID);
            ViewBag.CityID      = new SelectList(db.CountryCities, "CityID", "CityName", territorydefinition.CityID);
            return(View(territorydefinition));
        }
Exemple #20
0
        public ActionResult Create([Bind(Include = "ASPUserId,MemberID,MemberSubscriptionTypeID,FirstName, LastName,IdentityType,EmailAddress,TelephoneHome,TelephoneOffice,TelephoneMobile,CountryID,StateID,Gender,Ethnicity,DateOfBirth,ActiveIndicator,RenewalDate,AddressID,DateInserted,DateUpdated,USR")] Member member)
        {
            MemberValidator validator = new MemberValidator();

            if (ModelState.IsValid && validator.Validate(member).IsValid)
            {
                member.AddressID       = -1;
                member.DateInserted    = DateTime.Today;
                member.DateUpdated     = DateTime.Today;
                member.ASPUserId       = User.Identity.GetUserId();
                member.USR             = User.Identity.GetUserName();
                member.ActiveIndicator = true;
                db.Members.Add(member);
                try
                {
                    db.SaveChanges();
                }
                catch (System.Data.Entity.Validation.DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                          eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                               ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                }

                return(RedirectToAction("Index", "Home"));
            }
            ValidationResult          results  = validator.Validate(member);
            IList <ValidationFailure> failures = results.Errors;
            StringBuilder             sb       = new StringBuilder();

            foreach (var e in results.Errors)
            {
                ModelState.AddModelError(e.PropertyName, e.ErrorMessage);
                ModelState.AddModelError(e.PropertyName + "Error", e.ErrorMessage);
                sb.AppendLine(e.ErrorMessage);
            }
            ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName", member.CountryID);
            ViewBag.StateID   = new SelectList(db.CountryStates, "StateID", "StateName", member.StateID);
            ViewBag.MemberSubscriptionTypeID = new SelectList(db.MemberSubscriptionTypes, "MemberSubscriptionTypeID", "MemberSubscriptionTypeCode", member.MemberSubscriptionTypeID);
            return(View(member));
        }
Exemple #21
0
        // Returns PaymentTransactionID for this transaction.
        private CashCloudPurchaseTransactionRequest PersistPaymentRequest(CashCloudPurchaseTransactionRequest purchaseTransactionRequest)
        {
            PaymentTransaction paymentTransaction = new PaymentTransaction();

            paymentTransaction.Action                     = purchaseTransactionRequest.action;
            paymentTransaction.Address                    = purchaseTransactionRequest.address;
            paymentTransaction.Amount                     = Convert.ToDecimal(purchaseTransactionRequest.amount);
            paymentTransaction.City                       = purchaseTransactionRequest.city;
            paymentTransaction.ClientIP                   = purchaseTransactionRequest.customerip;
            paymentTransaction.CountryCode                = purchaseTransactionRequest.countryCode;
            paymentTransaction.CurrencyCode               = purchaseTransactionRequest.currencyCode;
            paymentTransaction.email                      = purchaseTransactionRequest.Email;
            paymentTransaction.Member                     = purchaseTransactionRequest.member;
            paymentTransaction.MemberInGameID             = purchaseTransactionRequest.MemberInGameID;
            paymentTransaction.MerchantIP                 = purchaseTransactionRequest.merchantip;
            paymentTransaction.StateCode                  = purchaseTransactionRequest.stateCode;
            paymentTransaction.TrackID                    = purchaseTransactionRequest.trackid;
            paymentTransaction.TransactionRequestDateTime = purchaseTransactionRequest.transactionDateTime;
            paymentTransaction.UDF1                       = purchaseTransactionRequest.udf1;
            paymentTransaction.UDF2                       = purchaseTransactionRequest.udf2;
            paymentTransaction.UDF3                       = purchaseTransactionRequest.udf3;
            paymentTransaction.UDF4                       = purchaseTransactionRequest.udf4;
            paymentTransaction.UDF5                       = purchaseTransactionRequest.udf5;
            paymentTransaction.Zip           = purchaseTransactionRequest.zip;
            paymentTransaction.PaymentStatus = "UNPAID";

            db.PaymentTransactions.Add(paymentTransaction);

            try
            {
                db.SaveChanges();
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                           ve.PropertyName, ve.ErrorMessage);
                    }
                }
            }
            purchaseTransactionRequest.paymentTransactionID = paymentTransaction.PaymentTransactionID;
            return(purchaseTransactionRequest);
        }
Exemple #22
0
        public ActionResult UploadBanner(HttpPostedFileBase uploadFile)
        {
            if (Request != null)
            {
                HttpPostedFileBase file = Request.Files["uploadFile"];

                if ((file != null) && (file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName))
                {
                    string fileName        = file.FileName;
                    string fileContentType = file.ContentType;
                    byte[] fileBytes       = new byte[file.ContentLength];
                    file.InputStream.Read(fileBytes, 0, Convert.ToInt32(file.ContentLength));


                    Banner banner = new Banner();
                    banner.BannerName  = fileName;
                    banner.BannerType  = 3;
                    banner.DisplayDate = DateTime.Now;
                    banner.BannerImage = fileBytes;
                    db.Banners.Add(banner);
                }
            }
            db.SaveChanges();
            return(View("Index"));
        }
Exemple #23
0
        public bool save(Member member)
        {
            try
            {
                if (db.Members.Count(m => m.MemberID == member.MemberID) == 0)
                {
                    db.Members.Add(member);
                }

                db.SaveChanges();
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage);
                    }
                }
                return(false);
            }
            return(true);
        }
Exemple #24
0
        // Returns PaymentTransactionID for this transaction.
        private PurchaseTransactionRequest PersistPaymentRequest(PurchaseTransactionRequest purchaseTransactionRequest)
        {
            PaymentTransaction paymentTransaction = new PaymentTransaction();

            paymentTransaction.Action       = "1";
            paymentTransaction.Address      = "";
            paymentTransaction.Amount       = Convert.ToDecimal(purchaseTransactionRequest.CC_Amount);
            paymentTransaction.City         = purchaseTransactionRequest.bill_city;
            paymentTransaction.ClientIP     = purchaseTransactionRequest.ip_address;
            paymentTransaction.CountryCode  = purchaseTransactionRequest.bill_country;
            paymentTransaction.CurrencyCode = "ZAR";
            paymentTransaction.email        = purchaseTransactionRequest.EmailAddress;
            paymentTransaction.Member       = purchaseTransactionRequest.bill_last_name + ", " + purchaseTransactionRequest.bill_first_name;
            //paymentTransaction.MemberInGameID = purchaseTransactionRequest.MemberInGameID;
            paymentTransaction.MerchantIP = "";
            paymentTransaction.StateCode  = purchaseTransactionRequest.bill_state;
            paymentTransaction.TrackID    = purchaseTransactionRequest.Reference;
            paymentTransaction.TransactionRequestDateTime = purchaseTransactionRequest.transactionDateTime;
            paymentTransaction.Zip           = purchaseTransactionRequest.bill_zip;
            paymentTransaction.PaymentStatus = "UNPAID";

            db.PaymentTransactions.Add(paymentTransaction);

            try
            {
                db.SaveChanges();
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                           ve.PropertyName, ve.ErrorMessage);
                    }
                }
            }
            purchaseTransactionRequest.paymentTransactionID = paymentTransaction.PaymentTransactionID;
            return(purchaseTransactionRequest);
        }
Exemple #25
0
        public void AddMemberToGame(ApplicationUser User)
        {
            Member      member = db.Members.Where(m => m.ASPUserId.Equals(User.Id)).First();
            List <Game> games  = findGlobalGames(member.MemberID).ToList();

            foreach (Game game in games)
            {
                MemberInGame mig = new MemberInGame();
                mig.GameID           = game.GameID;
                mig.MemberID         = member.MemberID;
                mig.DateInserted     = DateTime.Now;
                mig.DateUpdated      = DateTime.Now;
                mig.WinIndicator     = false;
                mig.PaymentIndicator = false;
                mig.USR = member.EmailAddress;
                db.MemberInGames.Add(mig);
                db.SaveChanges();
            }
        }
Exemple #26
0
        public string QueueEmail()
        {
            DateTime baseDateTime = DateTime.MinValue;

            if (priority != null)
            {
                newMail.Priority = ((int)priority > 0) ? (int)priority : newMail.Priority;
            }

            if (sendAfter != null && sendAfter > DateTime.MinValue)
            {
                newMail.SendAfter = sendAfter;
            }

            if (fromName != "" && fromName != null)
            {
                newMail.FromName = fromName;
            }

            if (fromAddress != "" && fromAddress != null)
            {
                newMail.FromAddress = fromAddress;
            }

            newMail.MemberID = memberID;
            newMail.RecipientEmailAddress = recipientEmailAddress;
            newMail.RecipientName         = recipientName;
            newMail.EmailSubject          = emailSubject;
            newMail.EmailBodyText         = emailBodyText;

            db.Emails.Add(newMail);
            try
            {
                db.SaveChanges();
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                                           ve.PropertyName, ve.ErrorMessage);
                    }
                }
                return("Error");
            }
            return("Success");
        }
Exemple #27
0
        public ActionResult Create([Bind(Include = "ProductLocationID,ProductInGameID,Address,DeliveryAgentName,DateInserted,DateUpdated,USR")] ProductLocation productLocation)
        {
            if (ModelState.IsValid)
            {
                db.ProductLocations.Add(productLocation);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ProductInGameID = new SelectList(db.ProductInGames, "ProductInGameID", "Currency", productLocation.ProductInGameID);
            return(View(productLocation));
        }
Exemple #28
0
        public ActionResult Create([Bind(Include = "ProductInGameID,ProductID, PriceInGame,GameID,Quantity,CurrencyID,DateInserted,DateUpdated,USR")] ProductInGame productInGame)
        {
            ProductInGameValidator validator = new ProductInGameValidator();

            if (ModelState.IsValid)
            {
                //Deduct quantity from Product table if stock available
                //@Patrick 6) Depletes the product Quantity from the "Available Stock" amount on the Product record.
                //Available Stock must not go negative (Validator checks for this)
                //Get Product
                var product = db.Products.Where(x => x.ProductID == productInGame.ProductID).First();
                //Deplete available stock on hand
                product.AvailableSOH -= productInGame.Quantity;


                //Save
                if (product.AvailableSOH >= 0)
                {
                    db.Entry(product).State = EntityState.Modified;
                    db.SaveChanges();
                }
                else
                {
                    ModelState.AddModelError("QuantityError", "Not enough stock on hand for this product");
                    ViewBag.CurrencyID = new SelectList(db.Currencies, "CurrencyID", "CurrencyCode", productInGame.CurrencyID);
                    ViewBag.GameID     = new SelectList(db.Games, "GameID", "GameCode", productInGame.GameID);
                    ViewBag.ProductID  = new SelectList(db.Products, "ProductID", "ProductSKUCode", productInGame.ProductID);
                    return(View(productInGame));
                }


                db.ProductInGames.Add(productInGame);
                db.SaveChanges();
                return(RedirectToAction("Edit", new { id = productInGame.ProductInGameID }));
            }

            FluentValidation.Results.ValidationResult results = validator.Validate(productInGame);
            IList <ValidationFailure> failures = results.Errors;
            StringBuilder             sb       = new StringBuilder();

            foreach (var e in results.Errors)
            {
                ModelState.AddModelError(e.PropertyName + "Error", e.ErrorMessage);
                sb.AppendLine(e.ErrorMessage);
            }

            ViewBag.CurrencyID = new SelectList(db.Currencies, "CurrencyID", "CurrencyCode", productInGame.CurrencyID);
            ViewBag.GameID     = new SelectList(db.Games, "GameID", "GameCode", productInGame.GameID);
            ViewBag.ProductID  = new SelectList(db.Products, "ProductID", "ProductSKUCode", productInGame.ProductID);
            return(View(productInGame));
        }
Exemple #29
0
        public ActionResult Create([Bind(Include = "ProductID,ProductPrice, ProductSKUCode,OwnerID,SOH, AvailableSOH, IsExclusive, ContractID,ProductName,ProductDescription,DateInserted,DateUpdated,USR,Terms,link,URL")] Product product)
        {
            ProductValidator validator = new ProductValidator();

            if (ModelState.IsValid && validator.Validate(product).IsValid)
            {
                db.Products.Add(product);
                db.SaveChanges();
                return(RedirectToAction("Edit", new { id = product.ProductID }));
            }

            ValidationResult          results  = validator.Validate(product);
            IList <ValidationFailure> failures = results.Errors;
            StringBuilder             sb       = new StringBuilder();

            foreach (var e in results.Errors)
            {
                ModelState.AddModelError(e.PropertyName, e.ErrorMessage);
            }

            ViewBag.ContractID = new SelectList(db.Contracts, "ContractID", "ContractCode", product.ContractID);
            ViewBag.OwnerID    = new SelectList(db.Owners, "OwnerID", "OwnerCode", product.OwnerID);
            return(View(product));
        }
Exemple #30
0
        public ActionResult FiveMinDeal(int productID, String numberOfWinners, String quantity, String priceInGame, String referencePrice, String address, String currencyID)
        {
            Game game = GetGame().Game;

            game.GameRules = GetGame().GameRules.ToList();
            Game fiveMin = new Game();

            fiveMin.GameCode               = game.GameCode + "5MD";
            fiveMin.GameDescription        = game.GameCode + "5MD";
            fiveMin.GameTypeID             = 2;
            fiveMin.GameName               = game.GameName + "5MD";
            fiveMin.DateInserted           = DateTime.Now;
            fiveMin.DateUpdated            = DateTime.Now;
            fiveMin.USR                    = game.USR;
            fiveMin.NumberOfWinners        = Convert.ToInt32(numberOfWinners);
            fiveMin.MemberSubscriptionType = game.MemberSubscriptionType;
            //  fiveMin.restart = false;

            fiveMin.Global = game.Global;

            DateTime executeTime = game.GameRules.Where(gr => gr.GameRuleCode.Equals("ResolveActualWinners")).First().ExcecuteTime;

            db.Games.Add(fiveMin);
            fiveMin.GameRules.Add(toRule("PrepareGameRule", fiveMin.GameID, "PrepareGameRule", executeTime, 1));
            fiveMin.GameRules.Add(toRule("StartGame", fiveMin.GameID, "StartGame", executeTime.AddSeconds(20), 1));
            fiveMin.GameRules.Add(toRule("ResolvePotentialWinners", fiveMin.GameID, "ResolvePotentialWinners", executeTime.AddSeconds(30), 1));
            fiveMin.GameRules.Add(toRule("ResolveActualWinners", fiveMin.GameID, "ResolveActualWinners", executeTime.AddMinutes(5).AddSeconds(20), 1));
            db.SaveChanges();
            Game g = db.Games.Find(game.GameID);

            g.NextGameID = fiveMin.GameID;
            fiveMin.ProductInGames.Add(toProductInGame(productID, 0, Convert.ToDecimal(priceInGame), Convert.ToDecimal(referencePrice), Convert.ToInt32(quantity)));
            db.SaveChanges();
            fiveMin.ProductInGames.First().ProductLocations.Add(toProductLocation(fiveMin.ProductInGames.First().ProductInGameID, address));
            db.SaveChanges();
            ViewBag.CurrencyID = new SelectList(db.Currencies, "CurrencyID", "CurrencyCode");
            ViewBag.ProductID  = new SelectList(db.Products, "ProductID", "ProductSKUCode");
            return(RedirectToAction("../Games/IndexMakeGame"));
        }