コード例 #1
0
        public async Task <IActionResult> Index(SecJournalModel model)
        {
            if (ModelState.IsValid)
            {
                var str = await dbContext.Journals.FirstOrDefaultAsync(c => c.Id == model.JournalStrId);

                str.Status   = true;
                str.RealDate = DateTime.Now;
                str.Comment  = model.Comment;

                dbContext.SaveChanges();

                var url = RedirectToAction("Index", "Security");
                url.RouteValues = new RouteValueDictionary();
                var result = url.RouteValues.TryAdd("department", RouteData.Values["department"]);
                if (!result)
                {
                    ModelState.AddModelError("", "Ошибка переадресовки");
                    ViewBag.Department = RouteData.Values["department"];
                    return(View("Index", model));
                }

                return(url);
            }
            else
            {
                ModelState.AddModelError("", "Не удалось подтвердить");
                ViewBag.Department = RouteData.Values["department"];
            }

            return(View(model));
        }
コード例 #2
0
        public async Task <IActionResult> Index(string department)
        {
            var user = await dbContext.Users
                       .FirstOrDefaultAsync(u => u.UserName.Equals(User.Identity.Name));

            ViewBag.UserFIO    = String.Format($"{user.SecondName} {user.FirstName} {user.ThirdName}");
            ViewBag.Department = RouteData.Values["department"];

            SecJournalModel model = new SecJournalModel()
            {
                Journals = dbContext.Journals
                           .Include(j => j.Explanation)
                           .Where(d => d.DateBegin.Date.Equals(DateTime.Now.Date) && d.Department.Name.Equals(department))
                           .ToList()
            };

            return(View(model));
        }
コード例 #3
0
        public async Task <IActionResult> IndexAsync()
        {
            var journalStr = await dbContext.Journals
                             .Include(d => d.Department)
                             .Include(e => e.Explanation)
                             .ThenInclude(u => u.User)
                             .Where(j => j.DateBegin.Date.Equals(DateTime.Now.Date) && j.Department.Name.Equals(RouteData.Values["department"].ToString()))
                             .ToListAsync();

            ViewBag.Department = RouteData.Values["department"];

            SecJournalModel model = new SecJournalModel()
            {
                Journals = journalStr
            };

            return(View(model));
        }
コード例 #4
0
        public async Task <IActionResult> WriteExplanatoryNoteToJournalAsync(SecJournalModel model)
        {
            if (ModelState.IsValid)
            {
                var str = await dbContext.Journals.Include(n => n.Explanation).FirstOrDefaultAsync(c => c.Id == model.JournalStrId);

                ExplanatoryNote note = new ExplanatoryNote()
                {
                    Explanation  = model.Explanation,
                    TaskName     = model.TaskName,
                    UserId       = dbContext.Users.Where(u => u.UserName.Equals(User.Identity.Name)).Select(u => u.Id).FirstOrDefault(),
                    Date         = DateTime.Now,
                    TaskType     = ENTaskType.JournalStr,
                    DepartmentId = str.DepartmentId
                };

                await dbContext.ExplanatoryNotes.AddAsync(note);

                await dbContext.SaveChangesAsync();

                str.ExplanationId = dbContext.ExplanatoryNotes.Where(e => e.TaskName.Equals(note.TaskName)).Select(e => e.Id).FirstOrDefault();
                await dbContext.SaveChangesAsync();

                var url = RedirectToAction("Index", "Security");
                url.RouteValues = new RouteValueDictionary();
                var result = url.RouteValues.TryAdd("department", RouteData.Values["department"]);
                if (!result)
                {
                    ModelState.AddModelError("", "Ошибка переадресовки");
                    ViewBag.Department = RouteData.Values["department"];
                    return(View("Index", model));
                }

                return(url);
            }
            else
            {
                ModelState.AddModelError("", "Не удалось создать объяснительную");
                ViewBag.Department = RouteData.Values["department"];
            }
            return(View("Index", model));
        }