root/trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs @ 885

Wersja 885, 10.3 KB (wprowadzona przez alina, 16 years temu)

re #215 dodanie tlumaczen, poprawne wyswietlenie tekstow na stronie Platnosc/Show

Line 
1using System;
2using System.Linq;
3using System.Text;
4using System.Web;
5using System.Web.Mvc;
6using System.Web.Mvc.Ajax;
7using Platnosci.Models;
8using Platnosci.Core.Linq;
9using Platnosci.Core.Interface;
10using System.Collections.Generic;
11using System.Globalization;
12using System.Web.UI;
13using System.Threading;
14using System.Data.Linq;
15using System.Web.Configuration;
16using System.Web.Routing;
17
18namespace Platnosci.Controllers
19{
20   
21    [Authorize]
22    public class PlatnoscController : Controller
23    {
24        public const string ISPAID = "payment_deposited";       //transakcja potwierdzona do rozliczenia
25        private readonly PlatnosciDataContext _context;
26        private readonly IDataContext _context1;
27        private readonly IRepository<PotwierdzeniaEcard> _rep;
28        private readonly IRepository<PlatnosciEcard> _repPl;
29        private FunkcjePlatnosci _func;
30        private string weryfikacja;
31        private string brakdanych;
32        private string zaplacono;
33        private string err_imie;
34        private string err_nazwisko;
35       
36        public PlatnoscController()
37        {
38            _context = new PlatnosciDataContext();
39            _rep = new Repository<PotwierdzeniaEcard>(new DataContext1());
40            _repPl = new Repository<PlatnosciEcard>(new DataContext1());
41            _func = new FunkcjePlatnosci();
42                     
43        }
44        public PlatnoscController(IDataContext datacontext)
45        {
46            _rep = new Repository<PotwierdzeniaEcard>(datacontext);
47            _repPl = new Repository<PlatnosciEcard>(datacontext);
48            _context1 = datacontext;
49            _func = new FunkcjePlatnosci();
50        }
51        public ActionResult Show(string id, string language)
52        {
53            language = _func.setLanguage(language);
54            ustawTlumaczenia();
55            int id1 = ConvertId(id);
56
57            vPlatnosciEcard platnosc = _rep.FindInvoiceById(id1).SingleOrDefault();
58            if (!String.IsNullOrEmpty(Iserror(platnosc).error)) return View("Error1", Iserror(platnosc));
59
60            string kwota = "";
61            kwota = _func.BruttoToString(platnosc.Brutto, platnosc.waluta_brutto, platnosc.waluta_miano);
62            var payer = InitPayer("", "", platnosc.ID_faktury);
63            var invoiceDeatailsViewData = InitInvoiceDetailsViewData(platnosc, payer, "", kwota); 
64
65            var tablica_potwierdzenia = _rep.FindItemsByIdFaktury(id1);
66            if (tablica_potwierdzenia.Count > 0) //platnosc za fakture zostala uregulowana
67            {
68                string data_zaplaty = String.Format("{0:dd-MM-yyyy}", tablica_potwierdzenia[0].AUTHTIME);
69                invoiceDeatailsViewData.info = String.Format(zaplacono, platnosc.Faktura_Numer, data_zaplaty);
70                invoiceDeatailsViewData.termin = data_zaplaty;
71                return View("Paid", invoiceDeatailsViewData);
72            }       
73            return View(invoiceDeatailsViewData);             
74        }       
75        [Authorize]
76        [AcceptVerbs(HttpVerbs.Post)]
77        public ActionResult Show(Payer payer, string language)
78        {
79            language = _func.setLanguage(language);
80            ustawTlumaczenia();
81            vPlatnosciEcard platnosc = _rep.FindInvoiceById(payer.Id_faktury).SingleOrDefault();
82            if (!String.IsNullOrEmpty(Iserror(platnosc).error)) return View("Error1", Iserror(platnosc));
83           
84            if (String.IsNullOrEmpty(payer.FirstName))
85            {
86                ModelState.AddModelError("Payer.FirstName", err_imie);
87            }
88            if (String.IsNullOrEmpty(payer.LastName))
89            {
90                ModelState.AddModelError("Payer.LastName", err_nazwisko);
91            }
92            if (ModelState.IsValid == false)
93            {
94                string kwota = "";
95                kwota = _func.BruttoToString(platnosc.Brutto, platnosc.waluta_brutto, platnosc.waluta_miano);
96                var viewData = InitInvoiceDetailsViewData(platnosc, payer, "", kwota );
97                return View("Show",viewData);
98            }
99            if (payer != null)
100            {               
101                System.Diagnostics.Debug.WriteLine("PlatnosciController:Show");
102                return RedirectToAction("Merchant", "Merchant", payer);
103            }               
104            else return View("Error");
105        }
106        public ActionResult Ok(string id, string language)
107        {
108            language = _func.setLanguage(language);
109            ustawTlumaczenia();
110            int id1 = ConvertId(id);
111            vPlatnosciEcard platnosc = _rep.FindInvoiceById(id1).SingleOrDefault();
112            if (!String.IsNullOrEmpty(Iserror(platnosc).error)) return View("Error1", Iserror(platnosc));           
113           
114            var invoiceDeatailsViewData = InitInvoiceDetailsViewData(platnosc, null, "" , "");
115            return View(invoiceDeatailsViewData);
116        }
117        public ActionResult Fail(string id, string language)
118        {
119            language = _func.setLanguage(language);
120            ustawTlumaczenia();
121            int id1 = ConvertId(id);
122            vPlatnosciEcard platnosc = _rep.FindInvoiceById(id1).SingleOrDefault();
123            if (!String.IsNullOrEmpty(Iserror(platnosc).error)) return View("Error1", Iserror(platnosc));
124           
125            var invoiceDeatailsViewData = InitInvoiceDetailsViewData(platnosc, null, "", "");
126            return View(invoiceDeatailsViewData);
127        }
128        public ActionResult Status()
129        {
130            string MERCHANTNUMBER = Request.Form["MERCHANTNUMBER"];
131            int ORDERNUMBER = Convert.ToInt32(Request.Form["ORDERNUMBER"]);
132            string COMMTYPE = Request.Form["COMMTYPE"];
133            string CURRENTSTATE = Request.Form["CURRENTSTATE"];
134            string PREVIOUSSTATE = Request.Form["PREVIOUSSTATE"];
135            bool PAYMENTTYPE = Convert.ToBoolean(Request.Form["PAYMENTTYPE"]);
136            bool EVENTTYPE = Convert.ToBoolean(Request.Form["EVENTTYPE"]);
137            bool PAYMENTNUMBER = Convert.ToBoolean(Request.Form["PAYMENTNUMBER"]);
138            string APPROVALCODE = Request.Form["APPROVALCODE"];
139            string VALIDATIONCODE = Request.Form["VALIDATIONCODE"];
140            string BIN = Request.Form["BIN"];
141            DateTime AUTHTIME = Convert.ToDateTime(Request.Form["AUTHTIME"]);
142            string TYPE = Request.Form["TYPE"];
143            string WITHCVC = Request.Form["WITHCVC"];
144            DateTime DATATRANSMISJI = Convert.ToDateTime(Request.Form["DATATRANSMISJI"]);
145           
146            PotwierdzeniaEcard potwierdzenie = new PotwierdzeniaEcard();
147            potwierdzenie.APPROVALCODE = APPROVALCODE;
148            potwierdzenie.AUTHTIME = AUTHTIME;
149            potwierdzenie.BIN = BIN;
150            potwierdzenie.COMMTYPE = COMMTYPE;
151            potwierdzenie.CURRENTSTATE = CURRENTSTATE;
152            potwierdzenie.DATATRANSMISJI = DATATRANSMISJI;
153            potwierdzenie.EVENTTYPE = EVENTTYPE;
154            potwierdzenie.MERCHANTNUMBER = MERCHANTNUMBER;
155            potwierdzenie.ORDERNUMBER = ORDERNUMBER;
156            potwierdzenie.PAYMENTNUMBER = PAYMENTNUMBER;
157            potwierdzenie.PAYMENTTYPE = PAYMENTTYPE;
158            potwierdzenie.PREVIOUSSTATE = PREVIOUSSTATE;
159            potwierdzenie.TYPE = TYPE;
160            potwierdzenie.VALIDATIONCODE = VALIDATIONCODE;
161            potwierdzenie.WITHCVC = WITHCVC;
162
163            _rep.Insert(potwierdzenie);
164            UpdateStatus(ORDERNUMBER, CURRENTSTATE);
165            return View();
166        }
167        private Payer InitPayer(string FirstName, string LastName, int Id_faktury)
168        {
169            Payer payer = new Payer();
170            payer.FirstName = "";
171            payer.LastName = "";
172            payer.Id_faktury = Id_faktury;
173            return payer;
174        }
175        private InvoiceDetailsViewData InitInvoiceDetailsViewData(vPlatnosciEcard platnosc, Payer payer, string status, string brutto )
176        {
177            var invoiceDeatailsViewData = new InvoiceDetailsViewData();
178            invoiceDeatailsViewData.vPlatnosciEcard = platnosc;
179            invoiceDeatailsViewData.Payer = payer;
180            invoiceDeatailsViewData.Status = status;
181            invoiceDeatailsViewData.brutto = brutto;
182            return invoiceDeatailsViewData;
183        }
184        private void ustawTlumaczenia()
185        {
186            weryfikacja = HttpContext.GetGlobalResourceObject("tlumaczenia", "weryfikacja").ToString();
187            brakdanych = HttpContext.GetGlobalResourceObject("tlumaczenia", "brakdanych").ToString();
188            zaplacono = HttpContext.GetGlobalResourceObject("tlumaczenia", "zaplacono").ToString();
189            err_imie = HttpContext.GetGlobalResourceObject("tlumaczenia", "err_imieWK").ToString();
190            err_nazwisko = HttpContext.GetGlobalResourceObject("tlumaczenia", "err_nazwiskoWK").ToString();
191        }
192        public void setWeryfikacja(string value)
193        {
194            this.weryfikacja = value;
195        }
196        public void setBrakDanych(string value)
197        {
198            this.brakdanych = value;
199        }
200        public void setZaplacono(string value)
201        {
202            this.zaplacono = value;
203        }
204        public int ConvertId(string id)
205        {
206            int id1 = 0;
207            try
208            {
209                id1 = (id != null) ? Convert.ToInt32(id) : 0;
210            }
211            catch
212            {
213            }
214            return id1;
215        }
216        public ErrorViewData Iserror(vPlatnosciEcard platnosc)
217        {
218            string errortxt = "";
219            if (platnosc == null) errortxt = brakdanych;
220            else if (!_func.UserIdentity(platnosc, HttpContext.User.Identity.Name)) errortxt = weryfikacja;
221            ErrorViewData errorViewData = _func.InitErrorViewData(errortxt);
222            return errorViewData;
223        }
224        public void UpdateStatus(int ordernumber, string currentstate)
225        {
226            var platnosc = _rep.FindPaymentByOrdernumber(ordernumber).SingleOrDefault();
227            if (platnosc != null && platnosc.Status == true && currentstate == ISPAID)
228            {
229                platnosc.Status = true;
230                platnosc.Status_data = DateTime.Now;
231                _repPl.Update(platnosc);
232            }
233        }               
234    }
235}
Notatka: Zobacz TracBrowser aby uzyskać więcej informacji.