public async Task <ActionResult> Edit(int?id) { try { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var entity = await db.UserCampaigns.FindAsync(id); if (entity == null) { return(HttpNotFound()); } var model = new UserCampaignModel { User = entity.User, UserId = entity.UserId, Campaign = entity.Campaign, CampaignId = entity.CampaignId, BudgetedHours = entity.BudgetedHours, PayRateDialingHours = entity.PayRateDialingHours, PayRateSuccess = entity.PayRateSuccess, PayRateTrainingHours = entity.PayRateTrainingHours, UserProjectsList = entity.UserProjectList.Select(x => new UserProjectModel { ProjectId = x.ProjectId, Project = x.Project, UserId = x.UserId, }).ToList() }; var Users = db.Users.Where(x => !x.IsDeleted); ViewBag.UserId = new SelectList(Users.Where(x => x.Roles.Any(y => y.RoleId == "3")), "Id", "DisplayName"); ViewBag.CampaignId = new SelectList(db.Campaigns.Where(x => !x.IsDeleted), "Id", "Identifier"); return(View(model)); } catch (Exception e) { AddAlert($"Oops! something went wrong. Error code: {e.HResult}", "Edit", this.GetType().ToString(), AlertType.error, e); return(View(new UserCampaignModel())); } }
public async Task <ActionResult> Edit(UserCampaignModel model) { try { if (ModelState.IsValid) { var entity = await db.UserCampaigns.FindAsync(model.Id); if (entity == null) { return(HttpNotFound()); } entity.User = model.User; entity.UserId = model.UserId; entity.CampaignId = model.CampaignId; entity.Campaign = model.Campaign; entity.BudgetedHours = model.BudgetedHours; entity.PayRateDialingHours = model.PayRateDialingHours; entity.PayRateSuccess = model.PayRateSuccess; entity.PayRateTrainingHours = model.PayRateTrainingHours; entity.LastUpdate = DateTime.Now; db.Entry(entity).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } var Users = db.Users.Where(x => !x.IsDeleted); ViewBag.UserId = new SelectList(Users.Where(x => x.Roles.Any(y => y.RoleId == "2" || y.RoleId == "3")), "Id", "DisplayName"); ViewBag.CampaignId = new SelectList(db.Campaigns.Where(x => !x.IsDeleted), "Id", "Identifier"); return(View(model)); } catch (Exception e) { AddAlert($"Oops! something went wrong. Error code: {e.HResult}", "Edit(model)", this.GetType().ToString(), AlertType.error, e); return(View(model)); } }
public async Task <JsonResult> Create(UserCampaignModel model) { try { if (ModelState.IsValid) { var overWrite = db.UserCampaigns.Where(x => x.UserId == model.UserId && x.CampaignId == model.CampaignId).ToList(); if (overWrite.Count > 0 && model.confirmOverwite != 1) { Response.StatusCode = 400; return(Json("Error")); } var userCampaign = db.UserCampaigns.Where(x => x.CampaignId == model.CampaignId && x.UserId == model.UserId).FirstOrDefault(); if (userCampaign != null) { db.UserProjects.RemoveRange(db.UserProjects.Where(y => y.UserCampaignId == userCampaign.Id && y.UserId == model.UserId)); db.UserCampaigns.RemoveRange(db.UserCampaigns.Where(x => x.UserId == model.UserId && x.CampaignId == model.CampaignId)); } var entity = new UserCampaign { User = model.User, UserId = model.UserId, Campaign = model.Campaign, CampaignId = model.CampaignId, BudgetedHours = model.BudgetedHours, PayRateDialingHours = model.PayRateDialingHours, PayRateTrainingHours = model.PayRateTrainingHours, PayRateSuccess = model.PayRateSuccess, LastUpdate = DateTime.Now, CreationDate = DateTime.Now, IsDeleted = false, }; db.UserCampaigns.Add(entity); var userProjects = new List <UserProject>(); foreach (var item in model.ProjectIds) { userProjects.Add(new UserProject { UserCampaignId = entity.Id, UserId = model.UserId, ProjectId = item, CreationDate = DateTime.Now, LastUpdate = DateTime.Now, IsDeleted = false }); } db.UserProjects.AddRange(userProjects); await db.SaveChangesAsync(); return(Json("Ok")); } } catch (Exception e) { AddAlert($"Oops! something went wrong. Error code: {e.HResult}", "Create(model)", this.GetType().ToString(), AlertType.error, e); } var Users = db.Users.Where(x => !x.IsDeleted); ViewBag.UserId = new SelectList(Users.Where(x => x.Roles.Any(y => y.RoleId == "2" || y.RoleId == "3")), "Id", "DisplayName"); ViewBag.CampaignId = new SelectList(db.Campaigns.Where(x => !x.IsDeleted), "Id", "Identifier"); return(Json("Error")); }