コード例 #1
0
        public ServicePathViewModel GetServicePathForProvider(String id, int pathId)
        {
            List <Service> services      = helper.getUserServices(id);
            List <Service> activeSerives = helper.getServicesFiltered(services, CoreController.ServiceStatus.Active.ToString());
            List <Service> doneServices  = helper.getServicesFiltered(services, CoreController.ServiceStatus.Done.ToString());
            double         speed         = UserHelperLibrary.ServiceProviderSpeed(helper.findUser(id), doneServices.Count);

            speed = speed < 1 ? 1 : speed;
            List <ServicePath> paths = db.ServicePaths.Where(a => a.id.Equals(pathId)).ToList();

            if (paths.Count == 0)
            {
                paths = db.ServicePaths.Where(a => a.ServiceProviderId.Equals(null) && a.Enabled).ToList();
            }

            List <ServicePathViewModel> result = new List <ServicePathViewModel>();

            foreach (var item in paths)
            {
                int numOfOpenDreams       = activeSerives.Where(a => a.ServicePathId.Equals(item.id)).Count();
                ServicePathViewModel temp = new ServicePathViewModel();
                temp.id   = item.id;
                temp.Cost = item.Cost;
                temp.Name = item.Name;
                temp.NumberOfPeopleWaiting = numOfOpenDreams;
                temp.AvgWaitingTime        = UserHelperLibrary.getWaitingTimeMessage(Double.Parse(speed.ToString()),
                                                                                     Double.Parse(numOfOpenDreams.ToString())).Replace("Your average waiting time is ", "");
                result.Add(temp);
            }
            return(result[0]);
        }
コード例 #2
0
        public ServiceViewModel getMapping(Service service)
        {
            List <Service> allService = db.Services.Where(a => a.ServiceProviderId.Equals(service.ServiceProviderId) &&
                                                          a.ServicePathId.Equals(service.ServicePathId) &&
                                                          a.Status.Equals(CoreController.ServiceStatus.Active.ToString())).ToList();

            List <Service> services      = helper.getUserServices(service.ServiceProviderId);
            List <Service> activeSerives = helper.getServicesFiltered(services, CoreController.ServiceStatus.Active.ToString());
            List <Service> doneServices  = helper.getServicesFiltered(services, CoreController.ServiceStatus.Done.ToString());
            double         speed         = UserHelperLibrary.ServiceProviderSpeed(helper.findUser(service.ServiceProviderId), doneServices.Count);

            AccountController accountCont = new AccountController();
            ServiceViewModel  result      = new ServiceViewModel();

            result.Comments                    = service.Comments;
            result.Country                     = service.Country;
            result.CreationDate                = service.CreationDate;
            result.Creator                     = service.Creator;
            result.Description                 = service.Description;
            result.CreatorId                   = service.CreatorId;
            result.DidYouExorcism              = service.DidYouExorcism;
            result.DreamDate                   = service.DreamDate;
            result.Explanation                 = service.Explanation;
            result.ExplanationDate             = service.ExplanationDate;
            result.HaveYouPrayedBeforeTheDream = service.HaveYouPrayedBeforeTheDream;
            result.id = service.id;
            result.IsThereWakefulness   = service.IsThereWakefulness;
            result.JobStatus            = service.JobStatus;
            result.KidsStatus           = service.KidsStatus;
            result.LastModificationDate = service.LastModificationDate;
            result.Modifier             = service.Modifier;
            result.ModifierId           = service.ModifierId;
            result.Name                = service.Name;
            result.numberOfLikes       = service.numberOfLikes;
            result.numberOfViews       = service.numberOfViews;
            result.PrivateService      = service.PrivateService;
            result.PrivateServicePrice = service.PrivateServicePrice;
            result.PublicServiceAction = service.PublicServiceAction;
            result.RegligionStatus     = service.RegligionStatus;
            result.ServicePathId       = service.ServicePathId;
            result.ServiceProvider     = service.ServiceProvider;
            result.ServiceProviderId   = service.ServiceProviderId;
            result.Sex                      = service.Sex;
            result.SocialStatus             = service.SocialStatus;
            result.Status                   = service.Status;
            result.UserWork                 = service.UserWork;
            result.UserWorkId               = service.UserWorkId;
            result.ServicePath              = service.ServicePath;
            result.NumberOfAllPeopleWaiting = allService.Count > 0 ? allService.Count : 0;
            result.NumberOfRemainingPeople  = allService.Count > 0 ? allService.Where(a => a.CreationDate.CompareTo(service.CreationDate) < 0).Count() : 0;
            result.AvgWaitingTime           = UserHelperLibrary.getWaitingTimeMessage(Double.Parse(speed.ToString()),
                                                                                      Double.Parse(result.NumberOfRemainingPeople.ToString())).Replace("Your average waiting time is ", "");



            return(result);
        }