Exemple #1
0
        public void OnActionExecuting(ActionExecutingContext filterContext)
        {
            RouteValueDictionary routeValues = new RouteValueDictionary();

            routeValues.Add("action", "Index");
            routeValues.Add("controller", "Quota");

            int currentValue;
            int maxValue;
            int categoryID;

            int.TryParse(filterContext.RequestContext.HttpContext.Request["DictCategoryID"], out categoryID);
            bool deny = new QuotaRepository().QuotaExceeded(QuotaType, categoryID, out maxValue, out currentValue);

            filterContext.Controller.TempData["quotaType"]    = QuotaType;
            filterContext.Controller.TempData["currentValue"] = currentValue;
            filterContext.Controller.TempData["maxValue"]     = maxValue;

            if (deny)
            {
                if (filterContext.RequestContext.HttpContext.Request.IsAjaxRequest())
                {
                    filterContext.Controller.TempData["isAjax"] = true;
                }
                else
                {
                    filterContext.Controller.TempData["isAjax"] = false;
                }

                filterContext.Result = new RedirectToRouteResult(routeValues);
            }
        }
Exemple #2
0
 public UnitOfWork(ApplicationDbContext context)
 {
     _context           = context;
     Patients           = new PatientRepository(context);
     Appointments       = new AppointmentRepository(context);
     Attandences        = new AttendanceRepository(context);
     Cities             = new CityRepository(context);
     Profesors          = new ProfesorRepository(context);
     Specializations    = new SpecializationRepository(context);
     Users              = new ApplicationUserRepository(context);
     Persons            = new PersonRepository(context);
     Faculties          = new FacultyRepository(context);
     FacultyTypes       = new FacultyTypeRepository(context);
     FacultySectors     = new FacultySectorRepository(context);
     Faculties2         = new Faculty2Repository(context);
     Quotas             = new QuotaRepository(context);
     PracticeTypes      = new PracticeTypeRepository(context);
     RatingTypes        = new RatingTypeRepository(context);
     Mentors            = new MentorRepository(context);
     Students           = new StudentRepository(context);
     Internships        = new InternshipRepository(context);
     StudentInternships = new StudentInternshipRepository(context);
     StudentRatings     = new StudentRatingRepository(context);
     FacultyCourses     = new FacultyCourseRepository(context);
     Firms              = new FirmRepository(context);
     FirmTypes          = new FirmTypeRepository(context);
 }
        private long Order(passengerList p, FareEnquiry_Response_Type3 Response, TransactionalTrainFareRequest Request, passengerList[] psngerArray)
        {
            IIDCardTypeRepository       _card         = new IDCardTypeRepository(_applicationDbContext);
            IQuotaRepository            _quota        = new QuotaRepository(_applicationDbContext);
            IUserRegistrationRepository _user         = new UserRegistrationRepository(_applicationDbContext);
            ITicketStatusRepository     _status       = new TicketStatusRepository(_applicationDbContext);
            IMerchantTypeRepository     _merchantType = new MerchantTypeRepository(_applicationDbContext);
            var Status       = _status.FindBy(x => x.fullName == "ORDERD").FirstOrDefault().Id;
            var QuotaId      = _quota.FindBy(x => x.shortName == Request.quota).FirstOrDefault().Id;
            var Icardno      = _card.FindBy(x => x.name == p.passengerCardType).FirstOrDefault().Id;
            var User         = _user.FindBy(x => x.merchantAccount == Request.loginAccountNo).SingleOrDefault();
            var merchantType = _merchantType.FindBy(x => x.merchantId == User.merchantId).SingleOrDefault();
            // Dynamic Pgcharges
            decimal PgCharge = merchantType.conditionalAmount >= Convert.ToDecimal(Response.totalFare) ?decimal.Divide(decimal.Multiply(Convert.ToDecimal(Response.totalFare), Convert.ToDecimal(merchantType.pgChargeUnderCondition)), 100)
            :decimal.Divide(decimal.Multiply(Convert.ToDecimal(Response.totalFare), Convert.ToDecimal(merchantType.pgChargeBeyondCondition)), 100);

            TicketOrders Order = _order.AddTicketOrder(new TicketOrders()
            {
                sourceStation = Request.trainFrom,
                destStation   = Request.trainTo,
                trainNumber   = Request.trainNo,
                trainName     = Response.trainName,
                Class         = Request.trainClass,
                reserveUpto   = Request.trainTo,
                bordingPoint  = Request.request.boardingStation,
                ticketAmt     = Convert.ToDecimal(Response.totalFare),
                totalAmt      = Convert.ToDecimal(Response.totalFare) + merchantType.oxigenServiceCharge - merchantType.merchantCommission, //from database from --
                //merchantConfigTable(totalfare+oxigenServiceCharge-MerchantCommission)
                journeyDay            = Convert.ToInt32(Request.journyDate.Substring(6)),
                journeyMonth          = Convert.ToInt32(Request.journyDate.Substring(4, 2)),
                journeyYear           = Convert.ToInt32(Request.journyDate.Substring(0, 4)),
                quota                 = Convert.ToInt32(QuotaId), //from data base based on quota id
                pmtGatewayName        = merchantType.pgName,
                pmtCardType           = Request.pmtCardType,
                accountNumber         = Request.accountNumber,
                irctcServiceCharge    = Convert.ToDecimal(Response.wpServiceCharge) + Convert.ToDecimal(Response.wpServiceTax),
                operatorCode          = Request.operatorCode,
                mobileNo              = Request.request.mobileNumber,
                idCardNumber          = p.passengerCardNumber,
                idCardType            = Convert.ToInt32(Icardno), //will get by p.passengerCardType from database
                ticketStatus          = Convert.ToInt32(Status),  //ticketstatus from database
                paymentGateway        = (long)(PgCharge),         //payment gateway charges from database in percent
                session               = Request.userSession,
                bookingDate           = DateTime.Now,
                oxigenServiceCharge   = merchantType.oxigenServiceCharge, //from database from merchantConfigTable
                email                 = Request.PassengerEmail,           //from database using login account no
                loginAccountNo        = Request.loginAccountNo,
                bookingSource         = HttpContext.Connection.RemoteIpAddress.ToString(),
                reservationChoice     = (Request.request.reservationChoice) == "FALSE" ? "N" : "Y",
                isTatkal              = Request.isTatkal,
                ticketVerificationKey = Request.loginAccountNo + ":" + Request.trainNo + ":" + Request.trainFrom + ":" + Request.trainTo + ":" + Request.userSession + ":" + Request.journyDate + ":" + Request.request.mobileNumber,
                psgAddress            = Request.psgAddress,
                irctcTxnNumber        = Request.request.clientTransactionId
            });

            _order.Commit();
            if (psngerArray != null)
            {
                foreach (passengerList p1 in psngerArray)
                {
                    long NewpsngrId = addPassenger(Icardno, Order.Id, p1, Response, Request);
                }
            }
            else
            {
                long NewpsngrId = addPassenger(Icardno, Order.Id, p, Response, Request);
            }
            return(Order.Id);
        }