SPMMO20004_결핵중증화상신청서.xfdl 49 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO20004" position="absolute 0 0 367 757" titletext="결핵, 중증화상 신청서" onload="SPMMO20002_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 97 20 228 118" id="group1" enable="true">
  8. <Layouts>
  9. <Layout>
  10. <Edit position="absolute 0 4 130 23" id="ipt_pid" enable="true" anchor="default" readonly="true"/>
  11. <Combo position="absolute 0 54 130 73" id="combo1" enable="true" innerdataset="@ds_init_orddept" datacolumn="depthngnm" codecolumn="deptcd" anchor="default" readonly="true"/>
  12. <Edit position="absolute 0 29 130 48" id="ipt_hngnm" enable="true" anchor="default" readonly="true"/>
  13. <Edit position="absolute 0 79 130 98" id="ipt_diaghngnm" enable="true" anchor="default" readonly="true"/>
  14. </Layout>
  15. </Layouts>
  16. </Div>
  17. <Shape position="absolute 0 17 367 23" linetype="horizontal" id="line1" class="line_1" style="strokepen:3 solid #9ebed4ff;"/>
  18. <Static text="결핵, 중증화상 신청서" position="absolute 0 0 359 16" align="align:center middle;" id="caption14" class="tit_2" onclick="caption14_onclick"/>
  19. <Static text="등록번호" position="absolute 1 22 94 45" align="align:center middle;" id="caption26" class="cell_1"/>
  20. <Static text="진료과" position="absolute 1 72 94 95" align="align:center middle;" id="caption1" class="cell_1"/>
  21. <Static text="진단" position="absolute 1 97 94 120" align="align:center middle;" id="caption2" class="cell_1"/>
  22. <Static text="진단확인일" position="absolute 1 121 94 144" align="align:center middle;" id="caption3" class="cell_1"/>
  23. <Static text="최종진단방법 (중복 체크 가능)" position="absolute 0 220 345 236" align="align:center middle;" id="caption4" class="tit_2"/>
  24. <Shape position="absolute 0 236 367 242" linetype="horizontal" id="line2" class="line_1" style="strokepen:3 solid #9ebed4ff;"/>
  25. <Static text="영상검사" position="absolute 22 447 72 462" id="caption6"/>
  26. <Static text="기타검사" position="absolute 22 626 72 641" id="caption5" style="font:Dotum,9;"/>
  27. <Static text="②" position="absolute 4 505 19 520" id="caption7"/>
  28. <Static text="④" position="absolute 4 526 19 541" id="caption9"/>
  29. <Button position="absolute 251 708 307 730" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
  30. <Button position="absolute 311 708 367 730" id="btn_exit" class="btn4" text="종료" onclick="btn_exit_onclick"/>
  31. <Static text="환자명" position="absolute 1 47 94 70" align="align:center middle;" id="caption13" class="cell_1"/>
  32. <CheckBox position="absolute 75 444 135 459" id="bool_xray" text="X-ray"/>
  33. <CheckBox position="absolute 150 444 186 459" id="bool_ct" text="CT"/>
  34. <CheckBox position="absolute 210 444 273 459" id="bool_sono" text="SONO"/>
  35. <CheckBox position="absolute 75 463 119 478" id="bool_etc" text="기타" onclick="bool_etc_onclick"/>
  36. <CheckBox position="absolute 25 546 125 561" id="bool_item5" text="임상적 소견" onclick="bool_item5_onclick"/>
  37. <CheckBox position="absolute 25 525 125 540" id="bool_item4" text="조직학적 검사"/>
  38. <CheckBox position="absolute 25 504 101 519" id="bool_item2" text="도말검사"/>
  39. <Edit position="absolute 124 461 367 480" id="ipt_etc1" enable="false" onkeydown="ipt_etc1_onkeydown"/>
  40. <Static position="absolute 231 24 367 69" align="align:center middle;" id="cap_insukindnm" class="cell_1" style="padding:0 0 0 0;align:center middle;font:Dotum,12,bold;"/>
  41. <Calendar position="absolute 97 123 227 142" id="ipt_diagcnfmdate" class="input_s_essential" mask="yyyy-mm-dd"/>
  42. <Button position="absolute 191 708 247 730" id="btn_del" class="btn4" text="삭제" onclick="btn_del_onclick"/>
  43. <Button position="absolute 131 708 187 730" id="btn_upt" class="btn4" text="수정" onclick="btn_upt_onclick"/>
  44. <TextArea position="absolute 45 564 367 602" id="txt_etc2" onkeydown="txt_etc2_onkeydown" enable="false"/>
  45. <Combo position="absolute 75 624 367 643" id="com_etc1" innerdataset="@ds_P0509" datacolumn="cdnm" codecolumn="cdid" index="-1"/>
  46. <Static text="①" position="absolute 5 447 25 462" id="caption12"/>
  47. <Static text="◈ 등록기준 및 필수검사" position="absolute 0 245 135 260" id="caption15"/>
  48. <Static text="(반드시 필수검사에 맞게 작성하세요)" position="absolute 148 244 357 259" id="caption16" style="color:blue;"/>
  49. <Static text="( 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 )" position="absolute 50 481 367 500" id="caption17" style="align:right middle;font:Dotum,9,underline;"/>
  50. <Static text="( 최소 : 한글 5자, 영어 10자, 최대 : 한글 40자, 영어 80자 )" position="absolute 41 606 367 621" id="caption18" style="align:right middle;"/>
  51. <Grid position="absolute 0 264 367 439" id="grd_diaglist" binddataset="ds_hidden_items" oncelldblclick="grd_diaglist_oncelldblclick" autosizingtype="row" extendsizetype="row" cellsizingtype="row" onmousewheel="grd_diaglist_onmousewheel" onvscroll="grd_diaglist_onvscroll" scrollpixel="all" autofittype="col">
  52. <Formats>
  53. <Format id="default">
  54. <Columns>
  55. <Column size="70"/>
  56. <Column size="193"/>
  57. <Column size="80"/>
  58. <Column size="0"/>
  59. <Column size="0"/>
  60. <Column size="0"/>
  61. <Column size="0"/>
  62. <Column size="0"/>
  63. <Column size="0"/>
  64. <Column size="0"/>
  65. </Columns>
  66. <Rows>
  67. <Row size="24" band="head"/>
  68. <Row size="24"/>
  69. </Rows>
  70. <Band id="head">
  71. <Cell text="진단명"/>
  72. <Cell col="1" text="등록기준"/>
  73. <Cell col="2" text="필수검사"/>
  74. <Cell col="3" text="seq"/>
  75. <Cell col="4" text="test1"/>
  76. <Cell col="5" text="test2"/>
  77. <Cell col="6" text="test3"/>
  78. <Cell col="7" text="test4"/>
  79. <Cell col="8" text="test5"/>
  80. <Cell col="9" text="test6"/>
  81. </Band>
  82. <Band id="body">
  83. <Cell style="align:left top;padding:3 3 3 3;linespace:2;" text="bind:diagnm" wordwrap="char" autosizerow="limitmin"/>
  84. <Cell col="1" style="align:left;padding:3 3 3 3;linespace:2;" text="bind:rgstbase" wordwrap="char" tooltiptype="bottom" tooltiptext="bind:rgstbase" autosizerow="limitmin"/>
  85. <Cell col="2" style="align:left top;padding:3 3 3 3;linespace:2;" text="bind:essntestasso" wordwrap="char" tooltiptype="bottom" tooltiptext="bind:essntestasso" autosizerow="default"/>
  86. <Cell col="3" text="bind:seq"/>
  87. <Cell col="4" text="bind:test1"/>
  88. <Cell col="5" text="bind:test2"/>
  89. <Cell col="6" text="bind:test3"/>
  90. <Cell col="7" text="bind:test4"/>
  91. <Cell col="8" text="bind:test5"/>
  92. <Cell col="9" text="bind:test6"/>
  93. </Band>
  94. </Format>
  95. </Formats>
  96. </Grid>
  97. <Combo position="absolute 97 147 227 166" id="combo3" codecolumn="codecolumn" datacolumn="datacolumn">
  98. <Dataset id="innerdataset">
  99. <ColumnInfo>
  100. <Column id="codecolumn"/>
  101. <Column id="datacolumn"/>
  102. </ColumnInfo>
  103. <Rows>
  104. <Row>
  105. <Col id="codecolumn">O</Col>
  106. <Col id="datacolumn">외래</Col>
  107. </Row>
  108. <Row>
  109. <Col id="codecolumn">I</Col>
  110. <Col id="datacolumn">입원</Col>
  111. </Row>
  112. </Rows>
  113. </Dataset>
  114. </Combo>
  115. <Static text="외래/입원구분" position="absolute 1 145 94 168" align="align:center middle;" id="caption19" class="cell_1" style="padding:0 0 0 8;"/>
  116. <Button position="absolute 10 708 88 730" id="button1" class="btn4" text="예외환자" onclick="button1_onclick"/>
  117. <Button id="Button03" taborder="1" onclick="Button03_onclick" class="icon_search2" position="absolute 224 100 252 120"/>
  118. <Static id="caption20" text="신청서 구분" class="cell_1" position="absolute 1 169 94 192" style="padding:0 0 0 8;"/>
  119. <Combo id="combo00" taborder="3" codecolumn="cdid" datacolumn="cdnm" position="absolute 97 171 227 190" onitemchanged="combo00_onitemchanged" innerdataset="@ds_rgstkind"/>
  120. <Static id="caption24" text="등록기준을 선택하면 버튼이 활성화 됩니다." visible="false" position="absolute 126 731 366 746" style="color:blue;align:right middle;"/>
  121. <CheckBox id="bool_mri" taborder="4" text="MRI" position="absolute 297 444 341 459"/>
  122. <CheckBox id="bool_item3" taborder="5" text="배양검사" position="absolute 209 504 285 519"/>
  123. <Static id="caption10" position="absolute 4 626 19 641" text="⑥"/>
  124. <Static id="caption11" text="◈ (결핵만 해당)타 요양기관의 검사 결과로 확진인 경우" position="absolute 4 650 320 665" style="font:Dotum,9;"/>
  125. <CheckBox id="bool_itemetc1" taborder="6" text="없음" position="absolute 24 667 74 682" value="true" onclick="bool_itemetc1_onclick"/>
  126. <Static id="caption22" text="있음(" position="absolute 88 667 120 682" style="font:Dotum,9;"/>
  127. <CheckBox id="bool_itemetc2" taborder="7" text="영상검사" position="absolute 124 667 200 682" onclick="bool_itemetc2_onclick"/>
  128. <CheckBox id="bool_itemetc3" taborder="8" text="도말/배양검사" position="absolute 245 667 350 682" onclick="bool_itemetc3_onclick"/>
  129. <CheckBox id="bool_itemetc4" taborder="9" text="조직학적 검사" position="absolute 124 687 234 702" onclick="bool_itemetc4_onclick"/>
  130. <CheckBox id="bool_itemetc5" taborder="10" text="기타" position="absolute 245 687 350 702" onclick="bool_itemetc5_onclick"/>
  131. <Static id="caption23" text=")" position="absolute 353 688 361 703" style="font:Dotum,9;"/>
  132. <Static id="caption21" text="③" position="absolute 191 505 206 520"/>
  133. <Radio id="Radio00" taborder="11" columncount="0" rowcount="1" index="0" codecolumn="codecolumn" datacolumn="datacolumn" value="Y" onitemchanged="Radio00_onitemchanged" position="absolute 266 -1 366 19" style="align:left middle;" visible="false">
  134. <Dataset id="innerdataset">
  135. <ColumnInfo>
  136. <Column id="codecolumn" size="256"/>
  137. <Column id="datacolumn" size="256"/>
  138. </ColumnInfo>
  139. <Rows>
  140. <Row>
  141. <Col id="codecolumn">Y</Col>
  142. <Col id="datacolumn">자동</Col>
  143. </Row>
  144. <Row>
  145. <Col id="codecolumn">N</Col>
  146. <Col id="datacolumn">수동</Col>
  147. </Row>
  148. </Rows>
  149. </Dataset>
  150. </Radio>
  151. <Static id="caption25" text="신청 구분" class="cell_1" position="absolute 1 193 94 216" style="padding:0 0 0 8;"/>
  152. <Combo id="combo01" taborder="12" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="combo01_onitemchanged" enable="false" position="absolute 97 195 227 214">
  153. <Dataset id="innerdataset">
  154. <ColumnInfo>
  155. <Column id="codecolumn" size="256"/>
  156. <Column id="datacolumn" size="256"/>
  157. </ColumnInfo>
  158. <Rows>
  159. <Row>
  160. <Col id="codecolumn">N</Col>
  161. <Col id="datacolumn">신규등록</Col>
  162. </Row>
  163. <Row>
  164. <Col id="codecolumn">Y</Col>
  165. <Col id="datacolumn">재등록</Col>
  166. </Row>
  167. </Rows>
  168. </Dataset>
  169. </Combo>
  170. <Static id="caption00" text="⑤" position="absolute 4 548 19 563"/>
  171. </Layout>
  172. </Layouts>
  173. <Objects>
  174. <Dataset id="ds_hidden_items" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  175. <Dataset id="ds_init_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  176. <Dataset id="ds_P0509" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  177. <ColumnInfo>
  178. <Column id="cdid" type="STRING" size="256"/>
  179. <Column id="cdnm" type="STRING" size="256"/>
  180. </ColumnInfo>
  181. </Dataset>
  182. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  183. <ColumnInfo>
  184. <Column id="genrdd" type="STRING" size="256"/>
  185. <Column id="genrno" type="STRING" size="256"/>
  186. <Column id="histno" type="STRING" size="256"/>
  187. <Column id="pid" type="STRING" size="256"/>
  188. <Column id="genrflagcd" type="STRING" size="256"/>
  189. <Column id="genrorddd" type="STRING" size="256"/>
  190. <Column id="genrcretno" type="STRING" size="256"/>
  191. <Column id="orddeptcd" type="STRING" size="256"/>
  192. <Column id="rgstkindcd" type="STRING" size="256"/>
  193. <Column id="icd10cd" type="STRING" size="256"/>
  194. <Column id="diagcd" type="STRING" size="256"/>
  195. <Column id="prcpdd" type="STRING" size="256"/>
  196. <Column id="searchauto" type="STRING" size="256"/>
  197. <Column id="reregyn" type="STRING" size="256" sumtext="신청구분"/>
  198. </ColumnInfo>
  199. <Rows>
  200. <Row/>
  201. </Rows>
  202. </Dataset>
  203. <Dataset id="ds_rarediagappinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  204. <ColumnInfo>
  205. <Column id="status" type="STRING" size="256"/>
  206. <Column id="genrdd" type="STRING" size="256"/>
  207. <Column id="genrno" type="STRING" size="256"/>
  208. <Column id="histno" type="STRING" size="256"/>
  209. <Column id="instcd" type="STRING" size="256"/>
  210. <Column id="histcd" type="STRING" size="256"/>
  211. <Column id="pid" type="STRING" size="256"/>
  212. <Column id="anohosprgstflag" type="STRING" size="256"/>
  213. <Column id="genrflagcd" type="STRING" size="256"/>
  214. <Column id="insukind" type="STRING" size="256"/>
  215. <Column id="cncrdiagcnfmdd" type="STRING" size="256"/>
  216. <Column id="orddeptcd" type="STRING" size="256"/>
  217. <Column id="orddrid" type="STRING" size="256"/>
  218. <Column id="serdiagno" type="STRING" size="256"/>
  219. <Column id="serdiagfromdd" type="STRING" size="256"/>
  220. <Column id="serdiagtodd" type="STRING" size="256"/>
  221. <Column id="genrorddd" type="STRING" size="256"/>
  222. <Column id="genrcretno" type="STRING" size="256"/>
  223. <Column id="maindiagcd" type="STRING" size="256"/>
  224. <Column id="ediflag" type="STRING" size="256"/>
  225. <Column id="editretdd" type="STRING" size="256"/>
  226. <Column id="editrettm" type="STRING" size="256"/>
  227. <Column id="pathngnm" type="STRING" size="256"/>
  228. <Column id="dschprcpyn" type="STRING" size="256"/>
  229. <Column id="prcpdd" type="STRING" size="256"/>
  230. <Column id="age" type="STRING" size="256"/>
  231. <Column id="frmsuppkind" type="STRING" size="256"/>
  232. <Column id="rgstkindcd" type="STRING" size="256"/>
  233. <Column id="burnicd10desc" type="STRING" size="256"/>
  234. <Column id="icd10cd" type="STRING" size="256"/>
  235. <Column id="reregyn" type="STRING" size="256"/>
  236. <Column id="regdiagcd" type="STRING" size="256"/>
  237. <Column id="regdiagseq" type="STRING" size="256"/>
  238. <Column id="appspclcd" type="STRING" size="256"/>
  239. <Column id="appdiagcd" type="STRING" size="256"/>
  240. <Column id="appdiagseq" type="STRING" size="256"/>
  241. <Column id="automanual" type="STRING" size="256" sumtext="산정특례의 신청서 작성 구분값(진단인증저장시 : A, 그 외 ; M)"/>
  242. </ColumnInfo>
  243. <Rows>
  244. <Row/>
  245. </Rows>
  246. </Dataset>
  247. <Dataset id="ds_diagappmthinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  248. <ColumnInfo>
  249. <Column id="mth0101" type="STRING" size="256"/>
  250. <Column id="mth0202" type="STRING" size="256"/>
  251. <Column id="mth0303" type="STRING" size="256"/>
  252. <Column id="mth0404" type="STRING" size="256"/>
  253. <Column id="mth0505" type="STRING" size="256"/>
  254. <Column id="mth0506" type="STRING" size="256"/>
  255. <Column id="mth0607" type="STRING" size="256"/>
  256. <Column id="mth0708" type="STRING" size="256"/>
  257. <Column id="mth0809" type="STRING" size="256"/>
  258. <Column id="mth0910" type="STRING" size="256"/>
  259. <Column id="mth0911" type="STRING" size="256"/>
  260. <Column id="mth1012" type="STRING" size="256"/>
  261. <Column id="mth1113" type="STRING" size="256"/>
  262. <Column id="mth1214" type="STRING" size="256"/>
  263. <Column id="mth1315" type="STRING" size="256"/>
  264. <Column id="mth1416" type="STRING" size="256"/>
  265. <Column id="mth1517" type="STRING" size="256"/>
  266. </ColumnInfo>
  267. <Rows>
  268. <Row/>
  269. </Rows>
  270. </Dataset>
  271. <Dataset id="ds_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  272. <Dataset id="ds_rgstkind" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  273. <ColumnInfo>
  274. <Column id="cdid" type="STRING" size="256"/>
  275. <Column id="cdnm" type="STRING" size="256"/>
  276. </ColumnInfo>
  277. </Dataset>
  278. </Objects>
  279. <Bind>
  280. <BindItem id="item0" compid="group1.ipt_pid" propid="value" datasetid="ds_rarediagappinfo" columnid="pid"/>
  281. <BindItem id="item1" compid="group1.ipt_hngnm" propid="value" datasetid="ds_rarediagappinfo" columnid="pathngnm"/>
  282. <BindItem id="item2" compid="group1.combo1" propid="value" datasetid="ds_rarediagappinfo" columnid="orddeptcd"/>
  283. <BindItem id="item3" compid="group1.ipt_diaghngnm" propid="value" datasetid="ds_rarediagappinfo" columnid="maindiagcd"/>
  284. <BindItem id="item4" compid="ipt_diagcnfmdate" propid="value" datasetid="ds_rarediagappinfo" columnid="cncrdiagcnfmdd"/>
  285. <BindItem id="item5" compid="combo3" propid="value" datasetid="ds_rarediagappinfo" columnid="genrflagcd"/>
  286. <BindItem id="item7" compid="bool_xray" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0101"/>
  287. <BindItem id="item8" compid="bool_ct" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0202"/>
  288. <BindItem id="item9" compid="bool_sono" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0303"/>
  289. <BindItem id="item10" compid="bool_etc" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0505"/>
  290. <BindItem id="item11" compid="bool_item2" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0607"/>
  291. <BindItem id="item12" compid="bool_item4" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0809"/>
  292. <BindItem id="item13" compid="bool_item5" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0910"/>
  293. <BindItem id="item15" compid="ipt_etc1" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0506"/>
  294. <BindItem id="item16" compid="txt_etc2" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0911"/>
  295. <BindItem id="item17" compid="com_etc1" propid="value" datasetid="ds_diagappmthinfo" columnid="mth1012"/>
  296. <BindItem id="item6" compid="combo00" propid="value" datasetid="ds_rarediagappinfo" columnid="rgstkindcd"/>
  297. <BindItem id="item18" compid="bool_mri" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0404"/>
  298. <BindItem id="item19" compid="bool_item3" propid="value" datasetid="ds_diagappmthinfo" columnid="mth0708"/>
  299. <BindItem id="item14" compid="bool_itemetc1" propid="value" datasetid="ds_diagappmthinfo" columnid="mth1113"/>
  300. <BindItem id="item20" compid="bool_itemetc2" propid="value" datasetid="ds_diagappmthinfo" columnid="mth1214"/>
  301. <BindItem id="item21" compid="bool_itemetc3" propid="value" datasetid="ds_diagappmthinfo" columnid="mth1315"/>
  302. <BindItem id="item22" compid="bool_itemetc4" propid="value" datasetid="ds_diagappmthinfo" columnid="mth1416"/>
  303. <BindItem id="item23" compid="bool_itemetc5" propid="value" datasetid="ds_diagappmthinfo" columnid="mth1517"/>
  304. <BindItem id="item31" compid="Radio00" propid="value" datasetid="ds_main_cond" columnid="searchauto"/>
  305. <BindItem id="item32" compid="combo01" propid="value" datasetid="ds_rarediagappinfo" columnid="reregyn"/>
  306. </Bind>
  307. <Script type="xscript4.0"><![CDATA[//=======================================================================================
  308. // Lib Include
  309. //---------------------------------------------------------------------------------------
  310. include "com_commonxp::comm_main.xjs";
  311. include "emr_medirecxp::MMRCommon.xjs";
  312. include "emr_prcpmngtxp::MMOCommon.xjs";
  313. include "emr_prcpmngtxp::MMO001.xjs";
  314. include "com_commodulexp::SSZFM00401.xjs";
  315. var arErrorCode = new HashArray();
  316. //=======================================================================================
  317. // Event
  318. //---------------------------------------------------------------------------------------
  319. var iClickNum = 0;
  320. /****************************************************************************************
  321. * Components : Form
  322. * Components ID : SPMMO20001
  323. * Event : onload
  324. * Argument : 01.obj : Object Event has occurred
  325. * : 02.e : Event Object
  326. * Description : 화면오픈시 폼load이후 실행
  327. ****************************************************************************************/
  328. function SPMMO20002_onload(obj:Form, e:LoadEventInfo)
  329. {
  330. frmf_initForm(obj); // 폼 초기화
  331. grdf_initGrid(grd_diaglist);
  332. lf_mmbfGetDeptCodeComboList(ds_init_orddept, "A");
  333. var arrParam = [{dsNm: "ds_P0509", cdGrpId: "P0509"}]; // 기타검사 항목
  334. appf_getCodeList(arrParam);
  335. dsf_addDsItem(ds_P0509,"cdid","cdnm","선 택 ","");
  336. var sGenrDd = opener.frmf_getParameter("SPMMO20000_genrdd");
  337. var sGenrNo = opener.frmf_getParameter("SPMMO20000_genrno");
  338. var sHistNo = opener.frmf_getParameter("SPMMO20000_histno");
  339. if(utlf_isNull(sGenrDd)) {
  340. sGenrDd = utlf_getCurrentDate(); // 현재 일자로 설정
  341. }
  342. //20191111 이돈희 : 처방 저장시 전달되 prcpdd값으로 신청서 띄우면서 재조회
  343. var sPrcpdd = opener.frmf_getParameter("SPMMO20000_prcpdd");
  344. if(utlf_isNull(sPrcpdd)) {
  345. sPrcpdd = "";
  346. }
  347. ds_main_cond.setColumn(0, "searchauto", "Y");
  348. var paminfo = sysf_getGlobalVariable("paminfo");
  349. dsf_setCSVToDs("ds_paminfo", paminfo);
  350. var sPid = ds_paminfo.getColumn(0, "pid");
  351. if(utlf_isNull(sGenrDd) && utlf_isNull(sPid)){
  352. btn_save.visible = false; //저장
  353. btn_del.visible = false; //삭제
  354. btn_upt.visible = false; //수정
  355. sysf_messageBox("환자정보를 확인", "E001");
  356. return;
  357. }
  358. var sIoFlag = ds_paminfo.getColumn(0, "ioflag");
  359. var sCretNo = ds_paminfo.getColumn(0, "cretno");
  360. var sOrdDeptCd = ds_paminfo.getColumn(0, "orddeptcd");
  361. var sOrdDd = "";
  362. if (sIoFlag == "O" || sIoFlag == "S") {
  363. sIoFlag = "O";
  364. sOrdDd = ds_paminfo.getColumn(0, "orddd");
  365. } else {
  366. sIoFlag = "I";
  367. sOrdDd = ds_paminfo.getColumn(0, "indd");
  368. }
  369. //ds_main_cond.setColumn(0,"rgstkindcd", sRgstKindCd);
  370. ds_main_cond.setColumn(0,"genrdd", sGenrDd);
  371. ds_main_cond.setColumn(0,"genrno", sGenrNo);
  372. ds_main_cond.setColumn(0,"histno", sHistNo);
  373. ds_main_cond.setColumn(0,"genrflagcd", sIoFlag);
  374. ds_main_cond.setColumn(0,"pid", sPid);
  375. ds_main_cond.setColumn(0,"genrorddd", sOrdDd);
  376. ds_main_cond.setColumn(0,"genrcretno", sCretNo);
  377. ds_main_cond.setColumn(0,"orddeptcd", sOrdDeptCd);
  378. ds_main_cond.setColumn(0,"prcpdd" , sPrcpdd);
  379. getRareAppInfo(); // 신청서 정보 조회
  380. setRgstKind(); // 등록 구분정보 설정
  381. }
  382. function getRareAppInfo() { // 신청서 정보 조회
  383. var oParam = {};
  384. oParam.id = "TRMMO11507";
  385. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  386. oParam.method = "reqGetRareDiagRegInfo";
  387. oParam.inds = "req=ds_main_cond";
  388. oParam.outds = "ds_rarediagappinfo=rarediagappinfo ds_diagappmthinfo=diagappmthinfo ds_hidden_items=chkitemlist";
  389. oParam.async = false;
  390. tranf_submit(oParam);
  391. cap_insukindnm.text = ds_rarediagappinfo.getColumn(0,"insukindnm");
  392. if(!utlf_isNull(ds_rarediagappinfo.getColumn(0,"genrno"))){ // 기존에 등록된 신청서
  393. combo00.enable = false; //신청서 구분 비활성화
  394. Button03.visible = false; //진단검색
  395. btn_save.visible = false; //저장
  396. btn_del.visible = true; //삭제
  397. btn_upt.visible = true; //수정
  398. if(utlf_isNull(ds_diagappmthinfo.getColumn(0,"mth0911"))) { // 기타검사항목
  399. com_etc1.index = 0;
  400. }
  401. //sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm")+" 등록신청서가 이미 존재합니다.", "I" );
  402. //이윤주수정(20190303)
  403. var viewmode = opener.frmf_getParameter("SPMMO20000_viewmode");
  404. if ( viewmode == "Y" ) {
  405. btn_del.visible = false; //삭제
  406. btn_upt.visible = false; //수정
  407. } else {
  408. sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm")+" 등록신청서가 이미 존재합니다.", "I" );
  409. }
  410. var cnt = ds_hidden_items.rowcount;
  411. if (cnt == 1 ) { // 등록 필수 검사 항목이 1건이면
  412. setEssentialTest(0); // 필수검사 항목 설정
  413. } else {
  414. fDiagMthEnable(true);
  415. }
  416. } else { // 신규작성
  417. ds_rarediagappinfo.setColumn(0,"status","I");
  418. combo00.enable = true; //신청서 구분 활성화
  419. Button03.visible = true; //진단검색
  420. btn_save.visible = true; //저장
  421. btn_del.visible = false; //삭제
  422. btn_upt.visible = false; //수정
  423. var cnt = ds_hidden_items.rowcount;
  424. if (cnt == 1 ) { // 등록 필수 검사 항목이 1건이면
  425. setEssentialTest(0); // 필수검사 항목 설정
  426. } else if (cnt > 1 ) { // 한건이상이면
  427. fDiagMthEnable(false);
  428. btn_upt.enable = false;
  429. btn_del.enable = false;
  430. btn_save.enable = false;
  431. btn_exit.enable = false;
  432. caption24.visible = true;
  433. } else {
  434. fDiagMthEnable(true);
  435. //결핵인 경우 타 요양기관의 검사 결과를 기본 없음으로 체크
  436. if(ds_rarediagappinfo.getColumn(0, "rgstkindcd") == "09"){
  437. ds_diagappmthinfo.setColumn(0, "mth1113", true);
  438. } else {
  439. // 등록기준이 한개도 없을 경우 타 요양기관의 검사 결과는 모두 비활성화
  440. bool_itemetc1.enable = false;
  441. bool_itemetc2.enable = false;
  442. bool_itemetc3.enable = false;
  443. bool_itemetc4.enable = false;
  444. bool_itemetc5.enable = false;
  445. bool_itemetc1.value = false;
  446. bool_itemetc2.value = false;
  447. bool_itemetc3.value = false;
  448. bool_itemetc4.value = false;
  449. bool_itemetc5.value = false;
  450. }
  451. }
  452. com_etc1.index = 0;
  453. }
  454. }
  455. function setEssentialTest(nRow) {
  456. ds_rarediagappinfo.setColumn(0, "appspclcd", "V000"); // 본인부담제외 결핵
  457. ds_rarediagappinfo.setColumn(0, "appdiagcd", ds_hidden_items.getColumn(nRow, "diagcd"));
  458. ds_rarediagappinfo.setColumn(0, "appdiagseq", ds_hidden_items.getColumn(nRow, "seq"));
  459. var test1 = ds_hidden_items.getColumn(nRow,"test1");
  460. var test2 = ds_hidden_items.getColumn(nRow,"test2");
  461. var test3 = ds_hidden_items.getColumn(nRow,"test3");
  462. var test4 = ds_hidden_items.getColumn(nRow,"test4");
  463. var test5 = ds_hidden_items.getColumn(nRow,"test5");
  464. var test6 = ds_hidden_items.getColumn(nRow,"test6");
  465. //20191203 이돈희 : 결핵 타기관 검사 항목과 최종확진방법이 일치하도록 수정(요청번호 : 20191129001)
  466. // : test1~6 상태에 따라 bool_itemetc2~5 활성화, 비활성화 설정
  467. if (test1 =="Y" ) {
  468. bool_xray.enable = true;
  469. bool_ct.enable = true;
  470. bool_sono.enable = true;
  471. bool_mri.enable = true;
  472. bool_etc.enable = true;
  473. bool_itemetc2.enable = true;
  474. } else {
  475. bool_xray.enable = false;
  476. bool_ct.enable = false;
  477. bool_sono.enable = false;
  478. bool_mri.enable = false;
  479. bool_etc.enable = false;
  480. bool_itemetc2.enable = false;
  481. }
  482. if (test2 == "Y") {
  483. bool_item2.enable = true;
  484. } else {
  485. bool_item2.enable = false;
  486. }
  487. if (test3 == "Y") {
  488. bool_item3.enable = true;
  489. } else {
  490. bool_item3.enable = false;
  491. }
  492. if(test2 == "Y" || test3 == "Y"){
  493. bool_itemetc3.enable = true;
  494. } else {
  495. bool_itemetc3.enable = false;
  496. }
  497. if (test4 == "Y") {
  498. bool_item4.enable = true;
  499. bool_itemetc4.enable = true;
  500. } else {
  501. bool_item4.enable = false;
  502. bool_itemetc4.enable = false;
  503. }
  504. if (test5 == "Y") {
  505. bool_item5.enable = true;
  506. } else {
  507. bool_item5.enable = false;
  508. }
  509. if(!utlf_isNull(test6)){
  510. bool_itemetc5.enable = true;
  511. } else {
  512. bool_itemetc5.enable = false;
  513. }
  514. com_etc1.enable = true;
  515. btn_upt.enable = true;
  516. btn_del.enable = true;
  517. btn_exit.enable = true;
  518. btn_save.enable = true;
  519. caption24.visible = false;
  520. if(ds_rarediagappinfo.getColumn(0, "rgstkindcd") == "09"){
  521. bool_itemetc1.enable = true;
  522. /*
  523. bool_itemetc2.enable = true;
  524. bool_itemetc3.enable = true;
  525. bool_itemetc4.enable = true;
  526. bool_itemetc5.enable = true;
  527. */
  528. //타 요양기관의 검사 결과를 기본 없음으로 체크
  529. ds_diagappmthinfo.setColumn(0, "mth1113", true);
  530. } else {
  531. bool_itemetc1.enable = false;
  532. bool_itemetc2.enable = false;
  533. bool_itemetc3.enable = false;
  534. bool_itemetc4.enable = false;
  535. bool_itemetc5.enable = false;
  536. bool_itemetc1.value = false;
  537. bool_itemetc2.value = false;
  538. bool_itemetc3.value = false;
  539. bool_itemetc4.value = false;
  540. bool_itemetc5.value = false;
  541. }
  542. }
  543. function fDiagMthEnable(bEnable) {
  544. bool_xray.enable = bEnable;
  545. bool_ct.enable = bEnable;
  546. bool_sono.enable = bEnable;
  547. bool_mri.enable = bEnable;
  548. bool_etc.enable = bEnable;
  549. bool_item2.enable = bEnable;
  550. bool_item3.enable = bEnable;
  551. bool_item4.enable = bEnable;
  552. bool_item5.enable = bEnable;
  553. com_etc1.enable = bEnable;
  554. bool_itemetc1.enable = bEnable;
  555. bool_itemetc2.enable = bEnable;
  556. bool_itemetc3.enable = bEnable;
  557. bool_itemetc4.enable = bEnable;
  558. bool_itemetc5.enable = bEnable;
  559. }
  560. function setRgstKind() { // 등록구분정보 설정
  561. dsf_addDsItem(ds_rgstkind,"cdid","cdnm","중증화상", "02", "below");
  562. dsf_addDsItem(ds_rgstkind,"cdid","cdnm","결핵", "09", "below");
  563. }
  564. /****************************************************************************************
  565. * Components : Grid
  566. * Components ID : grd_diaglist
  567. * Event : oncelldblclick
  568. * Argument : 01.obj : Object Event has occurred
  569. * : 02.e : Event Object
  570. * Description : 등록기준 및 필수검사 그리드 더블클릭
  571. ****************************************************************************************/
  572. function grd_diaglist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  573. {
  574. ds_diagappmthinfo.clearData();
  575. ds_diagappmthinfo.addRow();
  576. var nRow = e.row;
  577. setEssentialTest(nRow);
  578. com_etc1.index = 0;
  579. //타 요양기관의 검사 결과를 기본 없음으로 체크
  580. //ds_diagappmthinfo.setColumn(0, "mth1113", "true");
  581. }
  582. /****************************************************************************************
  583. * Components : Edit
  584. * Components ID : ipt_etc1
  585. * Event : onkeydown
  586. * Argument : 01.obj : Object Event has occurred
  587. * : 02.e : Event Object
  588. * Description : 기타 입력란 입력시
  589. ****************************************************************************************/
  590. function ipt_etc1_onkeydown(obj:Edit, e:KeyEventInfo)
  591. {
  592. if(e.keycode != 8 && e.keycode != 46 && e.keycode != 35 && e.keycode != 36
  593. && e.keycode != 16 && e.keycode != 17
  594. && !(e.keycode >= 37 && e.keycode <= 40)) { // 백스페이스, delete,화살표, home, end 키는 이벤트제외.
  595. var yy1 = utlf_transNullToEmpty(ipt_etc1.text);
  596. var xx1 = 0;
  597. for(var i = 0 ; i < yy1.length; i++ ) {
  598. (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1;
  599. }
  600. if(xx1 > 40) {
  601. sysf_messageBox("최대 한글 20자, 영어 40자 까지만 입력할 수 있습니다.", "I");
  602. return;
  603. }
  604. }
  605. }
  606. /****************************************************************************************
  607. * Components : TextArea
  608. * Components ID : txt_etc2
  609. * Event : onkeydown
  610. * Argument : 01.obj : Object Event has occurred
  611. * : 02.e : Event Object
  612. * Description : 5번항목 기재내역 입력시
  613. ****************************************************************************************/
  614. function txt_etc2_onkeydown(obj:TextArea, e:KeyEventInfo)
  615. {
  616. if ( e.keycode != 8 && e.keycode != 46 && e.keycode != 35 && e.keycode != 36
  617. && e.keycode != 16 && e.keycode != 17
  618. && !(e.keycode >= 37 && e.keycode <= 40) ) { // 백스페이스, delete,화살표, home, end 키는 이벤트제외.
  619. var yy1 = utlf_transNullToEmpty(txt_etc2.text);
  620. var xx1 = 0;
  621. for(var i=0 ; i < yy1.length ; i++) {
  622. (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1;
  623. }
  624. if ( xx1 > 80) {
  625. sysf_messageBox("최대 한글 40자, 영어 80자 까지만 입력할 수 있습니다.", "I");
  626. return;
  627. }
  628. }
  629. }
  630. /****************************************************************************************
  631. * Components : Button
  632. * Components ID : button1
  633. * Event : onclick
  634. * Argument : 01.obj : Object Event has occurred
  635. * : 02.e : Event Object
  636. * Description : 예외환자 버튼 클릭
  637. ****************************************************************************************/
  638. function button1_onclick(obj:Button, e:ClickEventInfo)
  639. {
  640. frmf_modal("SPMMO09500", "SPMMO09500", "", "", "", "", "", "", "", "", "", "", "M");
  641. }
  642. /****************************************************************************************
  643. * Components : Button
  644. * Components ID : btn_upt
  645. * Event : onclick
  646. * Argument : 01.obj : Object Event has occurred
  647. * : 02.e : Event Object
  648. * Description : 수정 버튼 클릭
  649. ****************************************************************************************/
  650. function btn_upt_onclick(obj:Button, e:ClickEventInfo)
  651. {
  652. //20191114 이돈희 : 중증화상이면서 타 요양기관의 검사 결과 입력시 오류
  653. if(ds_rarediagappinfo.getColumn(0, "rgstkindcd") != "09"){
  654. if((ds_diagappmthinfo.getColumn(0, "mth1113") == true)
  655. || (ds_diagappmthinfo.getColumn(0, "mth1214") == true)
  656. || (ds_diagappmthinfo.getColumn(0, "mth1315") == true)
  657. || (ds_diagappmthinfo.getColumn(0, "mth1416") == true)
  658. || (ds_diagappmthinfo.getColumn(0, "mth1517") == true)){
  659. sysf_messageBox("결핵인 경우에만 타 요양기관의 검사 결과를 입력 할 수 있습니다.", "I003");
  660. return;
  661. }
  662. }
  663. var cncrdiagcnfmdd = ds_rarediagappinfo.getColumn(0,"cncrdiagcnfmdd");
  664. if (!utlf_isValidDateTime(cncrdiagcnfmdd, "YYYYMMDD")) {
  665. sysf_messageBox("진단 확인일은", "I003");
  666. return;
  667. }
  668. if(cncrdiagcnfmdd > utlf_getCurrentDate() ) {
  669. sysf_messageBox("진단 확인일을 미래일자로 입력 할 수 없습니다.", "I999");
  670. return;
  671. }
  672. if(cncrdiagcnfmdd < ((utlf_getCurrentDate().toDate()).getAddDate(-1,"M")).getDateFormat() ) {
  673. sysf_messageBox("진단 확인일을 최근 1달이내의 날짜로 입력 하셔야 합니다.", "I999");
  674. return;
  675. }
  676. var yy1 = utlf_transNullToEmpty(ipt_etc1.value);
  677. var yy2 = utlf_transNullToEmpty(txt_etc2.value);
  678. var xx1 = 0;
  679. for(var i=0; i < yy1.length; i++) { (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1; }
  680. var xx2 = 0;
  681. for(var i=0; i < yy2.length; i++) { (yy2.charCodeAt(i) > 255) ? xx2 += 2 : xx2 += 1; }
  682. if (bool_etc.value == true) {
  683. if (utlf_isNull(ipt_etc1.value)) {
  684. sysf_messageBox("1번의 기타를 선택하였으므로 해당 내용을","C001");
  685. return;
  686. } else if ( xx1 < 5 || xx1 > 40 ) {
  687. sysf_messageBox("1번 기타의 내용은 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 까지 입니다.","I");
  688. return;
  689. }
  690. }
  691. if (bool_item5.value == true) {
  692. if (utlf_isNull(txt_etc2.value)) {
  693. sysf_messageBox("5번 항목을 선택하였으므로 해당 내용을","C001");
  694. return;
  695. } else if ( xx2 < 10 || xx2 > 80 ) {
  696. sysf_messageBox("5번 기타항목의 내용은 최소 : 한글 5자, 영어 10자 최대 : 한글 40자, 영어 80자 까지 입니다.","I");
  697. return;
  698. }
  699. }
  700. if((ds_rarediagappinfo.getColumn(0,"orddeptcd") == sysf_getUserInfo("dutplcecd")) && (sysf_getUserInfo("jobkindcd") == "0330") && (sysf_getUserInfo("jobposcd") != "1799")){ // 0330 : 의사, 1799 : 인턴
  701. var oParam = {};
  702. oParam.id = "TXMMO12205";
  703. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  704. oParam.method = "reqExeUpdateRareDiagApp";
  705. oParam.inds = "rarediagappinfo=ds_rarediagappinfo diagappmthinfo=ds_diagappmthinfo";
  706. oParam.async = false;
  707. var bSaved = tranf_submit(oParam);
  708. if(bSaved) {
  709. var curOpenObj = frmf_findPopup("SPMMO21700"); //활성화된 산정특례 오픈 화면 object loading
  710. if(!utlf_isNull(curOpenObj)) curOpenObj.fReqGetOrdList();
  711. sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록 신청서가 수정","I001");
  712. this.close();
  713. } else {
  714. sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록 신청서 수정을 ","E009");
  715. }
  716. } else {
  717. sysf_messageBox("수정할 수 있는 ","E002");
  718. btn_save.visible = false; //저장
  719. btn_del.visible = false; //삭제
  720. btn_upt.visible = false; //수정
  721. }
  722. }
  723. /****************************************************************************************
  724. * Components : Button
  725. * Components ID : btn_del
  726. * Event : onclick
  727. * Argument : 01.obj : Object Event has occurred
  728. * : 02.e : Event Object
  729. * Description : 삭제 버튼 클릭
  730. ****************************************************************************************/
  731. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  732. {
  733. if((ds_rarediagappinfo.getColumn(0,"orddeptcd") == sysf_getUserInfo("dutplcecd")) && (sysf_getUserInfo("jobkindcd") == "0330") && (sysf_getUserInfo("jobposcd") != "1799")){ // 0330 : 의사
  734. var oParam = {};
  735. oParam.id = "TXMMO12204";
  736. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  737. oParam.method = "reqExeDeleteRareDiagApp";
  738. oParam.inds = "rarediagappinfo=ds_rarediagappinfo";
  739. oParam.async = false;
  740. var bSaved = tranf_submit(oParam);
  741. if(bSaved) {
  742. var curOpenObj = frmf_findPopup("SPMMO21700"); //활성화된 산정특례 오픈 화면 object loading
  743. if(!utlf_isNull(curOpenObj)) curOpenObj.fReqGetOrdList();
  744. sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록신청서가 삭제","I001");
  745. this.close();
  746. }else{
  747. sysf_messageBox(ds_rarediagappinfo.getColumn(0,"rgstkindnm") + " 등록신청서 삭제를 ","E009");
  748. }
  749. } else {
  750. sysf_messageBox("삭제할 수 있는 ","E002");
  751. btn_save.visible = false; //저장
  752. btn_del.visible = false; //삭제
  753. btn_upt.visible = false; //수정
  754. this.close();
  755. }
  756. }
  757. /****************************************************************************************
  758. * Components : Button
  759. * Components ID : btn_save
  760. * Event : onclick
  761. * Argument : 01.obj : Object Event has occurred
  762. * : 02.e : Event Object
  763. * Description : 저장 버튼 클릭
  764. ****************************************************************************************/
  765. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  766. {
  767. //20191114 이돈희 : 중증화상이면서 타 요양기관의 검사 결과 입력시 오류
  768. if(ds_rarediagappinfo.getColumn(0, "rgstkindcd") != "09"){
  769. if((ds_diagappmthinfo.getColumn(0, "mth1113") == true)
  770. || (ds_diagappmthinfo.getColumn(0, "mth1214") == true)
  771. || (ds_diagappmthinfo.getColumn(0, "mth1315") == true)
  772. || (ds_diagappmthinfo.getColumn(0, "mth1416") == true)
  773. || (ds_diagappmthinfo.getColumn(0, "mth1517") == true)){
  774. sysf_messageBox("결핵인 경우에만 타 요양기관의 검사 결과를 입력 할 수 있습니다.", "I003");
  775. return;
  776. }
  777. }
  778. if((sysf_getUserInfo("jobkindcd") != "0330")){ // 0330 : 의사
  779. sysf_messageBox("의사만 저장 가능 합니다.", "I003");
  780. return;
  781. }
  782. var cncrdiagcnfmdd = ds_rarediagappinfo.getColumn(0,"cncrdiagcnfmdd");
  783. if (!utlf_isValidDateTime(cncrdiagcnfmdd, "YYYYMMDD")) {
  784. sysf_messageBox("진단 확인일은", "I003");
  785. return;
  786. }
  787. // 허만호, 2015.07.28 소스 현행화 s
  788. if(cncrdiagcnfmdd > utlf_getCurrentDate() ) {
  789. sysf_messageBox("진단 확인일을 미래일자로 입력 할 수 없습니다.", "I999");
  790. return;
  791. }
  792. if(cncrdiagcnfmdd < ((utlf_getCurrentDate().toDate()).getAddDate(-1,"M")).getDateFormat() ) {
  793. sysf_messageBox("진단 확인일을 최근 1달이내의 날짜로 입력 하셔야 합니다.", "I999");
  794. return;
  795. }
  796. // 허만호, 2015.07.28 소스 현행화 e
  797. var yy1 = utlf_transNullToEmpty(ipt_etc1.value);
  798. var yy2 = utlf_transNullToEmpty(txt_etc2.value);
  799. //20190220 이돈희 : 양쪽에 공백 제거
  800. yy1 = yy1.trimLeft();
  801. yy1 = yy1.trimRight();
  802. yy2 = yy2.trimLeft();
  803. yy2 = yy2.trimRight();
  804. var xx1 = 0;
  805. for(var i=0; i < yy1.length; i++) { (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1; }
  806. var xx2 = 0;
  807. for(var i=0; i < yy2.length; i++) { (yy2.charCodeAt(i) > 255) ? xx2 += 2 : xx2 += 1; }
  808. if (bool_etc.value == true) {
  809. if (utlf_isNull(ipt_etc1.value)) {
  810. sysf_messageBox("1번의 기타항목을 선택하였으므로 해당 내용을","C001");
  811. return;
  812. } else if ( xx1 < 5 || xx1 > 40 ) {
  813. sysf_messageBox("1번 기타항목의 내용은 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 까지 입니다.","I");
  814. return;
  815. }
  816. }
  817. if (bool_item5.value == true) {
  818. if ( utlf_isNull(txt_etc2.value)) {
  819. sysf_messageBox("5번 항목을 선택하였으므로 해당 내용을","C001");
  820. return;
  821. } else if ( xx2 < 10 || xx2 > 80 ) {
  822. sysf_messageBox("5번 기타항목의 내용은 최소 : 한글 5자, 영어 10자 최대 : 한글 40자, 영어 80자 까지 입니다.","I");
  823. return;
  824. }
  825. }
  826. if(ds_main_cond.getColumn(0, "rgstkindcd") == "09"){
  827. if(bool_itemetc1.value == "false" && bool_itemetc2.value == "false" && bool_itemetc3.value == "false" && bool_itemetc4.value == "false" && bool_itemetc5.value == "false"){
  828. sysf_messageBox("결핵의 경우 타 요양기관의 검사 결과를 입력하셔야 합니다.","I");
  829. return;
  830. }
  831. }
  832. //20190605 이돈희 : 산정특례의 신청서 작성 구분값(진단인증저장시 : A, 그 외 ; M)
  833. var sAutoManual = opener.frmf_getParameter("SPMMO20000_automanual");
  834. if(utlf_isNull(sAutoManual)){
  835. sAutoManual = "M";
  836. }
  837. ds_rarediagappinfo.addColumn("automanual", "string");
  838. ds_rarediagappinfo.setColumn(0, "automanual", sAutoManual);
  839. var oParam = {};
  840. oParam.id = "TXMMO20001";
  841. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  842. oParam.method = "reqExeSaveRareDiagApp";
  843. oParam.inds = "rarediagappinfo=ds_rarediagappinfo diagappmthinfo=ds_diagappmthinfo";
  844. oParam.async = false;
  845. var bSaved = tranf_submit(oParam);
  846. if(bSaved){
  847. var curOpenObj = frmf_findPopup("SPMMO21700"); //활성화된 산정특례 오픈 화면 object loading
  848. if(!utlf_isNull(curOpenObj)) curOpenObj.fReqGetOrdList();
  849. if(frmf_checkOpener()) opener.frmf_setParameter("SPMMO20000_save", "Y"); // 처방 저장시 작성 여부를 체크 하기 위해 추가. 2012.02.28 엄영만
  850. this.close();
  851. } else {
  852. sysf_messageBox("저장", "E009");
  853. }
  854. }
  855. /****************************************************************************************
  856. * Components : Button
  857. * Components ID : btn_exit
  858. * Event : onclick
  859. * Argument : 01.obj : Object Event has occurred
  860. * : 02.e : Event Object
  861. * Description : 종료 버튼 클릭
  862. ****************************************************************************************/
  863. function btn_exit_onclick(obj:Button, e:ClickEventInfo)
  864. {
  865. this.close();
  866. }
  867. //=======================================================================================
  868. // Function
  869. //---------------------------------------------------------------------------------------
  870. var nAmount = 0;
  871. function grd_diaglist_onmousewheel(obj:Grid, e:MouseWheelEventInfo)
  872. {
  873. nAmount = obj.vscrollbar.pos;
  874. }
  875. function grd_diaglist_onvscroll(obj:Grid, e:ScrollEventInfo)
  876. {
  877. if( e.type == "wheeldown" || e.type == "linedown"){
  878. nAmount += 100;
  879. obj.vscrollbar.pos = nAmount;
  880. }else if(e.type == "wheelup" || e.type == "lineup"){
  881. nAmount -= 100;
  882. obj.vscrollbar.pos = nAmount;
  883. }else if( e.type == "track" ){
  884. nAmount = obj.vscrollbar.pos;
  885. }
  886. }
  887. //진단 조회 버튼 클릭 이벤트 처리
  888. function Button03_onclick(obj:Button, e:ClickEventInfo)
  889. {
  890. lf_prcpModal ("SPMMO03100", 5, 40);
  891. if ( frmf_getParameter( "SPMMO03100_rtn_useyn" ) == "Y" ) {
  892. var sDiagInfo = frmf_getParameter("SPMMO03100_rtn");
  893. var nDiagRow = sDiagInfo.split ( "▩" ).length;
  894. for ( var i = 0; i < nDiagRow - 1; i++ ) {
  895. var sIcd10Cd = lf_getArrayData ( sDiagInfo, i, 8, "▩", "▦" );
  896. var sDiagCd = lf_getArrayData ( sDiagInfo, i, 9, "▩", "▦" );
  897. ds_rarediagappinfo.setColumn(0,"icd10cd", sIcd10Cd); //진단코드
  898. ds_rarediagappinfo.setColumn(0,"maindiagcd", sDiagCd); //진단코드
  899. break;
  900. }
  901. frmf_setParameter( "SPMMO03100_rtn_useyn", "" );
  902. ds_main_cond.setColumn(0,"rgstkindcd", ds_rarediagappinfo.getColumn(0, "rgstkindcd"));
  903. ds_main_cond.setColumn(0,"icd10cd", ds_rarediagappinfo.getColumn(0, "icd10cd"));
  904. ds_main_cond.setColumn(0,"diagcd", ds_rarediagappinfo.getColumn(0, "maindiagcd"));
  905. getRareAppInfo(); // 신청서 정보 조회
  906. }
  907. }
  908. //신청서 구분 콤보 아이템 변경 이벤트 처리
  909. function combo00_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  910. {
  911. ds_main_cond.setColumn(0,"rgstkindcd", ds_rarediagappinfo.getColumn(0, "rgstkindcd"));
  912. getRareAppInfo(); // 신청서 정보 조회
  913. }
  914. //영상검사-기타 체크박스 클릭 이벤트 처리
  915. function bool_etc_onclick(obj:CheckBox, e:ClickEventInfo)
  916. {
  917. if (obj.value == true) {
  918. ipt_etc1.enable = true;
  919. } else {
  920. ds_diagappmthinfo.setColumn(0,"mth0506","");
  921. ipt_etc1.enable = false;
  922. }
  923. }
  924. //임상적소견 체크박스 클릭 이벤트 처리
  925. function bool_item5_onclick(obj:CheckBox, e:ClickEventInfo)
  926. {
  927. if (obj.value == true) {
  928. txt_etc2.enable = true;
  929. } else {
  930. ds_diagappmthinfo.setColumn(0,"mth0911","");
  931. txt_etc2.enable = false;
  932. }
  933. }
  934. //타 요양기관의 검사 결과 - 영상검사 체크박스 클릭 이벤트 처리
  935. function bool_itemetc2_onclick(obj:CheckBox, e:ClickEventInfo)
  936. {
  937. //체크한 경우 없음 체크박스의 체크 해제
  938. if(obj.value == true){
  939. ds_diagappmthinfo.setColumn(0, "mth1113", false);
  940. }
  941. }
  942. //타 요양기관의 검사 결과 - 도말배양검사 체크박스 클릭 이벤트 처리
  943. function bool_itemetc3_onclick(obj:CheckBox, e:ClickEventInfo)
  944. {
  945. //체크한 경우 없음 체크박스의 체크 해제
  946. if(obj.value == true){
  947. ds_diagappmthinfo.setColumn(0, "mth1113", false);
  948. }
  949. }
  950. //타 요양기관의 검사 결과 - 조직학적검사 체크박스 클릭 이벤트 처리
  951. function bool_itemetc4_onclick(obj:CheckBox, e:ClickEventInfo)
  952. {
  953. //체크한 경우 없음 체크박스의 체크 해제
  954. if(obj.value == true){
  955. ds_diagappmthinfo.setColumn(0, "mth1113", false);
  956. }
  957. }
  958. //타 요양기관의 검사 결과 - 기타검사 체크박스 클릭 이벤트 처리
  959. function bool_itemetc5_onclick(obj:CheckBox, e:ClickEventInfo)
  960. {
  961. //체크한 경우 없음 체크박스의 체크 해제
  962. if(obj.value == true){
  963. ds_diagappmthinfo.setColumn(0, "mth1113", false);
  964. }
  965. }
  966. function bool_itemetc1_onclick(obj:CheckBox, e:ClickEventInfo)
  967. {
  968. //체크한 경우 타 요양기관의 검사 체크박스 체크 해제
  969. if(obj.value == true){
  970. ds_diagappmthinfo.setColumn(0, "mth1214", false);
  971. ds_diagappmthinfo.setColumn(0, "mth1315", false);
  972. ds_diagappmthinfo.setColumn(0, "mth1416", false);
  973. ds_diagappmthinfo.setColumn(0, "mth1517", false);
  974. }
  975. }
  976. function Radio00_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  977. {
  978. if(obj.value == "N"){
  979. ds_main_cond.setColumn(0,"rgstkindcd", "09");
  980. //신청 구분을 신규등록으로 설정 및 신청 구분 활성화 처리
  981. ds_main_cond.setColumn(0, "reregyn", "N");
  982. combo01.enable = true;
  983. }
  984. getRareAppInfo(); // 신청서 정보 조회
  985. }
  986. function combo01_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  987. {
  988. ds_main_cond.setColumn(0, "reregyn", obj.value);
  989. getRareAppInfo(); // 신청서 정보 조회
  990. }
  991. function caption14_onclick(obj:Static, e:ClickEventInfo)
  992. {
  993. //자동, 수동 라디오 버튼 활성화
  994. iClickNum = iClickNum + 1;
  995. if(iClickNum == 10) {
  996. Radio00.visible = true;
  997. }
  998. }
  999. ]]></Script>
  1000. </Form>
  1001. </FDL>