Esempio n. 1
0
        private void JHAssessmentSetup_AfterInsert(object sender, K12.Data.DataChangedEventArgs e)
        {
            if (e.PrimaryKeys.Count > 0)
            {
                if (cboExistTemplates.Enabled == true && cboExistTemplates.SelectedItem is JHAssessmentSetupRecord)
                {
                    JHAssessmentSetupRecord source = cboExistTemplates.SelectedItem as JHAssessmentSetupRecord;
                    bool executeRequired           = false;

                    List <JHAEIncludeRecord> aeincludes = new List <JHAEIncludeRecord>();
                    foreach (JHAEIncludeRecord each in JHAEInclude.SelectByAssessmentSetupID(source.ID))
                    {
                        JHAEIncludeRecord aeNew = new JHAEIncludeRecord();
                        aeNew.RefAssessmentSetupID = e.PrimaryKeys[0];
                        aeNew.RefExamID            = each.RefExamID;
                        aeNew.UseScore             = each.UseScore;
                        aeNew.UseText   = each.UseText;
                        aeNew.UseEffort = each.UseEffort;
                        aeNew.Weight    = each.Weight;
                        aeNew.StartTime = each.StartTime;
                        aeNew.EndTime   = each.EndTime;

                        aeincludes.Add(aeNew);
                        executeRequired = true;
                    }
                    if (executeRequired)
                    {
                        JHAEInclude.Insert(aeincludes);
                    }
                }
            }
            JHAssessmentSetup.AfterInsert -= new EventHandler <K12.Data.DataChangedEventArgs>(JHAssessmentSetup_AfterInsert);
        }
        private bool SaveTemplate()
        {
            if (HasErrors())
            {
                MsgBox.Show("請修正資料後再儲存。", Application.ProductName);
                return(false);
            }

            try
            {
                AssessmentSetupRecord record = CurrentItem.Tag as AssessmentSetupRecord;

                List <JHAEIncludeRecord> list = JHAEInclude.SelectByAssessmentSetupID(record.ID);
                int w = JHAEInclude.Delete(list);

                List <AEIncludeRecordEditor> editors = new List <AEIncludeRecordEditor>();
                //foreach (var item in record.GetAEIncludes())
                //{
                //    AEIncludeRecordEditor editor = item.GetEditor();
                //    editor.Remove = true;
                //    editors.Add(editor);
                //}
                //if (editors.Count > 0)
                //    editors.SaveAll();

                //editors = new List<AEIncludeRecordEditor>();
                list = new List <JHAEIncludeRecord>();
                foreach (DataGridViewRow each in dataview.Rows)
                {
                    if (each.IsNewRow)
                    {
                        continue;
                    }

                    HC.JHAEIncludeRecord hc = new HC.JHAEIncludeRecord(new JHAEIncludeRecord());
                    hc.RefAssessmentSetupID = record.ID;
                    hc.RefExamID            = "" + each.Cells[ExamID.Index].Value;
                    hc.UseScore             = GetYesNoString(each.Cells[UseScore.Index].FormattedValue, false);
                    hc.UseText            = GetYesNoString(each.Cells[UseText.Index].FormattedValue, false);
                    hc.UseAssignmentScore = GetYesNoString(each.Cells[UseAssignmentScore.Index].FormattedValue, false);
                    int i;
                    hc.Weight    = int.TryParse("" + each.Cells[Weight.Index].Value, out i) ? i : 0;
                    hc.StartTime = DateToSaveFormat("" + each.Cells[StartTime.Index].Value);
                    hc.EndTime   = DateToSaveFormat("" + each.Cells[EndTime.Index].Value);

                    list.Add(hc.AsJHAEIncludeRecord());
                }
                if (list.Count > 0)
                {
                    JHAEInclude.Insert(list);
                }

                ResetDirty();

                return(true);
            }
            catch (Exception ex)
            {
                //CurrentUser.ReportError(ex);
                MsgBox.Show(ex.Message);
                return(false);
            }
        }
        private bool SaveTemplate()
        {
            if (HasErrors())
            {
                MsgBox.Show("請修正資料後再儲存。", Application.ProductName);
                return(false);
            }

            try
            {
                Listener.SuspendListen();

                JHAssessmentSetupRecord record = CurrentItem.Tag as JHAssessmentSetupRecord;

                //刪除原先的 AEInclude
                if (OriginAEs.Count > 0)
                {
                    JHAEInclude.Delete(OriginAEs);
                    OriginAEs.Clear();
                }

                //List<JHAEIncludeRecord> deleteList = JHAEInclude.SelectByAssessmentSetupID(record.ID);
                //if (deleteList.Count > 0)
                //    JHAEInclude.Delete(deleteList);

                //將畫面上新的 AEInclude 寫入
                List <JHAEIncludeRecord> insertList = new List <JHAEIncludeRecord>();
                foreach (DataGridViewRow each in dataview.Rows)
                {
                    if (each.IsNewRow)
                    {
                        continue;
                    }

                    JHAEIncludeRecord aeNew = new JHAEIncludeRecord();
                    aeNew.RefAssessmentSetupID = record.ID;
                    aeNew.RefExamID            = "" + each.Cells[ExamID.Index].Value;
                    aeNew.UseScore             = GetYesNoString(each.Cells[UseScore.Index].FormattedValue, false);
                    aeNew.UseText   = GetYesNoString(each.Cells[UseText.Index].FormattedValue, false);
                    aeNew.UseEffort = GetYesNoString(each.Cells[UseEffort.Index].FormattedValue, false);
                    int i;
                    aeNew.Weight    = int.TryParse("" + each.Cells[Weight.Index].Value, out i) ? i : 0;
                    aeNew.StartTime = DateToSaveFormat("" + each.Cells[StartTime.Index].Value);
                    aeNew.EndTime   = DateToSaveFormat("" + each.Cells[EndTime.Index].Value);

                    insertList.Add(aeNew);
                }
                if (insertList.Count > 0)
                {
                    JHAEInclude.Insert(insertList);
                }

                //繳交時間寫入
                record.OrdinarilyStartTime = GetDateTimeNullable(txtOStartTime.Text, PaddingMethod.First);
                record.OrdinarilyEndTime   = GetDateTimeNullable(txtOEndTime.Text, PaddingMethod.Last);
                record.TextStartTime       = GetDateTimeNullable(txtTStartTime.Text, PaddingMethod.First);
                record.TextEndTime         = GetDateTimeNullable(txtTEndTime.Text, PaddingMethod.Last);
                JHAssessmentSetup.Update(record);

                lblIsDirty.Visible = false;
                Listener.Reset();
                Listener.ResumeListen();
                return(true);
            }
            catch (Exception ex)
            {
                MsgBox.Show(ex.Message);
                return(false);
            }
        }