/// [설계자]
/// 클립소프트 연구소 홍지철 (jchong@clipsoft.co.kr)
/// [원본 작성자]
/// 클립소프트 기술부 4팀 이창훈 (chlee@clipsoft.co.kr)
/// [수정 작성자]
/// 클립소프트 기술부 이인희
/// ----------------------------------------------------------------------------------------
/// [HISTORY]
/// 2016-07-01 : 최초작성
/// ----------------------------------------------------------------------------------------
///
public partial class ConsentSelectTabPageAll : UserControl
{
private ConsentSvcRef.ConsentSvcSoapClient consentWebService = null;
private IConsentMain consentMain = null;
private ConsentCommandCtrl commandControl = null;
private string searchStartDate = string.Empty;
public ConsentSelectTabPageAll()
{
InitializeComponent();
}
private void ConsentSelectTabPageAll_Load(object sender, EventArgs e)
{
Boolean isInWpfDesignerMode = (LicenseManager.UsageMode == LicenseUsageMode.Designtime);
Boolean isInFormsDesignerMode = (System.Diagnostics.Process.GetCurrentProcess().ProcessName == "devenv");
if (isInWpfDesignerMode || isInFormsDesignerMode)
{
// is in any designer mode
return;
}
if (this.DesignMode || LicenseManager.UsageMode == LicenseUsageMode.Designtime)
{
return;
}
consentMain = ConsentMainControl.GetConsentMainInterface(this);
commandControl = consentMain.ConsentCommandCtrl as ConsentCommandCtrl;
consentWebService = WebMethodCommon.GetConsentWebService(consentMain.PluginExecuteInfo["consentSvcUrl"]);
this.dateTimePickerEndDate.Value = DateTime.Now;
InitDataGrid();
BindDataGridRows();
}
private void InitDataGrid()
{
this.dataGridViewConsentSelectResult.MultiSelect = false;
this.dataGridViewConsentSelectResult.AutoGenerateColumns = false;
this.dataGridViewConsentSelectResult.AllowUserToAddRows = false;
this.dataGridViewConsentSelectResult.CellDoubleClick += new DataGridViewCellEventHandler(dataGridViewConsentSelectResult_CellMouseDoubleClick);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "동의서명", "ConsentName", true, 250);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "상태", "ConsentStateDisp", true, 60);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "처방명", "OrderNm", true, 100);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "내원/입원일", "ClnDate", true, 100);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "진료과", "ClnDeptNm", true, 100);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "처방의", "CosignDcName", true, 80);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "병동", "Ward", true, 100);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "작성일시", "CreateDateTime", true, 120);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "작성자", "CreateUserName", true, 80);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "생성번호", "Cretno", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "상태코드", "ConsentState", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "처방구분코드", "OrderNo", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "동의서 고유코드", "FormGuid", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "동의서 고유RID", "FormRid", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "동의서 작성 마스터 RID", "ConsentMstRid", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "처방코드", "OrderCd", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "OCR코드", "OcrNumber", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "병실", "RoomCd", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "동의서코드", "FormCd", false);
CommonUtil.AddNewColumnToDataGridView(this.dataGridViewConsentSelectResult, "내원구분", "VisitType", false);
}
#region 검색 조건에 따른 환자의 동의서 조회
public void BindDataGridRows()
{
try
{
if (this.consentMain == null) consentMain = ConsentMainControl.GetConsentMainInterface(this);
if (this.commandControl == null) commandControl = consentMain.ConsentCommandCtrl as ConsentCommandCtrl;
if (this.consentWebService == null) this.consentWebService = WebMethodCommon.GetConsentWebService(consentMain.PluginExecuteInfo["consentSvcUrl"]);
if (commandControl.CurrentTargetPatient != null && !string.IsNullOrEmpty(commandControl.CurrentTargetPatient.PatientCode))
{
// 프린터 모드가 아닐 경우
if (!(consentMain.ConsentExecuteInfo.ContainsKey("printAct")
&& !string.IsNullOrEmpty(consentMain.ConsentExecuteInfo["printAct"])
&& consentMain.ConsentExecuteInfo["printAct"].Equals("Y")
)
//&& !this.consentMain.printSaveStatus
)
{
if (this.dateTimePickerStartDate.Value > this.dateTimePickerEndDate.Value)
{
this.dateTimePickerStartDate.Value = DateTime.Today - TimeSpan.FromDays(1);
this.dateTimePickerEndDate.Value = DateTime.Today;
}
if (string.IsNullOrEmpty(searchStartDate))
{
if (commandControl.CurrentTargetPatient != null && !string.IsNullOrEmpty(commandControl.CurrentTargetPatient.clnDate))
{
searchStartDate = string.Format("{0}-{1}-{2}", commandControl.CurrentTargetPatient.clnDate.Substring(0, 4), commandControl.CurrentTargetPatient.clnDate.Substring(4, 2), commandControl.CurrentTargetPatient.clnDate.Substring(6, 2));
}
else
{
searchStartDate = consentMain.PluginExecuteInfo["ConsentSearchStartDate"];
}
}
this.dateTimePickerStartDate.Value = Convert.ToDateTime(searchStartDate);
string patientCode = commandControl.CurrentTargetPatient.PatientCode;
string sDate = this.dateTimePickerStartDate.Value.ToShortDateString().Replace("-", "");
string eDate = this.dateTimePickerEndDate.Value.ToShortDateString().Replace("-", "");
string consentState = GetCheckConsentState();
ConsentVO[] resultData = consentWebService.GetConsentList(patientCode, sDate, eDate, consentState, string.Empty);
if (resultData == null)
{
return;
}
this.dataGridViewConsentSelectResult.DataSource = new SortableBindingList