123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435 |
- <?xml version="1.0" encoding="UTF-8"?>
- <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
- <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
- <xhtml:head>
- <xhtml:title>기초 임상정보</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <main>
- <cond>
- <chkinfo>B</chkinfo>
- <itemnm/>
- <alertcdflag/>
- </cond>
- <codeinfo>
- <codelist/>
- </codeinfo>
- <selectitemlnfo>
- <selectitemlist>
- </selectitemlist>
- </selectitemlnfo>
- </main>
- <send>
- <reqdata/>
- </send>
- <init/>
- </root>
- </instance>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- var openflag = opener.model.getValue("/root/main/cond/condbutton");
- var alertcdflag = opener.model.getValue("/root/main/cond/alertcdflag");
- model.removeNodeset("/root/main/codeinfo/codelist");
- model.removeNodeset("/root/main/selectitemlnfo/selectitemlist");
- model.setValue("/root/main/cond/alertcdflag", alertcdflag);
- btn_srch.dispatch("DOMActivate");
-
- model.refresh();
- ]]>
- </script>
- <submission id="TRMMD06301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/codeinfo"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
- <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
- <script type="javascript" src="../../../emr/cpgweb/js/MMPCommon.js"/>
- <script type="javascript">
- <![CDATA[
- var openflag =""
- /**
- * @desc : 단일 진단코드 선택, 그리드 클릭
- * @
- * @param : trgtrow - 현재 클릭한 그리드의 row 위치
- * @return :
- * @---------------------------------------------------
- */
- function fAddDiag(trgtrow){
- var supcd = model.getValue("/root/main/codeinfo/codelist[" + trgtrow + "]/supcd");
- var itemcd = model.getValue("/root/main/codeinfo/codelist[" + trgtrow + "]/itemcd");
- var itemnm = model.getValue("/root/main/codeinfo/codelist[" + trgtrow + "]/itemnm");
- var unitnm = model.getValue("/root/main/codeinfo/codelist[" + trgtrow + "]/unitnm");
- if (isNull(unitnm)) unitnm = "-";
- var fndrow = grd_selectitemlist.findRow(itemcd, 1, 0, "true", "true");
- if(fndrow < 0){
- grd_selectitemlist.addRow(false);
- currow = grd_selectitemlist.row;
- model.makeValue("/root/main/selectitemlnfo/selectitemlist[" + currow + "]/testitemcd" , supcd);
- model.makeValue("/root/main/selectitemlnfo/selectitemlist[" + currow + "]/testcd" , itemcd);
- model.makeValue("/root/main/selectitemlnfo/selectitemlist[" + currow + "]/testnm" , itemnm);
- model.makeValue("/root/main/selectitemlnfo/selectitemlist[" + currow + "]/unitnm" , unitnm);
- model.makeValue("/root/main/selectitemlnfo/selectitemlist[" + currow + "]/lvalappflag" , "U");
- model.makeValue("/root/main/selectitemlnfo/selectitemlist[" + currow + "]/hvalappflag" , "D");
- }
- model.refresh();
- }
-
- /**
- * @desc : 다수의 진단코드 선택 후, 진단추가버튼 클릭
- * @ : 1. check box에 선택된 진단을 추가
- * @ : 2. ctrl + mouse select로 선택된 진단을 추가
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAppendDiagCD(){
- var totrow = grd_baselist.rows;
- for(var i = 1; i < totrow; i++){
- var bflag = grd_baselist.valueMatrix(i, grd_baselist.colRef("boolflag"));
- if(bflag == "Y"){
- fAddDiag(i);
- grd_baselist.valueMatrix(i, grd_baselist.colRef("boolflag")) = "N"; //복사한 진단은 check box의 값을 해체
- }
- }
- grd_selectitemlist.rebuild();
- }
-
- /**
- * @desc : 진단코드리스트 전달
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSendItemCDList(){
- if(checkOpener()){
- var condbutton = opener.model.getValue("/root/main/cond/condbutton");
- var alertcdflag = opener.model.getValue("/root/main/cond/alertcdflag");
- if (condbutton == "IF") {
- var sRows = grd_selectitemlist.rows;
- /*if (sRows > 2) {
- messageBox("조건은 하나만 선택", "I006");
- return;
- } else {*/
- var testnm = model.getValue("/root/main/selectitemlnfo/selectitemlist/testnm");
- var testitemcd = model.getValue("/root/main/selectitemlnfo/selectitemlist/testitemcd");
- var testcd = model.getValue("/root/main/selectitemlnfo/selectitemlist/testcd");
- var refhval = model.getValue("/root/main/selectitemlnfo/selectitemlist/refhval");
- var reflval = model.getValue("/root/main/selectitemlnfo/selectitemlist/reflval");
- var alertrem = testnm + " :" + reflval + "~" + refhval;
-
- var hvalappflag = model.getValue("/root/main/selectitemlnfo/selectitemlist/hvalappflag");
- var lvalappflag = model.getValue("/root/main/selectitemlnfo/selectitemlist/lvalappflag");
- var unitnm = model.getValue("/root/main/selectitemlnfo/selectitemlist/unitnm");
- var alertprecondyn = "Y";
-
- var rtn = "testitemcd▦testcd▦testnm▦hvalappflag▦lvalappflag▦refhval▦reflval▦unitnm▦refseq▦alertcdflag▦alertrem▦alertprecondyn▦checkyn▦m" ;
- rtn += "▩" + testitemcd + "▦" + testcd + "▦" + testnm + "▦" + hvalappflag + "▦" + lvalappflag+ "▦" + refhval + "▦" + reflval + "▦" + unitnm + "▦" + "▦" + alertcdflag + "▦" + alertrem + "▦" + alertprecondyn + "▦" + "▦";
- opener.javascript.setParameter( "SPMMD06100_detlinfo", rtn );
- //}
-
- } else {
- if ( grd_selectitemlist.rows < "1" ) {
- messageBox ( "선택된 처방이", "I004" );
- }
-
- //var rtn1 = getItemNodeListCSV ( model.instances(0).selectNodes( "/root/main/selectitemlnfo/selectitemlist" ));
- var rtn = "testitemcd▦testcd▦testnm▦hvalappflag▦lvalappflag▦refhval▦reflval▦unitnm▦refseq▦alertcdflag▦alertrem▦alertprecondyn▦checkyn▦m" ;
- var Select_Path ="/root/main/selectitemlnfo/selectitemlist"
-
- for (i = 1; i < grd_selectitemlist.rows; i ++) {
- var testitemcd = model.getValue(Select_Path + "[" + i + "]/testitemcd");
- var testcd = model.getValue(Select_Path + "[" + i + "]/testcd");
- var testnm = model.getValue(Select_Path + "[" + i + "]/testnm");
- var hvalappflag = model.getValue(Select_Path + "[" + i + "]/hvalappflag");
- var lvalappflag = model.getValue(Select_Path + "[" + i + "]/lvalappflag");
- var refhval = model.getValue(Select_Path + "[" + i + "]/refhval");
- var reflval = model.getValue(Select_Path + "[" + i + "]/reflval");
- var unitnm = model.getValue(Select_Path + "[" + i + "]/unitnm");
- var refseq = model.getValue(Select_Path + "[" + i + "]/refseq");
- var alertrem = model.getValue(Select_Path + "[" + i + "]/alertrem");
- var alertprecondyn = "N"
- var checkyn = model.getValue(Select_Path + "[" + i + "]/checkyn");
- var m = model.getValue(Select_Path + "[" + i + "]/m");
-
- rtn += "▩" + testitemcd + "▦" + testcd + "▦" + testnm + "▦" + hvalappflag + "▦" + lvalappflag+ "▦" + refhval + "▦" + reflval + "▦" + unitnm + "▦" + "▦" + alertcdflag + "▦" + alertrem + "▦" + alertprecondyn + "▦" + "▦";
- }
- opener.javascript.setParameter( "SPMMD06100_detlinfo", rtn );
- }
- window.close();
- }
- }
-
- /**
- * @desc : 진단코드 전달
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSendDiag(currow){
- if(checkOpener()){
- var nodelist = model.instance1.selectNodes("/root/main/selectiteminfo/selectitemlist[" + currow + "]");
- var node = nodelist.item(0);
- var nodepath = opener.javascript.getParameter("SPMQP00300_param_nodepath");
-
- if(nodepath == ""){ //opener의 특정 nodepath를 넘겨주지 않은 경우
- var selectnode = opener.instance1.selectSingleNode("/root/temp/selectitemlist");
- if(selectnode == null){ //opener에 node를 만든다.
- opener.model.makeNode("/root/temp/selectitemlist");
- }
- model.copyNode(opener.root.temp.selectitemlist, node);
-
- }else{ //opener의 특정 nodepath를 넘겨준 경우
- var selectnode = opener.instance1.selectSingleNode(nodepath);
- if(selectnode == null){ //opener에 node를 만든다.
- opener.model.makeNode(nodepath);
- }
- opener.model.copyNode(nodepath, node); //opener에 복사
- }
- opener.javascript.setParameter("SPMQP00300_rtn_useyn", "Y");
-
- }else{
- messageBox("상위 화면이 변경되어 데이터를 전달", "E001");
-
- }
- window.close();
- }
-
- function getItemNodeListCSV(nodeList) {
- if( nodeList.length == 0 ){
- return;
- }
-
- var sColSep = "▦";
- var sRowSep = "▩";
-
- var rCSV = "";
-
- var childNodeList = nodeList.item(0).childNodes;
- var childNodeCnt = childNodeList.length;
- if( childNodeCnt == 0 ){
- return;
- }
-
- var i, j;
- for( i = 0; i < childNodeCnt - 1; i++) {
- rCSV += childNodeList.item(i).nodeName + sColSep;
- }
- rCSV += childNodeList.item(i).nodeName// + sRowSep;
-
- var node;
- var cnt = 1;
- var selCnt = 0;
- while( node = nodeList.nextNode() ) {
- rCSV += sRowSep;
- childNodeList = node.childNodes;
- for( i = 0; i < childNodeCnt - 1; i++) {
- rCSV += childNodeList.item(i).text + sColSep;
- }
- rCSV += childNodeList.item(i).text;
- selCnt++;
- }
- if ( selCnt == 0 ) {
- return "N"
- } else {
- return rCSV;
- }
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="400" pageheight="662" guideline="1,399;2,662;">
- <shape id="roundrect3" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:0px; top:15px; width:393px; height:40px; "/>
- <line id="line15" class="line_1" style="x1:0px; y1:57px; x2:390px; y2:57px; "/>
- <group id="grp_btn" style="left:0px; top:626px; width:390px; height:30px; ">
- <button id="button7" class="btn4_letter2" disable.background-image="../../../com/commonweb/images/dis_btn4_letter2.gif" style="left:274px; top:4px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
- <caption>등록</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fSendItemCDList();
- ]]>
- </script>
- </button>
- <button id="button3" class="btn4_letter2" disable.background-image="../../../com/commonweb/images/dis_btn4_letter2.gif" style="left:332px; top:4px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
- <caption>닫기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- window.close();
- ]]>
- </script>
- </button>
- </group>
- <datagrid id="grd_selectitemlist" nodeset="/root/main/selectitemlnfo/selectitemlist" caption="groupcd^itemcd^검사항목^하한치^하한치^상한치^상한치^단위^caption3^caption4^caption5^caption6^caption7^caption8^caption9" colsep="^" colwidth="4, 3, 175, 42, 30, 42, 30, 70, 3, 2, 3, 3, 6, 2" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:480px; width:390px; height:144px; ">
- <col ref="testitemcd" visibility="hidden"/>
- <col ref="testcd" visibility="hidden"/>
- <col ref="testnm"/>
- <col ref="reflval" type="input"/>
- <col ref="lvalappflag" type="combo">
- <choices>
- <item>
- <label>이상</label>
- <value>U</value>
- </item>
- <item>
- <label>이하</label>
- <value>D</value>
- </item>
- <item>
- <label/>
- <value>N</value>
- </item>
- </choices>
- </col>
- <col ref="refhval" type="input"/>
- <col ref="hvalappflag" type="combo">
- <choices>
- <item>
- <label>이상</label>
- <value>U</value>
- </item>
- <item>
- <label>이하</label>
- <value>D</value>
- </item>
- <item>
- <label/>
- <value>N</value>
- </item>
- </choices>
- </col>
- <col ref="unitnm"/>
- <col ref="refseq" visibility="hidden"/>
- <col ref="alertcdflag" visibility="hidden"/>
- <col ref="alertrem" visibility="hidden"/>
- <col ref="alertprecondyn" visibility="hidden"/>
- <col ref="checkyn" visibility="hidden"/>
- <col ref="m" visibility="hidden"/>
- <!--
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if(isDataCell()){
- fSendDiag(grd_selectitemlist.row);
- }
- ]]>
- </script>
- -->
- </datagrid>
- <button id="btn_srch" class="btn1_letter2" disable.background-image="../../../com/commonweb/images/dis_btn4_letter2.gif" style="left:330px; top:25px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
- <caption>조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.copyNode("/root/send/reqdata", "/root/main/cond");
- submit("TRMMD06301");
- setTree(grd_baselist, grd_baselist.colRef("depth"), grd_baselist.colRef("itemnm"), false);
- model.refresh();
- ]]>
- </script>
- </button>
- <caption id="caption4" class="search_name" style="left:3px; top:26px; width:90px; height:17px; ">검사항목 :</caption>
- <caption id="caption5" class="tit_2" style="left:4px; top:459px; width:142px; height:13px; ">선택 기초 임상정보</caption>
- <input id="input3" ref="/root/main/cond/itemnm" style="left:93px; top:26px; width:227px; height:19px; ">
- <script type="javascript" ev:event="onkeyup">
- <![CDATA[
- if(event.keyCode == "13") {
- inputEnterKey("btn_srch", "DOMActivate");
- }
- ]]>
- </script>
- </input>
- <button id="button6" class="btn2_letter4" disable.background-image="../../../com/commonweb/images/dis_btn2_letter2.gif" style="left:282px; top:455px; width:64px; height:19px; background-image:../../../com/commonweb/images/btn2_letter2.gif; ">
- <caption>항목추가</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fAppendDiagCD();
- ]]>
- </script>
- </button>
- <datagrid id="grd_baselist" nodeset="/root/main/codeinfo/codelist" caption="선택^검사항목^depth^itemcd^refseq^단위" colsep="^" colwidth="32, 339, 10, 7, 9, 8" dataheight="25" defaultrows="0" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="32" rowsep="|" tooltip="true" style="left:0px; top:63px; width:390px; height:390px; ">
- <col checkvalue="Y,N" ref="boolflag" type="checkbox"/>
- <col ref="itemnm"/>
- <col ref="itemcd" visibility="hidden"/>
- <col ref="depth" visibility="hidden"/>
- <col ref="refseq" visibility="hidden"/>
- <col ref="unitnm" visibility="hidden"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if (isDataCell() == true ) {
- var currow = grd_baselist.row;
- if(currow > 0){
- var depth = model.getValue("/root/main/codeinfo/codelist[" + currow + "]/depth");
- if (depth !="1") {
- fAddDiag(currow);
- }
- }
- }
- model.refresh();
- ]]>
- </script>
- <script type="javascript" ev:event="onclick">
- <![CDATA[
- if (isDataCell() == true ) {
- var grdcol = grd_baselist.col
- var currow = grd_baselist.row
- var rows = grd_baselist.rows
- var grdrow = rows - currow;
- var rowno = rows - 1;
- if (grdcol == "0") {
- var boolflag = model.getValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag");
- if (boolflag == "N" ) {
- model.setValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag", "N");
- } else {
- model.setValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag", "Y");
- }
- var depth = model.getValue("/root/main/codeinfo/codelist[" + currow + "]/depth");
- if (depth == "1") {
- if (boolflag =="Y") model.setValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag", "N");
- for (i = 0 ; i < grdrow ; i ++ ) {
- currow = currow + 1;
- depth = model.getValue("/root/main/codeinfo/codelist[" + currow + "]/depth");
- if (depth != "1") {
- if (currow <= rowno) {
- var boolflag = model.getValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag")
- if (boolflag == "Y") {
- model.setValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag", "N");
- } else {
- model.setValue("/root/main/codeinfo/codelist[" + currow + "]/boolflag", "Y");
- }
- }
- } else if (depth == "1") {
- return;
- }
- }
- }
- }
- }
- model.refresh();
- ]]>
- </script>
- </datagrid>
- <caption id="caption14" class="tit_2" style="left:0px; top:0px; width:142px; height:13px; ">기초 임상정보</caption>
- <line id="line1" class="line_1" style="x1:0px; y1:475px; x2:391px; y2:475px; "/>
- <button id="button1" class="btn2_letter2" disable.background-image="../../../com/commonweb/images/dis_btn2_letter2.gif" style="left:348px; top:455px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn2_letter2.gif; ">
- <caption>삭제</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var selectedRowList = grd_selectitemlist.selectedRows;
-
- if( selectedRowList > 0 ){
- for (var i=selectedRowList-1; i>=0; i--) {
- model.removeNodeset("/root/main/selectitemlnfo/selectitemlist[" + grd_selectitemlist.selectedrow(i) + "]");
- }
-
- grd_selectitemlist.refresh();
- }
- ]]>
- </script>
- </button>
- </xhtml:body>
- </xhtml:html>
|