Exemple #1
0
        public ActionResult Dispatches(string ID, int?DispatchID, int?OrderID)
        {
            ID = ID.StringAndTrim().ToLower();
            if (ID.IsNotNullOrEmpty() && ID != "details" && ID != "create")
            {
                return(HttpNotFound());
            }
            string settingsName = "/Products/Dispatches";
            User   user         = HttpContext.CurrentUser();
            int    userID       = user.ID;

            ProjectDispatch      dispatch = DispatchID.HasValue ? db.ProjectDispatches.FirstOrDefault(val => val.ID == DispatchID) : null;
            ProjectDispatchOrder order    = OrderID.HasValue ? db.ProjectDispatchOrders.FirstOrDefault(val => val.ID == OrderID) : null;

            if (dispatch != null)
            {
                var e = new EntityJs.Client.Events.CheckPermissionsEventArgs(db, "ProjectDispatches", "ProjectDispatch", dispatch, EntityJs.Client.Events.ActionsEnum.Select);
                dispatch.OnCheckPermissions(e);
                if (e.Cancel)
                {
                    dispatch = null;
                }
            }

            var data = new
            {
                Action                           = ID,
                Dispatch                         = dispatch != null?dispatch.ToJson() : null,
                                           Order = order != null?order.ToJson() : null,
                                                       UserSettings = db.UserSettings.Where(val => val.UserID == userID && val.Name.IndexOf(settingsName) == 0).ToList().Select(val => val.ToJson()).ToList()
            };

            ViewBag.Page = "Products.Dispatches";
            return(ViewWithData(data));
        }
Exemple #2
0
        public ActionResult PrintDispatch(int ID)
        {
            ProjectDispatch row = db.ProjectDispatches.Include("ProductDispatches").FirstOrDefault(val => val.ID == ID);

            if (row == null)
            {
                return(HttpNotFound());
            }

            var e = new EntityJs.Client.Events.CheckPermissionsEventArgs(db, "ProjectDispatches", "ProjectDispatch", row, EntityJs.Client.Events.ActionsEnum.Select);

            row.OnCheckPermissions(e);
            if (e.Cancel)
            {
                return(HttpNotFound());
            }

            ViewBag.Dispatch = row;
            ViewBag.Products = row.ProductDispatches.Where(val => !val.Deleted).ToList();
            ViewBag.Page     = "Products.PrintDispatch";
            ViewBag.Print    = true;
            return(View());
        }