Beispiel #1
0
        public GetUDTXml(List <GraduateUDT> InsertArchiveList, string TableName, string RootName)
        {
            //建立學生ID 清單
            List <string> list = new List <string>();

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!list.Contains(each.StudentID))
                {
                    list.Add(each.StudentID);
                }
            }

            //QueryHelper
            QueryHelper _queryhelper = new QueryHelper();
            string      sqlStr1      = "Select * From " + TableName + " where " + UDT_S.PopOneCondition("ref_student_id", list);

            //取得所有學生ID的 TableName 資料
            dataTable = _queryhelper.Select(sqlStr1);

            //建立資料盒子
            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!XmlUDTDic.ContainsKey(each.StudentID))
                {
                    XmlUdtHelp H = new XmlUdtHelp(each, RootName); //Mini盒子
                    XmlUDTDic.Add(each.StudentID, H);
                }
            }
        }
        public GetAttendanceUDTXml(List <GraduateUDT> InsertArchiveList)
        {
            //建立學生ID 清單
            List <string> list = new List <string>();

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!list.Contains(each.StudentID))
                {
                    list.Add(each.StudentID);
                }
            }

            //QueryHelper
            QueryHelper _queryhelper = new QueryHelper();
            string      sqlStr1      = "Select * From attendance where " + UDT_S.PopOneCondition("ref_student_id", list);
            //取得所有學生ID的缺曠資料
            DataTable dt1 = _queryhelper.Select(sqlStr1);

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!XmlUDTDic.ContainsKey(each.StudentID))
                {
                    XmlUdtHelp H = new XmlUdtHelp(each, "AttendanceList"); //Mini盒子
                    XmlUDTDic.Add(each.StudentID, H);
                }
            }

            foreach (DataRow dr in dt1.Rows)
            {
                //先判斷是否為Dic內存之資料
                if (XmlUDTDic.ContainsKey("" + dr[1]))
                {
                    string      student = "" + dr[1];
                    DSXmlHelper XmlDoc  = XmlUDTDic[student]._XmlHelper;

                    #region Element

                    XmlDoc.AddElement("Attendance");
                    XmlDoc.SetAttribute("Attendance", "ID", "" + dr[0]);

                    XmlDoc.AddElement("Attendance", "RefStudentID");
                    XmlDoc.SetText("Attendance/RefStudentID", "" + dr[1]);

                    XmlDoc.AddElement("Attendance", "SchoolYear");
                    XmlDoc.SetText("Attendance/SchoolYear", "" + dr[2]);

                    XmlDoc.AddElement("Attendance", "Semester");
                    XmlDoc.SetText("Attendance/Semester", "" + dr[3]);

                    XmlDoc.AddElement("Attendance", "OccurDate");
                    XmlDoc.SetText("Attendance/OccurDate", UDT_S.ChangeTime("" + dr[4]));
                    //XML
                    XmlDoc.AddElement("Attendance", "Detail");
                    XmlDoc.AddXmlString("Attendance/Detail", "" + dr[5]);

                    #endregion

                    #region AttendanceRecord - 原生結構

                    //<Attendance ID="351287">
                    //    <RefStudentID>53972</RefStudentID>
                    //    <SchoolYear>99</SchoolYear>
                    //    <Semester>2</Semester>
                    //    <OccurDate>2011-01-20 00:00:00</OccurDate>
                    //    <Detail>
                    //        <Attendance>
                    //            <Period AbsenceType="公假">一</Period>
                    //            <Period AbsenceType="公假">二</Period>
                    //            <Period AbsenceType="公假">三</Period>
                    //            <Period AbsenceType="公假">四</Period>
                    //            <Period AbsenceType="公假">午休</Period>
                    //            <Period AbsenceType="公假">五</Period>
                    //        </Attendance>
                    //    </Detail>
                    //</Attendance>

                    #endregion
                }
            }
        }
