249 lines
9.7 KiB
C#
249 lines
9.7 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Collections.Generic;
|
|
using Datalib.EntityClasses;
|
|
using Datalib.HelperClasses;
|
|
using SD.LLBLGen.Pro.ORMSupportClasses;
|
|
using System.Windows.Forms;
|
|
|
|
namespace PatientMan.Controls
|
|
{
|
|
public partial class usrExamInfo : PatientMan.usrControls.usrCommon
|
|
{
|
|
|
|
private TblProvinceEntity prov = new TblProvinceEntity();
|
|
private EntityCollection<TblDistrictEntity> districtCollection;
|
|
private EntityCollection<TblCommuneEntity> communeCollection;
|
|
public EntityCollection<TblExaminationInfoEntity> ExamInfos { get; set; }
|
|
public TblExaminationInfoEntity DeletedExam { get; set; }
|
|
|
|
public usrExamInfo()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public override void LoadData()
|
|
{
|
|
ExamInfos = PatientInfor.TblExaminationInfos;
|
|
|
|
ISortExpression sorter = new SortExpression(TblExaminationInfoFields.ExamDate | SortOperator.Ascending);
|
|
adapter.FetchEntityCollection(ExamInfos, PatientInfor.GetRelationInfoTblExaminationInfos(), 0, sorter);
|
|
|
|
prov.Provinceid = PatientInfor.ProvinceId;
|
|
adapter.FetchEntity(prov);
|
|
districtCollection = prov.TblDistricts;
|
|
adapter.FetchEntityCollection(districtCollection, prov.GetRelationInfoTblDistricts());
|
|
Districtid.Properties.DataSource = districtCollection;
|
|
}
|
|
|
|
public override void BindingData()
|
|
{
|
|
ExamDate.DataBindings.Clear();
|
|
ReExamDate.DataBindings.Clear();
|
|
Status.DataBindings.Clear();
|
|
LateAppointmentReason.DataBindings.Clear();
|
|
TreatmentFollow.DataBindings.Clear();
|
|
TBscreen.DataBindings.Clear();
|
|
tbScreenResult.DataBindings.Clear();
|
|
OutPatientTreatment.DataBindings.Clear();
|
|
ReTreatment.DataBindings.Clear();
|
|
txtHeight.DataBindings.Clear();
|
|
txtWeight.DataBindings.Clear();
|
|
ClinicStage.DataBindings.Clear();
|
|
Rash.DataBindings.Clear();
|
|
Diarrhea.DataBindings.Clear();
|
|
Burning.DataBindings.Clear();
|
|
Blackouts.DataBindings.Clear();
|
|
Jaundice.DataBindings.Clear();
|
|
Colic.DataBindings.Clear();
|
|
Anemia.DataBindings.Clear();
|
|
Depression.DataBindings.Clear();
|
|
Nausea.DataBindings.Clear();
|
|
Motion.DataBindings.Clear();
|
|
Headache.DataBindings.Clear();
|
|
FatDistributionChanges.DataBindings.Clear();
|
|
IsClinic.DataBindings.Clear();
|
|
Districtid.DataBindings.Clear();
|
|
CommuneId.DataBindings.Clear();
|
|
NoSelfExam.DataBindings.Clear();
|
|
Poisoning.DataBindings.Clear();
|
|
ProgressTB.DataBindings.Clear();
|
|
|
|
|
|
|
|
ExamDate.DataBindings.Add("EditValue", ExamInfos, "ExamDate", true);
|
|
ReExamDate.DataBindings.Add("EditValue", ExamInfos, "ReExamDate", true);
|
|
Status.DataBindings.Add("EditValue", ExamInfos, "Status", true);
|
|
LateAppointmentReason.DataBindings.Add("Text", ExamInfos, "LateAppointmentReason", true);
|
|
TreatmentFollow.DataBindings.Add("EditValue", ExamInfos, "TreatmentFollow", true);
|
|
TBscreen.DataBindings.Add("EditValue", ExamInfos, "TBScreen", true);
|
|
|
|
OutPatientTreatment.DataBindings.Add("EditValue", ExamInfos, "OutPatientTreatment", true);
|
|
Districtid.DataBindings.Add("EditValue", ExamInfos, "DistrictId", true);
|
|
CommuneId.DataBindings.Add("EditValue", ExamInfos, "CommuneId", true);
|
|
txtHeight.DataBindings.Add("Text", ExamInfos, "Height", true);
|
|
txtWeight.DataBindings.Add("Text", ExamInfos, "Weight", true);
|
|
|
|
ClinicStage.DataBindings.Add("EditValue", ExamInfos, "ClinicStage", true);
|
|
Motion.DataBindings.Add("EditValue", ExamInfos, "Motion", true);
|
|
|
|
Rash.DataBindings.Add("EditValue", ExamInfos, "Rash", true);
|
|
Diarrhea.DataBindings.Add("EditValue", ExamInfos, "Diarrhea", true);
|
|
Burning.DataBindings.Add("EditValue", ExamInfos, "Burning", true);
|
|
Blackouts.DataBindings.Add("EditValue", ExamInfos, "Blackouts", true);
|
|
Jaundice.DataBindings.Add("EditValue", ExamInfos, "Jaundice", true);
|
|
Colic.DataBindings.Add("EditValue", ExamInfos, "Colic", true);
|
|
Anemia.DataBindings.Add("EditValue", ExamInfos, "Anemia", true);
|
|
Depression.DataBindings.Add("EditValue", ExamInfos, "Depression", true);
|
|
Nausea.DataBindings.Add("EditValue", ExamInfos, "Nausea", true);
|
|
Headache.DataBindings.Add("EditValue", ExamInfos, "Headache", true);
|
|
FatDistributionChanges.DataBindings.Add("EditValue", ExamInfos, "FatDistributionChanges", true);
|
|
tbScreenResult.DataBindings.Add("EditValue", ExamInfos, "TbScreenResult", true);
|
|
ReTreatment.DataBindings.Add("EditValue", ExamInfos, "ReTreatment", true);
|
|
Poisoning.DataBindings.Add("EditValue", ExamInfos, "Poisoning", true);
|
|
ProgressTB.DataBindings.Add("EditValue", ExamInfos, "ProgressTB", true);
|
|
IsClinic.DataBindings.Add("EditValue", ExamInfos, "IsClinic", true);
|
|
NoSelfExam.DataBindings.Add("EditValue", ExamInfos, "NoSelfExam", true);
|
|
}
|
|
|
|
public override void SaveRecord()
|
|
{
|
|
if (dxValidationProvider.Validate())
|
|
{
|
|
BindingContext[ExamInfos].EndCurrentEdit();
|
|
var position = this.BindingContext[ExamInfos].Position;
|
|
if (position == 0)
|
|
{
|
|
ExamInfos[position].DayDiff = null;
|
|
}
|
|
if (position > 0)
|
|
{
|
|
ExamInfos[position].DayDiff =
|
|
(short)
|
|
(System.Convert.ToDateTime(ExamInfos[position].ExamDate) -
|
|
System.Convert.ToDateTime(ExamInfos[position - 1].ReExamDate)).TotalDays;
|
|
if (ExamInfos[position].DayDiff == 0)
|
|
{
|
|
ExamInfos[position].Status = 1;
|
|
}
|
|
else
|
|
{
|
|
if (ExamInfos[position].DayDiff < 0)
|
|
{
|
|
ExamInfos[position].Status = 2;
|
|
}
|
|
|
|
else
|
|
{
|
|
ExamInfos[position].Status = 3;
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
if (ExamInfos[position].IsNew)
|
|
{
|
|
common.visitdate = (DateTime)ExamDate.EditValue;
|
|
}
|
|
|
|
ExamInfos[position].LateTimes = ExamInfos.Where(g => g.DayDiff > 0).Count().ToString();
|
|
adapter.SaveEntityCollection(ExamInfos, true, true);
|
|
|
|
base.SaveRecord();
|
|
}
|
|
}
|
|
|
|
public override void Cancel()
|
|
{
|
|
BindingContext[ExamInfos].CancelCurrentEdit();
|
|
base.Cancel();
|
|
}
|
|
|
|
private void lblStatus_Click(object sender, EventArgs e)
|
|
{
|
|
Status.EditValue = null;
|
|
}
|
|
|
|
private void labelObey_Click(object sender, EventArgs e)
|
|
{
|
|
TreatmentFollow.EditValue = null;
|
|
}
|
|
|
|
public override void DeleteRecord()
|
|
{
|
|
DeletedExam = (TblExaminationInfoEntity) ExamInfos[BindingContext[ExamInfos].Position];
|
|
ExamInfos.Remove(DeletedExam);
|
|
adapter.DeleteEntity(DeletedExam);
|
|
base.DeleteRecord();
|
|
}
|
|
|
|
private void ExamDate_Validated(object sender, EventArgs e)
|
|
{
|
|
common.visitdate = (DateTime) ExamDate.EditValue;
|
|
}
|
|
|
|
private void IsClinic_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
this.ClinicBox.Enabled = (this.IsClinic.EditValue.ToString() == "1");
|
|
}
|
|
|
|
public void ControlArange()
|
|
{
|
|
this.ClinicBox.Enabled = (this.IsClinic.EditValue.ToString() == "1");
|
|
}
|
|
|
|
private void TBscreen_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
this.tbScreenResult.Visible = (this.TBscreen.EditValue.ToString() == "1");
|
|
}
|
|
|
|
private void OutPatientTreatment_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
if (OutPatientTreatment.Checked)
|
|
{
|
|
this.Districtid.EditValue = PatientInfor.DistrictId;
|
|
this.CommuneId.EditValue = PatientInfor.CommuneId;
|
|
}
|
|
else
|
|
{
|
|
this.Districtid.EditValue = null;
|
|
|
|
this.CommuneId.EditValue = null;
|
|
}
|
|
|
|
}
|
|
|
|
private void Districtid_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
if (Districtid.EditValue == null) return;
|
|
try
|
|
{
|
|
var DistEntity = new TblDistrictEntity(Districtid.EditValue.ToString());
|
|
communeCollection = DistEntity.TblCommunes;
|
|
adapter.FetchEntityCollection(communeCollection, DistEntity.GetRelationInfoTblCommunes());
|
|
CommuneId.Properties.DataSource = communeCollection;
|
|
}
|
|
catch (InvalidCastException err)
|
|
{
|
|
MessageBox.Show(err.Message);
|
|
}
|
|
}
|
|
|
|
private void NoSelfExam_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
this.TBscreen.Checked = !NoSelfExam.Checked;
|
|
this.TBscreen.Visible = !NoSelfExam.Checked;
|
|
this.IsClinic.Checked = !NoSelfExam.Checked;
|
|
this.IsClinic.Enabled = !NoSelfExam.Checked;
|
|
}
|
|
|
|
private void tbScreenResult_KeyPress(object sender, KeyPressEventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|