예제 #1
0
        public ActionResult ActiveTO_Read([DataSourceRequest] DataSourceRequest request, int transporterID, int regionId = -1, string transporterOrderNo = null)//, int round = -1, int transporterOrderId = -1)
        {
            List <TransportOrder> activeTOs;

            if (transporterOrderNo == null)
            {
                activeTOs =
                    _transportOrderService.Get(
                        t =>
                        t.StatusID >= 3 && t.TransporterID == transporterID &&
                        t.TransportOrderDetails.FirstOrDefault().FDP.AdminUnit.AdminUnit2.AdminUnit2.AdminUnitID ==
                        regionId).
                    ToList();
            }
            else
            {
                var dispatchedTransportOrders = _dispatchAllocationService.GetDispatchedTransportOrders();

                activeTOs =
                    _transportOrderService.Get(
                        t => dispatchedTransportOrders.Contains(t.TransportOrderID) &&
                        t.StatusID >= 3 && t.TransporterID == transporterID &&
                        t.TransportOrderDetails.FirstOrDefault().FDP.AdminUnit.AdminUnit2.AdminUnit2.AdminUnitID ==
                        regionId).Where(t => t.TransportOrderNo.ToUpperInvariant().Contains(transporterOrderNo.ToUpperInvariant())).
                    ToList();
            }
            var activeTOsViewModel = GetActiveTOsListViewModel(activeTOs);

            return(Json(activeTOsViewModel.ToDataSourceResult(request)));
        }
예제 #2
0
        public ActionResult BidWinningTransporters_read([DataSourceRequest] DataSourceRequest request)
        {
            var transprtersWithActiveTO     = _transportOrderService.Get(t => t.StatusID == 3, null, "Transporter").Select(t => t.Transporter).Distinct();
            var winningTransprterViewModels = TransporterListViewModelBinder(transprtersWithActiveTO.ToList());

            return(Json(winningTransprterViewModels.ToDataSourceResult(request)));
        }
예제 #3
0
        public ActionResult Index(string transporter = "")
        {
            // var bidWinner = _bidWinnerService.Get(m => m.Transporter.Name.StartsWith(transporter));
            var transporterOrder = _transportOrderService.Get(m => m.Transporter.Name.StartsWith(transporter));

            ViewData["Transporters"] = transporterOrder;
            return(View(transporterOrder));
        }
예제 #4
0
        public ActionResult ActiveTO_Read([DataSourceRequest] DataSourceRequest request, int transporterID)
        {
            var activeTOs =
                _transportOrderService.Get(t => t.StatusID >= 3 && t.TransporterID == transporterID).ToList();
            var activeTOsViewModel = GetActiveTOsListViewModel(activeTOs);

            return(Json(activeTOsViewModel.ToDataSourceResult(request)));
        }
예제 #5
0
        public ActionResult Details(int id)
        {
            var transportOrder          = _transportOrderService.Get(t => t.TransportOrderID == id, null, "TransportOrderDetails.FDP,TransportOrderDetails.FDP.AdminUnit,TransportOrderDetails.Commodity,TransportOrderDetails.Hub,TransportOrderDetails.ReliefRequisition").FirstOrDefault();
            var datePref                = UserAccountHelper.GetUser(User.Identity.Name).DatePreference;
            var statuses                = _workflowStatusService.GetStatus(WORKFLOW.TRANSPORT_ORDER);
            var transportOrderViewModel = TransportOrderViewModelBinder.BindTransportOrderViewModel(transportOrder, datePref, statuses);

            ViewData["Transport.order.detail.ViewModel"] = transportOrder == null ? null :
                                                           GetDetail(transportOrder.TransportOrderDetails);
            return(View(transportOrderViewModel));
        }
