コード例 #1
0
        public async Task <IActionResult> Create([Bind("TaskId,TaskName,SumLost,SumGain,Comment,File,Finished,TaskStarted,TaskEnd,DepartmentId,TaskTypeId")] Tasks tasks, [Bind("Task_FileId,TaskId,FileId")] Task_File task_file, List <int> ListofFiles)
        {
            var ManId = _context.Managers.ToList().FirstOrDefault(u => u.UserId == _userManager.GetUserId(User)).ManagerId;
            var DepId = _context.User.ToList().FirstOrDefault(u => u.Id == _userManager.GetUserId(User)).DepartmentId;

            tasks.DepartmentId = DepId;
            if (ModelState.IsValid)
            {
                _context.Add(tasks);
                await _context.SaveChangesAsync();

                foreach (var item in ListofFiles)
                {
                    Task_File ttt = new Task_File()
                    {
                        TaskId = tasks.TaskId,
                        FileId = item
                    };

                    _context.Task_Files.Add(ttt);
                    await _context.SaveChangesAsync();
                }
                //task_file.TaskId = tasks.TaskId;
                //task_file.Task_FileId = FileId;
                //_context.Add(task_file);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            List <SelectListItem> items = new List <SelectListItem>();

            foreach (var item in _context.FileHistory.Include(w => w.Task_Files).ThenInclude(w => w.Tasks).Where(w => w.FileFinished == false))
            {
                SelectListItem selectListItem = new SelectListItem
                {
                    Text  = item.Name + " #" + item.FileUrl,
                    Value = item.FileId.ToString(),
                };
                SelectListItem sel = selectListItem;
                items.Add(sel);
            }
            ViewBag.File             = items;
            ViewData["DepartmentId"] = new SelectList(_context.Departments, "DepartmentId", "DepartmentId", tasks.DepartmentId);
            ViewData["TaskTypeId"]   = new SelectList(_context.Task_Types, "TaskTypeID", "NameType", tasks.TaskTypeId);
            return(View(tasks));
        }
コード例 #2
0
        public async Task <IActionResult> Edit(int id, [Bind("TaskId,TaskName,SumLost,SumGain,Comment,File,Finished,TaskStarted,TaskEnd,DepartmentId,TaskTypeId")] Tasks tasks, List <int> ListofFiles)
        {
            if (id != tasks.TaskId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var task_file = _context.Task_Files.Where(w => w.TaskId == id).ToList();
                    if (task_file != null)
                    {
                        foreach (var i in task_file)
                        {
                            _context.Task_Files.Remove(i);
                        }
                    }
                    foreach (var item in ListofFiles)
                    {
                        Task_File ttt = new Task_File()
                        {
                            TaskId = tasks.TaskId,
                            FileId = item
                        };

                        _context.Task_Files.Add(ttt);
                        await _context.SaveChangesAsync();
                    }

                    _context.Update(tasks);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TasksExists(tasks.TaskId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            List <SelectListItem> items = new List <SelectListItem>();

            foreach (var item in _context.FileHistory.Include(w => w.Task_Files).ThenInclude(w => w.Tasks).Where(w => w.FileFinished == false))
            {
                SelectListItem selectListItem = new SelectListItem
                {
                    Text  = item.Name + " #" + item.FileUrl,
                    Value = item.FileId.ToString(),
                };
                SelectListItem sel = selectListItem;
                items.Add(sel);
            }
            var a = _context.Task_Files.Where(i => i.TaskId == id).ToList().Select(i => i.FileId);

            tasks.selectedFiles = new List <int> {
            };
            foreach (int i in a.ToArray())
            {
                if (i != null)
                {
                    tasks.selectedFiles.Add(i);
                }
            }
            ViewBag.File = items;

            ViewData["DepartmentId"] = new SelectList(_context.Departments, "DepartmentId", "DepartmentId", tasks.DepartmentId);
            ViewData["TaskTypeId"]   = new SelectList(_context.Task_Types, "TaskTypeID", "NameType", tasks.TaskTypeId);
            return(View(tasks));
        }