/// <summary> /// �õ�һ������ʵ�� /// </summary> public LabMS.Model.Arrangement GetModel(int ID) { StringBuilder strSql=new StringBuilder(); strSql.Append("select top 1 ID,LocationID,LocationName,LabID,LabName,Week,TeacherName,Lession,ChoosenClassID,ClassName,ScoreTerm,Year,WeekDay,CourseProjectID,CourseTeacherID,ClassID,ProjectName,ProjectCode,ArrangeType,TeacherID,CourseID,CourseName from Arrangement "); strSql.Append(" where ID=@ID "); SqlParameter[] parameters = { new SqlParameter("@ID", SqlDbType.Int,4)}; parameters[0].Value = ID; LabMS.Model.Arrangement model=new LabMS.Model.Arrangement(); DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters); if(ds.Tables[0].Rows.Count>0) { if(ds.Tables[0].Rows[0]["ID"].ToString()!="") { model.ID=int.Parse(ds.Tables[0].Rows[0]["ID"].ToString()); } if(ds.Tables[0].Rows[0]["LocationID"].ToString()!="") { model.LocationID=int.Parse(ds.Tables[0].Rows[0]["LocationID"].ToString()); } model.LocationName=ds.Tables[0].Rows[0]["LocationName"].ToString(); if(ds.Tables[0].Rows[0]["LabID"].ToString()!="") { model.LabID=int.Parse(ds.Tables[0].Rows[0]["LabID"].ToString()); } model.LabName=ds.Tables[0].Rows[0]["LabName"].ToString(); model.Week=ds.Tables[0].Rows[0]["Week"].ToString(); model.TeacherName=ds.Tables[0].Rows[0]["TeacherName"].ToString(); if(ds.Tables[0].Rows[0]["Lession"].ToString()!="") { model.Lession=int.Parse(ds.Tables[0].Rows[0]["Lession"].ToString()); } if(ds.Tables[0].Rows[0]["ChoosenClassID"].ToString()!="") { model.ChoosenClassID=int.Parse(ds.Tables[0].Rows[0]["ChoosenClassID"].ToString()); } model.ClassName=ds.Tables[0].Rows[0]["ClassName"].ToString(); model.ScoreTerm=ds.Tables[0].Rows[0]["ScoreTerm"].ToString(); model.Year=ds.Tables[0].Rows[0]["Year"].ToString(); if(ds.Tables[0].Rows[0]["WeekDay"].ToString()!="") { model.WeekDay=int.Parse(ds.Tables[0].Rows[0]["WeekDay"].ToString()); } if(ds.Tables[0].Rows[0]["CourseProjectID"].ToString()!="") { model.CourseProjectID=int.Parse(ds.Tables[0].Rows[0]["CourseProjectID"].ToString()); } if(ds.Tables[0].Rows[0]["CourseTeacherID"].ToString()!="") { model.CourseTeacherID=int.Parse(ds.Tables[0].Rows[0]["CourseTeacherID"].ToString()); } if(ds.Tables[0].Rows[0]["ClassID"].ToString()!="") { model.ClassID=int.Parse(ds.Tables[0].Rows[0]["ClassID"].ToString()); } model.ProjectName=ds.Tables[0].Rows[0]["ProjectName"].ToString(); model.ProjectCode=ds.Tables[0].Rows[0]["ProjectCode"].ToString(); model.ArrangeType=ds.Tables[0].Rows[0]["ArrangeType"].ToString(); if(ds.Tables[0].Rows[0]["TeacherID"].ToString()!="") { model.TeacherID=int.Parse(ds.Tables[0].Rows[0]["TeacherID"].ToString()); } if(ds.Tables[0].Rows[0]["CourseID"].ToString()!="") { model.CourseID=int.Parse(ds.Tables[0].Rows[0]["CourseID"].ToString()); } model.CourseName=ds.Tables[0].Rows[0]["CourseName"].ToString(); return model; } else { return null; } }
//保存更改 protected void Save_OnClick(object sender, EventArgs e) { if (tb_StudentIDs.Text == "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('请选择教师!')</script>"); return; } if (tb_StudentIDs2.Value == "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('请选择班级!')</script>"); return; } string[] strArray = IDHF.Value.Split(','); ExtendBLL.Arrangement arrExBLL = new ExtendBLL.Arrangement(); string Week = strArray[0]; int WeekDay = int.Parse(strArray[1]); int Lession = int.Parse(strArray[2]); int LocationID = int.Parse(strArray[3]); arrExBLL.DeleteCouArr(" [Week]='" + Week + "' and Weekday=" + WeekDay + " and Lession=" + Lession + " and LocationID=" + LocationID + " and CourseID=" + int.Parse(CourseDDL.SelectedValue)); LabMS.BLL.Arrangement arrBLL = new LabMS.BLL.Arrangement(); LabMS.Model.Arrangement arr = new LabMS.Model.Arrangement(); LabMS.BLL.Course cou = new LabMS.BLL.Course(); LabMS.Model.Course couModel = new LabMS.Model.Course(); couModel = cou.GetModel(int.Parse(CourseDDL.SelectedValue)); arr.CourseID = couModel.ID;//课程ID arr.Year = couModel.CourseYear;//学年 arr.ScoreTerm = couModel.CourseSeason;//学期 arr.CourseName = couModel.Course_Name;//课程名称 arr.LocationID = int.Parse(HouseDDL.SelectedValue);//用房ID arr.LocationName = HouseDDL.SelectedItem.Text;//用房位置 arr.LabID = int.Parse(LabDDL.SelectedValue);//实验室ID arr.TeacherID = int.Parse(tb_StudentIDs.Text);//教师ID arr.TeacherName = tb_StudentNames.Value;//教师名称 string labName = LabDDL.Text; int index = labName.IndexOf("|-"); if (index == 0) { labName = labName.Substring(index, labName.Length - index - 1); } arr.LabName = labName;//实验室名称 String[] claListsID = tb_StudentIDs2.Value.Split(','); String[] claListsName = tb_StudentNames2.Value.Split(','); arr.CourseTeacherID = GetTeaCouID(int.Parse(tb_StudentIDs.Text), int.Parse(CourseDDL.SelectedValue)); for (int j = 0; j < claListsID.Length; j++) { arr.ClassID = int.Parse(claListsID[j]);//班级ID arr.ClassName = claListsName[j];//班级名称 arr.ChoosenClassID = GetClaCouID(int.Parse(CourseDDL.SelectedValue), int.Parse(claListsID[j]), GetTeaMissID(int.Parse(CourseDDL.SelectedValue), YearDDL.SelectedValue, TermDDL.SelectedValue));//选课班级ID arr.Week = WeekSelectDDL.SelectedValue;//授课周次 bool checkClassSelected = false; for (int n = 1; n < 8; n++) { arr.WeekDay = n;//授课天次 for (int p = 1; p < 6; p++) { CheckBox check2 = (CheckBox)lbDayAndClass.FindControl("chkDay" + n.ToString() + "Class" + p.ToString()); if (check2.Checked) { checkClassSelected = true; arr.Lession = p;//授课节次 string[] strCheckArrangement = new string[3]; strCheckArrangement = CheckArrangement(arr); if (strCheckArrangement[0] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('课程安排冲突!" + arr.LocationName + "在第" + arr.Week.ToString() + "周 星期" + arr.WeekDay.ToString() + " 第" + arr.Lession.ToString() + "大节已安排课程:" + strCheckArrangement[0] + "')</script>"); return; } if (strCheckArrangement[1] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('老师课程安排冲突!" + arr.TeacherName + "在第" + arr.Week.ToString() + "周 星期" + arr.WeekDay.ToString() + " 第" + arr.Lession.ToString() + "大节已安排课程:" + strCheckArrangement[1] + "')</script>"); return; } if (strCheckArrangement[3] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('班级安排冲突!" + arr.ClassName + "在第" + arr.Week.ToString() + "周 星期" + arr.WeekDay.ToString() + " 第" + arr.Lession.ToString() + "大节已安排课程:" + strCheckArrangement[3] + "')</script>"); return; } if (strCheckArrangement[4] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('老师地点安排冲突!在第" + arr.Week.ToString() + "周 星期" + arr.WeekDay.ToString() + " 第" + arr.Lession.ToString() + "大节已安排老师:" + strCheckArrangement[4] + "上课')</script>"); return; } if (strCheckArrangement[2] != "") { ; } else { arrBLL.Add(arr); } } } } if (!checkClassSelected) { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('请选择上课节次!')</script>"); return; } } Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('修改成功!')</script>"); arrtable.Visible = false; YearDDL.Enabled = true; TermDDL.Enabled = true; CourseDDL.Enabled = true; DeleteBtn.Enabled = true; ArrangementGridView.Enabled = true; ArrangementGridView_DataBind(int.Parse(CourseDDL.SelectedValue), WeekDDL.SelectedValue, WeekDayDDL.SelectedValue, LocationBTX.Text.Trim(), TeacherTBX.Text.Trim()); }
//���� protected void Save_OnClick(object sender, EventArgs e) { if (LabDDL.SelectedValue == "0") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ѡ��ʵ���ң�')</script>"); return; } if (HouseDDL.SelectedValue == "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ѡ�䣡')</script>"); return; } if (tb_StudentIDs.Value == "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ѡ���ʦ��')</script>"); return; } if (tb_StudentIDs2.Value == "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ѡ��༶��')</script>"); return; } LabMS.BLL.Arrangement arrBLL = new LabMS.BLL.Arrangement(); LabMS.Model.Arrangement arr = new LabMS.Model.Arrangement(); LabMS.BLL.Course cou = new LabMS.BLL.Course(); LabMS.Model.Course couModel = new LabMS.Model.Course(); couModel = cou.GetModel(int.Parse(CourseIDHF.Value)); arr.CourseID = couModel.ID;//�γ�ID arr.Year = couModel.CourseYear;//ѧ�� arr.ScoreTerm = couModel.CourseSeason;//ѧ�� arr.CourseName = couModel.Course_Name;//�γ����� arr.LocationID = int.Parse(HouseDDL.SelectedValue);//�÷�ID arr.LocationName = HouseDDL.SelectedItem.Text;//�÷�λ�� arr.LabID = int.Parse(LabDDL.SelectedValue);//ʵ����ID arr.TeacherID = int.Parse(tb_StudentIDs.Value);//��ʦID arr.TeacherName = tb_StudentNames.Value;//��ʦ���� string labName=LabDDL.Text; int index=labName.IndexOf("|-"); if (index == 0) { labName = labName.Substring(index, labName.Length - index-1); } arr.LabName = labName;//ʵ�������� //String[] teaListsID = tb_StudentIDs.Value.Split(','); //String[] teaListsName=tb_StudentNames.Value.Split(','); String[] claListsID = tb_StudentIDs2.Value.Split(','); String[] claListsName=tb_StudentNames2.Value.Split(','); //for (int i = 0; i < teaListsID.Length; i++) //{ //arr.TeacherName = teaListsName[i]; //arr.TeacherID = int.Parse(teaListsID[i]); //arr.CourseTeacherID = GetTeaCouID(int.Parse(teaListsID[i]), int.Parse(CourseIDHF.Value));//��ʦ�γ�ID arr.CourseTeacherID = GetTeaCouID(int.Parse(tb_StudentIDs.Value), int.Parse(CourseIDHF.Value)); for (int j = 0; j < claListsID.Length; j++) { arr.ClassID = int.Parse(claListsID[j]);//�༶ID arr.ClassName = claListsName[j];//�༶���� arr.ChoosenClassID = GetClaCouID(int.Parse(CourseIDHF.Value), int.Parse(claListsID[j]), int.Parse(TeaMisIDHF.Value));//ѡ�ΰ༶ID bool checkAllWeekSelected = false;//�ж��Ƿ�ѡ���ܴ� for (int m = 0; m < 20; m++) { CheckBox check=(CheckBox)lbWeeks.FindControl("chkWeek"+m.ToString()); if (check.Checked) { checkAllWeekSelected = true; int mm = m + 1; arr.Week = mm.ToString();//�ڿ��ܴ� bool checkClassSelected = false; for (int n = 1; n < 8; n++) { arr.WeekDay = n;//�ڿ���� for (int p = 1; p < 6; p++) { CheckBox check2 = (CheckBox)lbDayAndClass.FindControl("chkDay" + n.ToString() + "Class" + p.ToString()); if (check2.Checked) { checkClassSelected = true; arr.Lession = p;//�ڿνڴ� string[] strCheckArrangement = new string[5]; strCheckArrangement = CheckArrangement(arr); if (strCheckArrangement[0] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('�γ̰��ų�ͻ��" + arr.LocationName + "�ڵ�" + arr.Week.ToString() + "�� ����" + arr.WeekDay.ToString() + " ��" + arr.Lession.ToString() + "����Ѱ��ſγ̣�" + strCheckArrangement[0]+ "')</script>"); return; } if (strCheckArrangement[1] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ʦ�γ̰��ų�ͻ��" + arr.TeacherName + "�ڵ�" + arr.Week.ToString() + "�� ����" + arr.WeekDay.ToString() + " ��" + arr.Lession.ToString() + "����Ѱ��ſγ̣�" + strCheckArrangement[1] + "')</script>"); return; } if (strCheckArrangement[3] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('�༶���ų�ͻ��" + arr.ClassName + "�ڵ�" + arr.Week.ToString() + "�� ����" + arr.WeekDay.ToString() + " ��" + arr.Lession.ToString() + "����Ѱ��ſγ̣�" + strCheckArrangement[3] + "')</script>"); return; } if (strCheckArrangement[4] != "") { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ʦ�ص㰲�ų�ͻ���ڵ�" + arr.Week.ToString() + "�� ����" + arr.WeekDay.ToString() + " ��" + arr.Lession.ToString() + "����Ѱ�����ʦ��" + strCheckArrangement[4] + "�Ͽ�')</script>"); return; } if (strCheckArrangement[2] != "") { ; } else { arrBLL.Add(arr); } } } } if (!checkClassSelected) { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ѡ���ϿνڴΣ�')</script>"); return; } } } if (!checkAllWeekSelected) { Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('��ѡ���ܴΣ�')</script>"); return; } } // } Page.ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type='text/javascript'>alert('����ɹ���');refreshParent() </script>"); ArrangementGridView_DataBind(); }
//处理DS列表 protected List<LabMS.Model.Arrangement> HandleList(DataSet ds) { List<LabMS.Model.Arrangement> arrList = new List<LabMS.Model.Arrangement>(); LabMS.BLL.Arrangement arr = new LabMS.BLL.Arrangement(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { List<LabMS.Model.Arrangement> arrModelList = new List<LabMS.Model.Arrangement>(); string strClassName = ""; List<int> ClassID = new List<int>(); string strTeaName = ""; List<int> TeacherID = new List<int>(); arrModelList = arr.GetModelList("LocationID=" + int.Parse(ds.Tables[0].Rows[i]["LocationID"].ToString()) + " and [WeekDay]=" + int.Parse(ds.Tables[0].Rows[i]["WeekDay"].ToString()) + " and Lession=" + int.Parse(ds.Tables[0].Rows[i]["Lession"].ToString()) + " and CourseID=" + int.Parse(ds.Tables[0].Rows[i]["CourseID"].ToString()) + " and [Week]='" + ds.Tables[0].Rows[i]["Week"].ToString() + "' and ClassID is not null and TeacherID is not null and CourseID is not null and [Week] is not null"); for (int j = 0; j < arrModelList.Count; j++) { bool IsClassID = true; for (int m = 0; m < ClassID.Count; m++) { if (int.Parse(arrModelList[j].ClassID.ToString()) == ClassID[m]) { IsClassID = false; } } if (IsClassID) { ClassID.Add(int.Parse(arrModelList[j].ClassID.ToString())); strClassName += arrModelList[j].ClassName + " ";//班级名称 } bool IsTeacherID = true; for (int m = 0; m < TeacherID.Count; m++) { if (int.Parse(arrModelList[j].TeacherID.ToString()) == TeacherID[m]) { IsTeacherID = false; } } if (IsTeacherID) { TeacherID.Add(int.Parse(arrModelList[j].TeacherID.ToString())); strTeaName += arrModelList[j].TeacherName + " ";//教师名称 } } strClassName = strClassName.Trim(); strTeaName = strTeaName.Trim(); LabMS.Model.Arrangement arrModel = new LabMS.Model.Arrangement(); arrModel.LabName = ds.Tables[0].Rows[i]["ID"].ToString();//暂把实验室名称存储各ID arrModel.CourseID = int.Parse(ds.Tables[0].Rows[i]["CourseID"].ToString()); arrModel.CourseName = ds.Tables[0].Rows[i]["CourseName"].ToString(); arrModel.ClassName = strClassName; arrModel.TeacherName = strTeaName; arrModel.Week = ds.Tables[0].Rows[i]["Week"].ToString(); arrModel.WeekDay = int.Parse(ds.Tables[0].Rows[i]["WeekDay"].ToString()); arrModel.LocationName = ds.Tables[0].Rows[i]["LocationName"].ToString(); arrModel.Lession = int.Parse(ds.Tables[0].Rows[i]["Lession"].ToString()); arrList.Add(arrModel); } return arrList; }
//����DS�б� protected List<LabMS.Model.Arrangement> HandleList(DataSet ds) { List<LabMS.Model.Arrangement> arrList = new List<LabMS.Model.Arrangement>(); LabMS.BLL.Arrangement arr = new LabMS.BLL.Arrangement(); for(int i=0;i<ds.Tables[0].Rows.Count;i++) { List<LabMS.Model.Arrangement> arrModelList=new List<LabMS.Model.Arrangement>(); string strClassName = ""; List<int> ClassID = new List<int>(); string strTeaName = ""; List<int> TeacherID = new List<int>(); string strWeek = ""; List<int> WeekList = new List<int>(); arrModelList = arr.GetModelList("LocationID=" + int.Parse(ds.Tables[0].Rows[i]["LocationID"].ToString()) + " and [WeekDay]=" + int.Parse(ds.Tables[0].Rows[i]["WeekDay"].ToString()) + " and Lession=" + int.Parse(ds.Tables[0].Rows[i]["Lession"].ToString()) + " and CourseID=" + int.Parse(ds.Tables[0].Rows[i]["CourseID"].ToString()) + " and ClassID is not null and TeacherID is not null and Week is not null"); for (int j = 0; j < arrModelList.Count; j++) { bool IsClassID=true; for (int m = 0; m < ClassID.Count; m++) { if (int.Parse(arrModelList[j].ClassID.ToString()) == ClassID[m]) { IsClassID = false; } } if (IsClassID) { ClassID.Add(int.Parse(arrModelList[j].ClassID.ToString())); strClassName += arrModelList[j].ClassName+" ";//�༶���� } bool IsTeacherID = true; for (int m = 0; m < TeacherID.Count; m++) { if (int.Parse(arrModelList[j].TeacherID.ToString()) == TeacherID[m]) { IsTeacherID = false; } } if (IsTeacherID) { TeacherID.Add(int.Parse(arrModelList[j].TeacherID.ToString())); strTeaName += arrModelList[j].TeacherName+" ";//��ʦ���� } bool IsWeek = true; for (int m = 0; m < WeekList.Count; m++) { if (int.Parse(arrModelList[j].Week) == WeekList[m]) { IsWeek = false; } } if (IsWeek) { WeekList.Add(int.Parse(arrModelList[j].Week)); //strWeek += arrModelList[j].Week;//�ܴ� } } strClassName = strClassName.Trim(); strTeaName = strTeaName.Trim(); strWeek = WeekSort(WeekList); LabMS.Model.Arrangement arrModel = new LabMS.Model.Arrangement(); arrModel.ClassName = strClassName; arrModel.TeacherName = strTeaName; arrModel.Week = strWeek; arrModel.WeekDay = int.Parse(ds.Tables[0].Rows[i]["WeekDay"].ToString()); arrModel.LocationName = ds.Tables[0].Rows[i]["LocationName"].ToString(); arrModel.Lession = int.Parse(ds.Tables[0].Rows[i]["Lession"].ToString()); arrList.Add(arrModel); } return arrList; }