예제 #6
0
        public ActionResult Dispatches(int id)
        {
            //id--transportorderid
            var transportOrder = _transportOrderService.Get(t => t.TransportOrderID == id, null, "Transporter").FirstOrDefault();
            var statuses       = _workflowStatusService.GetStatus(WORKFLOW.TRANSPORT_ORDER);
            var currentUser    = _userAccountService.GetUserInfo(HttpContext.User.Identity.Name);

            var datePref = currentUser.DatePreference;

            ViewBag.TransportOrderId = id;
            var transportOrderViewModel = TransportOrderViewModelBinder.BindTransportOrderViewModel(transportOrder,
                                                                                                    datePref, statuses);

            return(View(transportOrderViewModel));
        }
        public ActionResult PaymentRequests(int transporterID)
        {
            var statuses    = _workflowStatusService.GetStatus(WORKFLOW.TRANSPORT_ORDER);
            var currentUser = _userAccountService.GetUserInfo(HttpContext.User.Identity.Name);

            var datePref = currentUser.DatePreference;

            ViewBag.TargetController = "TransporterPaymentRequest";
            var paymentRequests = _transporterPaymentRequestService
                                  .Get(t => t.TransportOrder.TransporterID == transporterID &&
                                       t.BusinessProcess.CurrentState.BaseStateTemplate.StateNo < 2, null,
                                       "Delivery,Delivery.DeliveryDetails,TransportOrder").ToList();
            var transporterPaymentRequests = TransporterPaymentRequestViewModelBinder(paymentRequests);
            var transportOrder             =
                _TransportOrderService.Get(t => t.TransporterID == transporterID && t.StatusID >= 3, null, "Transporter")
                .FirstOrDefault();
            var transportOrderViewModel = TransportOrderViewModelBinder.BindTransportOrderViewModel(transportOrder,
                                                                                                    datePref, statuses);

            ViewBag.TransportOrderViewModel = transportOrderViewModel;
            ViewBag.TransporterID           = transportOrderViewModel.TransporterID;
            if (TempData["CustomError"] != null)
            {
                ModelState.AddModelError("Errors", TempData["CustomError"].ToString());
            }
            return(View(transporterPaymentRequests));
        }
예제 #8
0
        public ActionResult TransporterPerformance_Read([DataSourceRequest] DataSourceRequest request, string searchIndex)
        {
            var transportOrder = _transportOrderService.Get(m => m.ContractNumber.Contains(searchIndex))
                                 .Where(m => m.StatusID == (int)TransportOrderStatus.Closed && m.TransportOrderDetails.Sum(s => s.QuantityQtl) > 0)
                                 .OrderByDescending(m => m.TransportOrderID);
            var transportOrderToDisplay = GetTransportOrder(transportOrder);

            return(Json(transportOrderToDisplay.ToDataSourceResult(request), JsonRequestBehavior.AllowGet));
        }
예제 #9
0
        public ActionResult Contract_Read([DataSourceRequest] DataSourceRequest request, int id = 0)
        {
            var transportOrder = _transportOrderService.Get(m => m.TransportOrderID == id, null, "TransportOrderDetails").OrderByDescending(m => m.TransportOrderID).FirstOrDefault();

            if (transportOrder != null)
            {
                var detailToDisplay = GetTransportContract(transportOrder).ToList();
                return(Json(detailToDisplay.ToDataSourceResult(request)));
            }
            return(RedirectToAction("Index"));
        }
예제 #10
0
        public JsonResult GetDelayedTOs()
        {
            var delayedTOs =
                _transportOrderService.Get(t => t.StatusID == (int)(Cats.Models.Constant.TransportOrderStatus.Signed) && System.Data.Objects.SqlClient.SqlFunctions.DateDiff("day", t.TransporterSignedDate, DateTime.Now) >= 3).ToList();
            var requestes = GetDelayedTransportersListViewModel(delayedTOs)
                            .Select(r => new
            {
                TransportOrderID      = r.TransportOrderID,
                TransportOrderNo      = r.TransportOrderNo,
                SignedDate            = r.SignedDate,
                StartedOn             = r.StartedOn,
                TransporterName       = r.TransporterName,
                OrderExpiryDate       = r.OrderExpiryDate,
                DaysPassedAfterSigned = (int)r.DaysPassedAfterSigned
            }).ToList();

            return(Json(requestes, JsonRequestBehavior.AllowGet));
        }