Esempio n. 1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtNewName.Text.Trim() == "")
                {
                    MsgBox.Show("姓名必填");
                    return;
                }

                if (lblNewClassName.Text.Trim() == "")
                {
                    MsgBox.Show("班級必填");
                    return;
                }

                if (string.IsNullOrEmpty(cbotStudentNumber.Text))
                {
                    Errors.SetError(cbotStudentNumber, "學號空白!");
                }


                MsgForm mf = new MsgForm();

                string msg = "請問是否將班級由「" + lblClassName.Text + "」調整成「" + lblNewClassName.Text + "」,並傳送至局端備查?";

                bool chkSend = false;

                mf.Text = "調整確認";
                mf.SetMsg(msg);
                //if (FISCA.Presentation.Controls.MsgBox.Show(msg, "調整確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == System.Windows.Forms.DialogResult.Yes)
                if (mf.ShowDialog() == System.Windows.Forms.DialogResult.Yes)
                {
                    chkSend = true;
                }

                if (chkSend)
                {
                    string sid = string.Empty;


                    //if (StudCheckTool.CheckStudIDNumberSame(txtNewSSN.Text, sid))
                    //{
                    //    FISCA.Presentation.Controls.MsgBox.Show("身分證號重複請檢查");
                    //    return;
                    //}


                    Dictionary <string, int> chkSum = new Dictionary <string, int>();
                    foreach (JHSchool.Data.JHStudentRecord studRec in JHSchool.Data.JHStudent.SelectAll())
                    {
                        if (studRec.Status == K12.Data.StudentRecord.StudentStatus.一般)
                        {
                            if (!string.IsNullOrEmpty(studRec.StudentNumber))
                            {
                                if (chkSum.ContainsKey(studRec.StudentNumber))
                                {
                                    chkSum[studRec.StudentNumber]++;
                                }
                                else
                                {
                                    chkSum.Add(studRec.StudentNumber, 1);
                                }
                            }
                        }
                    }

                    bool chkDNumber = false;
                    if (chkSum.ContainsKey(cbotStudentNumber.Text))
                    {
                        if (chkSum[cbotStudentNumber.Text] > 0)
                        {
                            chkDNumber = true;
                        }
                    }

                    Errors.SetError(cbotStudentNumber, "");

                    if (chkDNumber)
                    {
                        Errors.SetError(cbotStudentNumber, "學號重複請檢查!");
                        return;
                    }

                    if (_status == AddTransStudStatus.Added)
                    {
                        JHSchool.Data.JHStudentRecord NewStudRec = new JHSchool.Data.JHStudentRecord();
                        NewStudRec.Name     = txtNewName.Text;
                        NewStudRec.Gender   = cboNewGender.Text;
                        NewStudRec.IDNumber = txtNewSSN.Text;
                        sid                   = JHSchool.Data.JHStudent.Insert(NewStudRec);
                        _StudentPhone         = JHSchool.Data.JHPhone.SelectByStudentID(sid);
                        _StudentPhone.Contact = txtNewTel.Text;
                    }

                    if (!string.IsNullOrEmpty(sid))
                    {
                        _student = JHSchool.Data.JHStudent.SelectByID(sid);
                    }

                    //_student.Name = txtNewName.Text;

                    _student.IDNumber = txtNewSSN.Text;
                    DateTime dt;
                    if (DateTime.TryParse(dtNewBirthday.Text, out dt))
                    {
                        _student.Birthday = dt;
                    }

                    //_student.Gender = cboNewGender.Text;
                    _student.Nationality = cboNewNationality.Text;
                    _student.BirthPlace  = txtNewBirthPlace.Text;
                    //_StudentPhone.Contact = txtNewTel.Text;
                    //_student.EnglishName = txtNewEngName.Text;

                    foreach (JHSchool.Data.JHClassRecord cr in JHSchool.Data.JHClass.SelectAll())
                    {
                        if (lblNewClassName.Text == cr.Name)
                        {
                            _student.RefClassID = cr.ID;
                            break;
                        }
                    }

                    if (string.IsNullOrEmpty(cboSeatNo.Text))
                    {
                        _student.SeatNo = null;
                    }
                    else
                    {
                        int no;
                        int.TryParse(cboSeatNo.Text, out no);
                        _student.SeatNo = no;
                    }
                    _student.StudentNumber = cbotStudentNumber.Text;


                    string strGradeYear = "";

                    if (_student.Class != null)
                    {
                        if (_student.Class.GradeYear.HasValue)
                        {
                            strGradeYear = _student.Class.GradeYear.Value.ToString();
                        }
                    }

                    // 當學生狀態非一般調整學生狀態
                    if (_student.Status != K12.Data.StudentRecord.StudentStatus.一般)
                    {
                        _student.Status = K12.Data.StudentRecord.StudentStatus.一般;
                    }

                    try
                    {
                        JHSchool.Data.JHStudent.Update(_student);
                        JHSchool.Data.JHPhone.Update(_StudentPhone);
                    }
                    catch (Exception ex)
                    {
                        FISCA.Presentation.Controls.MsgBox.Show("更新學生資料發生錯誤:" + ex.Message);
                    }

                    // 寫入班級學生變動
                    UDT_ClassSpecial StudSpec = UDTTransfer.AddClassSpecStudent(_student.ID, "", _student.RefClassID, lblClassName.Text, lblNewClassName.Text, lblNewClassName.Text, "", "");


                    // 傳送至局端
                    string errMsg = Utility.SendData("自動轉入", _student.IDNumber, _student.StudentNumber, _student.Name, strGradeYear, lblClassName.Text, cboSeatNo.Text, lblNewClassName.Text, "", "", _student.ID, _student.RefClassID, StudSpec.ClassComment);
                    if (errMsg != "")
                    {
                        FISCA.Presentation.Controls.MsgBox.Show(errMsg);
                    }

                    //log
                    JHSchool.PermRecLogProcess prlp = new JHSchool.PermRecLogProcess();
                    if (_status == AddTransStudStatus.Added)
                    {
                        prlp.SaveLog("學生.轉入異動", "新增班級資料", "修改轉入與班級資料.");
                    }
                    else
                    {
                        prlp.SaveLog("學生.轉入異動", "修改班級資料", "修改轉入與班級資料.");
                    }

                    AddTransBackgroundManager.SetStudent(_student);

                    AddTransManagerForm atmf = new AddTransManagerForm();
                    this.Visible       = false;
                    atmf.StartPosition = FormStartPosition.CenterParent;
                    atmf.ShowDialog(FISCA.Presentation.MotherForm.Form);
                    this.Close();
                    JHSchool.Student.Instance.SyncAllBackground();
                    JHSchool.Data.JHStudent.RemoveAll();
                    JHSchool.Data.JHStudent.SelectAll();

                    //註冊一個事件引發模組
                    EventHandler eh = FISCA.InteractionService.PublishEvent("KH_StudentTransStudBase");
                    eh(this, EventArgs.Empty);
                }
            }
            catch (Exception ex)
            {
                FISCA.Presentation.Controls.MsgBox.Show(ex.Message);
                return;
            }
        }
