示例#1
0
        public List <ReportsClientTableVM> GetReports()
        {
            SMART_PAYMENT_DBEntities db = new SMART_PAYMENT_DBEntities();

            client = db.CLIENTEs.FirstOrDefault(x => x.CLI_CORREO_ELECTRONICO == System.Web.HttpContext.Current.User.Identity.Name);



            List <PaymentsTableViewModel> lstPayment;

            lstPayment = (from d in db.PAGOes
                          select new PaymentsTableViewModel
            {
                Id = d.PAG_ID,
                Id_Client = d.PAG_IDENTIFICACION_CLIENTE,
                Id_Driver = d.PAG_IDENTIFICACION_CHOFER,
                Id_Route = d.PAG_CODIGO_CTP_RUTA,
                DateOfPayment = d.PAG_FECHA,
                State = d.RECHAZADO
            }).ToList();

            List <RoutesTableViewModel> lstRoutes;

            lstRoutes = (from d in db.RUTAs
                         select new RoutesTableViewModel
            {
                Code = d.RUT_CODIGO_CTP,
                Provincia = d.RUT_PROVINCIA,
                Canton = d.RUT_CANTON,
                Nombre = d.RUT_NOMBRE,
                Costo = d.RUT_COSTO,
                State = d.RUT_ESTADO
            }).ToList();



            List <PaymentsTableViewModel> filteredListPayment = new List <PaymentsTableViewModel>();
            List <ReportsClientTableVM>   filteredReports     = new List <ReportsClientTableVM>();



            foreach (var payment in lstPayment)
            {
                if (client.CLI_IDENTIFICACION.Equals(payment.Id_Client))
                {
                    ReportsClientTableVM newEntryReport = new ReportsClientTableVM();

                    foreach (var route in lstRoutes)
                    {
                        if (payment.Id_Route == route.Code)
                        {
                            newEntryReport.Id            = payment.Id;
                            newEntryReport.Nombre        = route.Nombre;
                            newEntryReport.Costo         = route.Costo;
                            newEntryReport.DateOfPayment = payment.DateOfPayment;
                            newEntryReport.State         = payment.State;

                            filteredReports.Add(newEntryReport);
                        }
                    }
                }
            }

            return(filteredReports);
        }
        public List <ReportsClientTableVM> GetGanancias()
        {
            SMART_PAYMENT_DBEntities db = new SMART_PAYMENT_DBEntities();

            chofer = db.CHOFERs.FirstOrDefault(x => x.CHO_CORREO_ELECTRONICO == System.Web.HttpContext.Current.User.Identity.Name);

            List <PaymentsTableViewModel> lstPayment;

            lstPayment = (from d in db.PAGOes
                          select new PaymentsTableViewModel
            {
                Id = d.PAG_ID,
                Id_Client = d.PAG_IDENTIFICACION_CLIENTE,
                Id_Driver = d.PAG_IDENTIFICACION_CHOFER,
                Id_Route = d.PAG_CODIGO_CTP_RUTA,
                DateOfPayment = d.PAG_FECHA,
                State = d.RECHAZADO
            }).ToList();

            List <RoutesTableViewModel> lstRoutes;

            lstRoutes = (from d in db.RUTAs
                         select new RoutesTableViewModel
            {
                Code = d.RUT_CODIGO_CTP,
                Provincia = d.RUT_PROVINCIA,
                Canton = d.RUT_CANTON,
                Nombre = d.RUT_NOMBRE,
                Costo = d.RUT_COSTO,
                State = d.RUT_ESTADO
            }).ToList();

            System.DateTime             today           = new System.DateTime(System.DateTime.Today.Ticks);
            string                      td              = today.ToShortDateString();
            List <ReportsClientTableVM> filteredReports = new List <ReportsClientTableVM>();

            foreach (var payment in lstPayment)
            {
                System.DateTime recordDate = payment.DateOfPayment;
                string          rd         = recordDate.ToShortDateString();

                if (chofer.CHO_IDENTIFICACION.Equals(payment.Id_Driver) && !payment.State && td.Equals(rd))
                {
                    ReportsClientTableVM newEntryReport = new ReportsClientTableVM();

                    foreach (var route in lstRoutes)
                    {
                        if (payment.Id_Route == route.Code)
                        {
                            newEntryReport.Id            = payment.Id;
                            newEntryReport.Costo         = route.Costo;
                            newEntryReport.DateOfPayment = payment.DateOfPayment;

                            filteredReports.Add(newEntryReport);
                            break;
                        }
                    }
                }
            }

            return(filteredReports);
        }