using framework_business;
using framework_library;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Reflection;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
public partial class controls_module_medicalPracticeExtras : UserControl, ISurfaceControlBase
{
#region methods
///
/// Reload Control
///
///
public void ReloadControl(oSurfaceFieldData controlFieldData, bool alternateView = false, bool readOnly = false)
{
try
{
SurfaceItemId = controlFieldData.surfaceItemId;
SetupControl();
}
catch (Exception ex)
{
exception.HandleException("medicalPracticeExtras:", MethodBase.GetCurrentMethod().Name, ex, Session["user"]);
Response.Redirect("/error", false);
}
}
///
/// Save Control Data
///
///
public void SaveControlData(ref oSurfaceFieldData _surfaceFieldData)
{
try
{
}
catch (Exception ex)
{
exception.HandleException("medicalPracticeExtras:", MethodBase.GetCurrentMethod().Name, ex, Session["user"]);
Response.Redirect("/error", false);
}
}
///
/// Set Control
///
///
private void SetupControl()
{
try
{
BindPatientPracticeExtras();
}
catch (Exception ex)
{
exception.HandleException("medicalPracticeExtras:", MethodBase.GetCurrentMethod().Name, ex, Session["user"]);
Response.Redirect("/error", false);
}
}
///
/// Bind Patient PracticeExtras
///
private void BindPatientPracticeExtras()
{
try
{
List list = new List();
oDynamicParam par1 = new oDynamicParam();
par1.paramDisplayName = "surfaceItemId";
par1.paramObject = SurfaceItemId;
list.Add(par1);
DataTable dtPracticeExtras = xData.GetTypedTableByProc("recId", typeof(oSurfaceFieldData), "sp_GetPracticeExtrasForSurfaceItemId", list);
dtPracticeExtras.Columns.Add(new DataColumn("isChecked", typeof(Boolean)));
foreach (DataRow row in dtPracticeExtras.Rows)
{
row["isChecked"] = row["patientActive"].ToString() == "True" ? true : false;
}
myListView.DataSource = dtPracticeExtras;
myListView.DataBind();
}
catch (Exception ex)
{
exception.HandleException("medicalPracticeExtras:", MethodBase.GetCurrentMethod().Name, ex, Session["user"]);
Response.Redirect("/error", false);
}
}
#endregion
#region events
///
/// Page Load
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
}
#endregion
#region properties
///
/// MPH getter and setter
///
public int SurfaceItemId
{
get
{
if (ViewState["surfaceItemId"] == null)
return 0;
else
return (int)ViewState["surfaceItemId"];
}
set
{
ViewState["surfaceItemId"] = value;
}
}
#endregion
protected void chkActive_CheckedChanged(object sender, EventArgs e)
{
if (sender is CheckBox)
{
CheckBox chkActive = (CheckBox)sender;
string sPracticeExtra = chkActive.ValidationGroup;
oMedicalPatientPracticeExtra mppeDetail = new oMedicalPatientPracticeExtra();
mppeDetail.surfaceItemId = SurfaceItemId;
foreach (oMedicalPracticeExtra mpe in xData.GetTypedByCriteriaSpecific("recId", typeof(oMedicalPracticeExtra), "practiceExtra", sPracticeExtra))
{
mppeDetail.practiceExtraId = mpe.recId;
foreach (oMedicalPatientPracticeExtra mppe in xData.GetTypedByCriteriaSpecific("recId", typeof(oMedicalPatientPracticeExtra), "practiceExtraId,surfaceItemId", mppeDetail.practiceExtraId.ToString() + "," + mppeDetail.surfaceItemId.ToString()))
{
mppeDetail = mppe;
}
}
mppeDetail.isActive = chkActive.Checked;
if (mppeDetail.recId > 0)
xData.UpdateTyped("recId", mppeDetail.recId.ToString(), typeof(oMedicalPatientPracticeExtra), mppeDetail);
else
xData.SaveTyped("recId", typeof(oMedicalPatientPracticeExtra), mppeDetail);
BindPatientPracticeExtras();
}
}
}