SMMNH03300_pop통증사정도구 VAS입력및조회.xrw 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <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">
  4. <xhtml:head>
  5. <!-- 2007.12.11 VAS와 KPS 둘 다 사용하는 팝업임.-->
  6. <xhtml:title>VAS/KPS추가 입력 및 조회</xhtml:title>
  7. <model id="model1">
  8. <instance id="instance1">
  9. <root xmlns="">
  10. <main>
  11. <vash>
  12. <vashlist>
  13. <status/>
  14. <recdt/>
  15. <vasrslt/>
  16. <rgstrid/>
  17. <staiud/>
  18. <recdd/>
  19. <rectm/>
  20. <userid/>
  21. <usernm/>
  22. </vashlist>
  23. </vash>
  24. </main>
  25. <send/>
  26. <temp>
  27. <recdt/>
  28. </temp>
  29. </root>
  30. </instance>
  31. <submission id="TRMNH03301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/vashlist"/>
  32. <submission id="TRMNH03302" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  33. <submission id="TRMNH03303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  34. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  35. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  36. <script type="javascript" src="../../../emr/agonalcareweb/js/SMMNH03300.js"/>
  37. <script type="javascript" ev:event="xforms-ready">
  38. <![CDATA[
  39. fInit();
  40. ]]>
  41. </script>
  42. </model>
  43. <script type="javascript">
  44. <![CDATA[
  45. //팝업
  46. var pid = opener.window.javascript.getParameter("pid");
  47. var cretdd = opener.window.javascript.getParameter("cretdd");
  48. var crettm = opener.window.javascript.getParameter("crettm");
  49. var recitemcd = opener.window.javascript.getParameter("recitemcd");
  50. var recdd = opener.window.javascript.getParameter("recdd");
  51. var vas_row = opener.window.javascript.getParameter("vas_row");
  52. var vas_col = opener.window.javascript.getParameter("vas_col");
  53. var vashval = opener.window.javascript.getParameter("vashval");
  54. var spid = opener.window.javascript.getParameter("spid");
  55. var popGbn = opener.window.javascript.getParameter("popGbn");//KPS와 VAS를 구분하는 구분자
  56. if((vashval =="" )||(vashval==null)){
  57. vashval = "I";
  58. }else{
  59. vashval = "U";
  60. }
  61. var rectm;
  62. ]]>
  63. </script>
  64. </xhtml:head>
  65. <xhtml:body pagewidth="500" pageheight="610" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  66. <group id="grp_biz" scroll="auto" style="left:5px; top:5px; width:478px; height:585px; ">
  67. <caption id="caption2" class="cell_1" style="left:160px; top:2px; width:58px; height:23px; text-align:center; vertical-align:middle; ">입력시간</caption>
  68. <datagrid id="grd_vashlist" nodeset="/root/main/vash/vashlist" caption="^입력일시^test^입력자" colsep="^" colwidth="25, 150, 112, 150, 0,0,0,0" defaultrows="1" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:0px; top:67px; width:476px; height:516px; ">
  69. <!-- <col ref="update" style="background-image:../../../com/commonweb/images/icon_n.gif; background-position:center; "/> -->
  70. <col class="update_n" ref="status"/>
  71. <col ref="recdt"/>
  72. <col ref="vasrslt"/>
  73. <col ref="usernm"/>
  74. <col ref="staiud"/>
  75. <col ref="recdd"/>
  76. <col ref="rectm"/>
  77. <col ref="userid"/>
  78. </datagrid>
  79. <caption id="caption1" class="tit_2" style="left:5px; top:10px; width:201px; height:14px; "/>
  80. <button id="button2" class="btn2_letter3" style="left:278px; top:5px; width:53px; height:19px; ">
  81. <caption>행추가</caption>
  82. <script type="javascript" ev:event="DOMActivate">
  83. <![CDATA[
  84. //행추가 버튼을 클릭할 때 입력시간(ipt_recdt)에 입력된 값을 rectm에 넣어준다.
  85. //ipt_recdt에 값이 없으면 현재 날짜,시간을 넣어준다.
  86. var curDate = getCurrentDate();
  87. var inpTime = ipt_recdt.value;
  88. if(inpTime == '' || !isValidDateTime(inpTime, 'hhmm')){
  89. inpTime = getCurrentTime().substring(0, 4);
  90. ipt_recdt.value = inpTime;
  91. }
  92. //그리드 내에 입력되어 있는 데이터의 일시와 입력하려는 일시를 비교하여 입력하려는 일시가 중복되면 리턴
  93. var grdtm;
  94. for(var i = 1; i <= grd_vashlist.rows; i++){
  95. grdtm = model.getValue("/root/main/vash/vashlist[" + i + "]/rectm");
  96. if(grdtm == inpTime){
  97. messageBox("입력시간이 같으면 행을 추가 할수 ","I004");
  98. return;
  99. }
  100. }
  101. //그리드에 보여줄 입력일시를 registddtmStr 임시변수에 저장한다.
  102. var registddtmStr = curDate.substring(0, 4) + '-';
  103. registddtmStr += curDate.substring(4, 6) + '-';
  104. registddtmStr += curDate.substring(6) + ' ';
  105. registddtmStr += inpTime.substring(0, 2) + ':';
  106. registddtmStr += inpTime.substring(2);
  107. //그리드에 첫번째 row에 행추가
  108. grd_vashlist.insertRow(1);
  109. //인스턴스에 값을 세팅한다.
  110. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/recdt", registddtmStr); //입력일시
  111. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/staiud", "insert"); //iud상태값
  112. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/recdd", recdd); //기록일자
  113. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/rectm", inpTime); //기록시간
  114. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/userid", getUserId()); //입력자아이디
  115. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/usernm",getUserName()); //입력자이름
  116. grd_vashlist.cellStyle("background-image", grd_vashlist.row, 1) = "../../../com/commonweb/images/icon_i.gif"; //insert 상태값이미지
  117. model.refresh();
  118. ]]>
  119. </script>
  120. </button>
  121. <button id="button1" class="btn2_letter3" style="left:333px; top:5px; width:53px; height:19px; ">
  122. <caption>행삭제</caption>
  123. <script type="javascript" ev:event="DOMActivate">
  124. <![CDATA[
  125. if(grd_vashlist.row > -1){
  126. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/staiud","delete");
  127. grd_vashlist.cellStyle("background-image", grd_vashlist.row, 1) = "../../../com/commonweb/images/icon_d.gif";
  128. }
  129. ]]>
  130. </script>
  131. </button>
  132. <line id="line1" class="line_1" style="x1:0px; y1:25px; x2:474px; y2:25px; "/>
  133. <button id="btn_clock" class="icon_clock" style="left:260px; top:6px; width:16px; height:16px; ">
  134. <caption/>
  135. <script type="javascript" ev:event="DOMActivate">
  136. <![CDATA[
  137. //현재시간을 입력한다.
  138. var curtime = getCurrentTime().substring(0, 4);
  139. ipt_recdt.value= curtime;
  140. ]]>
  141. </script>
  142. </button>
  143. <input id="ipt_recdt" ref="/root/temp/recdt" class="input_search" maxlength="4" format="hh:nn" style="left:219px; top:4px; width:39px; height:19px; ">
  144. <script type="javascript" ev:event="xforms-value-changed">
  145. <![CDATA[
  146. var recdt = ipt_recdt.value;
  147. if(Number(recdt.substring(0,2)) > 24){
  148. messageBox("시간 입력에","E009");
  149. ipt_recdt.value = "";
  150. model.setFocus("ipt_recdt");
  151. return;
  152. }
  153. if(Number(recdt.substring(2,4)) > 60){
  154. messageBox("분 입력에","E009");
  155. ipt_recdt.value = "";
  156. model.setFocus("ipt_recdt");
  157. return;
  158. }
  159. ]]>
  160. </script>
  161. </input>
  162. <datagrid id="vasval" class="datagrid2" dragmode="true" dropmode="true" scroll="auto" allowselection="false" allowuserresize="false" autoresize="false" autosizemouse="false" caption="0^1^2^3^4^5^6^7^8^9^10" colsep="^" colwidth="43,43,43,43,43,43,43,43,43,43,43" defaultrows="1" rowheader="32" rowheight="32" rowsep="|" selectionmode="free" navindex="17" hover.cursor="hand" down.cursor="hand" style="left:0px; top:30px; width:476px; height:34px; cursor:hand; ">
  163. <col/>
  164. <col/>
  165. <col/>
  166. <col/>
  167. <col/>
  168. <col/>
  169. <col/>
  170. <col/>
  171. <col/>
  172. <col/>
  173. <col/>
  174. <script type="javascript" ev:event="onclick">
  175. <![CDATA[
  176. if(grd_vashlist.row > 0){
  177. grd_vashlist.valueMatrix (grd_vashlist.row,3) = vasval.valueMatrix(0,vasval.col);
  178. var staiud = model.getValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/staiud");
  179. if( (staiud =="insert") || (staiud =="delete") ){
  180. return;
  181. }
  182. model.setValue("/root/main/vash/vashlist["+grd_vashlist.row+"]/staiud","update");
  183. grd_vashlist.cellStyle("background-image", grd_vashlist.row, 1) = "../../../com/commonweb/images/icon_u.gif";
  184. }
  185. ]]>
  186. </script>
  187. </datagrid>
  188. <button id="button3" class="btn5_letter2" style="left:388px; top:5px; width:42px; height:19px; ">
  189. <caption>저장</caption>
  190. <script type="javascript" ev:event="DOMActivate">
  191. <![CDATA[
  192. var xVashPath = "/root/main/vash/vashlist";
  193. if(model.getValue(xVashPath + "["+ 1 + "]/vasrslt" )==""){
  194. messageBox(popGbn + "점수는 필수 입력 사항","E008");
  195. model.setFocus("grd_vashlist");
  196. return;
  197. }
  198. if(messageBox("","Q002") != 6) return;
  199. var sVashData =
  200. "pid" //01등록번호
  201. + "▦cretdd" //02생성일자
  202. + "▦crettm" //03생성시간
  203. + "▦recitemcd" //04기록항목코드
  204. + "▦recdd" //05기록일자
  205. + "▦rectm" //06기록시간
  206. + "▦vasrslt" //07값
  207. + "▦staiud" //08상태
  208. + "▦userid" //09입력자
  209. + "▩" ;
  210. for(i=1; i < grd_vashlist.rows; i++){
  211. sVashData +=
  212. pid //01등록번호
  213. + "▦" + cretdd //02생성일자
  214. + "▦" + crettm //03생성시간
  215. + "▦" + recitemcd //04기록항목코드
  216. + "▦" + recdd //05기록일자
  217. + "▦" + model.getValue(xVashPath + "["+ i + "]/rectm" ) //06기록시간
  218. + "▦" + model.getValue(xVashPath + "["+ i + "]/vasrslt" ) //07값
  219. + "▦" + model.getValue(xVashPath + "["+ i + "]/staiud" ) //08상태
  220. + "▦" + model.getValue(xVashPath + "["+ i + "]/userid" ) //09입력자
  221. + "▩" ;
  222. }
  223. model.removenode("/root/send");
  224. model.makeNode("/root/send");
  225. model.makeValue("/root/send/sVashData" ,sVashData );
  226. submit("TRMNH03302");
  227. model.refresh();
  228. model.removenode("/root/send");
  229. model.makeValue("/root/send/pid",pid);
  230. model.makeValue("/root/send/cretdd",cretdd);
  231. model.makeValue("/root/send/crettm",crettm);
  232. model.makeValue("/root/send/recitemcd", recitemcd);
  233. model.makeValue("/root/send/recdd",recdd);
  234. model.removenodeset("/root/main/vash/vashlist" );
  235. submit("TRMNH03301");
  236. model.removenode("/root/send");
  237. model.makeNode("/root/send");
  238. model.makeValue("/root/send/pid" ,pid );
  239. model.makeValue("/root/send/cretdd" ,cretdd );
  240. model.makeValue("/root/send/crettm" ,crettm );
  241. model.makeValue("/root/send/recitemcd" ,recitemcd );
  242. model.makeValue("/root/send/recdd" ,recdd );
  243. model.makeValue("/root/send/dday" ,model.getValue(xVashPath + "["+ 1 + "]/vasrslt" ) );
  244. model.makeValue("/root/send/userid" ,model.getValue(xVashPath + "["+ 1 + "]/userid" ) );
  245. model.makeValue("/root/send/vashval" ,vashval);
  246. model.makeValue("/root/send/spid" ,spid);
  247. submit("TRMNH03303");
  248. opener.grd_pasmlist.valueMatrix(vas_row,vas_col) = model.getValue(xVashPath + "["+ 1 + "]/vasrslt" );
  249. opener.grd_pasmlist.valueMatrix(vas_row,vas_col+1) = model.getValue(xVashPath + "["+ 1 + "]/vasrslt" );
  250. window.close();
  251. ]]>
  252. </script>
  253. </button>
  254. <button id="button4" class="btn2_letter2" style="left:432px; top:5px; width:42px; height:19px; ">
  255. <caption>닫기</caption>
  256. <script type="javascript" ev:event="DOMActivate">
  257. <![CDATA[
  258. window.close();
  259. ]]>
  260. </script>
  261. </button>
  262. </group>
  263. </xhtml:body>
  264. </xhtml:html>