Esempio n. 2
0
        public void setStudent_Status(JHSchool.Data.JHStudentRecord student, AddTransStudStatus status)
        {
            _student = student;
            _status  = status;
            Errors   = new EnhancedErrorProvider();
            //           Errors.Icon = Properties.Resources.warning;

            cboNewNationality.Items.AddRange(DALTransfer1.GetNationalities().ToArray());
            //cboClass.Items.Add(new KeyValuePair<string, string>("", "<空白>"));

            //

            //foreach (KeyValuePair<string, string> classItem in Utility.GetClassNameIDDict())
            //{
            //    cboClass.Items.Add(classItem);
            //}


            //cboClass.DisplayMember = "Value";
            //cboClass.ValueMember = "Key";

            //cboClass.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
            //cboClass.AutoCompleteSource = AutoCompleteSource.ListItems;

            cboNewGender.Items.AddRange(new string[] { "男", "女" });

            if (student != null)
            {
                //把資料填入各項控制項當中
                txtName.Text = txtNewName.Text = _student.Name;
                txtSSN.Text  = txtNewSSN.Text = _student.IDNumber;
                if (_student.Birthday.HasValue)
                {
                    dtBirthDate.Text = dtNewBirthday.Text = _student.Birthday.Value.ToString();
                }
                cboGender.Text      = cboNewGender.Text = _student.Gender;
                cboNationality.Text = cboNewNationality.Text = _student.Nationality;
                txtBirthPlace.Text  = txtNewBirthPlace.Text = _student.BirthPlace;
                _StudentPhone       = JHSchool.Data.JHPhone.SelectByStudentID(_student.ID);

                txtTel.Text = txtNewTel.Text = _StudentPhone.Contact;
                //txtEngName.Text = txtNewEngName.Text = _student.na
                if (_student.Class != null)
                {
                    lblClassName.Text = _student.Class.Name;
                }
                if (_student.SeatNo.HasValue)
                {
                    lblSeatNo.Text = cboSeatNo.Text = _student.SeatNo.Value.ToString();
                }
                lblStudentNum.Text = cbotStudentNumber.Text = _student.StudentNumber;

                // 如果轉出又入,使用原班
                lblNewClassName.Text = lblClassName.Text;
            }

            //依照status不同調整畫面大小
            if (status == AddTransStudStatus.Added)
            {
                gpOld.Visible = false;
                this.Size     = new Size(422, 438);
                //txtNewName.Text = "";
                txtNewSSN.Text = AddTransBackgroundManager.StudentIDNumber;
            }
            else
            {
                gpOld.Visible = true;
                this.Size     = new Size(823, 379);
            }
            // setClassNo();
            reLoadStudNumItems();
            this.MaximumSize = this.MinimumSize = this.Size;
            //AddTransBackgroundManager.AddTransStudBaseObj = this;
        }
