SMMRC01100.js 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962
  1. /**
  2. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  3. 진료 - 사본발급관리( SMMRC01100_사본발급관리.xrw - JScript )
  4. - Version :
  5. 1) : Ver.1.00.01
  6. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  7. **/
  8. /**
  9. * @group :
  10. * @ver :
  11. * @by : 이은영 수정->이창록 2008-08-29
  12. * @---------------------------------------------------
  13. * @type : function
  14. * @access : public
  15. * @desc : 화면 초기화
  16. * @param :
  17. * @return :
  18. * @---------------------------------------------------
  19. */
  20. function fInit()
  21. {
  22. zsdfGetInOutOrdDeptList(getUserInfo("dutplceinstcd"), "/root/init/deptlist", "depthngnm", "asc");//전체 진료과 조회
  23. // 공통코드 목록 가져오기
  24. zbcfGetCodeList(new Array("P0001", "M0332", "M0333", "M0011"),
  25. new Array("/root/init/ioflag", "/root/init/issgoalcd", "/root/init/issscopcd", "/root/init/prcpstatcd") , true);
  26. model.makenode("/root/send/reqdata");
  27. mmbfGetHardCodeInfo("/root/send/reqdata","/root/hidden/calcscorcd", 77); //의무기록사본발행수가코드
  28. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  29. mmbfGetHardCodeInfo("/root/send/reqdata", "/root/hidden/deptcd", 5501);
  30. // KNUH_20101207_박성호_end
  31. model.removeNode("/root/send/reqdata");
  32. model.resetInstanceNode("/root/send/cond");
  33. model.removeNodeset("/root/main/isshist/isslist");
  34. model.resetInstanceNode("/root/main/issinfo/copyinfo");
  35. model.removeNodeset("/root/main/issinfo/emrapplist");
  36. model.removeNodeset("/root/main/issinfo/rcptlist");
  37. //fDisabled(true);
  38. //상단 환자 정보 가져오기
  39. var node = getGlobalVariable("paminfo");
  40. setCSVToNode("/root/main/paminfo", node);
  41. //상단 정보 있는지 유무 체크
  42. if(node != "")
  43. {
  44. model.setValue("/root/send/cond/pid", model.getValue("/root/main/paminfo/list/pid"));
  45. //inputEnterKey("btn_pat", "DOMActivate");
  46. }
  47. // 오늘 날짜로 세팅
  48. var currentdate = getCurrentDate();
  49. //20080908 이창록 신청일자 시작일자 오늘 날짜로 변경
  50. model.setValue("/root/send/cond/fromdd" , currentdate);
  51. model.setValue("/root/send/cond/todd" , currentdate);
  52. model.setValue("/root/send/cond/prcsflag","N");
  53. fHistSearch();
  54. model.refresh();
  55. }
  56. // 초기화
  57. function fClearView(){
  58. model.resetInstanceNode("/root/send/cond");
  59. model.resetInstanceNode("/root/main/issinfo/copyinfo");
  60. model.removeNodeset("/root/main/issinfo/emrapplist");
  61. model.removeNodeset("/root/main/issinfo/rcptlist");
  62. // 오늘 날짜로 세팅
  63. var currentdate = getCurrentDate();
  64. model.setValue("/root/send/cond/fromdd", currentdate.substr(0, 6) + "01");
  65. model.setValue("/root/send/cond/todd", currentdate);
  66. model.setValue("/root/send/cond/prcsflag","N");
  67. model.refresh();
  68. }
  69. // 환자찾기 Popup
  70. function fPatPopUp(pFlag)
  71. {
  72. if(pFlag == "1"){
  73. model.makeValue("/root/temp/patcond/pid", model.getValue("/root/send/cond/pid"));
  74. }else if(pFlag == "2"){
  75. model.makeValue("/root/temp/patcond/hngnm", model.getValue("/root/send/cond/hngnm"));
  76. }else if(pFlag == "3"){
  77. model.makeValue("/root/temp/patcond/rrgstno1", model.getValue("/root/send/cond/rrgstno1"));
  78. model.makeValue("/root/temp/patcond/rrgstno2", model.getValue("/root/send/cond/rrgstno2"));
  79. }
  80. model.makeValue("/root/temp/patcond/srchcond",pFlag);
  81. model.makeValue("/root/temp/patcond/autoflag","Y");
  82. modal("SPPMC02500", 1,10, 10, "SPPMC02500", "/root/temp/patcond", "/root/send");
  83. model.resetInstanceNode("/root/main/patient/patinfolist");
  84. //model.resetInstanceNode("/root/send/cond");
  85. model.setValue("/root/send/cond/pid", model.getValue("/root/main/patinfo/patinfolist/pid"));
  86. model.setValue("/root/send/cond/hngnm", model.getValue("/root/main/patinfo/patinfolist/hngnm"));
  87. model.setValue("/root/send/cond/rrgstno1", model.getValue("/root/main/patinfo/patinfolist/rrgstno1"));
  88. model.setValue("/root/send/cond/rrgstno2", model.getValue("/root/main/patinfo/patinfolist/rrgstno2"));
  89. fHistSearch();
  90. model.refresh();
  91. }
  92. // 이전내역조회
  93. function fHistSearch()
  94. {
  95. // reqGetCopyIssHist
  96. // getCopyIssHist
  97. //model.resetInstanceNode("/root/main/issinfo/copyinfo");
  98. //model.removeNodeset("/root/main/issinfo/emrapplist");
  99. //model.removenode("/root/main/issinfo/rcptlist");
  100. //model.removeNodeset("/root/main/issinfo/rcptlist");
  101. if (submit("TRMRC01101",false) == true)
  102. {
  103. grd_isshist.rebuild();
  104. grd_isshist.rebuildStyle();
  105. setRowStyle("grd_isshist","0","입원","ioflagnm");
  106. }
  107. else
  108. {
  109. messageBox("조회를", "E009");
  110. }
  111. grd_isshist.rebuild();
  112. }
  113. // 신청정보 상세조회
  114. function fIssSearch()
  115. {
  116. if (grd_isshist.rows<= 1) return;
  117. if (grd_isshist.row < 1) return;
  118. var lrow = grd_isshist.row;
  119. var RecPrcpCd = model.getValue("/root/hidden/calcscorcd/hardcd/hardcd");//의무기록 사본발행 수가코드
  120. model.makeValue("/root/send/search/pid", model.getValue("/root/main/isshist/isslist[" + lrow + "]/pid"));
  121. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/isshist/isslist[" + lrow + "]/copyseqno"));
  122. //model.removeNodeset("/root/main/issinfo/emrapplist");
  123. // reqGetCopyIssDetailInfo
  124. // getCopyIssInfo : 발행정보
  125. // getPaperScopCd : 종이서식범위
  126. // getCopyEmrAppList : emr서식
  127. // getCopyRcptList : 수가
  128. if(model.getValue("/root/main/isshist/isslist[" + lrow + "]/unprepyn") == "Y"){
  129. messageBox("환자의 기록이 미완결","I009");
  130. }
  131. grd_rcptlist.clearStatus();
  132. if (submit("TRMRC01102", false) == true)
  133. {
  134. //fDisabled(false);
  135. // fAppManNmSetting("S");
  136. // fIssGoalNmSetting();
  137. model.setValue("/root/main/issinfo/copyinfo/status", "u");
  138. model.refresh();
  139. var issgoalcd = model.getValue("/root/main/issinfo/copyinfo/issgoalcd");
  140. if(grd_rcptlist.rows == grd_rcptlist.fixedrows){
  141. grd_rcptlist.additem();
  142. var currentdate = getCurrentDate();
  143. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  144. // 06: 직할병원 - 수가코드(HCDD001)
  145. if(issgoalcd == "06"){
  146. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  147. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  148. // 처방코드(임시로 수가코드로 함)
  149. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  150. }else{ // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  151. // 20090413 하드코딩된 의무기록사본발행수가코드 하드코드 테이블로 변경
  152. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd",RecPrcpCd);
  153. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  154. // 처방코드(임시로 수가코드로 함)
  155. // 20090413 하드코딩된 의무기록사본발행수가코드 하드코드 테이블로 변경
  156. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  157. }
  158. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  159. if (model.getValue("/root/main/issinfo/copyinfo/ioflag") == "O")
  160. {
  161. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  162. }
  163. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd" , currentdate);
  164. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpno" , "0");
  165. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcphistno", "0");
  166. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/pid" , model.getValue("/root/main/issinfo/copyinfo/pid"));
  167. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/orddd" , model.getValue("/root/main/issinfo/copyinfo/orddd"));
  168. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/cretno" , model.getValue("/root/main/issinfo/copyinfo/cretno"));
  169. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno" , "1");
  170. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno" , "1");
  171. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty" , "1");
  172. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcptims" , model.getValue("/root/main/issinfo/copyinfo/emrappcopies"));
  173. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/copyseqno", model.getValue("/root/main/issinfo/copyinfo/copyseqno"));
  174. grd_rcptlist.addStatus(lrow, "insert");
  175. btn_delete.disabled = false;
  176. btn_delete.refresh();
  177. }else{
  178. var shtno = 0;
  179. var iFindRow =0;
  180. var RowCnt = 0;
  181. var lrow = 0;
  182. var currentdate = "";
  183. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  184. if(model.getValue("/root/main/issinfo/copyinfo/emrappcopies") != model.getValue("/root/main/issinfo/rcptlist[" + iRow + "]/prcptims")){
  185. model.setValue("/root/main/issinfo/rcptlist[" + iRow + "]/prcptims", model.getValue("/root/main/issinfo/copyinfo/emrappcopies"));
  186. grd_rcptlist.rowStatus(iRow) = 2;
  187. }
  188. }
  189. // 직할병원
  190. if(issgoalcd == "06"){
  191. iFindRow = grd_rcptlist.findRow("HCDD001",0,2);
  192. if(iFindRow < 1){
  193. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  194. grd_rcptlist.rowStatus(iRow) = 4;
  195. grd_rcptlist.isReadOnly(iRow,4) = true;
  196. shtno += eval(model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno"));
  197. }
  198. RowCnt = 1;
  199. }
  200. }else{// 그외 목적
  201. iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  202. if(iFindRow < 1){
  203. for(var iRow = grd_rcptlist.fixedrows; iRow<= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  204. grd_rcptlist.rowStatus(iRow) = 4;
  205. grd_rcptlist.isReadOnly(iRow,4) = true;
  206. shtno += eval(model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno"));
  207. }
  208. if(shtno > 10){
  209. RowCnt = 2;
  210. }else{
  211. RowCnt = 1;
  212. }
  213. }
  214. }
  215. if(iFindRow < 1){
  216. for(var iRow = 1; iRow <= RowCnt; iRow++){
  217. grd_rcptlist.additem();
  218. currentdate = getCurrentDate();
  219. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  220. if(issgoalcd == "06"){
  221. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  222. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  223. // 처방코드(임시로 수가코드로 함)
  224. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  225. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  226. }else{
  227. if(iRow == 1){
  228. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  229. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  230. // 처방코드(임시로 수가코드로 함)
  231. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  232. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  233. }else if(iRow == 2){
  234. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", "HCDD030");
  235. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  236. // 처방코드(임시로 수가코드로 함)
  237. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", "HCDD030");
  238. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", "");
  239. }
  240. }
  241. if (model.getValue("/root/main/issinfo/copyinfo/ioflag") == "O")
  242. {
  243. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  244. }
  245. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", currentdate);
  246. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpno", "0");
  247. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcphistno", "0");
  248. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/pid", model.getValue("/root/main/issinfo/copyinfo/pid"));
  249. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/orddd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  250. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/cretno", model.getValue("/root/main/issinfo/copyinfo/cretno"));
  251. if(RowCnt == 1){
  252. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", shtno);
  253. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", shtno);
  254. if(issgoalcd == "06"){
  255. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", shtno);
  256. }else{
  257. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", "1");
  258. }
  259. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  260. if(iRow == 1){ // 수가코드 (HCDD027) 처리
  261. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", "10");
  262. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", "10");
  263. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", "1");
  264. }else if(iRow == 2){ // 수가코드(HCDD030) 처리
  265. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", (shtno-10));
  266. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", (shtno-10));
  267. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", (shtno-10));
  268. }
  269. }
  270. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcptims", model.getValue("/root/main/issinfo/copyinfo/emrappcopies"));
  271. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/copyseqno", model.getValue("/root/main/issinfo/copyinfo/copyseqno"));
  272. grd_rcptlist.addStatus(lrow, "insert");
  273. }
  274. }
  275. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  276. if(model.getValue("/root/main/issinfo/copyinfo/emrappcopies")==0){
  277. model.setValue("/root/main/issinfo/copyinfo/emrappcopies",1);
  278. ipt_emrappcopies.refresh();
  279. fChangedAppCopies();
  280. }
  281. btn_delete.disabled = true;
  282. btn_delete.refresh();
  283. }
  284. }
  285. else
  286. {
  287. messageBox("조회를", "E009");
  288. }
  289. //model.refresh();
  290. }
  291. // 수가추가 버튼
  292. function fRcptPopUp()
  293. {
  294. model.removeNodeset("/root/temp");
  295. model.makeValue("/root/temp", "HCDD");
  296. modal("SMPIC00200", 1,10, 10, "SMPIC00200", "/root/temp", "/root/temp");
  297. var currentdate = getCurrentDate();
  298. if (model.instances(0).selectNodes("/root/temp/picmmech").length > 0 )
  299. {
  300. grd_rcptlist.additem();
  301. var lrow = grd_rcptlist.rows - 1;
  302. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  303. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", model.getValue("/root/temp/picmmech/picmmech_hngnm"));
  304. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  305. if (model.getValue("/root/main/issinfo/copyinfo/ioflag") == "O")
  306. {
  307. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  308. }
  309. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", currentdate);
  310. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpno", "0");
  311. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcphistno", "0");
  312. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/pid", model.getValue("/root/main/issinfo/copyinfo/pid"));
  313. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/orddd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  314. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/cretno", model.getValue("/root/main/issinfo/copyinfo/cretno"));
  315. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", "1");
  316. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", "1");
  317. // 처방코드(임시로 수가코드로 함)
  318. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  319. grd_rcptlist.addStatus(lrow, "insert");
  320. }
  321. }
  322. // 수가삭제 버튼
  323. function fRcptRowDel(){
  324. if (grd_rcptlist.rows <= 1) return;
  325. grd_rcptlist.deleteItem(grd_rcptlist.row);
  326. }
  327. // 발행목적 팝업 조회
  328. function fIssGoalPopUp(pIssGoalNMPath, pIssGoalCDPath){
  329. var sIssUsge = "";
  330. var sIssUsgeCnt = 0;
  331. var sIssGoalEtc = "";
  332. var sIssGoalEtcCd = "";
  333. setParameter("SPMMR02200_usage", "");
  334. setParameter("SPMMR02200_multichkyn", "N");
  335. modal("SPMMR02200");
  336. sIssUsge = model.getValue("/root/main/issusge");
  337. sIssUsgeCnt = model.getValue("/root/main/issusge").split("▩").length;
  338. if(sIssUsge != ""){
  339. for(var i=1; i<sIssUsgeCnt; i++){
  340. if(i != sIssUsgeCnt-1){
  341. if(sIssGoalEtc != "") sIssGoalEtc += ",";
  342. if(sIssGoalEtcCd != "") sIssGoalEtcCd += ",";
  343. }
  344. sIssGoalEtc += getArrayData(sIssUsge, i, 1);
  345. sIssGoalEtcCd += getArrayData(sIssUsge, i, 0);
  346. }
  347. model.setValue(pIssGoalNMPath, sIssGoalEtc);
  348. model.setValue(pIssGoalCDPath, sIssGoalEtcCd);
  349. }
  350. model.refresh();
  351. }
  352. // 저장
  353. function fSave()
  354. {
  355. model.makeNode("/root/send/savedata/copyinfo");
  356. model.makeNode("/root/send/savedata/emrapplist");
  357. model.makeNode("/root/send/savedata/rcptlist");
  358. var iIssHistRow = grd_isshist.row;
  359. var sIssNo = model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/issno");
  360. // 신청정보
  361. if (model.getValue("/root/main/issinfo/copyinfo/appmanflag") == "9")
  362. {
  363. model.setValue("/root/main/issinfo/copyinfo/appmannm", ipt_appmannm.currentText);
  364. }
  365. // 사본목적
  366. if(model.getValue("/root/main/issinfo/copyinfo/issgoaletccd") == "99"){
  367. model.setValue("/root/main/issinfo/copyinfo/issgoalnm", model.getValue("/root/main/issinfo/copyinfo/issgoaletcnm"));
  368. }else{
  369. model.setValue("/root/main/issinfo/copyinfo/issgoalnm", model.getValue("/root/main/issinfo/copyinfo/issgoaletc"));
  370. }
  371. model.setValue("/root/main/issinfo/copyinfo/issgoalcd", model.getValue("/root/main/issinfo/copyinfo/issgoaletccd"));
  372. model.copyNode("/root/send/savedata/copyinfo", "/root/main/issinfo/copyinfo");
  373. // emr서식정보
  374. model.setValue("/root/send/savedata/emrapplist", grd_emrapplist.getUpdateData());
  375. // 수가처방
  376. model.setValue("/root/send/savedata/rcptlist", grd_rcptlist.getUpdateData());
  377. var sCopySeqNo = model.getValue("/root/main/issinfo/copyinfo/copyseqno");
  378. var sEMRAppCopies = model.getValue("/root/main/issinfo/copyinfo/emrappcopies");
  379. if (submit("TXMRC01101", false) == true)
  380. {
  381. grd_emrapplist.clearStatus();
  382. grd_rcptlist.clearStatus();
  383. if(model.getValue("/root/send/cond/prcsflag") == "N"){
  384. model.setValue("/root/send/cond/prcsflag","Y");
  385. }
  386. fHistSearch();
  387. var iRow = grd_isshist.findRow(sCopySeqNo,1,19);
  388. grd_isshist.row = iRow;
  389. fIssSearch();
  390. model.refresh();
  391. // 신규로 발행번호 발생시 출력.
  392. if(sIssNo == ""){
  393. fPrnt();
  394. }else if((sIssNo!="")&&(sEMRAppCopies!=0)){//2008-10-24 이창록 추가 수정(사본 반환후 다시 입력시출력 가능)
  395. fPrnt();
  396. }
  397. //2008-09-26 이창록 수정
  398. var iRow = grd_rcptlist.fixedrows;
  399. var iStatus = grd_rcptlist.rowstatus(iRow);
  400. model.setValue("/root/send/cond/prcsflag","N");
  401. cmb_prcsflag.refresh();
  402. fHistSearch();
  403. if(iStatus!=2){
  404. model.setValue("/root/main/issinfo/copyinfo/emrappcopies","");
  405. ipt_emrappcopies.refresh();
  406. }
  407. }
  408. else
  409. {
  410. messageBox("저장에", "E009");
  411. }
  412. }
  413. // 삭제
  414. function fDelete(){
  415. model.makeNode("/root/send/savedata/copyinfo");
  416. model.makeNode("/root/send/savedata/rcptlist");
  417. model.setValue("/root/main/issinfo/copyinfo/status","d");
  418. model.copyNode("/root/send/savedata/copyinfo", "/root/main/issinfo/copyinfo");
  419. var iStatus = 0;
  420. for(var iRow=grd_rcptlist.fixedrows; iRow<=grd_rcptlist.rows-grd_rcptlist.fixedrows; iRow++){
  421. iStatus = grd_rcptlist.rowStatus(iRow);
  422. if(iStatus != 1 && iStatus != 3){
  423. grd_rcptlist.rowStatus(iRow) = 4;
  424. }
  425. }
  426. for(var iRow=grd_rcptlist.fixedrows; iRow<=grd_rcptlist.rows-grd_rcptlist.fixedrows; iRow++){
  427. iStatus = grd_rcptlist.rowStatus(iRow);
  428. if(iStatus == 1 || iStatus == 3){
  429. grd_rcptlist.deleteRow(iRow);
  430. }
  431. }
  432. // 수가처방
  433. model.setValue("/root/send/savedata/rcptlist", grd_rcptlist.getUpdateData());
  434. if (submit("TXMRC01101", false) == true)
  435. {
  436. grd_emrapplist.clearStatus();
  437. grd_rcptlist.clearStatus();
  438. fHistSearch();
  439. }
  440. else
  441. {
  442. messageBox("저장에", "E009");
  443. }
  444. model.refresh();
  445. }
  446. // 통합기록조회
  447. function fViewer()
  448. {
  449. if (grd_isshist.rows<= 1) return;
  450. if (grd_isshist.row < 1) return;
  451. var iRow = grd_emrapplist.row;
  452. // 한 장출력에서 여러장 출력으로 변경 2008/07/28 나종천 수정
  453. /*
  454. if (iRow < 1){
  455. messageBox("출력할 서식을 ","C002");
  456. return;
  457. }
  458. var pid = model.getValue("/root/main/isshist/isslist/pid");
  459. var sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+iRow+"]/chrtflag");
  460. var msg = "";
  461. // 영상 or EMR
  462. if(sChrtFlag == "E"){
  463. msg = sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+iRow+"]/formrecseq") + "▦";
  464. setParameter("SPMRI02400_prtrecinfo", msg); //oldflag▦signno▦
  465. modal("SPMRI02400");
  466. }else if(sChrtFlag == "I"){
  467. msg = sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+iRow+"]/medirecno") + "▦";
  468. setParameter("SPMRI02400_prtrecinfo", msg); //oldflag▦signno▦
  469. modal("SPMRI02400");
  470. }
  471. */
  472. if(grd_emrapplist.findRow("E", 1, grd_emrapplist.colRef("chrtflag"), false, false) == -1 && grd_emrapplist.findRow("I", 1, grd_emrapplist.colRef("chrtflag"), false, false) == -1){
  473. messageBox("출력할 EMR 서식이 ","I004");
  474. return;
  475. }
  476. var pid = model.getValue("/root/main/isshist/isslist/pid");
  477. var msg = "";
  478. var sChrtFlag = "";
  479. // 영상 or EMR
  480. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  481. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  482. if(sChrtFlag == "E"){
  483. msg = msg + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") + "▩";
  484. }else if(sChrtFlag == "I"){
  485. msg = msg + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") + "▩";
  486. }
  487. }
  488. setParameter("SPMRI02400_prtrecinfo", msg); //oldflag▦signno▦
  489. modal("SPMRI02400");
  490. }
  491. // 신청인 선택에 따른 신청인 명 셋팅
  492. function fAppManNmSetting(pFlag)
  493. {
  494. // 기타명 기타란 활성화
  495. if (model.getValue("/root/main/issinfo/copyinfo/appmanflag") != "9")
  496. //if (rdo_appmanflag.value != "9")
  497. {
  498. ipt_appmannm.disabled = true;
  499. ipt_appmannm.value = "";
  500. model.setValue("/root/main/issinfo/copyinfo/appmannm", rdo_appmanflag.label);
  501. }
  502. else
  503. {
  504. ipt_appmannm.disabled = false;
  505. ipt_appmannm.value = "";
  506. }
  507. // 위임장/인감증명서 유무
  508. /* if (model.getValue("/root/main/issinfo/copyinfo/appmanflag") == "1")
  509. //if (rdo_appmanflag.value == "1")
  510. {
  511. cmb_trustyn.disabled = true;
  512. if(pFlag != "S") cmb_trustyn.value = "N";
  513. }
  514. else
  515. {
  516. cmb_trustyn.disabled = false;
  517. if(pFlag != "S") cmb_trustyn.value = "Y";
  518. }*/
  519. }
  520. // 사본발행목적에 따른 목적명 셋팅
  521. /*
  522. function fIssGoalNmSetting()
  523. {
  524. // 기타명 기타란 활성화
  525. if (model.getValue("/root/main/issinfo/copyinfo/issgoalcd") != "99")
  526. //if (cmb_issgoalcd.value != "99")
  527. {
  528. ipt_issgoalnm.disabled = true;
  529. ipt_issgoalnm.value = "";
  530. model.setValue("/root/main/issinfo/copyinfo/issgoalnm", cmb_issgoalcd.label);
  531. }
  532. else
  533. {
  534. ipt_issgoalnm.disabled = false;
  535. //ipt_issgoalnm.value = "";
  536. }
  537. //model.refresh();
  538. }*/
  539. // 그리드 열 변경
  540. function fChangedGridRow(){
  541. var iRow = grd_rcptlist.row;
  542. var sShtNo= eval(model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno"));
  543. var sValue = 0;
  544. var sCalcScorCd = model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/calcscorcd");
  545. var sExtraPrcpTims = 0;
  546. var currentdate = getCurrentDate();
  547. var iStatus = grd_rcptlist.rowStatus(iRow);
  548. if(iStatus == 2){
  549. if(model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno") == model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno")){
  550. grd_rcptlist.rowStatus(iRow) = 0;
  551. }
  552. }
  553. /*if(sCalcScorCd == "HCDD027"){
  554. if(sShtNo < 1){
  555. messageBox("매수는","I003");
  556. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  557. if(iStatus == 2){
  558. grd_rcptlist.rowStatus(iRow) = 0;
  559. }
  560. }else if(sShtNo > 10){
  561. sValue = sShtNo - 10;
  562. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno","10");
  563. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == ""){
  564. grd_rcptlist.additem();
  565. var lrow = grd_rcptlist.rows - 1;
  566. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", "HCDD030");
  567. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  568. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", "");
  569. if (model.getValue("/root/main/issinfo/copyinfo/ioflag") == "O")
  570. {
  571. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  572. }
  573. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", currentdate);
  574. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpno", "0");
  575. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcphistno", "0");
  576. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/pid", model.getValue("/root/main/issinfo/copyinfo/pid"));
  577. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/orddd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  578. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/cretno", model.getValue("/root/main/issinfo/copyinfo/cretno"));
  579. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", sValue);
  580. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", sValue);
  581. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", sValue);
  582. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcptims", model.getValue("/root/main/issinfo/copyinfo/emrappcopies"));
  583. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/copyseqno", model.getValue("/root/main/issinfo/copyinfo/copyseqno"));
  584. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/issno", model.getValue("/root/main/issinfo/rcptlist[" + iRow + "]/issno"));
  585. // 처방코드(임시로 수가코드로 함)
  586. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", "HCDD030");
  587. grd_rcptlist.addStatus(lrow, "insert");
  588. }else{
  589. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  590. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  591. if(sExtraStatus != 1 && sExtraStatus != 3) grd_rcptlist.rowStatus(sExtraRow) = 2;
  592. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/shtno", sValue);
  593. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/prcpqty", sValue);
  594. }
  595. }else{
  596. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  597. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  598. if(sExtraStatus == 1 || sExtraStatus == 3){
  599. grd_rcptlist.deleteRow(sExtraRow, true);
  600. }else{
  601. grd_rcptlist.rowStatus(sExtraRow) = 4;
  602. }
  603. }
  604. }*/if(sCalcScorCd == "HCDD001"){
  605. if(sShtNo < 1){
  606. messageBox("매수는","I003");
  607. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  608. if(iStatus == 2){
  609. grd_rcptlist.rowStatus(iRow) = 0;
  610. }
  611. sShtNo = model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno");
  612. }
  613. if(sShtNo != model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/prcpqty")){
  614. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/prcpqty", sShtNo);
  615. }
  616. }else{ // 추가
  617. if(sShtNo < 1){
  618. var iStatus = grd_rcptlist.rowStatus(iRow);
  619. if(iStatus == 1 || iStatus == 3)
  620. grd_rcptlist.deleteRow(iRow, true);
  621. else
  622. grd_rcptlist.rowStatus(iRow) = 4;
  623. }else{
  624. if(sShtNo != model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/prcpqty")){
  625. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/prcpqty", sShtNo);
  626. }
  627. }
  628. }
  629. }
  630. // 신청부수가 변경될 경우
  631. function fChangedAppCopies(){
  632. var sEMRAppCopies = model.getValue("/root/main/issinfo/copyinfo/emrappcopies");
  633. var iPrcpTims = 0;
  634. var sShtNo = 0;
  635. var sOldShtNo = 0;
  636. var iStatus = 0;
  637. for(var iRow = grd_rcptlist.fixedrows; iRow <= grd_rcptlist.rows - grd_rcptlist.fixedrows; iRow++){
  638. iPrcpTims = model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldprcptims");
  639. iStatus = grd_rcptlist.rowstatus(iRow);
  640. if(sEMRAppCopies != iPrcpTims){
  641. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/prcptims",sEMRAppCopies);
  642. if(iStatus == 0) grd_rcptlist.rowstatus(iRow) = 2;
  643. }else{
  644. sShtNo = model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno");
  645. sOldShtNo = model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno");
  646. if(sShtNo == sOldShtNo && iStatus == 2){
  647. grd_rcptlist.rowstatus(iRow) = 0;
  648. }
  649. }
  650. }
  651. }
  652. // 승락서/증명서 출력
  653. function fPrnt(pFlag){
  654. var iRow = grd_isshist.row;
  655. var pid = model.getValue("/root/main/issinfo/copyinfo/pid");
  656. if(pid == ""){
  657. messageBox("환자를 먼저","C002");
  658. return;
  659. }
  660. var issno = model.getValue("/root/main/isshist/isslist["+iRow+"]/issno");
  661. if(issno == "" ){
  662. messageBox("발행번호 부여 후에 출력","I006");
  663. return;
  664. }
  665. // 증명서
  666. if(pFlag == "crtfct" || pFlag == null){
  667. var sIssGoalCd = "";
  668. var sIssGoalNm = "";
  669. model.setValue("/root/temp/crtfctinfo/issno", issno); // 발행번호
  670. model.setValue("/root/temp/crtfctinfo/pid", model.getValue("/root/main/isshist/isslist["+iRow+"]/pid"));
  671. model.setValue("/root/temp/crtfctinfo/hngnm", model.getValue("/root/main/isshist/isslist["+iRow+"]/hngnm"));
  672. sIssGoalCd = model.getValue("/root/main/issinfo/copyinfo/issgoalcd");
  673. sIssGoalNm = model.getValue("/root/main/issinfo/copyinfo/issgoalnm");
  674. if(sIssGoalCd == "99"){ // 기타
  675. sIssGoalNm += "("+model.getValue("/root/main/issinfo/copyinfo/issgoaletcnm")+")";
  676. }
  677. model.setValue("/root/temp/crtfctinfo/issgoalnm", sIssGoalNm);
  678. model.setValue("/root/temp/crtfctinfo/totalcopies", model.getValue("/root/main/isshist/isslist["+iRow+"]/totalcopies"));
  679. model.setValue("/root/temp/crtfctinfo/issdd", model.getValue("/root/main/isshist/isslist["+iRow+"]/issdt").substr(0,8));
  680. model.setValue("/root/temp/crtfctinfo/issdd", model.getValue("/root/main/isshist/isslist["+iRow+"]/issdt").substr(0,8));
  681. model.setValue("/root/temp/crtfctinfo/hospnm", model.getValue("/root/main/issinfo/issbasinfolist/hospnm"));
  682. model.setValue("/root/temp/crtfctinfo/addr" , model.getValue("/root/main/issinfo/issbasinfolist/addr"));
  683. model.makeValue("/root/temp/crtfctinfo/usernm", getUserInfo("usernm"));
  684. //2008-09-20 이창록 추가 (신청 부수만큼 증명서 출력)
  685. var sEMRAppCopies = model.getValue("/root/main/issinfo/copyinfo/emrappcopies");
  686. exeReportPreview("RPMRC01100", "XMLSTR", "", "", "true", "", "", "", "", "true","","","","","",sEMRAppCopies);
  687. //exeReportPreview("RPMRC01100", "XMLSTR", "", "", "false", "", "", "", "", "true");
  688. }
  689. if(pFlag == "cnfm" || pFlag == null){ // 승락서
  690. var formnm = "";
  691. model.resetInstanceNode("/root/temp/cnfminfo/issinfo");
  692. model.setValue("/root/temp/cnfminfo/issinfo/pid", pid);
  693. model.setValue("/root/temp/cnfminfo/issinfo/issno", issno);
  694. model.setValue("/root/temp/cnfminfo/issinfo/orddeptnm", model.getValue("/root/main/isshist/isslist["+iRow+"]/orddeptnm"));
  695. model.setValue("/root/temp/cnfminfo/issinfo/atdoctnm", model.getValue("/root/main/isshist/isslist["+iRow+"]/atdoctnm"));
  696. model.setValue("/root/temp/cnfminfo/issinfo/hngnm", model.getValue("/root/main/isshist/isslist["+iRow+"]/hngnm"));
  697. model.setValue("/root/temp/cnfminfo/issinfo/rrgstno1", model.getValue("/root/main/isshist/isslist["+iRow+"]/rrgstno1"));
  698. model.setValue("/root/temp/cnfminfo/issinfo/rrgstno2", model.getValue("/root/main/isshist/isslist["+iRow+"]/rrgstno2"));
  699. model.setValue("/root/temp/cnfminfo/issinfo/totalcopies", model.getValue("/root/main/isshist/isslist["+iRow+"]/totalcopies"));
  700. model.setValue("/root/temp/cnfminfo/issinfo/issgoalcd", model.getValue("/root/main/isshist/isslist["+iRow+"]/issgoalcd"));
  701. model.setValue("/root/temp/cnfminfo/issinfo/issgoaletcnm", model.getValue("/root/main/issinfo/copyinfo/issgoaletcnm"));
  702. model.setValue("/root/temp/cnfminfo/issinfo/hospnm", model.getValue("/root/main/issinfo/issbasinfolist/hospnm"));
  703. var emrordflag = model.getValue("/root/main/issinfo/copyinfo/emrordflag");
  704. if (emrordflag.indexOf("O") >= 0 || emrordflag.indexOf("A") >= 0){
  705. model.setValue("/root/temp/cnfminfo/issinfo/outflag", "O");
  706. }
  707. if (emrordflag.indexOf("I") >= 0 || emrordflag.indexOf("A") >= 0){
  708. model.setValue("/root/temp/cnfminfo/issinfo/inflag", "I");
  709. }
  710. if (emrordflag.indexOf("E") >= 0 || emrordflag.indexOf("A") >= 0){
  711. model.setValue("/root/temp/cnfminfo/issinfo/erflag", "E");
  712. }
  713. model.setValue("/root/temp/cnfminfo/issinfo/appdd", model.getValue("/root/main/isshist/isslist["+iRow+"]/appdt").substr(0,8));
  714. model.setValue("/root/temp/cnfminfo/issinfo/issdd", model.getValue("/root/main/isshist/isslist["+iRow+"]/issdt").substr(0,8));
  715. for(var i = grd_emrapplist.fixedrows; i <= grd_emrapplist.rows - grd_emrapplist.fixedrows; i++){
  716. if(formnm != "") formnm += ",";
  717. if(model.getValue("/root/main/issinfo/emrapplist["+i+"]/chrtflag") == "P"){
  718. formnm += "종이차트("+model.getValue("/root/main/issinfo/emrapplist["+i+"]/formnm")+")";
  719. }else{
  720. formnm += model.getValue("/root/main/issinfo/emrapplist["+i+"]/formnm");
  721. }
  722. }
  723. model.setValue("/root/temp/cnfminfo/issinfo/formnm", formnm);
  724. var instcd = "";
  725. instcd = getUserInfo("dutplceinstcd");
  726. if( instcd == '031'){
  727. exeReportPreview("RPMRC01102", "XMLSTR", "", "", "true", "", "", "", "", "true");
  728. }else{
  729. exeReportPreview("RPMRC01101", "XMLSTR", "", "", "true", "", "", "", "", "true");
  730. }
  731. }
  732. }
  733. // 사본신청 팝업 호출
  734. function fPopUpIssApp(){
  735. var iRow = grd_isshist.row;
  736. if(iRow < 1){
  737. messageBox("환자를 먼저", "C002");
  738. return;
  739. }
  740. var cRow = grd_isshist.row - grd_isshist.fixedRows + 1;
  741. var IssNo = model.getValue("/root/main/isshist/isslist["+cRow+"]/issno");
  742. //이창록 수정2008-12-17 사용자 요구에 따라 의료정보팀이 아니면 발행번호 부여된 환자 수정 불가
  743. var userinfo = getUserInfo("dutplcecd");
  744. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  745. //if(userinfo != "3230000000"){
  746. if(model.getValue("/root/hidden/deptcd/hardcd[hardcd='" + userinfo + "']/hardcd") != "")
  747. {
  748. // KNUH_20101207_박성호_end
  749. if(IssNo!=""){
  750. messageBox("발행번호가 부여된 환자는 수정할 수","I004");
  751. return;
  752. }
  753. }
  754. setParameter("SPMRC03000_copyparam", "");
  755. var sParamMsg = "pid▦hngnm▦ioflag▦orddd▦cretno▦orddeptcd▦orddrid▩";
  756. var sParamMsg = model.getValue("/root/main/isshist/isslist["+iRow+"]/pid")+"▦"
  757. + model.getValue("/root/main/isshist/isslist["+iRow+"]/hngnm")+"▦"
  758. + model.getValue("/root/main/isshist/isslist["+iRow+"]/ioflag")+"▦"
  759. + model.getValue("/root/main/isshist/isslist["+iRow+"]/rrgstno2")+"▦"
  760. + model.getValue("/root/main/isshist/isslist["+iRow+"]/orddd")+"▦"
  761. + model.getValue("/root/main/isshist/isslist["+iRow+"]/cretno")+"▦"
  762. + model.getValue("/root/main/isshist/isslist["+iRow+"]/orddeptcd")+"▦"
  763. + model.getValue("/root/main/isshist/isslist["+iRow+"]/orddrid")+"▩";
  764. setParameter("SPMRC03100_copyparam",sParamMsg);
  765. open("SPMRC03200", 2, "", "", "", "", "", "left:1500; right:0; width:750; height:800;");
  766. setParameter("SMMRI00400_param_pid",model.getValue("/root/main/isshist/isslist["+iRow+"]/pid"));
  767. open("SMMRI00400", 1, "", "", "", "", "", "left:0; right:200; width:750; height:800;");
  768. /*setParameter("SMMRC01200_Param", "");
  769. var sParamMsg = "pid▦hngnm▦ioflag▦orddd▦cretno▦orddeptcd▦orddrid▩";
  770. sParamMsg += model.getValue("/root/main/isshist/isslist["+iRow+"]/pid")+"▦"
  771. + model.getValue("/root/main/isshist/isslist["+iRow+"]/hngnm")+"▦"
  772. + model.getValue("/root/main/isshist/isslist["+iRow+"]/ioflag")+"▦"
  773. + model.getValue("/root/main/isshist/isslist["+iRow+"]/orddd")+"▦"
  774. + model.getValue("/root/main/isshist/isslist["+iRow+"]/cretno")+"▦"
  775. + model.getValue("/root/main/isshist/isslist["+iRow+"]/orddeptcd")+"▦"
  776. + model.getValue("/root/main/isshist/isslist["+iRow+"]/orddrid")+"▩";
  777. setParameter("SMMRC01200_Param",sParamMsg);
  778. modal("SMMRC01200");
  779. fHistSearch();
  780. model.refresh();*/
  781. }
  782. // 처방이력 팝업 호출
  783. function fPopUpPrcpHist(){
  784. if(grd_isshist.row < 1){
  785. messageBox("환자를 먼저", "C002");
  786. return;
  787. }
  788. var copyseqno = model.getValue("/root/main/issinfo/copyinfo/copyseqno");
  789. setParameter("SPMRC02400_Param", copyseqno);
  790. modal("SPMRC02400");
  791. }
  792. // 통합기록조회 호출
  793. function fMedirecListCall(){
  794. if(grd_emrapplist.row < 1){
  795. alert("서식범위 신청내역에 환자 선택이 안 되었습니다.");
  796. return;
  797. }
  798. var selRow = grd_isshist.row ;
  799. var pid = model.getValue("/root/main/isshist/isslist[" + selRow + "]/pid");
  800. if(pid == ""){
  801. messageBox("통합기록조회를 검색할 환자를", "C002");
  802. return;
  803. }
  804. var wndobj = getOpenWindow("SMMRI00400");
  805. if(wndobj != null){
  806. setParameter("SMMRI00400_param_pid", pid);
  807. wndobj.javascript.fInitalize();
  808. }else{
  809. setParameter("SMMRI00400_param_pid", pid);
  810. open("SMMRI00400");
  811. }
  812. }
  813. // 검사결과조회 호출
  814. function fExamRultListCall(){
  815. if(grd_isshist.row < 1){
  816. alert("사본발급관리내역에 환자 선택이 안 되었습니다.");
  817. return;
  818. }
  819. var selRow = grd_isshist.row ;
  820. var pid = model.getValue("/root/main/isshist/isslist[" + selRow + "]/pid");
  821. if(pid == ""){
  822. messageBox("검사결과조회 할 환자를", "C002");
  823. return;
  824. }
  825. open("SMAER00800","","","","SMAER00800", "/root/main/isshist/isslist[" + selRow + "]/pid", "/root/send/data/singdata/srchpid");
  826. }
  827. /**
  828. * @group :
  829. * @ver :
  830. * @by : 이창록 2008-09-19 추가
  831. * @---------------------------------------------------
  832. * @type : function
  833. * @access : public
  834. * @desc : 사본출력에서 출력된 매수 받기
  835. * @param :
  836. * @return :parameter = pagecurrent
  837. * @---------------------------------------------------
  838. */
  839. function fGetShtNo(pageCurrent)
  840. {
  841. var iRow = grd_rcptlist.row;
  842. model.makeValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",pageCurrent);
  843. fChangedGridRow();
  844. }
  845. /**
  846. * @group :
  847. * @ver :
  848. * @by : 이창록 2008-09-19 추가
  849. * @---------------------------------------------------
  850. * @type : function
  851. * @access : public
  852. * @desc : 발급제한 환자 제한
  853. * @param :
  854. * @return :
  855. * @---------------------------------------------------
  856. */
  857. function fSaveExcp()
  858. {
  859. var iIssHistRow = grd_isshist.row;
  860. var msg = messageBox("사본 발급 제한 사유 : "+ model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/limrem")
  861. +"\n"+ model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/hngnm")+"환자는 사본발급 제한 환자입니다\n","Q002");
  862. if(msg=="6"){
  863. fSave();
  864. }else if(msg=="7"){
  865. return;
  866. }
  867. }