Beispiel #3
0
        public GetUpdateRecordUDTXml(List <GraduateUDT> InsertArchiveList)
        {
            List <string> list = new List <string>();

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!list.Contains(each.StudentID))
                {
                    list.Add(each.StudentID);
                }
            }

            //QueryHelper
            QueryHelper _queryhelper = new QueryHelper();
            string      sqlStr1      = "Select * From update_record where " + UDT_S.PopOneCondition("ref_student_id", list);

            //取得所有學生ID的異動資料
            DataTable dt1 = _queryhelper.Select(sqlStr1);

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!XmlUDTDic.ContainsKey(each.StudentID))
                {
                    XmlUdtHelp H = new XmlUdtHelp(each, "UpdateRecordList"); //Mini盒子
                    XmlUDTDic.Add(each.StudentID, H);
                }
            }

            foreach (DataRow dr in dt1.Rows)
            {
                //先判斷是否為Dic內存之資料
                if (XmlUDTDic.ContainsKey("" + dr[1]))
                {
                    string      student = "" + dr[1];
                    DSXmlHelper XmlDoc  = XmlUDTDic[student]._XmlHelper;

                    #region Element

                    XmlDoc.AddElement("UpdateRecord");
                    XmlDoc.SetAttribute("UpdateRecord", "ID", "" + dr[0]);

                    XmlDoc.AddElement("UpdateRecord", "RefStudentID");
                    XmlDoc.SetText("UpdateRecord/RefStudentID", "" + dr[1]);

                    XmlDoc.AddElement("UpdateRecord", "SchoolYear");
                    XmlDoc.SetText("UpdateRecord/SchoolYear", "" + dr[2]);

                    XmlDoc.AddElement("UpdateRecord", "Semester");
                    XmlDoc.SetText("UpdateRecord/Semester", "" + dr[3]);

                    XmlDoc.AddElement("UpdateRecord", "S_Name");
                    XmlDoc.SetText("UpdateRecord/S_Name", "" + dr[4]);

                    XmlDoc.AddElement("UpdateRecord", "S_StudentNumber");
                    XmlDoc.SetText("UpdateRecord/S_StudentNumber", "" + dr[5]);

                    XmlDoc.AddElement("UpdateRecord", "S_Gender");
                    XmlDoc.SetText("UpdateRecord/S_Gender", "" + dr[6]);

                    XmlDoc.AddElement("UpdateRecord", "S_IDNumber");
                    XmlDoc.SetText("UpdateRecord/S_IDNumber", "" + dr[7]);

                    XmlDoc.AddElement("UpdateRecord", "S_Birthdate");
                    XmlDoc.SetText("UpdateRecord/S_Birthdate", UDT_S.ChangeTime("" + dr[8]));

                    XmlDoc.AddElement("UpdateRecord", "S_GradeYear");
                    XmlDoc.SetText("UpdateRecord/S_GradeYear", "" + dr[9]);

                    XmlDoc.AddElement("UpdateRecord", "S_Dept");
                    XmlDoc.SetText("UpdateRecord/S_Dept", "" + dr[10]);

                    XmlDoc.AddElement("UpdateRecord", "Update_Date");
                    XmlDoc.SetText("UpdateRecord/Update_Date", UDT_S.ChangeTime("" + dr[11]));

                    XmlDoc.AddElement("UpdateRecord", "Update_Code");
                    XmlDoc.SetText("UpdateRecord/Update_Code", "" + dr[12]);

                    XmlDoc.AddElement("UpdateRecord", "Update_Type");
                    XmlDoc.SetText("UpdateRecord/Update_Type", "" + dr[13]);

                    XmlDoc.AddElement("UpdateRecord", "Update_Reason");
                    XmlDoc.SetText("UpdateRecord/Update_Reason", "" + dr[14]);

                    XmlDoc.AddElement("UpdateRecord", "Update_Desc");
                    XmlDoc.SetText("UpdateRecord/Update_Desc", "" + dr[15]);

                    XmlDoc.AddElement("UpdateRecord", "AD_Date");
                    XmlDoc.SetText("UpdateRecord/AD_Date", "" + dr[16]);

                    XmlDoc.AddElement("UpdateRecord", "AD_Numbar");
                    XmlDoc.SetText("UpdateRecord/AD_Numbar", "" + dr[17]);

                    XmlDoc.AddElement("UpdateRecord", "Last_AD_Date");
                    XmlDoc.SetText("UpdateRecord/Last_AD_Date", UDT_S.ChangeTime("" + dr[18]));

                    XmlDoc.AddElement("UpdateRecord", "Last_AD_Numbar");
                    XmlDoc.SetText("UpdateRecord/Last_AD_Numbar", "" + dr[19]);

                    XmlDoc.AddElement("UpdateRecord", "Comment");
                    XmlDoc.SetText("UpdateRecord/Comment", "" + dr[20]);
                    //XML
                    XmlDoc.AddElement("UpdateRecord", "ConText_Info");
                    XmlDoc.AddXmlString("UpdateRecord/ConText_Info", "" + dr[21]);

                    XmlDoc.AddElement("UpdateRecord", "Last_Update_Date");
                    XmlDoc.SetText("UpdateRecord/Last_Update_Date", UDT_S.ChangeTime("" + dr[22]));

                    #endregion

                    #region  UpdateRecord - 原生結構

                    //<UpdateRecord ID="100540" RefStudentID="54139">
                    //    <SchoolYear>99</SchoolYear>
                    //    <Semester>2</Semester>
                    //    <Name>呂小鍾</Name>
                    //    <StudentNumber>712043</StudentNumber>
                    //    <Gender>男</Gender>
                    //    <IDNumber>J12254139</IDNumber>
                    //    <Birthdate>1993/08/15</Birthdate>
                    //    <GradeYear>3</GradeYear>
                    //    <Department>汽車科</Department>
                    //    <UpdateDate>2011/06/23</UpdateDate>
                    //    <UpdateCode>001</UpdateCode>
                    //    <UpdateType />
                    //    <UpdateReason />
                    //    <UpdateDescription>持國民中學畢業證明書者(含國中補校)</UpdateDescription>
                    //    <ADDate>1753/01/01</ADDate>
                    //    <ADNumber>澔字第1111111號</ADNumber>
                    //    <LastADDate />
                    //    <LastADNumber />
                    //    <Comment />
                    //    <ContextInfo>
                    //        <ContextInfo>
                    //            <GraduateComment>
                    //            </GraduateComment>
                    //            <ClassType> 3</ClassType>
                    //            <SpecialStatus>
                    //            </SpecialStatus>
                    //            <GraduateSchool> 市立光華國中</GraduateSchool>
                    //            <GraduateSchoolYear> 99</GraduateSchoolYear>
                    //            <GraduateSchoolCode> 183503</GraduateSchoolCode>
                    //            <GraduateSchoolLocationCode> 18</GraduateSchoolLocationCode>
                    //        </ContextInfo>
                    //    </ContextInfo>
                    //</UpdateRecord>



                    #endregion
                }
            }
        }
