pj416
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 DevExpress.XtraGrid.Views.Grid;
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.ZZ;
namespace AMIS3.HM.GC.PJ416
{
public partial class VHMGCPJ416S : ScreenBase, ISmartToolbar
{
private object oSynthCd;
// 2022.11.24 / 박민준 / 해당 콤보박스 종합코드 받는 전역변수 추가
private String classify;
public List<ActionButtonItem> ActionButtonItems { get; set; }
private DataTable dtList = new DataTable();
public VHMGCPJ416S()
{
InitializeComponent();
SetControl();
SetEvent();
}
private void VHMGCPJ416S_Load(object sender, EventArgs e)
{
}
private void SetControl()
{
DocumentService.ChangeActionButtons(this);
// 그리드 row순번표시
grvSuasion.SetCustomDrawRowIndicatorRowNum();
}
private void SetEvent()
{
}
// 원본
//public override object OnObjectDicReceived(string senderScreen, string messageID, Dictionary<string, object> objectDic)
//{
// if (objectDic.ContainsKey("synthCd"))
// {
// oSynthCd = objectDic["synthCd"];
// }
// return string.Empty;
//}
// 2022.11.29 / 박민준 / 데이터 전달 받는 메서드 추가
public override object OnObjectDicReceived(string senderScreen, string messageID, Dictionary<string, object> objectDic)
{
if (objectDic.ContainsKey("synthCd"))
{
oSynthCd = objectDic["synthCd"];
}
// pj410에서 전달한 데이터를 받아오는 부분
string some = objectDic["key"].ToString();
// 위암
if (some == "stomachCancerA") // 위장조영
{
InitComboBoxStmCancerA();
}
if (some == "stomachCancerB") // 위내시경
{
InitComboBoxStmCancerB();
}
// 대장암
if (some == "CanColonA") // 분변잠혈검사
{
InitComboBoxCanColonA();
}
if (some == "CanColonB") // 대장이중조영검사
{
InitComboBoxCanColonB();
}
if (some == "CanColonC") // 대장내시경
{
InitComboBoxCanColonC();
}
if (some == "CanLiverA") // 간암
{
InitComboBoxCanLiverA();
}
if (some == "CanCervixA") // 자궁경부암
{
InitComboBoxCanCervixA();
}
if (some == "CanBreastA") // 유방암
{
InitComboBoxCanBreastA();
}
if (some == "CanLungA") // 폐암
{
InitComboBoxCanLungA();
}
return String.Empty;
}
// 2022.11.29 / 박민준 / 위장조영 전용 콤보박스 추가
public void InitComboBoxStmCancerA()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1.이상소견없음 또는 위염", "1");
dt.Rows.Add("2.양성질환", "2");
dt.Rows.Add("3.위암 의심", "3");
dt.Rows.Add("4.위암", "4");
dt.Rows.Add("5.기타()", "5");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanStomach1";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 위내시경 전용 콤보박스 추가
public void InitComboBoxStmCancerB()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음 또는 위염", "1");
dt.Rows.Add("2:양성질환", "2");
dt.Rows.Add("3:위암 의심", "3");
dt.Rows.Add("4:위암", "4");
dt.Rows.Add("5:기타()", "5");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanStomach2";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 분변잠혈반응검사 전용 콤보박스 추가
public void InitComboBoxCanColonA()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음 또는 위염", "1");
dt.Rows.Add("2:대장폴립(용종)", "2");
dt.Rows.Add("3:대장암 의심", "3");
dt.Rows.Add("4:대장암", "4");
dt.Rows.Add("5:기타", "5");
dt.Rows.Add("6:잠혈반응없음", "6");
dt.Rows.Add("7:잠혈반응있음", "7");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanColon1";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 대장이중조영검사 전용 콤보박스 추가
public void InitComboBoxCanColonB()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음 또는 위염", "1");
dt.Rows.Add("2:대장폴립(용종)", "2");
dt.Rows.Add("3:대장암 의심", "3");
dt.Rows.Add("4:대장암", "4");
dt.Rows.Add("5:기타", "5");
dt.Rows.Add("6:잠혈반응없음", "6");
dt.Rows.Add("7:잠혈반응있음", "7");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanColon2";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 대장내시경 전용 콤보박스 추가
public void InitComboBoxCanColonC()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음 또는 위염", "1");
dt.Rows.Add("2:대장폴립(용종)", "2");
dt.Rows.Add("3:대장암 의심", "3");
dt.Rows.Add("4:대장암", "4");
dt.Rows.Add("5:기타", "5");
dt.Rows.Add("6:잠혈반응없음", "6");
dt.Rows.Add("7:잠혈반응있음", "7");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanColon3";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 간암 전용 콤보박스 추가
private void InitComboBoxCanLiverA()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:간암 의심소견 없음", "1");
dt.Rows.Add("2:추적검사 요망(3개월 이내)", "2");
dt.Rows.Add("3:간암 의심(정밀 검사 요망)", "3");
dt.Rows.Add("4:기타", "4");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanLiver";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 자궁경부암 전용 콤보박스 추가
private void InitComboBoxCanCervixA()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음", "1");
dt.Rows.Add("2:반응성 소견 및 감염성 질환", "2");
dt.Rows.Add("3:비정형 상피세포 이상", "3");
dt.Rows.Add("4:자궁경부암 전구단계 의심", "4");
dt.Rows.Add("5:자궁경부암의심", "5");
dt.Rows.Add("6:기타", "6");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanCervix";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 유방암 전용 콤보박스 추가
private void InitComboBoxCanBreastA()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음", "1");
dt.Rows.Add("2:양성질환", "2");
dt.Rows.Add("3:유방암의심", "3");
dt.Rows.Add("4:판정유보", "4");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanBreast";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 폐암 전용 콤보박스 추가
private void InitComboBoxCanLungA()
{
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Columns.Add("Value");
dt.Rows.Add("1:이상소견없음", "1");
dt.Rows.Add("2:양성결절", "2");
dt.Rows.Add("3:경계선 결절", "3");
dt.Rows.Add("4:폐암의심", "4");
dt.Rows.Add("4:폐암 매우 의심", "5");
cbtest.SetDataSource(dt, "Text", "Value", AComboFirstValueType.All);
classify = "CanLung";
// 2022.11.29 / 박민준 / 전용 콤보박스 생성 동시에 전체 검색.
GetCodeList();
}
// 2022.11.29 / 박민준 / 콤보박스 컨텐츠 선택
private void cbtest_SelectedIndexChanged(object sender, EventArgs e)
{
AComboBox cb = sender as AComboBox;
cbtest.Text = cb.SelectedItem.ToString();
cbtest.EditValue = cb.EditValue.ToString();
//MessageBox.Show("콤보 텍스트 : " + cbtest.Text);
//MessageBox.Show("콤보 벨류 : " + cbtest.EditValue);
}
// 조회하기 버튼 이벤트
private void btnSearch_Click(object sender, EventArgs e)
{
GetCodeList();
}
// 2022.11.29 / 박민준 / 해당 테이블 생성
private void GetCodeList()
{
cbtest.EditValue = cbtest.EditValue.ToString();
//MessageBox.Show("콤보 텍스트 : " + cbtest.Text);
//MessageBox.Show("콤보 벨류 : " + cbtest.EditValue);
//String[] strArr = new string[] { (string) cbtest.EditValue };
try
{
ZZ.GZCDCORCD TextCode = new ZZ.GZCDCORCD("CanStomach1", "CanStomach2", "CanLung", "CanCervix", "CanBreast", "CanLiver", "CanColon1", "CanColon2", "CanColon3");
//ZZ.GZCDCORCD TextCode = new ZZ.GZCDCORCD(strArr);
dtList = new DataTable();
DataTable dtCanStomach1 = TextCode.Get("CanStomach1");
DataTable dtCanStomach2 = TextCode.Get("CanStomach2");
DataTable dtCanLung = TextCode.Get("CanLung");
DataTable dtCanCervix = TextCode.Get("CanCervix");
DataTable dtCanBreast = TextCode.Get("CanBreast");
DataTable dtCanLiver = TextCode.Get("CanLiver");
DataTable dtCanColon1 = TextCode.Get("CanColon1");
DataTable dtCanColon2 = TextCode.Get("CanColon2");
DataTable dtCanColon3 = TextCode.Get("CanColon3");
//dtList = TextCode.Get(Convert.ToString(oSynthCd)).Copy();
dtList = TextCode.Get(classify).Copy();
dtList.Columns["dtlCd"].ColumnName = "dtlCd";
dtList.Columns["atriVal1"].ColumnName = "atriVal1";
dtList.AcceptChanges();
dtList.DefaultView.Sort = "dtlCd ASC";
grdSuasion.DataSource = dtList;
}
catch (Exception ex)
{
AMessageBox.Show("에러", ex.Message);
return;
}
}
// 조회하면서 해당 권고사항 반환하기
private void btnConfirm_Click(object sender, EventArgs e)
{
OnOkAction();
}
// 2022.11.29 / 박민준 / 선택한 권고사항을 해당 판정폼에 전달
private void OnOkAction()
{
// 해당 선택한 열의 권고사항 컬럼값을 StringBuilder로 생성
StringBuilder sb = new StringBuilder();
foreach (int id in grvSuasion.GetSelectedRows())
{
//list.Add(grvSuasion.GetRow(id) as object);
sb.Append(grvSuasion.GetRowCellValue(id,"atriVal1") as object);
}
//MessageBox.Show(Convert.ToString(sb));
// 위장조영일때
if (classify == "CanStomach1")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanStomach1", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ410S", "Msg01", dicRes, "AMIS3.HM.GC.PJ410.dll");
//this.ParentForm.Close();
this.Close();
}
// 위내시경일때
if (classify == "CanStomach2")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanStomach2", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ410S", "Msg01", dicRes, "AMIS3.HM.GC.PJ410.dll");
this.Close();
}
// 분변잠혈반응검사
if (classify == "CanColon1")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanColon1", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ411S", "Msg01", dicRes, "AMIS3.HM.GC.PJ411.dll");
this.Close();
}
// 대장이중조영검사
if (classify == "CanColon2")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanColon2", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ411S", "Msg01", dicRes, "AMIS3.HM.GC.PJ411.dll");
this.Close();
}
// 대장내시경
if (classify == "CanColon3")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanColon3", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ411S", "Msg01", dicRes, "AMIS3.HM.GC.PJ411.dll");
this.Close();
}
// 간암
if (classify == "CanLiver")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanLiver", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ412S", "Msg01", dicRes, "AMIS3.HM.GC.PJ412.dll");
this.Close();
}
// 자궁경부암
if (classify == "CanCervix")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanCervix", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ413S", "Msg01", dicRes, "AMIS3.HM.GC.PJ413.dll");
this.Close();
}
// 유방암
if (classify == "CanBreast")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanBreast", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ414S", "Msg01", dicRes, "AMIS3.HM.GC.PJ414.dll");
this.Close();
}
if (classify == "CanLung")
{
Dictionary<string, object> dicRes = new Dictionary<string, object>();
dicRes.Add("CanLung", sb);
object ret = this.SendObjectDicToScreen("VHMGCPJ415S", "Msg01", dicRes, "AMIS3.HM.GC.PJ415.dll");
this.Close();
}
}
}
}
pj410
/*=====================================================================================
프로젝트명 : AMIS3.0
프로그램ID : VHMGCPJ410S
업 무 명 : 암검진 위암판정
최초작성일 : 2022.09.01
개 발 자 :
참고사항 : form_Cd = PS20220101 from_ver_cd =PS2022010101
변경이력 :
====================================================================================*/
using AMIS3.HM.ZZ.ZZLIB003.Controls;
using AMIS3.HM.ZZ.ZZLIB003.Mvc.Utils;
using AMIS3.UIFramework;
using AMIS3.UIFramework.DataModel;
using AMIS3.UIFramework.FxExtension;
using AMIS3.UIFramework.UI;
using AMIS3.UIFramework.UI.Controls;
using DevExpress.XtraGrid.Views.Grid;
using System;
using System.Collections.Generic;
using System.Data;
using System.Windows.Forms;
using AMIS3.HM.ZZ;
namespace AMIS3.HM.GC.PJ410
{
public partial class VHMGCPJ410S : ScreenBase, ISmartToolbar
{
public List<ActionButtonItem> ActionButtonItems { get; set; } = new List<ActionButtonItem>();
DataTable svDt = null;
PreData searchParam = null;
APanelControl pn = new APanelControl();
string sPatno = "";
string sheDt = "";
long vistSn = 0;
string doclicnsNo = ""; // 의사면허번호
string doctorId = ""; // 의사아이디
string doctorNm = ""; // 의사명
string judgDt = ""; // 판정일자
string gubun = ""; // 탭구분
string rsltPrntDt = ""; // 서식출력일
UserT UserInfo = null;
private string strJudgDivCd = "S"; //판정구분 S : 위암
private string strFormCd = "PS20220101"; //서식코드
private string strFormVerCd = "PS2022010101"; //서식버전 코드
public VHMGCPJ410S()
{
InitializeComponent();
UserInfo = SecurityWrapper.Instance.SecurityService.GetUserInfo(this);
GetDoctorLicnsNo cs = new GetDoctorLicnsNo(UserInfo.usrId);
if (cs != null)
{
doclicnsNo = cs.GetLicnsNo(); // 의사면허번호
doctorId = cs.GetDoctorId(); // 의사아이디
doctorNm = cs.GetDoctorNm(); // 의사명
}
SetEvent();
SetControl();
}
// 2022.11.29 / 박민준 / 권고사항 선택한 것들을 받아서 위장조영, 위내시경 Edittext에 출력하기
public override object OnObjectDicReceived(string senderScreen, string messageID, Dictionary<string, object> objectDic)
{
string some = String.Empty;
if (objectDic.ContainsKey("CanStomach1"))
{
some = objectDic["CanStomach1"].ToString();
txtGastroGraphyJudge.Text = some;
}
else if(objectDic.ContainsKey("CanStomach2"))
{
some = objectDic["CanStomach2"].ToString();
txtGastroBiopsyJudge.Text = some;
}
return String.Empty;
}
private void SetEvent()
{
//그리드 행 선택시
grvPatList.RowCellClick += (sender, e) =>
{
Screen_Clear();
GridView gv = sender as GridView;
if (!gv.IsValidRowHandle(e.RowHandle)) return;
sPatno = grvPatList.GetFocusedRowCellValue("patno").ToString();
string sPatNm = grvPatList.GetFocusedRowCellValue("patNm").ToString();
sheDt = grvPatList.GetFocusedRowCellValue("heDt").ToString().Replace("-", "");
string ssexAge = grvPatList.GetFocusedRowCellValue("sexage").ToString();
vistSn = grvPatList.GetFocusedRowCellValue("vistSn").ToStringDefault("0").ToLong();
rsltPrntDt = grvPatList.GetFocusedRowCellValue("rsltPrntDt").ToStringDefault(); // 결과물출력일자
gubun = grvPatList.GetFocusedRowCellValue("heBasisPkgCd").ToStringDefault();
if ("gcS01".Equals(gubun))
{
this.tbCtrlJudge.TabPages[0].PageEnabled = true;
this.tbCtrlJudge.TabPages[1].PageEnabled = false;
pn = this.gcS01;
}
else
{
this.tbCtrlJudge.TabPages[0].PageEnabled = false;
this.tbCtrlJudge.TabPages[1].PageEnabled = true;
pn = this.gcS02;
}
lblSelHedt.Text = sheDt;
lblSelName.Text = sPatNm;
lblSelPatno.Text = sPatno;
lblSelSexAge.Text = ssexAge;
searchParam = new PreData()
{
["patno"] = sPatno,
["heDt"] = sheDt,
["vistSn", ADataType.L] = vistSn,
["formCd"] = strFormCd,
["formVerCd"] = strFormVerCd,
["heFormDivCd"] = strJudgDivCd
};
retrievetItemInfo(searchParam); // 서식데이터조회
};
SetDoctorInfo();
this.cboGastroGraphy1.SelectedIndexChanged += (s, e) => { ControlEnabled(cboGastroGraphy1, grpGastroGraphy2); };
this.cboGastroGraphy2.SelectedIndexChanged += (s, e) => { ControlEnabled(cboGastroGraphy2, grpGastroGraphy3); };
this.cboGastroGraphy3.SelectedIndexChanged += (s, e) => { ControlEnabled(cboGastroGraphy3, null); };
this.cboGastroScopy1.SelectedIndexChanged += (s, e) => { ControlEnabled(cboGastroScopy1, grpGastroScopy2); };
this.cboGastroScopy2.SelectedIndexChanged += (s, e) => { ControlEnabled(cboGastroScopy2, grpGastroScopy3); };
this.cboGastroScopy3.SelectedIndexChanged += (s, e) => { ControlEnabled(cboGastroScopy3, null); };
this.cboGastroBiopsy.SelectedIndexChanged += (s, e) =>
{
if ((string)cboGastroBiopsy.EditValue == "8")
{
grpGastroBiopyEtc.Enabled = true;
}
else
{
grpGastroBiopyEtc.Enabled = false;
GroupPanelResetInLoop(grpGastroBiopyEtc);
}
};
this.rdoGrpGastroBiopsy.SelectedIndexChanged += (s, e) =>
{
if ((string)rdoGrpGastroBiopsy.EditValue == "1")
{
grpGastroBiopsy.Enabled = true;
grpGastroForcep.Enabled = true;
grpGastroBiopsyKind.Enabled = true;
}
else
{
grpGastroBiopsy.Enabled = false;
grpGastroForcep.Enabled = false;
grpGastroBiopsyKind.Enabled = false;
GroupPanelResetInLoop(grpGastroBiopsy);
GroupPanelResetInLoop(grpGastroForcep);
GroupPanelResetInLoop(grpGastroBiopsyKind);
}
};
//위장조영 종합판정 기타
this.cboGastroGraphyJudge.SelectedIndexChanged += (s, e) =>
{
if ((string)cboGastroGraphyJudge.EditValue == "5")
{
txtGastroGraphyJudgeEtc.Enabled = true;
}
else
{
txtGastroGraphyJudgeEtc.Enabled = false;
txtGastroGraphyJudgeEtc.Text = "";
}
};
//위내시경 종합판정 기타
this.cboGastroBiopsyJudge.SelectedIndexChanged += (s, e) =>
{
if ((string)cboGastroBiopsyJudge.EditValue == "5")
{
txtGastroBiopsyJudgeEtc.Enabled = true;
}
else
{
txtGastroBiopsyJudgeEtc.Enabled = false;
txtGastroBiopsyJudgeEtc.Text = "";
}
};
//각 판정부분의 기타 체크
this.chkGraphyEtc8.CheckedChanged += (s, e) => { TextboxEnabledByCheckbox(chkGraphyEtc8, txtGastroGraphyEtc); };
this.chkScopyEtc8.CheckedChanged += (s, e) => { TextboxEnabledByCheckbox(chkScopyEtc8, txtGastroScopyEtc); };
this.chkBiopsy14.CheckedChanged += (s, e) => { TextboxEnabledByCheckbox(chkBiopsy14, txtGastroBiopsyEtc); };
this.chkBiopsyEtc8.CheckedChanged += (s, e) => { TextboxEnabledByCheckbox(chkBiopsyEtc8, txtGastroBiopsyEtcEtc); };
}
private void SetControl()
{
tbCtrlJudge.SetControlClear(); //판정탭 초기화
grpGastroGraphy2.Enabled = false;
grpGastroGraphy3.Enabled = false;
grpGastroGraphyEtc.Enabled = false;
txtGastroGraphyJudge.Text = "";
txtGastroGraphyEtc.Text = "";
grpGastroScopy2.Enabled = false;
grpGastroScopy3.Enabled = false;
grpGastroScopyEtc.Enabled = false;
grpGastroBiopsy.Enabled = false;
grpGastroForcep.Enabled = false;
grpGastroBiopsyKind.Enabled = false;
grpGastroBiopyEtc.Enabled = false;
txtGastroScopyEtc.Text = "";
txtGastroBiopsyEtc.Text = "";
txtGastroBiopsyEtcEtc.Text = "";
txtGastroBiopsyJudge.Text = "";
rdoGrpGastroBiopsy.SelectedIndex = 1;
ActionBtnSetting();
}
// 2022.11.29 / 박민준 / 액션버튼 추가
// 엑션버튼 디폴트(처음 생성 될때니까 위장조영으로 맞춰져 있어야 한다.)
private void ActionBtnSetting()
{
ActionButtonItems = new List<ActionButtonItem>();
ActionButtonItems.Add(new ActionButtonItem
{
Text = "판정 권고사항(위장조영)",
Idx = 0,
IsImportant = false,
Permissions = "W",
ClickAction = DataToPj416A,
Name = "actPj416"
});
ActionButtonItems.Add(new ActionButtonItem
{
Text = "저장",
Idx = 1,
IsImportant = true,
Permissions = "W",
ClickAction = OnSaveAction,
Name = "actSave"
});
btnAction.Items = ActionButtonItems;
//DocumentService.ChangeActionButtons(this);
//btnAction.FallDownMenuWidth = 80;
btnAction.FallDownMenuWidth = 180;
}
// 위내시경 검사 및 조직진단 탭 누를시
private void ActionBtnSetting1()
{
ActionButtonItems = new List<ActionButtonItem>();
ActionButtonItems.Add(new ActionButtonItem
{
Text = "판정 권고사항(위내시경)",
Idx = 0,
IsImportant = false,
Permissions = "W",
ClickAction = DataToPj416B,
Name = "actPj416"
});
//
// 위장조영일때 위내시경일때 actonbutton이 달라야 한다.
ActionButtonItems.Add(new ActionButtonItem
{
Text = "저장",
Idx = 1,
IsImportant = true,
Permissions = "W",
ClickAction = OnSaveAction,
Name = "actSave"
});
btnAction.Items = ActionButtonItems;
//DocumentService.ChangeActionButtons(this);
//btnAction.FallDownMenuWidth = 80;
btnAction.FallDownMenuWidth = 180;
}
// 2022.11.29 / 박민준 / 액션버튼 (생성된후 다시 탭을 누를 경우)
private void tbCtrlJudge_Click(object sender, EventArgs e)
{
if (tbCtrlJudge.SelectedTabPageIndex == 0)
{
ActionBtnSetting();
//AMessageBox.ShowInstant("탭1");
}
else if (tbCtrlJudge.SelectedTabPageIndex == 1)
{
ActionBtnSetting1();
//AMessageBox.ShowInstant("탭2");
}
}
// 2022.11.29 / 박민준 / pj416 판정 권고사항 데이터 넘기는 이벤트(위장조영)
private void DataToPj416A()
{
Dictionary<string, object> testDic = new Dictionary<string, object>();
testDic.Add("key", "stomachCancerA");
object ret = this.SendObjectDicToScreen("VHMGCPJ416S", "Msg01", testDic, true, "AMIS3.HM.GC.PJ416.dll");
}
// 2022.11.29 / 박민준 / pj416 판정 권고사항 데이터 넘기는 이벤트(위내시경)
private void DataToPj416B()
{
Dictionary<string, object> testDic = new Dictionary<string, object>();
testDic.Add("key", "stomachCancerB");
object ret = this.SendObjectDicToScreen("VHMGCPJ416S", "Msg01", testDic, true, "AMIS3.HM.GC.PJ416.dll");
}
private void SetDoctorInfo()
{
if("".Equals(txtLno1.EditValue.ToStringDefault())) this.txtLno1.EditValue = doclicnsNo;
if ("".Equals(txtLno2.EditValue.ToStringDefault())) this.txtLno2.EditValue = doclicnsNo;
if ("".Equals(txtDoctorNm1.EditValue.ToStringDefault())) this.txtDoctorNm1.EditValue = doctorNm; // 의사명
if ("".Equals(txtDoctorNm2.EditValue.ToStringDefault())) this.txtDoctorNm2.EditValue = doctorNm;
}
/// <summary>
/// 텍스트박스 활성여부
/// </summary>
/// <param name="chkGraphyEtc8">동작 체크박스</param>
/// <param name="txtGastroGraphyEtc">대상 텍스트박스</param>
private void TextboxEnabledByCheckbox(ACheckEdit chkBox, ATextEdit txtBox)
{
if (chkBox.Checked == true)
{
txtBox.Enabled = true;
}
else
{
txtBox.Enabled = false;
txtBox.Text = "";
}
}
/// <summary>
/// 컨테이너 컨트롤내 속해있는 컨트롤 초기화
/// </summary>
/// <param name="grpCtrl">대상컨테이너</param>
private void GroupPanelResetInLoop(AGroupControl grpCtrl)
{
foreach (Control ctl in grpCtrl.Controls)
{
if (ctl is ACheckEdit)
{
((ACheckEdit)ctl).Checked = false;
}
else if (ctl is ATextEdit)
{
((ATextEdit)ctl).Text = "";
}
else if (ctl is ARadioGroup)
{
((ARadioGroup)ctl).EditValue = "0";
}
else if (ctl is AComboBox)
{
((AComboBox)ctl).SelectedIndex = 0;
}
}
}
/// <summary>
/// 컨트롤 세팅
/// </summary>
/// <param name="cboCtrl"></param>
/// <param name="grpCtrl"></param>
private void ControlEnabled(AComboBox cboCtrl, AGroupControl grpCtrl)
{
if (cboCtrl.Text.Trim() != "")
{
if (grpCtrl != null) { grpCtrl.Enabled = true; }
}
else
{
if (grpCtrl != null)
{
grpCtrl.Enabled = false;
GroupPanelResetInLoop(grpCtrl);
}
}
//위조영 판독소견 기타 선택시 기타항목 활성화
if ((string)cboGastroGraphy1.EditValue == "9" ||
(string)cboGastroGraphy2.EditValue == "9" ||
(string)cboGastroGraphy3.EditValue == "9")
{
grpGastroGraphyEtc.Enabled = true;
}
else
{
grpGastroGraphyEtc.Enabled = false;
GroupPanelResetInLoop(grpGastroGraphyEtc);
}
//위내시경 관찰소견 기타 선택시 기타항목 활성화
if ((string)cboGastroScopy1.EditValue == "9" ||
(string)cboGastroScopy2.EditValue == "9" ||
(string)cboGastroScopy3.EditValue == "9")
{
grpGastroScopyEtc.Enabled = true;
}
else
{
grpGastroScopyEtc.Enabled = false;
GroupPanelResetInLoop(grpGastroScopyEtc);
}
}
private void VHMGCPJ410S_Load(object sender, EventArgs e)
{
dcHeDt.ToDateTime = DateTime.Today.AddDays(3);
dcHeDt.FromDateTime = DateTime.Today;
}
private void Screen_Clear()
{
this.pn.SetControlClear();
}
/// <summary>
/// 수진자목록
/// </summary>
private async void retrievePatInfo()
{
PreData preDt = new PreData();
if (dcHeDt.FromDateTime == null
|| dcHeDt.ToDateTime == null)
{
AMessageBox.ShowDialog(this, "필수", "조회기간을 선택하세요");
return;
}
preDt["startDt"] = dcHeDt.FromDateTime.ToString("yyyyMMdd");
preDt["endDt"] = dcHeDt.ToDateTime.ToString("yyyyMMdd");
preDt["patno"] = txtPatno.EditValue.ToStringDefault();
preDt["gubun"] = this.aTabControl1.SelectedTabPage.Name.ToString();
preDt["heFormDivCd"] = strJudgDivCd;
preDt["heBasisPkgCd"] = "gcS"; // 위암
AmcData amcDataParam = new AmcData
{
preDatas = new PreDatas
{
{ "IPD", preDt }
}
};
AmcData resultList = await CommService.CallServiceAsync("SHMGC3105R", amcDataParam, this, LoadingType.BlockLoad);
// 4.응답전문 => DT 변환
if (resultList.IsSuccess)
{
DataTable returnDT = resultList.recordSets["ORS"].ToDataTable();
this.grdPatList.DataSource = returnDT;
}
}
/// <summary>
/// 서식데이터조회
/// </summary>
/// <param name="searchParam"></param>
private async void retrievetItemInfo(PreData searchParam)
{
AmcData amcDataParam = new AmcData
{
preDatas = new PreDatas
{
{ "IPD", searchParam }
}
};
AmcData resultList = await CommService.CallServiceAsync("SHMGC3103R", amcDataParam, this, LoadingType.BlockLoad);
// 4.응답전문 => DT 변환
if (resultList.IsSuccess)
{
DataTable returnItem = resultList.recordSets["ORS_ITEM"].ToDataTable();
if (returnItem.Rows.Count > 0)
{
pn.SetData(returnItem, "itemCd", "answer");
}
SetDoctorInfo();
}
}
/// <summary>
/// 저장
/// </summary>
private void OnSaveAction()
{
SvCallSaveInfo();
}
private async void SvCallSaveInfo()
{
if (!("").Equals(rsltPrntDt))
{
AMessageBox.Show("", "결과지를 출력한 서식은 수정할수 없습니다. ");
return;
}
// 저장로직 처리
svDt = new DataTable();
AmcData amcDataParam = new AmcData();
amcDataParam.recordSets = new RecordSets();
amcDataParam.preDatas = new PreDatas();
if ("gcS01".Equals(gubun))
{
judgDt = this.txtPanJDt1.EditValue.ToDate().ToString("yyyyMMdd");
}
else
{
judgDt = this.txtPanJDt2.EditValue.ToDate().ToString("yyyyMMdd");
}
//판정상태변경
PreData sParam = new PreData();
sParam["patno"] = sPatno;
sParam["vistSn", ADataType.L] = vistSn;
sParam["heDt"] = sheDt;
sParam["heFormDivCd"] = strJudgDivCd;
sParam["judgDt"] = judgDt;
sParam["judgDrLcnsNo"] = this.doclicnsNo;
svDt.SetSvDataTable("판정", strJudgDivCd, strFormCd, strFormVerCd, sPatno, sheDt, vistSn, false);
pn.GetData(ref svDt, "itemItemCd", "itemResultVal");
amcDataParam.recordSets.Add("IRS", svDt.ToRecordSet(true));
amcDataParam.preDatas.Add("IPD", sParam); // 상태값변경
var responseData = await CommService.CallServiceAsync("SHMGC3001T", amcDataParam);
AMessageBox.ShowInstant(this, responseData.header.message);
//성공인 경우, 재 조회~
if (string.Equals(responseData.header.resultCode, "S"))
{
AMessageBox.Show("저장완료", "정상적으로 수정되었습니다.", AMessageType.OK);
retrievetItemInfo(searchParam); // 재조회
}
else
{
AMessageBox.Show("저장에러", responseData.header.message, AMessageType.Error);
}
}
/// <summary>
/// 조회
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnSearch_Click(object sender, EventArgs e)
{
retrievePatInfo();
SetDoctorInfo();
}
private void aTabControl1_Click(object sender, EventArgs e)
{
retrievePatInfo();
this.grdPatList.DataSource = null;
this.pn.SetControlClear();
SetDoctorInfo();
}
}
}
db
<!-- 건강검진종합출력서식항목코드목록조회 -->
<select id="retrieveHeSynthOutFormClauCdList" parameterType="String" resultType="kr.amc.amis.hm.gz.cd.entity.HeSynthOutFormClauCdDTO">
<![CDATA[
SELECT /* SQLID=kr.amc.amis.hm.gz.cd.store.mapper.HeSynthOutFormClauCdMapper.retrieveHeSynthOutFormClauCdList */
ORCD.SYNTH_CD
, ORCD.DTL_CD
, ORCD.ST_DT
, ORCD.END_DT
, ORCD.KOR_NM
, ORCD.ENG_NM
, ORCD.SORT_SEQ
, ORCD.BNDL_KOR_NM
, ORCD.BNDL_ENG_NM
, ORCD.ATRI_VAL1
, ORCD.ATRI_VAL2
, ORCD.ATRI_VAL3
, ORCD.ATRI_VAL4
, ORCD.ATRI_VAL5
, ORCD.ATRI_VAL6
, ORCD.ATRI_VAL7
, ORCD.ATRI_CNTE
, ORCD.KOR_DESC
, ORCD.ENG_DESC
, ORCD.CRTE_CNTE
, ORCD.ENG_CRTE_CNTE
, ORCD.MSR_KOR_NM
, ORCD.MSR_ENG_NM
, ORCD.RMRK
, ORCD.FRST_ENTR_EMPNO || ' ' || FN_ZZ_GET_USER_NM(ORCD.FRST_ENTR_EMPNO) AS FRST_ENTR_EMPNO
, ORCD.FRST_ENTR_DTM
, ORCD.FINL_UPID_EMPNO || ' ' || FN_ZZ_GET_USER_NM(ORCD.FINL_UPID_EMPNO) AS FINL_UPID_EMPNO
, ORCD.FINL_UPDT_DTM
FROM GZCDCORCD ORCD
WHERE ORCD.SYNTH_CD = #{synthCd}
AND SYSDATE BETWEEN TO_DATE(ORCD.ST_DT,'YYYYMMDD') AND TO_DATE(ORCD.END_DT||'235959','YYYYMMDDHH24MISS')
ORDER BY ORCD.SORT_SEQ
]]>
</select>