/** * Updates the value of an existing embedded link * The link and values to update are the parameters */ private void UpdateSysUrl(SysUrl sysUrl, JsonSysUrlUpdate update) { sysUrl.Description = update.name; sysUrl.Url = update.url; sysUrl.Embedded = update.embedded; db.SaveChanges(); }
public ActionResult DeleteConfirmed(int id) { SysUrl sysUrl = db.SysUrls.Find(id); db.SysUrls.Remove(sysUrl); db.SaveChanges(); return(RedirectToAction("Index")); }
/** * Creates a new embedded link and associates a type to it. * This allows embedded links to be easily managed as they are handled similarly and only * only depend on their types. * A type is used as a parameter */ private SysUrl CreateNewSysUrl(SysUrlType type, int taskID) { SysUrl newSysUrl = new SysUrl(); newSysUrl.SysUrlType = type; newSysUrl.TaskID = taskID; db.SysUrls.Add(newSysUrl); db.SaveChanges(); return(newSysUrl); }
public ActionResult Edit([Bind(Include = "SysUrlID,Url,Description,SysUrlType,TaskID")] SysUrl sysUrl) { if (ModelState.IsValid) { db.Entry(sysUrl).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(sysUrl)); }
public ActionResult Create([Bind(Include = "SysUrlID,Url,Description,SysUrlType,TaskID")] SysUrl sysUrl) { if (ModelState.IsValid) { db.SysUrls.Add(sysUrl); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(sysUrl)); }
// GET: SysUrls/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } SysUrl sysUrl = db.SysUrls.Find(id); if (sysUrl == null) { return(HttpNotFound()); } return(View(sysUrl)); }
public ActionResult ManageSysUrl(JsonSysUrl sysUrlMessage) { SysUrl aSysUrl = null; JsonResult res; switch (sysUrlMessage.OperationType) { case TaskType.Add: { Tasks task = db.Tasks.Find(sysUrlMessage.TaskID); if (task == null) { res = Json(new { code = 0, message = "Unknown task" }, "application/json"); } else { aSysUrl = CreateNewSysUrl(sysUrlMessage.SysUrlType, task.TaskID); res = Json(new { code = 1, message = Json(new { sysurl_id = aSysUrl.SysUrlID }).Data }, "application/json"); } break; } case TaskType.Delete: { aSysUrl = db.SysUrls.Find(sysUrlMessage.SysUrlID); if (aSysUrl == null) { res = Json(new { code = 0, message = "Unknown link" }, "application/json"); } else { db.SysUrls.Remove(aSysUrl); db.SaveChanges(); res = Json(new { code = 1, message = "" }, "application/json"); } break; } default: { res = Json(new { code = 0, message = "Unknown operation" }, "application/json"); break; } } return(res); }
/** * Creates a new task and adds it to the database. The process ID is used as * a parameter and the task is added to that process ID */ private Tasks CreateNewTask(int processID) { Tasks newTask = new Tasks(); newTask.ProcessID = processID; db.Tasks.Add(newTask); SysUrl sysUrl = CreateNewSysUrl(SysUrlType.Name, newTask.TaskID); sysUrl.TaskID = newTask.TaskID; newTask.NameID = sysUrl.SysUrlID; db.SaveChanges(); sysUrl = CreateNewSysUrl(SysUrlType.Archive, newTask.TaskID); sysUrl.TaskID = newTask.TaskID; newTask.ArchiveID = sysUrl.SysUrlID; db.SaveChanges(); sysUrl = CreateNewSysUrl(SysUrlType.KPI, newTask.TaskID); sysUrl.TaskID = newTask.TaskID; newTask.KPIID = sysUrl.SysUrlID; int max = db.Tasks.Where(x => x.ProcessID == processID).Max(x => x.Order); newTask.Order = max + 1; db.SaveChanges(); return(newTask); }
public ActionResult ManageTasks(JsonTask taskMessage) { Tasks task = null; ActionResult res; switch (taskMessage.TaskType) { case TaskType.Add: { task = CreateNewTask(taskMessage.ProcessID); res = Json(new { code = 1, message = Json(new { task_id = task.TaskID, name_id = task.NameID, archive_id = task.ArchiveID, kpi_id = task.KPIID }).Data }, "application/json"); break; } case TaskType.Delete: { task = db.Tasks.Find(taskMessage.TaskID); if (task == null) { res = Json(new { code = 0, message = "Unknown task" }, "application/json"); } else { db.SysUrls.RemoveRange(db.SysUrls.Where(x => x.TaskID == task.TaskID).ToList()); db.TaskEntities.RemoveRange(db.TaskEntities.Where(x => x.TaskID == task.TaskID).ToList()); db.Tasks.Remove(task); db.SaveChanges(); res = Json(new { code = 1, message = "" }, "application/json"); } break; } case TaskType.Clear: { //Update this code task = db.Tasks.Find(taskMessage.TaskID); if (task == null) { res = Json(new { code = 0, message = "Unknown task" }, "application/json"); } else { SysUrl aSysUrl = null; task.OrganisationUnitID = (int?)null; task.SupportingISID = (int?)null; task.HRFunctionID = (int?)null; task.HRSkillsID = (int?)null; aSysUrl = db.SysUrls.Where(x => x.TaskID == task.TaskID && x.SysUrlType == SysUrlType.Name).SingleOrDefault(); aSysUrl.Embedded = null; aSysUrl.Url = null; aSysUrl.Description = null; aSysUrl = db.SysUrls.Where(x => x.TaskID == task.TaskID && x.SysUrlType == SysUrlType.Archive).SingleOrDefault(); aSysUrl.Embedded = null; aSysUrl.Url = null; aSysUrl.Description = null; aSysUrl = db.SysUrls.Where(x => x.TaskID == task.TaskID && x.SysUrlType == SysUrlType.KPI).SingleOrDefault(); aSysUrl.Embedded = null; aSysUrl.Url = null; aSysUrl.Description = null; db.SysUrls.RemoveRange(db.SysUrls.Where(x => (x.TaskID == task.TaskID) && (x.SysUrlType != SysUrlType.Name && x.SysUrlType != SysUrlType.Archive && x.SysUrlType != SysUrlType.KPI)).ToList()); db.TaskEntities.RemoveRange(db.TaskEntities.Where(x => x.TaskID == task.TaskID).ToList()); db.SaveChanges(); res = Json(new { code = 2, message = "" }, "application/json"); } break; } default: { res = Json(new { code = 0, message = "Unknown operation" }, "application/json"); break; } } return(res); }