Example #1
0
        public ActionResult RprintTicket(TrRprintTicketViewModel vmodel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    TrRprintTicketViewModel vm = new TrRprintTicketViewModel
                    {
                        Tickets   = TicketBL.FindTicket(vmodel),
                        MethodsP  = PaymentBL.FindMethodsList(),
                        Languages = LanguageBL.FindLanguageListWithoutUniversal()
                    };
                    ViewBag.ticket = true;
                    return(View(vm));
                }
                vmodel.MethodsP  = PaymentBL.FindMethodsList();
                vmodel.Languages = LanguageBL.FindLanguageListWithoutUniversal();
                ViewBag.ticket   = false;
                return(View(vmodel));
            }
            catch (Exception ex)
            {
                //to do insert to log file
                var e1 = ex.GetBaseException(); // --> log
                var e4 = ex.Message;            // --> log
                var e5 = ex.Source;             // --> log
                var e8 = ex.GetType();          // --> log
                var e9 = ex.GetType().Name;     // --> log

                return(View("Error"));
            }
        }
Example #2
0
 internal static IList <TrTicketViewModel> FindTicket(TrRprintTicketViewModel vmodel)
 {
     using (IDalTicket dal = new DalTicket())
     {
         IList <int> listTransac          = new List <int>();
         IList <int> listFilter           = new List <int>();
         IList <TrTicketViewModel> result = new List <TrTicketViewModel>();
         DateTime dateMin;
         DateTime dateMax;
         TimeSpan timeDay = vmodel.TimeDay.TimeOfDay;
         DateTime dateDay = vmodel.DateDay.Add(timeDay);
         if (vmodel.TimeSure)
         {
             listTransac = dal.GetTicket(dateDay);
         }
         // if listTransac.Count() = 0 --> erreur estimation du client
         if (listTransac.Count() == 0 || listTransac == null)
         {
             //to do -> rendre les param (-+ 30) dynamiques
             dateMin     = dateDay.AddMinutes(-30);
             dateMax     = dateDay.AddMinutes(30);
             listTransac = dal.GetTicket(dateMin, dateMax);
             if (listTransac.Count() > 1)
             {
                 if (vmodel.Client != null)
                 {
                     int client = int.Parse(vmodel.Client);
                     listTransac = dal.GetTicket(dateMin, dateMax, client);
                 }
                 if (listTransac.Count() > 1)
                 {
                     if (vmodel.GlobalTotal != null)
                     {
                         decimal total = decimal.Parse(vmodel.GlobalTotal);
                         listTransac = dal.GetTicket(dateMin, dateMax, total);
                     }
                 }
                 if (listTransac.Count() > 1)
                 {
                     if (vmodel.Language != null)
                     {
                         int idLanguage = int.Parse(vmodel.Language);
                         listFilter = dal.GetTicket(idLanguage);
                         var listTemp = new List <int>();
                         for (int i = 0; i < listTransac.Count; i++)
                         {
                             if (listFilter.Contains(listTransac[i]))
                             {
                                 listTemp.Add(listTransac[i]);
                             }
                         }
                         listTransac = listTemp;
                     }
                 }
                 if (listTransac.Count() > 1)
                 {
                     if (vmodel.NbItem != null)
                     {
                         int nbItem = int.Parse(vmodel.NbItem);
                         listFilter = dal.GetTicketNbItem(dateMin, dateMax, nbItem);
                         var listTemp = new List <int>();
                         for (int i = 0; i < listTransac.Count; i++)
                         {
                             if (listFilter.Contains(listTransac[i]))
                             {
                                 listTemp.Add(listTransac[i]);
                             }
                         }
                         listTransac = listTemp;
                     }
                 }
                 if (listTransac.Count() > 1)
                 {
                     if (vmodel.MethodP != null)
                     {
                         int idMethodP = int.Parse(vmodel.MethodP);
                     }
                 }
             }
             else if (listTransac.Count() == 0)
             {
                 listTransac = dal.GetAllTicketDay(dateDay);
             }
         }
         for (int i = 0; i < listTransac.Count(); i++)
         {
             string lang;
             if (vmodel.Language == null)
             {
                 lang = FindLanguageTicketByIdTransac(listTransac[i].ToString());
             }
             else
             {
                 //verify if vmodel.Language = ticket language
                 string ticketL = FindLanguageTicketByIdTransac(listTransac[i].ToString());
                 if (vmodel.Language != ticketL)
                 {
                     continue;
                 }
                 else
                 {
                     lang = vmodel.Language;
                 }
             }
             //to do --> change init isChange...
             bool isChange = false;
             result.Add(FillTicket(listTransac[i].ToString(), lang, isChange));
         }
         return(result);
     }
 }