public ActionResult SetOrderMarkPaidAgent(GutterCleanOrderModel model) { var order = _orderService.GetOrderById(model.Id); if (order == null || order.Deleted) return new HttpUnauthorizedResult(); if (_workContext.CurrentCustomer.IsAdmin()) { } else if (_workContext.CurrentCustomer.IsAgent() && order.AgentId != _workContext.CurrentCustomer.Id) { return RedirectToAction("OrderDetail"); } if (model.AgentId > 0) { order.IsPayAgentWorker = true; order.LastUpdatedDateUtc = DateTime.UtcNow; _orderService.UpdateOrder(order); //_workflowMessageService.SendOrderPlacedWorkCompletedCustomerNotification(order); } return RedirectToAction("OrderDetail", new { orderId = model.Id }); }
protected virtual GutterCleanOrderModel PrepareOrderDetailsModel(GutterCleanOrder order) { if (order == null) throw new ArgumentNullException("order"); var model = new GutterCleanOrderModel(); model.Id = order.Id; model.OrderGuid =(Guid) order.OrderGuid; model.QuestionSquareFootage = order.QuestionSquareFootage; model.QuestionStyleOfGutter = order.QuestionStyleOfGutter; model.CustomerId = order.CustomerId; model.CustomerName = order.Customer.FirstName + " " + order.Customer.LastName; var r = _questionAnswerEntityDataService.StyleOfGuttersAnswer().Where(i => i.Value == order.QuestionStyleOfGutter).SingleOrDefault(); model.QuestionStyleOfGutterStr = r.Text; model.QuestionYearBuilt = order.QuestionYearBuilt; var year = _questionAnswerEntityDataService.YearBuiltAnswer().Where(i => i.Value == order.QuestionYearBuilt.ToString()).SingleOrDefault(); model.QuestionYearBuiltStr = year.Text; model.RoofMaterial = order.RoofMaterial; model.QuestionDeliveryTimeStr = "5 business days"; if (order.QuestionDeliveryTime == 1) model.QuestionDeliveryTimeStr = "5 business days"; if (order.QuestionDeliveryTime == 2) model.QuestionDeliveryTimeStr = "8 hours"; if (order.QuestionDeliveryTime == 3) model.QuestionDeliveryTimeStr = "4 hours"; model.OrderTotal = order.OrderTotal; model.Address = order.Address; model.City = order.City; model.State = order.State; model.Zipcode = order.Zipcode; model.AgentId = order.AgentId.HasValue ? (int)order.AgentId.Value : 0; model.PaymentStatusId = order.PaymentStatusId; model.OrderStatusId = order.OrderStatusId; model.CaptureTransactionId = order.CaptureTransactionId; model.CaptureTransactionResult = order.CaptureTransactionResult; //model.CreatedOnUtc = order.CreatedOnUtc; model.CreatedOnUtc = _dateTimeHelper.ConvertToUserTime(order.CreatedOnUtc, DateTimeKind.Utc); if (order.CompletionDateUtc.HasValue) model.CompletionDateUtc = _dateTimeHelper.ConvertToUserTime(order.CompletionDateUtc.Value, DateTimeKind.Utc); // This button only show 'Admin User' model.HideSetAgentButton = _workContext.CurrentCustomer.IsAgent(); // agent Mark Paid Button model.HideMarkPaidButton = true; model.IsAgentPaid = order.IsPayAgentWorker.HasValue ? order.IsPayAgentWorker.Value : false; if (_workContext.CurrentCustomer.IsAdmin()) model.orderViewByAdmin = true; if (order.AgentId <= 0) model.HideSetWorkedCompletedButton = true; else { if (((OrderStatus)model.OrderStatusId).ToString() == OrderStatus.Complete.ToString()) { model.HideSetWorkedCompletedButton = true; model.HideSetAgentButton = true; if (!model.IsAgentPaid && !_workContext.CurrentCustomer.IsAgent()) { model.HideMarkPaidButton = false; } } } if (order.IsCustomerQa.HasValue) { if (order.IsCustomerQa.Value) { model.ShowRating = true; var orderSurvey=order.Surveries.FirstOrDefault(); if(orderSurvey!=null) { //model.Question1 =Convert.ToString( orderSurvey.Question1); model.Question2 = Convert.ToString(orderSurvey.Question2); model.Question3 = Convert.ToString(orderSurvey.Question3); model.Question4 = Convert.ToString(orderSurvey.Question4); } // Rating detail will not show to agent. if (_workContext.CurrentCustomer.IsAgent()) { model.ShowRating = false; } } } return model; }
public ActionResult OrderDetail(GutterCleanOrderModel model) { var order = _orderService.GetOrderById(model.Id); if (order == null || order.Deleted) return new HttpUnauthorizedResult(); if (_workContext.CurrentCustomer.IsAdmin()) { } else if (_workContext.CurrentCustomer.IsAgent() && order.AgentId != _workContext.CurrentCustomer.Id) { return RedirectToAction("OrderDetail"); } var customerList = _customerService.GetAllCustomers(new int[] { 4,1 }); if (customerList.Count > 0) { foreach (var customer in customerList) model.AvailableAgents.Add(new SelectListItem() { Text = customer.FirstName + " " + customer.LastName, Value = customer.Id.ToString() }); } return View(model); }