コード例 #1
0
        // 修改異動紀錄
        private void EditStudentUpdateRecord()
        {
            JHSchool.Data.JHUpdateRecordRecord objUpdate = lstRecord.SelectedItems[0].Tag as JHSchool.Data.JHUpdateRecordRecord;
            DAL.StudUpdateRecordEntity         sure      = DAL.DALTransfer2.SetStudUpdateRecordEntityTrans(objUpdate);
            UpdateRecordItemForm form = new UpdateRecordItemForm(UpdateRecordItemForm.actMode.修改, sure, PrimaryKey);

            form.ShowDialog();
        }
コード例 #2
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            DAL.StudUpdateRecordEntity sure = DAL.DALTransfer2.AddStudUpdateRecordEntity(PrimaryKey, JHPermrec.UpdateRecord.DAL.DALTransfer2.UpdateType.Empty, DateTime.Now.ToShortDateString());
            if (sure == null)
            {
                return;
            }
            UpdateRecordItemForm form = new UpdateRecordItemForm(UpdateRecordItemForm.actMode.新增, sure, PrimaryKey);

            form.ShowDialog();
        }
コード例 #3
0
        private void btnUpload_Click(object sender, EventArgs e)
        {
            IUpdateRecordInfo IU;

            if (UpdateRecordEditorPanle.Controls.Count > 0)
            {
                IU = UpdateRecordEditorPanle.Controls[0] as IUpdateRecordInfo;
                _StudUpdateRecordEntity = IU.GetStudUpdateRecordData();
            }

            string _base64Data = "";
            string _FileName   = "";

            Guid g = Guid.NewGuid();

            string DSNS = FISCA.Authentication.DSAServices.AccessPoint;

            OpenFileDialog ofd = new OpenFileDialog();

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                // 取得檔案
                _FileName = g.ToString() + ofd.SafeFileName;
                _StudUpdateRecordEntity.SetComment("https://storage.googleapis.com/1campus-photo/j.kh.edu.tw/" + DSNS + "/upload_" + _FileName);
                //txtEDoc.Text = "https://storage.googleapis.com/1campus-photo/j.kh.edu.tw/" + DSNS + "/upload_" + _FileName;
                // 轉 Base64
                try
                {
                    MemoryStream ms = new MemoryStream();
                    ofd.OpenFile().CopyTo(ms);
                    _base64Data = Convert.ToBase64String(ms.ToArray());
                    if (_FileName != "" && _base64Data != "")
                    {
                        UpdateRecordUtil.UploadFile(_StudUpdateRecordEntity.StudentID, _base64Data, _FileName);
                    }

                    //  上傳後儲存
                    SaveData();
                    MsgBox.Show("上傳檔案完成");
                    this.Close();
                }
                catch (Exception ex)
                {
                    FISCA.Presentation.Controls.MsgBox.Show("讀取上傳檔案失敗," + ex.Message);
                }
            }
        }
コード例 #4
0
        public UpdateRecordItemForm(actMode mode, DAL.StudUpdateRecordEntity StudUdRecEnty, string _RunningID)
        {
            InitializeComponent();

            // 判斷上傳檔案功能只有高雄使用
            if (JHSchool.Permrec.Program.ModuleType == JHSchool.Permrec.Program.ModuleFlag.KaoHsiung)
            {
                btnUpload.Visible = true;
            }
            else
            {
                btnUpload.Visible = false;
            }



            if (Framework.User.Acl[GetType()].Editable)
            {
                btnConfirm.Enabled = true;
            }
            else
            {
                btnConfirm.Enabled = false;
            }

            _StudUpdateRecordEntity = StudUdRecEnty;

            prlp = new JHSchool.PermRecLogProcess();

            RunningID = _RunningID;
            // 先將畫面學年度、學期、年級設空
            intSchoolYear.IsEmpty = true;
            intSemester.IsEmpty   = true;
            intGradeYear.IsEmpty  = true;

            if (mode == actMode.新增)
            {
                cbxSel.Enabled = true;

                foreach (DAL.DALTransfer2.UpdateType ut in DAL.DALTransfer2.CheckCanInputUpdateType)
                {
                    cbxSel.Items.Add(ut.ToString());
                }

                cbxSel.SelectedIndex = 0;
                SetDefaultSchoolYearSemester();

                // 加入 log
                prlp.SetAction("新增");
            }

            if (mode == actMode.修改)
            {
                cbxSel.Enabled = false;
                UpdateRecordEditorPanle.Controls.Clear();
                UpdateRecordEditorPanle.Controls.Add(CreateByUpdateCode());

                // 加入 log
                prlp.SetAction("修改");
            }

            // 加入 log
            prlp.SetBeforeSaveText("學年度", intSchoolYear.Text);
            prlp.SetBeforeSaveText("學期", intSemester.Text);
        }
