SMMNP03900.xjs 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[function fInit()
  3. {
  4. ds_main_stoclist.clearData();
  5. var oParam = {};
  6. oParam.id = "TRMNP04604";
  7. oParam.service = "opanstapp.OpAnstStocMngt";
  8. oParam.method = "reqGetEmpLevel";
  9. oParam.inds = "";
  10. oParam.outds = "ds_temp_logginlevel=logginlevel";
  11. oParam.async = false;
  12. //oParam.callback = "cf_TRMNP04604";
  13. tranf_submit(oParam);
  14. dsf_makeValue(ds_send, "cdgrupid", "string", "038", 0);
  15. var oParam = {};
  16. oParam.id = "TRMNP00323";
  17. oParam.service = "opanstapp.OpAnstRec";
  18. oParam.method = "reqGetViewerCtrlInfo";
  19. oParam.inds = "req=ds_send";
  20. oParam.outds = "ds_viewctrl_viewctrllist_viewctrlinfo=viewctrlinfo";
  21. oParam.async = false;
  22. //oParam.callback = "cf_TRMNP00323";
  23. tranf_submit(oParam);
  24. ds_main_cond.setColumn(0, "refdeptflag", ds_viewctrl_viewctrllist_viewctrlinfo.getColumn(0, "cdnm"));
  25. if(ds_main_cond.getColumn(0, "refdeptflag") == "A")
  26. {
  27. grp_sea.cmb_oproomcd.value = "1111";
  28. }
  29. var level = ds_temp_logginlevel.getColumn(0, "usrlevel");
  30. var stocflag = ds_main_cond.getColumn(0, "stocflag");
  31. if( level == "C"||level == "M" )
  32. {
  33. grd_stoclist.setFormatColProperty(15, "size", 80);
  34. grd_stoclist.setFormatColProperty(14, "size", 60);
  35. }
  36. else
  37. {
  38. grd_stoclist.setFormatColProperty(15, "size", 0);
  39. grd_stoclist.setFormatColProperty(14, "size", 0);
  40. }
  41. // grd_stoclist.explorerbar = "sort";
  42. // grd_stoclist.fixedcellcheckbox(0,20) = true;
  43. var oParam = {};
  44. oParam.id = "TRMNP03905";
  45. oParam.service = "opanstapp.OpAnstStocMngt";
  46. oParam.method = "reqGetGoodFlagList";
  47. oParam.inds = "";
  48. oParam.outds = "ds_init_goodflaglist=goodflaglist ds_init_oproomlist=oproomlist";
  49. oParam.async = false;
  50. //oParam.callback = "cf_TRMNP03905";
  51. tranf_submit(oParam);
  52. frmf_addComboItem("grp_sea.cmb_oproomcd","전 체","","above");
  53. var oParam = {};
  54. oParam.id = "TRMNP03004";
  55. oParam.service = "opanstapp.OpAnstStocMngt";
  56. oParam.method = "reqGetRosettelist";
  57. oParam.inds = "";
  58. oParam.outds = "ds_init_rosettelist=rosettelist";
  59. oParam.async = false;
  60. //oParam.callback = "cf_TRMNP03004";
  61. tranf_submit(oParam);
  62. frmf_addComboItem("grp_sea.cmb_rosette","전체","","above");
  63. ds_send.clear;
  64. frmf_addComboItem("grp_sea.cmb_goodflag","전체","","above");
  65. ds_init_lrglist.clearData();
  66. ds_init_mdllist.clearData();
  67. ds_init_smllist.clearData();
  68. ds_main_cond.setColumn(0, "lrgcd", "");
  69. ds_main_cond.setColumn(0, "mdlcd", "");
  70. ds_main_cond.setColumn(0, "smlcd", "");
  71. ds_send_reqdata.copyData(ds_main_cond);
  72. var oParam = {};
  73. oParam.id = "TRMNP04463";
  74. oParam.service = "opanstapp.OpAnstStocMngt";
  75. oParam.method = "reqGetGubnLrg";
  76. oParam.inds = "reqdata=ds_send_reqdata";
  77. oParam.outds = "ds_init_lrglist=lrglist";
  78. oParam.async = false;
  79. //oParam.callback = "cf_TRMNP04463";
  80. tranf_submit(oParam);
  81. frmf_addComboItem("grp_sea.cmb_lrg","전 체","","above");
  82. dsf_makeValue(ds_send_reqdata, "cdgrupid", "string", "106", 0);
  83. dsf_makeValue(ds_send_reqdata, "supcdid", "string", "", 0);
  84. dsf_makeValue(ds_send_reqdata, "cdid", "string", "", 0);
  85. var oParam = {};
  86. oParam.id = "TRMNP04903";
  87. oParam.service = "opanstapp.OpAnstRef";
  88. oParam.method = "reqGetOpCommonCd";
  89. oParam.inds = "reqdata=ds_send_reqdata";
  90. oParam.outds = "ds_init_hardcodeinfo=hardcodeinfo";
  91. oParam.async = false;
  92. //oParam.callback = "cf_TRMNP04903";
  93. tranf_submit(oParam);
  94. if(String(ds_init_hardcodeinfo.getColumn(0, "cdid")).substr(4, 1) == "Y")
  95. {
  96. btn_delete.visible = true
  97. chk_delehist.visible = true;
  98. ds_main_cond.setColumn(0, "delflag", "Y");
  99. }
  100. else
  101. {
  102. btn_delete.visible = false;
  103. chk_delehist.visible = false;
  104. ds_main_cond.setColumn(0, "delflag", "");
  105. }
  106. }
  107. function fSetGoodCd(paramData)
  108. {
  109. var variable = "'";
  110. var goodcd = "";
  111. var goodnm = "";
  112. var oldgoodcd, oldgoodnm, oldvariable;
  113. oldgoodcd = ds_main_cond.getColumn(0, "goodcd");
  114. oldgoodnm = ds_main_cond.getColumn(0, "goodnm");
  115. oldvariable = ds_main_cond.getColumn(0, "variable");
  116. var getData = paramData;
  117. if(!utlf_isNull(getData))
  118. {
  119. if( ds_temp.getColumn(0, "chkcncl") != "C" )
  120. {
  121. var getDataTemp1 = String(getData).split("▩");
  122. for( var i = 0; i < getDataTemp1.length-1; i++)
  123. {
  124. var getDataTemp2 = getDataTemp1[i].split("|");
  125. variable = variable + getDataTemp2[0] + getDataTemp2[2] + "'";
  126. goodcd = goodcd + getDataTemp2[0];
  127. goodnm = goodnm + getDataTemp2[1];
  128. if(( i+1) != (getDataTemp1.length-1) )
  129. {
  130. variable = variable + ", '";
  131. goodcd = goodcd + ", ";
  132. goodnm = goodnm + ", ";
  133. }
  134. }
  135. if(!utlf_isNull(oldgoodcd))
  136. {
  137. goodcd = oldgoodcd + ", " + goodcd
  138. }
  139. if(!utlf_isNull(oldgoodnm))
  140. {
  141. goodnm = oldgoodnm + ", " + goodnm
  142. }
  143. if(!utlf_isNull(oldvariable))
  144. {
  145. variable = oldvariable + ", " + variable
  146. }
  147. ds_main_cond.setColumn(0, "goodcd", goodcd);
  148. ds_main_cond.setColumn(0, "goodnm", goodnm);
  149. ds_main_cond.setColumn(0, "variable", variable);
  150. fSearch();
  151. }
  152. }
  153. }
  154. function fSearch(flag)
  155. {
  156. var oproomcd = ds_main_cond.getColumn(0, "oproomcd");
  157. var stocflag = ds_main_cond.getColumn(0, "stocflag");
  158. var goodcd = ds_main_cond.getColumn(0, "goodcd");
  159. if(flag=="1")
  160. {
  161. }
  162. else
  163. {
  164. if(ds_main_cond.getColumn(0, "refcnfmyn") == "N" || ds_main_cond.getColumn(0, "refcnfmyn") == "Y")
  165. {
  166. }
  167. else
  168. {
  169. if(utlf_isNull(oproomcd) && utlf_isNull(goodcd))
  170. {
  171. sysf_messageBox("수술방을 선택하지 ", "E007");
  172. grp_sea.cmb_oproomcd.setFocus();
  173. return;
  174. }
  175. }
  176. }
  177. ds_main_stoclist.clearData();
  178. var oParam = {};
  179. oParam.id = "TRMNP03904";
  180. oParam.service = "opanstapp.OpAnstStocMngt";
  181. oParam.method = "reqGetOpRoomInspGoodStocList";
  182. oParam.inds = "reqdata=ds_main_cond";
  183. oParam.outds = "ds_main_stoclist=stoclist";
  184. oParam.async = false;
  185. //oParam.callback = "cf_TRMNP03904";
  186. tranf_submit(oParam);
  187. ds_main_stoclist.rowposition = -1;
  188. if( stocflag == "R" || stocflag == "U" )
  189. {
  190. grd_stoclist.setCellProperty("Body", 17, "background", "#ccffcc");
  191. grd_stoclist.setCellProperty("Body", 17, "background2", "#ccffcc");
  192. grd_stoclist.setFormatColProperty(17, "size", 40);
  193. grd_stoclist.setFormatColProperty(19, "size", 0);
  194. }
  195. else
  196. {
  197. grd_stoclist.setCellProperty("Body", 19, "background", "#ccffcc");
  198. grd_stoclist.setCellProperty("Body", 19, "background2", "#ccffcc");
  199. grd_stoclist.setFormatColProperty(17, "size", 0);
  200. grd_stoclist.setFormatColProperty(19, "size", 40);
  201. }
  202. }
  203. function fHistSearch()
  204. {
  205. var oproomcd = ds_main_cond.getColumn(0, "oproomcd");
  206. var stocflag = ds_main_cond.getColumn(0, "stocflag");
  207. if(utlf_isNull(oproomcd))
  208. {
  209. sysf_messageBox("수술방을 선택하지 ", "E007");
  210. grp_sea.cmb_oproomcd.setFocus();
  211. return;
  212. }
  213. grd_stoclist.setFormatColProperty(19, "size", 0);
  214. grd_stoclist.setFormatColProperty(17, "size", 0);
  215. grd_stoclist.setFormatColProperty(23, "size", 0);
  216. grd_stoclist.setFormatColProperty(24, "size", 0);
  217. grd_stoclist.setFormatColProperty(25, "size", 0);
  218. ds_main_stoclist.clearData();
  219. ds_send_reqdata.clearData();
  220. ds_send_reqdata.copyData(ds_main_cond);
  221. dsf_makeValue(ds_send_reqdata, "searflag", "string", "H", 0);
  222. var oParam = {};
  223. oParam.id = "TRMNP03904";
  224. oParam.service = "opanstapp.OpAnstStocMngt";
  225. oParam.method = "reqGetOpRoomInspGoodStocList";
  226. oParam.inds = "reqdata=ds_send_reqdata";
  227. oParam.outds = "ds_main_stoclist=stoclist";
  228. oParam.async = false;
  229. //oParam.callback = "cf_TRMNP03904";
  230. tranf_submit(oParam);
  231. if( stocflag == "R" || stocflag == "U" )
  232. {
  233. grd_stoclist.setCellProperty("Body", 15, "background", "#ccffcc");
  234. grd_stoclist.setCellProperty("Body", 15, "background2", "#ccffcc");
  235. }
  236. else if( stocflag == "I" )
  237. {
  238. grd_stoclist.setCellProperty("Body", 17, "background", "#ccffcc");
  239. grd_stoclist.setCellProperty("Body", 17, "background2", "#ccffcc");
  240. }
  241. else
  242. {
  243. grd_stoclist.setCellProperty("Body", 15, "background", "transparent");
  244. grd_stoclist.setCellProperty("Body", 15, "background2", "transparent");
  245. grd_stoclist.setCellProperty("Body", 17, "background", "transparent");
  246. grd_stoclist.setCellProperty("Body", 17, "background2", "transparent");
  247. }
  248. }
  249. function fDelHist()
  250. {
  251. var chkflag, goodcd, allsizespecid, oproomcd, refdeptflag, pFlag, reqdd;
  252. var cnt = 0;
  253. var dellist = "m▦goodcd▦allsizespecid▦oproomcd▦refdeptflag▦reqdd";
  254. for( var i = 0; i < ds_main_stoclist.rowcount; i++ )
  255. {
  256. chkflag = ds_main_stoclist.getColumn(i, "chkflag");
  257. goodcd = ds_main_stoclist.getColumn(i, "goodcd");
  258. allsizespecid = ds_main_stoclist.getColumn(i, "allsizespecid");
  259. oproomcd = ds_main_stoclist.getColumn(i, "oproomcd");
  260. reqdd = ds_main_stoclist.getColumn(i, "reqdd");
  261. refdeptflag = ds_main_cond.getColumn(0, "refdeptflag");
  262. if( chkflag == "true" )
  263. {
  264. dellist = dellist + "▩" + "C" + "▦" + goodcd + "▦" + allsizespecid + "▦" + oproomcd + "▦" + refdeptflag + "▦" + reqdd;
  265. cnt++;
  266. }
  267. }
  268. if( cnt > 0 )
  269. {
  270. dsf_setCSVToDs("ds_send_savedata", dellist);
  271. var oParam = {};
  272. oParam.id = "TXMNP03903";
  273. oParam.service = "opanstapp.OpAnstStocMngt";
  274. oParam.method = "reqDelStocList";
  275. oParam.inds = "reqdata=ds_main_cond savedata=ds_send_savedata:u";
  276. oParam.outds = "ds_main_stoclist=stoclist";
  277. oParam.async = false;
  278. //oParam.callback = "cf_TXMNP03903";
  279. tranf_submit(oParam);
  280. fHistSearch();
  281. }
  282. else
  283. {
  284. sysf_messageBox("선택하신 물품이 없습니다.!", "E000");
  285. return;
  286. }
  287. }
  288. function fSave()
  289. {
  290. var iRows = -1;
  291. var chkflag, oproomcd, goodcd, allsizespecid, bfsafestocqty, safestocqty, reqcnfmyn;
  292. var stocqty, refdeptflag, stocflag, undeliveqty, deliveqty, stat, cnfmyn, reqdd, inspqty, reqqty;
  293. var cnt = 0, chkcnt = 0;
  294. iRows = ds_main_stoclist.rowcount;
  295. var stoclist = "m▦oproomcd▦goodcd▦allsizespecid▦bfsafestocqty▦inspqty▦refdeptflag▦safestocqty▦stocflag▦reqqty▦deliveqty▦undeliveqty▦cnfmyn▦reqdd";
  296. if( ds_main_cond.getColumn(0, "searflag") == "A" )
  297. {
  298. sysf_messageBox("전체조회시는 저장을 ", "E001");
  299. return;
  300. }
  301. for( var i = 0; i < iRows; i++ )
  302. {
  303. chkflag = ds_main_stoclist.getColumn(i, "chkflag");
  304. oproomcd = ds_main_stoclist.getColumn(i, "oproomcd");
  305. goodcd = ds_main_stoclist.getColumn(i, "goodcd");
  306. allsizespecid = ds_main_stoclist.getColumn(i, "allsizespecid");
  307. bfsafestocqty = ds_main_stoclist.getColumn(i, "bfsafestocqty");
  308. safestocqty = ds_main_stoclist.getColumn(i, "safestocqty");
  309. stocqty = ds_main_stoclist.getColumn(i, "stocqty");
  310. inspqty = ds_main_stoclist.getColumn(i, "inspqty");
  311. deliveqty = ds_main_stoclist.getColumn(i, "deliveqty");
  312. rtnqty = ds_main_stoclist.getColumn(i, "rtnqty");
  313. undeliveqty = ds_main_stoclist.getColumn(i, "undeliveqty");
  314. stat = ds_main_stoclist.getColumn(i, "stat");
  315. reqdd = ds_main_stoclist.getColumn(i, "reqdd");
  316. reqcnfmyn = ds_main_stoclist.getColumn(i, "reqcnfmyn");
  317. refdeptflag = ds_main_cond.getColumn(0, "refdeptflag");
  318. stocflag = ds_main_cond.getColumn(0, "stocflag");
  319. if( (reqcnfmyn == "Y")&&(reqdd == String(utlf_getCurrentDate()).substr(0, 8)) )
  320. {
  321. sysf_messageBox("확정된 당일의뢰는 CCR에서 확정취소를 해야만 수정가능합니다.", "E000");
  322. return;
  323. }
  324. else if( (reqcnfmyn == "Y")&&(reqdd != String(utlf_getCurrentDate()).substr(0, 8)) )
  325. {
  326. reqdd = String(utlf_getCurrentDate()).substr(0, 8);
  327. }
  328. if( stocflag == "R"||stocflag == "U" )
  329. {
  330. inspqty = "0";
  331. cnfmyn = "N";
  332. reqqty = (parseInt(safestocqty) - parseInt(bfsafestocqty));
  333. }
  334. else
  335. {
  336. cnfmyn = "N";
  337. reqqty = "0";
  338. }
  339. if( chkflag == "true" )
  340. {
  341. if( stocflag == "R"||stocflag == "U" )
  342. {
  343. if( parseInt(reqqty) == 0 )
  344. {
  345. chkcnt += 1;
  346. continue;
  347. }
  348. if( parseInt(bfsafestocqty) < 1 )
  349. {
  350. if( safestocqty == "0"|| utlf_isNull(safestocqty))
  351. {
  352. sysf_messageBox("수량을 입력하지 않았습니다.!", "E000");
  353. return;
  354. }
  355. }
  356. }
  357. else
  358. {
  359. if( inspqty == "0"|| utlf_isNull(inspqty))
  360. {
  361. sysf_messageBox("수량을 입력하지 않았습니다.!", "E000");
  362. return;
  363. }
  364. if( reqcnfmyn == "Y" )
  365. {
  366. stat = "I";
  367. }
  368. }
  369. if( (reqqty != 0)&&(parseInt(inspqty) == 0)&&(stocflag == "R"||stocflag == "U")&&(reqcnfmyn == "Y") )
  370. {
  371. if( parseInt(bfsafestocqty) != 0 )
  372. {
  373. stocflag = "U";
  374. }
  375. else
  376. {
  377. stocflag = "R";
  378. }
  379. stat = "I";
  380. }
  381. cnt += 1;
  382. stoclist = stoclist + "▩" + stat + "▦" + oproomcd + "▦" + goodcd + "▦" + allsizespecid + "▦" + bfsafestocqty + "▦" + inspqty
  383. + "▦" + refdeptflag + "▦" + safestocqty + "▦" + stocflag + "▦" + reqqty
  384. + "▦" + "0" + "▦" + "0" + "▦" + cnfmyn + "▦" + reqdd;
  385. }
  386. }
  387. if( cnt > 0 )
  388. {
  389. dsf_setCSVToDs("ds_send_savedata", stoclist);
  390. var oParam = {};
  391. oParam.id = "TXMNP03901";
  392. oParam.service = "opanstapp.OpAnstStocMngt";
  393. oParam.method = "reqExeSaveOrgInspStocInfo";
  394. oParam.inds = "reqdata=ds_main_cond savedata=ds_send_savedata:u";
  395. oParam.outds = "ds_main_stoclist=stoclist";
  396. oParam.async = false;
  397. //oParam.callback = "cf_TXMNP03901";
  398. tranf_submit(oParam);
  399. }
  400. else
  401. {
  402. if( chkcnt > 0 )
  403. {
  404. sysf_messageBox("변경된 수량이 없습니다.", "E000");
  405. }
  406. else
  407. {
  408. sysf_messageBox("선택한것이", "I004");
  409. }
  410. }
  411. }
  412. function fNextRow()
  413. {
  414. var row = -1;
  415. var rows = -1;
  416. var col = -1;
  417. var stocflag = ds_main_cond.getColumn(0, "stocflag");
  418. row = ds_main_stoclist.rowposition;
  419. rows = ds_main_stoclist.rowcount;
  420. col = grd_stoclist.currentcol;
  421. if( (row == (rows-1))||(row < 0)||(col == 0))
  422. {
  423. return;
  424. }
  425. else
  426. {
  427. if( stocflag == "R" || stocflag == "U" )
  428. {
  429. if( col == 17 )
  430. {
  431. ds_main_stoclist.rowposition = row + 1;
  432. }
  433. }
  434. else
  435. {
  436. if( col == 19 )
  437. {
  438. ds_main_stoclist.rowposition = row + 1;
  439. }
  440. }
  441. }
  442. }]]></Script>