SMMRC00300.xjs 66 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[//---
  3. // SMMRC00300 시작
  4. //---
  5. var allchkflag = "N";
  6. /**
  7. * _desc : 사용자의 권한을 체크하여 버튼셋팅.
  8. * btn_r 조회버튼, btn_x 저장 및 수정 버튼, btn_p : 출력버튼
  9. * _
  10. * _param :
  11. * _return :
  12. * _authur : 김선태 2007. 5. 8
  13. * _---------------------------------------------------
  14. */
  15. function fchkAuth()
  16. {
  17. var arrayCompList = this.components;
  18. for(var i=0; i< arrayCompList.length ; i++){
  19. trace("fchkAutho control element Name : " + arrayCompList[i].name);
  20. if(arrayCompList[i] instanceof Button ){
  21. if(arrayCompList[i].name.substr(0,6) == "btn_r_"){
  22. //document.controls.item(i).disabled = !checkAuth("R");
  23. arrayCompList[i].enable = frmf_checkAuth("R");
  24. }
  25. if(arrayCompList[i].name.substr(0,6) == "btn_x_"){
  26. //document.controls.item(i).disabled = !checkAuth("X");
  27. arrayCompList[i].enable = frmf_checkAuth("X");
  28. }
  29. if(arrayCompList[i].name.substr(0,6) == "btn_p_"){
  30. //document.controls.item(i).disabled = !checkAuth("P");
  31. arrayCompList[i].enable = frmf_checkAuth("P");
  32. }
  33. }
  34. }
  35. }
  36. /**
  37. * _desc : 폼초기화
  38. * _
  39. * _param :
  40. * _return :
  41. * _authur : 이은영 2008.06.12
  42. * _---------------------------------------------------
  43. */
  44. function fFormInit()
  45. {
  46. ds_condition.clearData();
  47. ds_condition.addRow();
  48. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  49. lf_getHardCDList("N", 5501, null, ds_temp_hardcd_hardcd);
  50. // KNUH_20101207_박성호_end
  51. ds_main_appchrt_appchrtlist.clearData();
  52. ds_main_appchrt_chrtlist.clearData();
  53. ds_main_appchrt_emrlist.clearData();
  54. ds_main_appchrtlist.clearData();
  55. //버튼 권한 설정
  56. fchkAuth();
  57. //* 마스터 정보 가져오기..
  58. //공통코드 가져오기...
  59. //M0392:챠트미대출사유코드
  60. var arrParam = [{dsNm : "ds_init_M0392_M0392",
  61. cdGrpId: "M0392" } ];
  62. appf_getCodeList(arrParam); //, true);
  63. // 대출용도, 대출과, 차트과, 차트담당자, 보관장소
  64. ds_send_reqdata.clearData();
  65. ds_send_reqdata.addRow();
  66. dsf_makeValue( ds_send_reqdata, "ioflag", "string", "O");
  67. dsf_makeValue( ds_send_reqdata, "useyn", "string", "Y");
  68. dsf_makeValue( ds_send_reqdata, "allwardyn", "string", "N");
  69. var oParam = {};
  70. oParam.id = "TRMRC00100";
  71. oParam.service = "chrtmngtapp.ChrtRendMngt";
  72. oParam.method = "reqGetLendMastInfo";
  73. oParam.inds = "req=ds_send_reqdata";
  74. oParam.outds = "ds_init_lendmastinfo_rendcdlist=rendcdlist ds_init_lendmastinfo_lenddeptlist=lenddeptlist ds_init_chrtdeptlist=chrtdeptlist ds_init_chrtchgrlist=chrtchgrlist ds_init_keepplcelist=keepplcelist";
  75. oParam.async = false;
  76. tranf_submit(oParam);
  77. //*/
  78. // 2009.01.12. 대출용도 셋 조회하기.. 사용자 직종코드 구하기..
  79. // 의사 : 03, 04, 05, 06
  80. // 간호사 : 11
  81. // 연구원, 연구직 : 0750, 0751 => 의사
  82. // 조교 : 0410 => 기타
  83. var jobkindcd = sysf_getUserInfo("jobkindcd");
  84. var dutplcecd = sysf_getUserInfo("dutplcecd");
  85. // 2009.02.13. 로그인 사용자의 원과를 셋하는 것으로 수정함... (보험팀 - 2개 unit 으로 구분됨 (4070300000,4070703000)) => 일단보류
  86. // sysf_getUserInfo(Key) => "userid|usernm|posinstcd|posinstnm|posdeptcd|posdeptnm|dutplceinstcd|dutplceinstnm|dutplcecd|dutplcenm|jobkindcd|jobkindnm|jobposcd|jobposnm|jobrespcd|jobrespnm|prfshipflagcd|prfshipflagnm|licnsno|specordyn|deptabbr|orddeptflag|wardflag|systemcd|systemnm|systeminstcd|systeminstnm|logindt|kmiip|kmiport|usergrp|ipaddr|dutinstcd|dutinstnm|dutunitcd|dutunitnm|mpphonno|orginstcd|orginstnm|orgdeptcd|orgdeptnm|userkindcd|ordsupdeptcd";
  87. // var dutplcecd = sysf_getUserInfo("posdeptcd");
  88. dsf_makeValue( ds_send_reqdata, "drflag", "string", "");
  89. dsf_makeValue( ds_send_reqdata, "nursflag", "string", "");
  90. dsf_makeValue( ds_send_reqdata, "deptcd", "string", "");
  91. if (jobkindcd == "0410" ) {
  92. dsf_makeValue( ds_send_reqdata, "deptcd", "string", dutplcecd);
  93. } else if (jobkindcd == "0750" || jobkindcd == "0750" ) {
  94. dsf_makeValue( ds_send_reqdata, "drflag", "string", "Y");
  95. } else if (jobkindcd.substring(0,2) == "03" || jobkindcd.substring(0,2) == "04" ||
  96. jobkindcd.substring(0,2) == "05" || jobkindcd.substring(0,2) == "06" ) {
  97. dsf_makeValue( ds_send_reqdata, "drflag", "string", "Y");
  98. } else if (jobkindcd.substring(0,2) == "11") {
  99. dsf_makeValue( ds_send_reqdata, "nursflag", "string", "Y");
  100. } else {
  101. dsf_makeValue( ds_send_reqdata, "deptcd", "string", dutplcecd);
  102. }
  103. var oParam1 = {};
  104. oParam1.id = "TRMRC01312";
  105. oParam1.service = "chrtmngtapp.ChrtRendMngt";
  106. oParam1.method = "reqGetLendSetList";
  107. oParam1.inds = "req=ds_send_reqdata";
  108. oParam1.outds = "ds_init_lendset_lendsetlist=lendsetlist";
  109. oParam1.async = false;
  110. tranf_submit(oParam1);
  111. if(!utlf_isNull(ds_init_lendset_lendsetlist)) {
  112. var cnt = ds_init_lendset_lendsetlist.rowcount;
  113. if (cnt == 1) {
  114. var setcd = ds_init_lendset_lendsetlist.getColumn(0, "setcd");
  115. dsf_makeValue( ds_send_reqdata, "setcd", "string", setcd);
  116. } else {
  117. // 기타 셋코드 : 90000000000000101
  118. dsf_makeValue( ds_send_reqdata, "setcd", "string", "90000000000000101");
  119. }
  120. }
  121. else
  122. {
  123. dsf_makeValue( ds_send_reqdata, "setcd", "string", "90000000000000101");
  124. }
  125. // 2009.01.12. 대출용도 셋 아이템 조회하기..
  126. // 2009.02.02. 보험팀인데 직종구분 [ 1140 : 간호직 ]
  127. // 2009.02.13. 보험팀 - 2개 unit 으로 구분됨 (4070300000,4070703000)
  128. if (dutplcecd == "4070300000" || dutplcecd == "4070703000") {
  129. // 보험팀 (4070300000) 전체 셋코드 : 90000000000000053
  130. dsf_makeValue( ds_send_reqdata, "setcd", "string", "90000000000000053");
  131. }
  132. if (dutplcecd == "4040800000") {
  133. // 원무팀 (4040800000) 전체 셋코드 : 90000000000000054
  134. dsf_makeValue( ds_send_reqdata, "setcd", "string", "90000000000000054");
  135. }
  136. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  137. //if (dutplcecd == "3230000000") {
  138. if(ds_temp_hardcd_hardcd.lookupExpr("hardcd == '" + dutplcecd + "'", "hardcd") != "")
  139. {
  140. // KNUH_20101207_박성호_end
  141. // 의료정보 (3230000000) 전체 셋코드 : 90000000000000060
  142. dsf_makeValue( ds_send_reqdata, "setcd", "string", "90000000000000060");
  143. }
  144. dsf_makeValue( ds_send_reqdata, "useyn", "string", "Y");
  145. var oParam2 = {};
  146. oParam2.id = "TRMRC01313";
  147. oParam2.service = "chrtmngtapp.ChrtRendMngt";
  148. oParam2.method = "reqGetLendSetItem";
  149. oParam2.inds = "req=ds_send_reqdata";
  150. oParam2.outds = "ds_init_lendsetitem_setitemlist=setitemlist";
  151. oParam2.async = false;
  152. tranf_submit(oParam2);
  153. ds_condition.setColumn( 0, "rendschedd" , utlf_getCurrentDate());
  154. ds_condition.setColumn( 0, "rtnschedd" , utlf_getCurrentDate());
  155. ds_condition.setColumn( 0, "ioflag" , "O");
  156. // 2009.02.13. 보험팀 - 2개 unit 으로 구분됨 (4070300000,4070703000)
  157. /*
  158. if (dutplcecd == "4070703000"){
  159. dutplcecd = "4070300000";
  160. }
  161. */
  162. // 응급의학과 (2280000000)인 경우.. 응급실진료참고 (006)
  163. // 응급의료센터 (2280200000)인 경우.. 응급실진료참고 (006)
  164. var rendcd = ds_init_lendsetitem_setitemlist.lookupExpr("lenduseyn == 'Y'", "rendcd");
  165. if (dutplcecd == "2280200000"){
  166. dutplcecd = "2280000000";
  167. }
  168. if (dutplcecd == "2280000000" || dutplcecd == "2280200000"){
  169. rendcd = "006";
  170. }
  171. ds_condition.setColumn( 0, "rendcd" , rendcd);
  172. var deptcd = ds_init_lendmastinfo_lenddeptlist.lookupExpr("lenddeptcd == '" + dutplcecd + "'", "lenddeptcd");
  173. ds_condition.setColumn( 0, "appdeptcd" , deptcd);
  174. // 2009.03.18. 대출과가 센터인 경우 진료과 조회하기...
  175. //cmb_appdeptcd.dispatch("xforms-value-changed");
  176. switch1_appchrt_cmb_appdeptcd_onitemchanged(switch1.appchrt.cmb_appdeptcd, null);
  177. if (deptcd != ""){
  178. var userid = ds_init_userlist_userlist_usercombo.lookupExpr("userid == '" + sysf_getUserId() + "'", "userid");
  179. ds_condition.setColumn( 0, "lendmanid" , userid);
  180. ds_condition.setColumn( 0, "lendman" , userid);
  181. }
  182. // 응급의료센터 (2280200000)인 경우.. 대출자 : 구 응급의학과
  183. /* 2009.01.14. 대출자 셋해주는 의미가 없어짐.. 구 응급의학과는 과거 부서코드이므로..
  184. if (dutplcecd == "2280200000"){
  185. ds_condition.setColumn( 0, "lendmanid" , "12400000");
  186. ds_condition.setColumn( 0, "lendman" , "12400000");
  187. }
  188. */
  189. ds_condition.setColumn( 0, "appmanid" , sysf_getUserId());
  190. ds_condition.setColumn( 0, "appman" , sysf_getUserName());
  191. ds_condition.setColumn( 0, "pid" , appf_getPatientId());
  192. // 신청내역 초기값
  193. ds_condition_applist.setColumn( 0, "apprendcd" , rendcd);
  194. ds_condition_applist.setColumn( 0, "appdeptcd" , deptcd);
  195. ds_condition_applist.setColumn( 0, "lendmanid" , "");
  196. ds_condition_applist.setColumn( 0, "appmanid" , sysf_getUserId());
  197. ds_condition_applist.setColumn( 0, "appman" , sysf_getUserName());
  198. ds_condition_applist.setColumn( 0, "appfromdd" , utlf_getCurrentDate());
  199. ds_condition_applist.setColumn( 0, "apptodd" , utlf_getCurrentDate());
  200. // 대출내역 초기값
  201. ds_condition_lendlist.setColumn( 0, "appdeptcd" , deptcd);
  202. ds_condition_lendlist.setColumn( 0, "rendfromdd" , utlf_getCurrentDate());
  203. ds_condition_lendlist.setColumn( 0, "rendtodd" , utlf_getCurrentDate());
  204. ds_condition_lendlist.setColumn( 0, "lendmanid" , "");
  205. ds_condition_lendlist.setColumn( 0, "appmanid" , sysf_getUserId());
  206. ds_condition_lendlist.setColumn( 0, "appman" , sysf_getUserName());
  207. ds_condition_lendlist.setColumn( 0, "apprendcd" , "ALL");
  208. ds_condition_lendlist.setColumn( 0, "appfromdd" , "19000101");
  209. ds_condition_lendlist.setColumn( 0, "apptodd" , utlf_getCurrentDate());
  210. ds_condition_lendlist.setColumn( 0, "termdisabled" , "");
  211. //model.refresh();
  212. var pid;
  213. if (frmf_isPopup() == true) {
  214. trace("is Popup True");
  215. // param 환자정보
  216. pid = opener.frmf_getParameter("pid");
  217. }
  218. if ( pid == null || pid == "" ) {
  219. trace("is Popup false");
  220. // 상단 환자정보
  221. var node = sysf_getGlobalVariable("paminfo");
  222. ds_main_result_paminfo_list.clearData();
  223. ds_main_result_paminfo_list.addRow();
  224. trace("node : " + node);
  225. dsf_setCSVToDs("ds_main_result_paminfo_list", node);
  226. pid = ds_main_result_paminfo_list.getColumn(0, "pid");
  227. // 상단 환자정보가 있는 경우 대출자는 상단의 의사아이디로 셋함.
  228. if ( pid == null ) { pid == ""; }
  229. if ( pid != "" ) {
  230. var orddrid = ds_main_result_paminfo_list.getColumn(0, "orddrid");
  231. ds_condition.setColumn( 0, "lendmanid", orddrid);
  232. var orddrnm = ds_main_result_paminfo_list.getColumn(0, "orddrnm");
  233. ds_condition.setColumn( 0, "lendman", orddrnm);
  234. }
  235. }
  236. if ( pid == null ) { pid == ""; }
  237. if ( pid != "" ) {
  238. ds_condition.setColumn( 0, "pid", pid);
  239. switch1.appchrt.ipt_pid.updateToDataset();
  240. fGetChrtList();
  241. }
  242. // 차트 대출 신청 텝 선택..
  243. //btn_rendlsit.dispatch("onclick");
  244. switch1.tabindex = 0;
  245. if (deptcd == ""){
  246. alert("대출과를 선택해주세요.", "차트대출신청", 0 | 64);
  247. //cmb_orddept.setFocus();
  248. switch1.appchrt.cmb_orddeptcd.setFocus();
  249. }
  250. switch1.appchrt.grup_updateapplist1.visible = false;
  251. switch1.applist.grup_updateapplist2.visible = false;
  252. }
  253. /**
  254. * _desc : 차트 대출 신청 후 신청 내역 텝으로 이동하기
  255. * _
  256. * _param :
  257. * _return :
  258. * _authur : 이은영 2008.06.12
  259. * _---------------------------------------------------
  260. */
  261. function faddchrt()
  262. {
  263. //btn_addlist.dispatch("onclick");
  264. switch1.tabindex = 1;
  265. }
  266. /**
  267. * _desc : 환자의 차트 리스트 조회하기
  268. * _
  269. * _param :
  270. * _return :
  271. * _authur : 이은영 2008.06.12
  272. * _---------------------------------------------------
  273. */
  274. function fGetChrtList()
  275. {
  276. // 2008.10.23. 환자번호 조회해서 환자명 가져오기..
  277. fCheckPid(switch1.appchrt.ipt_pid,"ds_condition", "patnm");
  278. ds_send_reqdata.copyData(ds_condition);
  279. dsf_makeValue( ds_send_reqdata, "flag", "string", 'P'); // 종이챠트 대출만 조회시
  280. dsf_makeValue( ds_send_reqdata, "flag", "string", ''); // test를 위해 임시로 전체 데이타 불러오기
  281. var oParam = {};
  282. oParam.id = "TRMRC00144";
  283. oParam.service = "chrtmngtapp.ChrtRendMngt";
  284. oParam.method = "reqGetPaperList";
  285. oParam.inds = "req=ds_send_reqdata";
  286. oParam.outds = "ds_main_appchrt_chrtlist=chrtlist";
  287. oParam.async = false;
  288. tranf_submit(oParam);
  289. // 2008.10.29. EMR 기록 조회
  290. var oParam = {};
  291. oParam.id = "TRMRC00145";
  292. oParam.service = "chrtmngtapp.ChrtRendMngt";
  293. oParam.method = "reqGetEMRList";
  294. oParam.inds = "req=ds_send_reqdata";
  295. oParam.outds = "ds_main_appchrt_emrlist=emrlist";
  296. oParam.async = false;
  297. tranf_submit(oParam);
  298. allchkflag = "N";
  299. // 2009.06.02. 의정부인 경우.. 응급실, 건진센터 구영상 조회하기..
  300. var instcd = sysf_getUserInfo("dutplceinstcd");
  301. if (instcd == "013") {
  302. var oParam = {};
  303. oParam.id = "TRMRC00147";
  304. oParam.service = "chrtmngtapp.ChrtRendMngt";
  305. oParam.method = "reqGetOldImgRec";
  306. oParam.inds = "req=ds_send_reqdata";
  307. oParam.outds = "ds_main_appchrt_oldimglist=oldimglist";
  308. oParam.async = false;
  309. tranf_submit(oParam);
  310. var msgER = "";
  311. var msgAH = "";
  312. var dataCnt = ds_main_appchrt_oldimglist.rowcount;
  313. for (var i = 0 ; i < dataCnt ; i++)
  314. {
  315. var cls = ds_main_appchrt_oldimglist.getColumn(i, "cls");
  316. var cnt = ds_main_appchrt_oldimglist.getColumn(i, "cnt");
  317. // 구영상 응급의학과
  318. if (cls == "E") {
  319. msgER = "▣ 구영상 응급의학과 (" + cnt + "건)";
  320. }
  321. // 구영상 건진
  322. if (cls == "S") {
  323. msgAH = "▣ 구영상 건진 (" + cnt + "건)";
  324. }
  325. }
  326. ds_hidden.setColumn( 0, "cap_oldimgER", msgER);
  327. //cap_oldimgER.refresh();
  328. ds_hidden.setColumn( 0, "cap_oldimgAH", msgAH);
  329. //cap_oldimgAH.refresh();
  330. }
  331. }
  332. /**
  333. * _desc : 환자의 차트 리스트 대출 신청 리스트 등록
  334. * _
  335. * _param :
  336. * _return :
  337. * _authur : 이은영 2008.06.12
  338. * _---------------------------------------------------
  339. */
  340. function fAddChrtList()
  341. {
  342. var appdeptcd = ds_condition.getColumn(0, "appdeptcd");
  343. if (appdeptcd == ""){
  344. alert("대출과를 선택해주세요.", "차트대출신청", 0 | 64);
  345. switch1.appchrt.cmb_appdeptcd.setFocus();
  346. return;
  347. }
  348. var lendmanid = ds_condition.getColumn(0, "lendmanid");
  349. if (lendmanid == ""){
  350. alert("대출자를 선택해주세요.", "차트대출신청", 0 | 64);
  351. switch1.appchrt.cmb_orddrid.setFocus();
  352. return;
  353. }
  354. var rendcd = ds_condition.getColumn(0, "rendcd");
  355. if (rendcd == "-"){
  356. alert("대출용도을 선택해주세요.", "차트대출신청", 0 | 64);
  357. switch1.appchrt.cbo_renduse.setFocus();
  358. return;
  359. }
  360. // 2009.03.18. 대출과가 센터인 경우 진료과 선택 체킹하기...
  361. var orddeptkind = ds_condition.getColumn(0, "orddeptkind");
  362. var orddeptcd = ds_condition.getColumn(0, "orddeptcd");
  363. if (orddeptkind == "C" && orddeptcd == "-"){
  364. alert("대출과가 센터인 경우 진료과를 선택해주세요.", "차트대출신청", 0 | 64);
  365. switch1.appchrt.cmb_orddeptcd.setFocus();
  366. return;
  367. }
  368. // 2008.09.01. 차트신청시 [ 021:연구용, 022:임상연구용 ]
  369. // 전달메세지 : 반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..
  370. if (rendcd == "021" || rendcd == "022"){
  371. var msgcnts = ds_condition.getColumn(0, "msgcnts");
  372. msgcnts = String(msgcnts).trimLeft();
  373. msgcnts = String(msgcnts).trimRight();
  374. if (msgcnts.length == ""){
  375. alert("반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..", "차트대출신청", 0 | 64);
  376. switch1.appchrt.ipt_msgcnts.setFocus();
  377. return;
  378. }
  379. // 팝업메세지 : 신청일 포함 3일후 대출 가능합니다..
  380. // alert("신청일 포함 3일후 대출 가능합니다..", "차트대출신청", 0 | 64);
  381. // 2009.02.17. 팝업메세지 수정 : 신청일로부터 3일 이후에 대출 가능합니다..
  382. alert("신청일로부터 3일 이후에 대출 가능합니다..", "차트대출신청", 0 | 64);
  383. }
  384. if (switch1.appchrt.grd_chrtlist.rowcount < 1){
  385. alert("환자의 차트정보가 없습니다..", "차트대출신청", 0 | 64);
  386. return;
  387. }
  388. // 2009.02.05. 의사 아이디로 차트신청시 전달메세지, 연락처 항목을 필수 입력항목으로 체킹한다.
  389. // 의사 : 03, 04, 05, 06
  390. // 간호사 : 11
  391. // 연구원, 연구직 : 0750, 0751 => 의사
  392. // 조교 : 0410 => 기타
  393. var jobkindcd = sysf_getUserInfo("jobkindcd");
  394. var drflag = "N";
  395. var nursflag = "N";
  396. if (jobkindcd == "0410") {
  397. drflag = "N";
  398. } else if (jobkindcd == "0750" || jobkindcd == "0750" ) {
  399. drflag = "Y";
  400. } else if (jobkindcd.substring(0,2) == "03" || jobkindcd.substring(0,2) == "04" ||
  401. jobkindcd.substring(0,2) == "05" || jobkindcd.substring(0,2) == "06" ) {
  402. drflag = "Y";
  403. } else if (jobkindcd.substring(0,2) == "11") {
  404. nursflag = "Y";
  405. }
  406. if (drflag == "Y" || nursflag == "Y") {
  407. // 2009.03.02. 차트신청시 [ 003:접수외대출, 021:연구용, 022:임상연구용, 099:기타대출 ]
  408. // 전달메세지 : 반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..
  409. if (rendcd == "003" || rendcd == "022" || rendcd == "021" || rendcd == "099"){
  410. var msgcnts = ds_condition.getColumn(0, "msgcnts");
  411. msgcnts = String(msgcnts).trimLeft();
  412. msgcnts = String(msgcnts).trimRight();
  413. if (msgcnts.length == ""){
  414. alert("반드시 전달메세지 (연구 제목 및 신청사유) 을 입력해 주십시오.." + jobkindcd, "차트대출신청", 0 | 64);
  415. switch1.appchrt.ipt_msgcnts.setFocus();
  416. return;
  417. }
  418. }
  419. var appmantelno = ds_condition.getColumn(0, "appmantelno");
  420. appmantelno = String(appmantelno).trimLeft();
  421. appmantelno = String(appmantelno).trimRight();
  422. if (appmantelno.length == ""){
  423. alert("반드시 연락처를 입력해 주십시오.." + jobkindcd, "차트대출신청", 0 | 64);
  424. ipt_apptelno.setFocus();
  425. return;
  426. }
  427. }
  428. for( var i = 0 ; i < switch1.appchrt.grd_chrtlist.rowcount ; i++){
  429. var chk = ds_main_appchrt_chrtlist.getColumn(i, "chkflag");
  430. if (chk == "Y" || chk == "1"){
  431. var pid = ds_main_appchrt_chrtlist.getColumn(i, "pid");
  432. var pnm = ds_main_appchrt_chrtlist.getColumn(i, "pnm");
  433. var ioflag = ds_main_appchrt_chrtlist.getColumn(i, "ioflag");
  434. var medirecno = ds_main_appchrt_chrtlist.getColumn(i, "medirecno");
  435. var orddeptcd = ds_main_appchrt_chrtlist.getColumn(i, "orddeptcd");
  436. var depthngnm = ds_main_appchrt_chrtlist.getColumn(i, "depthngnm");
  437. var deptengabbr = ds_main_appchrt_chrtlist.getColumn(i, "deptengabbr");
  438. var lendyn = ds_main_appchrt_chrtlist.getColumn(i, "lendyn");
  439. var lenddept = ds_main_appchrt_chrtlist.getColumn(i, "lenddept");
  440. var tmpmedino = "";
  441. var ref = "ds_main_appchrt_appchrtlist";
  442. var cnt = eval(ref).rowcount;
  443. for(var j = 0 ; j < cnt ; j++){
  444. var tmp = eval(ref).getColumn(j, "medirecno");
  445. if(tmp == medirecno){
  446. tmpmedino = tmp;
  447. break;
  448. }
  449. }
  450. trace("tmpmedino : " + tmpmedino + ", medirecno :" + medirecno);
  451. if(tmpmedino != medirecno){
  452. // 차트가 이미 대출인가??
  453. var lendyn = ds_main_appchrt_chrtlist.getColumn(i, "lendyn");
  454. if (lendyn == "Y")
  455. {
  456. var msgRtn = sysf_messageBox("대출중입니다. 차트대출 신청", "S001");
  457. // return : yes=6, no=7, cancel=2
  458. if (msgRtn == "7") {
  459. continue;
  460. } else if (msgRtn == "2") {
  461. break;
  462. }
  463. }
  464. var addrow = eval(ref).addRow();
  465. trace("addRow : " + addrow);
  466. //model.makeValue(ref + "[" + addrow + "]_pid" , pid);
  467. eval(ref).setColumn(addrow, "pid", pid);
  468. //model.makeValue(ref + "[" + addrow + "]_pnm" , pnm);
  469. eval(ref).setColumn(addrow, "pnm", pnm);
  470. //model.makeValue(ref + "[" + addrow + "]_ioflag" , ioflag);
  471. eval(ref).setColumn(addrow, "ioflag", ioflag);
  472. //model.makeValue(ref + "[" + addrow + "]_medirecno" , medirecno);
  473. eval(ref).setColumn(addrow, "medirecno", medirecno);
  474. //model.makeValue(ref + "[" + addrow + "]_orddeptcd" , orddeptcd);
  475. eval(ref).setColumn(addrow, "orddeptcd", orddeptcd);
  476. //model.makeValue(ref + "[" + addrow + "]_depthngnm" , depthngnm);
  477. eval(ref).setColumn(addrow, "depthngnm", depthngnm);
  478. //model.makeValue(ref + "[" + addrow + "]_deptengabbr", deptengabbr);
  479. eval(ref).setColumn(addrow, "deptengabbr", deptengabbr);
  480. var rendcd = ds_condition.getColumn(0, "rendcd");
  481. var rendschedd = ds_condition.getColumn(0, "rendschedd");
  482. var rtnschedd = ds_condition.getColumn(0, "rtnschedd");
  483. trace("rtnschedd : " + rtnschedd);
  484. var appdeptcd = ds_condition.getColumn(0, "appdeptcd");
  485. // 2009.03.18. 진료과 , 센터 저장하기..
  486. var orddeptkind = ds_condition.getColumn(0, "orddeptkind");
  487. var centcd = "-";
  488. if (orddeptkind == "C") {
  489. centcd = ds_condition.getColumn(0, "appdeptcd");
  490. }
  491. var orddeptcd = ds_condition.getColumn(0, "orddeptcd");
  492. var lendmanid = ds_condition.getColumn(0, "lendmanid");
  493. var appmanid = ds_condition.getColumn(0, "appmanid");
  494. var appman = ds_condition.getColumn(0, "appman");
  495. var appmantelno = ds_condition.getColumn(0, "appmantelno");
  496. var msgcnts = ds_condition.getColumn(0, "msgcnts");
  497. var appdeptnm = ds_init_lendmastinfo_lenddeptlist.lookupExpr("lenddeptcd == '" + appdeptcd + "'", "lenddeptnm");
  498. var orddeptnm = ds_init_cntrsuborddeptlist_dept.lookupExpr("deptcd == '" + orddeptcd + "'", "depthngnm");
  499. var lendman = ds_init_userlist_userlist_usercombo.lookupExpr("userid == '" + lendmanid + "'", "usernm");
  500. //model.makeValue(ref + "[" + addrow + "]_rendcd" , rendcd);
  501. eval(ref).setColumn(addrow, "rendcd", rendcd);
  502. //model.makeValue(ref + "[" + addrow + "]_rendschedd" , rendschedd);
  503. eval(ref).setColumn(addrow, "rendschedd", rendschedd);
  504. //model.makeValue(ref + "[" + addrow + "]_rtnschedd" , rtnschedd);
  505. eval(ref).setColumn(addrow, "rtnschedd", rtnschedd);
  506. //model.makeValue(ref + "[" + addrow + "]_appdeptcd" , appdeptcd);
  507. eval(ref).setColumn(addrow, "appdeptcd", appdeptcd);
  508. //model.makeValue(ref + "[" + addrow + "]_appdeptnm" , appdeptnm);
  509. eval(ref).setColumn(addrow, "appdeptnm", appdeptnm);
  510. //model.makeValue(ref + "[" + addrow + "]_orddeptkind", orddeptkind);
  511. eval(ref).setColumn(addrow, "orddeptkind", orddeptkind);
  512. //model.makeValue(ref + "[" + addrow + "]_centcd" , centcd);
  513. eval(ref).setColumn(addrow, "centcd", centcd);
  514. //model.makeValue(ref + "[" + addrow + "]_orddeptcd" , orddeptcd);
  515. eval(ref).setColumn(addrow, "orddeptcd", orddeptcd);
  516. //model.makeValue(ref + "[" + addrow + "]_orddeptnm" , orddeptnm);
  517. eval(ref).setColumn(addrow, "orddeptnm", orddeptnm);
  518. //model.makeValue(ref + "[" + addrow + "]_lendmanid" , lendmanid);
  519. eval(ref).setColumn(addrow, "lendmanid", lendmanid);
  520. //model.makeValue(ref + "[" + addrow + "]_lendman" , lendman);
  521. eval(ref).setColumn(addrow, "lendman", lendman);
  522. //model.makeValue(ref + "[" + addrow + "]_appmanid" , appmanid);
  523. eval(ref).setColumn(addrow, "appmanid", appmanid);
  524. //model.makeValue(ref + "[" + addrow + "]_appman" , appman);
  525. eval(ref).setColumn(addrow, "appman", appman);
  526. //model.makeValue(ref + "[" + addrow + "]_appmantelno", appmantelno);
  527. eval(ref).setColumn(addrow, "appmantelno", appmantelno);
  528. //model.makeValue(ref + "[" + addrow + "]_msgcnts" , msgcnts);
  529. eval(ref).setColumn(addrow, "msgcnts", msgcnts);
  530. }
  531. }
  532. }
  533. //model.refresh();
  534. }
  535. /**
  536. * _desc : 환자의 차트 리스트 대출 신청 리스트 등록
  537. * _
  538. * _param :
  539. * _return :
  540. * _authur : 이은영 2008.06.12
  541. * _---------------------------------------------------
  542. */
  543. function fSetRtnSchedd()
  544. {
  545. // 2009.02.05. 대출용도 에 따라 전달메세지 -> 연구용제목 으로 변경한다...
  546. var rendcd = ds_condition.getColumn(0, "rendcd");
  547. if (rendcd == '021' || rendcd == '022') {
  548. ds_hidden.setColumn( 0, "caption", "연구용제목 :");
  549. //cap_msgcnts.refresh();
  550. } else {
  551. ds_hidden.setColumn( 0, "caption", "전달메세지 :");
  552. //cap_msgcnts.refresh();
  553. }
  554. // 반납예정일 셋해주기...
  555. var rendcd = ds_condition.getColumn(0, "rendcd");
  556. var rendterm = ds_init_lendmastinfo_rendcdlist.lookupExpr("rendcd == '" + rendcd + "'", "defltrendterm");
  557. var rendunit = ds_init_lendmastinfo_rendcdlist.lookupExpr("rendcd == '" + rendcd + "'", "defltrendtermunit");
  558. var rendschedd = ds_condition.getColumn(0, "rendschedd");
  559. var tmp = rendschedd.toDate("YYYYMMDD");
  560. var rtnschedd = tmp.getAddDate(eval(rendterm), rendunit);
  561. ds_condition.setColumn( 0, "rtnschedd", rtnschedd.getDateFormat());
  562. //ipt_rtnschedd.refresh();
  563. }
  564. /**
  565. * _desc : 차트대출 신청하기 -> 신청내역으로 화면 이동하기..
  566. * _
  567. * _param :
  568. * _return :
  569. * _authur : 이은영 2008.06.12
  570. * _---------------------------------------------------
  571. */
  572. function fSetAppChrtList()
  573. {
  574. var ref = "ds_main_appchrt_appchrtlist";
  575. var grdObj = switch1.appchrt.grd_appchrtlist;
  576. var savedata = "m▦medirecno▦rendcd▦rendschedd▦rendschetm▦lendmanid▦appmanid▦apptelno▦appdeptcd▦orddeptcd▦centcd▦msgcnts▩";
  577. var dataString = "";
  578. var dataCount = 0;
  579. for ( var i=0 ; i < eval(ref).rowcount; i++)
  580. {
  581. var medirecno = eval(ref).getColumn(i, "medirecno");
  582. var rendcd = eval(ref).getColumn(i, "rendcd");
  583. var rendschedd = eval(ref).getColumn(i, "rendschedd");
  584. var lendmanid = eval(ref).getColumn(i, "lendmanid");
  585. var appmanid = eval(ref).getColumn(i, "appmanid");
  586. var apptelno = eval(ref).getColumn(i, "appmantelno");
  587. var appdeptcd = eval(ref).getColumn(i, "appdeptcd");
  588. var centcd = eval(ref).getColumn(i, "centcd");
  589. var orddeptcd = eval(ref).getColumn(i, "orddeptcd");
  590. var msgcnts = eval(ref).getColumn(i, "msgcnts");
  591. var rendschetm = utlf_getCurrentTime();
  592. rendschetm = rendschetm.substr(0,4);
  593. dataString = dataString + "i▦" + medirecno + "▦" + rendcd + "▦" + rendschedd + "▦" + rendschetm + "▦" ;
  594. dataString = dataString + lendmanid + "▦" + appmanid + "▦" + apptelno + "▦" + appdeptcd + "▦" + orddeptcd + "▦" + centcd + "▦" + msgcnts + "▩";
  595. dataCount = dataCount + 1;
  596. }
  597. if (dataString.length > 0)
  598. {
  599. //dsf_makeValue( ds_send, "savedata", "string", savedata + dataString);
  600. dsf_setCSVToDs("ds_send_savedata",savedata + dataString);
  601. grdf_setStatusColumn(ds_send_savedata, "status");
  602. dsf_setFixVal(ds_send_savedata, "status:i");
  603. trace("ds_send_savedata:" + ds_send_savedata.saveXML());
  604. var oParam = {};
  605. oParam.id = "TXMRC00300";
  606. oParam.service = "chrtmngtapp.ChrtRendMngt";
  607. oParam.method = "setAppChrt";
  608. oParam.inds = "req=ds_send_savedata";
  609. oParam.outds = "";
  610. oParam.async = false;
  611. tranf_submit(oParam);
  612. alert("총 " + dataCount + " 건 챠트대출 신청되었습니다.");
  613. var appdeptcd = ds_condition.getColumn(0, "appdeptcd");
  614. var apprendcd = ds_condition.getColumn(0, "apprendcd");
  615. ds_condition_applist.setColumn( 0, "appdeptcd" , appdeptcd);
  616. ds_condition_applist.setColumn( 0, "apprendcd" , "ALL");
  617. // 신청 내역을 조회한다..
  618. //btn_applist.dispatch("onclick");
  619. switch1.tabindex = 1;
  620. ds_condition_applist.setColumn( 0, "lendmanid", "");
  621. ds_condition_applist.setColumn( 0, "lendman" , "");
  622. ds_condition_applist.setColumn( 0, "appmanid" , sysf_getUserId());
  623. ds_condition_applist.setColumn( 0, "appman" , sysf_getUserName());
  624. ds_condition_applist.setColumn( 0, "appfromdd", utlf_getCurrentDate());
  625. ds_condition_applist.setColumn( 0, "apptodd" , utlf_getCurrentDate());
  626. // 신청 리스트는 지운다..
  627. ds_main_appchrt_appchrtlist.clearData();
  628. //model.refresh();
  629. //btn_x_appsearch.dispatch("onclick");
  630. switch1_applist_btn_x_appsearch_onclick(null, null);
  631. }
  632. }
  633. /**
  634. * _desc : 마우스 오른쪽 버튼 팝업창
  635. * _
  636. * _param :
  637. * _return :
  638. * _---------------------------------------------------
  639. *
  640. */
  641. var m_clientY = 0;
  642. function fMouseRghtBtnPopup(gridObj, job, e)
  643. {
  644. trace(" fMouseRghtBtnPopup : " + gridObj.name + ", job:" + job);
  645. trace("e.button : " + e.button);
  646. if (e.button == "rbutton") {
  647. trace(" right button ");
  648. if (gridObj.currentrow >= 0 &&
  649. gridObj.currentcol >= 0 ) {
  650. if (job == "1") {
  651. // 대출신청 예정목록 에서 삭제하기..
  652. if (gridObj.currentrow >= 0) {
  653. //window.setPopupMenu(true, "ds_hidden_appchrtlist_menu_menu", .text", "func", false);
  654. frmf_createPopupMenuDs("pmn_popupMenu", "pmn_popupMenu_onmenuclick", ds_hidden_appchrtlist_menu_menu);
  655. pmn_popupMenu.trackPopup(e.screenX, e.screenY);
  656. } else {
  657. //window.setPopupMenu(false);
  658. }
  659. } else if (job == "2") {
  660. // 신청내역 리스트 에서 취소하기..
  661. if (gridObj.currentrow >= 0) {
  662. //window.setPopupMenu(true, "ds_hidden_applist_menu_menu", .text", "func", false);
  663. frmf_createPopupMenuDs("pmn_popupMenu", "pmn_popupMenu_onmenuclick", ds_hidden_applist_menu_menu);
  664. pmn_popupMenu.trackPopup(e.screenX, e.screenY);
  665. } else {
  666. //window.setPopupMenu(false);
  667. }
  668. } else if (job == "3") {
  669. // 대출신청 예정목록 에서 신청내역 수정하기..
  670. if (gridObj.currentrow >= 0) {
  671. //window.setPopupMenu(true, "ds_hidden_appchrtlist_menu_menu", .text", "func", false);
  672. frmf_createPopupMenuDs("pmn_popupMenu", "pmn_popupMenu_onmenuclick", ds_hidden_appchrtlist_menu_menu);
  673. pmn_popupMenu.trackPopup(e.screenX, e.screenY);
  674. } else {
  675. //window.setPopupMenu(false);
  676. }
  677. } else if (job == "4") {
  678. // 신청내역 리스트 에서 신청내역 수정하기..
  679. if (gridObj.currentrow >= 0) {
  680. //window.setPopupMenu(true, "ds_hidden_applist_menu_menu", .text", "func", false);
  681. frmf_createPopupMenuDs("pmn_popupMenu", "pmn_popupMenu_onmenuclick", ds_hidden_applist_menu_menu);
  682. pmn_popupMenu.trackPopup(e.screenX, e.screenY);
  683. m_clientY = e.clientY;
  684. } else {
  685. //window.setPopupMenu(false);
  686. }
  687. } else {
  688. //window.setPopupMenu(false);
  689. }
  690. } else {
  691. //window.setPopupMenu(false);
  692. }
  693. } else {
  694. //window.setPopupMenu(false);
  695. }
  696. }
  697. function pmn_popupMenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  698. {
  699. eval(e.id+"()");
  700. }
  701. /**
  702. * _desc : 대출신청 예정목록 에서 삭제하기..
  703. * _
  704. * _param :
  705. * _return :
  706. * _authur : 이은영 2008.06.12
  707. * _---------------------------------------------------
  708. */
  709. function fdel_appchrtlist()
  710. {
  711. var ref = "ds_main_appchrt_appchrtlist";
  712. //선택되어 있는 행들에 delete flag 를 설정하고 숨긴다.
  713. var selectedRows = grdf_getSelectedRows(switch1.appchrt.grd_appchrtlist);
  714. for(var i=0; i < selectedRows.length; i++)
  715. {
  716. var row = selectedRows[i];
  717. //model.makeValue(ref + "["+ row +"]_chk", "N");
  718. eval(ref).setColumn( row, "chk", "N");
  719. }
  720. //model.refresh();
  721. var dataCnt = eval(ref).rowcount;
  722. for (var i=0 ; i < dataCnt ; i++) {
  723. var chk = eval(ref).getColumn(i, chk);
  724. if (chk == "N") {
  725. //model.destroy(ref + "["+ i +"]");
  726. eval(ref).deleteRow(i);
  727. dataCnt = dataCnt - 1;
  728. i = i - 1;
  729. }
  730. }
  731. //model.refresh();
  732. }
  733. /**
  734. * _desc : 신청내역 리스트 에서 취소하기..
  735. * _
  736. * _param :
  737. * _return :
  738. * _authur : 이은영 2008.06.12
  739. * _---------------------------------------------------
  740. */
  741. function fcancel_applist()
  742. {
  743. var ref = "ds_main_applist";
  744. var grdObj = switch1.lendlist.grd_lendlist;
  745. var savedata = "m▦chrtseqno▦appdd▦appmanid▦appdeptcd▦appmanallyn▩";
  746. var dataString = "";
  747. var dataCount = 0;
  748. var appdd = ds_condition_applist.getColumn(0, "appdd");
  749. var appdeptcd = ds_condition_applist.getColumn(0, "appdeptcd");
  750. var appmanid = ds_condition_applist.getColumn(0, "appmanid");
  751. var appmanallyn = ds_condition_applist.getColumn(0, "appmanallyn");
  752. //선택되어 있는 행들을 신청 취소한다...
  753. var selectedRows = grdf_getSelectedRows(grdObj);
  754. for( var i=0; i < selectedRows.length; i++)
  755. {
  756. var row = selectedRows[i];
  757. var chrtseqno = eval(ref).getColumn(row, chrtseqno);
  758. dataString = dataString + "u▦" + chrtseqno + "▦" + appdd + "▦" + appmanid + "▦" + appdeptcd + "▦" + appmanallyn + "▩";
  759. dataCount = dataCount + 1;
  760. }
  761. if (dataString.length > 0)
  762. {
  763. //dsf_makeValue( ds_send, "savedata", "string", savedata + dataString);
  764. dsf_setCSVToDs("ds_send_savedata",savedata + dataString);
  765. grdf_setStatusColumn(ds_send_savedata, "status");
  766. dsf_setFixVal(ds_send_savedata, "status:u");
  767. var oParam = {};
  768. oParam.id = "TXMRC00310";
  769. oParam.service = "chrtmngtapp.ChrtRendMngt";
  770. oParam.method = "setAppChrt";
  771. oParam.inds = "req=ds_send_savedata";
  772. oParam.outds = "ds_main_applist=applist";
  773. oParam.async = false;
  774. tranf_submit(oParam);
  775. // fDisplayAppList();
  776. }
  777. }
  778. /**
  779. * _desc : 차트 대출 신청 내역 조회하기
  780. * _
  781. * _param :
  782. * _return :
  783. * _authur : 이은영 2008.06.12
  784. * _---------------------------------------------------
  785. */
  786. function fGetAppList()
  787. {
  788. var apprendcd = ds_condition_applist.getColumn(0, "apprendcd");
  789. var appdeptcd = ds_condition_applist.getColumn(0, "appdeptcd");
  790. var appmanid = ds_condition_applist.getColumn(0, "appmanid");
  791. var lendmanid = ds_condition_applist.getColumn(0, "lendmanid");
  792. var appfromdd = ds_condition_applist.getColumn(0, "appfromdd");
  793. var apptodd = ds_condition_applist.getColumn(0, "apptodd");
  794. ds_send_reqdata_applist.clearData();
  795. ds_send_reqdata_applist.addRow();
  796. dsf_makeValue( ds_send_reqdata_applist, "apprendcd", "string", apprendcd);
  797. dsf_makeValue( ds_send_reqdata_applist, "appdeptcd", "string", appdeptcd);
  798. dsf_makeValue( ds_send_reqdata_applist, "appmanid", "string", appmanid);
  799. dsf_makeValue( ds_send_reqdata_applist, "lendmanid", "string", lendmanid);
  800. dsf_makeValue( ds_send_reqdata_applist, "appfromdd", "string", appfromdd);
  801. dsf_makeValue( ds_send_reqdata_applist, "apptodd", "string", apptodd);
  802. //model.refresh();
  803. trace("ds_send_reqdata_applist : " + ds_send_reqdata_applist.saveXML());
  804. var oParam = {};
  805. oParam.id = "TRMRC00310";
  806. oParam.service = "chrtmngtapp.ChrtRendMngt";
  807. oParam.method = "reqGetAppChrtList";
  808. oParam.inds = "req=ds_send_reqdata_applist";
  809. oParam.outds = "ds_main_applist=applist";
  810. oParam.async = false;
  811. tranf_submit(oParam);
  812. // fDisplayAppList();
  813. }
  814. /**
  815. * _desc : 차트 대출 신청 내역 디스플래이 해주기..
  816. * _
  817. * _param :
  818. * _return :
  819. * _authur : 이은영 2008.06.12
  820. * _---------------------------------------------------
  821. */
  822. function fDisplayAppList()
  823. {
  824. var grdObj = switch1.lendlist.grd_lendlist;
  825. var ref = "ds_main_applist";
  826. // 2008.01.16. 상태에 따라 로우 색상 지정해 주기..
  827. for ( var i = 0; i < grdObj.rowcount; i++)
  828. {
  829. grdObj.rowstyle(i, "data", "background-color") = "#ffffff";
  830. var chrtlendyn = eval(ref).getColumn(i, chrtlendyn);
  831. var unrendcd = eval(ref).getColumn(i, unrendcd);
  832. var renddt = eval(ref).getColumn(i, renddt);
  833. var delyn = eval(ref).getColumn(i, delyn);
  834. if(chrtlendyn == "Y"){
  835. grdObj.rowstyle(i, "data", "background-color") = "#ffccff"; // 이미대출중
  836. }
  837. if(unrendcd != "00"){
  838. grdObj.rowstyle(i, "data", "background-color") = "#ffff99"; // 미대출처리
  839. }
  840. if(unrendcd != "00"){
  841. grdObj.rowstyle(i, "data", "background-color") = "#ffff99"; // 미대출처리 + 이미대출중
  842. }
  843. if(delyn != "N"){
  844. grdObj.rowstyle(i, "data", "background-color") = "#ff0000"; // 대출신청취소
  845. }
  846. if(renddt != ""){
  847. grdObj.rowstyle(i, "data", "background-color") = "#ccffcc"; // 대출완료
  848. }
  849. }
  850. }
  851. /**
  852. * _desc : 차트 대출 현황 조회하기
  853. * _
  854. * _param :
  855. * _return :
  856. * _authur : 이은영 2008.07.21
  857. * _---------------------------------------------------
  858. */
  859. function fGetLendList()
  860. {
  861. var appdeptcd = ds_condition_lendlist.getColumn(0, "appdeptcd");
  862. var apprendcd = ds_condition_lendlist.getColumn(0, "apprendcd");
  863. var lendmanid = ds_condition_lendlist.getColumn(0, "lendmanid");
  864. var appmanid = ds_condition_lendlist.getColumn(0, "appmanid");
  865. var rendfromdd = ds_condition_lendlist.getColumn(0, "rendfromdd");
  866. var rendtodd = ds_condition_lendlist.getColumn(0, "rendtodd");
  867. var appfromdd = ds_condition_lendlist.getColumn(0, "appfromdd");
  868. var apptodd = ds_condition_lendlist.getColumn(0, "apptodd");
  869. ds_send_reqdata_lendlist.clearData();
  870. ds_send_reqdata_lendlist.addRow();
  871. dsf_makeValue( ds_send_reqdata_lendlist, "appdeptcd", "string", appdeptcd);
  872. dsf_makeValue( ds_send_reqdata_lendlist, "apprendcd", "string", apprendcd);
  873. dsf_makeValue( ds_send_reqdata_lendlist, "lendmanid", "string", lendmanid);
  874. dsf_makeValue( ds_send_reqdata_lendlist, "appmanid", "string", appmanid);
  875. dsf_makeValue( ds_send_reqdata_lendlist, "rendfromdd", "string", "");
  876. dsf_makeValue( ds_send_reqdata_lendlist, "rendtodd", "string", "");
  877. dsf_makeValue( ds_send_reqdata_lendlist, "appfromdd", "string", appfromdd);
  878. dsf_makeValue( ds_send_reqdata_lendlist, "apptodd", "string", apptodd);
  879. var oParam = {};
  880. oParam.id = "TRMRC00320";
  881. oParam.service = "chrtmngtapp.ChrtRendMngt";
  882. oParam.method = "reqGetLendChrtList";
  883. oParam.inds = "req=ds_send_reqdata_lendlist";
  884. oParam.outds = "ds_main_lendlist=lendlist";
  885. oParam.async = false;
  886. tranf_submit(oParam);
  887. }
  888. /**
  889. * _desc : 사용자콤보 조회
  890. * _
  891. * _param : ref - reference path
  892. * rsltref - result reference path
  893. * deptcd - 부서코드
  894. * jobkindcd - 직종코드
  895. * jobposcd - 직책코드
  896. * specordyn - 선택진료여부
  897. * _return :
  898. * _author :
  899. * _---------------------------------------------------
  900. */
  901. function fGetUserComboList(ref, rsltref, deptcd, jobkindcd, specordyn)
  902. {
  903. //model.removeNode(ref);
  904. eval(ref).clearData();
  905. eval(ref).addRow();
  906. dsf_makeValue(eval(ref), "deptcd", "string", deptcd); //부서코드
  907. dsf_makeValue(eval(ref), "jobkindcd", "string", jobkindcd); //직종코드(의사:0330)
  908. dsf_makeValue(eval(ref), "specordyn", "string", specordyn); //선택진료여부
  909. //model.removeNode(rsltref);
  910. eval(rsltref + "_userlist_usercombo").clearData();
  911. eval(rsltref + "_userlist_usercombo").addRow();
  912. //submit("TRMMB04102", "false", ref, rsltref + "_userlist");
  913. var oParam = {};
  914. oParam.id = "TRMMB04102";
  915. oParam.service = "prcpbaseapp.EnvInfoMngt";
  916. oParam.method = "reqGetUserComboList";
  917. oParam.inds = "req=" + ref + "";
  918. oParam.outds = "" + rsltref + "_userlist_usercombo" + "=usercombo";
  919. oParam.async = false;
  920. tranf_submit(oParam);
  921. var nRow = eval(rsltref + "_userlist_usercombo").insertRow(0);
  922. eval(rsltref + "_userlist_usercombo").setColumn( nRow, "usernm", '-');
  923. eval(rsltref + "_userlist_usercombo").setColumn( nRow, "userid", '');
  924. switch1.appchrt.cmb_orddrid.index = 0;
  925. }
  926. /**
  927. * _desc : 대출자 조회
  928. * _
  929. * _param : refUserid - 대출자 ID, refUserDeptcd - 소속부서코드 ( posdeptcd )
  930. * _return :
  931. * _authur : 이은영 2008.03.18
  932. * _---------------------------------------------------
  933. */
  934. function fGetUserid(ref, refUserid, refUsernm, refUserDeptcd, cmbObj)
  935. {
  936. ds_hidden_tmp_tempuserinfo_list.clearData();
  937. ds_hidden_tmp_tempuserinfo_list.addRow();
  938. ds_hidden_tmp_userpopupinfo.clearData();
  939. ds_hidden_tmp_userpopupinfo.addRow();
  940. var user = eval(ref).getColumn(0, refUserid);
  941. var flag = "userid";
  942. if(isNaN(user)){
  943. flag = "usernm";
  944. }
  945. ds_hidden_tmp_userpopupinfo.setColumn( 0, "param", "_OneS");
  946. ds_hidden_tmp_userpopupinfo.setColumn( 0, "flag", flag);
  947. ds_hidden_tmp_userpopupinfo.setColumn( 0, "searchitem", user);
  948. var objArg = new Object();
  949. objArg.arg_ds_main_temp = ds_hidden_tmp_userpopupinfo;
  950. var rtnDs = frmf_modal("SPZSU10103", "SPZSU10103", objArg, "", "", "200", "200", "", "", "", "", "", "M");
  951. // var iParam = frmf_getParameter("SPZSU10103_");
  952. // trace("iParam : " + iParam);
  953. //
  954. // dsf_setCSVToDs("ds_hidden_tmp_tempuserinfo_list", iParam);
  955. if(rtnDs.rowcount <= 0) return;
  956. ds_hidden_tmp_tempuserinfo_list.copyData(rtnDs);
  957. //trace("ds_hidden_tmp_tempuserinfo_list : " + ds_hidden_tmp_tempuserinfo_list.saveXML());
  958. frmf_clearParameter("SPZSU10103_");
  959. //model.refresh();
  960. //fSearch는 인적사항 화면을 임포트 해간 화면에서 구현해 주어야 하는 함수이다.
  961. if( ds_hidden_tmp_tempuserinfo_list.rowcount> 0 ){
  962. var userid = ds_hidden_tmp_tempuserinfo_list.getColumn(0, "userid");
  963. var usernm = ds_hidden_tmp_tempuserinfo_list.getColumn(0, "usernm");
  964. var posdeptcd = ds_hidden_tmp_tempuserinfo_list.getColumn(0, "posdeptcd");
  965. if (!utlf_isNull(refUsernm)){
  966. if (isNaN(refUsernm)){
  967. //model.makeValue(refUsernm, usernm);
  968. eval(ref).setColumn(0, refUsernm, usernm);
  969. }
  970. }
  971. if (!utlf_isNull(refUserDeptcd)){
  972. if (isNaN(refUserDeptcd)){
  973. //model.makeValue(refUserDeptcd, posdeptcd);
  974. eval(ref).setColumn(0, refUserDeptcd, posdeptcd);
  975. }
  976. }
  977. if (cmbObj != null){
  978. fAddUser(userid, usernm, cmbObj)
  979. }
  980. //model.makeValue(refUserid, userid);
  981. eval(ref).setColumn(0, refUserid, userid);
  982. //model.refresh();
  983. }
  984. }
  985. /**
  986. * _desc : 대출자ID, 대출자명 콤보에 추가하기
  987. * _
  988. * _param : refUserid - 대출자 ID, refUsernm - 대출자명
  989. * _return :
  990. * _authur : 이은영 2008.09.01
  991. * _---------------------------------------------------
  992. */
  993. function fAddUser(Userid, Usernm, cmbObj)
  994. {
  995. var ref = cmbObj.innerdataset(); //.choices.itemset.attribute("nodeset");
  996. var userid = eval(ref).lookupExpr("userid =='" + Userid + "'", "userid");
  997. if (userid == ""){
  998. var cnt = eval(ref).addRow();//.rowcount + 1;
  999. eval(ref).setColumn( cnt, "userid", Userid);
  1000. eval(ref).setColumn( cnt, "usernm", Usernm);
  1001. }
  1002. }
  1003. /**
  1004. * _desc : 등록된 환자번호인지 체킹한다..
  1005. * _
  1006. * _param : iptObj - 환자번호 입력 컨트롤 (pid)
  1007. * _return : pnm - 환자명
  1008. * _authur : 이은영 2008.03.18
  1009. * _---------------------------------------------------
  1010. */
  1011. function fCheckPid(iptObj, ref, refPnm)
  1012. {
  1013. trace("iptObj : " + iptObj.name);
  1014. trace("iptObj Text : " + iptObj.text);
  1015. trace("fCheckPid : " + ref + refPnm);
  1016. dsf_makeValue( ds_send_req, "srchcond", "string", "1");
  1017. dsf_makeValue( ds_send_req, "pid", "string", iptObj.text);
  1018. //환자등록번호 체크
  1019. if(iptObj.text.length > 0 ){
  1020. ds_main_result_patinfo_patinfolist.clearData(); ds_main_result_patinfo_patinfolist.addRow();
  1021. //if(submit("TRPMC02500", "", "ds_send_req", "ds_main_result_patinfo")){
  1022. var oParam = {};
  1023. oParam.id = "TRPMC02500";
  1024. oParam.service = "patinfomngtapp.PatBaseInfo";
  1025. oParam.method = "reqGetPatInfo";
  1026. oParam.inds = "req=ds_send_req";
  1027. oParam.outds = "ds_main_result_patinfo_patinfolist=patinfolist";
  1028. oParam.async = false;
  1029. oParam.callback = "cf_TRPMC02500";
  1030. tranf_submit(oParam);
  1031. if(arErrorCode.pop("TRPMC02500") > -1) {
  1032. //fSearch는 인적사항 화면을 임포트 해간 화면에서 구현해 주어야 하는 함수이다.
  1033. if( ds_main_result_patinfo_patinfolist.rowcount> 0 ){
  1034. ds_patinfolist.copyData(ds_main_result_patinfo_patinfolist);
  1035. //* 2009.04.07. 이중번호 메세지 ( 14257937 박용석 -> 13275912 신옥순 )
  1036. var sBindPid = ds_main_result_patinfo_patinfolist.getColumn(0, "bindpid");
  1037. if( sBindPid != '-' && sBindPid != '' && sBindPid != ' ' ){
  1038. //합번된 등록번호 메세지 처리
  1039. var sPid = ds_main_result_patinfo_patinfolist.getColumn(0, "pid");
  1040. var sHngnm = ds_main_result_patinfo_patinfolist.getColumn(0, "hngnm");
  1041. var retValue = sysf_messageBox(sPid + " (" + sHngnm + ") 환자의 등록번호가 [ " + sBindPid + " ] 로 합번 되었습니다. 합번된 등록번호로 재조회 하시겠습니까?", "Q999", "");
  1042. if( retValue == '6' ){
  1043. //model.makeValue(iptObj.attribute("ref"), sBindPid);
  1044. var _ref = getBindDatasetName(iptObj);
  1045. dsf_makeValue( eval(_ref), refPnm, "string", sBindPid);
  1046. //iptObj.refresh();
  1047. fCheckPid(iptObj, _ref, refPnm);
  1048. return "";
  1049. }
  1050. }
  1051. //*/
  1052. var pid = ds_main_result_patinfo_patinfolist.getColumn(0, "pid");
  1053. var pnm = ds_main_result_patinfo_patinfolist.getColumn(0, "hngnm");
  1054. if (refPnm != null)
  1055. {
  1056. //model.makeValue(refPnm, pnm);
  1057. dsf_makeValue(eval(ref), refPnm, "string", pnm);
  1058. }
  1059. return pnm;
  1060. }else{
  1061. ds_patinfolist.clearData(); ds_patinfolist.addRow();
  1062. sysf_messageBox("없는 환자 번호 입니다.", "E999", "");
  1063. //model.refresh();
  1064. return "";
  1065. }
  1066. }
  1067. }else{
  1068. sysf_messageBox("환자등록번호를 정확히", "C001");
  1069. return "";
  1070. }
  1071. }
  1072. function cf_TRPMC02500(sSvcId, nErrorCode, sErrorMsg) {
  1073. arErrorCode.push(sSvcId, nErrorCode);
  1074. }
  1075. function getBindDatasetName(aControl)
  1076. {
  1077. var datasetid = "";
  1078. var columnid = "";
  1079. trace("aControl : " + aControl.name );
  1080. for(var i = 0; i < this.binds.length; i++)
  1081. {
  1082. trace("bind compid : " + this.binds[i].compid );
  1083. if(String(this.binds[i].compid).indexOf(aControl.name) >= 0){
  1084. datasetid = this.binds[i].datasetid;
  1085. columnid = this.binds[i].columnid;
  1086. break;
  1087. }
  1088. }
  1089. return datasetid;
  1090. }
  1091. function getBindColumnName(aControl)
  1092. {
  1093. var datasetid = "";
  1094. var columnid = "";
  1095. for(var i = 0; i < this.binds.length; i++)
  1096. {
  1097. if(String(this.binds[i].compid).indexOf(aControl.name) >= 0){
  1098. datasetid = this.binds[i].datasetid;
  1099. columnid = this.binds[i].columnid;
  1100. break;
  1101. }
  1102. }
  1103. return columnid;
  1104. }
  1105. /**
  1106. * _desc : 환자등록번호 조회 팝업
  1107. * _
  1108. * _param : refPid - 환자번호 참고 node path
  1109. * refPnm - 환자명 참고 node path
  1110. * _return :
  1111. * _authur : 이은영 2008.03.18
  1112. * _---------------------------------------------------
  1113. */
  1114. function fGetPid(ref, refPid, refPnm)
  1115. {
  1116. //조회건수가 1건일 경우 팝업창을 바로 닫는다.
  1117. dsf_makeValue( ds_hidden_tmp_pidpopupinfo, "checkfnexam", "string", "1");
  1118. dsf_makeValue( ds_hidden_tmp_pidpopupinfo, "autoflag", "string", "N");
  1119. if( ds_hidden_tmp_pidpopupinfo.getColumn(0, "srchcond") == '' ){
  1120. dsf_makeValue( ds_hidden_tmp_pidpopupinfo, "srchcond", "string", '2');
  1121. }
  1122. var objArg = new Object();
  1123. objArg.arg_ds_send = ds_hidden_tmp_pidpopupinfo;
  1124. frmf_modal("SPPMC02500", "SPPMC02500", objArg, "", "1", "150", "150", "", "", "", "", "", "M");
  1125. ds_source.clearData(); ds_source.addRow();
  1126. //환자번호 copy
  1127. //model.makeValue(refPid, ds_main_patinfo_patinfolist.getColumn(0, "pid"));
  1128. eval(ref).setColumn( 0, refPid, ds_patinfolist.getColumn(0, "pid"));
  1129. if (refPnm == null) { refPnm = "" }
  1130. if (refPnm != "") {
  1131. //model.makeValue(refPnm, ds_main_patinfo_patinfolist.getColumn(0, "hngnm"));
  1132. eval(ref).setColumn( 0, refPnm, ds_patinfolist.getColumn(0, "hngnm"));
  1133. }
  1134. //model.refresh();
  1135. }
  1136. /**
  1137. * _desc : 대출현황에서 신청일자 기간 콤보 보여줄까? 말까?
  1138. * _
  1139. * _param :
  1140. * _return :
  1141. * _authur : 이은영 2009.02.10
  1142. * _---------------------------------------------------
  1143. */
  1144. function fTermDisabled(chkObj, fromddObj, toddObj)
  1145. {
  1146. var termdisabled = chkObj.value;
  1147. if (termdisabled == "Y") {
  1148. //model.setValue(fromddObj.attribute("ref"), utlf_getCurrentDate());
  1149. //model.setValue(toddObj.attribute("ref") , utlf_getCurrentDate());
  1150. var _ref1 = getBindDatasetName(fromddObj);
  1151. var _ref1Columnid = getBindColumnName(fromddObj);
  1152. var _ref2 = getBindDatasetName(toddObj);
  1153. var _ref2Columnid = getBindColumnName(toddObj);
  1154. trace("_ref1:" + _ref1 + ",_ref1Columnid:" + _ref1Columnid);
  1155. trace("_ref2:" + _ref2 + ",_ref2Columnid:" + _ref2Columnid);
  1156. eval(_ref1).setColumn(0, _ref1Columnid, utlf_getCurrentDate());
  1157. eval(_ref2).setColumn(0, _ref2Columnid, utlf_getCurrentDate());
  1158. fromddObj.enable = true;
  1159. toddObj.enable = true;
  1160. } else {
  1161. //model.setValue(fromddObj.attribute("ref"), "19000101");
  1162. //model.setValue(toddObj.attribute("ref") , utlf_getCurrentDate());
  1163. var _ref1 = getBindDatasetName(fromddObj);
  1164. var _ref1Columnid = getBindColumnName(fromddObj);
  1165. var _ref2 = getBindDatasetName(toddObj);
  1166. var _ref2Columnid = getBindColumnName(toddObj);
  1167. trace("_ref1:" + _ref1 + ",_ref1Columnid:" + _ref1Columnid);
  1168. trace("_ref2:" + _ref2 + ",_ref2Columnid:" + _ref2Columnid);
  1169. eval(_ref1).setColumn(0, _ref1Columnid, "19000101");
  1170. eval(_ref2).setColumn(0, _ref2Columnid, utlf_getCurrentDate());
  1171. fromddObj.enable = false;
  1172. toddObj.enable = false;
  1173. }
  1174. //fromddObj.refresh();
  1175. //toddObj.refresh();
  1176. }
  1177. /**
  1178. * _desc : 대출신쳥 목록에서 우클릭 메뉴 일괄변경 선택시 기본셋하기..
  1179. * _
  1180. * _param :
  1181. * _return :
  1182. * _authur : 이은영 2009.02.16
  1183. * _---------------------------------------------------
  1184. */
  1185. function fCheckFlagDisabled1()
  1186. {
  1187. var ref = "ds_condition_updateapplist1";
  1188. eval(ref).clearData();
  1189. eval(ref).addRow();
  1190. eval(ref).setColumn( 0, "chkrendcd" , "");
  1191. eval(ref).setColumn( 0, "chklenddeptcd" , "");
  1192. eval(ref).setColumn( 0, "chkmsgcnts" , "");
  1193. eval(ref).setColumn( 0, "chkappmantelno", "");
  1194. switch1.appchrt.grup_updateapplist1.cbo_renduse1.enable = false;
  1195. switch1.appchrt.grup_updateapplist1.cbo_appdeptcd1.enable = false;
  1196. switch1.appchrt.grup_updateapplist1.cbo_orddeptcd1.enable = false;
  1197. switch1.appchrt.grup_updateapplist1.cbo_lendmanid1.enable = false;
  1198. switch1.appchrt.grup_updateapplist1.ipt_msgcnts1.enable = false;
  1199. switch1.appchrt.grup_updateapplist1.ipt_appmantelno1.enable = false;
  1200. var rendcd = ds_init_lendsetitem_setitemlist.lookupExpr("lenduseyn == 'Y'", "rendcd");
  1201. eval(ref).setColumn( 0, "rendcd" , rendcd);
  1202. eval(ref).setColumn( 0, "appdeptcd" , "");
  1203. eval(ref).setColumn( 0, "orddeptcd" , "");
  1204. eval(ref).setColumn( 0, "centcd" , "");
  1205. eval(ref).setColumn( 0, "lendmanid" , "");
  1206. eval(ref).setColumn( 0, "msgcnts" , "");
  1207. eval(ref).setColumn( 0, "appmantelno", "");
  1208. //grup_updateapplist1.refresh();
  1209. }
  1210. /**
  1211. * _desc : 대출신쳥 목록에서 우클릭 메뉴 일괄변경 선택시 기본셋하기..
  1212. * _
  1213. * _param :
  1214. * _return :
  1215. * _authur : 이은영 2009.02.16
  1216. * _---------------------------------------------------
  1217. */
  1218. function fCheckFlagDisabled2()
  1219. {
  1220. var ref = "ds_condition_updateapplist2";
  1221. eval(ref).clearData();
  1222. eval(ref).addRow();
  1223. eval(ref).setColumn( 0, "chkrendcd", "");
  1224. eval(ref).setColumn( 0, "chklenddeptcd", "");
  1225. eval(ref).setColumn( 0, "chkmsgcnts", "");
  1226. eval(ref).setColumn( 0, "chkappmantelno", "");
  1227. switch1.applist.grup_updateapplist2.cbo_renduse2.enable = false;
  1228. switch1.applist.grup_updateapplist2.cbo_appdeptcd2.enable = false;
  1229. switch1.applist.grup_updateapplist2.cbo_orddeptcd2.enable = false;
  1230. switch1.applist.grup_updateapplist2.cbo_lendmanid2.enable = false;
  1231. switch1.applist.grup_updateapplist2.ipt_msgcnts2.enable = false;
  1232. switch1.applist.grup_updateapplist2.ipt_appmantelno2.enable = false;
  1233. var rendcd = ds_init_lendsetitem_setitemlist.lookupExpr("lenduseyn == 'Y'", "rendcd");
  1234. eval(ref).setColumn( 0, "rendcd", rendcd);
  1235. eval(ref).setColumn( 0, "appdeptcd", "");
  1236. eval(ref).setColumn( 0, "orddeptcd", "");
  1237. eval(ref).setColumn( 0, "centcd", "");
  1238. eval(ref).setColumn( 0, "lendmanid", "");
  1239. eval(ref).setColumn( 0, "msgcnts", "");
  1240. eval(ref).setColumn( 0, "appmantelno", "");
  1241. //grup_updateapplist1.refresh();
  1242. }
  1243. /**
  1244. * _desc : 체크여부에 따라 컨트롤 disabled 값 셋하기.. true / false
  1245. * _
  1246. * _param :
  1247. * _return :
  1248. * _authur : 이은영 2009.02.16
  1249. * _---------------------------------------------------
  1250. */
  1251. function fDisabled(chkObj, Obj)
  1252. {
  1253. var disabled = chkObj.value;
  1254. if (disabled == "Y") {
  1255. Obj.enable = true;
  1256. } else {
  1257. Obj.enable = false;
  1258. }
  1259. //Obj.refresh();
  1260. }
  1261. /**
  1262. * _desc : 팝업폼 보여주기..
  1263. * _
  1264. * _param : job - 0:대출신청 예정목록 (일괄수정)
  1265. * _ 1:신청내역 리스트 (일괄수정)
  1266. * _return :
  1267. * _authur : 이은영 2009.02.16
  1268. * _---------------------------------------------------
  1269. */
  1270. function fShowWndIptBox(job)
  1271. {
  1272. switch1.appchrt.grup_updateapplist1.visible = "false";
  1273. switch1.applist.grup_updateapplist2.visible = "false";
  1274. if (job == "0") {
  1275. // 일괄 수정 항목 초기화..
  1276. fCheckFlagDisabled1();
  1277. var _height = switch1.appchrt.grup_updateapplist1.position.height;
  1278. // 2009.02.16. 대출신청 예정목록 (일괄수정)
  1279. if (m_clientY > 500) {
  1280. switch1.appchrt.grup_updateapplist1.position.top = m_clientY-100;
  1281. switch1.appchrt.grup_updateapplist1.position.height = _height;
  1282. } else {
  1283. switch1.appchrt.grup_updateapplist1.position.top = 500;
  1284. switch1.appchrt.grup_updateapplist1.position.height = _height;
  1285. }
  1286. switch1.appchrt.grup_updateapplist1.visible = true;
  1287. }
  1288. if (job == "1") {
  1289. trace("fShowWndIptBox job:" + job);
  1290. // 일괄 수정 항목 초기화..
  1291. fCheckFlagDisabled2();
  1292. var _height = switch1.applist.grup_updateapplist2.position.height;
  1293. // 2009.02.16. 신청내역 리스트 (일괄수정)
  1294. if (m_clientY > 500) {
  1295. switch1.applist.grup_updateapplist2.position.top = m_clientY-100;
  1296. switch1.applist.grup_updateapplist2.position.height = _height;
  1297. } else {
  1298. switch1.applist.grup_updateapplist2.position.top = 500;
  1299. switch1.applist.grup_updateapplist2.position.height = _height;
  1300. }
  1301. switch1.applist.grup_updateapplist2.visible = true;
  1302. }
  1303. }
  1304. /**
  1305. * _desc : 대출신청 예정목록 에서 신청내역 수정하기..
  1306. * _
  1307. * _param :
  1308. * _return :
  1309. * _authur : 이은영 2009.02.16
  1310. * _---------------------------------------------------
  1311. */
  1312. function fmodify_applist()
  1313. {
  1314. var _row = switch1.appchrt.grd_appchrtlist.currentrow;
  1315. if(_row < 0){
  1316. return;
  1317. }
  1318. // 2009.02.16 대출신청 예정목록 에서 신청내역 수정하기..
  1319. fShowWndIptBox("0");
  1320. }
  1321. /**
  1322. * _desc : 신청내역 리스트 에서 신청내역 수정하기..
  1323. * _
  1324. * _param :
  1325. * _return :
  1326. * _authur : 이은영 2009.02.16
  1327. * _---------------------------------------------------
  1328. */
  1329. function fupdate_applist()
  1330. {
  1331. trace("fupdate_applist");
  1332. var _row = switch1.applist.grd_applist.currentrow;
  1333. if(_row < 0){
  1334. return;
  1335. }
  1336. // 2009.02.16 신청내역 리스트 에서 신청내역 수정하기..
  1337. fShowWndIptBox("1");
  1338. }
  1339. /**
  1340. * _desc : 대출신청 예정목록 에서 신청내역 수정하기..
  1341. * _
  1342. * _param :
  1343. * _return :
  1344. * _authur : 이은영 2009.02.16
  1345. * _---------------------------------------------------
  1346. */
  1347. function fModifyApplist()
  1348. {
  1349. var chkrendcd = ds_condition_updateapplist1.getColumn(0, "chkrendcd");
  1350. var chklenddeptcd = ds_condition_updateapplist1.getColumn(0, "chklenddeptcd");
  1351. var chkmsgcnts = ds_condition_updateapplist1.getColumn(0, "chkmsgcnts");
  1352. var chkappmantelno = ds_condition_updateapplist1.getColumn(0, "chkappmantelno");
  1353. var rendcd = ds_condition_updateapplist1.getColumn(0, "rendcd");
  1354. var appdeptcd = ds_condition_updateapplist1.getColumn(0, "appdeptcd");
  1355. var lendmanid = ds_condition_updateapplist1.getColumn(0, "lendmanid");
  1356. var msgcnts = ds_condition_updateapplist1.getColumn(0, "msgcnts");
  1357. var appmantelno = ds_condition_updateapplist1.getColumn(0, "appmantelno");
  1358. // 2009.03.18. 진료과 , 센터 저장하기..
  1359. var orddeptkind = ds_condition_updateapplist1.getColumn(0, "orddeptkind");
  1360. var centcd = "-";
  1361. if (orddeptkind == "C") {
  1362. centcd = ds_condition_updateapplist1.getColumn(0, "appdeptcd");
  1363. }
  1364. var orddeptcd = ds_condition_updateapplist1.getColumn(0, "orddeptcd");
  1365. // 2008.09.01. 차트신청시 [ 021:연구용, 022:임상연구용 ]
  1366. // 전달메세지 : 반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..
  1367. if (rendcd == "021" || rendcd == "022"){
  1368. msgcnts = String(msgcnts).trimLeft();
  1369. msgcnts = String(msgcnts).trimRight();
  1370. if (msgcnts.length == ""){
  1371. alert("반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..", "차트대출신청", 0 | 64);
  1372. switch1.appchrt.grup_updateapplist1.ipt_msgcnts1.setFocus();
  1373. return;
  1374. }
  1375. appmantelno = String(appmantelno).trimLeft();
  1376. appmantelno = String(appmantelno).trimRight();
  1377. if (appmantelno.length == ""){
  1378. alert("반드시 연락처를 입력해 주십시오..", "차트대출신청", 0 | 64);
  1379. switch1.appchrt.grup_updateapplist1.ipt_appmantelno1.setFocus();
  1380. return;
  1381. }
  1382. }
  1383. if (chklenddeptcd == "Y") {
  1384. if (appdeptcd == "") {
  1385. alert("대출과를 선택해 주십시오..", "차트대출신청", 0 | 64);
  1386. switch1.appchrt.grup_updateapplist1.cbo_appdeptcd1.setFocus();
  1387. return;
  1388. }
  1389. if (lendmanid == "") {
  1390. alert("대출자를 선택해 주십시오..", "차트대출신청", 0 | 64);
  1391. switch1.appchrt.grup_updateapplist1.cbo_lendmanid1.setFocus();
  1392. return;
  1393. }
  1394. }
  1395. // 2009.03.18. 대출과가 센터인 경우 진료과 선택 체킹하기...
  1396. var orddeptkind = ds_condition_updateapplist1.getColumn(0, "orddeptkind");
  1397. var orddeptcd = ds_condition_updateapplist1.getColumn(0, "orddeptcd");
  1398. if (orddeptkind == "C" && orddeptcd == "-"){
  1399. alert("대출과가 센터인 경우 진료과를 선택해주세요.", "차트대출신청", 0 | 64);
  1400. switch1.appchrt.grup_updateapplist1.cbo_orddeptcd1.setFocus();
  1401. return;
  1402. }
  1403. var ref = "ds_main_appchrt_appchrtlist";
  1404. var gridObj = switch1.appchrt.grd_appchrtlist;
  1405. var selectedRows = grdf_getSelectedRows(gridObj);
  1406. // 선택된 항목에 대해서만 수정함..
  1407. for(var i=0; i < selectedRows.length; i++)
  1408. {
  1409. var row = selectedRows[i];
  1410. if (chkrendcd == "Y") {
  1411. eval(ref).setColumn( row, "rendcd", rendcd);
  1412. }
  1413. if (chklenddeptcd == "Y") {
  1414. eval(ref).setColumn( row, "appdeptcd", appdeptcd);
  1415. var appdeptnm = ds_init_lendmastinfo_lenddeptlist.lookupExpr("lenddeptcd == '" + appdeptcd + "'", "lenddeptnm");
  1416. eval(ref).setColumn( row, "appdeptnm", appdeptnm);
  1417. // 2009.03.18. 진료과 , 센터 저장하기..
  1418. eval(ref).setColumn( row, "orddeptcd", orddeptcd);
  1419. var orddeptnm = ds_init_cntrsuborddeptlist1_dept.lookupExpr("deptcd == '" + orddeptcd + "'", "depthngnm");
  1420. eval(ref).setColumn( row, "orddeptnm", orddeptnm);
  1421. eval(ref).setColumn( row, "centcd", centcd);
  1422. eval(ref).setColumn( row, "lendmanid", lendmanid);
  1423. var lendman = ds_init_userlist1_userlist_usercombo.lookupExpr("userid == '" + lendmanid + "'", "usernm");
  1424. eval(ref).setColumn( row, "lendman", lendman);
  1425. }
  1426. if (chkmsgcnts == "Y") {
  1427. eval(ref).setColumn( row, "msgcnts", msgcnts);
  1428. }
  1429. if (chkappmantelno == "Y") {
  1430. eval(ref).setColumn( row, "appmantelno", appmantelno);
  1431. }
  1432. }
  1433. //model.refresh();
  1434. switch1.appchrt.grup_updateapplist1.visible = "false";
  1435. }
  1436. /**
  1437. * _desc : 신청내역 리스트 에서 신청내역 수정하기..
  1438. * _
  1439. * _param :
  1440. * _return :
  1441. * _authur : 이은영 2009.02.16
  1442. * _---------------------------------------------------
  1443. */
  1444. function fUpdateApplist()
  1445. {
  1446. var chkrendcd = ds_condition_updateapplist2.getColumn(0, "chkrendcd");
  1447. var chklenddeptcd = ds_condition_updateapplist2.getColumn(0, "chklenddeptcd");
  1448. var chkmsgcnts = ds_condition_updateapplist2.getColumn(0, "chkmsgcnts");
  1449. var chkappmantelno = ds_condition_updateapplist2.getColumn(0, "chkappmantelno");
  1450. var rendcd = ds_condition_updateapplist2.getColumn(0, "rendcd");
  1451. var appdeptcd = ds_condition_updateapplist2.getColumn(0, "appdeptcd");
  1452. var lendmanid = ds_condition_updateapplist2.getColumn(0, "lendmanid");
  1453. var msgcnts = ds_condition_updateapplist2.getColumn(0, "msgcnts");
  1454. var appmantelno = ds_condition_updateapplist2.getColumn(0, "appmantelno");
  1455. // 2009.03.18. 진료과 , 센터 저장하기..
  1456. var orddeptkind = ds_condition_updateapplist2.getColumn(0, "orddeptkind");
  1457. var centcd = "-";
  1458. if (orddeptkind == "C") {
  1459. centcd = ds_condition_updateapplist2.getColumn(0, "appdeptcd");
  1460. }
  1461. var orddeptcd = ds_condition_updateapplist2.getColumn(0, "orddeptcd");
  1462. // 2009.03.18. 대출과가 센터인 경우 진료과 선택 체킹하기...
  1463. if (orddeptkind == "C" && orddeptcd == "-"){
  1464. alert("대출과가 센터인 경우 진료과를 선택해주세요.", "차트대출신청", 0 | 64);
  1465. cbo_orddeptcd2.setFocus();
  1466. return;
  1467. }
  1468. // 2008.09.01. 차트신청시 [ 021:연구용, 022:임상연구용 ]
  1469. // 전달메세지 : 반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..
  1470. if (rendcd == "021" || rendcd == "022"){
  1471. msgcnts = String(msgcnts).trimLeft();
  1472. msgcnts = String(msgcnts).trimRight();
  1473. if (msgcnts.length == ""){
  1474. alert("반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..", "차트대출신청", 0 | 64);
  1475. switch1.applist.grup_updateapplist2.ipt_msgcnts2.setFocus();
  1476. return;
  1477. }
  1478. appmantelno = String(appmantelno).trimLeft();
  1479. appmantelno = String(appmantelno).trimRight();
  1480. if (appmantelno.length == ""){
  1481. alert("반드시 연락처를 입력해 주십시오..", "차트대출신청", 0 | 64);
  1482. ipt_appmantelno2.setFocus();
  1483. return;
  1484. }
  1485. }
  1486. if (chklenddeptcd == "Y") {
  1487. if (appdeptcd == "") {
  1488. alert("대출과를 선택해 주십시오..", "차트대출신청", 0 | 64);
  1489. cbo_appdeptcd2.setFocus();
  1490. return;
  1491. }
  1492. if (lendmanid == "") {
  1493. alert("대출자를 선택해 주십시오..", "차트대출신청", 0 | 64);
  1494. cbo_lendmanid2.setFocus();
  1495. return;
  1496. }
  1497. }
  1498. // 2009.02.05. 의사 아이디로 차트신청시 전달메세지, 연락처 항목을 필수 입력항목으로 체킹한다.
  1499. // 의사 : 03, 04, 05, 06
  1500. // 간호사 : 11
  1501. // 연구원, 연구직 : 0750, 0751 => 의사
  1502. // 조교 : 0410 => 기타
  1503. var jobkindcd = sysf_getUserInfo("jobkindcd");
  1504. var drflag = "N";
  1505. var nursflag = "N";
  1506. if (jobkindcd == "0410") {
  1507. drflag = "N";
  1508. } else if (jobkindcd == "0750" || jobkindcd == "0750" ) {
  1509. drflag = "Y";
  1510. } else if (jobkindcd.substring(0,2) == "03" || jobkindcd.substring(0,2) == "04" ||
  1511. jobkindcd.substring(0,2) == "05" || jobkindcd.substring(0,2) == "06" ) {
  1512. drflag = "Y";
  1513. } else if (jobkindcd.substring(0,2) == "11") {
  1514. nursflag = "Y";
  1515. }
  1516. if (drflag == "Y" || nursflag == "Y") {
  1517. // 2009.03.02. 차트신청시 [ 003:접수외대출, 021:연구용, 022:임상연구용, 099:기타대출 ]
  1518. // 전달메세지 : 반드시 전달메세지 (연구 제목 및 기타사항) 을 입력해 주십시오..
  1519. if (rendcd == "003" || rendcd == "022" || rendcd == "021" || rendcd == "099"){
  1520. msgcnts = String(msgcnts).trimLeft();
  1521. msgcnts = String(msgcnts).trimRight();
  1522. if (msgcnts.length == ""){
  1523. alert("반드시 전달메세지 (연구 제목 및 신청사유) 을 입력해 주십시오.." + jobkindcd, "차트대출신청", 0 | 64);
  1524. switch1.applist.grup_updateapplist2.ipt_msgcnts2.setFocus();
  1525. return;
  1526. }
  1527. }
  1528. if (chkappmantelno == "Y") {
  1529. appmantelno = String(appmantelno).trimLeft();
  1530. appmantelno = String(appmantelno).trimRight();
  1531. if (appmantelno.length == ""){
  1532. alert("반드시 연락처를 입력해 주십시오.." + jobkindcd, "차트대출신청", 0 | 64);
  1533. ipt_apptelno2.setFocus();
  1534. return;
  1535. }
  1536. }
  1537. }
  1538. var ref = "ds_main_applist";
  1539. var gridObj = switch1.lendlist.grd_lendlist;
  1540. var savedata = "m▦chrtseqno▦rendcd▦appdeptcd▦lendmanid▦chkmsgcnts▦msgcnts▦chkappmantelno▦appmantelno▦orddeptcd▦centcd▩";
  1541. var dataString = "";
  1542. var dataCount = 0;
  1543. if (chkrendcd != "Y") {
  1544. rendcd = "";
  1545. }
  1546. if (chklenddeptcd != "Y") {
  1547. appdeptcd = "";
  1548. lendmanid = "";
  1549. }
  1550. // 선택되어 있는 행들을 신청 수정한다...
  1551. var selectedRows = grdf_getSelectedRows(gridObj);
  1552. for( var i=0; i < selectedRows.length; i++)
  1553. {
  1554. var row = selectedRows[i];
  1555. var chrtseqno = eval(ref).getColumn(row, chrtseqno);
  1556. dataString = dataString + "u▦" + chrtseqno + "▦" + rendcd + "▦" + appdeptcd + "▦" + lendmanid + "▦";
  1557. dataString = dataString + chkmsgcnts + "▦" + msgcnts + "▦" + chkappmantelno + "▦" + appmantelno + "▦" + orddeptcd + "▦" + centcd + "▩";
  1558. dataCount = dataCount + 1;
  1559. }
  1560. if (dataString.length > 0)
  1561. {
  1562. //dsf_makeValue( ds_send, "savedata", "string", savedata + dataString);
  1563. dsf_setCSVToDs("ds_send_savedata",savedata + dataString);
  1564. grdf_setStatusColumn(ds_send_savedata, "status");
  1565. dsf_setFixVal(ds_send_savedata, "status:u");
  1566. var oParam = {};
  1567. oParam.id = "TXMRC00320";
  1568. oParam.service = "chrtmngtapp.ChrtRendMngt";
  1569. oParam.method = "reqExeAppHist";
  1570. oParam.inds = "req=ds_send_savedata";
  1571. oParam.outds = "";
  1572. oParam.async = false;
  1573. oParam.callback = "cf_TXMRC00320";
  1574. tranf_submit(oParam);
  1575. /*
  1576. function cf_TXMRC00320(sSvcId, nErrorCode, sErrorMsg) {
  1577. if(nErrorCode < 0) return;
  1578. }
  1579. function cf_TXMRC00320(sSvcId, nErrorCode, sErrorMsg) {
  1580. arErrorCode.push(sSvcId, nErrorCode);
  1581. }
  1582. arErrorCode.pop("TXMRC00320") > -1
  1583. arErrorCode.pop("TXMRC00320") < 0
  1584. */
  1585. // 다시 조회하기..
  1586. fGetAppList();
  1587. }
  1588. switch1.applist.grup_updateapplist2.visible = "false";
  1589. }
  1590. /**
  1591. * _desc : excel 저장 하기
  1592. * _
  1593. * _param :
  1594. * _return :
  1595. * _authur : 이은영 2008.07.14
  1596. * _---------------------------------------------------
  1597. */
  1598. function fExcel(gridObj, title){
  1599. grdf_exportExcel(gridObj, "Sheet1", title, false, "" , 'user' , true);
  1600. }
  1601. /**
  1602. * _desc : 하드코드 조회
  1603. * _
  1604. * _param : ref - reference path
  1605. * rsltref - result reference path
  1606. * hardcd - 하드코드
  1607. * _return :
  1608. * _author : 오지훈
  1609. * _---------------------------------------------------
  1610. */
  1611. function mmbfGetHardCodeInfo(ref, rsltref, hardcd){
  1612. var mmb_rsltref = "ds_hidden_mmb_hardcd";
  1613. eval(mmb_rsltref).clearData();
  1614. eval(mmb_rsltref).addRow();
  1615. eval(ref).clearData();
  1616. //model.makeValue(ref + "_hardcd", hardcd);
  1617. eval(ref).setColumn(0, hardcd, hardcd);
  1618. // if(submit("TRMMB04103", "false", ref, mmb_rsltref)==true){
  1619. var oParam = {};
  1620. oParam.id = "TRMMB04103";
  1621. oParam.service = "prcpbaseapp.EnvInfoMngt";
  1622. oParam.method = "reqGetHardCodeCD";
  1623. oParam.inds = "req=" + ref + "";
  1624. oParam.outds = "" + mmb_rsltref + "=hardcd";
  1625. oParam.async = false;
  1626. oParam.callback = "cf_TRMMB04103";
  1627. tranf_submit(oParam);
  1628. if(arErrorCode.pop("TRMMB04103") > -1) {
  1629. eval(rsltref).copyData(eval(mmb_rsltref));
  1630. eval(mmb_rsltref).clearData();
  1631. }
  1632. //model.refresh();
  1633. }
  1634. function cf_TRMMB04103(sSvcId, nErrorCode, sErrorMsg) {
  1635. arErrorCode.push(sSvcId, nErrorCode);
  1636. }
  1637. //----
  1638. // SMMRC00300 끝
  1639. //----]]></Script>