public bool EditOrgSchedule(XkSystem.Models.DbContext db, Entity.tbElectiveOrg electiveOrg, string ids) { if (string.IsNullOrEmpty(ids) == false) { //删除之前的数据 var delList = (from p in db.Table <Entity.tbElectiveOrgSchedule>() where p.tbElectiveOrg.Id == electiveOrg.Id select p).ToList(); foreach (var a in delList) { a.IsDeleted = true; } foreach (var v in ids.Split(',')) { var tb = new Entity.tbElectiveOrgSchedule(); tb.tbElectiveOrg = electiveOrg; tb.tbWeek = db.Set <Basis.Entity.tbWeek>().Find(Convert.ToInt32(v.Split('_')[0])); tb.tbPeriod = db.Set <Basis.Entity.tbPeriod>().Find(Convert.ToInt32(v.Split('_')[1])); db.Set <Entity.tbElectiveOrgSchedule>().Add(tb); } } return(true); }
public JsonResult ApprovePost() { var ids = Request["ids"].Split(',').Select(int.Parse).ToList(); var operate = Request["operate"].ConvertToInt(); var opinion = Request["opinion"]; using (var db = new XkSystem.Models.DbContext()) { var tb = (from p in db.Table <Entity.tbElectiveApply>() .Include(p => p.tbSysUser) .Include(p => p.tbRoom) .Include(p => p.tbCourse) .Include(p => p.tbElective) where ids.Contains(p.Id) select p).ToList(); if (operate == 0) { foreach (var item in tb) { item.CheckStatus = Code.EnumHelper.CheckStatus.Fail; item.CheckOpinion = opinion; item.UpdateTime = DateTime.Now; } } else { foreach (var item in tb) { item.CheckStatus = Code.EnumHelper.CheckStatus.Success; item.CheckOpinion = opinion; item.UpdateTime = DateTime.Now; var tbElectiveGroup = (from p in db.Table <Entity.tbElectiveGroup>() where p.tbElective.Id == item.tbElective.Id select p).FirstOrDefault(); var tbElectiveSection = (from p in db.Table <Entity.tbElectiveSection>() where p.tbElective.Id == item.tbElective.Id select p).FirstOrDefault(); var tbTeacher = (from p in db.Table <Teacher.Entity.tbTeacher>() where p.tbSysUser.Id == item.tbSysUser.Id select p).FirstOrDefault(); var tbElectiveApplySchedule = (from p in db.Table <Entity.tbElectiveApplySchedule>().Include(p => p.tbPeriod).Include(p => p.tbWeek) where p.tbElectiveApply.Id == item.Id select p).ToList(); //根据星期节次创建多个ElectiveOrg if (item.IsMultiClass) { //获取星期、节次 foreach (var schedule in tbElectiveApplySchedule) { //插入ElectiveOrg var tbElectiveOrg = new Entity.tbElectiveOrg() { tbElective = item.tbElective, IsPermitClass = false, MaxCount = item.MaxStudent, OrgName = $"{item.tbCourse.CourseName}_{tbElectiveApplySchedule.IndexOf(schedule)}", tbCourse = item.tbCourse, RemainCount = item.MaxStudent, tbElectiveGroup = tbElectiveGroup, tbElectiveSection = tbElectiveSection, tbRoom = item.tbRoom, tbTeacher = tbTeacher }; db.Set <Entity.tbElectiveOrg>().Add(tbElectiveOrg); //插入tbElectiveOrgSchedule db.Set <Entity.tbElectiveOrgSchedule>().Add(new Entity.tbElectiveOrgSchedule() { tbElectiveOrg = tbElectiveOrg, tbWeek = schedule.tbWeek, tbPeriod = schedule.tbPeriod }); } } else { //根据星期节次创建一个ElectiveOrg var tbElectiveOrg = new Entity.tbElectiveOrg() { tbElective = item.tbElective, IsPermitClass = false, MaxCount = item.MaxStudent, OrgName = item.tbCourse.CourseName, tbCourse = item.tbCourse, RemainCount = item.MaxStudent, tbElectiveGroup = tbElectiveGroup, tbElectiveSection = tbElectiveSection, tbRoom = item.tbRoom, tbTeacher = tbTeacher }; db.Set <Entity.tbElectiveOrg>().Add(tbElectiveOrg); db.Set <Entity.tbElectiveOrgSchedule>().AddRange(tbElectiveApplySchedule.Select(p => new Entity.tbElectiveOrgSchedule() { tbElectiveOrg = tbElectiveOrg, tbPeriod = p.tbPeriod, tbWeek = p.tbWeek })); } } } db.SaveChanges(); } return(Code.MvcHelper.Post(message: "操作成功!")); }