using System.Collections.Generic; using System.Web.Mvc; using System.Web.Routing; using ApacKernel.Extensions; using ApacKernel.Web.MVC; using ApacSale.Web.MVC; using Now.Business; using Now.Web.Models; using Now.Web.Services; namespace Now.Web.Controllers { [Compress] [ServerStamp] [HandleError] [HttpsRequired] [RoutePrefix("consolidation")] public class ConsolidationController : BaseController { [AllowAnonymous] public ActionResult BrowserRedirect(string returnUrl) { var controller = RouteData.Values["redirectToController"] as string; return new RedirectToRouteResult("Default", new RouteValueDictionary(new { controller, action = MvcHelper.LandingPage, returnUrl })); } [Route("")] [Permission(DashboardPermissions.Consolidation)] public ActionResult Index() { ViewBag.DefaultPage = "instant"; ViewBag.DefaultController = "Consolidation"; ConsolidationWorkflow wkfl = ConsolidationWorkflow.Instance; var model = wkfl.GetDispatchedOrdersStats(); return View("Instant", model); } [Route("{rangeName}")] [Permission(DashboardPermissions.ConsolidationLocation)] public ActionResult LocationNumbers(string rangeName) { ViewBag.DefaultPage = "instant"; ViewBag.DefaultController = "Consolidation"; ViewBag.RangeName = rangeName; ConsolidationWorkflow wkfl = ConsolidationWorkflow.Instance; var model = wkfl.GetDispatchedOrdersStats(); return View("LocationNumbers", model); } [Route("statistics/{interval?}")] [Permission(DashboardPermissions.ConsolidationStatistic)] public ActionResult Statistics(string interval) { ViewBag.DefaultPage = "instant"; ViewBag.DefaultController = "Consolidation"; ViewBag.FilterOptions = new List { new SwitcherModel("Day", "/consolidation/statistics/day", "day", true), new SwitcherModel("Week", "/consolidation/statistics/week", "week") }; ViewBag.ChartTimeInterval = interval.IsNullOrTrimEmpty() ? "day" : interval.ToLower(); return View("Statistics"); } } }