private void frmIdentityCreator_Load(object sender, EventArgs e) { List <SHDepartmentRecord> records = SHDepartment.SelectAll(); ComboItem comboItem1 = new ComboItem(""); comboItem1.Tag = null; this.cboDepart.Items.Add(comboItem1); foreach (SHDepartmentRecord record in records) { ComboItem item = new ComboItem(record.FullName); item.Tag = record; this.cboDepart.Items.Add(item); } this.cboDepart.SelectedItem = comboItem1; this.GradeYear.Focus(); if (mRecord != null) { SHDepartmentRecord record = records.Where(x => x.ID == mRecord.DeptID.ToString()).ElementAt(0); ComboItem item = new ComboItem(record.FullName); item.Tag = record; this.cboDepart.SelectedItem = record; this.cboDepart.Text = record.FullName; this.GradeYear.Text = mRecord.GradeYear.ToString(); } }
/// <summary> /// 畢業異動 /// </summary> public UpdateRecordInfo04(SHUpdateRecordRecord UpdateRec, PermRecLogProcess prlp, List <XElement> UpdateCodeElms, bool isInsert) { InitializeComponent(); cbxGender.Items.Add("男"); cbxGender.Items.Add("女"); cbxClass.DropDownWidth = 300; _UpdateRec = UpdateRec; _UpdateCodeElms = UpdateCodeElms; _prlp = prlp; _UpdateCoodeList = (from x in _UpdateCodeElms select x.Element("代號").Value + " " + x.Element("原因及事項").Value).ToList(); _DeptList = SHDepartment.SelectAll(); _faldn = new UpdateRecordModule_KHSH_D.Utility.FormAndLogDataManager(_prlp); _epUpdateCode = new ErrorProvider(); _UCodeDict = Utility.UITool.ConvertUpdateCodeDescDict(_UpdateCodeElms); if (isInsert) { //當畢業證書字號沒有值取得SHLeaveInfoRecord畢業證書字號 if (string.IsNullOrEmpty(_UpdateRec.GraduateCertificateNumber)) { SHLeaveInfoRecord lvr = SHLeaveInfo.SelectByStudentID(_UpdateRec.StudentID); _UpdateRec.GraduateCertificateNumber = lvr.DiplomaNumber; } if (string.IsNullOrEmpty(_UpdateRec.ExpectGraduateSchoolYear)) { SHLeaveInfoRecord shl = SHLeaveInfo.SelectByStudentID(_UpdateRec.StudentID); if (shl.SchoolYear.HasValue) { _UpdateRec.ExpectGraduateSchoolYear = shl.SchoolYear.Value.ToString(); } } } // 載入資料 cbxUpdateCode = _faldn.SetFormData(_UpdateRec.UpdateCode, cbxUpdateCode, "異動代碼"); txtDesc = _faldn.SetFormData(_UpdateRec.UpdateDescription, txtDesc, "原因及事項"); dtUpdateDate = _faldn.SetFormData(_UpdateRec.UpdateDate, dtUpdateDate, "異動日期"); txtMemo = _faldn.SetFormData(_UpdateRec.Comment, txtMemo, "備註"); cbxDept = _faldn.SetFormData(_UpdateRec.Department, cbxDept, "科別"); cbxClass = _faldn.SetFormData(_UpdateRec.ClassType, cbxClass, "班別"); txtName = _faldn.SetFormData(_UpdateRec.StudentName, txtName, "姓名"); txtStudentNumber = _faldn.SetFormData(_UpdateRec.StudentNumber, txtStudentNumber, "學號"); txtIDNumber = _faldn.SetFormData(_UpdateRec.IDNumber, txtIDNumber, "身分證字號"); dtBirthday = _faldn.SetFormData(_UpdateRec.Birthdate, dtBirthday, "生日"); txtIDNumber1 = _faldn.SetFormData(_UpdateRec.IDNumberComment, txtIDNumber1, "註1"); cbxGender = _faldn.SetFormData(_UpdateRec.Gender, cbxGender, "性別"); dtLastUpdateDate = _faldn.SetFormData(_UpdateRec.LastADDate, dtLastUpdateDate, "備查日期"); txtLastDocNo = _faldn.SetFormData(_UpdateRec.LastADNumber, txtLastDocNo, "備查文號"); txtLastUpdateCode = _faldn.SetFormData(_UpdateRec.LastUpdateCode, txtLastUpdateCode, "最後異動代號"); txtGradeDocNo = _faldn.SetFormData(_UpdateRec.GraduateCertificateNumber, txtGradeDocNo, "畢業證書字號"); dtADDate = _faldn.SetFormData(_UpdateRec.ADDate, dtADDate, "核准日期"); txtADDocNo = _faldn.SetFormData(_UpdateRec.ADNumber, txtADDocNo, "核准文號"); txtSpecial = _faldn.SetFormData(_UpdateRec.SpecialStatus, txtSpecial, "特殊身分代碼"); txtSHSchoolYear = _faldn.SetFormData(_UpdateRec.ExpectGraduateSchoolYear, txtSHSchoolYear, "應畢業學年度"); }
/// <summary> /// 取得科別代碼,key:科別名稱,value:科別代碼 /// </summary> /// <returns></returns> public static Dictionary <string, string> GetDepartmetDict() { Dictionary <string, string> value = new Dictionary <string, string>(); List <SHDepartmentRecord> RecList = SHDepartment.SelectAll(); foreach (SHDepartmentRecord rec in RecList) { if (!value.ContainsKey(rec.FullName)) { value.Add(rec.FullName, rec.Code); } } return(value); }
/// <summary> /// 他校轉入 /// </summary> public UpdateRecordInfo02(SHUpdateRecordRecord UpdateRec, PermRecLogProcess prlp, List <XElement> UpdateCodeElms) { InitializeComponent(); cbxGender.Items.Add("男"); cbxGender.Items.Add("女"); cbxClass.DropDownWidth = 300; _UpdateRec = UpdateRec; _UpdateCodeElms = UpdateCodeElms; _prlp = prlp; _UpdateCoodeList = (from x in _UpdateCodeElms select x.Element("代號").Value + " " + x.Element("原因及事項").Value).ToList(); _DeptList = SHDepartment.SelectAll(); _faldn = new UpdateRecordModule_SH_D.Utility.FormAndLogDataManager(_prlp); _epUpdateCode = new ErrorProvider(); // 建異動索引 _UCodeDict = Utility.UITool.ConvertUpdateCodeDescDict(_UpdateCodeElms); // 載入資料 cbxUpdateCode = _faldn.SetFormData(_UpdateRec.UpdateCode, cbxUpdateCode, "異動代碼"); txtDesc = _faldn.SetFormData(_UpdateRec.UpdateDescription, txtDesc, "原因及事項"); dtUpdateDate = _faldn.SetFormData(_UpdateRec.UpdateDate, dtUpdateDate, "異動日期"); txtMemo = _faldn.SetFormData(_UpdateRec.Comment, txtMemo, "備註"); cbxDept = _faldn.SetFormData(_UpdateRec.Department, cbxDept, "科別"); cbxClass = _faldn.SetFormData(_UpdateRec.ClassType, cbxClass, "班別"); txtSpecial = _faldn.SetFormData(_UpdateRec.SpecialStatus, txtSpecial, "特殊身分代碼"); txtName = _faldn.SetFormData(_UpdateRec.StudentName, txtName, "姓名"); txtStudentNumber = _faldn.SetFormData(_UpdateRec.StudentNumber, txtStudentNumber, "學號"); txtIDNumber = _faldn.SetFormData(_UpdateRec.IDNumber, txtIDNumber, "身分證字號"); dtBirthday = _faldn.SetFormData(_UpdateRec.Birthdate, dtBirthday, "生日"); txtIDNumber1 = _faldn.SetFormData(_UpdateRec.IDNumberComment, txtIDNumber1, "註1"); cbxGender = _faldn.SetFormData(_UpdateRec.Gender, cbxGender, "性別"); txtSSchool = _faldn.SetFormData(_UpdateRec.PreviousSchool, txtSSchool, "原就讀學校"); txtSStudentNumber = _faldn.SetFormData(_UpdateRec.PreviousStudentNumber, txtSStudentNumber, "原就讀學號"); txtSDept = _faldn.SetFormData(_UpdateRec.PreviousDepartment, txtSDept, "原就讀科別"); txtSGradYear = _faldn.SetFormData(_UpdateRec.PreviousGradeYear, txtSGradYear, "原就讀年級"); dtSLastUpdateDate = _faldn.SetFormData(_UpdateRec.PreviousSchoolLastADDate, dtSLastUpdateDate, "原就讀備查日期"); txtSLastDocNo = _faldn.SetFormData(_UpdateRec.PreviousSchoolLastADNumber, txtSLastDocNo, "原就讀備查文號"); dtADDate = _faldn.SetFormData(_UpdateRec.ADDate, dtADDate, "核准日期"); txtADDocNo = _faldn.SetFormData(_UpdateRec.ADNumber, txtADDocNo, "核准文號"); txtSSemester = _faldn.SetFormData(_UpdateRec.PreviousSemester, txtSSemester, "原就讀學期"); txtComment2 = _faldn.SetFormData(_UpdateRec.Comment2, txtComment2, "轉入身分別代碼"); }
/// <summary> /// 將 StudUpdateRecDoc List 轉成 XML (隨同封面資料一起存) /// </summary> /// <returns></returns> public XElement ConvertStudUpdateRecDocToXML(List <BL.StudUpdateRecDoc> updateRecList) { // 排序年級與科別 //var data = from ud in updateRecList orderby; Dictionary <string, List <BL.StudUpdateRecDoc> > data = new Dictionary <string, List <UpdateRecordModule_SH_D.BL.StudUpdateRecDoc> >(); Dictionary <string, string> deptCodeDict = new Dictionary <string, string>(); foreach (SHDepartmentRecord rec in SHDepartment.SelectAll()) { if (!deptCodeDict.ContainsKey(rec.FullName)) { deptCodeDict.Add(rec.FullName, rec.Code); } //if (!deptCodeDict.ContainsKey(rec.Name)) // deptCodeDict.Add(rec.Name, rec.Code); } foreach (BL.StudUpdateRecDoc val in updateRecList) { string key = val.GradeYear + "_" + val.Department + "_"; if (data.ContainsKey(key)) { data[key].Add(val); } else { List <BL.StudUpdateRecDoc> xx = new List <UpdateRecordModule_SH_D.BL.StudUpdateRecDoc>(); xx.Add(val); data.Add(key, xx); } } XElement retVal = new XElement("異動名冊"); retVal.SetAttributeValue("學年度", Global._GSchoolYear); retVal.SetAttributeValue("學期", Global._GSemester); retVal.SetAttributeValue("學校代碼", Global._GSchoolCode); retVal.SetAttributeValue("學校代號", Global._GSchoolCode); retVal.SetAttributeValue("學校名稱", Global._GSchoolName); retVal.SetAttributeValue("類別", Global._GUpdateBatchType); foreach (KeyValuePair <string, List <BL.StudUpdateRecDoc> > val in data) { // 解析年級科別 int idx = val.Key.IndexOf("_"); string grYear = val.Key.Substring(0, idx); string DeptName = val.Key.Substring(idx + 1, (val.Key.Length - (idx + 2))); string DeptCode = ""; if (deptCodeDict.ContainsKey(DeptName)) { DeptCode = deptCodeDict[DeptName]; } XElement elmGrDept = new XElement("清單"); elmGrDept.SetAttributeValue("年級", grYear); elmGrDept.SetAttributeValue("科別", DeptName); elmGrDept.SetAttributeValue("科別代碼", DeptCode); elmGrDept.SetAttributeValue("科別代號", DeptCode); foreach (BL.StudUpdateRecDoc rec in val.Value) { XElement elm = new XElement("異動紀錄"); elm.SetAttributeValue("異動代碼", rec.UpdateCode); elm.SetAttributeValue("異動代號", rec.UpdateCode); elm.SetAttributeValue("原因及事項", rec.UpdateDescription); elm.SetAttributeValue("異動日期", rec.UpdateDate); elm.SetAttributeValue("備註", rec.Comment); elm.SetAttributeValue("班別", rec.ClassType); elm.SetAttributeValue("科別", rec.Department); elm.SetAttributeValue("科別代碼", rec.DeptCode); elm.SetAttributeValue("特殊身分代碼", rec.SpecialStatus); elm.SetAttributeValue("特殊身份代碼", rec.SpecialStatus); elm.SetAttributeValue("姓名", rec.StudentName); elm.SetAttributeValue("學號", rec.StudentNumber); elm.SetAttributeValue("身分證字號", rec.IDNumber); elm.SetAttributeValue("身分證號", rec.IDNumber); elm.SetAttributeValue("生日", rec.Birthday); DateTime dt; if (DateTime.TryParse(rec.Birthday, out dt)) { elm.SetAttributeValue("出生年月日", (dt.Year - 1911) + "/" + dt.Month + "/" + dt.Day); } else { elm.SetAttributeValue("出生年月日", ""); } elm.SetAttributeValue("身分證註記", rec.IDNumberComment); elm.SetAttributeValue("註1", rec.IDNumberComment); elm.SetAttributeValue("性別", rec.Gender); elm.SetAttributeValue("性別代碼", rec.GenderCode); elm.SetAttributeValue("性別代號", rec.GenderCode); elm.SetAttributeValue("畢業國中", rec.GraduateSchool); elm.SetAttributeValue("畢業國中所在地代碼", rec.GraduateSchoolLocationCode); elm.SetAttributeValue("畢業國中所在縣市代號", rec.GraduateSchoolLocationCode); elm.SetAttributeValue("入學資格註記", rec.GraduateComment); elm.SetAttributeValue("入學資格代號", rec.UpdateCode); elm.SetAttributeValue("畢業國中代碼", rec.GraduateSchoolCode); elm.SetAttributeValue("國中畢業學年度", rec.GraduateSchoolYear); elm.SetAttributeValue("核准日期", rec.ADDate); elm.SetAttributeValue("核准文號", rec.ADNumber); elm.SetAttributeValue("舊科別代碼", rec.OldDepartmentCode); elm.SetAttributeValue("舊班別", rec.OldClassType); elm.SetAttributeValue("備查日期", rec.LastADDate); elm.SetAttributeValue("備查文號", rec.LastADNumber); elm.SetAttributeValue("原就讀學校", rec.PreviousSchool); elm.SetAttributeValue("原就讀學號", rec.PreviousStudentNumber); elm.SetAttributeValue("原就讀科別", rec.PreviousDepartment); elm.SetAttributeValue("原就讀年級", rec.PreviousGradeYear); elm.SetAttributeValue("原就讀學期", rec.PreviousSemester); elm.SetAttributeValue("原就讀備查日期", rec.PreviousSchoolLastADDate); elm.SetAttributeValue("原就讀備查文號", rec.PreviousSchoolLastADNumber); elm.SetAttributeValue("最後異動代碼", rec.LastUpdateCode); elm.SetAttributeValue("最後異動代號", rec.LastUpdateCode); elm.SetAttributeValue("畢業證書字號", rec.GraduateCertificateNumber); elm.SetAttributeValue("年級", rec.GradeYear); elm.SetAttributeValue("新資料", rec.NewData); elm.SetAttributeValue("異動編號", rec.URID); elm.SetAttributeValue("學生編號", rec.StudentID); elm.SetAttributeValue("新學號", rec.NewStudentNumber); elm.SetAttributeValue("轉入前學生資料_學校", rec.PreviousSchool); elm.SetAttributeValue("轉入前學生資料_學號", rec.PreviousStudentNumber); elm.SetAttributeValue("轉入前學生資料_科別", rec.PreviousDepartment); elm.SetAttributeValue("轉入前學生資料_年級", rec.PreviousGradeYear); elm.SetAttributeValue("轉入前學生資料_學期", rec.PreviousSemester); elm.SetAttributeValue("轉入前學生資料_備查日期", rec.PreviousSchoolLastADDate); elm.SetAttributeValue("轉入前學生資料_備查文號", rec.PreviousSchoolLastADNumber); elm.SetAttributeValue("入學資格證明文件", rec.GraduateDocument); elm.SetAttributeValue("雙重學籍編號", rec.ReplicatedSchoolRollNumber); // 當他校轉入 if (rec.UpdateCode.Substring(0, 1) == "1") { elm.SetAttributeValue("轉入身分別代碼", rec.Comment2); } else { elm.SetAttributeValue("更正後身分證註記", rec.Comment2); } elm.SetAttributeValue("應畢業學年度", rec.ExpectGraduateSchoolYear); elm.SetAttributeValue("借讀學校代碼", rec.Code7SchoolCode); elm.SetAttributeValue("借讀科別代碼", rec.Code7DeptCode); elm.SetAttributeValue("申請開始日期", rec.Code71BeginDate); elm.SetAttributeValue("申請結束日期", rec.Code71EndDate); elm.SetAttributeValue("實際開始日期", rec.Code72BeginDate); elm.SetAttributeValue("實際結束日期", rec.Code72EndDate); elmGrDept.Add(elm); } //2018/2/5 穎驊增加 處理封面資料 foreach (RetaintoStudentListRecCoverRec coverRec in coverDataList) { //假如整理好的封面資料 其年級、科別代碼 與 現在的資料相同, 則配對 if (coverRec.grYear == grYear && coverRec.DeptCode == DeptCode) { XElement elmGrDeptCover = new XElement("異動名冊封面"); elmGrDeptCover.SetAttributeValue("名冊別", coverRec.ReportType); elmGrDeptCover.SetAttributeValue("班別", coverRec.ClassType); elmGrDeptCover.SetAttributeValue("上傳類別", coverRec.UpdateType); elmGrDeptCover.SetAttributeValue("因病須長期療養或懷孕申請保留學生數", coverRec.LongTermCareStudentCount); elmGrDeptCover.SetAttributeValue("因服兵役申請保留學生數", coverRec.MilitaryStudentCount); elmGrDeptCover.SetAttributeValue("因病申請保留錄取資格期間復受徵召服役者申請學生數", coverRec.ReCallStudentCount); elmGrDeptCover.SetAttributeValue("備註說明", coverRec.RemarksContent); //加入封面 elmGrDept.Add(elmGrDeptCover); } } retVal.Add(elmGrDept); } return(retVal); }
/// <summary> /// 學籍異動 /// </summary> public UpdateRecordInfo01_N(SHUpdateRecordRecord UpdateRec, PermRecLogProcess prlp, List <XElement> UpdateCodeElms) { InitializeComponent(); cbxGender.Items.Add("男"); cbxGender.Items.Add("女"); _UpdateRec = UpdateRec; _prlp = prlp; _UpdateCodeElms = UpdateCodeElms; _epUpdateCode = new ErrorProvider(); _UpdateCoodeList = (from x in _UpdateCodeElms select x.Element("代號").Value + " " + x.Element("原因及事項").Value).ToList(); _DeptList = SHDepartment.SelectAll(); // 更正學籍顯示對照用 _updateCodeDict4 = new Dictionary <string, string>(); // 進校 _updateCodeDict4.Add("301", "新學號"); _updateCodeDict4.Add("302", "新姓名"); _updateCodeDict4.Add("303", "新性別"); _updateCodeDict4.Add("304", "新身分證號"); _updateCodeDict4.Add("305", "新生日"); //// 讀取畢業學年度 //SHLeaveInfoRecord shl = SHLeaveInfo.SelectByStudentID(_UpdateRec.StudentID); //if (shl.SchoolYear.HasValue) // txtSHSchoolYear.Text = shl.SchoolYear.Value.ToString(); //// 當延修生要顯示 // if (_UpdateRec.GradeYear == "延修生") // { // txtSHSchoolYear.Enabled = true; // } // else // txtSHSchoolYear.Enabled = false; _UCodeDict = Utility.UITool.ConvertUpdateCodeDescDict(_UpdateCodeElms); _faldn = new UpdateRecordModule_SH_N.Utility.FormAndLogDataManager(_prlp); if (!string.IsNullOrEmpty(_UpdateRec.NewStudentNumber)) { int i; if (int.TryParse(_UpdateRec.NewStudentNumber.Trim(), out i)) { _UpdateRec.NewData = i.ToString(); _UpdateRec.NewStudentNumber = i.ToString(); } else { _UpdateRec.NewStudentNumber = ""; } } // 載入資料 cbxUpdateCode = _faldn.SetFormData(_UpdateRec.UpdateCode, cbxUpdateCode, "異動代碼"); txtDesc = _faldn.SetFormData(_UpdateRec.UpdateDescription, txtDesc, "原因及事項"); dtUpdateDate = _faldn.SetFormData(_UpdateRec.UpdateDate, dtUpdateDate, "異動日期"); txtMemo = _faldn.SetFormData(_UpdateRec.Comment, txtMemo, "備註"); cbxDept = _faldn.SetFormData(_UpdateRec.Department, cbxDept, "科別"); cbxClass = _faldn.SetFormData(_UpdateRec.ClassType, cbxClass, "班別"); txtSHSchoolYear = _faldn.SetFormData(_UpdateRec.SpecialStatus, txtSHSchoolYear, "特殊身分代碼"); txtName = _faldn.SetFormData(_UpdateRec.StudentName, txtName, "姓名"); txtStudentNumber = _faldn.SetFormData(_UpdateRec.StudentNumber, txtStudentNumber, "學號"); txtIDNumber = _faldn.SetFormData(_UpdateRec.IDNumber, txtIDNumber, "身分證字號"); txtNewData = _faldn.SetFormData(_UpdateRec.NewData, txtNewData, "新資料"); txtIDNumber1 = _faldn.SetFormData(_UpdateRec.IDNumberComment, txtIDNumber1, "註1"); dtLastUpdateDate = _faldn.SetFormData(_UpdateRec.LastADDate, dtLastUpdateDate, "備查日期"); txtLastDocNo = _faldn.SetFormData(_UpdateRec.LastADNumber, txtLastDocNo, "備查文號"); dtADDate = _faldn.SetFormData(_UpdateRec.ADDate, dtADDate, "核准日期"); txtADDocNo = _faldn.SetFormData(_UpdateRec.ADNumber, txtADDocNo, "核准文號"); txtSpecial = _faldn.SetFormData(_UpdateRec.SpecialStatus, txtSpecial, "特殊身分代碼"); cbxGender = _faldn.SetFormData(_UpdateRec.Gender, cbxGender, "性別"); dtBirthday = _faldn.SetFormData(_UpdateRec.Birthdate, dtBirthday, "生日"); }
///// <summary> ///// 取得新生入學資格 ///// </summary> ///// <returns></returns> //public static List<string> GetNewStudCode() //{ // List<string> strList = new List<string>(); // strList.Add("001-持國民中學畢業證明書者(含國中補校)"); // strList.Add("002-持國民中學補習學校資格證明書者"); // strList.Add("003-持國民中學補習學校結業證明書者"); // strList.Add("004-持國民中學修(結)業證明書者(修畢三學年全部課程)"); // strList.Add("005-持國民中學畢業程度學力鑑定考試及格證明書者"); // strList.Add("006-回國僑生介考(專案核准)"); // strList.Add("007-持大陸學歷者(需附證明文件)"); // strList.Add("008-特殊教育學校學生(需附證明文件)"); // strList.Add("009-持國外學歷者(需附證明文件)"); // strList.Add("099-其他(需附證明文件)"); // return strList; //} /// <summary> /// 將異動 SHDAL 資料轉換成名冊用 Rec /// </summary> /// <param name="recList"></param> /// <returns></returns> public static List <BL.StudUpdateRecDoc> ConvertSHUpdateRecToStudUpdateRec(List <SHUpdateRecordRecord> recList) { List <BL.StudUpdateRecDoc> StudRecList = new List <UpdateRecordModule_IBSH.BL.StudUpdateRecDoc>(); Dictionary <string, string> deptCodeDict = new Dictionary <string, string>(); foreach (SHDepartmentRecord rec in SHDepartment.SelectAll()) { if (!deptCodeDict.ContainsKey(rec.FullName)) { deptCodeDict.Add(rec.FullName, rec.Code); } //if (!deptCodeDict.ContainsKey(rec.Name)) // deptCodeDict.Add(rec.Name, rec.Code); } //int depIdx = 0; foreach (SHUpdateRecordRecord rec in recList) { BL.StudUpdateRecDoc studUrec = new UpdateRecordModule_IBSH.BL.StudUpdateRecDoc(); studUrec.UpdateDescription = rec.UpdateDescription; studUrec.UpdateDate = rec.UpdateDate; studUrec.UpdateCode = rec.UpdateCode; studUrec.StudentNumber = rec.StudentNumber; studUrec.StudentName = rec.StudentName; studUrec.SpecialStatus = rec.SpecialStatus; studUrec.PreviousStudentNumber = rec.PreviousStudentNumber; studUrec.PreviousSchoolLastADNumber = rec.PreviousSchoolLastADNumber; studUrec.PreviousSchoolLastADDate = rec.PreviousSchoolLastADDate; studUrec.PreviousSchool = rec.PreviousSchool; studUrec.PreviousGradeYear = rec.PreviousGradeYear; studUrec.PreviousDepartment = rec.PreviousDepartment; studUrec.OldDepartmentCode = rec.OldDepartmentCode; studUrec.OldClassType = rec.OldClassType; studUrec.NewData = rec.NewData; studUrec.LastUpdateCode = rec.LastUpdateCode; studUrec.LastADNumber = rec.LastADNumber; studUrec.LastADDate = rec.LastADDate; studUrec.IDNumberComment = rec.IDNumberComment; studUrec.IDNumber = rec.IDNumber; studUrec.GraduateSchoolYear = rec.GraduateSchoolYear; studUrec.GraduateSchoolLocationCode = rec.GraduateSchoolLocationCode; studUrec.GraduateSchoolCode = rec.GraduateSchoolCode; studUrec.GraduateSchool = rec.GraduateSchool; studUrec.GraduateComment = rec.GraduateComment; studUrec.GraduateCertificateNumber = rec.GraduateCertificateNumber; studUrec.GradeYear = rec.GradeYear; studUrec.Gender = rec.Gender; studUrec.Code7SchoolCode = rec.Code7SchoolCode; studUrec.Code7DeptCode = rec.Code7DeptCode; studUrec.Code71BeginDate = rec.Code71BeginDate; studUrec.Code71EndDate = rec.Code71EndDate; studUrec.Code72BeginDate = rec.Code72BeginDate; studUrec.Code72EndDate = rec.Code72EndDate; if (rec.Gender == "男") { studUrec.GenderCode = "1"; } else if (rec.Gender == "女") { studUrec.GenderCode = "2"; } else { studUrec.GenderCode = ""; } //// 當科別有:取前面值 //depIdx = rec.Department.IndexOf(":"); //if(depIdx >1) // studUrec.Department = rec.Department.Substring(0,depIdx); //else studUrec.Department = rec.Department; if (deptCodeDict.ContainsKey(rec.Department)) { studUrec.DeptCode = deptCodeDict[rec.Department]; } studUrec.Comment = rec.Comment; studUrec.ClassType = rec.ClassType; studUrec.Birthday = rec.Birthdate; studUrec.ADNumber = rec.ADNumber; studUrec.ADDate = rec.ADDate; studUrec.URID = rec.ID; studUrec.StudentID = rec.StudentID; if (rec.Student != null) { studUrec.StudStatus = rec.Student.Status.ToString(); } studUrec.PreviousSemester = rec.PreviousSemester; studUrec.NewStudentNumber = rec.NewStudentNumber; studUrec.Comment2 = rec.Comment2; studUrec.GraduateDocument = rec.GraduateDocument; studUrec.ExpectGraduateSchoolYear = rec.ExpectGraduateSchoolYear; StudRecList.Add(studUrec); } return(StudRecList); }
/// <summary> /// 將報表 XML 轉成報表用 List /// </summary> /// <param name="source"></param> /// <returns></returns> public List <GovernmentalDocument.Reports.List.rpt_UpdateRecord> ConvertRptUpdateRecord(XmlElement source) { List <GovernmentalDocument.Reports.List.rpt_UpdateRecord> retVal = new List <GovernmentalDocument.Reports.List.rpt_UpdateRecord>(); foreach (XmlElement Record in source.SelectNodes("清單/異動紀錄")) { GovernmentalDocument.Reports.List.rpt_UpdateRecord val = new GovernmentalDocument.Reports.List.rpt_UpdateRecord(); //班別 val.ClassType = Record.GetAttribute("班別"); //科別代碼 val.DeptCode = (Record.ParentNode as XmlElement).GetAttribute("科別代號"); //學號 val.StudentNumber = Record.GetAttribute("學號"); // StudentID val.StudentID = Record.GetAttribute("學生編號"); //姓名 val.Name = Record.GetAttribute("姓名"); //身分證字號 val.IDNumber = Record.GetAttribute("身分證號"); //註1 val.Comment1 = Record.GetAttribute("註1"); //性別代碼 val.GenderCode = Record.GetAttribute("性別代號"); //出生日期 val.Birthday = GetBirthdateWithoutSlash(Record.GetAttribute("出生年月日")); //特殊身份代碼 val.SpecialStatusCode = Record.GetAttribute("特殊身份代碼"); //原為抓取備註欄位 //年級 val.GradeYear = (Record.ParentNode as XmlElement).GetAttribute("年級"); //異動原因代碼 val.UpdateCode = Record.GetAttribute("異動代號"); //異動日期 val.UpdateDate = GetBirthdateWithoutSlash(Record.GetAttribute("異動日期")); // 原科別代碼 if (Record.GetAttribute("原就讀科別").Trim() == "") { val.PreviousDeptCode = Record.GetAttribute("轉入前學生資料_科別"); } else { val.PreviousDeptCode = Record.GetAttribute("原就讀科別"); } // 原學校代碼 if (Record.GetAttribute("原就讀學校").Trim() == "") { val.PreviousSchoolCode = Record.GetAttribute("轉入前學生資料_學校"); } else { val.PreviousSchoolCode = Record.GetAttribute("原就讀學校"); } // 原學號 if (Record.GetAttribute("原就讀學號").Trim() == "") { val.PreviousStudentNumber = Record.GetAttribute("轉入前學生資料_學號"); } else { val.PreviousStudentNumber = Record.GetAttribute("原就讀學號"); } // 原年級 if (Record.GetAttribute("原就讀年級").Trim() == "") { val.PreviousGradeYear = Record.GetAttribute("轉入前學生資料_年級"); } else { val.PreviousGradeYear = Record.GetAttribute("原就讀年級"); } // 原學期 if (Record.GetAttribute("原就讀學期").Trim() == "") { val.PreviousSemester = Record.GetAttribute("轉入前學生資料_學期"); } else { val.PreviousSemester = Record.GetAttribute("原就讀學期"); } //原備查日期 if (Record.GetAttribute("原就讀備查日期").Trim() == "") { val.PreviousSchoolLastADDate = GetBirthdateWithoutSlash(Record.GetAttribute("轉入前學生資料_備查日期")); } else { val.PreviousSchoolLastADDate = GetBirthdateWithoutSlash(Record.GetAttribute("原就讀備查日期")); } //原備查文字 if (Record.GetAttribute("原就讀備查文號").Trim() == "") { val.PreviousSchoolLastADDoc = GetNumAndSrt1(Record.GetAttribute("轉入前學生資料_備查文號")); } else { val.PreviousSchoolLastADDoc = GetNumAndSrt1(Record.GetAttribute("原就讀備查文號")); } //原備查文號 if (Record.GetAttribute("原就讀備查文號").Trim() == "") { val.PreviousSchoolLastADNum = GetNumAndSrt2(Record.GetAttribute("轉入前學生資料_備查文號")); } else { val.PreviousSchoolLastADNum = GetNumAndSrt2(Record.GetAttribute("原就讀備查文號")); } //更正後資料 val.NewData = Record.GetAttribute("新資料"); // 新學號 val.NewStudNumber = Record.GetAttribute("新學號"); //備註說明 val.Comment = Record.GetAttribute("備註"); // 異動編號 if (Record.GetAttribute("編號") != "") { val.URID = Record.GetAttribute("編號"); } else { val.URID = Record.GetAttribute("異動編號"); } // 備查日期 val.LastADDate = GetBirthdateWithoutSlash(Record.GetAttribute("備查日期")); // 備查文字 val.LastADDoc = GetNumAndSrt1(Record.GetAttribute("備查文號")); // 備查文號 val.LastADNum = GetNumAndSrt2(Record.GetAttribute("備查文號")); // 畢業證書字號 val.GraduateCertificateNumber = Record.GetAttribute("畢業證書字號"); // 更正後身分證註記 val.Comment2 = Record.GetAttribute("更正後身分證註記"); // 轉入身分別代碼 val.TransferStatus = Record.GetAttribute("轉入身分別代碼"); // 應畢業學年度 val.ExpectGraduateSchoolYear = Record.GetAttribute("應畢業學年度"); retVal.Add(val); // 借讀學校代碼 val.Code7SchoolCode = Record.GetAttribute("借讀學校代碼"); // 借讀科別代碼 val.Code7DeptCode = Record.GetAttribute("借讀科別代碼"); // 申請開始日期 val.Code71BeginDate = Record.GetAttribute("申請開始日期"); // 申請結束日期 val.Code71EndDate = Record.GetAttribute("申請結束日期"); // 實際開始日期 val.Code72BeginDate = Record.GetAttribute("實際開始日期"); // 實際結束日期 val.Code72EndDate = Record.GetAttribute("實際結束日期"); } // 解析科別代碼用 Dictionary <string, string> deptCodeDict = new Dictionary <string, string>(); foreach (SHDepartmentRecord rec in SHDepartment.SelectAll()) { if (!deptCodeDict.ContainsKey(rec.FullName)) { deptCodeDict.Add(rec.FullName, rec.Code); } } // 排序填入 int uidint; retVal = (from data in retVal orderby data.Name, data.UpdateDate, int.TryParse(data.URID, out uidint) select data).ToList(); int order = 0; string tmpStr = ""; foreach (GovernmentalDocument.Reports.List.rpt_UpdateRecord rec in retVal) { if (rec.Name != tmpStr) { order = 1; rec.Order = order.ToString(); } else { rec.Order = order.ToString(); } order++; tmpStr = rec.Name; // 教育部 99年學校代碼長度定義6碼,直接切 if (rec.PreviousSchoolCode.Length >= 6) { rec.PreviousSchoolCode = rec.PreviousSchoolCode.Substring(0, 6); } // 解析科別代碼 if (deptCodeDict.ContainsKey(rec.PreviousDeptCode)) { rec.PreviousDeptCode = deptCodeDict[rec.PreviousDeptCode]; } } return(retVal); }
void _bgWorkerLoad_DoWork(object sender, DoWorkEventArgs e) { // 取得就學生畢業異動資料 _StudHasGraduateRecDict.Clear(); List <SHUpdateRecordRecord> recList = SHUpdateRecord.SelectByStudentIDs(_StudentIDList); foreach (SHUpdateRecordRecord rec in recList) { // 不是畢業異動跳過 if (rec.UpdateCode != "501") { continue; } if (!_StudHasGraduateRecDict.ContainsKey(rec.StudentID)) { _StudHasGraduateRecDict.Add(rec.StudentID, rec); } } // 取得最後一筆異動 _StudLastupdateRecDict.Clear(); foreach (string sid in _StudentIDList) { List <SHUpdateRecordRecord> recL = (from data in recList where data.StudentID == sid && data.ADDate.Trim() != "" orderby DateTime.Parse(data.ADDate) descending, int.Parse(data.ID) descending select data).ToList(); if (recL.Count > 0) { SHUpdateRecordRecord r1 = recL[0]; if (!_StudLastupdateRecDict.ContainsKey(r1.StudentID)) { _StudLastupdateRecDict.Add(r1.StudentID, r1); } } } // 學生資料 _StudentDict.Clear(); foreach (SHStudentRecord rec in SHStudent.SelectByIDs(_StudentIDList)) { _StudentDict.Add(rec.ID, rec); } // 畢業證書 _LeaveInfoRecordDict.Clear(); foreach (SHLeaveInfoRecord rec in SHLeaveInfo.SelectByStudentIDs(_StudentIDList)) { if (!_LeaveInfoRecordDict.ContainsKey(rec.RefStudentID)) { _LeaveInfoRecordDict.Add(rec.RefStudentID, rec); } } // 班級 _ClassRecDict.Clear(); foreach (SHClassRecord rec in SHClass.SelectAll()) { if (!_ClassRecDict.ContainsKey(rec.ID)) { _ClassRecDict.Add(rec.ID, rec); } } // 科別 _DeptRecDict.Clear(); foreach (SHDepartmentRecord rec in SHDepartment.SelectAll()) { if (!_DeptRecDict.ContainsKey(rec.ID)) { _DeptRecDict.Add(rec.ID, rec); } } }
/// <summary> /// 將 StudUpdateRecDoc List 轉成 XML /// </summary> /// <returns></returns> public static XElement ConvertStudUpdateRecDocToXML(List <BL.StudUpdateRecDoc> updateRecList) { // 排序年級與科別 //var data = from ud in updateRecList orderby; Dictionary <string, List <BL.StudUpdateRecDoc> > data = new Dictionary <string, List <UpdateRecordModule_SH_N.BL.StudUpdateRecDoc> >(); Dictionary <string, string> deptCodeDict = new Dictionary <string, string>(); foreach (SHDepartmentRecord rec in SHDepartment.SelectAll()) { if (!deptCodeDict.ContainsKey(rec.FullName)) { deptCodeDict.Add(rec.FullName, rec.Code); } //if (!deptCodeDict.ContainsKey(rec.Name)) // deptCodeDict.Add(rec.Name, rec.Code); } foreach (BL.StudUpdateRecDoc val in updateRecList) { string key = val.GradeYear + "_" + val.Department + "_"; if (data.ContainsKey(key)) { data[key].Add(val); } else { List <BL.StudUpdateRecDoc> xx = new List <UpdateRecordModule_SH_N.BL.StudUpdateRecDoc>(); xx.Add(val); data.Add(key, xx); } } XElement retVal = new XElement("異動名冊"); retVal.SetAttributeValue("學年度", Global._GSchoolYear); retVal.SetAttributeValue("學期", Global._GSemester); retVal.SetAttributeValue("學校代碼", Global._GSchoolCode); retVal.SetAttributeValue("學校代號", Global._GSchoolCode); retVal.SetAttributeValue("學校名稱", Global._GSchoolName); retVal.SetAttributeValue("類別", Global._GUpdateBatchType); foreach (KeyValuePair <string, List <BL.StudUpdateRecDoc> > val in data) { // 解析年級科別 int idx = val.Key.IndexOf("_"); string grYear = val.Key.Substring(0, idx); string DeptName = val.Key.Substring(idx + 1, (val.Key.Length - (idx + 2))); string DeptCode = ""; if (deptCodeDict.ContainsKey(DeptName)) { DeptCode = deptCodeDict[DeptName]; } XElement elmGrDept = new XElement("清單"); elmGrDept.SetAttributeValue("年級", grYear); elmGrDept.SetAttributeValue("科別", DeptName); elmGrDept.SetAttributeValue("科別代碼", DeptCode); elmGrDept.SetAttributeValue("科別代號", DeptCode); foreach (BL.StudUpdateRecDoc rec in val.Value) { XElement elm = new XElement("異動紀錄"); elm.SetAttributeValue("異動代碼", rec.UpdateCode); elm.SetAttributeValue("異動代號", rec.UpdateCode); elm.SetAttributeValue("原因及事項", rec.UpdateDescription); elm.SetAttributeValue("異動日期", rec.UpdateDate); elm.SetAttributeValue("備註", rec.Comment); elm.SetAttributeValue("班別", rec.ClassType); elm.SetAttributeValue("科別", rec.Department); elm.SetAttributeValue("科別代碼", rec.DeptCode); elm.SetAttributeValue("特殊身分代碼", rec.SpecialStatus); elm.SetAttributeValue("特殊身份代碼", rec.SpecialStatus); elm.SetAttributeValue("姓名", rec.StudentName); elm.SetAttributeValue("學號", rec.StudentNumber); elm.SetAttributeValue("身分證字號", rec.IDNumber); elm.SetAttributeValue("身分證號", rec.IDNumber); elm.SetAttributeValue("生日", rec.Birthday); DateTime dt; if (DateTime.TryParse(rec.Birthday, out dt)) { elm.SetAttributeValue("出生年月日", (dt.Year - 1911) + "/" + dt.Month + "/" + dt.Day); } else { elm.SetAttributeValue("出生年月日", ""); } elm.SetAttributeValue("身分證註記", rec.IDNumberComment); elm.SetAttributeValue("註1", rec.IDNumberComment); elm.SetAttributeValue("性別", rec.Gender); elm.SetAttributeValue("性別代碼", rec.GenderCode); elm.SetAttributeValue("性別代號", rec.GenderCode); elm.SetAttributeValue("畢業國中", rec.GraduateSchool); elm.SetAttributeValue("畢業國中所在地代碼", rec.GraduateSchoolLocationCode); elm.SetAttributeValue("畢業國中所在縣市代號", rec.GraduateSchoolLocationCode); elm.SetAttributeValue("入學資格註記", rec.GraduateComment); elm.SetAttributeValue("入學資格代號", rec.UpdateCode); elm.SetAttributeValue("畢業國中代碼", rec.GraduateSchoolCode); elm.SetAttributeValue("國中畢業學年度", rec.GraduateSchoolYear); elm.SetAttributeValue("核准日期", rec.ADDate); elm.SetAttributeValue("核准文號", rec.ADNumber); elm.SetAttributeValue("舊科別代碼", rec.OldDepartmentCode); elm.SetAttributeValue("舊班別", rec.OldClassType); elm.SetAttributeValue("備查日期", rec.LastADDate); elm.SetAttributeValue("備查文號", rec.LastADNumber); elm.SetAttributeValue("原就讀學校", rec.PreviousSchool); elm.SetAttributeValue("原就讀學號", rec.PreviousStudentNumber); elm.SetAttributeValue("原就讀科別", rec.PreviousDepartment); elm.SetAttributeValue("原就讀年級", rec.PreviousGradeYear); elm.SetAttributeValue("原就讀學期", rec.PreviousSemester); elm.SetAttributeValue("原就讀備查日期", rec.PreviousSchoolLastADDate); elm.SetAttributeValue("原就讀備查文號", rec.PreviousSchoolLastADNumber); elm.SetAttributeValue("最後異動代碼", rec.LastUpdateCode); elm.SetAttributeValue("最後異動代號", rec.LastUpdateCode); elm.SetAttributeValue("畢業證書字號", rec.GraduateCertificateNumber); elm.SetAttributeValue("年級", rec.GradeYear); elm.SetAttributeValue("新資料", rec.NewData); elm.SetAttributeValue("異動編號", rec.URID); elm.SetAttributeValue("學生編號", rec.StudentID); elm.SetAttributeValue("新學號", rec.NewStudentNumber); elm.SetAttributeValue("轉入前學生資料_學校", rec.PreviousSchool); elm.SetAttributeValue("轉入前學生資料_學號", rec.PreviousStudentNumber); elm.SetAttributeValue("轉入前學生資料_科別", rec.PreviousDepartment); elm.SetAttributeValue("轉入前學生資料_年級", rec.PreviousGradeYear); elm.SetAttributeValue("轉入前學生資料_學期", rec.PreviousSemester); elm.SetAttributeValue("轉入前學生資料_備查日期", rec.PreviousSchoolLastADDate); elm.SetAttributeValue("轉入前學生資料_備查文號", rec.PreviousSchoolLastADNumber); elm.SetAttributeValue("入學資格證明文件", rec.GraduateDocument); // 當他校轉入 if (rec.UpdateCode.Substring(0, 1) == "1") { elm.SetAttributeValue("轉入身分別代碼", rec.Comment2); } else { elm.SetAttributeValue("更正後身分證註記", rec.Comment2); } elm.SetAttributeValue("應畢業學年度", rec.ExpectGraduateSchoolYear); elmGrDept.Add(elm); } retVal.Add(elmGrDept); } return(retVal); }
/// <summary> /// 新生異動 /// </summary> public UpdateRecordInfo03(SHUpdateRecordRecord UpdateRec, PermRecLogProcess prlp, List <XElement> UpdateCodeElms, bool isInsert) { InitializeComponent(); cbxGender.Items.Add("男"); cbxGender.Items.Add("女"); cbxClass.DropDownWidth = 300; _UpdateRec = UpdateRec; _prlp = prlp; _UpdateCodeElms = UpdateCodeElms; _UpdateCoodeList = (from x in _UpdateCodeElms select x.Element("代號").Value + " " + x.Element("原因及事項").Value).ToList(); _DeptList = SHDepartment.SelectAll(); _epUpdateCode = new ErrorProvider(); _UCodeDict = Utility.UITool.ConvertUpdateCodeDescDict(_UpdateCodeElms); _faldn = new UpdateRecordModule_SH_D.Utility.FormAndLogDataManager(_prlp); // 新增帶入預設 if (isInsert) { // 載入資料 // 載入預設前級畢業資訊 Dictionary <string, DAL.SchoolData> schoolDataDict = new Dictionary <string, DAL.SchoolData>(); foreach (XElement elm in BL.Get.JHSchoolList().Elements("學校")) { DAL.SchoolData sd = new DAL.SchoolData(); sd.SchoolCode = elm.Attribute("代碼").Value; sd.SchoolLocation = elm.Attribute("所在地").Value; sd.SchoolName = elm.Attribute("名稱").Value; sd.SchoolLocationCode = elm.Attribute("所在地代碼").Value; if (sd.SchoolCode.Length > 3) { sd.SchoolType = sd.SchoolCode.Substring(2, 1); } string s1 = elm.Attribute("所在地").Value + elm.Attribute("名稱").Value; if (!schoolDataDict.ContainsKey(s1)) { schoolDataDict.Add(s1, sd); } if (!schoolDataDict.ContainsKey(sd.SchoolName)) { schoolDataDict.Add(sd.SchoolName, sd); } } SHBeforeEnrollmentRecord brfRec = SHBeforeEnrollment.SelectByStudentID(_UpdateRec.StudentID); if (string.IsNullOrEmpty(_UpdateRec.GraduateSchool)) { _UpdateRec.GraduateSchool = brfRec.School; } if (string.IsNullOrEmpty(_UpdateRec.GraduateSchoolYear)) { _UpdateRec.GraduateSchoolYear = brfRec.GraduateSchoolYear; } // 用學校名稱解析 if (!string.IsNullOrEmpty(brfRec.School)) { string key = brfRec.SchoolLocation.Replace("台", "臺") + brfRec.School.Trim(); if (schoolDataDict.ContainsKey(key)) { if (string.IsNullOrEmpty(_UpdateRec.GraduateSchoolCode)) { _UpdateRec.GraduateSchoolCode = schoolDataDict[key].SchoolCode; _UpdateRec.GraduateSchoolLocationCode = schoolDataDict[key].SchoolLocationCode; } } } } cbxUpdateCode = _faldn.SetFormData(_UpdateRec.UpdateCode, cbxUpdateCode, "資格代碼"); txtDesc = _faldn.SetFormData(_UpdateRec.UpdateDescription, txtDesc, "原因及事項"); dtUpdateDate = _faldn.SetFormData(_UpdateRec.UpdateDate, dtUpdateDate, "異動日期"); txtMemo = _faldn.SetFormData(_UpdateRec.Comment, txtMemo, "備註"); cbxDept = _faldn.SetFormData(_UpdateRec.Department, cbxDept, "科別"); cbxClass = _faldn.SetFormData(_UpdateRec.ClassType, cbxClass, "班別"); txtSpecial = _faldn.SetFormData(_UpdateRec.SpecialStatus, txtSpecial, "特殊身分代碼"); txtName = _faldn.SetFormData(_UpdateRec.StudentName, txtName, "姓名"); txtStudentNumber = _faldn.SetFormData(_UpdateRec.StudentNumber, txtStudentNumber, "學號"); txtIDNumber = _faldn.SetFormData(_UpdateRec.IDNumber, txtIDNumber, "身分證字號"); dtBirthday = _faldn.SetFormData(_UpdateRec.Birthdate, dtBirthday, "生日"); txtIDNumber1 = _faldn.SetFormData(_UpdateRec.IDNumberComment, txtIDNumber1, "註1"); cbxGender = _faldn.SetFormData(_UpdateRec.Gender, cbxGender, "性別"); txtISchool = _faldn.SetFormData(_UpdateRec.GraduateSchool, txtISchool, "入學資格(畢業國中)"); txtISpaceCode = _faldn.SetFormData(_UpdateRec.GraduateSchoolLocationCode, txtISpaceCode, "所在地代碼"); txtISchoolCode = _faldn.SetFormData(_UpdateRec.GraduateSchoolCode, txtISchoolCode, "畢業國中學校代號"); txtIJHGradeYear = _faldn.SetFormData(_UpdateRec.GraduateSchoolYear, txtIJHGradeYear, "國中畢業年度"); dtADDate = _faldn.SetFormData(_UpdateRec.ADDate, dtADDate, "核准日期"); txtADDocNo = _faldn.SetFormData(_UpdateRec.ADNumber, txtADDocNo, "核准文號"); txtGradeDoc = _faldn.SetFormData(_UpdateRec.GraduateDocument, txtGradeDoc, "入學資格證明文件"); }
/// <summary> /// 學籍異動 /// </summary> public UpdateRecordInfo01(SHUpdateRecordRecord UpdateRec, PermRecLogProcess prlp, List <XElement> UpdateCodeElms) { SHUpdateRecordRecord rec = new SHUpdateRecordRecord(); InitializeComponent(); cbxGender.Items.Add("男"); cbxGender.Items.Add("女"); cbxClass.DropDownWidth = 300; _UpdateRec = UpdateRec; _prlp = prlp; _UpdateCodeElms = UpdateCodeElms; _epUpdateCode = new ErrorProvider(); _UpdateCoodeList = (from x in _UpdateCodeElms select x.Element("代號").Value + " " + x.Element("原因及事項").Value).ToList(); _DeptList = SHDepartment.SelectAll(); // 更正學籍顯示對照用 _updateCodeDict4 = new Dictionary <string, string>(); // 日進校不同,所以需要檢查: // 日校 _updateCodeDict4.Add("401", "新學號"); _updateCodeDict4.Add("402", "新姓名"); _updateCodeDict4.Add("403", "新性別"); _updateCodeDict4.Add("404", "新籍貫"); _updateCodeDict4.Add("405", "新生日"); _updateCodeDict4.Add("406", "新科別"); _updateCodeDict4.Add("407", "新身分證號"); _updateCodeDict4.Add("408", "入學資格學校名稱"); _updateCodeDict4.Add("409", "特殊身分"); _updateCodeDict4.Add("499", "其他學籍事項"); if (string.IsNullOrEmpty(_UpdateRec.ExpectGraduateSchoolYear)) { SHLeaveInfoRecord shl = SHLeaveInfo.SelectByStudentID(_UpdateRec.StudentID); if (shl.SchoolYear.HasValue) { _UpdateRec.ExpectGraduateSchoolYear = shl.SchoolYear.Value.ToString(); } } _UCodeDict = Utility.UITool.ConvertUpdateCodeDescDict(_UpdateCodeElms); _faldn = new UpdateRecordModule_SH_D.Utility.FormAndLogDataManager(_prlp); if (!string.IsNullOrEmpty(_UpdateRec.NewStudentNumber)) { int i; if (int.TryParse(_UpdateRec.NewStudentNumber.Trim(), out i)) { _UpdateRec.NewData = i.ToString(); _UpdateRec.NewStudentNumber = i.ToString(); } else { _UpdateRec.NewStudentNumber = ""; } } // 載入資料 cbxUpdateCode = _faldn.SetFormData(_UpdateRec.UpdateCode, cbxUpdateCode, "異動代碼"); txtDesc = _faldn.SetFormData(_UpdateRec.UpdateDescription, txtDesc, "原因及事項"); dtUpdateDate = _faldn.SetFormData(_UpdateRec.UpdateDate, dtUpdateDate, "異動日期"); txtMemo = _faldn.SetFormData(_UpdateRec.Comment, txtMemo, "備註"); cbxDept = _faldn.SetFormData(_UpdateRec.Department, cbxDept, "科別"); cbxClass = _faldn.SetFormData(_UpdateRec.ClassType, cbxClass, "班別"); txtSpecial = _faldn.SetFormData(_UpdateRec.SpecialStatus, txtSpecial, "特殊身分代碼"); txtName = _faldn.SetFormData(_UpdateRec.StudentName, txtName, "姓名"); txtStudentNumber = _faldn.SetFormData(_UpdateRec.StudentNumber, txtStudentNumber, "學號"); txtIDNumber = _faldn.SetFormData(_UpdateRec.IDNumber, txtIDNumber, "身分證字號"); txtNewData = _faldn.SetFormData(_UpdateRec.NewData, txtNewData, "新資料"); txtIDNumber1 = _faldn.SetFormData(_UpdateRec.IDNumberComment, txtIDNumber1, "註1"); txtIDNumber2 = _faldn.SetFormData(_UpdateRec.Comment2, txtIDNumber2, "註2"); dtLastUpdateDate = _faldn.SetFormData(_UpdateRec.LastADDate, dtLastUpdateDate, "備查日期"); txtLastDocNo = _faldn.SetFormData(_UpdateRec.LastADNumber, txtLastDocNo, "備查文號"); dtADDate = _faldn.SetFormData(_UpdateRec.ADDate, dtADDate, "核准日期"); txtADDocNo = _faldn.SetFormData(_UpdateRec.ADNumber, txtADDocNo, "核准文號"); cbxGender = _faldn.SetFormData(_UpdateRec.Gender, cbxGender, "性別"); dtBirthday = _faldn.SetFormData(_UpdateRec.Birthdate, dtBirthday, "生日"); txtSHSchoolYear = _faldn.SetFormData(_UpdateRec.ExpectGraduateSchoolYear, txtSHSchoolYear, "應畢業學年度"); txtC7SchoolCode = _faldn.SetFormData(_UpdateRec.Code7SchoolCode, txtC7SchoolCode, "借讀學校代碼"); txtC7DeptCode = _faldn.SetFormData(_UpdateRec.Code7DeptCode, txtC7DeptCode, "借讀科別代碼"); dtC71BeginDate = _faldn.SetFormData(_UpdateRec.Code71BeginDate, dtC71BeginDate, "申請開始日期"); dtC71EndDate = _faldn.SetFormData(_UpdateRec.Code71EndDate, dtC71EndDate, "申請結束日期"); dtC72BeginDate = _faldn.SetFormData(_UpdateRec.Code72BeginDate, dtC72BeginDate, "實際開始日期"); dtC72EndDate = _faldn.SetFormData(_UpdateRec.Code72EndDate, dtC72EndDate, "實際結束日期"); txtReplicatedSchoolRollNumber = _faldn.SetFormData(_UpdateRec.ReplicatedSchoolRollNumber, txtReplicatedSchoolRollNumber, "雙重學籍編號"); }