using AMIS3.UIFramework;
using AMIS3.UIFramework.Communication;
using AMIS3.UIFramework.DataModel;
using AMIS3.UIFramework.FxExtension;
using AMIS3.UIFramework.UI;
using AMIS3.UIFramework.UI.Controls;
using DevExpress.XtraEditors.Repository;
using DevExpress.XtraGrid.Columns;
using Microsoft.Practices.ServiceLocation;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using AMIS3.HM.GS.RCLIB001.VOClass;
namespace AMIS3.HM.GS.RCLIB002
{
public class HeGuidePrint
{
public HeGuidePrint()
{
}
public void PrintNotice(HeRciv heRciv)
{
DataTable DtExamItems = new DataTable();
DataTable DtExamItems1 = new DataTable();
DataTable DtExamItems2 = new DataTable();
DataTable DtExamItems3 = new DataTable();
DataTable DtExamItems4 = new DataTable();
string patno = heRciv.heResv.patno;
long vistSn = heRciv.heResv.vistSn;
string heDt = heRciv.heResv.heDt;
string mddpCd = heRciv.heResv.mddpCd;
Dictionary<string, string> bindData = null;
bindData = new Dictionary<string, string>();
PreData searchParam = new PreData
{
["patno"] = patno.ToStringDefault(),
["vistSn"] = vistSn.ToStringDefault(),
["heDt"] = heDt.ToStringDefault().Replace("-", ""),
["mddpCd"] = mddpCd.ToStringDefault()
};
DataTable dtItemReport = retrieveItemForReport(searchParam);
if (dtItemReport.Rows.Count == 0)
{
return;
}
String rMddpCd = dtItemReport.Rows[0]["mddpCd"].ToStringDefault();
if (rMddpCd.Equals("GHS"))
{
rMddpCd = "일반건진";
}
String dtHeDt = dtItemReport.Rows[0]["heDt"].ToStringDefault();
String rHeDt = dtHeDt.Insert(4, ".").Insert(7, ".");
String rPatno = dtItemReport.Rows[0]["patno"].ToStringDefault();
String rPatNm = dtItemReport.Rows[0]["patNm"].ToStringDefault();
String rEngNm = dtItemReport.Rows[0]["engNm"].ToStringDefault();
String dtRgno = dtItemReport.Rows[0]["rgno"].ToStringDefault();
String rRgno = dtRgno.Insert(2, ".").Insert(5, ".");
String rSex = dtItemReport.Rows[0]["sex"].ToStringDefault();
String rAge = dtItemReport.Rows[0]["age"].ToStringDefault();
DtExamItems.Columns.Add("examItems");
DtExamItems1.Columns.Add("examItems1");
DtExamItems2.Columns.Add("examItems2");
DtExamItems3.Columns.Add("examItems3");
DtExamItems4.Columns.Add("examItems4");
for (int i = 0; i < dtItemReport.Rows.Count; i++)
{
if (i < 20)
{
DtExamItems.Rows.Add(dtItemReport.Rows[i]["ordrDtlNm"].ToStringDefault());
}
if (i >= 20 && i < 40)
{
DtExamItems1.Rows.Add(dtItemReport.Rows[i]["ordrDtlNm"].ToStringDefault());
}
if (i >= 40 && i < 60)
{
DtExamItems2.Rows.Add(dtItemReport.Rows[i]["ordrDtlNm"].ToStringDefault());
}
if (i >= 60 && i < 80)
{
DtExamItems3.Rows.Add(dtItemReport.Rows[i]["ordrDtlNm"].ToStringDefault());
}
if (i >= 80 && i < 100)
{
DtExamItems4.Rows.Add(dtItemReport.Rows[i]["ordrDtlNm"].ToStringDefault());
}
}
bindData.Add("mddpCd", rMddpCd.ToStringDefault());
bindData.Add("heDt", rHeDt.ToStringDefault());
bindData.Add("patno", rPatno.ToStringDefault());
bindData.Add("patNm", rPatNm.ToStringDefault());
bindData.Add("engNm", rEngNm.ToStringDefault());
bindData.Add("rgno", rRgno.ToStringDefault());
bindData.Add("sex", rSex.ToStringDefault());
bindData.Add("age", rAge.ToStringDefault());
InitReport("VHMGSRC202R01.reb", bindData, DtExamItems);
if (DtExamItems1.Rows.Count > 0 || DtExamItems2.Rows.Count > 0)
{
InitReport1("VHMGSRC202R02.reb", bindData, DtExamItems1, DtExamItems2);
}
if (DtExamItems3.Rows.Count > 0 || DtExamItems4.Rows.Count > 0)
{
InitReport2("VHMGSRC202R03.reb", bindData, DtExamItems3, DtExamItems4);
}
InitReportEnd("VHMGSRC202R04.reb", bindData);
}
private DataTable retrieveItemForReport(PreData searchParam)
{
var amcDataParam = new AmcData
{
preDatas = new PreDatas { { "IPD", searchParam } }
};
CommunicationService CommService = new CommunicationService();
var responseData = CommService.CallService("SHMGX4008R", amcDataParam);
DataTable dtOrg = responseData.recordSets["ORS"].ToDataTable(true);
return dtOrg;
}
private bool InitReport(String reportNm, Dictionary<string, string> bindData, DataTable DtExamItems)
{
#region ...
UIFramework.UI.Controls.DocViewer.AReportViewer reportV = new UIFramework.UI.Controls.DocViewer.AReportViewer();
CommonMethod.GetResourceFile(this, "Report." + reportNm, "rpt" + reportNm);
bool printY = false;
reportV.BindingDataTableList.Clear();
reportV.BindFieldDic.Clear();
reportV.BindFieldDic = bindData;
reportV.BindingDataTableList.Add(DtExamItems);
reportV.TabHeaderVisible = false;
reportV.ToolbarVisible = true;
reportV.StatusbarVisible = false;
reportV.OpenReport(@"c:\amis3\temp\" + "rpt" + reportNm);
reportV.PrintPreview("preview", System.Windows.Forms.FormWindowState.Normal, 1250, 900);
if (DtExamItems.Columns.Contains("examItems"))
{
DtExamItems.Columns.Remove("examItems");
}
DtExamItems.Clear();
return printY;
#endregion
}
private bool InitReport1(String reportNm, Dictionary<string, string> bindData, DataTable DtExamItems1, DataTable DtExamItems2)
{
#region ...
UIFramework.UI.Controls.DocViewer.AReportViewer reportV = new UIFramework.UI.Controls.DocViewer.AReportViewer();
CommonMethod.GetResourceFile(this, "Report." + reportNm, "rpt" + reportNm);
bool printY = false;
reportV.BindingDataTableList.Clear();
reportV.BindFieldDic.Clear();
reportV.BindFieldDic = bindData;
reportV.BindingDataTableList.Add(DtExamItems1);
reportV.BindingDataTableList.Add(DtExamItems2);
reportV.TabHeaderVisible = false;
reportV.ToolbarVisible = true;
reportV.StatusbarVisible = false;
reportV.OpenReport(@"c:\amis3\temp\" + "rpt" + reportNm);
reportV.PrintPreview("preview", System.Windows.Forms.FormWindowState.Normal, 1250, 900);
if (DtExamItems1.Columns.Contains("examItems1"))
{
DtExamItems1.Columns.Remove("examItems1");
}
DtExamItems1.Clear();
if (DtExamItems2.Columns.Contains("examItems2"))
{
DtExamItems2.Columns.Remove("examItems2");
}
DtExamItems2.Clear();
return printY;
#endregion
}
private bool InitReport2(String reportNm, Dictionary<string, string> bindData, DataTable DtExamItems3, DataTable DtExamItems4)
{
#region ...
UIFramework.UI.Controls.DocViewer.AReportViewer reportV = new UIFramework.UI.Controls.DocViewer.AReportViewer();
CommonMethod.GetResourceFile(this, "Report." + reportNm, "rpt" + reportNm);
bool printY = false;
reportV.BindingDataTableList.Clear();
reportV.BindFieldDic.Clear();
reportV.BindFieldDic = bindData;
reportV.BindingDataTableList.Add(DtExamItems3);
reportV.BindingDataTableList.Add(DtExamItems4);
reportV.TabHeaderVisible = false;
reportV.ToolbarVisible = true;
reportV.StatusbarVisible = false;
reportV.OpenReport(@"c:\amis3\temp\" + "rpt" + reportNm);
reportV.PrintPreview("preview", System.Windows.Forms.FormWindowState.Normal, 1250, 900);
if (DtExamItems3.Columns.Contains("examItems3"))
{
DtExamItems3.Columns.Remove("examItems3");
}
DtExamItems3.Clear();
if (DtExamItems4.Columns.Contains("examItems4"))
{
DtExamItems4.Columns.Remove("examItems4");
}
DtExamItems4.Clear();
return printY;
#endregion
}
private bool InitReport3(String reportNm, Dictionary<string, string> bindData, DataTable DtExamItems3)
{
#region ...
UIFramework.UI.Controls.DocViewer.AReportViewer reportV = new UIFramework.UI.Controls.DocViewer.AReportViewer();
CommonMethod.GetResourceFile(this, "Report." + reportNm, "rpt" + reportNm);
bool printY = false;
reportV.BindingDataTableList.Clear();
reportV.BindFieldDic.Clear();
reportV.BindFieldDic = bindData;
reportV.BindingDataTableList.Add(DtExamItems3);
reportV.TabHeaderVisible = false;
reportV.ToolbarVisible = true;
reportV.StatusbarVisible = false;
reportV.OpenReport(@"c:\amis3\temp\" + "rpt" + reportNm);
reportV.PrintPreview("preview", System.Windows.Forms.FormWindowState.Normal, 1250, 900);
if (DtExamItems3.Columns.Contains("examItems3"))
{
DtExamItems3.Columns.Remove("examItems3");
}
DtExamItems3.Clear();
return printY;
#endregion
}
private bool InitReportEnd(String reportNm, Dictionary<string, string> bindData)
{
#region ...
UIFramework.UI.Controls.DocViewer.AReportViewer reportV = new UIFramework.UI.Controls.DocViewer.AReportViewer();
CommonMethod.GetResourceFile(this, "Report." + reportNm, "rpt" + reportNm);
bool printY = false;
reportV.BindingDataTableList.Clear();
reportV.BindFieldDic.Clear();
reportV.BindFieldDic = bindData;
reportV.TabHeaderVisible = false;
reportV.ToolbarVisible = true;
reportV.StatusbarVisible = false;
reportV.OpenReport(@"c:\amis3\temp\" + "rpt" + reportNm);
reportV.PrintPreview("preview", System.Windows.Forms.FormWindowState.Normal, 1250, 900);
return printY;
#endregion
}
}
}