SPMNP01601.js 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660
  1. /* ---------------------------------------------------------------------
  2. 처방(물품)찾기(SMMNP01601.xfm - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. : Create By Francis Choi
  6. : 2015.05.02
  7. ---------------------------------------------------------------------- */
  8. var ProgramCls = "C"; // C:CCR MAIN, P:간호처방
  9. var ProgramId = "01601"; // 프로그램 ID
  10. var CurrentTab = 0 ; // 9: 물품찾기 -- import해서 사용할 경우에만 적용됨.
  11. var CondPath = "/root/init/GoodData/cond";
  12. var SendPath = "/root/send/reqdata";
  13. var sOproomcd = "";
  14. var sCartGubn = "";
  15. var sInsuKind = "";
  16. var sOpenFlag = "";
  17. var sPayflagcd = "";
  18. var drugyn = "";
  19. /* ------------------------------------------------- */
  20. /* SMMNP01601_처방(물품)찾기 */
  21. /* On Load 시 Call */
  22. /* ------------------------------------------------- */
  23. /* group : EMR 간호 수술마취 */
  24. /* ver : 2015.05.15 */
  25. /* by : 최학록 */
  26. /* --------------------------------------------------*/
  27. /* type : function */
  28. /* access : public */
  29. /* desc : xforms-ready시 수행한다 */
  30. /* return : */
  31. /* --------------------------------------------------*/
  32. function fGoodInit() {
  33. var srchflag = model.property("goodsearch");
  34. var flag = model.property("flag");
  35. var srchnm = model.property("srchnm");
  36. if(srchflag == "Y") {
  37. grd_goodlist.colHidden(grd_goodlist.colRef("chkflag")) = true;
  38. }
  39. model.copyNode(SendPath, CondPath);
  40. submit("TRMNP04463");//대분류 조회
  41. // if (ProgramCls == "P") { // C:CCR MAIN, P:간호처방
  42. // grp_main.attribute("height") = "705";
  43. // grd_prcplist.attribute("height") = "517"; //"552";
  44. // grd_goodlist.attribute("height") = "517"; //"552";
  45. // }
  46. // grd_goodlist.explorerbar = "sortshow";
  47. // grd_prcplist.explorerbar = "sortshow";
  48. //2008-08-21 오전 7:39:45 taebum 해당 환자의 수술방 정보
  49. sOproomcd = opener.javascript.getParameter("SPMNP01601_oproomcd");
  50. sCartGubn = opener.javascript.getParameter("SPMNP01601_cartgubn");
  51. sInsuKind = opener.javascript.getParameter("SPMNP01601_insukindcd");
  52. sOpenFlag = opener.javascript.getParameter("SPMNP01601_openflag");
  53. var ccrtstat = opener.javascript.getParameter("SPMNP01601_ccrtstat");
  54. if(getUserInfo("dutplceinstcd") == "032" && sCartGubn == "A") {
  55. chk_diffroomyn.visible = true;
  56. } else {
  57. chk_diffroomyn.visible = false;
  58. }
  59. if(ccrtstat == "9") {
  60. radio1.disabled = true;
  61. radio1.value = "3";
  62. drugyn = "Y";
  63. }
  64. model.setValue("/root/HideData/condition/cartgubn", sCartGubn);
  65. model.setValue("/root/HideData/condition/oproomcd", sOproomcd);
  66. model.setValue("/root/HideData/condition/deptflag", sCartGubn);
  67. model.setValue("/root/HideData/condition/insukind", sInsuKind);
  68. model.setValue("/root/HideData/condition/openflag", sOpenFlag);
  69. radio2.refresh();
  70. opener.javascript.setParameter("SPMNP01601_oproomcd","");
  71. opener.javascript.setParameter("SPMNP01601_cartgubn","");
  72. opener.javascript.setParameter("SPMNP01601_insukindcd","");
  73. grd_goodlist.fixedcellcheckbox(0,0) = true;
  74. grd_prcplist.fixedcellcheckbox(0,0) = true;
  75. //
  76. if (ProgramId == "01600") { // 프로그램 ID
  77. CondPath = "/root/main/cond";
  78. }
  79. // document.body.pageheight = "706";
  80. model.removeNodeset("/root/main/goodlist");
  81. model.removeNodeset("/root/main/prcplist");
  82. //submit("TRMNP04462");
  83. if (checkOpener() ) {
  84. var refnm = opener.javascript.getParameter("refnm");
  85. var refflag = opener.javascript.getParameter("refflag");
  86. var goodflag = opener.javascript.getParameter("goodflag");
  87. model.setValue(CondPath + "/refnm" , refnm );
  88. model.setValue(CondPath + "/refflag" , refflag );
  89. model.setValue(CondPath + "/goodflag", goodflag);
  90. model.refresh();
  91. if(srchflag == "Y") {
  92. grd_goodlist.colHidden(grd_goodlist.colRef("chkflag")) = true;
  93. if(flag == "cd") {
  94. rdo_refcond.value = "2";
  95. ipt_refcond.value = srchnm;
  96. } else if(flag == "nm") {
  97. rdo_refcond.value = "1";
  98. ipt_refcond.value = srchnm;
  99. }
  100. if(srchnm != "") {
  101. fDataQuery();
  102. }
  103. } else {
  104. if (( refnm == "" )||
  105. ( refflag == "" )||
  106. ( goodflag == "" ) ) {//물품구분, 조회조건, 조회구분이 없으면 리턴
  107. if (refflag == "" ) {
  108. model.setValue(CondPath + "/refflag", '1');
  109. model.refresh();
  110. }
  111. }else {
  112. var currentText = ipt_refcond.currentText;
  113. currentText = currentText.toUpperCase();
  114. model.setValue(CondPath + "/refnm", currentText);
  115. ipt_refcond.refresh();//대문자로 변경
  116. var xNode = instance1.selectSingleNode(SendPath);
  117. if (xNode == null) {
  118. model.makeNode(SendPath);
  119. }
  120. model.setValue(CondPath + "/goodflag", "");
  121. model.copyNode(SendPath, CondPath);
  122. submit("TRMNP04461");
  123. }
  124. }
  125. }
  126. }
  127. // --------------------------------------
  128. // P:처방분류선택, G:물품구분선택
  129. // --------------------------------------
  130. function fComboListChange(pDataCls) {
  131. model.removeNodeset("/root/init/GoodData/lrglist");
  132. model.removeNodeset("/root/init/GoodData/mdllist");
  133. model.removeNodeset("/root/init/GoodData/smllist");
  134. model.setValue(CondPath + "/lrgcd", "");
  135. model.setValue(CondPath + "/mdlcd", "");
  136. model.setValue(CondPath + "/smlcd", "");
  137. var xNode = instance1.selectSingleNode(SendPath);
  138. if (xNode == null) {
  139. model.makeNode(SendPath);
  140. }
  141. model.copyNode(SendPath, CondPath);
  142. // model.copyNode("/root/send/reqdata", "/root/init/GoodData/cond");
  143. if (pDataCls == "P") {
  144. submit("TRMNP04467"); // 처방분류선택
  145. return;
  146. }
  147. submit("TRMNP04463");
  148. var currentText = ipt_refcond.currentText;
  149. currentText = currentText.toUpperCase();
  150. model.setValue(CondPath + "/refnm", currentText);
  151. ipt_refcond.refresh();//대문자로 변경
  152. var refnm = model.getValue(CondPath + "/refnm");
  153. if (refnm != "" ) { //메인화면에서 검색어를 치고 들어온 경우 물품구분 선택시 자동 조회
  154. if( (model.getValue(CondPath + "/goodflag") == "" )||
  155. (model.getValue(CondPath + "/lrgcd" ) == "" )||
  156. (model.getValue(CondPath + "/mdlcd" ) == "" ) ) {
  157. if (model.getValue(CondPath + "/refflag") == "" ) {
  158. messageBox("조회구분을 선택 하지", "E007");
  159. return;
  160. }
  161. }
  162. var xNode = instance1.selectSingleNode(SendPath);
  163. if (xNode == null) {
  164. model.makeNode(SendPath);
  165. }
  166. model.copyNode(SendPath, CondPath);
  167. submit("TRMNP04461");
  168. model.resetInstanceNode(SendPath);
  169. }
  170. }
  171. // --------------------------------------
  172. // P:처방분류선택, G:물품구분선택
  173. // --------------------------------------
  174. function fDataQuery() {
  175. //var menuParam = getScreenMenuParameter();
  176. var menuParam = "S";
  177. //var menuParam = "opc";
  178. var currentText = ipt_refcond.currentText;
  179. currentText = currentText.toUpperCase();
  180. model.setValue(CondPath + "/refnm", currentText);
  181. ipt_refcond.refresh(); //대문자로 변경
  182. if( (model.getValue(CondPath + "/goodflag") == "" )||
  183. (model.getValue(CondPath + "/lrgcd" ) == "" )||
  184. (model.getValue(CondPath + "/mdlcd" ) == "" ) ) {
  185. if (model.getValue(CondPath + "/refflag") == "" ) {
  186. messageBox("조회구분을 선택 하지", "E007");
  187. return;
  188. }
  189. }
  190. var xNode = instance1.selectSingleNode(SendPath);
  191. if (xNode == null) {
  192. model.makeNode(SendPath);
  193. }
  194. model.copyNode(SendPath, CondPath);
  195. model.makeValue(SendPath + "/menuparam", menuParam);
  196. model.makeValue(SendPath + "/oproomcd", sOproomcd);
  197. model.makeValue(SendPath + "/cartgubn", model.getValue("/root/HideData/condition/cartgubn"));
  198. model.makeValue(SendPath + "/insukind", model.getValue("/root/HideData/condition/insukind"));
  199. model.makeValue(SendPath + "/drugyn", drugyn);
  200. model.makeNode("/root/main/goodlist");
  201. if ( rdo_reftrgt.value == "PRC" ) {
  202. model.removeNodeset("/root/main/prcplist");
  203. submit("TRMNP04467");
  204. }else {
  205. model.removeNodeset("/root/main/goodlist");
  206. submit("TRMNP04461");
  207. }
  208. //model.resetInstanceNode("/root/send/reqdata");
  209. }
  210. // --------------------------------------
  211. // Grid Data Click
  212. // --------------------------------------
  213. function fGridDataClick(pGrid, pName) {
  214. var iRow = pGrid.row;
  215. var pPath = "/root/main/"+ pName +"[" + pGrid.row + "]/chkflag";
  216. if (pGrid.rows < 1 || pGrid.row == 0){
  217. return;
  218. }
  219. else if (pGrid.col == 1) {
  220. return;
  221. }else {
  222. var sFlag = model.getValue(pPath);
  223. model.setValue(pPath, ((sFlag == "true") ? "false" :"true"));
  224. }
  225. model.refresh();
  226. }
  227. // --------------------------------------
  228. // Query Condition Select 조회 조건 선택
  229. // --------------------------------------
  230. function fQueryCondSelect(pGrid, pName) {
  231. var sLogical = "true";
  232. var sVisible1 = "visible";
  233. var sVisible2 = "hidden" ;
  234. model.setValue(CondPath + "/goodflag", "");
  235. model.setValue(CondPath + "/lrgcd" , "");
  236. model.setValue(CondPath + "/mdlcd" , "");
  237. model.setValue(CondPath + "/smlcd" , "");
  238. var xNode = instance1.selectSingleNode(SendPath);
  239. if (xNode == null) {
  240. model.makeNode(SendPath);
  241. }
  242. model.copyNode(SendPath, CondPath);
  243. if (rdo_reftrgt.value == "PRC" ) {
  244. submit("TRMNP04463"); //처방분류 조회
  245. }else {
  246. model.removenode("/root/send");
  247. if (rdo_reftrgt.value == "CSR" ) {
  248. model.makeValue("/root/send/cdid" , "T"); // 공급실물품
  249. }
  250. submit("TRMNP04462");
  251. sLogical = "false" ;
  252. sVisible1 = "hidden" ;
  253. sVisible2 = "visible" ;
  254. }
  255. // ipt_refcond.disabled = sLogical;
  256. cmb_goodflag.disabled = sLogical;
  257. grd_prcplist.attribute("visibility") = sVisible1;
  258. grd_goodlist.attribute("visibility") = sVisible2;
  259. model.refresh();
  260. }
  261. // --------------------------------------
  262. // Query Condition Select 조회 조건 선택
  263. // --------------------------------------
  264. function fChoiceData() {
  265. var srchflag = model.property("goodsearch");
  266. opener.javascript.setParameter("SPMNP01601_closeyn", "");
  267. if(srchflag == "Y") {
  268. if(grd_goodlist.row > 0) {
  269. model.property("goodcd") = grd_goodlist.valueMatrix(grd_goodlist.row, grd_goodlist.colRef("goodcd"));
  270. model.property("goodnm") = grd_goodlist.valueMatrix(grd_goodlist.row, grd_goodlist.colRef("goodnm"));
  271. window.close();
  272. }
  273. }
  274. var diffroomyn = chk_diffroomyn.value;
  275. var chkyn = "N";
  276. var iParamList = "";
  277. var wCnt = 0 ;
  278. var wIDx = 0 ;
  279. var wCode = "goodcd";
  280. var wName = "goodnm";
  281. var iNode = "/root/main/goodlist";
  282. if (model.getValue(CondPath + "/tabflag") == "PRC" ) {
  283. wIDx = 1 ;
  284. wCode = "prcpcd";
  285. wName = "prcpnm";
  286. iNode = "/root/main/prcplist";
  287. }
  288. var wChk = "", oproomcd = "", purcflag = "", purcflagnm = "";
  289. var iRows = getNodesetCount(iNode);
  290. var closeyn= "";
  291. if( model.getValue("/root/HideData/condition/openflag") == "4600" ) {
  292. for( var i= 1; i <= iRows; i++ ) {
  293. wChk = model.getValue(iNode + "[" + i + "]/chkflag");
  294. oproomcd = model.getValue("/root/HideData/condition/oproomcd");
  295. purcflag = model.getValue(iNode + "[" + i + "]/purcflag");
  296. switch(purcflag) {
  297. case "1" :
  298. purcflagnm = "구매";
  299. break;
  300. case "2" :
  301. purcflagnm = "수탁";
  302. break;
  303. case "3" :
  304. purcflagnm = "가납";
  305. break;
  306. }
  307. if (wChk == "true") {
  308. iParamList += purcflagnm + "|" // 00 구매구분
  309. + model.getValue(iNode + "[" + i + "]/goodcd") + "|" // 01 물품코드
  310. + model.getValue(iNode + "[" + i + "]/allsizespecid") + "|" // 02 사이즈
  311. + model.getValue(iNode + "[" + i + "]/goodnm") + "|" // 03 물품명
  312. + model.getValue(iNode + "[" + i + "]/goodspec") + "|" // 04 물품규격
  313. + model.getValue(iNode + "[" + i + "]/goodmodel") + "|" // 05 물품모델
  314. + model.getValue(iNode + "[" + i + "]/prodcmpynm") + "|" // 06 제조회사
  315. + model.getValue(iNode + "[" + i + "]/prcpunit") + "|" // 07 처방단위
  316. + model.getValue(iNode + "[" + i + "]/safestocqty") + "|" // 08 안전재고
  317. + model.getValue(iNode + "[" + i + "]/stocqty") + "|" // 09 방재고
  318. + model.getValue(iNode + "[" + i + "]/deliveunit") + "|" // 10 불출단위
  319. + 0 + "|" // 11 의뢰수량
  320. + oproomcd + "▩"; // 12 수술방
  321. wCnt += 1;
  322. }
  323. }
  324. }else {
  325. for( var i= 1; i <= iRows; i++ ) {
  326. wChk = model.getValue(iNode + "[" + i + "]/chkflag");
  327. var calcscorcd = model.getValue(iNode + "[" + i + "]/calcscorcd");
  328. var insuyn = model.getValue(iNode + "[" + i + "]/insuyn");
  329. var sTmpReqmthd = model.getValue(iNode + "[" + i + "]/reqmthd");
  330. var sPrcpclscd = model.getValue(iNode + "[" + i + "]/prcpclscd");
  331. var sTmpGoodcd = model.getValue(iNode + "[" + i + "]/" + wCode);
  332. var sTmpGoodnm = model.getValue(iNode + "[" + i + "]/" + wName);
  333. if (wChk == "true") {
  334. /*
  335. //2008-09-04 오후 12:46:28 실재고량이 0건일 경우 등록할 수 없도록 메세지창 호출
  336. if(model.getValue(iNode + "[" + i + "]/stocqty") == "" || model.getValue(iNode + "[" + i + "]/stocqty") == "0"){
  337. alert("물품코드 : "+sTmpGoodcd+" "+sTmpGoodnm+"에 대한 재고가 없습니다. CCR에 문의하시기 바랍니다.");
  338. return false;
  339. }
  340. */
  341. //처방불가 물품은 처방 안되게 막음, 삭제는 제외 2009.08.31 K.J.M
  342. //구매정보에 수가가 있어야 하는 경우만 체크 2010.03.15 K. J. M
  343. if( sTmpReqmthd == "X"&&insuyn == "Y" ) {
  344. messageBox(sTmpGoodcd+"코드 처방불가이므로 처방 할 수 없습니다.!", "E000");
  345. return;
  346. }
  347. if( insuyn == "Y"&&calcscorcd == "" ) {
  348. messageBox(sTmpGoodcd+"코드 처방할 수 없습니다.!", "E000");
  349. return;
  350. //}else if( sTmpReqmthd == ""&&calcscorcd == ""&&insuyn == ""&&sPrcpclscd == "" ) {//구매, 처방 마스터에 살아있는데이터가 없을 때 막음 2010.01.04 K.J.M
  351. // messageBox(sTmpGoodcd+"코드 처방할 수 없습니다.!", "E000");
  352. // return;
  353. }else {
  354. if(diffroomyn == "Y") {
  355. var sCartGubn = opener.javascript.getParameter("SPMNP01601_cartgubn");
  356. var allsizespecid = model.getValue(iNode + "[" + i + "]/allsizespecid");
  357. var oprsrvno = opener.javascript.getParameter("SPMNP01601_oprsrvno");
  358. setParameter("SPMNP01808_goodcd", sTmpGoodcd);
  359. setParameter("SPMNP01808_goodnm", sTmpGoodnm);
  360. setParameter("SPMNP01808_cartgubn", sCartGubn);
  361. setParameter("SPMNP01808_allsizespecid", allsizespecid);
  362. setParameter("SPMNP01808_oprsrvno", oprsrvno);
  363. setParameter("SPMNP01808_closeyn", "");
  364. setParameter("SPMNP01808_param", "");
  365. modal("SPMNP01808");
  366. closeyn = getParameter("SPMNP01808_closeyn");
  367. var str = getParameter("SPMNP01808_param");
  368. var cnt = getParameter("SPMNP01808_cnt");
  369. var arr;
  370. var arr2;
  371. var currqty="";
  372. var oproomcd = "";
  373. var oproomnm = "";
  374. if(closeyn == "") {
  375. messageBox("다른방으로 처방을 선택하지 않으셨습니다", "E");
  376. return;
  377. }
  378. if(cnt > 1) {
  379. arr = str.split("^");
  380. for(var j = 0; j < arr.length; j++) {
  381. arr2 = arr[j].split("|");
  382. oproomcd = arr2[0];
  383. currqty = arr2[1];
  384. oproomnm = arr2[2];
  385. iParamList += model.getValue(iNode + "[" + i + "]/" + wCode ) + "|" // 00 처방코드
  386. + model.getValue(iNode + "[" + i + "]/" + wName ) + "|" // 01 처방명
  387. + model.getValue(iNode + "[" + i + "]/allsizespecid") + "|" // 02 사이즈
  388. + model.getValue(iNode + "[" + i + "]/prodcmpynm" ) + "|" // 03 제조회사명
  389. + model.getValue(iNode + "[" + i + "]/cureflag" ) + "|" // 04 처치구분
  390. + model.getValue(iNode + "[" + i + "]/goodspec" ) + "|" // 05 물품규격
  391. + model.getValue(iNode + "[" + i + "]/goodmodel" ) + "|" // 06 물품모델
  392. + model.getValue(iNode + "[" + i + "]/prcpunit" ) + "|" // 07 처방단위 model.getValue(iNode + "[" + i + "]/prcpunit" ))
  393. + model.getValue(iNode + "[" + i + "]/drugmthdspccd") + "|" // 08 투여방법 및 검체코드
  394. + model.getValue(iNode + "[" + i + "]/stocqty") + "|" // 09 해당방의 실재고량
  395. + model.getValue(iNode + "[" + i + "]/acmlbaseqty") + "|" // 10 물품의 기준수량
  396. + model.getValue(iNode + "[" + i + "]/reqmthd") + "|" // 11 청구방법
  397. + model.getValue(iNode + "[" + i + "]/purcflag") + "|" // 12 물품구분
  398. + model.getValue(iNode + "[" + i + "]/prcpclscd") + "|" // 13 처방구분
  399. + model.getValue(iNode + "[" + i + "]/payflagcd") + "|" // 14 급여구분
  400. + model.getValue(iNode + "[" + i + "]/calculyn") + "|" // 15 산정여부
  401. + model.getValue(iNode + "[" + i + "]/insuyn") + "|" // 16 수가대상여부
  402. + model.getValue(iNode + "[" + i + "]/calcscorcd") + "|"
  403. + oproomcd + "|"
  404. + currqty + "|"
  405. + oproomnm +"▩";
  406. }
  407. } else {
  408. arr2 = str.split("|");
  409. oproomcd = arr2[0];
  410. currqty = arr2[1];
  411. oproomnm = arr2[2];
  412. iParamList += model.getValue(iNode + "[" + i + "]/" + wCode ) + "|" // 00 처방코드
  413. + model.getValue(iNode + "[" + i + "]/" + wName ) + "|" // 01 처방명
  414. + model.getValue(iNode + "[" + i + "]/allsizespecid") + "|" // 02 사이즈
  415. + model.getValue(iNode + "[" + i + "]/prodcmpynm" ) + "|" // 03 제조회사명
  416. + model.getValue(iNode + "[" + i + "]/cureflag" ) + "|" // 04 처치구분
  417. + model.getValue(iNode + "[" + i + "]/goodspec" ) + "|" // 05 물품규격
  418. + model.getValue(iNode + "[" + i + "]/goodmodel" ) + "|" // 06 물품모델
  419. + model.getValue(iNode + "[" + i + "]/prcpunit" ) + "|" // 07 처방단위 model.getValue(iNode + "[" + i + "]/prcpunit" ))
  420. + model.getValue(iNode + "[" + i + "]/drugmthdspccd") + "|" // 08 투여방법 및 검체코드
  421. + model.getValue(iNode + "[" + i + "]/stocqty") + "|" // 09 해당방의 실재고량
  422. + model.getValue(iNode + "[" + i + "]/acmlbaseqty") + "|" // 10 물품의 기준수량
  423. + model.getValue(iNode + "[" + i + "]/reqmthd") + "|" // 11 청구방법
  424. + model.getValue(iNode + "[" + i + "]/purcflag") + "|" // 12 물품구분
  425. + model.getValue(iNode + "[" + i + "]/prcpclscd") + "|" // 13 처방구분
  426. + model.getValue(iNode + "[" + i + "]/payflagcd") + "|" // 14 급여구분
  427. + model.getValue(iNode + "[" + i + "]/calculyn") + "|" // 15 산정여부
  428. + model.getValue(iNode + "[" + i + "]/insuyn") + "|" // 16 수가대상여부
  429. + model.getValue(iNode + "[" + i + "]/calcscorcd") + "|"
  430. + oproomcd + "|"
  431. + currqty + "|"
  432. + oproomnm +"▩";
  433. }
  434. } else {
  435. iParamList += model.getValue(iNode + "[" + i + "]/" + wCode ) + "|" // 00 처방코드
  436. + model.getValue(iNode + "[" + i + "]/" + wName ) + "|" // 01 처방명
  437. + model.getValue(iNode + "[" + i + "]/allsizespecid") + "|" // 02 사이즈
  438. + model.getValue(iNode + "[" + i + "]/prodcmpynm" ) + "|" // 03 제조회사명
  439. + model.getValue(iNode + "[" + i + "]/cureflag" ) + "|" // 04 처치구분
  440. + model.getValue(iNode + "[" + i + "]/goodspec" ) + "|" // 05 물품규격
  441. + model.getValue(iNode + "[" + i + "]/goodmodel" ) + "|" // 06 물품모델
  442. + model.getValue(iNode + "[" + i + "]/prcpunit" ) + "|" // 07 처방단위 model.getValue(iNode + "[" + i + "]/prcpunit" ))
  443. + model.getValue(iNode + "[" + i + "]/drugmthdspccd") + "|" // 08 투여방법 및 검체코드
  444. + model.getValue(iNode + "[" + i + "]/stocqty") + "|" // 09 해당방의 실재고량
  445. + model.getValue(iNode + "[" + i + "]/acmlbaseqty") + "|" // 10 물품의 기준수량
  446. + model.getValue(iNode + "[" + i + "]/reqmthd") + "|" // 11 청구방법
  447. + model.getValue(iNode + "[" + i + "]/purcflag") + "|" // 12 물품구분
  448. + model.getValue(iNode + "[" + i + "]/prcpclscd") + "|" // 13 처방구분
  449. + model.getValue(iNode + "[" + i + "]/payflagcd") + "|" // 14 급여구분
  450. + model.getValue(iNode + "[" + i + "]/calculyn") + "|" // 15 산정여부
  451. + model.getValue(iNode + "[" + i + "]/insuyn") + "|" // 16 수가대상여부
  452. + model.getValue(iNode + "[" + i + "]/calcscorcd") + "|" // 17 수가코드
  453. + oproomcd + "|" // 18 수술방
  454. + currqty + "|" // 19 수량
  455. + oproomnm +"▩"; // 20 수술방명
  456. }
  457. wCnt += 1;
  458. }
  459. }
  460. }
  461. }
  462. if(checkOpener()){
  463. if( wCnt > 0 ) {
  464. if(closeyn == "Y") {
  465. opener.javascript.setParameter("SPMNP01601_closeyn", "Y");
  466. }
  467. opener.javascript.fGoodDataDisplay(iParamList);
  468. }
  469. }
  470. }
  471. /* ** 2008-07-31 오전 10:13:35 taebum SMMNP01800.js로 function 이동 - 팝업 처리를 위함.
  472. // 물품코드 popup Data Display
  473. function fGoodDataDisplay(pParamList) {
  474. var iParamData = pParamList.split("▩");
  475. var sIdx = 0;
  476. for (ii = 0; ii < iParamData.length; ii++) {
  477. pData = iParamData[ii];
  478. var iSplit_Value = pData.split("|");
  479. if (iSplit_Value[0] != "") {
  480. var GoodCd = iSplit_Value[0];
  481. if (fCheckGoodCd(GoodCd)) {
  482. sIdx = iSplit_Value[4];
  483. if (sIdx == "") {
  484. sIdx = 0;
  485. }
  486. var iCartNode = gPathNode[8]+"/"+tPathCart[sIdx] ;
  487. var GoodNode = "/root/init/WorkData/"+tPathCart[sIdx];
  488. var xNode = instance1.selectSingleNode(GoodNode);
  489. if (xNode == null) {
  490. model.makeNode(GoodNode );
  491. model.copyNode(GoodNode, GoodCopy);
  492. }
  493. model.setValue(GoodNode + "/oprsrvno" , model.getValue(gPathNode[6] + "/oprsrvno" )); // 01 수술예약(의뢰)번호 (년도 + 일련번호)
  494. model.setValue(GoodNode + "/cartgubn" , model.getValue("/root/init/WorkData/cond/cartgubn")); // 02 Cart구분 (O:수술,A:마취)
  495. model.setValue(GoodNode + "/ordseq" , "" ); // 03 처방순번
  496. model.setValue(GoodNode + "/instcd" , "" ); // 04 병원기관코드(코드정의서 Z0007 참조)
  497. model.setValue(GoodNode + "/goodcd" , iSplit_Value[0] ); // 05 물품코드
  498. model.setValue(GoodNode + "/allsizespecid", iSplit_Value[2] ); // 06 ALLSIZE규격ID
  499. model.setValue(GoodNode + "/goodcls" , iSplit_Value[4] ); // 07 물품구분 1:Sutures,2:Supplies,3:Drug,4:Instrument,5:처치처방,6:수술소모품
  500. model.setValue(GoodNode + "/goodqty" , "0" ); // 08 물품수량
  501. model.setValue(GoodNode + "/addreductqty" , "0" ); // 09 가감수량
  502. model.setValue(GoodNode + "/payflagcd" , "0" ); // 10 급여구분코드 (코드정의서 M0029 참조)
  503. model.setValue(GoodNode + "/oproomcd" , model.getValue(gPathNode[6] + "/oproomcd" ) ); // 11 수술실코드
  504. model.setValue(GoodNode + "/prcpdd" , "" ); // 12 처방일자
  505. model.setValue(GoodNode + "/prcpno" , "" ); // 13 처방일자별 일련번호
  506. model.setValue(GoodNode + "/prcphistno" , "" ); // 14 처방이력생할때 마다 생성 (처방일자, 처방번호, 기관코드 기준)
  507. model.setValue(GoodNode + "/pid" , model.getValue(gPathNode[6] + "/pid" ) ); // 15 등록번호
  508. model.setValue(GoodNode + "/saveqty" , "0" ); // 16 변경Check 수량 (물품수량 + 가감수량)
  509. model.setValue(GoodNode + "/outqty" , "0" ); // 17 변경할 수량 (물품수량 + 가감수량)
  510. model.setValue(GoodNode + "/goodengnm" , iSplit_Value[1] ); // 18 물품(처방)명
  511. model.setValue(GoodNode + "/goodspec" , iSplit_Value[5] ); // 19 규격명
  512. model.setValue(GoodNode + "/prodcmpynm" , iSplit_Value[3] ); // 20 제조사
  513. model.setValue(GoodNode + "/goodmodel" , iSplit_Value[6] ); // 21 모델
  514. model.setValue(GoodNode + "/deliveunit" , iSplit_Value[7] ); // 22 단위
  515. model.setValue(GoodNode + "/oproomnm" , model.getValue(gPathNode[6] +"/oproomnm" ) ); // 23 수술실명
  516. model.setValue(GoodNode + "/oproomdeptcd" , model.getValue(gPathNode[6] +"/oproomdeptcd") ); // 24 수술실부서코드
  517. model.setValue(GoodNode + "/recflag" , "I" ); // 25 U:수정,I:입력구분
  518. model.setValue(GoodNode + "/drugmthdspccd", iSplit_Value[8] ); // 28 투여방법 및 검체코드
  519. xNode = instance1.selectSingleNode(iCartNode);
  520. if (xNode == null) {
  521. model.makeNode(iCartNode );
  522. model.copyNode(iCartNode , GoodNode);
  523. } else {
  524. model.duplicate(gPathNode[8], GoodNode);
  525. }
  526. // eval("grd_"+tNameCart[sIdx]).rowStyle(i, "data", "color") = "#ff00ff";
  527. eval("grd_"+tNameCart[sIdx]).refresh();
  528. }
  529. }
  530. }
  531. }
  532. */
  533. /* ------------------------------------------------- */
  534. /* ------End Of List ------------------------------- */
  535. /* -------------------------------------------------- */