MRF02600.xjs 61 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/**
  3. * @desc : 초기 정보 셋팅
  4. *
  5. * @param :
  6. * @return :
  7. * @author : HIT EMR Team
  8. * @---------------------------------------------------
  9. */
  10. function fInit(){
  11. // if ("3230000000" == sysf_getUserInfo("dutplcecd") ) {
  12. // btn_mocrlist.visible = true;
  13. // }
  14. dsf_createDs("ds_init_hardcditem");
  15. lf_getHardCDList("N", 5560, 0 , ds_init_hardcditem);
  16. lf_getHardCDList("N", 5992, 0 , ds_init_resnable);
  17. gResnablecnt = ds_init_resnable.getCaseCount("hardcd == 'Y'"); //사유입력사용여부
  18. if(ds_main_term.rowcount==0) ds_main_term.addRow();
  19. ds_main_term.setColumn(0, "termfromdd",utlf_getCurrentDate());
  20. ds_main_term.setColumn(0, "termtodd",utlf_getCurrentDate());
  21. ds_temp_deptinfo.clear();
  22. ds_temp_wardinfo.clear();
  23. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", "","", "ds_temp_deptinfo" , "", "");
  24. ds_hidden_dept_orddept.copyData(ds_temp_deptinfo);
  25. ds_hidden_dept_rtndept.copyData(ds_hidden_dept_orddept);
  26. frmf_addComboItem("group1.cmb_rtndept","전체","-","above");
  27. frmf_addComboItem("group1.cmb_orddept","전체","-","above");
  28. appf_getDeptCodeList(sysf_getUserInfo("dutplceinstcd"), "orduseyn", "W","depthngnm", "asc","","","","ds_temp_wardinfo","","");
  29. ds_hidden_dept_ward.copyData(ds_temp_wardinfo);
  30. frmf_addComboItem("group1.cmb_wardlist","전체","-","above");
  31. ds_hidden_dept_rtndept.appendData(ds_main_hidden_ward);
  32. group4.cmb_ver.index = 0; //버젼
  33. group4.cmb_ipt.index = 0; //입력구분
  34. group4.cmb_drflag.index = 0; //의사구분
  35. if(frmf_checkOpener()){
  36. sParamMsg = opener.frmf_getParameter("SMRF02600_Param");
  37. if(!utlf_isNull(sParamMsg)){
  38. if(ds_main.rowcount==0) ds_main.addRow();
  39. if(ds_main_term.rowcount==0) ds_main_term.addRow();
  40. ds_main.setColumn(0, "pid", lf_getArrayData(sParamMsg, 1, 0, "", ""));
  41. ds_main_term.setColumn(0, "termfromdd", lf_getArrayData(sParamMsg, 1, 1, "", ""));
  42. ds_main_term.setColumn(0, "termtodd", lf_getArrayData(sParamMsg, 1, 1, "", ""));
  43. } else {
  44. fGetPatInfo();
  45. }
  46. } else {
  47. fGetPatInfo();
  48. }
  49. fGetFormlist("ds_send_reqdata", "ds_main_forminfo_itemlist", "OCR,OCR(CODE),OCR(PROG)", sysf_getUserInfo("dutplceinstcd"));
  50. fSetIOFlag();
  51. //ds_main.setColumn(0, "rtncnfm", "-");
  52. var sProp="col=6,row=1,cellspacing=5,vcellspacing=2,itemWidth=-1,itemHeight=20,overflow='visible'";
  53. group1.cp_checkboxList.setInitComp(sProp, ds_cp_checkboxList,"val","lab","fn_cmpEvent");
  54. var aData = new Array();
  55. aData[0] = "-";
  56. group1.cp_checkboxList.setData(aData, null, false);
  57. rtn = group1.cp_checkboxList.getData();
  58. ds_main.setColumn(0, "rtncnfm", rtn );
  59. group1.cp_checkboxList.chk_1.enable = false;
  60. group1.cp_checkboxList.chk_2.enable = false;
  61. group1.cp_checkboxList.chk_3.enable = false;
  62. group1.cp_checkboxList.chk_4.enable = false;
  63. ds_main.setColumn(0, "scanyn", "");
  64. ds_main_dept.setColumn(0, "ward", "-");
  65. // 2010.03.10. 이은영
  66. // OCR 반납화면 스켄자료 출력 가능 부서 - 하드코드(9932)
  67. dsf_makeValue(ds_send, "ocrprnthrdcd", "string", "9932", 0);
  68. dsf_createDs("ds_init_ocrprnthrdcd");
  69. lf_getHardCDList("N", 9932, null, ds_init_ocrprnthrdcd);
  70. var dutplcecd = sysf_getUserInfo("dutplcecd");
  71. dsf_createDs("ds_hidden");
  72. dsf_makeValue(ds_hidden, "dutplcecd", "string", dutplcecd, 0);
  73. var filterStr = "hardcd=='"+dutplcecd+"'";
  74. ds_init_ocrprnthrdcd.filter(filterStr);
  75. var OcrPrntCnt = ds_init_ocrprnthrdcd.rowcount;
  76. ds_init_ocrprnthrdcd.filter("");
  77. if (OcrPrntCnt > 0) {
  78. group4.btn_ocrrecview.enable = true;
  79. }
  80. if(dutplcecd == "3230000000"){
  81. btn_ocrclear.visible = true;
  82. }
  83. dsf_createDs("ds_temp_dutplcecd");
  84. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  85. lf_getHardCDList("N", 5501, null, ds_temp_dutplcecd);
  86. var filterStr = "hardcd=='"+dutplcecd+"'";
  87. ds_temp_dutplcecd.filter(filterStr);
  88. if(ds_temp_dutplcecd.rowcount >0){
  89. // KNUH_20101207_박성호_end
  90. // 2008-07-15 정영석 요청
  91. // 간호에서 바코드 반납 및 이력보기를 띄울 수 있도록 요청함
  92. group4.btn_rtn.enable = true;
  93. group4.btn_rntcancel.enable = true;
  94. group4.btn_rtncnfm.enable = true;
  95. group4.btn_cnfmcancel.enable = true;
  96. group4.btn_prntcancel.enable = true;
  97. group4.btn_delcancel.enable = true;
  98. group4.btn_excel.enable = true;
  99. group4.btn_ocrrecview.enable = true;
  100. }
  101. ds_temp_dutplcecd.filter("");
  102. //2010-03-18 오전 10:27:07 이환석
  103. //병동간호, 응급간호 등 입원간호 메뉴그룹의 동의서 및 기타출력 서식 반납 화면에서
  104. //구분 초기설정을 메뉴 paramter값에 따라 달리 한다.(parameter값 없을 경우 default)
  105. var menuparam = frmf_getMenuParam();
  106. //바로가기로 OCR반납 화면을 들어갔을 경우 null이 문자로 들어감.
  107. if(menuparam == "null") {
  108. ds_main.setColumn(0, "flag", "ORD");
  109. } else if(!utlf_isNull(menuparam)) {
  110. ds_main.setColumn(0, "flag", menuparam);
  111. }
  112. //2013/02/21 Start
  113. ds_main.setColumn(0, "eocryn", "-");
  114. ds_main.setColumn(0, "scanyn", "-");
  115. //2013/02/21 End
  116. }
  117. /**
  118. * @desc : 동의서 및 기타 출력서식 반납 조회
  119. *
  120. * @param :
  121. * @return :
  122. * @author : HIT EMR Team
  123. * @---------------------------------------------------
  124. */
  125. function fSearch(){
  126. //20111010
  127. dsf_makeValue(ds_send_reqdata, "fromdt", "string", ds_main_term.getColumn(0, "termfromdd"));
  128. dsf_makeValue(ds_send_reqdata, "todt", "string", ds_main_term.getColumn(0, "termtodd"));
  129. var oParam = {};
  130. oParam.id = "TRMRF02699";
  131. oParam.service = "formmngtapp.OcrRtnMngt";
  132. oParam.method = "reqGetDate";
  133. oParam.inds = "req=ds_send_reqdata";
  134. oParam.outds = "ds_cond=item";
  135. oParam.async = false;
  136. tranf_submit(oParam);
  137. if(ds_cond.getColumn(0, "checkdate") > 31){
  138. if(utlf_isNull(ds_main.getColumn(0, "pid")) && utlf_isNull(ds_SearchData.getColumn(0, "inputSearchData"))){
  139. alert("조회기간이 31일 이상이면 등록번호 또는 서식명 선택이 필수입니다!");
  140. return;
  141. }
  142. }
  143. //20111010
  144. fSetDeptValue(); //2010.02.18, hkjoo
  145. var statcd = ds_main.getColumn(0, "rtncnfm");
  146. statcd = statcd.split(" ").join("|");
  147. var objColInfo = new Array();
  148. objColInfo.push({col: "dateflag", type:"string", size:256, val:ds_main.getColumn(0, "flag")});
  149. objColInfo.push({col: "fromdt", type:"string", size:256, val:ds_main_term.getColumn(0, "termfromdd")});
  150. objColInfo.push({col: "todt", type:"string", size:256, val:ds_main_term.getColumn(0, "termtodd")});
  151. objColInfo.push({col: "prntdeptcd", type:"string", size:256, val:ds_main_dept.getColumn(0, "prntdept")});
  152. objColInfo.push({col: "rtndeptcd", type:"string", size:256, val:ds_main_dept.getColumn(0, "rtndept")});
  153. objColInfo.push({col: "orddeptcd", type:"string", size:256, val:ds_main_dept.getColumn(0, "orddept")});
  154. objColInfo.push({col: "wardcd", type:"string", size:256, val:ds_main_dept.getColumn(0, "ward")});
  155. objColInfo.push({col: "ioflag", type:"string", size:256, val:ds_main.getColumn(0, "ioflag")});
  156. objColInfo.push({col: "rtncnfm", type:"string", size:256, val:statcd});//ds_main.getColumn(0, "rtncnfm")
  157. objColInfo.push({col: "scanyn", type:"string", size:256, val:ds_main.getColumn(0, "scanyn")});
  158. objColInfo.push({col: "eocryn", type:"string", size:256, val:ds_main.getColumn(0, "eocryn")});
  159. objColInfo.push({col: "verflag", type:"string", size:256, val:ds_main.getColumn(0, "verflag")});
  160. objColInfo.push({col: "inputflag", type:"string", size:256, val:ds_main.getColumn(0, "inputflag")});
  161. objColInfo.push({col: "drflag", type:"string", size:256, val:ds_main.getColumn(0, "drflag")});
  162. objColInfo.push({col: "pamyn", type:"string", size:256, val:ds_main.getColumn(0, "pamyn")});
  163. objColInfo.push({col: "lstupdtdeptnm", type:"string", size:256, val:ds_main.getColumn(0, "lstupdtdeptnm")});
  164. objColInfo.push({col: "lstupdtusernm", type:"string", size:256, val:ds_main.getColumn(0, "lstupdtusernm")});
  165. //2012/05/22 Start
  166. if(utlf_isNull(ds_SearchData.getColumn(0, "inputSearchData"))){
  167. objColInfo.push({col: "formcd", type:"string", size:256, val:""});
  168. objColInfo.push({col: "formfromdt", type:"string", size:256, val:""});
  169. }else{
  170. objColInfo.push({col: "formcd", type:"string", size:256, val:ds_SelectValue.getColumn(0, "inputSelectValue")});
  171. objColInfo.push({col: "formfromdt", type:"string", size:256, val:ds_SelectValue2.getColumn(0, "inputSelectValue2")});
  172. }
  173. //2012/05/22 End
  174. objColInfo.push({col: "pid", type:"string", size:256, val:ds_main.getColumn(0, "pid")});
  175. var nVscrolPos = grd_ocrprntlist.vscrollbar.pos;
  176. dsf_createDsRow("ds_send_reqdata_ocrprnt", objColInfo);
  177. ds_main_prntstat_list.clearData();
  178. var oParam = {};
  179. oParam.id = "TRMRF02604";
  180. oParam.service = "formmngtapp.OcrRtnMngt";
  181. oParam.method = "reqGetPrntInfoList";
  182. oParam.inds = "req=ds_send_reqdata_ocrprnt";
  183. oParam.outds = "ds_main_prntstat_list=prntstat";
  184. oParam.async = false;
  185. tranf_submit(oParam);
  186. dsf_setTypeFormat(ds_main_prntstat_list, "pagecnt:INT^scancnt:INT");
  187. for (var i = 0; i < grd_ocrprntlist.rowcount; i++) {
  188. ds_main_prntstat_list.addColumn("statcd","string");
  189. ds_main_prntstat_list.setColumn(i, "statcd",ds_main_prntstat_list.getColumn(i,"stat"));
  190. }
  191. var grid = eval("grd_ocrprntlist");
  192. grdf_initGridStyle(grid);
  193. ds_send_reqdata.clearData();
  194. ds_send_reqdata_ocrprnt.clearData();
  195. if( nVscrolPos > 0 ){
  196. grd_ocrprntlist.vscrollbar.pos = nVscrolPos;
  197. }
  198. }
  199. /**
  200. * @desc : 부서리스트 조회
  201. *
  202. * @param :
  203. * @return :
  204. * @author : HIT EMR Team
  205. * @---------------------------------------------------
  206. */
  207. // function fGetDeptlist(ref, rsltRef, queryflag, dutplceinstcd){
  208. // if(queryflag != null)
  209. // model.makeValue(ref + "/queryflag", queryflag);
  210. //
  211. // if(dutplceinstcd != null)
  212. // model.makeValue(ref + "/dutplceinstcd", dutplceinstcd);
  213. //
  214. // submit("TRMRF02601", true, ref, rsltRef);
  215. // }
  216. /**
  217. * @desc : 병동리스트 조회
  218. *
  219. * @param :
  220. * @return :
  221. * @author : HIT EMR Team
  222. * @---------------------------------------------------
  223. */
  224. /*
  225. function fGetWardlist(ref, rsltRef, queryflag){
  226. var bindref = eval(ref);
  227. var bindrsltRef = eval(rsltRef);
  228. if(!utlf_isNull(queryflag)){
  229. if(bindref.rowcount==0) bindref.addRow();
  230. dsf_makeValue(bindref, "queryflag", "string", queryflag);
  231. }
  232. var oParam = {};
  233. oParam.id = "TRMRF02602";
  234. oParam.service = "formmngtapp.OcrPrntMngt";
  235. oParam.method = "reqGetWardList";
  236. oParam.inds = "req=ds_send_reqdata";
  237. oParam.outds = "ds_main_dept_ward=wardlist";
  238. oParam.async = false;
  239. tranf_submit(oParam);
  240. }
  241. */
  242. /**
  243. * @desc : 폼리스트 조회
  244. *
  245. * @param :
  246. * @return :
  247. * @author : HIT EMR Team
  248. * @---------------------------------------------------
  249. */
  250. function fGetFormlist(ref, rsltRef, queryflag, dutplceinstcd){
  251. var bindref = eval(ref);
  252. var bindrsltRef = eval(rsltRef);
  253. if(!utlf_isNull(queryflag)){
  254. dsf_makeValue(bindref,"formprogflag" ,"string", queryflag);
  255. }
  256. if(!utlf_isNull(dutplceinstcd)){
  257. dsf_makeValue(bindref,"dutplceinstcd" ,"string", dutplceinstcd);
  258. }
  259. var oParam = {};
  260. oParam.id = "TRMRF02603";
  261. oParam.service = "formmngtapp.OcrRtnMngt";
  262. oParam.method = "reqGetFormList";
  263. oParam.inds = "req=ds_send_reqdata";
  264. oParam.outds = "ds_main_forminfo_itemlist=formlist";
  265. oParam.async = false;
  266. tranf_submit(oParam);
  267. }
  268. /**
  269. * @desc : 출력부서리스트 조회
  270. *
  271. * @param :
  272. * @return :
  273. * @author : HIT EMR Team
  274. * @---------------------------------------------------
  275. */
  276. function fGetPrntDeptlist(ioflag){
  277. ds_temp_deptinfo.clearData();
  278. switch(ioflag){
  279. case "A":
  280. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", "","", "ds_temp_deptinfo" , "", "");
  281. ds_hidden_dept_orddept.copyData(ds_temp_deptinfo);
  282. ds_hidden_dept_rtndept.copyData(ds_hidden_dept_orddept);
  283. ds_hidden_dept_rtndept.appendData(ds_hidden_dept_ward);
  284. frmf_addComboItem("group1.cmb_rtndept","전체","-");
  285. frmf_addComboItem("group1.cmb_orddept","전체","-");
  286. ds_hidden_dept_prntdept.copyData(ds_hidden_dept_rtndept);
  287. break;
  288. case "O":
  289. appf_getOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", "","", "ds_temp_deptinfo" , "", "");
  290. ds_hidden_dept_orddept.copyData(ds_temp_deptinfo);
  291. ds_hidden_dept_prntdept.copyData(ds_hidden_dept_orddept);
  292. frmf_addComboItem("group1.cmb_orddept","전체","-");
  293. frmf_addComboItem("group1.cmb_prntdept","전체","-");
  294. ds_temp_deptinfo.clear();
  295. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", "","", "ds_temp_deptinfo" , "", "");
  296. ds_hidden_dept_rtndept.copyData(ds_temp_deptinfo);
  297. frmf_addComboItem("group1.cmb_rtndept","전체","-");
  298. break;
  299. case "I":
  300. appf_getInOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", "","", "ds_temp_deptinfo" , "", "");
  301. ds_hidden_dept_orddept.copyData(ds_temp_deptinfo);
  302. ds_hidden_dept_prntdept.copyData(ds_hidden_dept_orddept);
  303. ds_hidden_dept_prntdept.appendData(ds_main_hidden_ward);
  304. frmf_addComboItem("group1.cmb_orddept","전체","-");
  305. frmf_addComboItem("group1.cmb_prntdept","전체","-");
  306. ds_hidden_dept_rtndept.copyData(ds_hidden_dept_prntdept);
  307. break;
  308. case "E":
  309. appf_getInOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", "","", "ds_temp_deptinfo" , "", "");
  310. ds_hidden_dept_orddept.copyData(ds_temp_deptinfo);
  311. ds_hidden_dept_prntdept.copyData(ds_hidden_dept_orddept);
  312. ds_hidden_dept_prntdept.appendData(ds_main_hidden_ward);
  313. frmf_addComboItem("group1.cmb_orddept","전체","-");
  314. frmf_addComboItem("group1.cmb_prntdept","전체","-");
  315. ds_hidden_dept_rtndept.copyData(ds_hidden_dept_prntdept);
  316. break;
  317. }
  318. }
  319. /**
  320. * @desc : 입원/외래 구분정보 셋팅
  321. *
  322. * @param :
  323. * @return :
  324. * @author : HIT EMR Team
  325. * @---------------------------------------------------
  326. */
  327. function fSetIOFlag(){
  328. if((ds_main.getColumn(0, "ioflag") == "I") || (ds_main.getColumn(0, "ioflag") == "E") || (ds_main.getColumn(0, "ioflag") == "A")){
  329. group1.cmb_wardlist.enable = true;
  330. if(ds_main.getColumn(0, "ioflag") == "I"){
  331. fGetPrntDeptlist("I");
  332. }else if(ds_main.getColumn(0, "ioflag") == "E"){
  333. fGetPrntDeptlist("E");
  334. }else if(ds_main.getColumn(0, "ioflag") == "A"){
  335. fGetPrntDeptlist("A");
  336. }
  337. } else {
  338. group1.cmb_wardlist.enable = false;
  339. if(ds_main.getColumn(0, "ioflag") == "O"){
  340. fGetPrntDeptlist("O");
  341. }
  342. }
  343. }
  344. /**
  345. * @desc : 반납부서리스트 조회
  346. *
  347. * @param :
  348. * @return :
  349. * @author : HIT EMR Team
  350. * @---------------------------------------------------
  351. */
  352. // function fGetRtnDeptlist(){
  353. // zbcfGetCodeList( new Array("A0146"), new Array("/root/init/baseinfo/tmplcdflag"), false );
  354. // submit("TRZBC00101");
  355. // }
  356. /**
  357. * @desc : 정보저장
  358. *
  359. * @param :
  360. * @return :
  361. * @author : HIT EMR Team
  362. * @---------------------------------------------------
  363. */
  364. function fSetData(){
  365. var rowcount = grd_ocrprntlist.rowcount;
  366. var listPath = "/root/main/prntstat/list";
  367. var targetPath="/root/maintemp/prntstat/list";
  368. ds_send_reqdata.clearData();
  369. var cnt =0;
  370. for(var irow = 0; irow < rowcount; irow++){
  371. if(ds_maintemp_prntstat_list.getColumn(irow, "check") == "true"){
  372. var filterStr = "rownum=='"+(irow+1)+"'";
  373. ds_maintemp_prntstat_list.filter(filterStr);
  374. if(cnt==0){
  375. dsf_copyColInfo(ds_send_reqdata, ds_maintemp_prntstat_list);
  376. }
  377. if(ds_send_reqdata.rowcount==0) ds_send_reqdata.addRow();
  378. dsf_copyDs(ds_send_reqdata,ds_maintemp_prntstat_list);
  379. ds_maintemp_prntstat_list.filter("");
  380. cnt++;
  381. }
  382. }
  383. if(!utlf_isNull(ds_send_reqdata.getColumnInfo("pagecnt"))){
  384. dsf_setTypeFormat(ds_send_reqdata, "pagecnt:INT");
  385. }
  386. if(!utlf_isNull(ds_send_reqdata.getColumnInfo("scancnt"))){
  387. dsf_setTypeFormat(ds_send_reqdata, "scancnt:INT");
  388. }
  389. if(!utlf_isNull(ds_send_reqdata.getColumnInfo("cretno"))){
  390. dsf_setTypeFormat(ds_send_reqdata, "cretno:INT");
  391. }
  392. var oParam = {};
  393. oParam.id = "TXMRF02605";
  394. oParam.service = "formmngtapp.OcrRtnMngt";
  395. oParam.method = "reqSetPrntHist";
  396. oParam.inds = "req=ds_send_reqdata";
  397. oParam.outds = "ds_temp_rowcount=setRtnHistYN";
  398. oParam.async = false;
  399. oParam.callback = "cf_TXMRF02605";
  400. tranf_submit(oParam);
  401. if(arErrorCode.pop("TXMRF02605") > -1){
  402. sysf_messageBox("", "I001");
  403. } else {
  404. sysf_messageBox("", "E009");
  405. }
  406. ds_send_reqdata.clearData();
  407. ds_maintemp_prntstat_list.clearData();
  408. }
  409. /**
  410. * @desc : 사용자부서 및 반납세팅
  411. *
  412. * @param :
  413. * @return :
  414. * @author : HIT EMR Team
  415. * @---------------------------------------------------
  416. */
  417. function fSetRtn(){
  418. var rowcount = grd_ocrprntlist.rowcount;
  419. var listPath = "/root/main/prntstat/list";
  420. var targetPath="/root/maintemp/prntstat/list";
  421. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  422. ds_main_userpopupinfo.clearData();
  423. if(ds_main_userpopupinfo.rowcount==0) ds_main_userpopupinfo.addRow();
  424. ds_main_userpopupinfo.setColumn(0, "param", "_OneS_DD");
  425. dsf_makeValue(ds_main_userpopupinfo,"searchitem" ,"string", sysf_getUserInfo("userid"));
  426. dsf_makeValue(ds_main_userpopupinfo,"flag" ,"string", "userid");
  427. var objArg = new Object();
  428. objArg.param = ds_main_userpopupinfo.getColumn(0, "param");
  429. objArg.flag = ds_main_userpopupinfo.getColumn(0, "flag");
  430. objArg.searchitem = ds_main_userpopupinfo.getColumn(0, "searchitem");
  431. var rtn = frmf_modal("SPZSU10103", "SPZSU10103", objArg, null, "1", "10", "10", null, null, null, null, null, "M");
  432. dsf_createDs("ds_temp_userinfo");
  433. ds_temp_userinfo.copyData(rtn);
  434. for(var irow = 0; irow < rowcount; irow++){
  435. if(ds_main_prntstat_list.getColumn(irow, "check") == "true"){
  436. //20111007
  437. var chkform = ds_init_hardcditem.rowcount;
  438. for(var i=0; i<chkform; i++){
  439. if(ds_main_prntstat_list.getColumn(irow, "formcd")==ds_init_hardcditem.getColumn(i, "hardcd")){
  440. alert(ds_init_hardcditem.getColumn(i,"hardcdnm") + "의 반납은 선택진료 신청관리 화면에서만 가능합니다.");
  441. return;
  442. }
  443. }
  444. //20111007
  445. if(!((ds_main_prntstat_list.getColumn(irow, "statcd") == "P")
  446. || (ds_main_prntstat_list.getColumn(irow, "statcd") == "CR")
  447. || (ds_main_prntstat_list.getColumn(irow, "statcd") == "CD"))){
  448. sysf_messageBox("출력상태가 아닌 데이터가","E005");
  449. return;
  450. }
  451. //이윤주 수정(20180615)
  452. if( ds_main_prntstat_list.getColumn(irow, "statcd") == "P" && ds_main_prntstat_list.getColumn(irow, "eocryn") == "Y" ) {
  453. sysf_messageBox("전자동의서 임시저장상태는 반납할 수 없습니다.","E");
  454. return;
  455. }
  456. var cnt = ds_maintemp_prntstat_list.rowcount;
  457. if(cnt==0){
  458. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  459. }
  460. ds_maintemp_prntstat_list.addRow();
  461. ds_maintemp_prntstat_list.copyRow(cnt,ds_main_prntstat_list,irow);
  462. ds_maintemp_prntstat_list.setColumn(cnt, "rtndt", currDT);
  463. ds_maintemp_prntstat_list.setColumn(cnt, "rtndeptcd", ds_temp_userinfo.getColumn(0, "dutplcecd"));
  464. ds_maintemp_prntstat_list.setColumn(cnt, "rtnuserid", ds_temp_userinfo.getColumn(0, "userid"));
  465. ds_maintemp_prntstat_list.setColumn(cnt, "rtndeptnm", ds_temp_userinfo.getColumn(0, "dutplcenm"));
  466. ds_maintemp_prntstat_list.setColumn(cnt, "rtnusernm", ds_temp_userinfo.getColumn(0, "usernm"));
  467. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "R");
  468. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdt", currDT);
  469. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptcd", ds_temp_userinfo.getColumn(0, "dutplcecd"));
  470. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtuserid", ds_temp_userinfo.getColumn(0, "userid"));
  471. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptnm", ds_temp_userinfo.getColumn(0, "dutplcenm"));
  472. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtusernm", ds_temp_userinfo.getColumn(0, "usernm"));
  473. if(ds_main_prntstat_list.getColumn(irow, "formcd") == "0000001778"){
  474. fGetNewBabyInfo("ds_main_prntstat_list", irow);
  475. }
  476. }
  477. }
  478. fSetData();
  479. }
  480. /**
  481. * @desc : 반납확인정보 셋팅
  482. *
  483. * @param :
  484. * @return :
  485. * @author : HIT EMR Team
  486. * @---------------------------------------------------
  487. */
  488. function fSetRtnCnfm(){
  489. var rowcount = grd_ocrprntlist.rowcount;
  490. var listPath = "/root/main/prntstat/list";
  491. var targetPath="/root/maintemp/prntstat/list";
  492. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  493. for(var irow = 0; irow < rowcount; irow++){
  494. if(ds_main_prntstat_list.getColumn(irow,"check") == "true"){
  495. if(!((ds_main_prntstat_list.getColumn(irow, "statcd") == "R")
  496. || (ds_main_prntstat_list.getColumn(irow, "statcd") == "CC"))){
  497. sysf_messageBox("반납상태가 아닌 데이터가","E005");
  498. return;
  499. }
  500. var cnt = ds_maintemp_prntstat_list.rowcount;
  501. if(cnt==0){
  502. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  503. }
  504. ds_maintemp_prntstat_list.addRow();
  505. ds_maintemp_prntstat_list.copyRow(cnt,ds_main_prntstat_list,irow);
  506. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmdt", currDT);
  507. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmdeptcd", sysf_getUserInfo("dutplcecd"));
  508. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmuserid", sysf_getUserInfo("userid"));
  509. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmdeptnm", sysf_getUserInfo("dutplcenm"));
  510. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmusernm", sysf_getUserInfo("usernm"));
  511. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "C");
  512. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfm", "Y");
  513. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdt", currDT);
  514. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptcd", sysf_getUserInfo("dutplcecd"));
  515. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtuserid", sysf_getUserInfo("userid"));
  516. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptnm", sysf_getUserInfo("dutplcenm"));
  517. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtusernm", sysf_getUserInfo("usernm"));
  518. }
  519. }
  520. fSetData();
  521. }
  522. /**
  523. * @desc : 반납취소 셋팅
  524. *
  525. * @param :
  526. * @return :
  527. * @author : HIT EMR Team
  528. * @---------------------------------------------------
  529. */
  530. function fSetRtnCancel(){
  531. var rowcount = grd_ocrprntlist.rowcount;
  532. var listPath = "/root/main/prntstat/list";
  533. var targetPath="/root/maintemp/prntstat/list";
  534. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  535. //var nRow = ds_tmp.rowposition;
  536. var updtresncnts = ds_tmp.getColumn(0, "resn");
  537. //의무기록 부서
  538. var cnt = ds_temp_dutplcecd.getCaseCount("hardcd == '" + sysf_getUserInfo("dutplcecd") + "'");
  539. for(var irow = 0; irow < rowcount; irow++){
  540. if(ds_main_prntstat_list.getColumn(irow,"check") == "true"){
  541. //20111007
  542. var chkform = ds_init_hardcditem.rowcount;
  543. for(var i=0; i<chkform; i++){
  544. if(ds_main_prntstat_list.getColumn(irow,"formcd")==ds_init_hardcditem.getColumn(i, "hardcd")){
  545. alert(ds_init_hardcditem.getColumn(i, "hardcdnm") + "의 반납취소는 선택진료 신청관리 화면에서만 가능합니다.");
  546. return;
  547. }
  548. }
  549. //20111007
  550. if(ds_main_prntstat_list.getColumn(irow, "scanyn") == "Y"){
  551. sysf_messageBox("스캔된 Data는 반납취소를","E001");
  552. return;
  553. }
  554. if(!((ds_main_prntstat_list.getColumn(irow, "statcd") == "R")
  555. || (ds_main_prntstat_list.getColumn(irow, "statcd") == "CC"))){
  556. sysf_messageBox("반납상태가 아닌 데이터가","E005");
  557. return;
  558. }
  559. //20190211 이윤주막음
  560. // if(cnt == 0 && (ds_main_prntstat_list.getColumn(irow, "prntuserid") != sysf_getUserInfo("userid"))){
  561. //
  562. // sysf_messageBox("출력자와 반납취소자가 동일하지 않아 진행 불가합니다","E");
  563. // return;
  564. // }
  565. var cnt = ds_maintemp_prntstat_list.rowcount;
  566. if(cnt==0){
  567. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  568. }
  569. cnt = parseInt(cnt) + 1;
  570. ds_maintemp_prntstat_list.addRow();
  571. ds_maintemp_prntstat_list.copyRow(cnt-1,ds_main_prntstat_list,irow);
  572. ds_maintemp_prntstat_list.setColumn(cnt-1, "rtndt", "");
  573. ds_maintemp_prntstat_list.setColumn(cnt-1, "rtndeptcd", "");
  574. ds_maintemp_prntstat_list.setColumn(cnt-1, "rtnuserid", "");
  575. ds_maintemp_prntstat_list.setColumn(cnt-1, "rtndeptnm", "");
  576. ds_maintemp_prntstat_list.setColumn(cnt-1, "rtnusernm", "");
  577. ds_maintemp_prntstat_list.setColumn(cnt-1, "statcd", "CR");
  578. ds_maintemp_prntstat_list.setColumn(cnt-1, "lstupdtdt", currDT);
  579. ds_maintemp_prntstat_list.setColumn(cnt-1, "lstupdtdeptcd", sysf_getUserInfo("dutplcecd"));
  580. ds_maintemp_prntstat_list.setColumn(cnt-1, "lstupdtuserid", sysf_getUserInfo("userid"));
  581. ds_maintemp_prntstat_list.setColumn(cnt-1, "lstupdtdeptnm", sysf_getUserInfo("dutplcenm"));
  582. ds_maintemp_prntstat_list.setColumn(cnt-1, "lstupdtusernm", sysf_getUserInfo("usernm"));
  583. ds_maintemp_prntstat_list.setColumn(cnt-1, "updtresncnts", updtresncnts);
  584. }
  585. }
  586. fSetData();
  587. }
  588. /**
  589. * @desc : 반납확인정보 취소 셋팅
  590. *
  591. * @param :
  592. * @return :
  593. * @author : HIT EMR Team
  594. * @---------------------------------------------------
  595. */
  596. function fSetRtnCnfmCancel(){
  597. var rowcount = grd_ocrprntlist.rowcount;
  598. var listPath = "/root/main/prntstat/list";
  599. var targetPath="/root/maintemp/prntstat/list";
  600. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  601. //var nRow = ds_tmp.rowposition;
  602. var updtresncnts = ds_tmp.getColumn(0, "resn");
  603. for(var irow = 0; irow < rowcount; irow++){
  604. if(ds_main_prntstat_list.getColumn(irow,"check") == "true"){
  605. if(ds_main_prntstat_list.getColumn(irow, "scanyn") == "Y"){
  606. sysf_messageBox("스캔된 Data는 반납확인 취소를","E001");
  607. return;
  608. }
  609. if(!(ds_main_prntstat_list.getColumn(irow, "statcd") == "C")){
  610. sysf_messageBox("반납상태가 아닌 데이터가","E005");
  611. return;
  612. }
  613. var cnt = ds_maintemp_prntstat_list.rowcount;
  614. if(cnt==0){
  615. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  616. }
  617. ds_maintemp_prntstat_list.addRow();
  618. ds_maintemp_prntstat_list.copyRow(cnt,ds_main_prntstat_list,irow);
  619. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmdt", "");
  620. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmdeptcd", "");
  621. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmuserid", "");
  622. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmdeptnm", "");
  623. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfmusernm", "");
  624. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "CC");
  625. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfm", "N");
  626. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdt", currDT);
  627. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptcd", sysf_getUserInfo("dutplcecd"));
  628. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtuserid", sysf_getUserInfo("userid"));
  629. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptnm", sysf_getUserInfo("dutplcenm"));
  630. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtusernm", sysf_getUserInfo("usernm"));
  631. ds_maintemp_prntstat_list.setColumn(cnt, "updtresncnts", updtresncnts);
  632. }
  633. }
  634. fSetData();
  635. }
  636. /**
  637. * @desc : 출력 취소 정보 셋팅
  638. *
  639. * @param :
  640. * @return :
  641. * @author : HIT EMR Team
  642. * @---------------------------------------------------
  643. */
  644. function fSetPrntCancel(){
  645. var rowcount = grd_ocrprntlist.rowcount;
  646. var listPath = "/root/main/prntstat/list";
  647. var targetPath="/root/maintemp/prntstat/list";
  648. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  649. //var nRow = ds_tmp.rowposition;
  650. var updtresncnts = ds_tmp.getColumn(0, "resn");
  651. for(var irow = 0; irow < rowcount; irow++){
  652. if(ds_main_prntstat_list.getColumn(irow,"check") == "true"){
  653. //20111007
  654. var chkform = ds_init_hardcditem.rowcount;
  655. for(var i=0; i<chkform; i++){
  656. if(ds_main_prntstat_list.getColumn(irow,"formcd")==ds_init_hardcditem.getColumn(i, "hardcd")){
  657. alert(ds_init_hardcditem.getColumn(i, "hardcdnm") + "의 삭제는 선택진료 신청관리 화면에서만 가능합니다.");
  658. return;
  659. }
  660. }
  661. //20111007
  662. //2013/03/08 Start
  663. if(ds_main_prntstat_list.getColumn(irow, "statcd") == "CP" || ds_main_prntstat_list.getColumn(irow, "statcd") == "D"){
  664. sysf_messageBox("이미 삭제된 데이터입니다", "I", "");
  665. return;
  666. }
  667. //2013/03/08 End
  668. //2013/02/22 Start 전자동의서 관련 수정 시작
  669. if(ds_main_prntstat_list.getColumn(irow, "eocryn") == "Y"){
  670. sysf_messageBox("전자동의서는 진행할 수 없습니다", "I", "");
  671. return;
  672. }else if(!((ds_main_prntstat_list.getColumn(irow, "statcd") == "P")
  673. || (ds_main_prntstat_list.getColumn(irow, "statcd") == "CR")
  674. || (ds_main_prntstat_list.getColumn(irow, "statcd") == "CD"))){
  675. sysf_messageBox("출력상태가 아닌 데이터가","E005");
  676. return;
  677. }
  678. //2013/02/22 End
  679. var cnt = ds_maintemp_prntstat_list.rowcount;
  680. if(cnt==0){
  681. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  682. }
  683. ds_maintemp_prntstat_list.addRow();
  684. ds_maintemp_prntstat_list.copyRow(cnt,ds_main_prntstat_list,irow);
  685. ds_maintemp_prntstat_list.setColumn(cnt, "prntdt", "");
  686. ds_maintemp_prntstat_list.setColumn(cnt, "prntdeptcd", "");
  687. ds_maintemp_prntstat_list.setColumn(cnt, "prntuserid", "");
  688. ds_maintemp_prntstat_list.setColumn(cnt, "prntdeptnm", "");
  689. ds_maintemp_prntstat_list.setColumn(cnt, "prntusernm", "");
  690. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "CP");
  691. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfm", "N");
  692. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdt", currDT);
  693. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptcd", sysf_getUserInfo("dutplcecd"));
  694. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtuserid", sysf_getUserInfo("userid"));
  695. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptnm", sysf_getUserInfo("dutplcenm"));
  696. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtusernm", sysf_getUserInfo("usernm"));
  697. ds_maintemp_prntstat_list.setColumn(cnt, "updtresncnts", updtresncnts);
  698. //2013/02/27 Start 전자동의서 관련 플래그 체크
  699. if(ds_main_prntstat_list.getColumn(irow, "eocryn") == "Y"){
  700. dsf_makeValue(ds_maintemp_prntstat_list,"eocryn","string","Y",cnt);
  701. }
  702. //2013/02/27 End
  703. }
  704. }
  705. fSetData();
  706. }
  707. /**
  708. * @desc : 출력 취소 정보 셋팅
  709. *
  710. * @param :
  711. * @return :
  712. * @author : HIT EMR Team
  713. * @---------------------------------------------------
  714. */
  715. function fSetDelCancel(){
  716. var rowcount = grd_ocrprntlist.rowcount;
  717. var listPath = "/root/main/prntstat/list";
  718. var targetPath="/root/maintemp/prntstat/list";
  719. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  720. for(var irow = 0; irow < rowcount; irow++){
  721. if(ds_main_prntstat_list.getColumn(irow,"check") == "true"){
  722. if(ds_main_prntstat_list.getColumn(irow,"statcd") != "CP" && ds_main_prntstat_list.getColumn(irow,"statcd") != "D"){
  723. sysf_messageBox("삭제상태가 아닌 데이터가","E005");
  724. return;
  725. }
  726. if(ds_main_prntstat_list.getColumn(irow, "eocryn") == "Y"){
  727. sysf_messageBox("전자동의서는 삭제취소할 수 없습니다","E");
  728. return;
  729. }
  730. //2013/02/27 Start 원무에서 발생하는 서식은 원무쪽 화면으로 유도
  731. var chkform = ds_init_hardcditem.rowcount;
  732. for(var i=0; i<chkform; i++){
  733. if(ds_main_prntstat_list.getColumn(irow,"formcd")==ds_init_hardcditem.getColumn(i, "hardcd")){
  734. alert(ds_init_hardcditem.getColumn(i, "hardcdnm") + "의 삭제 취소는 선택진료 신청관리 화면에서만 가능합니다.");
  735. return;
  736. }
  737. }
  738. //2013/02/27 End
  739. var cnt = ds_maintemp_prntstat_list.rowcount;
  740. if(cnt==0){
  741. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  742. }
  743. ds_maintemp_prntstat_list.addRow();
  744. ds_maintemp_prntstat_list.copyRow(cnt,ds_main_prntstat_list,irow);
  745. ds_maintemp_prntstat_list.setColumn(cnt, "prntdt", currDT);
  746. ds_maintemp_prntstat_list.setColumn(cnt, "prntdeptcd", sysf_getUserInfo("dutplcecd"));
  747. ds_maintemp_prntstat_list.setColumn(cnt, "prntuserid", sysf_getUserInfo("userid"));
  748. ds_maintemp_prntstat_list.setColumn(cnt, "prntdeptnm", sysf_getUserInfo("dutplcenm"));
  749. ds_maintemp_prntstat_list.setColumn(cnt, "prntusernm", sysf_getUserInfo("usernm"));
  750. //2013/02/25 Start 전자동의서를 삭제취소 할시에는 반납 상태로 돌림
  751. if(ds_main_prntstat_list.getColumn(irow, "eocryn") != "Y"){
  752. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "P");
  753. }else{
  754. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "C");
  755. ds_maintemp_prntstat_list.setColumn(cnt, "eocryn", "Y");
  756. }
  757. //2013/02/25 End
  758. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfm", "N");
  759. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdt", currDT);
  760. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptcd", sysf_getUserInfo("dutplcecd"));
  761. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtuserid", sysf_getUserInfo("userid"));
  762. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptnm", sysf_getUserInfo("dutplcenm"));
  763. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtusernm", sysf_getUserInfo("usernm"));
  764. }
  765. }
  766. fSetData();
  767. }
  768. /**
  769. * @desc : 버튼 초기화
  770. *
  771. * @param :
  772. * @return :
  773. * @author : HIT EMR Team
  774. * @---------------------------------------------------
  775. */
  776. function finitialBtn(row, checkflag){
  777. var statcd = ds_main_prntstat_list.getColumn(row, "statcd");
  778. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  779. var dutplcecd = sysf_getUserInfo("dutplcecd");
  780. var filterStr = "hardcd=='"+dutplcecd+"'";
  781. ds_temp_dutplcecd.filter(filterStr);
  782. if(ds_temp_dutplcecd.rowcount > 0){
  783. // KNUH_20101207_박성호_end
  784. if(checkflag){
  785. switch(statcd){
  786. case "P":
  787. group4.btn_rtncnfm.enable = false;
  788. group4.btn_rntcancel.enable = false;
  789. group4.btn_cnfmcancel.enable = false;
  790. group4.btn_delcancel.enable = false;
  791. group4.btn_rtn.enable = true;
  792. group4.btn_prntcancel.enable = true;
  793. break;
  794. case "R":
  795. group4.btn_rtncnfm.enable = true;
  796. group4.btn_rntcancel.enable = true;
  797. group4.btn_cnfmcancel.enable = false;
  798. group4.btn_delcancel.enable = false;
  799. group4.btn_rtn.enable = false;
  800. group4.btn_prntcancel.enable = false;
  801. break;
  802. case "C":
  803. group4.btn_rtncnfm.enable = false;
  804. group4.btn_rntcancel.enable = false;
  805. group4.btn_cnfmcancel.enable = true;
  806. group4.btn_delcancel.enable = false;
  807. group4.btn_rtn.enable = false;
  808. group4.btn_prntcancel.enable = false;
  809. break;
  810. case "CP":
  811. group4.btn_rtncnfm.enable = false;
  812. group4.btn_rntcancel.enable = false;
  813. group4.btn_cnfmcancel.enable = false;
  814. group4.btn_delcancel.enable = true;
  815. group4.btn_rtn.enable = false;
  816. group4.btn_prntcancel.enable = false;
  817. break;
  818. case "CR":
  819. group4.btn_rtncnfm.enable = false;
  820. group4.btn_rntcancel.enable = false;
  821. group4.btn_cnfmcancel.enable = false;
  822. group4.btn_delcancel.enable = false;
  823. group4.btn_rtn.enable = true;
  824. group4.btn_prntcancel.enable = true;
  825. break;
  826. case "CC":
  827. group4.btn_rtncnfm.enable = true;
  828. group4.btn_rntcancel.enable = true;
  829. group4.btn_cnfmcancel.enable = false;
  830. group4.btn_delcancel.enable = false;
  831. group4.btn_rtn.enable = false;
  832. group4.btn_prntcancel.enable = false;
  833. break;
  834. }
  835. }
  836. var setflag = ds_main_prntstat_list.getColumn(row, "scanyn");
  837. if((setflag == "Y")&&((statcd == "R")||(statcd == "CC"))){
  838. group4.btn_barcode.enable = false;
  839. group4.btn_rtn.enable = false;
  840. group4.btn_rntcancel.enable = false;
  841. group4.btn_cnfmcancel.enable = false;
  842. group4.btn_prntcancel.enable = false;
  843. group4.btn_delcancel.enable = false;
  844. group4.btn_rtncnfm.enable = true;
  845. } else if((setflag == "Y")&&(statcd == "C")){
  846. group4.btn_barcode.enable = false;
  847. group4.btn_rtn.enable = false;
  848. group4.btn_rntcancel.enable = false;
  849. group4.btn_cnfmcancel.enable = false;
  850. group4.btn_prntcancel.enable = false;
  851. group4.btn_delcancel.enable = false;
  852. group4.btn_rtncnfm.enable = false;
  853. }
  854. }
  855. ds_temp_dutplcecd.filter("");
  856. //2013/02/22 Start 전자동의서관련 수정
  857. /*
  858. * 전자동의서를 선택시 삭제 또는 삭제취소를 활성화 시켜준다.
  859. */
  860. var eocryn = ds_main_prntstat_list.getColumn(row,"eocryn");
  861. if(eocryn=="Y"){
  862. group4.btn_prntcancel.enable = true;
  863. group4.btn_delcancel.enable = true;
  864. }
  865. //2013/02/22 End
  866. //사유입력가능기관
  867. if (gResnablecnt > 0) {
  868. group4.btn_rntcancel.enable = true;
  869. }
  870. }
  871. /**
  872. * @desc : 엑셀파일로 저장
  873. *
  874. * @param :
  875. * @return :
  876. * @author : HIT EMR Team
  877. * @---------------------------------------------------
  878. */
  879. function fSaveExcel(){
  880. grdf_exportExcel(grd_ocrprntlist, "excel", "SheetName1" , true, "" , "" , true);
  881. }
  882. /**
  883. * @desc : 기록이력정보 조회
  884. *
  885. * @param :
  886. * @return :
  887. * @author : HIT EMR Team
  888. * @---------------------------------------------------
  889. */
  890. function fShowHist(){
  891. var row = ds_main_prntstat_list.rowposition;
  892. var filterStr = "check=='true'";
  893. ds_main_prntstat_list.filter(filterStr);
  894. var chk_List = ds_main_prntstat_list.rowcount;
  895. ds_main_prntstat_list.filter("");
  896. if(chk_List > 1){
  897. sysf_messageBox("데이타가 두 건이상", "E005");
  898. return;
  899. }
  900. if(group4.btn_histview.text == "이력닫기"){
  901. group2.visible = "false";
  902. var grid = eval("grd_ocrprntlist");
  903. grd_ocrprntlist.setFocus();
  904. ds_main_prntstat_list.selectRow(row);
  905. grdf_initGridStyle(grid);
  906. group4.btn_histview.text = "이력보기";
  907. return;
  908. }
  909. dsf_makeValue(ds_send_reqdata, "ocrtag", "string", ds_main_prntstat_list.getColumn(row, "ocrtag"), 0);
  910. dsf_makeValue(ds_send_reqdata, "currentdd", "string", utlf_getCurrentDate(), 0);
  911. ds_main_prnthist_list.clearData();
  912. var oParam = {};
  913. oParam.id = "TRMRF02606";
  914. oParam.service = "formmngtapp.OcrRtnMngt";
  915. oParam.method = "reqGetHistList";
  916. oParam.inds = "req=ds_send_reqdata";
  917. oParam.outds = "ds_main_prnthist_list=histlist";
  918. oParam.async = false;
  919. tranf_submit(oParam);
  920. grd_ocrprntlist.setFocus();
  921. ds_main_prntstat_list.selectRow(row);
  922. group2.visible = "true";
  923. group4.btn_histview.text = "이력닫기";
  924. ds_main_prntstat_list.rowposition =row;
  925. ds_send_reqdata.clearData();
  926. }
  927. /**
  928. * @desc : 환자정보 조회
  929. *
  930. * @param :
  931. * @return :
  932. * @author : HIT EMR Team
  933. * @---------------------------------------------------
  934. */
  935. function fGetPatSearch(){
  936. var objColInfo = new Array();
  937. objColInfo.push({col: "srchcond", type:"string", size:256, val:"1"});
  938. objColInfo.push({col: "pid", type:"string", size:256, val:group1.ipt_pid.text});
  939. objColInfo.push({col: "autoflag", type:"string", size:256, val:"Y"});// 1건인경우 자동으로닫힘
  940. objColInfo.push({col: "hngnm", type:"string", size:256, val:""});
  941. objColInfo.push({col: "rrgstno1", type:"string", size:256, val:""});
  942. objColInfo.push({col: "rrgstno2", type:"string", size:256, val:""});
  943. objColInfo.push({col: "checkfnexam", type:"string", size:256, val:""});
  944. dsf_createDsRow("ds_temp", objColInfo);
  945. var objArgs = new Object();
  946. objArgs.arg_ds_send = ds_temp;
  947. frmf_modal("SPPMC02500", "SPPMC02500", objArgs, null, "1", "10", "10", null, null, null, null, null, "M");
  948. if(!utlf_isNull(this.objects["ds_patinfolist"])){
  949. ds_main.setColumn(0, "pid", ds_patinfolist.getColumn(0, "pid"));
  950. group1.btn_search.click();
  951. }
  952. }
  953. /**
  954. * @desc : 데이타 선택
  955. *
  956. * @param :
  957. * @return :
  958. * @author : HIT EMR Team
  959. * @---------------------------------------------------
  960. */
  961. function fChoiceData(col,row){
  962. var row = ds_main_prntstat_list.rowposition;
  963. var sRowCnt = grd_ocrprntlist.rowcount;
  964. if(row >= 0 || col >= 0) { //그리드에서 데이타영역만 선택
  965. if(grd_ocrprntlist.getCellPos() == 1){
  966. if(ds_main_prntstat_list.getColumn(row, "check") == "true"){
  967. ds_main_prntstat_list.setColumn(row, "check", "true");
  968. finitialBtn(row, ds_main_prntstat_list.getColumn(row, "check"));
  969. }else if(ds_main_prntstat_list.getColumn(row, "check") == "false"){
  970. ds_main_prntstat_list.setColumn(row, "check", "false");
  971. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  972. var dutplcecd = sysf_getUserInfo("dutplcecd");
  973. var filterStr = "hardcd=='"+dutplcecd+"'";
  974. ds_temp_dutplcecd.filter(filterStr);
  975. if(ds_temp_dutplcecd.rowcount > 0){
  976. // KNUH_20101207_박성호_end
  977. group4.btn_rtncnfm.enable = true;
  978. group4.btn_rntcancel.enable = true;
  979. group4.btn_cnfmcancel.enable = true;
  980. group4.btn_delcancel.enable = true;
  981. group4.btn_rtn.enable = true;
  982. group4.btn_prntcancel.enable = true;
  983. group4.btn_barcode.enable = true;
  984. }
  985. ds_temp_dutplcecd.filter("");
  986. }
  987. }
  988. }
  989. }
  990. /**
  991. * @desc : 데이타 선택_HEAD
  992. *
  993. * @param :
  994. * @return :
  995. * @author : HIT EMR Team
  996. * @---------------------------------------------------
  997. */
  998. function fChoiceData_head(col){
  999. var row = ds_main_prntstat_list.rowposition;
  1000. var sRowCnt = grd_ocrprntlist.rowcount;
  1001. var allSel = grd_ocrprntlist.getCellText(-1,1);
  1002. if(col==1) {
  1003. if(allSel == "선택"){
  1004. for(var iRow=0; iRow<sRowCnt; iRow++){
  1005. ds_main_prntstat_list.setColumn(iRow, "check", "true");
  1006. grd_ocrprntlist.setCellProperty("Head" , 1, "text", "해제");
  1007. }
  1008. } else if(allSel == "해제"){
  1009. for(var iRow=0; iRow<sRowCnt; iRow++){
  1010. ds_main_prntstat_list.setColumn(iRow, "check", "false");
  1011. grd_ocrprntlist.setCellProperty("Head" , 1, "text", "선택");
  1012. }
  1013. }
  1014. }
  1015. }
  1016. /**
  1017. * @desc : 환자 정보 Get
  1018. *
  1019. * @param :
  1020. * @return :
  1021. * @author : HIT EMR Team
  1022. * @---------------------------------------------------
  1023. */
  1024. function fGetPatInfo(){
  1025. var node = sysf_getGlobalVariable("paminfo");
  1026. dsf_setCSVToDs("ds_main_session_paminfo",node);
  1027. if(ds_main.rowcount==0) ds_main.addRow();
  1028. if(ds_main_dept.rowcount==0) ds_main_dept.addRow();
  1029. ds_main.setColumn(0, "flag", "ORD");
  1030. ds_main.setColumn(0, "pid", ds_main_session_paminfo.getColumn(0, "pid"));
  1031. ds_main_dept.setColumn(0, "orddept", ds_main_session_paminfo.getColumn(0, "orddeptcd"));
  1032. if(!utlf_isNull(ds_main_session_paminfo.getColumnInfo("ordtype"))){
  1033. ds_main.setColumn(0, "ioflag", ds_main_session_paminfo.getColumn(0, "ordtype"));
  1034. }else{
  1035. ds_main.setColumn(0, "ioflag", "");
  1036. }
  1037. if((ds_main.getColumn(0, "ioflag")== "O") || (ds_main.getColumn(0, "ioflag") == "S")){
  1038. if(ds_main_term.rowcount==0) ds_main_term.addRow();
  1039. dsf_makeValue(ds_main_term, "termfromdd", "string", ds_main_session_paminfo.getColumn(0, "orddd"));
  1040. dsf_makeValue(ds_main_term, "termtodd", "string", ds_main_session_paminfo.getColumn(0, "orddd"));
  1041. } else if(ds_main.getColumn(0, "ioflag") == "I"){
  1042. if(ds_main_term.rowcount==0) ds_main_term.addRow();
  1043. if(ds_main_dept.rowcount==0) ds_main_dept.addRow();
  1044. dsf_makeValue(ds_main_term, "termfromdd", "string", ds_main_session_paminfo.getColumn(0, "indd"));
  1045. dsf_makeValue(ds_main_term, "termtodd", "string", ds_main_session_paminfo.getColumn(0, "indd"));
  1046. ds_main_dept.setColumn(0, "ward", ds_main_session_paminfo.getColumn(0, "wardcd"));
  1047. } else if(ds_main.getColumn(0, "ioflag") == "E"){
  1048. if(ds_main_term.rowcount==0) ds_main_term.addRow();
  1049. if(ds_main_dept.rowcount==0) ds_main_dept.addRow();
  1050. dsf_makeValue(ds_main_term, "termfromdd", "string", ds_main_session_paminfo.getColumn(0, "indd"));
  1051. dsf_makeValue(ds_main_term, "termtodd", "string", ds_main_session_paminfo.getColumn(0, "indd"));
  1052. ds_main_dept.setColumn(0, "ward", ds_main_session_paminfo.getColumn(0, "wardcd"));
  1053. } else if(ds_main.getColumn(0, "ioflag") == "D"){
  1054. if(ds_main.rowcount==0) ds_main.addRow();
  1055. if(ds_main_term.rowcount==0) ds_main_term.addRow();
  1056. if(ds_main_dept.rowcount==0) ds_main_dept.addRow();
  1057. ds_main.setColumn(0, "ioflag", "I");
  1058. dsf_makeValue(ds_main_term, "termfromdd", "string", ds_main_session_paminfo.getColumn(0, "indd"));
  1059. dsf_makeValue(ds_main_term, "termtodd", "string", ds_main_session_paminfo.getColumn(0, "indd"));
  1060. dsf_makeValue(ds_main_dept, "ward", "string", ds_main_session_paminfo.getColumn(0, "wardcd"));
  1061. } else {
  1062. ds_main.setColumn(0, "ioflag", "A");
  1063. }
  1064. fSearch();
  1065. }
  1066. /**
  1067. * @desc : 바코드 반납 팝업
  1068. *
  1069. * @param :
  1070. * @return :
  1071. * @author : HIT EMR Team
  1072. * @---------------------------------------------------
  1073. */
  1074. function fBarCodeRtnPopup()
  1075. {
  1076. frmf_modal("SPMRF02900", "SPMRF02900", null, null, null, null, null, null, null, null, null, null, "M");
  1077. }
  1078. /**
  1079. * @desc : OCR 재프린트
  1080. *
  1081. * @param :
  1082. * @return :
  1083. * @author : HIT EMR Team
  1084. * @---------------------------------------------------
  1085. */
  1086. function fRePrntOCR(){
  1087. var formtypecls = "";
  1088. var ocrtagprntyn = "";
  1089. var iRow = ds_main_prntstat_list.rowposition;
  1090. //ivw_ocrprnt.attribute("src") = "../../../emr/formmngtweb/xrw/SSMRF03800_OCR뷰어.xrw";
  1091. //ivw_ocrprnt.url = "../../../emr/formmngtweb/xrw/SSMRF03800_OCR뷰어.xfdl";
  1092. var formcd = ds_main_prntstat_list.getColumn(iRow,"formcd");
  1093. var pid = ds_main_prntstat_list.getColumn(iRow,"pid");
  1094. var orddd = ds_main_prntstat_list.getColumn(iRow,"orddd");
  1095. var cretno = ds_main_prntstat_list.getColumn(iRow,"cretno");
  1096. var ordtype = ds_main_prntstat_list.getColumn(iRow,"ioflag");
  1097. var ocrtag = ds_main_prntstat_list.getColumn(iRow,"ocrtag");
  1098. var scanyn = ds_main_prntstat_list.getColumn(iRow,"scanyn");
  1099. var statcd = ds_main_prntstat_list.getColumn(iRow,"statcd");
  1100. var eocryn = ds_main_prntstat_list.getColumn(iRow,"eocryn");
  1101. if( statcd == "P" && eocryn == "Y" ) {
  1102. sysf_messageBox("전자동의서 임시저장상태는 재출력할 수 없습니다. 전자동의서로 작성하세요!","E");
  1103. return;
  1104. }
  1105. // 변경 요청번호 1851에 따른 수정
  1106. // 2009-07-24 nj
  1107. if(scanyn == 'Y'){
  1108. sysf_messageBox("스캔완료된 서식은 재출력 할 수", "I004");
  1109. return;
  1110. }
  1111. dsf_createDsRow("ds_send_reqdata", [{col:"ocrtag", type:"string", size:256, val:ocrtag}]);
  1112. /* var returnVal = fGetHardCDList("Y", 199, 3);dnpq
  1113. //유전자검사 동의서 재출력(2011.12.08 lyj)
  1114. if ( formcd == returnVal ) */
  1115. if( lf_ContainsHardCD("199", formcd))
  1116. {
  1117. ivw_ocrprnt.fGenePrint(ocrtag,ordtype,formcd);
  1118. return;
  1119. }
  1120. var oParam = {};
  1121. oParam.id = "TRMRF02605";
  1122. oParam.service = "formmngtapp.OcrRtnMngt";
  1123. oParam.method = "reqGetOCRFormInfo";
  1124. oParam.inds = "req=ds_send_reqdata";
  1125. oParam.outds = "ds_main_ocrforminfo=ocrforminfo";
  1126. oParam.async = false;
  1127. oParam.callback = "cf_TRMRF02605";
  1128. tranf_submit(oParam);
  1129. if(arErrorCode.pop("TRMRF02605") > -1){
  1130. formtypecls = ds_main_ocrforminfo.getColumn(0, "formtypecls");
  1131. ocrtagprntyn = ds_main_ocrforminfo.getColumn(0, "ocrtagprntyn");
  1132. ivw_ocrprnt.fGetOCRInfo(formcd, pid, orddd, cretno, ordtype, formtypecls, ocrtagprntyn, ocrtag, null, "", true);
  1133. ivw_ocrprnt.fPrint("A");
  1134. }
  1135. }
  1136. /**
  1137. * @desc : 신생아지문표 반납은 신생아 정보로 정보 수정이 되어야 함
  1138. *
  1139. * @param : ocrtag
  1140. * @return :
  1141. * @author : HIT EMR Team
  1142. * @---------------------------------------------------
  1143. */
  1144. function fGetNewBabyInfo(listPath, irow){
  1145. var targetPath="/root/maintemp/prntstat/list";
  1146. var listPath = this.objects[listPath];
  1147. var pid = listPath.getColumn(irow,"pid");
  1148. var cretno = listPath.getColumn(irow,"cretno");
  1149. var orddd = listPath.getColumn(irow,"orddd");
  1150. dsf_createDsRow("ds_send_reqdata", [{col:"pid", type:"string", size:256, val:pid},
  1151. {col:"cretno", type:"string", size:256, val:cretno},
  1152. {col:"indd", type:"string", size:256, val:orddd}]);
  1153. dsf_createDs("ds_main_newbabylist_newbabyinfo" ,[{col:"pid" , type:"string", size:256}
  1154. ,{col:"hngnm" , type:"string", size:256}
  1155. ,{col:"indd" , type:"string", size:256}
  1156. ,{col:"cretno" , type:"string", size:256}
  1157. ,{col:"instcd" , type:"string", size:256}
  1158. ,{col:"babyno" , type:"string", size:256}
  1159. ,{col:"babynm" , type:"string", size:256}
  1160. ,{col:"babyindd" , type:"string", size:256}
  1161. ,{col:"babycretno" , type:"string", size:256}
  1162. ,{col:"bthdt" , type:"string", size:256}
  1163. ,{col:"babyorddeptcd" , type:"string", size:256}
  1164. ,{col:"babyorddrid" , type:"string", size:256}
  1165. ,{col:"babyorddrnm" , type:"string", size:256}
  1166. ,{col:"babyorddeptnm" , type:"string", size:256}], "true");
  1167. var oParam = {};
  1168. oParam.id = "TRMRF02501";
  1169. oParam.service = "formmngtapp.OcrRtnMngt";
  1170. oParam.method = "reqGetNewBabyList";
  1171. oParam.inds = "req=ds_send_reqdata";
  1172. oParam.outds = "ds_main_newbabylist_newbabyinfo=newbabylist";
  1173. oParam.async = false;
  1174. oParam.callback = "cf_TRMRF02501";
  1175. tranf_submit(oParam);
  1176. dsf_setTypeFormat(ds_main_newbabylist_newbabyinfo, "cretno:INT^babycretno:INT");
  1177. if(arErrorCode.pop("TRMRF02501") > -1){
  1178. var nodeCnt = ds_main_newbabylist_newbabyinfo.rowcount;
  1179. if(nodeCnt == 0){
  1180. sysf_messageBox("등록된 신생아가 존재하지 않습니다", "");
  1181. return;
  1182. } else if(nodeCnt > 1){
  1183. frmf_setParameter("SPMRF02500_pid", pid);
  1184. frmf_setParameter("SPMRF02500_indd", orddd);
  1185. frmf_setParameter("SPMRF02500_cretno", cretno);
  1186. frmf_setParameter("SPMRF02500_rtnPath", "ds_hidden_param_newbabyinfo");
  1187. //modal("SPMRF02500");
  1188. frmf_modal("SPMRF02500", "SPMRF02500", null, null, null, null, null, null, null, null, null, null, "M");
  1189. ds_maintemp_prntstat_list.setColumn(0, "pid", ds_param_newbabyinfo.getColumn(0,"babyno"));
  1190. ds_maintemp_prntstat_list.setColumn(0, "patnm", ds_param_newbabyinfo.getColumn(0,"babynm"));
  1191. ds_maintemp_prntstat_list.setColumn(0, "orddd", ds_param_newbabyinfo.getColumn(0,"babyindd"));
  1192. ds_maintemp_prntstat_list.setColumn(0, "cretno", ds_param_newbabyinfo.getColumn(0,"babycretno"));
  1193. ds_maintemp_prntstat_list.setColumn(0, "orddeptcd", ds_param_newbabyinfo.getColumn(0,"babyorddeptcd"));
  1194. ds_maintemp_prntstat_list.setColumn(0, "orddrid", ds_param_newbabyinfo.getColumn(0,"babyorddrid"));
  1195. ds_maintemp_prntstat_list.setColumn(0, "orddeptnm", ds_param_newbabyinfo.getColumn(0,"babyorddeptnm"));
  1196. ds_maintemp_prntstat_list.setColumn(0, "orddrnm", ds_param_newbabyinfo.getColumn(0,"babyorddrnm"));
  1197. ds_param_newbabyinfo.clearData();
  1198. } else {
  1199. ds_maintemp_prntstat_list.setColumn(0, "pid", ds_main_newbabylist.getColumn(0,"babyno"));
  1200. ds_maintemp_prntstat_list.setColumn(0, "patnm", ds_main_newbabylist.getColumn(0,"babynm"));
  1201. ds_maintemp_prntstat_list.setColumn(0, "orddd", ds_main_newbabylist.getColumn(0,"babyindd"));
  1202. ds_maintemp_prntstat_list.setColumn(0, "cretno", ds_main_newbabylist.getColumn(0,"babycretno"));
  1203. ds_maintemp_prntstat_list.setColumn(0, "orddeptcd", ds_main_newbabylist.getColumn(0,"babyorddeptcd"));
  1204. ds_maintemp_prntstat_list.setColumn(0, "orddrid", ds_main_newbabylist.getColumn(0,"babyorddrid"));
  1205. ds_maintemp_prntstat_list.setColumn(0, "orddeptnm", ds_main_newbabylist.getColumn(0,"babyorddeptnm"));
  1206. ds_maintemp_prntstat_list.setColumn(0, "orddrnm", ds_main_newbabylist.getColumn(0,"babyorddrnm"));
  1207. ds_main_newbabylist.clearData();
  1208. }
  1209. }
  1210. }
  1211. /**
  1212. * @desc : 퇴원환자에 대한 OCR서식을 조회하기 위한 값 설정
  1213. *
  1214. * @param :
  1215. * @return :
  1216. * @author : 나종천
  1217. * @---------------------------------------------------
  1218. */
  1219. function fDschSrchSetting(){
  1220. group1.cp_checkboxList.chk_4.enable = true;
  1221. group1.cp_checkboxList.chk_3.enable = true;
  1222. group1.cp_checkboxList.chk_2.enable = true;
  1223. group1.cp_checkboxList.chk_1.enable = true;
  1224. ds_main.setColumn(0, "flag", "DSCH");
  1225. ds_main.setColumn(0, "ioflag", "I");
  1226. ds_main_term.setColumn(0, "termfromdd", utlf_getCurrentDate());
  1227. ds_main_term.setColumn(0, "termtodd", utlf_getCurrentDate());
  1228. //ds_main.setColumn(0, "rtncnfm", "P|CD|CR");
  1229. var sProp="col=6,row=1,cellspacing=0,vcellspacing=2,itemWidth=-1,itemHeight=20,overflow='visible'";
  1230. group1.cp_checkboxList.setInitComp(sProp, ds_cp_checkboxList,"val","lab","fn_cmpEvent");
  1231. var aData = new Array();
  1232. aData[1] = "P|CD|CR";
  1233. group1.cp_checkboxList.setData(aData, null, false);
  1234. rtn = group1.cp_checkboxList.getData();
  1235. ds_main.setColumn(0, "rtncnfm", rtn );
  1236. }
  1237. /**
  1238. * @desc : 출남부서 조회
  1239. *
  1240. * @param :
  1241. * @return :
  1242. * @author : 주희경
  1243. * @---------------------------------------------------
  1244. */
  1245. function fGetDeptSearch( targetDept ){
  1246. var supdeptcolumn = ""; // "homecaresupdeptcd";
  1247. var searchcondition = "deptnm";
  1248. var grid = "ds_temp_dept_" + targetDept;
  1249. var gridObj = eval(grid);
  1250. var searchterm = gridObj.getColumn(0, "depthngnm");
  1251. var receivedeptnmpath = "ds_temp_dept_" + targetDept;
  1252. var receivedeptnmpath = gridObj.getColumn(0, "depthngnm");
  1253. var instcd = sysf_getUserInfo("dutplceinstcd");
  1254. var sReturn = appf_openDeptListFromTree(searchcondition,searchterm, instcd , "");
  1255. if(targetDept == "prntdept"){
  1256. ds_temp_dept_prntdept.setColumn(0, "depthngnm",sReturn.depthngnm);
  1257. ds_main_dept.setColumn(0, "prntdept",sReturn.deptcd);
  1258. }
  1259. if(targetDept == "rtndept"){
  1260. ds_temp_dept_rtndept.setColumn(0, "depthngnm",sReturn.depthngnm);
  1261. ds_main_dept.setColumn(0, "rtndept",sReturn.deptcd);
  1262. }
  1263. }
  1264. /**
  1265. * @desc : 조회 텍스트가 없을 때 출남부서 value 초기화
  1266. *
  1267. * @param :
  1268. * @return :
  1269. * @author : 주희경
  1270. * @---------------------------------------------------
  1271. */
  1272. function fSetDeptValue()
  1273. {
  1274. var prntdept = ds_temp_dept_prntdept.getColumn(0, "depthngnm");
  1275. var rtndept = ds_temp_dept_rtndept.getColumn(0, "depthngnm");
  1276. if (utlf_isNull(prntdept))
  1277. {
  1278. if(ds_main_dept.rowcount==0) ds_main_dept.addRow();
  1279. //if(ds_temp_dept_prntdept.rowcount==0) ds_temp_dept_prntdept.addRow();
  1280. ds_main_dept.setColumn(0, "prntdept" , "");
  1281. // ds_temp_dept_prntdept.setColumn(0, "depthngnm" , "");
  1282. }
  1283. if (utlf_isNull(rtndept))
  1284. {
  1285. if(ds_main_dept.rowcount==0) ds_main_dept.addRow();
  1286. //if(ds_temp_dept_rtndept.rowcount==0) ds_temp_dept_rtndept.addRow();
  1287. ds_main_dept.setColumn(0, "rtndept", "");
  1288. // ds_temp_dept_rtndept.setColumn(0, "depthngnm" , "");
  1289. }
  1290. }
  1291. /* 테스트 OCR 출력용 인터페이스-이윤주 */
  1292. function fPerPrntOCR()
  1293. {
  1294. var formcd = "1100011224";
  1295. var pid = "93888";
  1296. var orddd = "20120227";
  1297. var cretno = "1";
  1298. var ordtype = "O";
  1299. frmf_setParameter("formcd", formcd );
  1300. frmf_setParameter("pid", pid);
  1301. frmf_setParameter("orddd", orddd );
  1302. frmf_setParameter("cretno", cretno);
  1303. frmf_setParameter("ordtype", ordtype );
  1304. frmf_modal("SSMRF03700","SSMRF03700","","","","","","","","","","","M");
  1305. }
  1306. function grd_ocrprntlist_onheadclick(obj:Grid, e:GridClickEventInfo)
  1307. {
  1308. fChoiceData_head(e.col);
  1309. }
  1310. function ds_main_prntstat_list_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo) //choice 값 변경
  1311. {
  1312. if(e.columnid == "check"){
  1313. obj.setColumn(e.row, e.columnid, (e.newvalue == "true" || e.newvalue == 1) ? "true" : "false");
  1314. }
  1315. }
  1316. // 검색 박스 위치 초기화 함수
  1317. function ufn_doResizeGrid(gridId, inputId, idx) {
  1318. var inputIdgd = eval(inputId);
  1319. var gridIdgd = eval(gridId);
  1320. if(utlf_isNull(idx)) {
  1321. idx = 0;
  1322. }
  1323. if(gStartIdx <= 0) {
  1324. // datagrid 위치, 크기 설정
  1325. gridIdgd.setFormatRowProperty(0,"size",19);
  1326. gridIdgd.position.left = parseInt(inputIdgd.position.left);
  1327. gridIdgd.position.top = parseInt(inputIdgd.position.top);
  1328. gridIdgd.position.width = parseInt(inputIdgd.position.width);
  1329. gStartIdx++;
  1330. }
  1331. }
  1332. function popupmenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1333. {
  1334. eval(e.id + "()");
  1335. }
  1336. function ds_main_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1337. {
  1338. if(e.columnid=="ioflag"){
  1339. if((ds_main.getColumn(0, "ioflag") =="A") || (ds_main.getColumn(0, "ioflag") =="O") || (ds_main.getColumn(0, "ioflag") =="I")
  1340. || (ds_main.getColumn(0, "ioflag") =="E") || (ds_main.getColumn(0, "ioflag") =="S") || (ds_main.getColumn(0, "ioflag") =="D")){
  1341. fSetIOFlag();
  1342. }
  1343. }
  1344. }
  1345. function fn_cmpEvent(aa)
  1346. {
  1347. if(eval(aa).value == "-"){ //전체컬럼의 codecolumn값
  1348. var aData = new Array();
  1349. aData[0] = "-";
  1350. var aFalseData = new Array();
  1351. aFalseData[0] = "P|CD|CR";
  1352. aFalseData[1] = "R|CC";
  1353. aFalseData[2] = "C";
  1354. aFalseData[3] = "D|CP";
  1355. group1.cp_checkboxList.setData(aData, aFalseData, false);
  1356. group1.cp_checkboxList.chk_4.enable = false;
  1357. group1.cp_checkboxList.chk_3.enable = false;
  1358. group1.cp_checkboxList.chk_2.enable = false;
  1359. group1.cp_checkboxList.chk_1.enable = false;
  1360. }else{
  1361. group1.cp_checkboxList.chk_1.enable = true;
  1362. group1.cp_checkboxList.chk_2.enable = true;
  1363. group1.cp_checkboxList.chk_3.enable = true;
  1364. group1.cp_checkboxList.chk_4.enable = true;
  1365. }
  1366. var rtn = "";
  1367. rtn = group1.cp_checkboxList.getData();
  1368. var tmp = "";
  1369. for(var i=0; i<rtn.length; i++){
  1370. if( i == 0 ) tmp = rtn[i];
  1371. else tmp = tmp + "|" +rtn[i];
  1372. }
  1373. ds_main.setColumn(0, "rtncnfm", tmp);
  1374. }
  1375. function grd_ocrprntlist_onrbuttondown(obj:Grid, e:GridMouseEventInfo) //ocr 프린트
  1376. {
  1377. if(e.row < 0 || e.col < 0) return;
  1378. var state = ds_main_prntstat_list.getColumn(e.row, "statcd");
  1379. //상태가 삭제인 경우만 제외하고 재출력이 가능하도록 수정
  1380. if ( state != "CP" && state != "D" ){
  1381. grdf_setSelectedCell(obj, e);
  1382. popupmenu.trackPopup(e.screenX,e.screenY);
  1383. }else {
  1384. //initPopupMenu();
  1385. }
  1386. }
  1387. function group1_cmb_wardlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1388. {
  1389. dsf_createDs("ds_hidden_seldept");
  1390. var filterStr = "deptcd=='"+ds_main_dept.getColumn(0, "ward")+"'";
  1391. var nFindRow = ds_hidden_dept_ward.findRowExpr(filterStr);
  1392. dsf_makeValue(ds_hidden_seldept, "prntdeptnm", "string", ds_hidden_dept_ward.getColumn(nFindRow, "depthngnm"));
  1393. }
  1394. //전자동의서 삭제
  1395. function fCnclEOCR() {
  1396. var rowcount = grd_ocrprntlist.rowcount;
  1397. var listPath = "/root/main/prntstat/list";
  1398. var targetPath="/root/maintemp/prntstat/list";
  1399. var currDT = utlf_getCurrentDate()+utlf_getCurrentTime();
  1400. //var nRow = ds_tmp.rowposition;
  1401. var updtresncnts = ds_tmp.getColumn(0, "resn");
  1402. for(var irow = 0; irow < rowcount; irow++){
  1403. if(ds_main_prntstat_list.getColumn(irow,"check") == "true"){
  1404. var statcd = ds_main_prntstat_list.getColumn(irow, "statcd");
  1405. var eocryn = ds_main_prntstat_list.getColumn(irow, "eocryn");
  1406. var formcd = ds_main_prntstat_list.getColumn(irow, "formcd");
  1407. if (!(statcd == "C" || statcd == "P")) {
  1408. sysf_messageBox("삭제할 수 있는 상태가 아닙니다","I");
  1409. return;
  1410. }
  1411. if(eocryn != "Y"){
  1412. sysf_messageBox("전자동의서만 진행가능합니다", "I");
  1413. return;
  1414. }
  1415. // if( lf_ContainsHardCD("5560", formcd) ) {
  1416. // if ("6" != sysf_messageBox("해당 동의서에 연관된 원무정보도 정리되어야 합니다! 계속 진행하시겠습니까?","Q")) {
  1417. // return;
  1418. // }
  1419. // }
  1420. var cnt = ds_maintemp_prntstat_list.rowcount;
  1421. if(cnt==0){
  1422. dsf_copyColInfo(ds_maintemp_prntstat_list, ds_main_prntstat_list);
  1423. }
  1424. ds_maintemp_prntstat_list.addRow();
  1425. ds_maintemp_prntstat_list.copyRow(cnt,ds_main_prntstat_list,irow);
  1426. ds_maintemp_prntstat_list.setColumn(cnt, "prntdt", "");
  1427. ds_maintemp_prntstat_list.setColumn(cnt, "prntdeptcd", "");
  1428. ds_maintemp_prntstat_list.setColumn(cnt, "prntuserid", "");
  1429. ds_maintemp_prntstat_list.setColumn(cnt, "prntdeptnm", "");
  1430. ds_maintemp_prntstat_list.setColumn(cnt, "prntusernm", "");
  1431. ds_maintemp_prntstat_list.setColumn(cnt, "statcd", "D");
  1432. ds_maintemp_prntstat_list.setColumn(cnt, "rtncnfm", "N");
  1433. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdt", currDT);
  1434. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptcd", sysf_getUserInfo("dutplcecd"));
  1435. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtuserid", sysf_getUserInfo("userid"));
  1436. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtdeptnm", sysf_getUserInfo("dutplcenm"));
  1437. ds_maintemp_prntstat_list.setColumn(cnt, "lstupdtusernm", sysf_getUserInfo("usernm"));
  1438. ds_maintemp_prntstat_list.setColumn(cnt, "updtresncnts", updtresncnts);
  1439. if(eocryn == "Y"){
  1440. dsf_makeValue(ds_maintemp_prntstat_list,"eocryn","string","Y",cnt);
  1441. }
  1442. }
  1443. }
  1444. fSetData();
  1445. }]]></Script>