コード例 #5
0
        private void btnConfirm_Click(object sender, EventArgs e)
        {
            IUpdateRecordInfo IU;

            if (UpdateRecordEditorPanle.Controls.Count > 0)
            {
                IU = UpdateRecordEditorPanle.Controls[0] as IUpdateRecordInfo;
                _StudUpdateRecordEntity = IU.GetStudUpdateRecordData();
            }


            // 當新增時才處理
            if (cbxSel.Enabled)
            {
                if (cbxSel.Text == "新生")
                {
                    bool checkSameUpdateCode1 = DAL.DALTransfer2.checkStudentSameUpdateCode(RunningID, _StudUpdateRecordEntity, "1");

                    if (checkSameUpdateCode1)
                    {
                        MsgBox.Show("已有1筆新生異動,請刪除後再新增");
                        return;
                    }
                }

                if (cbxSel.Text == "畢業")
                {
                    bool checkSameUpdateCode2 = DAL.DALTransfer2.checkStudentSameUpdateCode(RunningID, _StudUpdateRecordEntity, "2");

                    if (checkSameUpdateCode2)
                    {
                        MsgBox.Show("已有1筆畢業異動,請刪除後再新增");
                        return;
                    }
                }

                // 檢查同一天是否有相同異動
                bool checkSameUpdateDateAndCode = false;
                checkSameUpdateDateAndCode = DAL.DALTransfer2.checkStudentSameUpdateCode(RunningID, _StudUpdateRecordEntity);

                if (checkSameUpdateDateAndCode)
                {
                    if (MsgBox.Show("此異動日期已有相同異動,請問是否新增?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2) == DialogResult.No)
                    {
                        return;
                    }
                }
            }


            // 儲存學年度學期 年級
            _StudUpdateRecordEntity.SchoolYear = intSchoolYear.Value;
            _StudUpdateRecordEntity.Semester   = intSemester.Value;
            _StudUpdateRecordEntity.SetGradeYear(intGradeYear.Text);

            // 儲存異動資料
            DAL.DALTransfer2.SetStudUpdateRecordEntity(_StudUpdateRecordEntity);


            // Log
            string strItemName = "學生姓名:" + JHSchool.Data.JHStudent.SelectByID(RunningID).Name + "," + prlp.GetAction() + ":";

            if (_StudUpdateRecordEntity.checkSameUpdateCode("1"))
            {
                strItemName += "新生異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("2"))
            {
                strItemName += "畢業異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("3"))
            {
                strItemName += "轉入異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("4"))
            {
                strItemName += "轉出異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("5"))
            {
                strItemName += "休學異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("6"))
            {
                strItemName += "復學異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("7"))
            {
                strItemName += "中輟異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("8"))
            {
                strItemName += "續讀異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("9"))
            {
                strItemName += "更正學籍異動";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("10"))
            {
                strItemName += "延長修業年限";
            }
            if (_StudUpdateRecordEntity.checkSameUpdateCode("11"))
            {
                strItemName += "死亡";
            }

            prlp.SetActionBy("學生", strItemName);
            prlp.SaveLog("", ":", "student", RunningID);

            JHSchool.Data.JHStudentRecord studRec = JHSchool.Data.JHStudent.SelectByID(RunningID);
            bool checkUpdateStudStatus            = false;

            List <string> tmpList0 = new List <string>();
            List <string> tmpList1 = new List <string>();
            List <string> tmpList2 = new List <string>();
            List <string> tmpList3 = new List <string>();

            foreach (JHSchool.Data.JHStudentRecord stud in JHSchool.Data.JHStudent.SelectAll())
            {
                if (stud.Status == K12.Data.StudentRecord.StudentStatus.一般)
                {
                    tmpList0.Add(stud.IDNumber);
                }

                if (stud.Status == K12.Data.StudentRecord.StudentStatus.畢業或離校)
                {
                    tmpList1.Add(stud.IDNumber);
                }
                if (stud.Status == K12.Data.StudentRecord.StudentStatus.休學)
                {
                    tmpList2.Add(stud.IDNumber);
                }
                if (stud.Status == K12.Data.StudentRecord.StudentStatus.輟學)
                {
                    tmpList3.Add(stud.IDNumber);
                }
            }

            // 轉出
            if (_StudUpdateRecordEntity.checkSameUpdateCode("4") || _StudUpdateRecordEntity.checkSameUpdateCode("11"))
            {
                if (MessageBox.Show("請問是否更改學生狀態成 離校?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
                {
                    if (tmpList1.Contains(studRec.IDNumber))
                    {
                        MsgBox.Show("學生狀態 離校 有重複身分證號,請檢查後變更.");
                        return;
                    }
                    studRec.Status        = JHSchool.Data.JHStudentRecord.StudentStatus.畢業或離校;
                    checkUpdateStudStatus = true;
                    strItemName          += ",更改學生狀態成 離校";
                }
            }

            // 休學
            if (_StudUpdateRecordEntity.checkSameUpdateCode("5"))
            {
                if (MessageBox.Show("請問是否更改學生狀態成 休學?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
                {
                    if (tmpList2.Contains(studRec.IDNumber))
                    {
                        MsgBox.Show("學生狀態 休學 有重複身分證號,請檢查後變更.");
                        return;
                    }

                    studRec.Status        = JHSchool.Data.JHStudentRecord.StudentStatus.休學;
                    checkUpdateStudStatus = true;
                    strItemName          += "更改學生狀態成 休學";
                }
            }

            // 中輟

            if (_StudUpdateRecordEntity.checkSameUpdateCode("7"))
            {
                if (MessageBox.Show("請問是否更改學生狀態成 輟學?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
                {
                    if (tmpList3.Contains(studRec.IDNumber))
                    {
                        MsgBox.Show("學生狀態 輟學 有重複身分證號,請檢查後變更.");
                        return;
                    }

                    studRec.Status        = JHSchool.Data.JHStudentRecord.StudentStatus.輟學;
                    checkUpdateStudStatus = true;
                    strItemName          += "更改學生狀態成 輟學";
                }
            }


            // 處理復學轉成一般
            if (_StudUpdateRecordEntity.checkSameUpdateCode("6"))
            {
                if (MessageBox.Show("請問是否更改學生狀態成 一般?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
                {
                    if (tmpList0.Contains(studRec.IDNumber))
                    {
                        MsgBox.Show("學生狀態 一般 有重複身分證號,請檢查後變更.");
                        return;
                    }

                    studRec.Status        = JHSchool.Data.JHStudentRecord.StudentStatus.一般;
                    checkUpdateStudStatus = true;
                    strItemName          += "更改學生狀態成 一般";
                }
            }



            //  prlp.SaveLog("學生.異動資料", prlp.GetAction(),"學生",RunningID , strItemName);

            if (checkUpdateStudStatus)
            {
                JHSchool.Data.JHStudent.Update(studRec);
                JHSchool.Student.Instance.SyncDataBackground(RunningID);
            }
            JHSchool.Permrec.UpdateRecord.Instance.SyncAllBackground();
            JHSchool.Student.Instance.SyncDataBackground(RunningID);

            prlp = null;
        }