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

Wersja 957, 2.5 KB (wprowadzona przez alina, 16 years temu)

re #215

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