예제 #1
0
        // GET: Worker
        public ActionResult Index()
        {
            ApplicationUser      user        = db.FindUser(User.Identity.GetUserId());
            WorkerIndexViewModel workerIndex = new WorkerIndexViewModel()
            {
                Events         = db.GetEvents(user.Id).Select(e => CalenderViewModel.MapCalenderToCalenderViewModel(e)),
                Information    = db.GetInformation(user.Id).Select(i => InformationViewModel.MapInformation(i)),
                DepartmentName = user.GetDepartmentName()
            };

            return(View(workerIndex));
        }
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            InformationViewModel informationViewModel = InformationViewModel.MapInformation(db.Information(id.Value));

            if (informationViewModel == null)
            {
                return(HttpNotFound());
            }
            return(View(informationViewModel));
        }
        // GET: Information/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Information          info = db.Information(id.Value);
            InformationViewModel informationViewModel = InformationViewModel.MapInformation(info);

            if (informationViewModel == null)
            {
                return(HttpNotFound());
            }
            informationViewModel.AllowEdit = db.GetManagedDepartmentsByUserName(User.Identity.Name).Contains(info.Department);
            return(View(informationViewModel));
        }
        public ActionResult Edit(int?id)
        {
            ViewBag.Departments = db.GetManagedDepartmentsByUserName(User.Identity.Name).Select(d => new SelectListItem()
            {
                Text = d.Name, Value = d.ID.ToString()
            });
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            InformationViewModel informationViewModel = InformationViewModel.MapInformation(db.Information(id.Value));

            if (informationViewModel == null)
            {
                return(HttpNotFound());
            }
            return(View(informationViewModel));
        }
        private IEnumerable <InformationViewModel> IndexInformation()
        {
            List <InformationViewModel> informationToShow = new List <InformationViewModel>();
            InformationViewModel        infoToAdd;

            foreach (Information info in db.InformationsForUsersManagedDepartments(User.Identity.Name))
            { //info for users managed departments (that he does manage)
                infoToAdd           = InformationViewModel.MapInformation(info);
                infoToAdd.AllowEdit = true;
                informationToShow.Add(infoToAdd);
            }
            foreach (Information info in db.InformationsForUser(User.Identity.Name))
            { //info for users own department (that he does not manage)
                if (!informationToShow.Any(i => i.ID == info.ID))
                {
                    infoToAdd           = InformationViewModel.MapInformation(info);
                    infoToAdd.AllowEdit = false;
                    informationToShow.Add(infoToAdd);
                }
            }
            return(informationToShow);
        }
 public ActionResult PublicNews()
 {
     return(PartialView(db.Informations(true).Select(i => InformationViewModel.MapInformation(i))));
 }