Beispiel #4
0
        public GetDisciplineUDTXml(List <GraduateUDT> InsertArchiveList)
        {
            //建立學生ID 清單
            List <string> list = new List <string>();

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!list.Contains(each.StudentID))
                {
                    list.Add(each.StudentID);
                }
            }

            //QueryHelper
            QueryHelper _queryhelper = new QueryHelper();
            string      sqlStr1      = "Select * From discipline where " + UDT_S.PopOneCondition("ref_student_id", list);

            //取得所有學生ID的獎懲資料
            DataTable dt1 = _queryhelper.Select(sqlStr1);

            foreach (GraduateUDT each in InsertArchiveList)
            {
                if (!XmlUDTDic.ContainsKey(each.StudentID))
                {
                    XmlUdtHelp H = new XmlUdtHelp(each, "DisciplineList"); //Mini盒子
                    XmlUDTDic.Add(each.StudentID, H);
                }
            }

            foreach (DataRow dr in dt1.Rows)
            {
                //先判斷是否為Dic內存之資料
                if (XmlUDTDic.ContainsKey("" + dr[8]))
                {
                    string      student = "" + dr[8];
                    DSXmlHelper XmlDoc  = XmlUDTDic[student]._XmlHelper;

                    #region Element

                    XmlDoc.AddElement("Discipline");
                    XmlDoc.SetAttribute("Discipline", "ID", "" + dr[0]);

                    XmlDoc.AddElement("Discipline", "RefStudentID");
                    XmlDoc.SetText("Discipline/RefStudentID", "" + dr[8]);

                    XmlDoc.AddElement("Discipline", "SchoolYear");
                    XmlDoc.SetText("Discipline/SchoolYear", "" + dr[1]);

                    XmlDoc.AddElement("Discipline", "Semester");
                    XmlDoc.SetText("Discipline/Semester", "" + dr[2]);

                    XmlDoc.AddElement("Discipline", "OccurDate");
                    XmlDoc.SetText("Discipline/OccurDate", UDT_S.ChangeTime("" + dr[4]));

                    XmlDoc.AddElement("Discipline", "RegisterDate");
                    XmlDoc.SetText("Discipline/RegisterDate", UDT_S.ChangeTime("" + dr[12]));

                    //0懲戒,1獎勵,2留察
                    XmlDoc.AddElement("Discipline", "MeritFlag");
                    XmlDoc.SetText("Discipline/MeritFlag", "" + dr[10]);

                    XmlDoc.AddElement("Discipline", "Reason");
                    XmlDoc.SetText("Discipline/Reason", "" + dr[6]);
                    //XML
                    XmlDoc.AddElement("Discipline", "Detail");
                    XmlDoc.AddXmlString("Discipline/Detail", "" + dr[7]);

                    #endregion

                    #region DisciplineRecord - 原生Xml結構

                    //<Discipline ID="315122">
                    //    <RefStudentID>57097</RefStudentID>
                    //    <Name>王小彥</Name>
                    //    <StudentNumber>J00114</StudentNumber>
                    //    <SeatNo>1</SeatNo>
                    //    <ClassName>普一甲</ClassName>
                    //    <Gender>女</Gender>
                    //    <SchoolYear>100</SchoolYear>
                    //    <Semester>1</Semester>
                    //    <OccurDate>2011/07/09</OccurDate>
                    //    <GradeYear />
                    //    <Reason>群育:自動參加花燈創意比賽,熱心公務。</Reason>
                    //    <Type>1</Type>
                    //    <MeritFlag>1</MeritFlag>
                    //    <RegisterDate>2011/08/11</RegisterDate>
                    //    <Detail>
                    //        <Discipline>
                    //            <Merit A="0" B="0" C="1" />
                    //            <Demerit A="0" B="1" C="0" ClearDate="" ClearReason="" Cleared="" />
                    //        </Discipline>
                    //    </Detail>
                    //    </Discipline>

                    #endregion
                }
            }
        }