public IActionResult CreateRequest()
        {
            ViewBag.RequestSuccess = HttpContext.Session.GetString("RequestSuccess");
            ServiceRequestEditModel po = new ServiceRequestEditModel()
            {
                Days        = GetDays(),
                Service     = new SelectList(ServiceImp.GetAll(), "Id", "ServiceName"),
                ServiceType = new SelectList(ServiceTypeImp.GetAll(), "Id", "ServiceType")
            };

            return(View(po));
        }
        public async Task <IActionResult> CreateRequest(ServiceRequestEditModel model)
        {
            if (ModelState.IsValid)
            {
                string output = "";
                foreach (DaysOfWeek p in model.Days)
                {
                    if (p.IsChecked == true)
                    {
                        output += p.name + ",";
                    }
                }
                string name = User.Identity.Name;
                var    lp   = await userManager.FindByNameAsync(name);

                string Id = await userManager.GetUserIdAsync(lp);

                var kp = new ServiceRequest()
                {
                    Customer    = lp,
                    Service     = ServiceImp.Get(model.ServiceID),
                    ServiceType = ServiceTypeImp.Get(model.ServiceTypeID),
                    SheduleDate = DateTime.Parse(model.GetDate),
                    DaysOfWork  = output,
                    Phone       = model.Phone,
                    Address     = model.Address,
                    City        = model.City,
                    Status      = "Not Approved",
                    RequestName = GetName(name) + "/" + model.SheduleDate.ToString()
                };

                ServiceRequestImp.Add(kp);

                ServiceRequestImp.Commit();


                ModelState.Clear();

                HttpContext.Session.SetString("RequestSuccess", "Cleaning Request Successful");

                return(RedirectToAction("CreateRequest"));
            }
            ServiceRequestEditModel po = new ServiceRequestEditModel()
            {
                Days        = GetDays(),
                Service     = new SelectList(ServiceImp.GetAll(), "Id", "ServiceName"),
                ServiceType = new SelectList(ServiceTypeImp.GetAll(), "Id", "ServiceType")
            };

            return(View(po));
        }
        public IActionResult EditRequest(string id)
        {
            var ID = int.Parse(this.protector.Unprotect(id));
            var hj = ServiceRequestImp.Get(ID);
            ServiceRequestEditModel hjk = new ServiceRequestEditModel()
            {
                Customer      = hj.Customer,
                ServiceID     = hj.Service.Id,
                ServiceTypeID = hj.ServiceType.Id,
                SheduleDate   = GetMyDate(hj.SheduleDate),
                SheduleTime   = GetMyTime(hj.SheduleDate),
                Phone         = hj.Phone,
                Address       = hj.Address,
                City          = hj.City,
                Days          = FilterDays(hj.DaysOfWork),
                Status        = "Resheduled",
                Service       = new SelectList(ServiceImp.GetAll(), "Id", "ServiceName"),
                ServiceType   = new SelectList(ServiceTypeImp.GetAll(), "Id", "ServiceType")
            };

            return(View(hjk));
        }
        public IActionResult EditRequest(string id, ServiceRequestEditModel model)
        {
            if (ModelState.IsValid)
            {
                string output = "";
                foreach (DaysOfWeek p in model.Days)
                {
                    if (p.IsChecked == true)
                    {
                        output += p.name + ",";
                    }
                }
                var k = new ServiceRequest()
                {
                    Id          = int.Parse(this.protector.Unprotect(id)),
                    Customer    = model.Customer,
                    Service     = ServiceImp.Get(model.ServiceID),
                    ServiceType = ServiceTypeImp.Get(model.ServiceTypeID),
                    SheduleDate = DateTime.Parse(model.GetDate),
                    Address     = model.Address,
                    Phone       = model.Phone,
                    City        = model.City,
                    DaysOfWork  = output,
                    Status      = "Rescheduled"
                };
                ServiceRequestImp.Update(k);
                ServiceRequestImp.Commit();
                ModelState.Clear();
                return(RedirectToAction("ViewRequest"));
            }
            ServiceRequestEditModel po = new ServiceRequestEditModel()
            {
                Service     = new SelectList(ServiceImp.GetAll(), "Id", "ServiceName"),
                ServiceType = new SelectList(ServiceTypeImp.GetAll(), "Id", "ServiceType")
            };

            return(View(po));
        }
Пример #5
0
        public async Task <ActionResult <ServiceRequestViewModel> > PutServiceRequest(int id, ServiceRequestEditModel serviceRequestModel)
        {
            ServiceRequest serviceRequest = await _serviceRequestsRepository.FindByIdAsync(id);

            if (serviceRequest is null)
            {
                return(BadRequest($"No existe ninguna solicitud de servicio con el código {id}."));
            }

            _mapper.Map(serviceRequestModel, serviceRequest);
            serviceRequest.PublishEvent(new UpdatedServiceRequest(serviceRequest));
            _serviceRequestsRepository.Update(serviceRequest);

            try
            {
                await _unitWork.SaveAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ServiceRequestExists(id))
                {
                    return(NotFound($"Actualización fallida. No existe ninguna solicitud de servicio con el código {id}."));
                }

                throw;
            }

            return(_mapper.Map <ServiceRequestViewModel>(serviceRequest));
        }