public ActionResult AssignQuota(int id) { TrainAssignQuotaViewData viewData = new TrainAssignQuotaViewData(); Classes classes = (from c in CQGJ.Classes where c.ClassID == id select c).First(); viewData.Classes = classes; viewData.Quotas = (from q in CQGJ.Quota where q.Classes.ClassID == id select q).ToList(); Plan plan = (from c in CQGJ.Classes from p in CQGJ.Plan where c.ClassID == id where c.Plan == p select p).First(); viewData.PlanID = plan.PlanID; List<Org> orgList = (from o in CQGJ.Org where o.OrgType == 1 || o.OrgType == 2 || o.OrgType == 4 select o).ToList(); if (viewData.Quotas.Count <= 0) { foreach (var org in orgList) { Quota quota = new Quota(); quota.Classes = classes; //有待研究,是否可以不用再取一次? Org org2 = (from o in CQGJ.Org where o.OrgCode == org.OrgCode select o).First(); quota.Org = org; quota.Number = 1; quota.SignupNumber = 0; CQGJ.AddToQuota(quota); CQGJ.SaveChanges(); } viewData.Quotas = (from q in CQGJ.Quota where q.Classes.ClassID == id select q).ToList(); } //如果名额不为零就保存修改 bool f = false; foreach (Quota quota in viewData.Quotas) { if (GetInt(quota.QuotaID.ToString()) != 0) { quota.Number = GetInt(quota.QuotaID.ToString()); f = true; } } //保存成功后跳转到计划班级列表 if (f == true) { //状态更改有待讨论 //classes.Status = (int)ClassStatus.Signup; CQGJ.SaveChanges(); return RedirectToAction("showclass/" + id); } viewData.PlanClassID = id; return View("AssignQuota", viewData); }
public void AssignQuota(int id) { TrainAssignQuotaViewData viewData = new TrainAssignQuotaViewData(); Classes classes = (from c in CQGJ.Classes where c.ClassID == id select c).First(); viewData.Quotas = (from q in CQGJ.Quota where q.Classes.ClassID == id select q).ToList(); Plan plan = (from c in CQGJ.Classes from p in CQGJ.Plan where c.ClassID == id where c.Plan == p select p).First(); viewData.PlanID = plan.PlanID; List<CQGJ.passport.b01> orgList = cqgjPassport.GetOrglistByType(1).ToList(); List<CQGJ.passport.b01> orgList2 = cqgjPassport.GetOrglistByType(2).ToList(); List<CQGJ.passport.b01> orgList4 = cqgjPassport.GetOrglistByType(4).ToList(); foreach (CQGJ.passport.b01 b in orgList2) { orgList.Add(b); } foreach (CQGJ.passport.b01 b in orgList4) { orgList.Add(b); } if (viewData.Quotas.Count <= 0) { foreach (CQGJ.passport.b01 b in orgList) { Quota quota = new Quota(); quota.Classes = classes; Org org = (from o in CQGJ.Org where o.OrgCode == b.b0111 select o).First(); quota.Org = org; quota.Number = 0; quota.SignupNumber = 0; CQGJ.AddToQuota(quota); CQGJ.SaveChanges(); } viewData.Quotas = (from q in CQGJ.Quota where q.Classes.ClassID == id select q).ToList(); } //如果名额不为零就保存修改 bool f = false; foreach (Quota quota in viewData.Quotas) { if (GetInt(quota.QuotaID.ToString()) != 0) { quota.Number = GetInt(quota.QuotaID.ToString()); f = true; } } //保存成功后跳转到计划班级列表 if (f == true) { classes.Status = (int)ClassStatus.Signup; CQGJ.SaveChanges(); RedirectToAction("editplan/" + plan.PlanID + "/1"); //后面之所以要加/1是因为要跳转到第1页 } viewData.PlanClassID = id; RenderView("AssignQuota", viewData); }