root/trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs @ 970

Wersja 970, 2.5 KB (wprowadzona przez marek, 16 years temu)

re #215 - dodanie nowego projektu z lepsza nazwa i typem projektu

RevLine 
[866]1using System;
2using System.Linq;
3using System.Web.Mvc;
[970]4using adMoto.Payments.Core;
5using adMoto.Payments.Core.Data;
6using adMoto.Payments.Core.Interfaces;
[866]7using Platnosci.Models;
8
9namespace Platnosci.Controllers
10{
11    [Authorize]
12    public class MerchantController : Controller
13    {
[970]14        private readonly IRepository<Invoice> _repVPayment;
[919]15        private readonly IRepository<PlatnosciEcard> _repPayment;
[933]16        private readonly FunkcjePlatnosci _funkcjePlatnosci;
[951]17        private readonly eCardData _eCardData;
[933]18        private readonly ITranslateManager _translateManager;
[866]19
20        public MerchantController()
[896]21        {
[970]22            _repVPayment = new Repository<Invoice>(new DataContext());
[949]23            _repPayment = new Repository<PlatnosciEcard>(new DataContext());
[952]24            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment);
[933]25            _translateManager = new Translation();
[951]26            _eCardData = new eCardData(_repPayment);
[866]27        }
[970]28        public MerchantController(IRepository<Invoice> repVPayment, IRepository<PlatnosciEcard> repPayment, ITranslateManager translate)
[951]29        {
30            _repVPayment = repVPayment;
31            _repPayment = repPayment;
32            _translateManager = translate;
[957]33            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment, _translateManager);
34            _eCardData = new eCardData(_repPayment);
[951]35        }
[866]36        public ActionResult Merchant(Payer payer, string language)
37        {
[950]38            language = _funkcjePlatnosci.SetLanguage(language);
[866]39
[933]40            var id1 = Convert.ToInt32(payer.Id_faktury);
41            var platnosc = _repVPayment.Find(p => p.ID_faktury == id1).SingleOrDefault();
42
[952]43            var errorViewData = _funkcjePlatnosci.IsError(platnosc, ControllerContext.HttpContext.User.Identity.Name);
44            if (!String.IsNullOrEmpty(errorViewData.Error))
45                return View("Error1", errorViewData);
46
[951]47            var merchant = _eCardData.CreateMerchantData(platnosc, payer, language, Session.SessionID);
[933]48           
[956]49            if (merchant == null || (merchant != null && (!String.IsNullOrEmpty(merchant.Error))))
[952]50                return View("Error1", _funkcjePlatnosci.InitErrorViewData(_translateManager.Translate("tlumaczenia", "error_hash"), payer.Id_faktury));
[951]51           
[959]52            var adres = _eCardData.GetUrl(merchant);
[951]53            Response.Redirect(adres);           
[917]54            return new EmptyResult();         
[952]55        }
[866]56    }
57}
Notatka: Zobacz TracBrowser aby uzyskać więcej informacji.