Пример #1
0
        public async Task <List <DriverSalaryReportModel> > DriverSalaryReport(SalaryReportQuery queryDto)
        {
            if (queryDto.StartDate == null)
            {
                queryDto.StartDate = Clock.Now.Date;
            }
            if (queryDto.EndDate == null)
            {
                queryDto.EndDate = Clock.Now;
            }

            var reports = await _unitOfWork
                          .GetDbContext <ApplicationDbContext>()
                          .Database.ExecuteSqlToObject <DriverSalaryReportModel>(@"Exec Sp_DriverSalary", queryDto.DriverCode,
                                                                                 queryDto.StartDate, queryDto.EndDate);

            return(reports.ToList());
        }
        public async Task <List <VehicleTripRegistrationDTO> > GetVehicleTripByDriverCode(SalaryReportQuery dto)
        {
            var query = from vehicleTripRegistration in GetAll()
                        join journeymanagement in _journeyManagementRepo.GetAll() on vehicleTripRegistration.Id equals journeymanagement.VehicleTripRegistrationId
                        join trip in _tripSvc.GetAll() on vehicleTripRegistration.TripId equals trip.Id
                        join route in _routerepo.GetAll() on trip.RouteId equals route.Id

                        where (vehicleTripRegistration.DriverCode == dto.DriverCode)
                        &&
                        (vehicleTripRegistration.DepartureDate >= dto.StartDate && vehicleTripRegistration.DepartureDate <= dto.EndDate)
                        // && (journeymanagement.JourneyStatus == JourneyStatus.Received)
                        select new VehicleTripRegistrationDTO
            {
                Id = vehicleTripRegistration.Id,
                PhysicalBusRegistrationNumber = vehicleTripRegistration.PhysicalBusRegistrationNumber,
                DepartureDate  = vehicleTripRegistration.DepartureDate,
                IsVirtualBus   = vehicleTripRegistration.IsVirtualBus,
                IsBusFull      = vehicleTripRegistration.IsBusFull,
                RouteId        = vehicleTripRegistration.Trip.RouteId,
                IsBlownBus     = vehicleTripRegistration.IsBlownBus,
                DateCreated    = vehicleTripRegistration.CreationTime,
                DateModified   = vehicleTripRegistration.LastModificationTime,
                DriverCode     = vehicleTripRegistration.DriverCode,
                BookingTypeId  = vehicleTripRegistration.BookingTypeId,
                TripId         = vehicleTripRegistration.TripId,
                VehicleModelId = vehicleTripRegistration.VehicleModelId,
                VehicleModel   = vehicleTripRegistration.VehicleModel.Name,
                JourneyType    = vehicleTripRegistration.JourneyType,
                RouteName      = route.Name,
                DriverFee      = route.DriverFee,
                JourneyStatus  = journeymanagement.JourneyStatus
            };

            return(await query.AsNoTracking().ToListAsync());
        }
Пример #3
0
        public async Task <IServiceResponse <List <VehicleTripRegistrationDTO> > > VehicleTripsByDriverCode(SalaryReportQuery dto)
        {
            return(await HandleApiOperationAsync(async() =>
            {
                var busTripRegistration = await _vtrSvc.GetVehicleTripByDriverCode(dto);

                return new ServiceResponse <List <VehicleTripRegistrationDTO> >
                {
                    Object = busTripRegistration
                };
            }));
        }
Пример #4
0
 public async Task <IServiceResponse <List <DriverSalaryReportModel> > > DriverSalary(SalaryReportQuery queryDto)
 {
     return(await HandleApiOperationAsync(async() =>
     {
         var reports = await _bookingReportService.DriverSalaryReport(queryDto);
         return new ServiceResponse <List <DriverSalaryReportModel> >
         {
             Object = reports
         };
     }));
 }