public static IPayment GetIpgPayment(PaymentParameters parameters) { var visitor = new FillRequiredFields(); switch (parameters.IpgId) { case 1001: { var irankish = new IranKishGateway(); irankish.AcceptVisitor(visitor, parameters); return(irankish); } case 1002: { var sdsw1 = new SadadSwitch1Gateway(); sdsw1.AcceptVisitor(visitor, parameters); return(sdsw1); } case 1003: { var sadad2 = new SadadSwitch2Gateway(); sadad2.AcceptVisitor(visitor, parameters); return(sadad2); } case 1004: { var tejaratparsian = new TejaratParsianGateway(); tejaratparsian.AcceptVisitor(visitor, parameters); return(tejaratparsian); } case 1005: { var behpardakht = new BehPardakhtGateway(); behpardakht.AcceptVisitor(visitor, parameters); return(behpardakht); } case 1007: { var asanpardakht = new AsanPardakhtGateway(); asanpardakht.AcceptVisitor(visitor, parameters); return(asanpardakht); } case 1008: { var mabna = new MabnaCardGateway(); mabna.AcceptVisitor(visitor, parameters); return(mabna); } } return(null); }
public void Visit(BehPardakhtGateway behPardakhtGateway, PaymentParameters parameters) { behPardakhtGateway.TerminalId = parameters.TerminalId; behPardakhtGateway.UserName = parameters.Username; behPardakhtGateway.UserPassword = parameters.Password; behPardakhtGateway.Amount = parameters.Amount.ToString(); behPardakhtGateway.OrderId = parameters.OrderId.ToString(); behPardakhtGateway.ReturnUrl = parameters.ReturnUrl; behPardakhtGateway.PurchaseLink = parameters.PurchaseLink; behPardakhtGateway.Token = parameters.Token; behPardakhtGateway.AdditionalData = parameters.AdditionalData; behPardakhtGateway.PayerId = parameters.PayerId; behPardakhtGateway.SaleReferenceId = parameters.SaleReferenceId; }