Beispiel #1
0
        public bool ServiceRequestDetails(List <ServiceSelectedCatDetails> ServiceRequest)
        {
            var userid            = User.Identity.GetUserId();
            var UserDetails       = new AgingInHomeContext().ConsumerProfiles.FirstOrDefault(d => d.UserId == userid);
            var url               = new ServiceRequestModel().SubmitServiceRequest(ServiceRequest, UserDetails);
            var providercatlistig = ServiceRequest.Select(d => d.catId.ToString());
            var listinglist       = new ProviderListingModel().GetAllListing()
                                    .Where(o => providercatlistig.Contains(o.ProviderCategory1.Id.ToString()) && o.IsApproved == (int)ListingStatus.Accepted).ToList();
            //Get service RequestId
            var RequestId = url.Split(',')[1];
            ServiceRequestModel serviceRequestModel = AutoMapper.Mapper.Map <ServiceRequestModel>(UserDetails);

            serviceRequestModel.Id    = Convert.ToInt32(RequestId);
            serviceRequestModel.Email = UserDetails.AspNetUser.Email;
            foreach (var providerlisting in listinglist.OrderByDescending(s => s.ProviderListingId).ToList())
            {
                //Get selected date time and best time
                var getselectedInfo = ServiceRequest.FirstOrDefault(s => s.catId == providerlisting.ProviderCategory1.Id);
                serviceRequestModel.ServiceDate = Convert.ToDateTime(getselectedInfo.CatserviceDate);
                serviceRequestModel.BestTime    = getselectedInfo.CatBestTime;
                EmailSender.SendEmailToServiceProvider(providerlisting, serviceRequestModel);
                break;
            }
            return(true);
        }
Beispiel #2
0
        public bool UpdateServiceRequestDetails(List <ServiceSelectedCatDetails> ServiceRequest)
        {
            var userid      = User.Identity.GetUserId();
            var UserDetails = new AgingInHomeContext().ConsumerProfiles.FirstOrDefault(d => d.UserId == userid);
            var returnProviderListingIds = new ServiceRequestModel().UpdateServiceRequest(ServiceRequest, UserDetails);

            if (returnProviderListingIds != "")
            {
                var providercatlistig = returnProviderListingIds.Substring(1).Split(',');
                var listinglist       = new ProviderListingModel().GetAllListing();
                var listingForMail    = new List <ProviderListingModel>();
                foreach (var listing in listinglist)
                {
                    if (providercatlistig.Contains(listing.CategoryId.ToString()))
                    {
                        listingForMail.Add(listing);
                    }
                }
                //.Where(o => providercatlistig.Contains(o.ProviderCategory1.Id.ToString()) && o.IsApproved == (int)ListingStatus.Accepted).ToList();
                //Get service RequestId
                var RequestId = ServiceRequest.First().ServiceRequestId;
                ServiceRequestModel serviceRequestModel = AutoMapper.Mapper.Map <ServiceRequestModel>(UserDetails);
                serviceRequestModel.Id    = Convert.ToInt32(RequestId);
                serviceRequestModel.Email = UserDetails.AspNetUser.Email;
                foreach (var providerlisting in listingForMail)
                {
                    if (providerlisting.PrimaryEmail.Contains("@"))
                    {
                        //Get selected date time and best time
                        var getselectedInfo = ServiceRequest.FirstOrDefault(s => s.catId == providerlisting.ProviderCategory1.Id);
                        if (getselectedInfo != null)
                        {
                            serviceRequestModel.ServiceDate = Convert.ToDateTime(getselectedInfo.CatserviceDate);
                            serviceRequestModel.BestTime    = getselectedInfo.CatBestTime;
                            EmailSender.SendEmailToServiceProvider(providerlisting, serviceRequestModel);
                        }
                    }
                }
            }
            return(true);
        }