Esempio n. 3
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtNewName.Text.Trim() == "")
                {
                    MsgBox.Show("姓名必填");
                    return;
                }

                if (string.IsNullOrEmpty(cbotStudentNumber.Text))
                {
                    Errors.SetError(cbotStudentNumber, "學號空白!");
                }

                string sid = string.Empty;
                if (_status == AddTransStudStatus.Added)
                {
                    JHSchool.Data.JHStudentRecord NewStudRec = new JHSchool.Data.JHStudentRecord();
                    NewStudRec.Name     = txtNewName.Text;
                    NewStudRec.Gender   = cboNewGender.Text;
                    NewStudRec.IDNumber = txtNewSSN.Text;
                    sid                   = JHSchool.Data.JHStudent.Insert(NewStudRec);
                    _StudentPhone         = JHSchool.Data.JHPhone.SelectByStudentID(sid);
                    _StudentPhone.Contact = txtNewTel.Text;
                }

                if (StudCheckTool.CheckStudIDNumberSame(txtNewSSN.Text, sid))
                {
                    FISCA.Presentation.Controls.MsgBox.Show("身分證號重複請檢查");
                    return;
                }

                Dictionary <string, int> chkSum = new Dictionary <string, int>();
                foreach (JHSchool.Data.JHStudentRecord studRec in JHSchool.Data.JHStudent.SelectAll())
                {
                    if (studRec.Status == K12.Data.StudentRecord.StudentStatus.一般)
                    {
                        if (!string.IsNullOrEmpty(studRec.StudentNumber))
                        {
                            if (chkSum.ContainsKey(studRec.StudentNumber))
                            {
                                chkSum[studRec.StudentNumber]++;
                            }
                            else
                            {
                                chkSum.Add(studRec.StudentNumber, 1);
                            }
                        }
                    }
                }

                if (chkSum.ContainsKey(cbotStudentNumber.Text))
                {
                    if (chkSum[cbotStudentNumber.Text] > 1)
                    {
                        FISCA.Presentation.Controls.MsgBox.Show("學號重複請檢查");
                        return;
                    }
                }

                if (!string.IsNullOrEmpty(sid))
                {
                    _student = JHSchool.Data.JHStudent.SelectByID(sid);
                }

                //_student.Name = txtNewName.Text;

                _student.IDNumber = txtNewSSN.Text;
                DateTime dt;
                if (DateTime.TryParse(dtNewBirthday.Text, out dt))
                {
                    _student.Birthday = dt;
                }

                //_student.Gender = cboNewGender.Text;
                _student.Nationality = cboNewNationality.Text;
                _student.BirthPlace  = txtNewBirthPlace.Text;
                //_StudentPhone.Contact = txtNewTel.Text;
                //_student.EnglishName = txtNewEngName.Text;

                foreach (JHSchool.Data.JHClassRecord cr in JHSchool.Data.JHClass.SelectAll())
                {
                    if (cboClass.Text == cr.Name)
                    {
                        _student.RefClassID = cr.ID;
                        break;
                    }
                }

                if (string.IsNullOrEmpty(cboSeatNo.Text))
                {
                    _student.SeatNo = null;
                }
                else
                {
                    int no;
                    int.TryParse(cboSeatNo.Text, out no);
                    _student.SeatNo = no;
                }
                _student.StudentNumber = cbotStudentNumber.Text;


                if (_status == AddTransStudStatus.Added)
                {
                }

                JHSchool.Data.JHStudent.Update(_student);
                JHSchool.Data.JHPhone.Update(_StudentPhone);


                //log
                JHSchool.PermRecLogProcess prlp = new JHSchool.PermRecLogProcess();
                if (_status == AddTransStudStatus.Added)
                {
                    prlp.SaveLog("學生.轉入異動", "新增班級資料", "修改轉入與班級資料.");
                }
                else
                {
                    prlp.SaveLog("學生.轉入異動", "修改班級資料", "修改轉入與班級資料.");
                }

                AddTransBackgroundManager.SetStudent(_student);

                AddTransManagerForm atmf = new AddTransManagerForm();
                this.Visible       = false;
                atmf.StartPosition = FormStartPosition.CenterParent;
                atmf.ShowDialog(FISCA.Presentation.MotherForm.Form);
                this.Close();
                JHSchool.Student.Instance.SyncAllBackground();
                JHSchool.Data.JHStudent.RemoveAll();
                JHSchool.Data.JHStudent.SelectAll();
            }
            catch (Exception ex)
            {
                FISCA.Presentation.Controls.MsgBox.Show(ex.Message);
                return;
            }
        }