public override void OnStartUp() { this.Member = MemberStrategy.GetMemberFromSession(this.SessionId); if (this.Member == null) { this.StopProcess(); } }
public ValidationResult ValidateWallet(string sessionId, params string[] memberNames) { var wallet = MemberStrategy.GetMemberWallet(this.Member.id); if (this.TotalPrice > wallet.amount) { return(TfValidationResult.Compose("InsufficientCash", memberNames)); } return(null); }
public void PurchaseBonus(string sessionId) { var memberId = MemberStrategy.GetMemberFromSession(sessionId)?.id; if (memberId == null) { return; } this.Bonuses.Entity.member_id = memberId; this.Bonuses.Insert(); TokensStrategy.Add(memberId, -this.Campaign.Entity.price); }
/// <summary> /// Método que me permite cambiar la estrategia de seleccion de miembro /// </summary> /// <param name="strategy"></param> public void SetMemberSrtategy(MemberStrategy strategy) { switch (strategy) { case MemberStrategy.RRMEMORY: SetMemberSrtategy(new MemberStrategyRRM()); break; default: SetMemberSrtategy(new MemberStrategyRRM()); break; } }
public override IEnumerable <ValidationResult> Validate() { yield return(this.ValidateSession()); if (this.IsValid(nameof(this.SessionId), nameof(this.SessionKey))) { this.Library.Member = MemberStrategy.GetMemberFromSession(this.SessionId); this.Library.Carts.Entity.SetValuesFromModel(this); yield return(this.Library.ValidateCart(nameof(this.SessionKey))); this.Library.GetCartItems(); yield return(this.Library.ValidateWallet(this.SessionId, nameof(this.SessionId))); } }
private void InsertOrderHeaders(out int orderId, out int totalPoints) { var orderHeader = _DB.OrderHeaders; orderHeader.Entity.member_id = this.Member.id; orderHeader.Entity.price = this.TotalPrice; orderHeader.Entity.points = this.TotalPoints; orderHeader.Insert(); orderId = orderHeader.Entity.id ?? 0; totalPoints = orderHeader.Entity.points ?? 0; TokensStrategy.Add(this.Member.id, totalPoints); MemberStrategy.UpdateMemberWallet(this.Member.id, -this.TotalPrice); }
public MemberFacade() { strategy = new MemberStrategy(); }
public override void HandleModel() { MemberStrategy.UpdateMemberWallet(this.Member.id, this.Amount ?? 0); }
public override void MapModel() { this.Wallets.Entity.member_id = this.Member.id; this.Amount = MemberStrategy.GetMemberWallet(this.Member.id)?.amount ?? 0; }