Example #1
0
        private void OutListData(Cells cells, DAO.ClassVO ClassObj, DAO.StudentVO StudentObj)
        {
            int columnIndex = 0;

            _ListRowIndex++;

            if (_ListRowIndex > _MAX_ROW_COUNT)
            {
                return;
            }

            // 先產生空白列
            Range range = cells.CreateRange(_ListRowIndex, columnIndex, 1, _MAX_List_Column);

            range.CopyStyle(_List_Row_Range);

            // 設定高度
            cells.SetRowHeightPixel(_ListRowIndex, _List_Row_Height);

            // 班級	座號	姓名	學號	應得學分數	實得學分數	未達百分比
            cells[_ListRowIndex, columnIndex++].PutValue(ClassObj.ClassName);
            cells[_ListRowIndex, columnIndex++].PutValue(StudentObj.SeatNo);
            cells[_ListRowIndex, columnIndex++].PutValue(StudentObj.StudentName);
            cells[_ListRowIndex, columnIndex++].PutValue(StudentObj.StudentNumber);
            cells[_ListRowIndex, columnIndex++].PutValue(StudentObj.TotalCredit);
            cells[_ListRowIndex, columnIndex++].PutValue(StudentObj.GotCredit);
            cells[_ListRowIndex, columnIndex++].PutValue(StudentObj.CreditRate + "%");
        }
Example #2
0
        /// <summary>
        /// 排序:座號/學號/姓名
        /// </summary>
        private int SortStudent(DAO.StudentVO obj1, DAO.StudentVO obj2)
        {
            string seatno1 = obj1.SeatNo.PadLeft(3, '0');

            seatno1 += obj1.StudentNumber.PadLeft(20, '0');
            seatno1 += obj1.StudentName.PadLeft(10, '0');

            string seatno2 = obj2.SeatNo.PadLeft(3, '0');

            seatno2 += obj2.StudentNumber.PadLeft(20, '0');
            seatno2 += obj2.StudentName.PadLeft(10, '0');

            return(seatno1.CompareTo(seatno2));
        }
Example #3
0
        private ListViewItem ConvertToListViewItem(DAO.StudentVO rec)
        {
            ListViewItem item = new ListViewItem();

            item.Tag = rec;
            // 學號
            item.Text = rec.StudentNumber;
            // 班級
            item.SubItems.Add(rec.ClassName);
            // 姓名
            item.SubItems.Add(rec.StudentName);

            return(item);
        }
Example #4
0
        private void OutDetailData(Cells cells, DAO.ClassVO ClassObj, DAO.StudentVO StudentObj)
        {
            if (_DetailRowIndex > _MAX_ROW_COUNT)
            {
                return;
            }

            int columnIndex = 0;

            _DetailRowIndex++;

            // 設定高度
            cells.SetRowHeightPixel(_DetailRowIndex, _Detail_Row_Height[3]);

            // 座號	姓名	學號
            SetDetailColumnValue(cells, columnIndex++, StudentObj.SeatNo, _Detail_Style_Normal);
            SetDetailColumnValue(cells, columnIndex++, StudentObj.StudentName, _Detail_Style_Normal);
            SetDetailColumnValue(cells, columnIndex++, StudentObj.StudentNumber, _Detail_Style_Normal);

            #region 輸出每一科的分數
            // 國文Ⅳ	英文Ⅳ	...
            foreach (DAO.CourseVO CourseObj in ClassObj.AllCourseListDic.Values)
            {
                DAO.CourseVO StuCourseObj = Utility.FindCourse(StudentObj.CourseListDic.Values.ToList(), CourseObj.CourseId);
                if (StuCourseObj == null)
                {
                    // 沒有修這堂課
                    SetDetailColumnValue(cells, columnIndex++, "", _Detail_Style_Normal);
                }
                else
                {
                    if (StuCourseObj.CourseScore == -1)
                    {
                        // 有這堂課, 卻沒有分數
                        SetDetailColumnValue(cells, columnIndex++, _NoScroe, _Detail_Style_Red);
                    }
                    else
                    {
                        if (StuCourseObj.IsPass == true)
                        {
                            SetDetailColumnValue(cells, columnIndex++, StuCourseObj.CourseScore, _Detail_Style_Normal);
                        }
                        else
                        {
                            SetDetailColumnValue(cells, columnIndex++, StuCourseObj.CourseScore, _Detail_Style_Red);
                        }
                    }
                }
            }
            #endregion

            // 假如印出的課程小於預設的課程數量, 就把剩下的欄位補上Style(邊框)
            for (int intI = 0; intI < (_Default_Detail_Course_Count - _Current_Course_Count); intI++)
            {
                SetDetailColumnValue(cells, columnIndex++, "", _Detail_Style_Normal);
            }

            // 及格標準	應得學分數	實得學分數	未達百分比
            SetDetailColumnValue(cells, columnIndex++, StudentObj.PassScore, _Detail_Style_Normal);
            SetDetailColumnValue(cells, columnIndex++, StudentObj.TotalCredit, _Detail_Style_Normal);
            SetDetailColumnValue(cells, columnIndex++, StudentObj.GotCredit, _Detail_Style_Normal);
            SetDetailColumnValue(cells, columnIndex++, StudentObj.CreditRate + "%", _Detail_Style_Normal);
        }