SPMNV21600_요일별진료실등록.xrw 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339
  1. <?xml version="1.0" encoding="UTF-8"?>
  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. <xhtml:title>요일별 진료실 등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <cond>
  11. <orddeptcd/>
  12. <orddd/>
  13. </cond>
  14. <weekroominfo>
  15. <weekroomlist/>
  16. </weekroominfo>
  17. </main>
  18. <send/>
  19. <init>
  20. <deptcd/>
  21. <subdeptcd/>
  22. </init>
  23. <hidden/>
  24. </root>
  25. </instance>
  26. <submission id="TRZSD00206" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  27. <submission id="TRMNV07001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/cond" resultref="/root/init/subdeptcd"/>
  28. <submission id="TRMNV21601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/cond" resultref="/root/main/weekroominfo"/>
  29. <submission id="TXMNV21601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/weekroominfo"/>
  30. <submission id="TXMNV99999" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/weekroominfo"/>
  31. <script type="javascript" ev:event="xforms-ready">
  32. <![CDATA[
  33. fInit() ;
  34. ]]>
  35. </script>
  36. </model>
  37. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  38. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  39. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  40. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  41. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  42. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  43. <script type="javascript">
  44. <![CDATA[
  45. function fInit() {
  46. var instcd = getUserInfo("dutplceinstcd");
  47. var orddeptcd = getUserInfo("dutplcecd");
  48. base_dd = new Date().getDateFormat("YYYYMMDD");
  49. zsdfGetCareOutOrderDepartmentList(instcd, "/root/init/deptcd", base_dd);
  50. model.setValue("/root/main/cond/orddd",base_dd);
  51. model.setValue("/root/main/cond/orddeptcd", orddeptcd);
  52. grd_weekroom.mergeCells = "bycol";
  53. grd_weekroom.mergecol(0) = false;
  54. grd_weekroom.mergecol(1) = false;
  55. grd_weekroom.mergecol(2) = false;
  56. grd_weekroom.mergecol(3) = true;
  57. grd_weekroom.mergecol(4) = true;
  58. grd_weekroom.mergecol(5) = false;
  59. grd_weekroom.mergecol(6) = false;
  60. grd_weekroom.mergecol(7) = false;
  61. grd_weekroom.mergecol(8) = false;
  62. grd_weekroom.mergecol(9) = false;
  63. grd_weekroom.mergecol(10) = false;
  64. grd_weekroom.mergecol(11) = false;
  65. grd_weekroom.merge();
  66. cmb_orddeptcd.dispatch("xforms-value-changed");
  67. model.refresh();
  68. }
  69. ]]>
  70. </script>
  71. </xhtml:head>
  72. <xhtml:body pagewidth="830" pageheight="800" guideline="1,820;">
  73. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:20px; width:820px; height:35px; "/>
  74. <button id="button1" class="btn5_letter2" style="left:772px; top:62px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn1_letter6.gif; ">
  75. <caption>저장</caption>
  76. <script type="javascript" ev:event="DOMActivate">
  77. <![CDATA[
  78. var roomnm = null;
  79. var broomnm = null;
  80. var ampmflag = null;
  81. var seqno = null;
  82. var bseqno = null;
  83. var pre = null;
  84. var orddept = model.getValue("/root/main/cond/orddeptcd");
  85. if (isNull(orddept)) {
  86. messageBox("진료과를 선택하세요", "I");
  87. return;
  88. }
  89. for(i=1;i<grd_weekroom.rows;i++){
  90. roomnm = model.getValue("/root/main/weekroominfo/weekroomlist[" + i + "]/roomnm");
  91. ampmflag = model.getValue("/root/main/weekroominfo/weekroomlist[" + i + "]/ampmflag");
  92. seqno = model.getValue("/root/main/weekroominfo/weekroomlist[" + i + "]/seqno");
  93. if(roomnm==""){
  94. messageBox("진료실 명을 확인하세요","i");
  95. return;
  96. }
  97. if(ampmflag==""){
  98. messageBox("오전/오후 구분을 확인하세요","i");
  99. return;
  100. }
  101. if(isNull(seqno)){
  102. if(i==1){
  103. model.setValue("/root/main/weekroominfo/weekroomlist[" + i + "]/seqno","1");
  104. }else if(i>1){
  105. pre =parseInt(i)-1;
  106. broomnm = model.getValue("/root/main/weekroominfo/weekroomlist[" +pre+ "]/roomnm");
  107. bseqno = model.getValue("/root/main/weekroominfo/weekroomlist[" +pre+ "]/seqno");
  108. if(roomnm == broomnm){
  109. model.setValue("/root/main/weekroominfo/weekroomlist[" + i + "]/seqno",bseqno);
  110. }else{
  111. seqno = parseInt(bseqno)+1;
  112. model.setValue("/root/main/weekroominfo/weekroomlist[" + i + "]/seqno",seqno);
  113. }
  114. }
  115. }
  116. }
  117. if( ! getGridUpdateData(grd_weekroom) ) {
  118. messageBox("입력","E013"); // 그리드에 데이터가 업데이트 되지 않으면 "입력된 데이터가 없습니다."는 메시지 출력
  119. return ;
  120. }
  121. model.makeValue("/root/send/savedata", grd_weekroom.getUpdateData()); // 분류코드의 업데이트 된 내용을 savedata에 넣는다
  122. submit("TXMNV21601");
  123. ]]>
  124. </script>
  125. </button>
  126. <datagrid id="grd_weekroom" nodeset="/root/main/weekroominfo/weekroomlist" caption="진료과코드^seqno^구분^G^진료실^월^화^수^목^금^토" colsep="^" colwidth="0,0,50, 20,100, 100, 100, 100, 100, 100, 100" fixedcols="0" mergecellsfixedcols="bycol" rowheader="update" rowsep="|" style="left:0px; top:83px; width:820px; height:642px; ">
  127. <col ref="orddeptcd" visibility="hidden"/>
  128. <col ref="seqno" visibility="hidden"/>
  129. <col ref="ampmflag" type="combo">
  130. <choices>
  131. <item>
  132. <label>오전</label>
  133. <value>A</value>
  134. </item>
  135. <item>
  136. <label>오후</label>
  137. <value>P</value>
  138. </item>
  139. </choices>
  140. </col>
  141. <col ref="seq" type="input"/>
  142. <col ref="roomnm" type="input"/>
  143. <col ref="monroomcd" type="combo">
  144. <choices>
  145. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  146. <label ref="ordroomnm"/>
  147. <value ref="ordroomcd"/>
  148. </itemset>
  149. </choices>
  150. </col>
  151. <col ref="tueroomcd" type="combo">
  152. <choices>
  153. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  154. <label ref="ordroomnm"/>
  155. <value ref="ordroomcd"/>
  156. </itemset>
  157. </choices>
  158. </col>
  159. <col ref="wedroomcd" type="combo">
  160. <choices>
  161. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  162. <label ref="ordroomnm"/>
  163. <value ref="ordroomcd"/>
  164. </itemset>
  165. </choices>
  166. </col>
  167. <col ref="thuroomcd" type="combo">
  168. <choices>
  169. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  170. <label ref="ordroomnm"/>
  171. <value ref="ordroomcd"/>
  172. </itemset>
  173. </choices>
  174. </col>
  175. <col ref="friroomcd" type="combo">
  176. <choices>
  177. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  178. <label ref="ordroomnm"/>
  179. <value ref="ordroomcd"/>
  180. </itemset>
  181. </choices>
  182. </col>
  183. <col ref="satroomcd" type="combo">
  184. <choices>
  185. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  186. <label ref="ordroomnm"/>
  187. <value ref="ordroomcd"/>
  188. </itemset>
  189. </choices>
  190. </col>
  191. <script type="javascript" ev:event="onclick">
  192. <![CDATA[
  193. if (isDataCell() == true ) {
  194. var ampmflag = model.getValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/ampmflag");
  195. if(grd_weekroom.col == 5 && ampmflag !='P' ){
  196. grd_weekroom.editCell();
  197. }else{
  198. messageBox("오전 진료실 명칭과 동일해야 합니다.", "I");
  199. return;
  200. }
  201. }
  202. ]]>
  203. </script>
  204. <script type="javascript" ev:event="xforms-value-changed">
  205. <![CDATA[
  206. if (isDataCell() == true ) {
  207. if(grd_weekroom.col == 5 ){
  208. var nrow = parseInt(grd_weekroom.row)+1;
  209. var seq = model.getValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/seqno");
  210. var apflag = model.getValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/ampmflag");
  211. var nextseq = model.getValue("/root/main/weekroominfo/weekroomlist[" + nrow + "]/seqno");
  212. var nextapflag = model.getValue("/root/main/weekroominfo/weekroomlist[" + nrow + "]/ampmflag");
  213. var gridstatus = grd_weekroom.rowstatus(grd_weekroom.row);
  214. if( gridstatus =='3' &&apflag =='A' && nextapflag =='P' && (seq == nextseq ||( isNUull(seq)&& isNull(nextseq)))){ //isNull(grd_weekroom.valueMatrix(grd_weekroom.row+1,grd_weekroom.col)) &&
  215. grd_weekroom.valueMatrix(grd_weekroom.row+1,grd_weekroom.col)= grd_weekroom.valueMatrix(grd_weekroom.row,grd_weekroom.col);
  216. grd_weekroom.refresh();
  217. }else if(gridstatus =='2' &&apflag =='A'){
  218. for(i=1;i<=grd_weekroom.rows;i++){
  219. if(seq==grd_weekroom.valueMatrix(i,grd_weekroom.colRef("seqno"))&&'P'==grd_weekroom.valueMatrix(i,grd_weekroom.colRef("ampmflag"))){
  220. grd_weekroom.valueMatrix(i,grd_weekroom.col)= grd_weekroom.valueMatrix(grd_weekroom.row,grd_weekroom.col);
  221. grd_weekroom.rowstatus(i) = '2';
  222. grd_weekroom.refresh();
  223. }
  224. }
  225. }
  226. }
  227. }
  228. ]]>
  229. </script>
  230. <script type="javascript" ev:event="ondblclick">
  231. <![CDATA[
  232. if (isDataCell() == true ) {
  233. var ampmflag = model.getValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/ampmflag");
  234. if(grd_weekroom.col == 5 && ampmflag !='P' ){
  235. grd_weekroom.editCell();
  236. }else{
  237. messageBox("오전 진료실 명칭과 동일해야 합니다.", "I");
  238. return;
  239. }
  240. }
  241. ]]>
  242. </script>
  243. </datagrid>
  244. <select1 id="cmb_orddeptcd" ref="/root/main/cond/orddeptcd" navindex="3" appearance="minimal" style="left:135px; top:30px; width:128px; height:19px; ">
  245. <choices>
  246. <itemset nodeset="/root/init/deptcd/dept">
  247. <label ref="depthngnm"/>
  248. <value ref="deptcd"/>
  249. </itemset>
  250. </choices>
  251. <script type="javascript" ev:event="xforms-value-changed">
  252. <![CDATA[
  253. model.removenode("/root/init/subdeptcd");
  254. model.makeNode("/root/init/subdeptcd");
  255. if(submit("TRMNV07001")==true){
  256. model.makeValue("/root/init/temp/orddeptcd/ordroomlist/ordroomcd","-");
  257. model.makeValue("/root/init/temp/orddeptcd/ordroomlist/ordroomnm","");
  258. copyNodesetType("/root/init/subdeptcd/ordroomlist", "/root/init/temp/orddeptcd/ordroomlist", "before");
  259. }
  260. submit("TRMNV21601");
  261. model.refresh();
  262. ]]>
  263. </script>
  264. </select1>
  265. <caption id="caption7" class="search_name" style="left:40px; top:30px; width:80px; height:17px; ">진 료 과</caption>
  266. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:175px; height:14px; ">진료실 마스터 등록</caption>
  267. <button id="button6" class="btn1_letter2" navindex="5" style="left:755px; top:28px; width:56px; height:22px; ">
  268. <caption>조회</caption>
  269. <script type="javascript" ev:event="DOMActivate">
  270. <![CDATA[
  271. model.removenode("/root/init/subdeptcd");
  272. model.makeNode("/root/init/subdeptcd");
  273. if(submit("TRMNV07001")==true){ // 기본 진료실 리스트 조회
  274. model.makeValue("/root/init/temp/orddeptcd/ordroomlist/ordroomcd","-");
  275. model.makeValue("/root/init/temp/orddeptcd/ordroomlist/ordroomnm","");
  276. copyNodesetType("/root/init/subdeptcd/ordroomlist", "/root/init/temp/orddeptcd/ordroomlist", "before");
  277. }
  278. submit("TRMNV21601"); // 요일별 진료실 리스트 조회
  279. ]]>
  280. </script>
  281. </button>
  282. <line id="line3" class="line_4" style="x1:735px; y1:23px; x2:735px; y2:51px; "/>
  283. <button id="button2" class="btn2_letter2" style="left:684px; top:62px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn1_letter6.gif; ">
  284. <caption>추가</caption>
  285. <script type="javascript" ev:event="DOMActivate">
  286. <![CDATA[
  287. var orddept = model.getValue("/root/main/cond/orddeptcd");
  288. if (!isNull(orddept)) {
  289. grd_weekroom.addRow();
  290. model.setValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/orddeptcd",orddept);
  291. model.setValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/ampmflag","A");
  292. grd_weekroom.addRow();
  293. model.setValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/orddeptcd",orddept);
  294. model.setValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/ampmflag","P");
  295. } else {
  296. messageBox("진료과를 선택하세요", "I");
  297. return;
  298. }
  299. ]]>
  300. </script>
  301. </button>
  302. <button id="btn_inreqsrch" class="btn2_letter2" style="left:728px; top:62px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn1_letter6.gif; ">
  303. <caption>삭제</caption>
  304. <script type="javascript" ev:event="DOMActivate">
  305. <![CDATA[
  306. var getRowno = deleteSelectedRows(grd_weekroom, true);
  307. grd_weekroom.addStatus(getRowno,"delete");
  308. if (grd_weekroom.rows >=2 ) {
  309. var seq = model.getValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/seqno");
  310. var roomnm = model.getValue("/root/main/weekroominfo/weekroomlist[" + grd_weekroom.row + "]/roomnm");
  311. for(i=1;i<=grd_weekroom.rows;i++){
  312. if(seq!="" && seq==grd_weekroom.valueMatrix(i,grd_weekroom.colRef("seqno"))||seq=="" && roomnm ==grd_weekroom.valueMatrix(i,grd_weekroom.colRef("roomnm"))){
  313. grd_weekroom.valueMatrix(i,grd_weekroom.col)= grd_weekroom.valueMatrix(grd_weekroom.row,grd_weekroom.col);
  314. grd_weekroom.rowstatus(i) = '4';
  315. grd_weekroom.refresh();
  316. }
  317. }
  318. }
  319. ]]>
  320. </script>
  321. </button>
  322. <caption id="caption15" style="left:5px; top:735px; width:800px; height:56px; font-weight:bold; ">
  323. <![CDATA[1. 진료실 명칭을 변경 등록해야 할 경우 추가 버튼 클릭하여 이름 작성 후, 요일별로 진료실을 지정하여 저장하시면 해당 스케쥴대로
  324. 진료실 명칭이 변경되어 가야할 곳 적용 시에 반영 됩니다.
  325. 2. 등록된 전광판 표시명을 변경해야 할 경우 오전 명칭 변경 시 오후 명칭도 자동 변경됩니다.]]>
  326. </caption>
  327. </xhtml:body>
  328. </xhtml:html>