public ActionResult Create([Bind(Include = "Id,Version,Content,Name,Description,UserId,CreationDate,Cost,FileTypeId")] Script script) { var scripts = db.Scripts.Include(s => s.FileType).Include(s => s.User); script.Id = scripts.Max(s => s.Id) + 1; script.Version = 1; script.CreationDate = DateTime.Now; var user = db.Users.FirstOrDefault(u => u.Email.Equals(User.Identity.Name)); script.UserId = user.Id; ModelState["UserId"].Errors.Clear(); ModelState.SetModelValue("UserId", new ValueProviderResult(user.Id, "", System.Globalization.CultureInfo.InvariantCulture)); if (ModelState.IsValid) { db.Scripts.Add(script); db.SaveChanges(); new TwitterAPI().Tweet(string.Format("The script {0} - {1} created. Cost: {2}$", script.Name, script.Description, script.Cost)); return(RedirectToAction("IndexView")); } ViewBag.FileTypeId = new SelectList(db.FileTypes, "Id", "Language", script.FileTypeId); ViewBag.UserId = new SelectList(db.Users, "Id", "FullName", script.UserId); return(View(script)); }
public ActionResult Create([Bind(Include = "Id,CreationDate,Status,SrartTime,EndTime,ScheduleTime,UserId,ReasonId,MachineVLan,MachineIP")] Execution execution) { var user = db.Users.FirstOrDefault(u => u.Email.Equals(User.Identity.Name)); if (ModelState.IsValid) { execution.CreationDate = DateTime.Now; execution.Status = Status.Waiting; execution.UserId = user.Id; if (!String.IsNullOrEmpty(Request.Form.Get("ScheduleTime"))) { execution.ScheduleTime = DateTime.ParseExact(Request.Form.Get("ScheduleTime"), "DD/MM/YYYY HH:mm", CultureInfo.InvariantCulture); } var scriptsListVal = Request.Form.Get("ScriptsList"); if (!String.IsNullOrEmpty(scriptsListVal)) { var i = 0; execution.ExecutionsScriptses = scriptsListVal.Split(',').ToList() .ConvertAll(s => new ExecutionsScripts() { ScriptId = int.Parse(s.Split('_')[0]), ScriptVersion = int.Parse(s.Split('_')[1]), Order = ++i, Status = Status.Waiting }); } db.Executions.Add(execution); db.SaveChanges(); QueueManager.Instance.AddTask(execution); return(RedirectToAction("Index")); } var machines = db.Machines.Include(m => m.Company).Include(m => m.Country); if (user.Role != Role.Admin && user.Role != Role.Manager) { machines = machines.Where(m => m.CompanyCode == user.CompanyCode); } var grouppedScripts = db.Scripts.Include(s => s.FileType).Include(s => s.User) .OrderBy(script => script.Version) .GroupBy(script => script.Id).ToList(); var scripts = grouppedScripts.Select(s => s.Last()).ToList(); ViewBag.Scripts = scripts.ToList(); ViewBag.Machines = machines; ViewBag.MachineIP = new SelectList(db.Machines, "IP", "IP", execution.MachineIP); ViewBag.ReasonId = new SelectList(db.Reasons, "Id", "ReasonName", execution.ReasonId); ViewBag.UserId = new SelectList(db.Users, "Id", "FullName", execution.UserId); return(View(execution)); }
public ActionResult Create([Bind(Include = "IP,VLan,IsDeleted,CompanyCode,CreationDate,CountryId")] Machine machine) { if (ModelState.IsValid) { db.Machines.Add(machine); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.CompanyCode = new SelectList(db.Companies, "Code", "Name", machine.CompanyCode); ViewBag.CountryId = new SelectList(db.Countries, "Id", "Name", machine.CountryId); return(View(machine)); }
public ActionResult Create([Bind(Include = "Id,Content,CreationDate,UserId,ExecutionId")] Comment comment) { if (ModelState.IsValid) { var user = db.Users.FirstOrDefault(u => u.Email.Equals(User.Identity.Name)); comment.UserId = user.Id; comment.CreationDate = DateTime.Now; db.Comments.Add(comment); db.SaveChanges(); } return(Content("OK")); }
public ActionResult Create([Bind(Include = "Id,FullName,Email,Role,IsDeleted,CompanyCode,CreationDate")] User user) { if (ModelState.IsValid) { user.CreationDate = DateTime.Now; user.IsDeleted = false; db.Users.Add(user); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.CompanyCode = new SelectList(db.Companies, "Code", "Name", user.CompanyCode); return(View(user)); }
public ActionResult Create([Bind(Include = "Code,Name,Logo")] Company company) { if (ModelState.IsValid) { db.Companies.Add(company); db.SaveChanges(); ViewBag.ModelName = "Company"; ViewBag.ItemName = company.Name; return(PartialView("SuccessPage")); } return(View(company)); }
private void UpdateDBChangesLock(Object entity) { lock (obj) { db.Entry(entity).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } }