SPMMR01000.xjs 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  3. * System Name : DBS
  4. * Job Name :
  5. * File Name : SPMMR01000.xjs
  6. * Creator :
  7. * Make Date : 2015-01-13
  8. *
  9. * Description :
  10. *---------------------------------------------------------------------------------------
  11. * Modify Date Modifier Modify Description
  12. *---------------------------------------------------------------------------------------
  13. * 2015-01-13 DBS Converting Program(TF->XP)
  14. *
  15. *---------------------------------------------------------------------------------------
  16. ****************************************************************************************/
  17. //=======================================================================================
  18. // Global Form Variable
  19. //---------------------------------------------------------------------------------------
  20. var arErrorCode = new HashArray();
  21. /****************************************************************************************
  22. * Argument : 01.sSvcId : 서비스 ID
  23. * : 02.nErrorCode : 에러코드
  24. * : 03.sErrorMsg : 에러메시지
  25. * Description : cf_TXMMR03602의 콜백함수
  26. ****************************************************************************************/
  27. function cf_TXMMR03602(sSvcId, nErrorCode, sErrorMsg){
  28. if( nErrorCode < 0 ) return;
  29. if( ds_tmp_indxlist_pflist.getColumnInfo("formprogflag") == null )
  30. ds_tmp_indxlist_pflist.addColumn("formprogflag", "string");
  31. if( ds_tmp_indxlist_pflist.getColumnInfo("formprognm") == null )
  32. ds_tmp_indxlist_pflist.addColumn("formprognm", "string");
  33. if( ds_tmp_indxlist_pflist.getColumnInfo("formchosflag") == null )
  34. ds_tmp_indxlist_pflist.addColumn("formchosflag", "string");
  35. }
  36. //=======================================================================================
  37. // Function
  38. //---------------------------------------------------------------------------------------
  39. /****************************************************************************************
  40. * Argument : 01.sKey : 코드아이디
  41. * : 02.sValue : 코드명
  42. * Description : 공통코드를 가져온다.
  43. ****************************************************************************************/
  44. function lf_btn_tabChanged(objNm){
  45. var arrObjId = ["btn_user","btn_dept","btn_all","btn_imgsrch","btn_master","btn_prof","btn_ocr"];
  46. for(var i in arrObjId){
  47. if( arrObjId[i] == objNm ){
  48. eval(arrObjId[i]).setSelectStatus(true);
  49. eval(arrObjId[i]).class = "btn_tab_S";
  50. }else{
  51. eval(arrObjId[i]).setSelectStatus(false);
  52. eval(arrObjId[i]).class = "btn_tab";
  53. }
  54. }
  55. if( objNm == "btn_user" ){ // 개인
  56. switch1.tabindex = 0;
  57. ds_init.setColumn(0, "tabflag", "I");
  58. fSelectIndxList();
  59. }else if( objNm == "btn_dept" ){ //과
  60. switch1.tabindex = 1;
  61. ds_init.setColumn(0, "tabflag", "D");
  62. fSelectIndxList();
  63. }else if( objNm == "btn_all" ){ // 전체과
  64. switch1.tabindex = 2;
  65. ds_init.setColumn(0, "tabflag", "A");
  66. fSelectIndxList();
  67. }else if( objNm == "btn_imgsrch" ){ // 검색
  68. switch1.tabindex = 3;
  69. ds_init.setColumn(0, "tabflag", "S");
  70. }else if( objNm == "btn_master" ){ // 마스터 hidden
  71. switch1.tabindex = 4;
  72. ds_init.setColumn(0, "tabflag", "M");
  73. fSelectIndxList();
  74. }else if( objNm == "btn_prof" ){ // 제증명 hidden
  75. switch1.tabindex = 5;
  76. fGetProfForm();
  77. }else if( objNm == "btn_ocr" ){ // OCR hidden
  78. switch1.tabindex = 6;
  79. fOcrTreeSrch();
  80. }
  81. }
  82. /*
  83. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  84. 서식리스트 ( SPMMR01000_서식리스트.xrw - JScript )
  85. - Version :
  86. 1) : Ver.1.00.01
  87. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  88. */
  89. var gUpath = ds_main_userlist_pflist;
  90. var gDpath = ds_main_deptlist_pflist;
  91. var gApath = ds_main_alllist_pflist;
  92. var gMpath = ds_main_mastlist_pflist;
  93. var gTpath = ds_tmp_pflist;
  94. var gIpath = ds_main_imglistinfo_imglist;
  95. var chosflag = "-";
  96. var indxflag = "";
  97. var uid = sysf_getUserId();
  98. var dcd = sysf_getUserInfo("dutplcecd");
  99. var parentID = "";
  100. var sSETLIST_HIDDEN = ds_hidden_indxlist_item;
  101. /**
  102. * @desc : 사이즈조절
  103. * @id : trv_formlist
  104. * @event : DOMActivate
  105. * @return : void
  106. * @authur : 박종훈
  107. */
  108. function fInitPage(heig, wid)
  109. {
  110. body.position.width = wid;
  111. body.position.height = heig;
  112. var grupw = wid - 16;
  113. var gruph = heig - 10;
  114. switch1.position.x = 0;
  115. switch1.position.width = grupw;
  116. switch1.position.height = gruph - 24;
  117. trv_userlist.position.width = grupw - 2;
  118. trv_userlist.position.height = gruph - 26;
  119. trv_deptlist.position.width = grupw - 2;
  120. trv_deptlist.position.height = gruph - 26;
  121. trv_alllist.position.width = grupw - 2;
  122. trv_alllist.position.height = gruph - 26;
  123. trv_master.position.width = grupw - 2;
  124. trv_master.position.height = gruph - 26;
  125. trv_proflist.position.width = grupw - 2;
  126. trv_proflist.position.height = gruph - 26;
  127. trv_ocrlist.position.width = grupw - 2;
  128. trv_ocrlist.position.height = gruph - 26;
  129. }
  130. /**
  131. * @desc : 화면초기화
  132. * @id : trv_formlist
  133. * @event : DOMActivate
  134. * @return : void
  135. * @authur : 박종훈
  136. */
  137. function fReadyForm()
  138. {
  139. //서식분류 조회
  140. fReqMastIndx();
  141. if (fLocalYn())
  142. {
  143. uid = ds_etc.getColumn(0, "userid");
  144. dcd = ds_etc.getColumn(0, "deptcd");
  145. indxflag = ds_etc.getColumn(0, "rdo");
  146. chosflag = ds_etc.getColumn(0, "iordo");
  147. button1.visible = true;
  148. }
  149. else
  150. {
  151. uid = sysf_getUserId();
  152. dcd = sysf_getUserInfo("dutplcecd");
  153. button1.visible = false;
  154. indxflag = oOpener.frmf_getParameter("SPMMR01000_param_flag");
  155. if(utlf_isNull(indxflag))
  156. indxflag = "P";
  157. var pamInfoCvs = sysf_getGlobalVariable("paminfo"); //상단정보가 있을 경우는 검색
  158. if(!utlf_isNull(pamInfoCvs))
  159. { //cvs가 null이 아닌 경우에만 처리함.
  160. ds_main_paminfo.clearData();
  161. dsf_setCSVToDs("ds_main_paminfo", pamInfoCvs);
  162. if (!utlf_isNull(ds_main_paminfo.getColumn(0, "ioflag")))
  163. {
  164. chosflag = ds_main_paminfo.getColumn(0, "ioflag");
  165. }
  166. }
  167. }
  168. ds_init.setColumn(0, "indxflag", indxflag);
  169. if (indxflag == "F")
  170. {
  171. btn_imgsrch.visible = false;
  172. btn_master.visible = true;
  173. var openerid = oOpener.frmf_getParameter("SPMMR01000_openerid"); //부모의 화면번호
  174. if (openerid != "SMMMR00100")
  175. {
  176. btn_ocr.visible = true; //기록메인일경우 서식 오픈
  177. }
  178. lf_btn_tabChanged("btn_dept");
  179. }
  180. else if (indxflag == "P")
  181. {
  182. btn_imgsrch.visible = true;
  183. btn_master.visible = false;
  184. lf_btn_tabChanged("btn_dept");
  185. }
  186. }
  187. /**
  188. * @desc : 트리 인덱스 선택시
  189. * @id : trv_formlist
  190. * @event : DOMActivate
  191. * @return : void
  192. * @authur : 박종훈
  193. */
  194. function fSelectIndxList()
  195. {
  196. ds_send.clearData();
  197. ds_send.addRow();
  198. var valu = "";
  199. var flag = "";
  200. var tabflag = ds_init.getColumn(0, "tabflag");
  201. var refyn = ds_init.getColumn(0, tabflag + "ref");
  202. var formbizcls = ds_main_newform.getColumn(0, "formbizcls");
  203. if (refyn == "Y" && tabflag != "I")
  204. return;
  205. ds_send.setColumn(0, "levl", "0");
  206. ds_send.setColumn(0, "imge", "");
  207. ds_send.setColumn(0, "labl", "");
  208. if (tabflag == "I")
  209. {
  210. valu = uid;
  211. flag = "userid";
  212. }
  213. else if (tabflag == "D")
  214. {
  215. valu = dcd;
  216. flag = "deptcd";
  217. }
  218. else if (tabflag == "A")
  219. {
  220. valu = dcd;
  221. }
  222. else if (tabflag == "M" && formbizcls == "07")
  223. {
  224. flag = "indxseq"
  225. }
  226. ds_send.setColumn(0, "valu", valu);
  227. ds_send.setColumn(0, "path", "");
  228. ds_send.setColumn(0, "flag", flag);
  229. ds_send.setColumn(0, "tabflag", ds_init.getColumn(0, "tabflag"));
  230. ds_send.setColumn(0, "indxflag", ds_init.getColumn(0, "indxflag"));
  231. ds_send.setColumn(0, "chosflag", chosflag);
  232. ds_send.setColumn(0, "seqcd", "0");
  233. //최초 조회시 공통도 같이 조회
  234. if(utlf_isNull(ds_main_newform.getColumn(0, "firstform"))){
  235. ds_send.setColumn(0, "formbizcls", ds_main_newform.getColumn(0, "formbizcls"));
  236. }else{
  237. ds_send.setColumn(0, "formbizcls", ds_main_newform.getColumn(0, "firstform"));
  238. ds_main_newform.setColumn(0, "firstform", "");
  239. }
  240. SetUserTimeLog("fSelectIndxList", "pre_submit");
  241. var oParam = {};
  242. oParam.id = "TRMMR01001";
  243. oParam.service = "medirecapp.ImgEdit";
  244. oParam.method = "reqGetFormImgeList";
  245. oParam.inds = "req=ds_send";
  246. oParam.outds = "ds_tmp_pflist=pflist";
  247. oParam.async = false;
  248. oParam.callback = "cf_TRMMR01001";
  249. tranf_submit(oParam);
  250. }
  251. function cf_TRMMR01001(sSvcId, nErrorCode, sErrorMsg) {
  252. if(nErrorCode < 0) return;
  253. SetUserTimeLog("fSelectIndxList", "end_submit");
  254. if (ds_init.getColumn(0, "tabflag") == "I")
  255. {
  256. gUpath.copyData(gTpath);
  257. SetUserTimeLog("fSelectIndxList", "User_copynode_end");
  258. ds_init.setColumn(0, "Iref", "Y");
  259. }
  260. else if (ds_init.getColumn(0, "tabflag") == "D")
  261. {
  262. gDpath.copyData(gTpath);
  263. SetUserTimeLog("fSelectIndxList", "Dept_copynode_end");
  264. ds_init.getColumn(0, "Dref", "Y");
  265. }
  266. else if (ds_init.getColumn(0, "tabflag") == "A")
  267. {
  268. gApath.copyData(gTpath);
  269. SetUserTimeLog("fSelectIndxList", "AllDept_copynode_end");
  270. ds_init.setColumn(0, "Aref", "Y");
  271. }
  272. else if (ds_init.getColumn(0, "tabflag") == "M")
  273. {
  274. gMpath.copyData(gTpath);
  275. SetUserTimeLog("fSelectIndxList", "Master_copynode_end");
  276. ds_init.setColumn(0, "Mref", "Y");
  277. }
  278. gTpath.clearData();
  279. var tabflag = ds_init.getColumn(0, "tabflag");
  280. if (tabflag == "D")
  281. {
  282. grdf_expandTree(switch1.case_dept.trv_deptlist, 0, true);
  283. //trv_deptlist.expand(0, true);
  284. }
  285. }
  286. /**
  287. * @desc : 트리의 path리턴
  288. * @id :
  289. * @event :
  290. * @return : void
  291. * @authur : 박종훈
  292. */
  293. function fFindTreePath(trnm)
  294. {
  295. var trpath = "";
  296. if (trnm == "trv_userlist")
  297. {
  298. trpath = gUpath;
  299. }
  300. else if (trnm == "trv_deptlist")
  301. {
  302. trpath = gDpath;
  303. }
  304. else if (trnm == "trv_alllist")
  305. {
  306. trpath = gApath;
  307. }
  308. else if (trnm == "trv_master")
  309. {
  310. trpath = gMpath;
  311. }
  312. return trpath;
  313. }
  314. /**
  315. * @desc : 트리클릭
  316. * @id :
  317. * @event :
  318. * @return : void
  319. * @authur : 박종훈
  320. */
  321. function fSelectTree(selflag, obj:Grid)
  322. {
  323. //var treeObj = event.ptarget.parent;
  324. if( obj.getCellProperty("body", 0, "displaytype") != "tree" )
  325. return;
  326. //var selIndex = treeObj.selectedIndex;
  327. var trnm = obj.name;
  328. var trpath;
  329. if (trnm == "trv_userlist")
  330. {
  331. trpath = gUpath;
  332. // var node = root.main.userlist;
  333. }
  334. else if (trnm == "trv_deptlist")
  335. {
  336. trpath = gDpath;
  337. // var node = root.main.deptlist;
  338. }
  339. else if (trnm == "trv_alllist")
  340. {
  341. trpath = gApath;
  342. // var node = root.main.alllist;
  343. }
  344. else if (trnm == "trv_master")
  345. {
  346. trpath = gMpath;
  347. // var node = root.main.mastlist;
  348. }
  349. var selIndex = trpath.rowposition;
  350. var key = trpath.getColumn(selIndex, "seqcd");
  351. if(utlf_isNull(key))
  352. return;
  353. var treeRow = obj.getTreeRow(selIndex);
  354. if(obj.getTreeStatus(treeRow) == 0)
  355. obj.setTreeStatus(treeRow, true);
  356. else if(obj.getTreeStatus(treeRow) == 1)
  357. obj.setTreeStatus(treeRow, false);
  358. var linkflag = trpath.getColumn(selIndex, "linkflag");
  359. var refyn = trpath.getColumn(selIndex, "refyn");
  360. var valu = trpath.getColumn(selIndex, "valu");
  361. var labl = trpath.getColumn(selIndex, "labl");
  362. var levl = trpath.getColumn(selIndex, "levl");
  363. var srcformcd = trpath.getColumn(selIndex, "src");
  364. var formchosflag = trpath.getColumn(selIndex, "formchosflag");
  365. var formprogflag = trpath.getColumn(selIndex, "formprogflag");
  366. trpath.setColumn(selIndex, "refyn", "Y");
  367. if (linkflag == "N")
  368. {
  369. ds_send.clearData();
  370. ds_send.addRow();
  371. ds_send.copyRow(0, trpath, selIndex);
  372. ds_send.setColumn(0, "valu", utlf_trim(ds_send.getColumn(0, "valu")) );
  373. ds_send.setColumn(0, "indxflag", ds_init.getColumn(0, "indxflag"));
  374. ds_send.setColumn(0, "chosflag", chosflag);
  375. if (refyn == "N")
  376. {
  377. // 서식분류flag
  378. ds_send.setColumn(0, "formbizcls", ds_main_newform.getColumn(0, "formbizcls"));
  379. var oParam = {};
  380. oParam.id = "TRMMR01001";
  381. oParam.service = "medirecapp.ImgEdit";
  382. oParam.method = "reqGetFormImgeList";
  383. oParam.inds = "req=ds_send";
  384. oParam.outds = "ds_tmp_pflist=pflist";
  385. oParam.async = false;
  386. oParam.callback = "cf_TRMMR01001_1"; // Caution!!
  387. tranf_submit(oParam);
  388. if(arErrorCode.pop("TRMMR01001") > -1)
  389. {
  390. trpath.setColumn(selIndex, "refyn", "Y");
  391. fMoveInstance(obj, trpath, selIndex);
  392. }
  393. }
  394. else
  395. {
  396. return;
  397. }
  398. }
  399. else
  400. {
  401. if(!utlf_isNull(valu) && frmf_isPopup() && ds_init.getColumn(0, "indxflag") == "F")
  402. {
  403. //var openerid = opener.frmf_getParameter("SPMMR01000_openerid"); //부모의 화면번호
  404. var objParent = parent.opener;
  405. if(utlf_isNull(objParent)){
  406. objParent = opener;
  407. }
  408. // Opener 체크하여 변경되었거나 없을경우 frmf_getParameter 부분에서 오류 발생하므로 TF와 동일하게 화면 close
  409. if( utlf_isNull(objParent) ){
  410. this.close();
  411. }
  412. var openerid = objParent.frmf_getParameter("SPMMR01000_openerid");
  413. if (openerid == "SMMMR00100") //기록메인일경우 서식 오픈
  414. {
  415. //2010-02-25 오전 12:38:04 강지훈 수정 : 요청번호 10010, 입환수진 선택시 외래기록 막기, formchosflag로 외래,입원기록 여부판단.
  416. var ioflag = opener.ds_send_reqinitinfo.getColumn(0, "chosflag");
  417. if (ioflag != "O"){ //입원수진일경우.
  418. if(formchosflag == "O"){
  419. sysf_messageBox("입원환자이므로 외래서식을 작성하실 수", "I004");
  420. return;
  421. }
  422. }else if( ioflag == "O" ){ //[요청번호:20160824021] 1. 입원기록 서식 중 일부 고정값 설정
  423. if(formchosflag == "I" && ds_temp_srcformcd.findRow("hardcd", srcformcd) > -1){
  424. sysf_messageBox("외래환자이므로 입원서식을 작성하실 수", "I004");
  425. return;
  426. }
  427. }
  428. //opener.fOpenNewForm(valu);
  429. //jw.choe getParameter("loadstatus") 사용안함으로 대체로 사용
  430. objParent.frmf_setParameter("SSMMR01100_recsavechk", "Y");
  431. objParent.setFocus();
  432. // sysf_trace("valu : " + valu + " , formprogflag : " + formprogflag + " ,'' , srcformcd : " + srcformcd );
  433. // sysf_trace("objParent : " + objParent + " objParent.name : " + objParent.name);
  434. objParent.lf_openNewForm(valu, formprogflag, "", "", srcformcd);
  435. }
  436. else
  437. {
  438. objParent.frmf_setParameter("SPMMR01000_formcd_rtn", valu); //기록 메인이 아닐 경우 서식코드를 넘긴다.
  439. objParent.frmf_setParameter("SPMMR01000_formnm_rtn", labl); //서식명
  440. objParent.frmf_setParameter("SPMMR01000_srcformcd_rtn", srcformcd); //참조서식코드
  441. this.close();
  442. }
  443. }
  444. else if(!utlf_isNull(valu) && ds_init.getColumn(0, "indxflag") == "P") //이미지 편집창
  445. {
  446. // treeObj.valcd = valu;
  447. //parent.fGetImgeData(trnm);
  448. this.getOwnerFrame().form.fGetImgeData(trnm);
  449. }
  450. }
  451. return true;
  452. //event.propagate = "stop";
  453. }
  454. function cf_TRMMR01001_1(sSvcId, nErrorCode, sErrorMsg) {
  455. arErrorCode.push(sSvcId, nErrorCode);
  456. if(nErrorCode < 0) return;
  457. }
  458. /**
  459. * @desc : 3depth 아이템 이동
  460. * @id :
  461. * @event : onclick
  462. * @return : void
  463. * @authur : 박종훈
  464. */
  465. function fMoveInstance(treeObj:Grid, trpath:Dataset, selindex)
  466. {
  467. //var instance = document.models(0).instances(0);
  468. //var key = treeObj.value;
  469. //var refNode = instance.selectSingleNode(trpath + "[seqcd='" + key +"']"); //조회내용의 상위 항목
  470. var subNode = "";
  471. var nodelistTmp = gTpath;
  472. var nodelength = nodelistTmp.rowcount;
  473. if(nodelength > 0)
  474. {
  475. for(var i = nodelength-1; i >= 0; i--)
  476. {
  477. var iRow = trpath.insertRow(parseInt(selindex) + 1);
  478. trpath.copyRow(iRow, gTpath, i); //조회항목을 상위항목의 자식으로 삽입
  479. trpath.applyChange();
  480. }
  481. }
  482. //fExpandCheck(treeObj);
  483. var treeRow = treeObj.getTreeRow(selindex);
  484. if( treeObj.getTreeStatus(treeRow) == 0 ){
  485. treeObj.setTreeStatus(treeRow, true)
  486. }else if( treeObj.getTreeStatus(treeRow) == 1 ){
  487. treeObj.setTreeStatus(treeRow, false)
  488. }
  489. //treeObj.expand(selindex, true);
  490. }
  491. /**
  492. * @desc : 트리 expand 상태 얻기
  493. * @
  494. * @param :
  495. * @return :
  496. * @---------------------------------------------------
  497. */
  498. function fExpandCheck(trvObj)
  499. {
  500. var expandstr = 0; //트리 expand 값 저장
  501. for(var i = 0; i < trvObj.length ; i++){
  502. if(trvObj.item(i).expanded == 1)
  503. {
  504. expandstr += "."+i;
  505. }
  506. }
  507. //공통세션변수에 저장
  508. // setGlobalVariable("emr_gsv_"+trvObj ,expandstr);
  509. //alert("a");
  510. }
  511. /**
  512. * @desc : 이미지검색
  513. * @id :
  514. * @event :
  515. * @return : void
  516. * @authur : 박종훈
  517. */
  518. function fSearch()
  519. {
  520. ds_main_imglistinfo_imglist.clearData();
  521. ds_send_srch.clearData();
  522. var nRow = ds_send_srch.addRow();
  523. ds_send_srch.setColumn(nRow, "imgenm", switch1.case_imgsrch.ipt_imgnm.text);
  524. if(utlf_isNull(ds_send_srch.getColumn(nRow, "imgenm"))){
  525. ds_send_srch.setColumn(nRow, "imgenm", "%");
  526. }
  527. var oParam = {};
  528. oParam.id = "TRMMR03601";
  529. oParam.service = "medirecapp.ImgEdit";
  530. oParam.method = "reqGetImgList";
  531. oParam.inds = "req=ds_send_srch";
  532. oParam.outds = "ds_main_imglistinfo_imglist=imglist";
  533. oParam.async = false;
  534. oParam.callback = "cf_TRMMR03601";
  535. tranf_submit(oParam);
  536. }
  537. function cf_TRMMR03601(sSvcId, nErrorCode, sErrorMsg) {
  538. if(nErrorCode < 0) return;
  539. ds_main_imglistinfo_imglist.updateColID("deptcd", "deptlistnm");
  540. ds_main_imglistinfo_imglist.updateColID("imgecd", "imglistcode");
  541. ds_main_imglistinfo_imglist.updateColID("imgenm", "imglistnm");
  542. }
  543. /**
  544. * @desc : 이미지로드
  545. * @id :
  546. * @event :
  547. * @return : void
  548. * @authur : 이경희
  549. */
  550. function fGridImageView(SelectedRow)
  551. {
  552. //debugger;
  553. var deptnm = ds_main_imglistinfo_imglist.getColumn(SelectedRow, "deptlistnm");
  554. var imgnm = ds_main_imglistinfo_imglist.getColumn(SelectedRow, "imglistnm");
  555. var imgcd = ds_main_imglistinfo_imglist.getColumn(SelectedRow, "imglistcode");
  556. if(utlf_isNull(imgcd) && utlf_isNull(imgnm))
  557. {
  558. return ;
  559. }
  560. this.getOwnerFrame().form.fLoadImage(imgcd, imgnm);
  561. }
  562. /**
  563. * @desc : 로컬체크
  564. * @id : trv_formlist
  565. * @event : DOMActivate
  566. * @return : void
  567. * @authur : 박종훈
  568. */
  569. function fLocalYn()
  570. {
  571. return false;
  572. }
  573. /**
  574. * @desc : 서식트리 마우스 팝업 처리
  575. * @id : trv_formlist
  576. * @event : onmousedown
  577. * @return : void
  578. * @authur : 박종훈
  579. */
  580. function fFormMouseRghtBtnPopup(treeObj:Grid, e:GridMouseEventInfo)
  581. {
  582. //var treeObj = event.ptarget.parent;
  583. if( treeObj.getCellProperty("body", 0, "displaytype") != "tree" )
  584. return;
  585. if( e.row < 0 && e.col < 0 )
  586. return;
  587. var trnm = treeObj.name;
  588. var trpath = fFindTreePath(trnm);
  589. trpath.rowposition = e.row;
  590. //var selIndex = treeObj.selectedIndex;
  591. var selIndex = trpath.rowposition;
  592. var seqcd = trpath.getColumn(selIndex, "seqcd");
  593. var openerid = "";
  594. if( frmf_checkOpener() ){
  595. var oOpener = frmf_getoOpener();
  596. openerid = oOpener.frmf_getParameter("SPMMR01000_openerid"); //부모의 화면번호
  597. }
  598. var linkflag = trpath.getColumn(selIndex, "linkflag");
  599. var refyn = trpath.getColumn(selIndex, "refyn");
  600. var valu = trpath.getColumn(selIndex, "valu");
  601. var formprogflag = trpath.getColumn(selIndex, "formprogflag");
  602. var formprognm = trpath.getColumn(selIndex, "formprognm");
  603. if(!utlf_isNull(valu) && linkflag == "Y" && refyn == "Y")
  604. {
  605. if (indxflag == "F"){
  606. if (openerid == "SMMMR00100"){
  607. if (formprogflag == "MAIN" || formprognm != "-"){
  608. pmn_menu_diagmsrght.trackPopup(e.screenX,e.screenY);
  609. //setPopupMenu(trnm, false, "/root/pmenu/diagmsrght/mouserght", "label", "func"); //기본서식, 즐겨찾기
  610. }else{
  611. pmn_menu_favormsrght.trackPopup(e.screenX,e.screenY);
  612. //setPopupMenu(trnm, false, "/root/pmenu/favormsrght/mouserght", "label", "func"); //즐겨찾기
  613. }
  614. }else{
  615. pmn_menu_preview.trackPopup(e.screenX,e.screenY);
  616. //setPopupMenu(trnm, false, "/root/pmenu/preview/mouserght", "label", "func"); //미리보기
  617. }
  618. }else if( parentID == "SMMMR03600" && trnm != "trv_userlist" ){
  619. pmn_menu_imgprivateadd.trackPopup(e.screenX,e.screenY);
  620. //setPopupMenu(trnm, false, "/root/pmenu/imgprivateadd/mouserght", "label", "func"); //부서->개인 즐겨찾기 추가
  621. }else if( parentID == "SMMMR03600" && trnm == "trv_userlist"){
  622. pmn_menu_imgprivatedel.trackPopup(e.screenX,e.screenY);
  623. //setPopupMenu(trnm, false, "/root/pmenu/imgprivatedel/mouserght", "label", "func"); //개인 즐겨찾기 삭제
  624. }
  625. }else if( parentID == "SMMMR03600" && trnm != "trv_userlist"){
  626. pmn_menu_imgprivateadd.trackPopup(e.screenX,e.screenY);
  627. //setPopupMenu(trnm, false, "/root/pmenu/imgprivateadd/mouserght", "label", "func"); //부서->개인 즐겨찾기 추가
  628. }else if( parentID == "SMMMR03600" && trnm == "trv_userlist"){
  629. pmn_menu_imgprivatedel.trackPopup(e.screenX,e.screenY);
  630. //setPopupMenu(trnm, false, "/root/pmenu/imgprivatedel/mouserght", "label", "func"); //개인 즐겨찾기 삭제
  631. }
  632. }
  633. /**
  634. * @desc : 기본서식설정
  635. * @id : trv_formlist
  636. * @event : onmousedown
  637. * @return : void
  638. * @authur : 박종훈
  639. */
  640. function fSetDefForm()
  641. {
  642. var rtn = fGetFormcode();
  643. rtn = rtn.split("|");
  644. if(!utlf_isNull(rtn[0]) && rtn[1] == "Y" && rtn[2] == "Y")
  645. {
  646. var formcd = rtn[0];
  647. var formbsetflag = "D";
  648. var formbsetdeptcd = "";
  649. ds_send_temp.clearData();
  650. var nRow = ds_send_temp.addRow();
  651. ds_send_temp.setColumn(nRow, "formcd", formcd);
  652. ds_send_temp.setColumn(nRow, "formbsetflag", formbsetflag);
  653. ds_send_temp.setColumn(nRow, "formbsetdeptcd", formbsetdeptcd);
  654. var oParam = {};
  655. oParam.id = "TXMMR01001";
  656. oParam.service = "medirecapp.ComnMediRec";
  657. oParam.method = "reqExeFormSetRec";
  658. oParam.inds = "req=ds_send_temp";
  659. oParam.outds = "ds_main_savedinfo_rsltmsg=rsltmsg ds_main_savedinfo_formbaseset=formbaseset";
  660. oParam.async = false;
  661. oParam.callback = "cf_TXMMR01001";
  662. tranf_submit(oParam);
  663. //parent.fFavorRefresh("refresh"); // 즐겨찾기 refresh
  664. opener.fFavorRefresh("refresh"); // 즐겨찾기 refresh
  665. }
  666. }
  667. /**
  668. * @desc : 즐겨찾기추가
  669. * @id : trv_formlist
  670. * @event : onmousedown
  671. * @return : void
  672. * @authur : 박종훈
  673. */
  674. function fSetFavorForm()
  675. {
  676. var rtn = fGetFormcode();
  677. rtn = rtn.split("|");
  678. if(!utlf_isNull(rtn[0]) && rtn[1] == "Y" && rtn[2] == "Y")
  679. {
  680. var formcd = rtn[0];
  681. var formbsetflag = "F";
  682. var formbsetdeptcd = "";
  683. ds_send_temp.clearData();
  684. var nRow = ds_send_temp.addRow();
  685. ds_send_temp.setColumn(nRow, "formcd", formcd);
  686. ds_send_temp.setColumn(nRow, "formbsetflag", formbsetflag);
  687. ds_send_temp.setColumn(nRow, "formbsetdeptcd", formbsetdeptcd);
  688. var oParam = {};
  689. oParam.id = "TXMMR01001";
  690. oParam.service = "medirecapp.ComnMediRec";
  691. oParam.method = "reqExeFormSetRec";
  692. oParam.inds = "req=ds_send_temp";
  693. oParam.outds = "ds_main_savedinfo_rsltmsg=rsltmsg ds_main_savedinfo_formbaseset=formbaseset";
  694. oParam.async = false;
  695. oParam.callback = "cf_TXMMR01001";
  696. tranf_submit(oParam);
  697. //parent.fFavorRefresh("refresh"); // 즐겨찾기 refresh
  698. opener.fFavorRefresh("refresh"); // 즐겨찾기 refresh
  699. }
  700. }
  701. function cf_TXMMR01001(sSvcId, nErrorCode, sErrorMsg) {
  702. if(nErrorCode < 0) return;
  703. }
  704. /**
  705. * @desc : 서식 트리별 인스턴스에서 formcode구해오기
  706. * @
  707. * @param :
  708. * @return :
  709. * @---------------------------------------------------
  710. */
  711. function fGetFormcode()
  712. {
  713. var rtn = fSetTreeView();
  714. var treeObj = eval(rtn);
  715. if( treeObj.getCellProperty("body", 0, "displaytype") != "tree" )
  716. return;
  717. var trnm = treeObj.name;
  718. var trpath = fFindTreePath(trnm);
  719. var selindex = trpath.rowposition;
  720. var seqcd = trpath.getColumn(selindex, "seqcd");
  721. var linkflag = trpath.getColumn(selindex, "linkflag");
  722. var refyn = trpath.getColumn(selindex, "refyn");
  723. var valu = trpath.getColumn(selindex, "valu");
  724. rtn = valu + "|" + refyn + "|" + linkflag;
  725. return rtn;
  726. }
  727. /**
  728. * @desc : 트리뷰 셋 (어느 트리가 열려있는지)
  729. * @
  730. * @param :
  731. * @return :
  732. * @---------------------------------------------------
  733. */
  734. function fSetTreeView(){
  735. var setflag = ds_init.getColumn(0, "tabflag");
  736. var rtn = "";
  737. if (setflag == "I") {
  738. rtn = "switch1.case_user.trv_userlist";
  739. }else if (setflag == "D") {
  740. rtn = "switch1.case_dept.trv_deptlist";
  741. }else if (setflag == "A") {
  742. rtn = "switch1.case_all.trv_alllist";
  743. }else if (setflag == "M") {
  744. rtn = "switch1.case_master.trv_master";
  745. }else if (setflag == "S") {
  746. rtn = "switch1.case_imgsrch.grd_imgnmlist";
  747. }
  748. return rtn;
  749. }
  750. /**
  751. * @desc : 제증명 서식 트리 작성
  752. * @
  753. * @param :
  754. * @return :
  755. * @---------------------------------------------------
  756. */
  757. function fGetProfForm(){
  758. ds_send_reqdata.clearData();
  759. ds_send_reqdata.addRow();
  760. ds_send_reqdata.setColumn(0, "formprogflag", "PROF");
  761. var oParam = {};
  762. oParam.id = "TRMMR02903";
  763. oParam.service = "medirecapp.ExtnMediRec";
  764. oParam.method = "reqGetProfForm";
  765. oParam.inds = "req=ds_send_reqdata";
  766. oParam.outds = "ds_main_profform=profformlist";
  767. oParam.async = false;
  768. oParam.callback = "cf_TRMMR02903";
  769. tranf_submit(oParam);
  770. }
  771. function cf_TRMMR02903(sSvcId, nErrorCode, sErrorMsg) {
  772. if(nErrorCode < 0) return;
  773. }
  774. /**
  775. * @desc : ocr트리 작성
  776. * @
  777. * @param :
  778. * @return :
  779. * @---------------------------------------------------
  780. */
  781. function fOcrTreeSrch(){
  782. appf_getDeptCodeList(sysf_getUserInfo("dutplceinstcd"), "orduseyn", "D", "depthngnm", "asc", "", "", "after", "ds_main_common_dept", true, "");
  783. //zbcfGetDeptCodeList(getUserInfo("dutplceinstcd"), "orduseyn", "D", "/root/main/common", "depthngnm", "asc");
  784. /*
  785. copyNodeset("/root/main/trgtmanlist/out/dept", "/root/main/common/dept");
  786. copyNodeset("/root/main/trgtmanlist/in/dept", "/root/main/common/dept");
  787. copyNodeset("/root/main/trgtmanlist/er/dept", "/root/main/common/dept");
  788. copyNodeset("/root/main/trgtmanlist/schpat/dept", "/root/main/common/dept");
  789. */
  790. ds_main_ocrsch_dept.copyData(ds_main_common_dept);
  791. appf_getDeptCodeList(sysf_getUserInfo("dutplceinstcd"), "orduseyn", "W", "depthngnm", "asc", "", "", "", "ds_main_ward_dept", true, "");
  792. //zbcfGetDeptCodeList(getUserInfo("dutplceinstcd"), "orduseyn", "W", "/root/main/ward", "depthngnm", "asc");
  793. /*
  794. copyNodeset("/root/main/trgtmanlist/in/wardlist", "/root/main/ward/dept");
  795. */
  796. reqGetDrList(ds_send_reqdata, ds_main_common_drlist, sysf_getUserInfo("dutplcecd"), "total"); //의사리스트 combo조회
  797. var arrParam = new Array();
  798. arrParam.push({dsNm: "ds_main_common_M0062", cdGrpId: "M0062", sortField: "cdid", sortMehotd: "desc", showValue:false});
  799. arrParam.push({dsNm: "ds_main_common_M0259", cdGrpId: "M0259", sortField: "cdid", sortMehotd: "desc", showValue:false});
  800. appf_getCodeList(arrParam);
  801. //zbcfGetCodeList(new Array("M0062"), new Array("/root/main/common"));
  802. /*
  803. copyNodeset("/root/main/trgtmanlist/out/ordflag", "/root/main/common/M0062");
  804. */
  805. var oParam = {};
  806. oParam.id = "TRMRF02307";
  807. oParam.service = "formmngtapp.OcrPrntMngt";
  808. oParam.method = "reqGetFormLevlList";
  809. oParam.inds = "req=ds_send_reqdata";
  810. oParam.outds = "ds_main_ocrsch_ocrflag=formlevl";
  811. oParam.async = false;
  812. oParam.callback = "cf_TRMRF02307";
  813. tranf_submit(oParam);
  814. frmf_addComboItem("switch1.case_ocr.cmb_formcl", "전체", "-", "above");
  815. //zbcfGetCodeList(new Array("M0259"), new Array("/root/main/common"));
  816. ds_main_ocrsch_formbizcls.copyData(ds_main_common_M0259);
  817. //copyNodeset("/root/main/ocrsch/formbizcls", "/root/main/common/M0259");
  818. if((sysf_getUserInfo("jobkindcd") == "0330") || (sysf_getUserInfo("jobkindcd") == "0332")){
  819. ds_main_ocrsch.setColumn(0, "ocrflag", "468");
  820. ds_main_ocrsch.setColumn(0, "formbizcls", "02");
  821. ds_main_ocrsch.setColumn(0, "dept", ""); // model.getValue("/root/main/ordinfo/orddeptcd") 노드 미존재
  822. } else if(sysf_getUserInfo("jobkindcd") == "1110"){
  823. ds_main_ocrsch.setColumn(0, "ocrflag", "468");
  824. ds_main_ocrsch.setColumn(0, "formbizcls", "03");
  825. ds_main_ocrsch.setColumn(0, "dept", ""); // model.getValue("/root/main/ordinfo/orddeptcd") 노드 미존재
  826. } else {
  827. ds_main_ocrsch.setColumn(0, "ocrflag", "468");
  828. switch1.case_ocr.cmb_formbizcls.setSelect(0);
  829. ds_main_ocrsch.setColumn(0, "dept", "-");
  830. }
  831. ds_send_reqdata.clearData();
  832. ds_send_reqdata.addRow();
  833. ds_send_reqdata.addColumn("formlrgcd", "string"); // ocrflag -> formlrgcd
  834. ds_send_reqdata.addColumn("formbizclscd", "string"); // formbizcls -> formbizclscd
  835. ds_send_reqdata.addColumn("orddeptcd", "string");
  836. ds_send_reqdata.addColumn("formchosflag", "string");
  837. ds_send_reqdata.setColumn(0, "formlrgcd", ds_main_ocrsch.getColumn(0, "ocrflag"));
  838. ds_send_reqdata.setColumn(0, "formbizclscd", ds_main_ocrsch.getColumn(0, "formbizcls"));
  839. ds_send_reqdata.setColumn(0, "orddeptcd", ds_main_ocrsch.getColumn(0, "dept"));
  840. ds_send_reqdata.setColumn(0, "formchosflag", ds_main_ocrsch.getColumn(0, "formchosflag"));
  841. var oParam = {};
  842. oParam.id = "TRMRF02309";
  843. oParam.service = "formmngtapp.OcrPrntMngt";
  844. oParam.method = "reqGetFormList";
  845. oParam.inds = "req=ds_send_reqdata";
  846. oParam.outds = "ds_main_ocrinfo_ocrlist=formlist";
  847. oParam.async = false;
  848. oParam.callback = "cf_TRMRF02309";
  849. tranf_submit(oParam);
  850. //trv_ocrlist.rebuild();
  851. }
  852. function cf_TRMRF02307(sSvcId, nErrorCode, sErrorMsg) {
  853. if(nErrorCode < 0) return;
  854. if( !utlf_isNull(ds_main_ocrsch_ocrflag.getColumnInfo("formlevlcd")))
  855. ds_main_ocrsch_ocrflag.updateColID("formlevlcd", "ocrlrgclscd");
  856. if( !utlf_isNull(ds_main_ocrsch_ocrflag.getColumnInfo("formlevlnm")))
  857. ds_main_ocrsch_ocrflag.updateColID("formlevlnm", "ocrlrgclsnm");
  858. }
  859. function cf_TRMRF02309(sSvcId, nErrorCode, sErrorMsg) {
  860. if(nErrorCode < 0) return;
  861. }
  862. /**
  863. * @desc : 의사리스트 조회
  864. * @
  865. * @param :
  866. * @return :
  867. * @---------------------------------------------------
  868. */
  869. function reqGetDrList(refDs:Dataset, rsltRefDs:Dataset, orddeptcd, queryflag){
  870. refDs.addColumn("orddeptcd", "string");
  871. refDs.addColumn("queryflag", "string");
  872. refDs.addColumn("stflag", "string");
  873. refDs.setColumn(0, "orddeptcd" , orddeptcd);
  874. refDs.setColumn(0, "queryflag" , queryflag);
  875. var oParam = {};
  876. oParam.id = "TRMRF02303";
  877. oParam.service = "formmngtapp.OcrPrntMngt";
  878. oParam.method = "reqGetOrdDrID";
  879. oParam.inds = "req="+refDs.name;
  880. oParam.outds = rsltRefDs.name + "=drlist";
  881. oParam.async = false;
  882. oParam.callback = "cf_TRMRF02303";
  883. tranf_submit(oParam);
  884. }
  885. function cf_TRMRF02303(sSvcId, nErrorCode, sErrorMsg) {
  886. if(nErrorCode < 0) return;
  887. }
  888. /**
  889. * @desc : 마스터 인덱스 조회
  890. * @
  891. * @param :
  892. * @return :
  893. * @---------------------------------------------------
  894. */
  895. function fReqMastIndx(){
  896. var objColInfo = new Array();
  897. objColInfo.push({col: "cdgrupcd", type:"string", size:256, val:"M0259"});
  898. dsf_createDsRow("ds_temp", objColInfo);
  899. var oParam = {};
  900. oParam.id = "TRMRF00706";
  901. oParam.service = "formmngtapp.FormMngt";
  902. oParam.method = "reqGetFormbizCls";
  903. oParam.inds = "req=ds_temp";
  904. oParam.outds = "ds_main_formbizcls=formbizcls";
  905. oParam.async = true;
  906. oParam.callback = "cf_TRMRF00706";
  907. tranf_submit(oParam); //서식분류 조회
  908. if((sysf_getUserInfo("jobkindcd") == "0330") || (sysf_getUserInfo("jobkindcd") == "0332")){
  909. ds_main_newform.setColumn(0, "formbizcls", "02");
  910. } else if(sysf_getUserInfo("jobkindcd") == "1110"){
  911. ds_main_newform.setColumn(0, "formbizcls", "03");
  912. } else{
  913. ds_main_newform.setColumn(0, "formbizcls", "07");
  914. }
  915. var formbiz = "01' ,'";
  916. formbiz += ds_main_newform.getColumn(0, "formbizcls");
  917. ds_main_newform.setColumn(0, "firstform",formbiz);
  918. }
  919. function cf_TRMRF00706(sSvcId, nErrorCode, sErrorMsg) {
  920. if(nErrorCode < 0) return;
  921. if( !utlf_isNull(ds_main_formbizcls.getColumnInfo("cdid")))
  922. ds_main_formbizcls.updateColID("cdid", "formbizclscd");
  923. if( !utlf_isNull(ds_main_formbizcls.getColumnInfo("cdnm")))
  924. ds_main_formbizcls.updateColID("cdnm", "formbizclsnm");
  925. }
  926. //1711556
  927. //응급실안거치고 오는 경우
  928. //외래에서 입원하는 케이스..
  929. /**
  930. * @desc : OCR서식 선택시
  931. * @
  932. * @param :
  933. * @return :
  934. * @---------------------------------------------------
  935. */
  936. function fSelectOCR(){
  937. var nRow = ds_main_ocrinfo_ocrlist.rowposition;
  938. var key = ds_main_ocrinfo_ocrlist.getColumn(nRow, "formcd");
  939. var formcd = ds_main_ocrinfo_ocrlist.getColumn(nRow, "formcd");
  940. var formnm = ds_main_ocrinfo_ocrlist.getColumn(nRow, "formnm");
  941. var srcformcd = ds_main_ocrinfo_ocrlist.getColumn(nRow, "src");
  942. if(utlf_isNull(formcd))
  943. {
  944. return;
  945. }
  946. var openerid = opener.frmf_getParameter("SPMMR01000_openerid"); //부모의 화면번호
  947. if (openerid == "SMMMR00100")
  948. {
  949. //parent.fOpenNewForm(formcd); //기록메인일경우 서식 오픈
  950. opener.fOpenNewForm(formcd); //기록메인일경우 서식 오픈
  951. }
  952. else
  953. {
  954. opener.frmf_setParameter("SPMMR01000_formcd_rtn", formcd); //기록 메인이 아닐 경우 서식코드를 넘긴다.
  955. opener.frmf_setParameter("SPMMR01000_formnm_rtn", formnm); //서식명
  956. opener.frmf_setParameter("SPMMR01000_srcformcd_rtn", srcformcd); //참조서식코드
  957. this.close();
  958. }
  959. }
  960. /**
  961. * @desc : 서식미리보기
  962. * @id :
  963. * @event : onmousedown
  964. * @return : void
  965. * @authur : 박종훈
  966. */
  967. function fFormPreView()
  968. {
  969. var rtn = fGetFormcode();
  970. rtn = rtn.split("|");
  971. var valu = rtn[0];
  972. frmf_setParameter("openmode", "preview"); //오픈모드는 “newform”
  973. frmf_setParameter("formcd", valu); //서식테이블의 formcd(서식코드)
  974. //modal("SSMMR01100", 1, 0, 0 ,"", "", "");
  975. frmf_modal("SSMMR01100", "SSMMR01100", null, null, 1, 0, 0, null, null, null, null, null, "M");
  976. }
  977. /**
  978. * @desc : 다시 조회하기
  979. * @id :
  980. * @event : 진료기록메인에서 환자탭 변경시에 호출한다.
  981. * @return : void
  982. * @authur : 안치원
  983. */
  984. function reloadByRecMain()
  985. {
  986. //2009.10.26 안치원 TASK-32482
  987. //서식목록에서 응급환자의 경우 입퇴원요약기록이 안보이게 한다.
  988. //환자의 내원구분이 바뀌면 서식목록을 리로드한다.
  989. fReadyForm();
  990. ds_init.setColumn(0, "Iref", "N");
  991. ds_init.setColumn(0, "Dref", "N");
  992. ds_init.setColumn(0, "Aref", "N");
  993. ds_init.setColumn(0, "Mref", "N");
  994. fSelectIndxList();
  995. }
  996. /**
  997. * @desc : 과 탭에서 개인 탭으로 즐겨찾기 식으로 이미지추가.
  998. * @id :
  999. * @event : onmousedown
  1000. * @return : void
  1001. * @authur : 임지원
  1002. */
  1003. function fImgAdd()
  1004. {
  1005. var rtn = fSetTreeView();
  1006. var sTREE_OBJ = eval(rtn);
  1007. var sTREE_NM = sTREE_OBJ.name;
  1008. //선택 탭이 '과'일 경우에만 개인탭으로 이미지 추가.
  1009. if(sTREE_NM == "trv_deptlist" || sTREE_NM == "trv_alllist"){
  1010. var Dpath = fFindTreePath(sTREE_NM);
  1011. var selIndex = Dpath.rowposition;
  1012. // 선택폴더가 있는가?
  1013. if (selIndex == -1) {
  1014. sysf_messageBox("이미지를", "C002");
  1015. return;
  1016. }
  1017. // 루트인가?
  1018. var levl = Dpath.getColumn(selIndex, "levl");
  1019. if (levl == 1) {
  1020. sysf_messageBox("지정된 위치로 이동", "E001");
  1021. return;
  1022. }
  1023. var linkflag = Dpath.getColumn(selIndex, "linkflag");
  1024. if (linkflag == "N") { //폴더 선택시
  1025. sysf_messageBox("이미지를", "C002");
  1026. return;
  1027. }
  1028. var indxfocus = Dpath.getColumn(selIndex, "seqcd");
  1029. if( !utlf_isNull(indxfocus) ) {
  1030. sSETLIST_HIDDEN.clearData();
  1031. var nRow = sSETLIST_HIDDEN.addRow();
  1032. sSETLIST_HIDDEN.setColumn(nRow, "status", "i");
  1033. sSETLIST_HIDDEN.setColumn(nRow, "itemindxseq", Dpath.getColumn(selIndex, "itemindxseq"));
  1034. sSETLIST_HIDDEN.setColumn(nRow, "supitemindxseq", Dpath.getColumn(selIndex, "supitemindxseq"));
  1035. sSETLIST_HIDDEN.setColumn(nRow, "indxflag", "P");
  1036. sSETLIST_HIDDEN.setColumn(nRow, "indxnm", "");
  1037. sSETLIST_HIDDEN.setColumn(nRow, "indxcnts", "");
  1038. sSETLIST_HIDDEN.setColumn(nRow, "deptcd", sysf_getUserInfo("dutplcecd"));
  1039. sSETLIST_HIDDEN.setColumn(nRow, "userid", sysf_getUserId());
  1040. sSETLIST_HIDDEN.setColumn(nRow, "linkflag", "Y");
  1041. sSETLIST_HIDDEN.setColumn(nRow, "linkcd", Dpath.getColumn(selIndex, "linkcd"));
  1042. sSETLIST_HIDDEN.setColumn(nRow, "comnseq", 0);
  1043. sSETLIST_HIDDEN.setColumn(nRow, "sortno", '1000');
  1044. sSETLIST_HIDDEN.setColumn(nRow, "valiyn", "Y");
  1045. sSETLIST_HIDDEN.setColumn(nRow, "slipno", 0);
  1046. sSETLIST_HIDDEN.setColumn(nRow, "valu", sysf_getUserId());
  1047. sSETLIST_HIDDEN.setColumn(nRow, "flag", "userid");
  1048. dsf_setTypeFormat(sSETLIST_HIDDEN, "itemindxseq:INT^supitemindxseq:INT^comnseq:INT^sortno:INT^slipno:INT");
  1049. var oParam = {};
  1050. oParam.id = "TXMMR03602";
  1051. oParam.service = "medirecapp.ImgEdit";
  1052. oParam.method = "reqSaveFormImge";
  1053. oParam.inds = "savedata="+sSETLIST_HIDDEN.name;
  1054. oParam.outds = "ds_tmp_indxlist_pflist=pflist";
  1055. oParam.async = false;
  1056. oParam.callback = "cf_TXMMR03602";
  1057. tranf_submit(oParam);
  1058. }
  1059. ds_main_userlist_pflist.clearData();
  1060. ds_main_userlist_pflist.copyData(ds_tmp_indxlist_pflist);
  1061. }else if ( sTREE_NM == "grd_imgnmlist" ){
  1062. var rowpos = gIpath.rowposition;
  1063. if( rowpos == "-1" || utlf_isNull(rowpos) ) {
  1064. sysf_messageBox("이미지를 선택하십시오!","I");
  1065. return;
  1066. }else{
  1067. sSETLIST_HIDDEN.clearData();
  1068. var nRow = sSETLIST_HIDDEN.addRow();
  1069. sSETLIST_HIDDEN.setColumn(nRow, "status", "i");
  1070. sSETLIST_HIDDEN.setColumn(nRow, "itemindxseq", gIpath.getColumn(rowpos, "itemindxseq"));
  1071. sSETLIST_HIDDEN.setColumn(nRow, "supitemindxseq", gIpath.getColumn(rowpos, "supitemindxseq"));
  1072. sSETLIST_HIDDEN.setColumn(nRow, "indxflag", "P");
  1073. sSETLIST_HIDDEN.setColumn(nRow, "indxnm", "");
  1074. sSETLIST_HIDDEN.setColumn(nRow, "indxcnts", "");
  1075. sSETLIST_HIDDEN.setColumn(nRow, "deptcd", sysf_getUserInfo("dutplcecd"));
  1076. sSETLIST_HIDDEN.setColumn(nRow, "userid", sysf_getUserId());
  1077. sSETLIST_HIDDEN.setColumn(nRow, "linkflag", "Y");
  1078. sSETLIST_HIDDEN.setColumn(nRow, "linkcd", gIpath.getColumn(rowpos, "linkcd"));
  1079. sSETLIST_HIDDEN.setColumn(nRow, "comnseq", 0);
  1080. sSETLIST_HIDDEN.setColumn(nRow, "sortno", '1000');
  1081. sSETLIST_HIDDEN.setColumn(nRow, "valiyn", "Y");
  1082. sSETLIST_HIDDEN.setColumn(nRow, "slipno", 0);
  1083. sSETLIST_HIDDEN.setColumn(nRow, "valu", sysf_getUserId());
  1084. sSETLIST_HIDDEN.setColumn(nRow, "flag", "userid");
  1085. dsf_setTypeFormat(sSETLIST_HIDDEN, "itemindxseq:INT^supitemindxseq:INT^comnseq:INT^sortno:INT^slipno:INT");
  1086. var oParam = {};
  1087. oParam.id = "TXMMR03602";
  1088. oParam.service = "medirecapp.ImgEdit";
  1089. oParam.method = "reqSaveFormImge";
  1090. oParam.inds = "savedata="+sSETLIST_HIDDEN.name;
  1091. oParam.outds = "ds_tmp_indxlist_pflist=pflist";
  1092. oParam.async = false;
  1093. oParam.callback = "cf_TXMMR03602";
  1094. tranf_submit(oParam);
  1095. }
  1096. ds_main_userlist_pflist.clearData();
  1097. ds_main_userlist_pflist.copyData(ds_tmp_indxlist_pflist);
  1098. }else{
  1099. return;
  1100. }
  1101. }
  1102. function fImgDel(){
  1103. var rtn = fSetTreeView();
  1104. var sTREE_OBJ = eval(rtn);
  1105. var sTREE_NM = sTREE_OBJ.name;
  1106. if(sTREE_NM == "trv_userlist"){
  1107. var Dpath = fFindTreePath(sTREE_NM);
  1108. if (Dpath.rowposition == -1) {
  1109. sysf_messageBox("이미지를", "C002");
  1110. return;
  1111. }
  1112. var rowpos = Dpath.rowposition;
  1113. var levl = Dpath.getColumn(rowpos, "levl");
  1114. var linkflag = Dpath.getColumn(rowpos, "linkflag");
  1115. if (linkflag == "N") { //폴더 선택시
  1116. sysf_messageBox("이미지를", "C002");
  1117. return;
  1118. }
  1119. //이미지일 경우에만 삭제가능
  1120. if( levl != '1' ){
  1121. var ret = sysf_messageBox("정말","Q001");
  1122. if(ret != "6"){
  1123. return;
  1124. }
  1125. fSaveDiagSet(rowpos, "d", "Y");
  1126. }
  1127. }
  1128. }
  1129. function fSaveDiagSet(rowpos, status, linkflag) {
  1130. var itemindxseq = gUpath.getColumn(rowpos, "itemindxseq");
  1131. var supitemindxseq = gUpath.getColumn(rowpos, "supitemindxseq");
  1132. var indxflag = gUpath.getColumn(rowpos, "indxflag");
  1133. sSETLIST_HIDDEN.clearData();
  1134. var nRow = sSETLIST_HIDDEN.addRow();
  1135. sSETLIST_HIDDEN.setColumn(nRow, "status", status);
  1136. sSETLIST_HIDDEN.setColumn(nRow, "itemindxseq", itemindxseq);
  1137. sSETLIST_HIDDEN.setColumn(nRow, "supitemindxseq", supitemindxseq);
  1138. sSETLIST_HIDDEN.setColumn(nRow, "indxflag", indxflag);
  1139. sSETLIST_HIDDEN.setColumn(nRow, "linkflag", linkflag);
  1140. sSETLIST_HIDDEN.setColumn(nRow, "userid", sysf_getUserId());
  1141. sSETLIST_HIDDEN.setColumn(nRow, "depth", "4");//파일
  1142. sSETLIST_HIDDEN.setColumn(nRow, "favorDel", "Y");//파일s
  1143. sSETLIST_HIDDEN.setColumn(nRow, "valu", sysf_getUserId());
  1144. sSETLIST_HIDDEN.setColumn(nRow, "flag", "userid");//
  1145. dsf_setTypeFormat(sSETLIST_HIDDEN, "itemindxseq:INT^supitemindxseq:INT^comnseq:INT^sortno:INT^slipno:INT");
  1146. var oParam = {};
  1147. oParam.id = "TXMMR03602";
  1148. oParam.service = "medirecapp.ImgEdit";
  1149. oParam.method = "reqSaveFormImge";
  1150. oParam.inds = "savedata="+sSETLIST_HIDDEN.name;
  1151. oParam.outds = "ds_tmp_indxlist_pflist=pflist";
  1152. oParam.async = false;
  1153. oParam.callback = "cf_TXMMR03602";
  1154. tranf_submit(oParam);
  1155. ds_main_userlist_pflist.clearData();
  1156. ds_main_userlist_pflist.copyData(ds_tmp_indxlist_pflist);
  1157. }
  1158. ]]></Script>