187 lines
7.0 KiB
C#
187 lines
7.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using Datalib.DatabaseSpecific;
|
|
using Datalib.EntityClasses;
|
|
using Datalib.HelperClasses;
|
|
using Datalib.RelationClasses;
|
|
using Datalib.FactoryClasses;
|
|
using SD.LLBLGen.Pro.ORMSupportClasses;
|
|
using Datalib.Linq;
|
|
using System.Linq;
|
|
namespace Omega.Forms
|
|
{
|
|
public partial class frmQuizTemplate : Omega.BasicForms.frmCommon
|
|
|
|
{ public int Context {get;set;}
|
|
public EntityCollection<TblQuizTemplateEntity> QuizTempates { get; set; }
|
|
public TblQuizTemplateEntity CurQuizTempate { get; set; }
|
|
public CurrencyManager QuizTemplateMan;
|
|
public CurrencyManager QuizTemplateManDetailMan;
|
|
public EntityCollection<TblQuizTemplateDetailEntity> QuizTemplateDetail { get; set; }
|
|
public frmQuizTemplate()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
public override void LoadData()
|
|
{
|
|
QuizTempates = new EntityCollection<TblQuizTemplateEntity>();
|
|
adapter.FetchEntityCollection(QuizTempates, null);
|
|
QuizTemplateMan = (CurrencyManager)this.BindingContext[QuizTempates];
|
|
QuizTemplateMan.PositionChanged+=QuizTemplateMan_PositionChanged;
|
|
|
|
grdQuizTemplate.DataSource = QuizTempates;
|
|
base.LoadData();
|
|
|
|
//Gen Subject Lists
|
|
LinqMetaData meta = new LinqMetaData(adapter);
|
|
repSubjects.DataSource = meta.TblSubject;
|
|
repoTrainingType.DataSource = meta.TblTrainingType;
|
|
if (QuizTemplateMan.Count > 0)
|
|
{
|
|
CurQuizTempate = QuizTempates[0];
|
|
QuizTemplateDetail = CurQuizTempate.TblQuizTemplateDetails;
|
|
adapter.FetchEntityCollection(QuizTemplateDetail, QuizTempates[0].GetRelationInfoTblQuizTemplateDetails());
|
|
this.grdQuizTemplateDetail.DataSource = QuizTempates[QuizTemplateMan.Position].TblQuizTemplateDetails;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
private void QuizTemplateMan_PositionChanged(object sender, EventArgs e)
|
|
{
|
|
|
|
|
|
if (QuizTempates[QuizTemplateMan.Position].IsNew)
|
|
{
|
|
QuizTempates[QuizTemplateMan.Position].QuizTemplateId = Guid.NewGuid().ToString("N");
|
|
}
|
|
|
|
CurQuizTempate = QuizTempates[QuizTemplateMan.Position];
|
|
|
|
QuizTemplateDetail = CurQuizTempate.TblQuizTemplateDetails;
|
|
if (!QuizTemplateDetail.ContainsDirtyContents)
|
|
{
|
|
adapter.FetchEntityCollection(QuizTemplateDetail, QuizTempates[QuizTemplateMan.Position].GetRelationInfoTblQuizTemplateDetails());
|
|
|
|
}
|
|
this.grdQuizTemplateDetail.DataSource = QuizTempates[QuizTemplateMan.Position].TblQuizTemplateDetails;
|
|
QuizTemplateManDetailMan = (CurrencyManager)this.BindingContext[QuizTemplateDetail];
|
|
QuizTemplateManDetailMan.PositionChanged+=QuizTemplateManDetailMan_PositionChanged;
|
|
grdQuizTemplateDetail.DataSource = QuizTemplateDetail;
|
|
}
|
|
|
|
private void QuizTemplateManDetailMan_PositionChanged(object sender, EventArgs e)
|
|
{
|
|
|
|
if (QuizTemplateDetail[QuizTemplateManDetailMan.Position].IsNew)
|
|
{
|
|
QuizTemplateDetail[QuizTemplateManDetailMan.Position].UniqueId = Guid.NewGuid().ToString("N");
|
|
}
|
|
}
|
|
|
|
|
|
public override void SaveRecord()
|
|
{
|
|
adapter.SaveEntityCollection(QuizTempates, true, true);
|
|
base.SaveRecord();
|
|
}
|
|
|
|
private void Save_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|
{
|
|
SaveRecord();
|
|
}
|
|
|
|
private void Close_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void btnViewHeader_ButtonPressed(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
|
|
{
|
|
frmViewOpenXMLContent frm = new frmViewOpenXMLContent();
|
|
frm.View = QuizTemplateView;
|
|
frm.Column = colHeaderDes;
|
|
frm.LoadData();
|
|
frm.Show();
|
|
}
|
|
|
|
private void Delete_Click(object sender, EventArgs e)
|
|
{
|
|
if (MessageBox.Show("Bạn muốn xóa bản ghi này?", "Xóa bản ghi", MessageBoxButtons.OKCancel) == DialogResult.Cancel) return;
|
|
switch(Context)
|
|
{
|
|
|
|
case 1:
|
|
TblQuizTemplateEntity deletedTempate = QuizTempates[this.BindingContext[QuizTempates].Position];
|
|
QuizTempates.Remove(deletedTempate);
|
|
adapter.DeleteEntity(deletedTempate);
|
|
break;
|
|
case 2:
|
|
TblQuizTemplateDetailEntity deletedDetail = QuizTemplateDetail[this.BindingContext[QuizTemplateDetail].Position];
|
|
QuizTemplateDetail.Remove(deletedDetail);
|
|
adapter.DeleteEntity(deletedDetail);
|
|
break;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
private void grdQuizTemplate_Enter(object sender, EventArgs e)
|
|
{
|
|
Context =1;
|
|
}
|
|
|
|
private void grdQuizTemplateDetail_Enter(object sender, EventArgs e)
|
|
{
|
|
Context =2;
|
|
}
|
|
|
|
private void barDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|
{
|
|
if (MessageBox.Show("Bạn muốn xóa bản ghi này?", "Xóa bản ghi", MessageBoxButtons.OKCancel) == DialogResult.Cancel) return;
|
|
switch (Context)
|
|
{
|
|
|
|
case 1:
|
|
TblQuizTemplateEntity deletedTempate = QuizTempates[this.BindingContext[QuizTempates].Position];
|
|
QuizTempates.Remove(deletedTempate);
|
|
adapter.DeleteEntity(deletedTempate);
|
|
break;
|
|
|
|
case 2:
|
|
TblQuizTemplateDetailEntity deletedDetail = QuizTemplateDetail[this.BindingContext[QuizTemplateDetail].Position];
|
|
QuizTemplateDetail.Remove(deletedDetail);
|
|
adapter.DeleteEntity(deletedDetail);
|
|
break;
|
|
}
|
|
}
|
|
|
|
private void btnViewHeader_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
|
|
{
|
|
frmViewOpenXMLContent frm = new frmViewOpenXMLContent();
|
|
frm.View = QuizTemplateView;
|
|
frm.Column = colHeaderDes;
|
|
frm.LoadData();
|
|
frm.Show();
|
|
}
|
|
|
|
private void btnViewFooter_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
|
|
{
|
|
frmViewOpenXMLContent frm = new frmViewOpenXMLContent();
|
|
frm.View = QuizTemplateView;
|
|
frm.Column = colFooterDes;
|
|
frm.LoadData();
|
|
frm.Show();
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|