123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPMMO20002" position="absolute 0 0 367 679" titletext="희귀난치 신청서" onload="SPMMO20002_onload">
- <Layouts>
- <Layout>
- <Div position="absolute 97 19 228 117" id="group1" enable="true">
- <Layouts>
- <Layout>
- <Edit position="absolute 0 4 130 23" id="ipt_pid" enable="true" anchor="default" readonly="true"/>
- <Combo position="absolute 0 54 130 73" id="combo1" enable="true" innerdataset="@ds_init_orddept" datacolumn="depthngnm" codecolumn="deptcd" anchor="default" readonly="true"/>
- <Edit position="absolute 0 29 130 48" id="ipt_hngnm" enable="true" anchor="default" readonly="true"/>
- <Edit position="absolute 0 79 130 98" id="ipt_diaghngnm" enable="true" anchor="default" readonly="true"/>
- </Layout>
- </Layouts>
- </Div>
- <Shape position="absolute 0 16 360 22" linetype="horizontal" id="line1" class="line_1" style="strokepen:3 solid #9ebed4ff;"/>
- <Static text="희귀난치 신청서" position="absolute 0 0 359 16" align="align:center middle;" id="caption14" class="tit_2"/>
- <Static text="등록번호" position="absolute 1 21 94 44" align="align:center middle;" id="caption26" class="cell_1"/>
- <Static text="진료과" position="absolute 1 71 94 94" align="align:center middle;" id="caption1" class="cell_1"/>
- <Static text="진단" position="absolute 1 96 94 119" align="align:center middle;" id="caption2" class="cell_1"/>
- <Static text="진단확인일" position="absolute 1 120 94 143" align="align:center middle;" id="caption3" class="cell_1"/>
- <Static text="최종진단방법 (중복 체크 가능)" position="absolute 0 195 345 211" align="align:center middle;" id="caption4" class="tit_2"/>
- <Shape position="absolute 0 211 360 217" linetype="horizontal" id="line2" class="line_1" style="strokepen:3 solid #9ebed4ff;"/>
- <Static text="영상검사" position="absolute 22 422 72 437" id="caption6"/>
- <Static text="기타검사" position="absolute 22 617 72 632" id="caption5" style="font:Dotum,9;"/>
- <Static text="②" position="absolute 4 480 19 495" id="caption7"/>
- <Static text="③" position="absolute 4 501 19 516" id="caption8"/>
- <Static text="④" position="absolute 4 522 19 537" id="caption9"/>
- <Static text="⑤" position="absolute 4 543 19 558" id="caption10"/>
- <Static text="⑥" position="absolute 4 617 19 632" id="caption11"/>
- <Button position="absolute 244 643 300 665" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
- <Button position="absolute 304 643 360 665" id="btn_exit" class="btn4" text="종료" onclick="btn_exit_onclick"/>
- <Static text="환자명" position="absolute 1 46 94 69" align="align:center middle;" id="caption13" class="cell_1"/>
- <CheckBox position="absolute 75 419 135 434" id="bool_sono" text="SONO"/>
- <CheckBox position="absolute 150 419 186 434" id="bool_ct" text="CT"/>
- <CheckBox position="absolute 225 419 269 434" id="bool_mri" text="MRI"/>
- <CheckBox position="absolute 75 438 119 453" id="bool_etc" text="기타" onclick="bool_etc_onclick"/>
- <CheckBox position="absolute 25 521 125 536" id="bool_item4" text="조직학적 검사"/>
- <CheckBox position="absolute 25 500 125 515" id="bool_item3" text="유전학적 검사"/>
- <CheckBox position="absolute 25 479 229 494" id="bool_item2" text="특수 생화학적 또는 면역학적 검사"/>
- <CheckBox position="absolute 25 542 237 557" id="bool_item5" text="임상적 소견으로 최종 진단 시 기재" onclick="bool_item5_onclick"/>
- <Edit position="absolute 124 436 304 455" id="ipt_etc1" enable="false" onkeydown="ipt_etc1_onkeydown"/>
- <Static position="absolute 231 23 359 68" align="align:center middle;" id="cap_insukindnm" class="cell_1" style="padding:0 0 0 0;align:center middle;font:Dotum,12,bold;"/>
- <Calendar position="absolute 97 122 227 141" id="ipt_diagcnfmdate" class="input_s_essential" mask="yyyy-mm-dd"/>
- <Button position="absolute 184 643 240 665" id="btn_del" class="btn4" text="삭제" onclick="btn_del_onclick"/>
- <Button position="absolute 124 643 180 665" id="btn_upt" class="btn4" text="수정" onclick="btn_upt_onclick"/>
- <TextArea position="absolute 45 559 359 594" id="txt_etc2" onkeydown="txt_etc2_onkeydown"/>
- <Combo position="absolute 75 615 360 634" id="com_etc1" innerdataset="@ds_P0509" datacolumn="cdnm" codecolumn="cdid" index="-1"/>
- <Static text="①" position="absolute 5 422 25 437" id="caption12"/>
- <Static text="◈ 등록기준 및 필수검사" position="absolute 0 220 135 235" id="caption15"/>
- <Static text="(반드시 필수검사에 맞게 작성하세요)" position="absolute 148 219 357 234" id="caption16" style="color:blue;"/>
- <Static text="( 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 )" position="absolute 50 456 360 475" id="caption17" style="font:Dotum,9,underline;"/>
- <Static text="( 최소 : 한글 5자, 영어 10자, 최대 : 한글 40자, 영어 80자 )" position="absolute 41 595 359 610" id="caption18"/>
- <Grid position="absolute 0 239 359 414" id="grd_diaglist" binddataset="ds_hidden_items" oncelldblclick="grd_diaglist_oncelldblclick" autosizingtype="row" extendsizetype="row" cellsizingtype="row" onmousewheel="grd_diaglist_onmousewheel" onvscroll="grd_diaglist_onvscroll" scrollpixel="all">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="70"/>
- <Column size="193"/>
- <Column size="80"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell text="진단명"/>
- <Cell col="1" text="등록기준"/>
- <Cell col="2" text="필수검사"/>
- <Cell col="3" text="seq"/>
- <Cell col="4" text="test1"/>
- <Cell col="5" text="test2"/>
- <Cell col="6" text="test3"/>
- <Cell col="7" text="test4"/>
- <Cell col="8" text="test5"/>
- <Cell col="9" text="test6"/>
- </Band>
- <Band id="body">
- <Cell style="align:left top;padding:3 3 3 3;linespace:2;" text="bind:diagnm" wordwrap="char" autosizerow="limitmin"/>
- <Cell col="1" style="align:left;padding:3 3 3 3;linespace:2;" text="bind:rgstbase" wordwrap="char" autosizerow="limitmin"/>
- <Cell col="2" style="align:left top;padding:3 3 3 3;linespace:2;" text="bind:essntestasso" wordwrap="char" autosizerow="default"/>
- <Cell col="3" text="bind:seq"/>
- <Cell col="4" text="bind:test1"/>
- <Cell col="5" text="bind:test2"/>
- <Cell col="6" text="bind:test3"/>
- <Cell col="7" text="bind:test4"/>
- <Cell col="8" text="bind:test5"/>
- <Cell col="9" text="bind:test6"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Combo position="absolute 97 146 227 165" id="combo3" codecolumn="codecolumn" datacolumn="datacolumn">
- <Dataset id="innerdataset">
- <ColumnInfo>
- <Column id="codecolumn"/>
- <Column id="datacolumn"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="codecolumn">O</Col>
- <Col id="datacolumn">외래</Col>
- </Row>
- <Row>
- <Col id="codecolumn">I</Col>
- <Col id="datacolumn">입원</Col>
- </Row>
- </Rows>
- </Dataset>
- </Combo>
- <Static text="외래/입원구분" position="absolute 1 144 94 167" align="align:center middle;" id="caption19" class="cell_1" style="padding:0 0 0 8;"/>
- <Button position="absolute 10 643 88 665" id="button1" class="btn4" text="예외환자" onclick="button1_onclick"/>
- <Button id="Button03" taborder="1" onclick="Button03_onclick" class="icon_search2" position="absolute 224 99 252 119"/>
- <Static id="caption20" text="신청서 구분" class="cell_1" position="absolute 1 168 94 191" style="padding:0 0 0 8;"/>
- <Combo id="combo00" taborder="3" codecolumn="cdid" datacolumn="cdnm" position="absolute 97 170 227 189" onitemchanged="combo00_onitemchanged" innerdataset="@ds_rgstkind"/>
- <Static id="caption24" text="등록기준을 선택하면 버튼이 활성화 됩니다." visible="false" position="absolute 123 666 363 681" style="color:blue;"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_hidden_items" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_init_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_P0509" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cdid" type="STRING" size="256"/>
- <Column id="cdnm" type="STRING" size="256"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="genrdd" type="STRING" size="256"/>
- <Column id="genrno" type="STRING" size="256"/>
- <Column id="histno" type="STRING" size="256"/>
- <Column id="pid" type="STRING" size="256"/>
- <Column id="genrflagcd" type="STRING" size="256"/>
- <Column id="genrorddd" type="STRING" size="256"/>
- <Column id="genrcretno" type="STRING" size="256"/>
- <Column id="orddeptcd" type="STRING" size="256"/>
- <Column id="rgstkindcd" type="STRING" size="256"/>
- <Column id="icd10cd" type="STRING" size="256"/>
- <Column id="diagcd" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_rarediagappinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256"/>
- <Column id="genrdd" type="STRING" size="256"/>
- <Column id="genrno" type="STRING" size="256"/>
- <Column id="histno" type="STRING" size="256"/>
- <Column id="instcd" type="STRING" size="256"/>
- <Column id="histcd" type="STRING" size="256"/>
- <Column id="pid" type="STRING" size="256"/>
- <Column id="anohosprgstflag" type="STRING" size="256"/>
- <Column id="genrflagcd" type="STRING" size="256"/>
- <Column id="insukind" type="STRING" size="256"/>
- <Column id="cncrdiagcnfmdd" type="STRING" size="256"/>
- <Column id="orddeptcd" type="STRING" size="256"/>
- <Column id="orddrid" type="STRING" size="256"/>
- <Column id="serdiagno" type="STRING" size="256"/>
- <Column id="serdiagfromdd" type="STRING" size="256"/>
- <Column id="serdiagtodd" type="STRING" size="256"/>
- <Column id="genrorddd" type="STRING" size="256"/>
- <Column id="genrcretno" type="STRING" size="256"/>
- <Column id="maindiagcd" type="STRING" size="256"/>
- <Column id="ediflag" type="STRING" size="256"/>
- <Column id="editretdd" type="STRING" size="256"/>
- <Column id="editrettm" type="STRING" size="256"/>
- <Column id="pathngnm" type="STRING" size="256"/>
- <Column id="dschprcpyn" type="STRING" size="256"/>
- <Column id="prcpdd" type="STRING" size="256"/>
- <Column id="age" type="STRING" size="256"/>
- <Column id="frmsuppkind" type="STRING" size="256"/>
- <Column id="rgstkindcd" type="STRING" size="256"/>
- <Column id="burnicd10desc" type="STRING" size="256"/>
- <Column id="icd10cd" type="STRING" size="256"/>
- <Column id="reregyn" type="STRING" size="256"/>
- <Column id="regdiagcd" type="STRING" size="256"/>
- <Column id="regdiagseq" type="STRING" size="256"/>
- <Column id="appspclcd" type="STRING" size="256"/>
- <Column id="appdiagcd" type="STRING" size="256"/>
- <Column id="appdiagseq" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_diagappmthinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="mth0101" type="STRING" size="256"/>
- <Column id="mth0202" type="STRING" size="256"/>
- <Column id="mth0303" type="STRING" size="256"/>
- <Column id="mth0404" type="STRING" size="256"/>
- <Column id="mth0405" type="STRING" size="256"/>
- <Column id="mth0506" type="STRING" size="256"/>
- <Column id="mth0607" type="STRING" size="256"/>
- <Column id="mth0708" type="STRING" size="256"/>
- <Column id="mth0809" type="STRING" size="256"/>
- <Column id="mth0810" type="STRING" size="256"/>
- <Column id="mth0911" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_rgstkind" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cdid" type="STRING" size="256"/>
- <Column id="cdnm" type="STRING" size="256"/>
- </ColumnInfo>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item0" compid="group1.ipt_pid" propid="value" datasetid="ds_rarediagappinfo" columnid="pid"/>
- <BindItem id="item1" compid="group1.ipt_hngnm" propid="value" datasetid="ds_rarediagappinfo" columnid="pathngnm"/>
- <BindItem id="item2" compid="group1.combo1" propid="value" datasetid="ds_rarediagappinfo" columnid="orddeptcd"/>
- <BindItem id="item3" compid="group1.ipt_diaghngnm" propid="value" datasetid="ds_rarediagappinfo" columnid="maindiagcd"/>
- <BindItem id="item4" compid="ipt_diagcnfmdate" propid="value" datasetid="ds_rarediagappinfo" columnid="cncrdiagcnfmdd"/>
- <BindItem id="item5" compid="combo3" propid="value" datasetid="ds_rarediagappinfo" columnid="genrflagcd"/>
- <BindItem id="item7" compid="bool_sono" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0101"/>
- <BindItem id="item8" compid="bool_ct" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0202"/>
- <BindItem id="item9" compid="bool_mri" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0303"/>
- <BindItem id="item10" compid="bool_etc" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0404"/>
- <BindItem id="item11" compid="bool_item2" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0506"/>
- <BindItem id="item12" compid="bool_item3" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0607"/>
- <BindItem id="item13" compid="bool_item4" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0708"/>
- <BindItem id="item14" compid="bool_item5" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0809"/>
- <BindItem id="item15" compid="ipt_etc1" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0405"/>
- <BindItem id="item16" compid="txt_etc2" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0810"/>
- <BindItem id="item17" compid="com_etc1" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0911"/>
- <BindItem id="item6" compid="combo00" propid="value" datasetid="ds_rarediagappinfo" columnid="rgstkindcd"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[//=======================================================================================
- // Lib Include
- //---------------------------------------------------------------------------------------
- include "com_commonxp::comm_main.xjs";
- include "emr_medirecxp::MMRCommon.xjs";
- include "emr_prcpmngtxp::MMOCommon.xjs";
- include "emr_prcpmngtxp::MMO001.xjs";
- include "com_commodulexp::SSZFM00401.xjs";
- var arErrorCode = new HashArray();
- //=======================================================================================
- // Event
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Components : Form
- * Components ID : SPMMO20001
- * Event : onload
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면오픈시 폼load이후 실행
- ****************************************************************************************/
- function SPMMO20002_onload(obj:Form, e:LoadEventInfo)
- {
- frmf_initForm(obj); // 폼 초기화
-
- grdf_initGrid(grd_diaglist);
- //grdf_setToolTipBind(grd_diaglist);
-
- lf_mmbfGetDeptCodeComboList(ds_init_orddept, "A");
-
- var arrParam = [{dsNm: "ds_P0509", cdGrpId: "P0509"}];
- appf_getCodeList(arrParam);
- dsf_addDsItem(ds_P0509,"cdid","cdnm"," 선 택 ","");
-
- var sGenrDd = opener.frmf_getParameter("SPMMO20000_genrdd");
- var sGenrNo = opener.frmf_getParameter("SPMMO20000_genrno");
- var sHistNo = opener.frmf_getParameter("SPMMO20000_histno");
- var sRgstKindCd = opener.frmf_getParameter("SPMMO20000_rgstkindcd")
-
- if(utlf_isNull(sGenrDd)) {
- sGenrDd = utlf_getCurrentDate(); // 현재 일자로 설정
- }
-
- if(utlf_isNull(sRgstKindCd)) {
- if(sGenrDd < "20190101") {
- sRgstKindCd = "01"; // 기본으로 희귀난치 설정
- } else {
- sRgstKindCd = "09"; // 기본으로 결핵 설정
- }
- }
-
- var paminfo = sysf_getGlobalVariable("paminfo");
- dsf_setCSVToDs("ds_paminfo", paminfo);
-
- var sPid = ds_paminfo.getColumn(0, "pid");
- if(utlf_isNull(sGenrDd) && utlf_isNull(sPid)){
- btn_save.visible = false; //저장
- btn_del.visible = false; //삭제
- btn_upt.visible = false; //수정
- sysf_messageBox("환자정보를 확인", "E001");
- return;
- }
-
- var sIoFlag = ds_paminfo.getColumn(0, "ioflag");
- var sCretNo = ds_paminfo.getColumn(0, "cretno");
- var sOrdDeptCd = ds_paminfo.getColumn(0, "orddeptcd");
- var sOrdDd = "";
- if (sIoFlag == "O" || sIoFlag == "S") {
- sIoFlag = "O";
- sOrdDd = ds_paminfo.getColumn(0, "orddd");
- } else {
- sIoFlag = "I";
- sOrdDd = ds_paminfo.getColumn(0, "indd");
- }
- ds_main_cond.setColumn(0,"rgstkindcd", sRgstKindCd);
- ds_main_cond.setColumn(0,"genrdd", sGenrDd);
- ds_main_cond.setColumn(0,"genrno", sGenrNo);
- ds_main_cond.setColumn(0,"histno", sHistNo);
- ds_main_cond.setColumn(0,"genrflagcd", sIoFlag);
- ds_main_cond.setColumn(0,"pid", sPid);
- ds_main_cond.setColumn(0,"genrorddd", sOrdDd);
- ds_main_cond.setColumn(0,"genrcretno", sCretNo);
- ds_main_cond.setColumn(0,"orddeptcd", sOrdDeptCd);
-
- getRareAppInfo(); // 신청서 정보 조회
-
- setRgstKind(); // 등록 구분정보 설정
- }
- function getRareAppInfo() { // 신청서 정보 조회
- var oParam = {};
- oParam.id = "TRMMO11507";
- oParam.service = "prcpmngtapp.EtcPrcpMngt";
- oParam.method = "reqGetRareDiagRegInfo";
- oParam.inds = "req=ds_main_cond";
- oParam.outds = "ds_rarediagappinfo=rarediagappinfo ds_diagappmthinfo=diagappmthinfo ds_hidden_items=chkitemlist";
- oParam.async = false;
- tranf_submit(oParam);
-
- cap_insukindnm.text = ds_rarediagappinfo.getColumn(0,"insukindnm");
- if(!utlf_isNull(ds_rarediagappinfo.getColumn(0,"genrno"))){ // 기존에 등록된 신청서
- combo00.enable = false; //신청서 구분 비활성화
- Button03.visible = false; //진단검색
- btn_save.visible = false; //저장
- btn_del.visible = true; //삭제
- btn_upt.visible = true; //수정
-
- if(utlf_isNull(ds_diagappmthinfo.getColumn(0,"mth0911"))) { // 기타검사항목
- com_etc1.index = 0;
- }
-
- sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm")+" 등록신청서가 이미 존재합니다.", "I" );
-
- var cnt = ds_hidden_items.rowcount;
- if (cnt == 1 ) { // 등록 필수 검사 항목이 1건이면
- setEssentialTest(0); // 필수검사 항목 설정
- } else {
- fDiagMthEnable(true);
- }
- } else { // 신규작성
- ds_rarediagappinfo.setColumn(0,"status","I");
- com_etc1.index = 0;
-
- combo00.enable = true; //신청서 구분 활성화
- Button03.visible = true; //진단검색
- btn_save.visible = true; //저장
- btn_del.visible = false; //삭제
- btn_upt.visible = false; //수정
- var cnt = ds_hidden_items.rowcount;
- if (cnt == 1 ) { // 등록 필수 검사 항목이 1건이면
- setEssentialTest(0); // 필수검사 항목 설정
-
- } else if (cnt > 1 ) { // 한건이상이면
- fDiagMthEnable(false);
-
- btn_upt.enable = false;
- btn_del.enable = false;
- btn_save.enable = false;
- btn_exit.enable = false;
-
- caption24.visible = true;
- } else {
- fDiagMthEnable(true);
- }
- }
- }
- function setEssentialTest(nRow) {
- var sRgstKindCd = ds_rarediagappinfo.getColumn(0,"rgstkindcd");
- if(sRgstKindCd == "07") {
- ds_rarediagappinfo.setColumn(0, "appspclcd", "V900"); // 극희귀
- } else if(sRgstKindCd == "08") {
- ds_rarediagappinfo.setColumn(0, "appspclcd", "V999"); // 상세불명
- } else if(sRgstKindCd == "09") {
- ds_rarediagappinfo.setColumn(0, "appspclcd", "V000"); // 본인부담제외 결핵
- } else {
- ds_rarediagappinfo.setColumn(0, "appspclcd", ds_hidden_items.getColumn(nRow,"spclcd"));
- }
- ds_rarediagappinfo.setColumn(0, "appdiagcd", ds_hidden_items.getColumn(nRow, "diagcd"));
- ds_rarediagappinfo.setColumn(0, "appdiagseq", ds_hidden_items.getColumn(nRow, "seq"));
-
- var test1 = ds_hidden_items.getColumn(nRow,"test1");
- var test2 = ds_hidden_items.getColumn(nRow,"test2");
- var test3 = ds_hidden_items.getColumn(nRow,"test3");
- var test4 = ds_hidden_items.getColumn(nRow,"test4");
- var test5 = ds_hidden_items.getColumn(nRow,"test5");
- var test6 = ds_hidden_items.getColumn(nRow,"test6");
-
- if (test1 =="Y" ) {
- bool_sono.enable = true;
- bool_ct.enable = true;
- bool_mri.enable = true;
- bool_etc.enable = true;
- } else {
- bool_sono.enable = false;
- bool_ct.enable = false;
- bool_mri.enable = false;
- bool_etc.enable = false;
- }
-
- if (test2 == "Y") {
- bool_item2.enable = true;
- } else {
- bool_item2.enable = false;
- }
-
- if (test3 == "Y") {
- bool_item3.enable = true;
- } else {
- bool_item3.enable = false;
- }
-
- if (test4 == "Y") {
- bool_item4.enable = true;
- } else {
- bool_item4.enable = false;
- }
-
- com_etc1.index = 0;
-
- bool_item5.enable = true;
- txt_etc2.enable = true;
- com_etc1.enable = true;
- btn_upt.enable = true;
- btn_del.enable = true;
- btn_exit.enable = true;
- btn_save.enable = true;
- caption24.visible = false;
- }
- function fDiagMthEnable(bEnable) {
- bool_sono.enable = bEnable;
- bool_ct.enable = bEnable;
- bool_mri.enable = bEnable;
- bool_etc.enable = bEnable;
- bool_item2.enable = bEnable;
- bool_item3.enable = bEnable;
- bool_item4.enable = bEnable;
- bool_item5.enable = bEnable;
- txt_etc2.enable = bEnable;
- com_etc1.enable = bEnable;
- }
- function setRgstKind() { // 등록구분정보 설정
- var sGenrDd = ds_rarediagappinfo.getColumn(0,"genrdd");
-
- if(sGenrDd < "20190101") {
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","희귀난치", "01", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","중증화상", "02", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","극희귀", "07", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","상세불명", "08", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","결핵", "09", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","중증치매V800", "10", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","중증치매V810", "11", "below");
- } else {
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","중증화상", "02", "below");
- dsf_addDsItem(ds_rgstkind,"cdid","cdnm","결핵", "09", "below");
- }
- }
- /****************************************************************************************
- * Components : Grid
- * Components ID : grd_diaglist
- * Event : oncelldblclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 등록기준 및 필수검사 그리드 더블클릭
- ****************************************************************************************/
- function grd_diaglist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- ds_diagappmthinfo.clearData();
- ds_diagappmthinfo.addRow();
-
- var nRow = e.row;
- setEssentialTest(nRow);
- }
- /****************************************************************************************
- * Components : Edit
- * Components ID : ipt_etc1
- * Event : onkeydown
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 기타 입력란 입력시
- ****************************************************************************************/
- function ipt_etc1_onkeydown(obj:Edit, e:KeyEventInfo)
- {
- if(e.keycode != 8 && e.keycode != 46 && e.keycode != 35 && e.keycode != 36
- && e.keycode != 16 && e.keycode != 17
- && !(e.keycode >= 37 && e.keycode <= 40)) { // 백스페이스, delete,화살표, home, end 키는 이벤트제외.
- var yy1 = utlf_transNullToEmpty(ipt_etc1.text);
- var xx1 = 0;
- for(var i = 0 ; i < yy1.length; i++ ) {
- (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1;
- }
- if(xx1 > 40) {
- sysf_messageBox("최대 한글 20자, 영어 40자 까지만 입력할 수 있습니다.", "I");
- return;
- }
- }
- }
- /****************************************************************************************
- * Components : TextArea
- * Components ID : txt_etc2
- * Event : onkeydown
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 5번항목 기재내역 입력시
- ****************************************************************************************/
- function txt_etc2_onkeydown(obj:TextArea, e:KeyEventInfo)
- {
- if ( e.keycode != 8 && e.keycode != 46 && e.keycode != 35 && e.keycode != 36
- && e.keycode != 16 && e.keycode != 17
- && !(e.keycode >= 37 && e.keycode <= 40) ) { // 백스페이스, delete,화살표, home, end 키는 이벤트제외.
- var yy1 = utlf_transNullToEmpty(txt_etc2.text);
- var xx1 = 0;
- for(var i=0 ; i < yy1.length ; i++) {
- (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1;
- }
- if ( xx1 > 80) {
- sysf_messageBox("최대 한글 40자, 영어 80자 까지만 입력할 수 있습니다.", "I");
- return;
- }
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : button1
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 예외환자 버튼 클릭
- ****************************************************************************************/
- function button1_onclick(obj:Button, e:ClickEventInfo)
- {
- frmf_modal("SPMMO09500", "SPMMO09500", "", "", "", "", "", "", "", "", "", "", "M");
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_upt
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 수정 버튼 클릭
- ****************************************************************************************/
- function btn_upt_onclick(obj:Button, e:ClickEventInfo)
- {
- var cncrdiagcnfmdd = ds_rarediagappinfo.getColumn(0,"cncrdiagcnfmdd");
- if (!utlf_isValidDateTime(cncrdiagcnfmdd, "YYYYMMDD")) {
- sysf_messageBox("진단 확인일은", "I003");
- return;
- }
-
- if(cncrdiagcnfmdd > utlf_getCurrentDate() ) {
- sysf_messageBox("진단 확인일을 미래일자로 입력 할 수 없습니다.", "I999");
- return;
- }
-
- if(cncrdiagcnfmdd < ((utlf_getCurrentDate().toDate()).getAddDate(-1,"M")).getDateFormat() ) {
- sysf_messageBox("진단 확인일을 최근 1달이내의 날짜로 입력 하셔야 합니다.", "I999");
- return;
- }
-
- var yy1 = utlf_transNullToEmpty(ipt_etc1.value);
- var yy2 = utlf_transNullToEmpty(txt_etc2.value);
-
- var xx1 = 0;
- for(var i=0; i < yy1.length; i++) { (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1; }
- var xx2 = 0;
- for(var i=0; i < yy2.length; i++) { (yy2.charCodeAt(i) > 255) ? xx2 += 2 : xx2 += 1; }
- if (bool_etc.value == true) {
- if (utlf_isNull(ipt_etc1.value)) {
- sysf_messageBox("1번의 기타항목을 선택하였으므로 해당 내용을","C001");
- return;
- } else if ( xx1 < 5 || xx1 > 40 ) {
- sysf_messageBox("1번 기타항목의 내용은 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 까지 입니다.","I");
- return;
- }
- }
- if (bool_item5.value == true) {
- if (utlf_isNull(txt_etc2.value)) {
- sysf_messageBox("5번 항목을 선택하였으므로 해당 내용을","C001");
- return;
- } else if ( xx2 < 10 || xx2 > 80 ) {
- sysf_messageBox("5번 기타항목의 내용은 최소 : 한글 5자, 영어 10자 최대 : 한글 40자, 영어 80자 까지 입니다.","I");
- return;
- }
- }
- if((ds_rarediagappinfo.getColumn(0,"orddeptcd") == sysf_getUserInfo("dutplcecd")) && (sysf_getUserInfo("jobkindcd") == "0330") && (sysf_getUserInfo("jobposcd") != "1799")){ // 0330 : 의사, 1799 : 인턴
- var oParam = {};
- oParam.id = "TXMMO12205";
- oParam.service = "prcpmngtapp.EtcPrcpMngt";
- oParam.method = "reqExeUpdateRareDiagApp";
- oParam.inds = "rarediagappinfo=ds_rarediagappinfo diagappmthinfo=ds_diagappmthinfo";
- oParam.async = false;
- var bSaved = tranf_submit(oParam);
-
- if(bSaved) {
- var curOpenObj = frmf_findPopup("SPMMO21700"); //활성화된 산정특례 오픈 화면 object loading
- if(!utlf_isNull(curOpenObj)) curOpenObj.fReqGetOrdList();
-
- sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록 신청서가 수정","I001");
- this.close();
- } else {
- sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록 신청서 수정을 ","E009");
- }
- } else {
- sysf_messageBox("수정할 수 있는 ","E002");
- btn_save.visible = false; //저장
- btn_del.visible = false; //삭제
- btn_upt.visible = false; //수정
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_del
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 삭제 버튼 클릭
- ****************************************************************************************/
- function btn_del_onclick(obj:Button, e:ClickEventInfo)
- {
- if((ds_rarediagappinfo.getColumn(0,"orddeptcd") == sysf_getUserInfo("dutplcecd")) && (sysf_getUserInfo("jobkindcd") == "0330") && (sysf_getUserInfo("jobposcd") != "1799")){ // 0330 : 의사
- var oParam = {};
- oParam.id = "TXMMO12204";
- oParam.service = "prcpmngtapp.EtcPrcpMngt";
- oParam.method = "reqExeDeleteRareDiagApp";
- oParam.inds = "rarediagappinfo=ds_rarediagappinfo";
- oParam.async = false;
- var bSaved = tranf_submit(oParam);
-
- if(bSaved) {
- var curOpenObj = frmf_findPopup("SPMMO21700"); //활성화된 산정특례 오픈 화면 object loading
- if(!utlf_isNull(curOpenObj)) curOpenObj.fReqGetOrdList();
-
- sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록신청서가 삭제","I001");
- this.close();
- }else{
- sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록신청서 삭제를 ","E009");
- }
- } else {
- sysf_messageBox("삭제할 수 있는 ","E002");
- btn_save.visible = false; //저장
- btn_del.visible = false; //삭제
- btn_upt.visible = false; //수정
- this.close();
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_save
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 저장 버튼 클릭
- ****************************************************************************************/
- function btn_save_onclick(obj:Button, e:ClickEventInfo)
- {
- if((sysf_getUserInfo("jobkindcd") != "0330")){ // 0330 : 의사
- sysf_messageBox("의사만 저장 가능 합니다.", "I003");
- return;
- }
-
- var cncrdiagcnfmdd = ds_rarediagappinfo.getColumn(0,"cncrdiagcnfmdd");
- if (!utlf_isValidDateTime(cncrdiagcnfmdd, "YYYYMMDD")) {
- sysf_messageBox("진단 확인일은", "I003");
- return;
- }
-
- // 허만호, 2015.07.28 소스 현행화 s
- if(cncrdiagcnfmdd > utlf_getCurrentDate() ) {
- sysf_messageBox("진단 확인일을 미래일자로 입력 할 수 없습니다.", "I999");
- return;
- }
-
- if(cncrdiagcnfmdd < ((utlf_getCurrentDate().toDate()).getAddDate(-1,"M")).getDateFormat() ) {
- sysf_messageBox("진단 확인일을 최근 1달이내의 날짜로 입력 하셔야 합니다.", "I999");
- return;
- }
- // 허만호, 2015.07.28 소스 현행화 e
-
- var yy1 = utlf_transNullToEmpty(ipt_etc1.value);
- var yy2 = utlf_transNullToEmpty(txt_etc2.value);
-
- var xx1 = 0;
- for(var i=0; i < yy1.length; i++) { (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1; }
- var xx2 = 0;
- for(var i=0; i < yy2.length; i++) { (yy2.charCodeAt(i) > 255) ? xx2 += 2 : xx2 += 1; }
- if (bool_etc.value == true) {
- if (utlf_isNull(ipt_etc1.value)) {
- sysf_messageBox("1번의 기타항목을 선택하였으므로 해당 내용을","C001");
- return;
- } else if ( xx1 < 5 || xx1 > 40 ) {
- sysf_messageBox("1번 기타항목의 내용은 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 까지 입니다.","I");
- return;
- }
- }
- if (bool_item5.value == true) {
- if ( utlf_isNull(txt_etc2.value)) {
- sysf_messageBox("5번 항목을 선택하였으므로 해당 내용을","C001");
- return;
- } else if ( xx2 < 10 || xx2 > 80 ) {
- sysf_messageBox("5번 기타항목의 내용은 최소 : 한글 5자, 영어 10자 최대 : 한글 40자, 영어 80자 까지 입니다.","I");
- return;
- }
- }
- var oParam = {};
- oParam.id = "TXMMO20001";
- oParam.service = "prcpmngtapp.EtcPrcpMngt";
- oParam.method = "reqExeSaveRareDiagApp";
- oParam.inds = "rarediagappinfo=ds_rarediagappinfo diagappmthinfo=ds_diagappmthinfo";
- oParam.async = false;
- var bSaved = tranf_submit(oParam);
- if(bSaved){
- var curOpenObj = frmf_findPopup("SPMMO21700"); //활성화된 산정특례 오픈 화면 object loading
- if(!utlf_isNull(curOpenObj)) curOpenObj.fReqGetOrdList();
- if(frmf_checkOpener()) opener.frmf_setParameter("SPMMO20000_save", "Y"); // 처방 저장시 작성 여부를 체크 하기 위해 추가. 2012.02.28 엄영만
-
- this.close();
- } else {
- sysf_messageBox("저장", "E009");
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_exit
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 종료 버튼 클릭
- ****************************************************************************************/
- function btn_exit_onclick(obj:Button, e:ClickEventInfo)
- {
- this.close();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- var nAmount = 0;
- function grd_diaglist_onmousewheel(obj:Grid, e:MouseWheelEventInfo)
- {
- nAmount = obj.vscrollbar.pos;
- }
- function grd_diaglist_onvscroll(obj:Grid, e:ScrollEventInfo)
- {
- if( e.type == "wheeldown" || e.type == "linedown"){
- nAmount += 100;
- obj.vscrollbar.pos = nAmount;
- }else if(e.type == "wheelup" || e.type == "lineup"){
- nAmount -= 100;
- obj.vscrollbar.pos = nAmount;
- }else if( e.type == "track" ){
- nAmount = obj.vscrollbar.pos;
- }
- }
- function Button03_onclick(obj:Button, e:ClickEventInfo)
- {
- lf_prcpModal ("SPMMO03100", 5, 40);
- if ( frmf_getParameter( "SPMMO03100_rtn_useyn" ) == "Y" ) {
- var sDiagInfo = frmf_getParameter("SPMMO03100_rtn");
- var nDiagRow = sDiagInfo.split ( "▩" ).length;
- for ( var i = 0; i < nDiagRow - 1; i++ ) {
- var sIcd10Cd = lf_getArrayData ( sDiagInfo, i, 8, "▩", "▦" );
- var sDiagCd = lf_getArrayData ( sDiagInfo, i, 9, "▩", "▦" );
- ds_rarediagappinfo.setColumn(0,"icd10cd", sIcd10Cd); //진단코드
- ds_rarediagappinfo.setColumn(0,"maindiagcd", sDiagCd); //진단코드
- break;
- }
-
- frmf_setParameter( "SPMMO03100_rtn_useyn", "" );
-
- ds_main_cond.setColumn(0,"rgstkindcd", ds_rarediagappinfo.getColumn(0, "rgstkindcd"));
- ds_main_cond.setColumn(0,"icd10cd", ds_rarediagappinfo.getColumn(0, "icd10cd"));
- ds_main_cond.setColumn(0,"diagcd", ds_rarediagappinfo.getColumn(0, "maindiagcd"));
-
- getRareAppInfo(); // 신청서 정보 조회
- }
- }
- function combo00_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
- {
- ds_main_cond.setColumn(0,"rgstkindcd", ds_rarediagappinfo.getColumn(0, "rgstkindcd"));
- getRareAppInfo(); // 신청서 정보 조회
- }
- function bool_etc_onclick(obj:CheckBox, e:ClickEventInfo)
- {
- if (obj.value == true) {
- ipt_etc1.enable = true;
- } else {
- ds_diagappmthinfo.setColumn(0,"mth0405","");
- ipt_etc1.enable = false;
- }
- }
- function bool_item5_onclick(obj:CheckBox, e:ClickEventInfo)
- {
- if (obj.value == true) {
- txt_etc2.enable = true;
- } else {
- ds_diagappmthinfo.setColumn(0,"mth0810","");
- txt_etc2.enable = false;
- }
- }
- ]]></Script>
- </Form>
- </FDL>
|