protected void GetSalesAgent(IOffer offer, XElement input, string tagName = "sales-agent") { XElement sa = GetFirstElement(input, tagName); RoleEnum saRole = GetRole(sa); string name = GetText(sa, "name"); string phone = GetText(sa, "phone"); MyEntityContext ctx = Application.Context; IAgent agent = ctx.Agents.Where(x => x.Name == name && x.Phone == phone).FirstOrDefault(); string op = "Got"; if (agent == null) { agent = ctx.Agents.Create(); agent.GUID = GetGUID(); agent.Name = name; agent.Phone = phone; agent.Role = saRole; ctx.Add(agent); ctx.SaveChanges(); op = "Added"; } /* * Console.WriteLine(string.Format("{3} agent: {0}:{1}:{2}", * agent.Name, agent.Phone, * agent.Role, * op)); */ offer.Agent = agent; }
private void ApplyOffer(Product item, IList <IOffer> offers, int offerId) { IOffer openOffer = offers.FirstOrDefault(o => o.Id == offerId && !o.OfferSatisfied); if (openOffer == null) { if (offerId == 1) { openOffer = new Offer1(); } else { openOffer = new Offer2(); } openOffer.ProductsInOffer.Add(item); openOffer.CheckOfferConditions(); offers.Add(openOffer); } else { openOffer.ProductsInOffer.Add(item); openOffer.CheckOfferConditions(); } }
private void ResolveDepedencies() { m_offer = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IOffer>(); m_CustGroup = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.ICustomerGroups>(); m_CustCondition = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.ICustomerGroupCondition>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); }
public ComissionController(IApproved iApproved, IAspNetUser users, IOffer dbOffer, IStatusController iStatusControlle) { db = iApproved; _users = users; _dbOffer = dbOffer; _iStatusController = iStatusControlle; }
public void UpdateOffer(IOffer offer, List <IProduct> products = null, DateTime?dateCreated = null, DateTime?dateValid = null, List <ITransport> transports = null, double?price = null, double?transportPrice = null) { if (products != null) { offer.Products = products; } if (dateCreated != null) { offer.DateCreated = (DateTime)dateCreated; } if (dateValid != null) { offer.DateValid = (DateTime)dateValid; } if (transports != null) { offer.AvailableTransports = transports; } if (price != null) { offer.OfferPrice = (double)price; } if (transportPrice != null) { offer.TransportPrice = (double)transportPrice; } }
protected void GetSalesAgent(IOffer offer, XElement input, string tagName = "sales-agent") { XElement sa = GetFirstElement(input, tagName); RoleEnum saRole = GetRole(sa); string name = GetText(sa, "name"); string phone = GetText(sa, "phone"); MyEntityContext ctx = Application.Context; IAgent agent = ctx.Agents.Where(x => x.Name == name && x.Phone == phone).FirstOrDefault(); if (agent == null) { agent = ctx.Agents.Create(); agent.GUID = GetGUID(); agent.Name = name; agent.Phone = phone; agent.Role = saRole; ctx.Add(agent); ctx.SaveChanges(); } offer.Agent = agent; // FIXME: Implement }
public void TestTimesTheOfferMustApply() { OfferRedeemer offerRedeeemer = new OfferRedeemer(); IBasket myBasket = createBasket(7, 2); // 7 milks and 2 lettuces IOffer offer = buy2MilksGet20percentOffOffer(); Assert.AreEqual(3, offerRedeeemer.timesTheOfferMustApply(myBasket, offer), "The offer in this test should 3 times"); }
public void TestΙsEnoughProductsInBasketForOfferToApply() { OfferRedeemer offerRedeeemer = new OfferRedeemer(); IBasket myBasket = createBasket(4, 2); // 4 milks and 2 lettuces IOffer offer = buy2MilksGet20percentOffOffer(); Assert.IsTrue(offerRedeeemer.isEnoughProductsInBasketForOfferToApply(myBasket, offer)); }
private void ResolveDependencies() { m_PassThroughRewards = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IPassThroughRewards>(); m_Offer = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IOffer>(); m_SVProgram = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IStoredValueProgramService>(); m_PointsProgram = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IPointsProgramService>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); }
void SendTick(IOffer offer) { if (OnTick != null) { TickEventArgs args = new TickEventArgs(offer.Instrument, offer.Time, offer.Bid, offer.Ask, offer.Volume); OnTick(this, args); } }
private void ResolveDepedencies() { m_TCProgramCondition = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.ITrackableCouponConditionService>(); m_Offer = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IOffer>(); m_TCProgram = CurrentRequest.Resolver.Resolve <ITrackableCouponProgramService>(); m_ActivityLog = CurrentRequest.Resolver.Resolve <IActivityLogService>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); }
public void AddOffer(IOffer offer) { if (offer == null) { throw new ArgumentNullException(); } this.offers.Add(offer); }
private void ResolveDepedencies() { m_StoredValueCondition = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IStoredValueCondition>(); m_Offer = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IOffer>(); m_StoredValueProgram = CurrentRequest.Resolver.Resolve <IStoredValueProgramService>(); m_dbAccess = CMS.AMS.CurrentRequest.Resolver.Resolve <IDBAccess>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); }
public OfferController(IOffer iOffer, ITypeOfOffer iTypeOfOffer, IProblem iProblem, IStatus iStatus, IDirection iDirection, IAspNetUser users) { db = iOffer; _iTypeOfOffer = iTypeOfOffer; _iProblem = iProblem; _iStatus = iStatus; _iDirection = iDirection; _users = users; }
public void AddOffer(IOffer offer) { if (offer == null) { throw new ArgumentNullException(); } _currentOffers.Add(offer); }
public void TestApplyOfferToBasket() { OfferRedeemer offerRedeeemer = new OfferRedeemer(); IBasket myBasket = createBasketWithUniqueProducts(); // 5 unique milks and 2 vegetables IOffer offer = buy2MilksGet20percentOffOffer(); IBasket updatedBasket = offerRedeeemer.applyOfferAndGetBasket(myBasket, offer); Assert.AreEqual(new decimal(178), updatedBasket.getGrandTotal(), "The total should be 2*24 + 3*30 + 2*20 = 178"); }
/// <summary> /// Resolve all required dependencies. /// </summary> private void ResolveDependencies() { m_Offer = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IOffer>(); m_Commondata = CurrentRequest.Resolver.Resolve <CMS.AMS.Common>(); m_Commondata.Open_LogixRT(); m_LocalizationService = CurrentRequest.Resolver.Resolve <ILocalizationService>(); m_ProximityMessageRewardService = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IProximityMessageRewardService>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); m_CommonInc = CurrentRequest.Resolver.Resolve <Copient.CommonInc>(); }
private void ResolveDepedencies() { CurrentRequest.Resolver.AppName = "UEoffer-rew-pref.aspx"; m_Offer = CurrentRequest.Resolver.Resolve <IOffer>(); m_Preference = CurrentRequest.Resolver.Resolve <IPreferenceService>(); m_PreferenceReward = CurrentRequest.Resolver.Resolve <IPreferenceRewardService>(); m_ActivityLog = CurrentRequest.Resolver.Resolve <IActivityLogService>(); m_dbAccess = CurrentRequest.Resolver.Resolve <CMS.DB.IDBAccess>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); }
// The following helper methods should be private but it has been marked as public to facilitate unit testing public IBasket getUpdatedBasketAfterApplyingOffer(IBasket basket, IOffer offer) { if (isEnoughProductsInBasketForOfferToApply(basket, offer)) { // find how many times the offer should apply // apply the offer by reducing the price of any item the offer is applicable for return(applyOfferAndGetBasket(basket, offer)); } return(basket); }
public Transaction(IClient customer, IOffer offer, ITransactionType transactionType, double price, double discount, DateTime date, int rating) { this.customer = customer; this.offer = offer; this.transactionType = transactionType; this.price = price; this.discount = discount; this.date = date; this.rating = rating; ID = Guid.NewGuid(); }
public void GetTransportCost_ValidateCost_Successful() { IOffer offer = manager.GetLowestOffer(); ITransport transport = offer.AvailableTransports.ElementAt(0); manager.GetTransportCost(offer, transport); var expected = transport.TransportCoefficient * offer.OfferPrice; Assert.AreEqual(expected, offer.TransportPrice); }
private void ResolveDependencies() { CurrentRequest.Resolver.AppName = "UEoffer-rew-tc.aspx"; m_TCProgram = CurrentRequest.Resolver.Resolve <ITrackableCouponProgramService>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); m_CRService = CurrentRequest.Resolver.Resolve <ICouponRewardService>(); m_ActivityLog = CurrentRequest.Resolver.Resolve <IActivityLogService>(); m_Offer = CurrentRequest.Resolver.Resolve <IOffer>(); m_Commondata = CurrentRequest.Resolver.Resolve <CMS.AMS.Common>(); m_CommonInc = CurrentRequest.Resolver.Resolve <CommonInc>(); }
public void GivenProductWithAssociatedOffer_WhenGetOfferCalled_ThenReturnsExpectedFunc() { // Arrange IOffer productWithOffer = CreateProductWithAssociatedOffer(); // Act var offerProduct = productWithOffer.GetOffer(); // Assert Assert.That(offerProduct, Is.InstanceOf(typeof(Func <IProduct, uint, IProduct>))); }
public void ProcessOffer(IOffer offer, IBooking booking, IBookingOffer bookingOffer) { if (offer.MinSpend < booking.BookingTotal()) { bookingOffer.Value = offer.Value; bookingOffer.OfferCode = offer.OfferCode; bookingOffer.OfferDescription = offer.OfferDescription; bookingOffer.OfferID = offer.OfferId; booking.AddBookingOffer(bookingOffer); } }
public OfferResponse(IOffer <TTarget, TProduct> offer, Guid publisherId, object publisher, string response, string category, object information) { Id = Guid.NewGuid(); Offer = offer; PublisherId = publisherId; Publisher = publisher; Response = response; Category = category; Information = information; }
public void UpdateOffer(IOffer offer, double?price, List <IProduct> products, List <ITransport> transports, IClient client) { if (offer == null) { throw new ArgumentNullException(); } //offer.Price = price; offer.ListOfProducts = products; offer.ListOfTransports = transports; offer.Client = client; }
public static IOffer CreateOffer(OfferType type) { IOffer offer = null; switch (type) { case OfferType.Rent: offer = new RentOffer(); break; case OfferType.Sale: offer = new SaleOffer(); break; } return(offer); }
public void Initialize(IOffer offer) { _offer = offer; purchaseButton.onClick.AddListener(() => _offer.Purchase((success) => { if (success) { OnOfferWasPurchased?.Invoke(this, EventArgs.Empty); } })); _purchaseButtonLayout.Product = _offer.Product; gameObject.SetActive(true); }
private void ResolveDependencies() { m_InstantWinService = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IInstantWinConditionService>(); m_Offer = CurrentRequest.Resolver.Resolve <CMS.AMS.Contract.IOffer>(); m_Commondata = CurrentRequest.Resolver.Resolve <CMS.AMS.Common>(); m_CommonInc = CurrentRequest.Resolver.Resolve <CommonInc>(); m_CacheData = CurrentRequest.Resolver.Resolve <CacheData>(); m_LocalizationService = CurrentRequest.Resolver.Resolve <ILocalizationService>(); m_ActivityLogService = CurrentRequest.Resolver.Resolve <IActivityLogService>(); m_OAWService = CurrentRequest.Resolver.Resolve <IOfferApprovalWorkflowService>(); m_Commondata = new CMS.AMS.Common(Environment.MachineName, "UEOffer_con_UEInstantWin.aspx"); LanguageID = CurrentUser.AdminUser.LanguageID; m_Commondata.Open_LogixRT(); }
private List <CMS.AMS.Models.Offer> GetAttachedOffersByID(Int32 pID) { offerService = CurrentRequest.Resolver.Resolve <IOffer>(); AMSResult <List <CMS.AMS.Models.Offer> > offerResObj = offerService.GetofferByTrackableProgramID(pID); if (offerResObj.ResultType != AMSResultType.Success) { DisplayError(offerResObj.GetLocalizedMessage <List <CMS.AMS.Models.Offer> >(LanguageID)); return(null); } else { return((List <CMS.AMS.Models.Offer>)offerResObj.Result); } }
public int timesTheOfferMustApply(IBasket basket, IOffer offer) { // get number of relevant products int numberOfApplicableProducts = 0; foreach (var product in basket.Products) { if (product.GetType() == (offer.ProductForWhichOfferIsApplicable)) { numberOfApplicableProducts++; } } //return the div of the following return(numberOfApplicableProducts / offer.NumberOfItemsForOfferToBeApplicable); }
public void Publish(IOffer offer) { _EventAggregator.Publish(offer); }
public void Setup() { offer = new MilkOffer(); }
public void Setup() { offer = new BreadOffer(); }
private void AddOffer(IOffer offer) { this.Offers.Add(offer); }