public string CreateTask(ELTask eLTask, string date, HttpPostedFileBase file) { if (ModelState.IsValid) { eLTask.DocumentPath = FileOperations.SaveFile(file, Server, pathToSave, extensions); eLTask.AuthorId = GetUser(eLTask); if (string.IsNullOrEmpty(eLTask.Name)) { eLTask.Name = ""; } db.ELTask.Add(eLTask); UserELTask userTask = new UserELTask(); DateTime tempDate; try { tempDate = Convert.ToDateTime(date); } catch { tempDate = DateTime.Now.AddDays(7); } userTask.Date = tempDate; userTask.ELTask = eLTask; var userIdentity = User.Identity.GetUserId(); int userId = db.User.Where(x => x.IdentityId == userIdentity).Select(x => x.UserId).First(); userTask.UserId = userId; db.UserELTask.Add(userTask); db.SaveChanges(); } return(eLTask.Name); }
public ActionResult EditUserTaskModal(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } UserELTask eLUserTask = db.UserELTask.Find(id); if (eLUserTask == null) { return(HttpNotFound()); } return(PartialView(eLUserTask)); }
private UserELTask AddNewTaskByGroup(string groupName, IQueryable <int> bannedTasks, int userId, string userLvl, bool withLowerLvl = false) { var ban = from ut in db.UserELTask.Include("ELTask") where ut.UserId == userId && ut.Done == true && ut.ELTask.AuthorId == 1 && ut.ELTask.Group == groupName select ut.ELTask.TaskId; ban = bannedTasks.Concat(ban); var tasks = from t in db.ELTask where !bannedTasks.Contains(t.TaskId) && t.AuthorId == 1 && t.Group == groupName select t; var temp = tasks.Where(x => x.Difficult == userLvl); if (temp.Count() < 1 || withLowerLvl) { List <string> lvl = GetLessUserLvl(userLvl); if (withLowerLvl) { temp = temp.Concat(tasks.Where(x => lvl.Contains(x.Difficult))); } else { temp = tasks.Where(x => lvl.Contains(x.Difficult)); } } temp = temp.OrderBy(x => Guid.NewGuid()).Take(1); UserELTask task = new UserELTask { Date = DateTime.Now.AddDays(7), UserId = userId }; try { task.TaskId = temp.Select(x => x.TaskId).First();//el; } catch { task = null; } return(task); }
public bool EditUserTask(UserELTask eLUserTask, HttpPostedFileBase result) { var path = FileOperations.SaveFile(result, Server, pathToSave, extensions); if (!string.IsNullOrWhiteSpace(path)) { FileOperations.DeleteIfExist(Server, eLUserTask.ResultDocPath); eLUserTask.ResultDocPath = path; } db.Entry(eLUserTask).State = EntityState.Modified; db.SaveChanges(); if (eLUserTask.Done) { return(true); } else { return(false); } }