SMMMO04800M.js.soonsu 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  1. var sCNSTPATLIST_PATH = "/root/main/cnstpatinfo/cnstpatlist";
  2. var sORDERBY = "";
  3. function fInitialize_SMMMO04800(){
  4. model.removeNodeset(sCNSTPATLIST_PATH);
  5. model.setValue("/root/main/cond/fromdd" ,((getCurrentDate().toDate()).getAddDate(-3)).getDateFormat());
  6. model.setValue("/root/main/cond/todd" , getCurrentDate());
  7. model.setValue("/root/main/cond/orddeptcd", getUserInfo("dutplcecd"));
  8. model.setValue("/root/main/cond/orddrid", "-");
  9. model.setValue("/root/main/cond/oproomcd", "-");
  10. model.setValue("/root/main/cond/reqflag" , "-");
  11. model.setValue("/root/main/cond/replyn" , "-");
  12. model.setValue("/root/main/cond/ioflag", "-");
  13. fReqCnstPatList(model.getValue("/root/main/cond/queryflag"));
  14. }
  15. function fReqCnstPatList(queryflag){
  16. model.setValue("/root/main/cond/queryflag", queryflag);
  17. model.copyNode("/root/send/reqdata", "/root/main/cond");
  18. var offset = parseInt(model.getValue("root/page/curpage"));
  19. if(offset == 1)
  20. {
  21. offset = offset - 1;
  22. }
  23. else
  24. {
  25. offset = (offset - 1) * 10;
  26. }
  27. model.makeValue("/root/send/reqdata/offset", String(offset));
  28. model.makeValue("/root/send/reqdata/pagesize", model.getValue("root/page/pagesize"));
  29. if(submit("TRMOB00004")){
  30. var totrow = grd_cnstpatlist.rows;
  31. model.setValue("/root/main/totcnt/totcnt", totrow-1);
  32. model.copyNode(opener.instance1.selectSingleNode("root/cond/cnstpatlist"), instance1.selectSingleNode("root/main/cond"));
  33. model.copyNode(opener.instance1.selectSingleNode("root/temp/cnstpatlist"), instance1.selectSingleNode("root/init"));
  34. }
  35. var maxpage = parseInt(model.getValue("/root/main/cnstpatinfo/retcnt/cnspatlistcnt"));
  36. if(maxpage < 10)
  37. {
  38. model.setValue("/root/page/maxpage", "1");
  39. }
  40. else
  41. {
  42. maxpage = (maxpage / 10) - ((maxpage % 10) / 10) + 1;
  43. model.setValue("/root/page/maxpage", String(maxpage));
  44. model.refresh();
  45. }
  46. var orderby = model.getValue("/root/main/cond/orderby");
  47. var sortcol = model.getValue("/root/main/cond/sortcol");
  48. if(sortcol != "" && orderby != ""){
  49. sORDERBY = orderby;
  50. grd_cnstpatlist.colsort(sortcol) = sORDERBY
  51. grd_cnstpatlist.setSort(1, 1, grd_cnstpatlist.rows -1, grd_cnstpatlist.cols -1, "usersort");
  52. grd_cnstpatlist.gridToInstance();
  53. grd_cnstpatlist.refresh();
  54. }
  55. }
  56. function fReqCnstPatPamInfo(){
  57. var currow = grd_cnstpatlist.row;
  58. var ioflag = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/ioflag");
  59. var pid = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/pid");
  60. var instcd = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/instcd");
  61. var formrecseq = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/formrecseq");
  62. if(ioflag == "O" || ioflag == "S"){
  63. var orddd = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/acptorddd");
  64. var cretno= model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/acptcretno");
  65. return;
  66. }else{
  67. var orddd = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/orddd");
  68. var cretno= model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/cretno");
  69. }
  70. var param = "C" + "▦" + ioflag + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd + "▦" + formrecseq;
  71. setParameter("condparam", param);
  72. modal("SPMMO08900", 1, 0, 0, "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  73. var useyn = getParameter("SPMMO08900_rtn_useyn");
  74. if(useyn == "Y"){
  75. setParameter("SPMMO08900_rtn_useyn", "");
  76. return true;
  77. }else{
  78. return false;
  79. }
  80. }
  81. function fSelectCnstPat(){
  82. var ordrecflag = model.getValue(opener.instance1.selectSingleNode("root/main/cond/ordrecflag"));
  83. var currow = grd_cnstpatlist.row;
  84. if(currow < 1){
  85. return;
  86. }
  87. var ioflag = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/ioflag");
  88. var reqptype = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/reqptype");
  89. var pid = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/pid");
  90. var hngnm = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/hngnm");
  91. if(ioflag == "O"){
  92. messageBox("의뢰환자리스트에서 외래환자의 처방 및 진료기록을 작성", "E001");
  93. return;
  94. }
  95. if(fChkScrnDisable()==false){
  96. return;
  97. }
  98. if(fChkCPPatValid(currow)==false){
  99. return;
  100. }
  101. var mainobj = getMainViewer();
  102. var mainscrnid = mainobj.getScreenID();
  103. if(mainscrnid == "SMMMR00100"){
  104. var prvIntRecPamInfRtn = mainobj.window.fPrevInitRecPamInfo();
  105. if(prvIntRecPamInfRtn == false){
  106. return;
  107. }
  108. }
  109. var mainObj = getMainViewer();
  110. if(fReqCnstPatPamInfo()==true){
  111. opener.setParameter("SMMMO04100_reqptype", reqptype);
  112. var cpflag = opener.model.getValue("/root/cpflag");
  113. var ordrecflag = opener.model.getValue("/root/main/cond/ordrecflag");
  114. var recflag = opener.model.getValue("/root/main/cond/recflag");
  115. var chngflag = opener.model.getValue("/root/main/cond/chngflag");
  116. var mainObj = getMainViewer();
  117. if (recflag == "Y") {
  118. var mainObj = getMainViewer();
  119. curEmrRecObj = getOpenWindow("SMMRI00400");
  120. curExamRsltObj = getOpenWindow("SMAER00800");
  121. curNurTprObj = getOpenWindow("SMMNR00900");
  122. curNurBSEMRObj = getOpenWindow("SMMNR02500");
  123. curGrphObj = getOpenWindow("SPMRF05200");
  124. curCunsultObj = getOpenWindow("SMMMR05000");
  125. curExamRsltNewObj = getOpenWindow("SMMMI00100");
  126. var wndobj = getOpenWindow("SMMRI00400");
  127. if(wndobj != null)
  128. {
  129. setParameter("SMMRI00400_param_pid" , model.getValue("/root/source/pid"));
  130. setParameter("SMMRI00400_param_chosflag", model.getValue("/root/main/paminfo/list/ordtype"));
  131. wndobj.fInitalize();
  132. activateChild("SMMRI00400");
  133. }
  134. if(curExamRsltObj != null){
  135. curExamRsltObj.model.setvalue("/root/send/data/singdata/srchpid", pid );
  136. curExamRsltObj.btn_srch.dispatch("DOMActivate");
  137. }
  138. if(curNurTprObj != null){
  139. curNurTprObj.fInitialize("init");
  140. }
  141. if(curNurBSEMRObj != null){
  142. curNurBSEMRObj.fInitialize("init");
  143. }
  144. if(curGrphObj != null){
  145. curGrphObj.fInitialize();
  146. }
  147. if(curCunsultObj != null && consulyn !="T"){
  148. curCunsultObj.fInitalize();
  149. }
  150. if(curExamRsltNewObj != null){
  151. curExamRsltNewObj.model.setvalue("/root/send/data/singdata/srchpid", pid );
  152. curExamRsltNewObj.btn_srch.dispatch("DOMActivate");
  153. }
  154. curCpObj = mainObj.getOpenWindow("SMMMP00800");
  155. curPrcpObj = mainObj.getOpenWindow("SMMMO00100");
  156. curCpSrchObj = mainObj.getOpenWindow("SPMMP01200");
  157. if(curPrcpObj != null) {curPrcpObj.fPrcpWndClose(); }
  158. if(curCpObj != null){curCpObj.fCloseGPS();}
  159. if(curCpSrchObj != null){curCpSrchObj.fCpSrchWndClose();}
  160. clearParameter("SMMMO04100_ANSWCNT");
  161. opener.fChngEMRScrn();
  162. } else {
  163. opener.fOpenPrcpMainWnd();
  164. }
  165. }
  166. }
  167. function fChkCPPatValid(currow){
  168. var pid = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/pid");
  169. var orddd = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/orddd");
  170. var cretno = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/cretno");
  171. var ioflag = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/ioflag");
  172. var hngnm = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/hngnm");
  173. var orddeptcd = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/orddeptcd");
  174. var acptorddd = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/acptorddd");
  175. var acptcretno = model.getValue(sCNSTPATLIST_PATH + "[" + currow + "]/acptcretno");
  176. if(ioflag == "O"){
  177. if(acptorddd != "" && acptcretno != ""){
  178. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "N");
  179. return true;
  180. }else{
  181. messageBox("[" + hngnm + "]환자는 외래접수가 되지", "E007");
  182. return false;
  183. }
  184. }
  185. model.removeNodeset("/root/send/reqdata");
  186. model.makeValue("/root/send/reqdata/pid" , pid);
  187. model.makeValue("/root/send/reqdata/orddd" , orddd);
  188. model.makeValue("/root/send/reqdata/cretno" , cretno);
  189. model.makeValue("/root/send/reqdata/hngnm" , hngnm);
  190. model.makeValue("/root/send/reqdata/prcpgenrflag", ioflag);
  191. model.makeValue("/root/send/reqdata/srchtabflag" , "D");
  192. if(submit("TRMMO04303")==true){
  193. var cppatnode = instance1.selectNodes("/root/init/rsltgetdata/getdata");
  194. if(cppatnode.length < 1){
  195. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "N");
  196. return true;
  197. }else{
  198. var appstat = model.getValue("/root/init/rsltgetdata/getdata/appstat");
  199. var cpgnm = model.getValue("/root/init/rsltgetdata/getdata/cpgnm");
  200. var cpgappno = model.getValue("/root/init/rsltgetdata/getdata/cpgappno");
  201. var msgcnts = model.getValue("/root/init/rsltgetdata/getdata/msgcnts");
  202. var msgflag = model.getValue("/root/init/rsltgetdata/getdata/msgflag");
  203. var prtlflagcd = model.getValue("/root/init/rsltgetdata/getdata/prtlflagcd");
  204. if(appstat == 52){
  205. var rtnval = messageBox(msgcnts, msgflag);
  206. if(rtnval == 6){
  207. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "X");
  208. return true;
  209. }else{
  210. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "N");
  211. if(fUpdtCPPatAppStatVal(41) != false && instance1.selectSingleNode(sCNSTPATLIST_PATH + "[" + currow + "]/cpyn") != null){
  212. model.setValue(sCNSTPATLIST_PATH + "[" + currow + "]/cpyn", "N");
  213. return;
  214. }else{
  215. return false;
  216. }
  217. }
  218. }else{
  219. if( prtlflagcd == "02" && isNull(appstat) && msgflag == "P" ){
  220. setParameter("SMMMO041_hngnm" , hngnm);
  221. setParameter("SMMMO041_pid" , pid);
  222. setParameter("SMMMO041_cretno" , cretno);
  223. setParameter("SMMMO041_orddd" , orddd);
  224. setParameter("SMMMO041_ordtype" , ioflag);
  225. setParameter("SMMMO041_orddeptcd" , orddeptcd);
  226. setParameter("SMMMO041_slipnm" , model.getValue(instance1.selectSingleNode("root/init/rsltgetdata/getdata/msgcnts")));
  227. setParameter("SMMMO041_cpgmntrflag", appstat);
  228. setParameter("SMMMO041_cpgappno" , cpgappno);
  229. setParameter("SMMMO041_cpgnm" , cpgnm);
  230. modal("SPMMP03200");
  231. if( cpgappno > 0 && cpgappno != getParameter("SPMMP032_cpgappno") && instance1.selectSingleNode(sCNSTPATLIST_PATH + "[" + currow + "]/cpyn") != null){
  232. model.setValue(sCNSTPATLIST_PATH + "[" + currow + "]/cpyn", "N");
  233. }
  234. if( !isNull(getParameter("SPMMP032_cpgappno")) && getParameter("SPMMP032_cpgappno") > 0 ){
  235. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "Y");
  236. }else{
  237. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "N");
  238. }
  239. clearParameter("SPMMP032_cpgappno");
  240. clearParameter("SMMMO041_hngnm");
  241. clearParameter("SMMMO041_pid");
  242. clearParameter("SMMMO041_cretno");
  243. clearParameter("SMMMO041_orddd");
  244. clearParameter("SMMMO041_ordtype");
  245. clearParameter("SMMMO041_orddeptcd");
  246. clearParameter("SMMMO041_slipnm");
  247. clearParameter("SMMMO041_cpgmntrflag");
  248. clearParameter("SMMMO041_cpgappno");
  249. clearParameter("SMMMO041_cpgnm");
  250. return true;
  251. }else{
  252. if( !isNull(msgcnts) && !isNull(msgflag) ){
  253. messageBox(msgcnts, msgflag);
  254. setParameter("SMMMO043_cpgappno", cpgappno);
  255. setParameter("SMMMO043_drop" , "N");
  256. modal("SPMMP02300");
  257. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "N");
  258. if( getParameter("SMMMO043_drop") == "Y" ){
  259. model.setValue(sINPATLIST_PATH + "[" + currow + "]/cpyn", "N");
  260. }else{
  261. return false;
  262. }
  263. clearParameter("SMMMO043_cpgappno");
  264. clearParameter("SMMMO043_drop");
  265. return true;
  266. }
  267. model.setValue(opener.instance1.selectSingleNode("root/cpflag"), "Y");
  268. return true;
  269. }
  270. }
  271. }
  272. }
  273. }