SPPMC06900_사생활보호관리.xfdl 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPPMC06900" position="absolute 0 0 702 505" titletext="사생활보호관리" onload="SPPMC06900_onload" onclose="SPPMC06900_onclose">
  5. <Layouts>
  6. <Layout>
  7. <Static text="사생활보호관리" position="absolute 0 0 130 25" id="caption1" class="tit_1"/>
  8. <Tab position="absolute 0 28 700 496" id="switch1" class="sw_box">
  9. <Tabpages>
  10. <Tabpage text="세부정보" id="case1">
  11. <Layouts>
  12. <Layout width="600" height="312">
  13. <Static text="차트번호" position="absolute 5 5 84 29" align="align:left middle;" id="caption2" class="cell_1"/>
  14. <Edit position="absolute 85 5 165 29" id="ipt_cardno" class="input_default" enable="false"/>
  15. <Static text="환자성명" position="absolute 170 5 249 29" align="align:left middle;" id="caption3" class="cell_1"/>
  16. <Edit position="absolute 250 5 330 29" id="input1" class="input_default" enable="false"/>
  17. <Static text="보호대상" position="absolute 5 55 84 104" align="align:left middle;" id="caption4" class="cell_1"/>
  18. <Static text="보호내용" position="absolute 5 105 84 129" align="align:left middle;" id="caption5" class="cell_1"/>
  19. <Static text="비고" position="absolute 5 130 84 229" align="align:left middle;" id="caption6" class="cell_1"/>
  20. <TextArea position="absolute 85 130 695 229" id="textarea1" taborder="3" scrollbars="autovert" wordwrap="word"/>
  21. <Static text="* 체크대상에게로의 정보제공을 희망하지 않습니다." position="absolute 88 80 695 104" id="caption7" style="color:red;font:Dotum,9,bold;"/>
  22. <Static text="주민번호" position="absolute 335 5 414 29" align="align:left middle;" id="caption8" class="cell_1"/>
  23. <Edit position="absolute 415 5 494 29" id="input2" class="input_default" enable="false"/>
  24. <Static text="-" position="absolute 495 5 504 29" id="caption9" style="align:center middle;"/>
  25. <Edit position="absolute 505 5 585 29" id="input3" class="input_default" enable="false"/>
  26. <Button position="absolute 635 410 695 434" id="btn_confirm" class="btn4" taborder="4" text="저장" onclick="switch1_case1_btn_confirm_onclick"/>
  27. <CheckBox position="absolute 570 410 585 434" id="bool1" falsevalue="N" truevalue="Y"/>
  28. <Edit position="absolute 85 230 215 254" id="input6" class="input_default" enable="false"/>
  29. <Static text="최종수정자" position="absolute 5 230 84 254" align="align:left middle;" id="caption12" class="cell_1"/>
  30. <MaskEdit position="absolute 550 230 695 254" id="input7" enable="false" mask="@@@@-@@-@@ @@:@@" type="string" maskchar=" " style=":disabled {align:left middle;}" displaynulltext=" "/>
  31. <Edit position="absolute 85 255 215 279" id="input8" class="input_default" enable="false"/>
  32. <Static text="최초등록자" position="absolute 5 255 84 279" align="align:left middle;" id="caption14" class="cell_1"/>
  33. <MaskEdit position="absolute 550 255 695 279" id="input9" enable="false" mask="@@@@-@@-@@ @@:@@" type="string" maskchar=" " style=":disabled {align:left middle;}" displaynulltext=" "/>
  34. <Edit position="absolute 320 230 465 254" id="input10" class="input_default" enable="false"/>
  35. <Edit position="absolute 320 255 465 279" id="input11" class="input_default" enable="false"/>
  36. <Static text="최종수정자부서" position="absolute 220 230 319 254" align="align:left middle;" id="caption13" class="cell_1"/>
  37. <Static text="최초등록자부서" position="absolute 220 255 319 279" align="align:left middle;" id="caption15" class="cell_1"/>
  38. <Static text="최종수정일" position="absolute 470 230 549 254" align="align:left middle;" id="caption16" class="cell_1"/>
  39. <Static text="최초등록일" position="absolute 470 255 549 279" align="align:left middle;" id="caption17" class="cell_1"/>
  40. <Static text="해제" position="absolute 590 410 620 434" id="caption18"/>
  41. <Static text="신청자" position="absolute 5 30 84 54" align="align:left middle;" id="caption19" class="cell_1"/>
  42. <Static text="기타" position="absolute 475 30 504 54" id="caption20"/>
  43. <Edit position="absolute 505 30 695 54" id="input12" class="input_default"/>
  44. <Static text="기타" position="absolute 475 55 502 79" id="caption21"/>
  45. <Edit position="absolute 505 55 695 79" id="input13" class="input_default"/>
  46. <Static text="기타" position="absolute 475 105 500 129" id="caption22"/>
  47. <Edit position="absolute 505 105 695 129" id="input14" class="input_default"/>
  48. <Static text="* 보호해제시 '해제' 체크 후 반드시 저장!!!" position="absolute 330 410 560 434" id="caption25" style="color:red;"/>
  49. <cp_checkboxList id="checkbox3" taborder="5" scrollbars="none" position="absolute 85 30 470 54" style="background:transparent;align:middle;" col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  50. <cp_checkboxList id="checkbox1" taborder="6" scrollbars="none" position="absolute 85 55 470 79" style="background:transparent;align:middle;" col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  51. <cp_checkboxList id="checkbox2" taborder="7" scrollbars="none" position="absolute 85 105 470 129" style="background:transparent;align:middle;" col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  52. <Static id="caption00" text="최초등록자" class="cell_1" position="absolute 5 280 84 400"/>
  53. <Div id="import1" taborder="8" url="pam_pamcomnxp::SPPAO02102_전자서명입력_OCX.xfdl" position="absolute 85 280 327 403"/>
  54. <Button id="Button00" taborder="9" text="서명" position="absolute 18 354 64 374" class="btn2" onclick="switch1_case1_Button00_onclick"/>
  55. </Layout>
  56. </Layouts>
  57. </Tabpage>
  58. <Tabpage text="대상목록" id="case2">
  59. <Layouts>
  60. <Layout>
  61. <Grid position="absolute 5 44 695 434" id="datagrid1" binddataset="ds_privacylist" cellsizingtype="both" cellsizebandtype="allband" oncelldblclick="switch1_case2_datagrid1_oncelldblclick">
  62. <Formats>
  63. <Format id="default">
  64. <Columns>
  65. <Column size="25" band="left"/>
  66. <Column size="60"/>
  67. <Column size="65"/>
  68. <Column size="30"/>
  69. <Column size="50"/>
  70. <Column size="55"/>
  71. <Column size="100"/>
  72. <Column size="100"/>
  73. <Column size="100"/>
  74. <Column size="236"/>
  75. <Column size="60"/>
  76. <Column size="80"/>
  77. <Column size="105"/>
  78. <Column size="60"/>
  79. <Column size="80"/>
  80. <Column size="105"/>
  81. <Column size="35"/>
  82. </Columns>
  83. <Rows>
  84. <Row size="24" band="head"/>
  85. <Row size="24"/>
  86. </Rows>
  87. <Band id="head">
  88. <Cell/>
  89. <Cell col="1" text="등록번호"/>
  90. <Cell col="2" text="성명"/>
  91. <Cell col="3" text="구분"/>
  92. <Cell col="4" text="주민번호"/>
  93. <Cell col="5" text="주민번호"/>
  94. <Cell col="6" text="신청자"/>
  95. <Cell col="7" text="보호대상"/>
  96. <Cell col="8" text="보호내용"/>
  97. <Cell col="9" text="비고"/>
  98. <Cell col="10" colspan="3" text="최초등록자/부서/일시" taborder="undefined"/>
  99. <Cell col="13" colspan="3" text="최종수정자/부서/일시" taborder="undefined"/>
  100. <Cell col="16" text="해제"/>
  101. </Band>
  102. <Band id="body">
  103. <Cell celltype="head" text="expr:currow + 1"/>
  104. <Cell col="1" text="bind:pid"/>
  105. <Cell col="2" text="bind:hngnm"/>
  106. <Cell col="3" style="align:center middle;" text="bind:histstat"/>
  107. <Cell col="4" text="bind:rrgstno1"/>
  108. <Cell col="5" text="bind:rrgstno2"/>
  109. <Cell col="6" text="bind:request"/>
  110. <Cell col="7" text="bind:target"/>
  111. <Cell col="8" text="bind:type"/>
  112. <Cell col="9" text="bind:rmk"/>
  113. <Cell col="10" text="bind:fstrgstrnm"/>
  114. <Cell col="11" text="bind:fstrgstrdeptnm"/>
  115. <Cell col="12" displaytype="date" text="bind:fstrgstdt" mask="yyyy-MM-dd hh:mm" calendardisplaynulltype="none"/>
  116. <Cell col="13" text="bind:lastupdtrnm"/>
  117. <Cell col="14" text="bind:lastupdtrdeptnm"/>
  118. <Cell col="15" displaytype="date" text="bind:lastupdtdt" mask="yyyy-MM-dd hh:mm" calendardisplaynulltype="none"/>
  119. <Cell col="16" style="align:center middle;" text="bind:endyn"/>
  120. </Band>
  121. </Format>
  122. </Formats>
  123. </Grid>
  124. <Div id="grp" taborder="5" position="absolute 5 5 695 40" class="div_SA2">
  125. <Layouts>
  126. <Layout width="590" height="30">
  127. <CheckBox id="bool2" taborder="0" position="absolute 320 5 335 30" falsevalue="N" truevalue="Y" anchor="default"/>
  128. <Static id="caption23" text="해제포함" position="absolute 340 5 390 30" anchor="default"/>
  129. <CheckBox id="bool3" taborder="1" position="absolute 405 5 420 30" falsevalue="N" truevalue="Y" onclick="switch1_case2_grp_bool3_onclick" anchor="default"/>
  130. <Static id="caption24" text="이력포함" position="absolute 425 5 475 30" anchor="default"/>
  131. <Button id="button3" taborder="2" text="조회" class="btn1" position="absolute 625 5 685 30" onclick="switch1_case2_grp_button3_onclick" anchor="default"/>
  132. <Edit id="input4" taborder="3" position="absolute 90 5 170 30" anchor="default"/>
  133. <Static id="caption10" text="등록 번호 :" class="search_name" position="absolute 10 5 89 30" anchor="default"/>
  134. <Static id="caption11" text="성명 :" class="search_name" position="absolute 180 5 225 30" anchor="default"/>
  135. <Edit id="input5" taborder="4" position="absolute 230 5 310 30" anchor="default"/>
  136. </Layout>
  137. </Layouts>
  138. </Div>
  139. </Layout>
  140. </Layouts>
  141. </Tabpage>
  142. </Tabpages>
  143. </Tab>
  144. </Layout>
  145. </Layouts>
  146. <Objects>
  147. <Dataset id="ds_privacylist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  148. <ColumnInfo>
  149. <Column id="no" type="STRING" size="256" sumtext="일련번호"/>
  150. <Column id="instcd" type="STRING" size="256" sumtext="기관기호"/>
  151. <Column id="pid" type="STRING" size="256" sumtext="차트번호"/>
  152. <Column id="hngnm" type="STRING" size="256" sumtext="성명"/>
  153. <Column id="rrgstno1" type="STRING" size="256" sumtext="주민번호1"/>
  154. <Column id="rrgstno2" type="STRING" size="256" sumtext="주민번호2"/>
  155. <Column id="request" type="STRING" size="256" sumtext="신청자"/>
  156. <Column id="requestetc" type="STRING" size="256" sumtext="신청자기타"/>
  157. <Column id="target" type="STRING" size="256" sumtext="보호대상"/>
  158. <Column id="targetetc" type="STRING" size="256" sumtext="보호대상기타"/>
  159. <Column id="type" type="STRING" size="256" sumtext="보호내용"/>
  160. <Column id="typeetc" type="STRING" size="256" sumtext="보호내용기타"/>
  161. <Column id="rmk" type="STRING" size="256" sumtext="비고"/>
  162. <Column id="endyn" type="STRING" size="256" sumtext="종료여부"/>
  163. <Column id="histstat" type="STRING" size="256" sumtext="이력상태"/>
  164. <Column id="fstrgstrnm" type="STRING" size="256" sumtext="최초등록자"/>
  165. <Column id="fstrgstrdeptnm" type="STRING" size="256" sumtext="최초등록자부서"/>
  166. <Column id="fstrgstdt" type="STRING" size="256" sumtext="최초등록일시"/>
  167. <Column id="lastupdtrnm" type="STRING" size="256" sumtext="최종등록자"/>
  168. <Column id="lastupdtrdeptnm" type="STRING" size="256" sumtext="최종등록자부서"/>
  169. <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종등록일시"/>
  170. </ColumnInfo>
  171. </Dataset>
  172. <Dataset id="ds_privacydesc" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  173. <ColumnInfo>
  174. <Column id="no" type="STRING" size="256" sumtext="일련번호"/>
  175. <Column id="instcd" type="STRING" size="256" sumtext="기관기호"/>
  176. <Column id="pid" type="STRING" size="256" sumtext="차트번호"/>
  177. <Column id="hngnm" type="STRING" size="256" sumtext="성명"/>
  178. <Column id="rrgstno1" type="STRING" size="256" sumtext="주민번호1"/>
  179. <Column id="rrgstno2" type="STRING" size="256" sumtext="주민번호2"/>
  180. <Column id="request" type="STRING" size="256" sumtext="신청자"/>
  181. <Column id="requestetc" type="STRING" size="256" sumtext="신청자기타"/>
  182. <Column id="target" type="STRING" size="256" sumtext="보호대상"/>
  183. <Column id="targetetc" type="STRING" size="256" sumtext="보호대상기타"/>
  184. <Column id="type" type="STRING" size="256" sumtext="보호내용"/>
  185. <Column id="typeetc" type="STRING" size="256" sumtext="보호내용기타"/>
  186. <Column id="rmk" type="STRING" size="256" sumtext="비고"/>
  187. <Column id="endyn" type="STRING" size="256" sumtext="종결여부"/>
  188. <Column id="fstrgstrid" type="STRING" size="256" sumtext="최초등록자ID"/>
  189. <Column id="fstrgstrnm" type="STRING" size="256" sumtext="최초등록자"/>
  190. <Column id="fstrgstrdeptcd" type="STRING" size="256" sumtext="최초등록자부서CD"/>
  191. <Column id="fstrgstrdeptnm" type="STRING" size="256" sumtext="최초등록자부서"/>
  192. <Column id="fstrgstdt" type="STRING" size="256" sumtext="최초등록일시"/>
  193. <Column id="lastupdtrid" type="STRING" size="256" sumtext="최종등록자ID"/>
  194. <Column id="lastupdtrnm" type="STRING" size="256" sumtext="최종등록자"/>
  195. <Column id="lastupdtrdeptcd" type="STRING" size="256" sumtext="최종등록자부서CD"/>
  196. <Column id="lastupdtrdeptnm" type="STRING" size="256" sumtext="최종등록자부서"/>
  197. <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종등록일시"/>
  198. <Column id="elctsignkey" type="STRING" size="256"/>
  199. <Column id="elctsigncnts" type="STRING" size="256"/>
  200. </ColumnInfo>
  201. <Rows>
  202. <Row>
  203. <Col id="no"/>
  204. <Col id="pid"/>
  205. <Col id="hngnm"/>
  206. <Col id="rrgstno1"/>
  207. <Col id="rrgstno2"/>
  208. <Col id="request"/>
  209. <Col id="requestetc"/>
  210. <Col id="target"/>
  211. <Col id="targetetc"/>
  212. <Col id="type"/>
  213. <Col id="typeetc"/>
  214. <Col id="rmk"/>
  215. <Col id="endyn"/>
  216. <Col id="lastupdtrnm"/>
  217. <Col id="lastupdtdt"/>
  218. <Col id="lastupdtrdeptnm"/>
  219. <Col id="fstrgstrid"/>
  220. <Col id="fstrgstrnm"/>
  221. <Col id="fstrgstdt"/>
  222. <Col id="fstrgstrdeptcd"/>
  223. <Col id="fstrgstrdeptnm"/>
  224. </Row>
  225. </Rows>
  226. </Dataset>
  227. <Dataset id="ds_checkbox3" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  228. <ColumnInfo>
  229. <Column id="label" type="STRING" size="256"/>
  230. <Column id="value" type="STRING" size="256"/>
  231. </ColumnInfo>
  232. <Rows>
  233. <Row>
  234. <Col id="label">환자본인</Col>
  235. <Col id="value">환자본인</Col>
  236. </Row>
  237. <Row>
  238. <Col id="label">보호자</Col>
  239. <Col id="value">보호자</Col>
  240. </Row>
  241. </Rows>
  242. </Dataset>
  243. <Dataset id="ds_checkbox2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  244. <ColumnInfo>
  245. <Column id="label" type="STRING" size="256"/>
  246. <Column id="value" type="STRING" size="256"/>
  247. </ColumnInfo>
  248. <Rows>
  249. <Row>
  250. <Col id="label">병명</Col>
  251. <Col id="value">병명</Col>
  252. </Row>
  253. <Row>
  254. <Col id="label">치료내용</Col>
  255. <Col id="value">치료내용</Col>
  256. </Row>
  257. <Row>
  258. <Col id="label">치료비</Col>
  259. <Col id="value">치료비</Col>
  260. </Row>
  261. <Row>
  262. <Col id="label">병실위치</Col>
  263. <Col id="value">병실위치</Col>
  264. </Row>
  265. <Row>
  266. <Col id="label">ARS/유선안내</Col>
  267. <Col id="value">ARS/유선안내</Col>
  268. </Row>
  269. </Rows>
  270. </Dataset>
  271. <Dataset id="ds_checkbox1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  272. <ColumnInfo>
  273. <Column id="label" type="STRING" size="256"/>
  274. <Column id="value" type="STRING" size="256"/>
  275. </ColumnInfo>
  276. <Rows>
  277. <Row>
  278. <Col id="label">환자본인</Col>
  279. <Col id="value">환자본인</Col>
  280. </Row>
  281. <Row>
  282. <Col id="label">보호자</Col>
  283. <Col id="value">보호자</Col>
  284. </Row>
  285. <Row>
  286. <Col id="label">내원객</Col>
  287. <Col id="value">내원객</Col>
  288. </Row>
  289. </Rows>
  290. </Dataset>
  291. <Dataset id="ds_hidden_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  292. <ColumnInfo>
  293. <Column id="pid" type="STRING" size="256"/>
  294. <Column id="hngnm" type="STRING" size="256"/>
  295. <Column id="endyn" type="STRING" size="256"/>
  296. <Column id="histyn" type="STRING" size="256"/>
  297. </ColumnInfo>
  298. <Rows>
  299. <Row/>
  300. </Rows>
  301. </Dataset>
  302. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  303. <ColumnInfo>
  304. <Column id="pid" type="STRING" size="256"/>
  305. <Column id="endyn" type="STRING" size="256"/>
  306. </ColumnInfo>
  307. <Rows>
  308. <Row/>
  309. </Rows>
  310. </Dataset>
  311. </Objects>
  312. <Bind>
  313. <BindItem id="item0" compid="switch1.case1.ipt_cardno" propid="value" datasetid="ds_privacydesc" columnid="pid"/>
  314. <BindItem id="item1" compid="switch1.case1.input1" propid="value" datasetid="ds_privacydesc" columnid="hngnm"/>
  315. <BindItem id="item2" compid="switch1.case1.input2" propid="value" datasetid="ds_privacydesc" columnid="rrgstno1"/>
  316. <BindItem id="item3" compid="switch1.case1.input3" propid="value" datasetid="ds_privacydesc" columnid="rrgstno2"/>
  317. <BindItem id="item4" compid="switch1.case1.input12" propid="value" datasetid="ds_privacydesc" columnid="requestetc"/>
  318. <BindItem id="item5" compid="switch1.case1.input13" propid="value" datasetid="ds_privacydesc" columnid="targetetc"/>
  319. <BindItem id="item6" compid="switch1.case1.input14" propid="value" datasetid="ds_privacydesc" columnid="typeetc"/>
  320. <BindItem id="item7" compid="switch1.case1.textarea1" propid="value" datasetid="ds_privacydesc" columnid="rmk"/>
  321. <BindItem id="item8" compid="switch1.case1.input6" propid="value" datasetid="ds_privacydesc" columnid="lastupdtrnm"/>
  322. <BindItem id="item9" compid="switch1.case1.input10" propid="value" datasetid="ds_privacydesc" columnid="lastupdtrdeptnm"/>
  323. <BindItem id="item10" compid="switch1.case1.input7" propid="value" datasetid="ds_privacydesc" columnid="lastupdtdt"/>
  324. <BindItem id="item11" compid="switch1.case1.input8" propid="value" datasetid="ds_privacydesc" columnid="fstrgstrnm"/>
  325. <BindItem id="item12" compid="switch1.case1.input11" propid="value" datasetid="ds_privacydesc" columnid="fstrgstrdeptnm"/>
  326. <BindItem id="item13" compid="switch1.case1.input9" propid="value" datasetid="ds_privacydesc" columnid="fstrgstdt"/>
  327. <BindItem id="item14" compid="switch1.case1.bool1" propid="value" datasetid="ds_privacydesc" columnid="endyn"/>
  328. <BindItem id="item15" compid="switch1.case2.grp.input4" propid="value" datasetid="ds_hidden_cond" columnid="pid"/>
  329. <BindItem id="item16" compid="switch1.case2.grp.input5" propid="value" datasetid="ds_hidden_cond" columnid="hngnm"/>
  330. <BindItem id="item17" compid="switch1.case2.grp.bool2" propid="value" datasetid="ds_hidden_cond" columnid="endyn"/>
  331. <BindItem id="item18" compid="switch1.case2.grp.bool3" propid="value" datasetid="ds_hidden_cond" columnid="histyn"/>
  332. </Bind>
  333. <Script type="xscript4.0"><![CDATA[include 'com_commonxp::comm_main.xjs';
  334. var pid;
  335. var orgyn, orgendyn;
  336. var signyn;
  337. var arErrorCode = new HashArray();
  338. // 보호대상 체크박스 값 변경 이벤트
  339. function cbCheckbox1() {
  340. var obj = String(switch1.case1.checkbox1.getData()).replace(',', ' ');
  341. obj = utlf_transNullToEmpty(obj);
  342. ds_privacydesc.setColumn(0, 'target', obj);
  343. }
  344. // 보호내용 체크박스 값 변경 이벤트
  345. function cbCheckbox2() {
  346. var obj = String(switch1.case1.checkbox2.getData()).replace(',', ' ');
  347. obj = utlf_transNullToEmpty(obj);
  348. ds_privacydesc.setColumn(0, 'type', obj);
  349. }
  350. // 신청자 체크박스 값 변경 이벤트
  351. function cbCheckbox3() {
  352. var obj = String(switch1.case1.checkbox3.getData()).replace(',', ' ');
  353. obj = utlf_transNullToEmpty(obj);
  354. ds_privacydesc.setColumn(0, 'request', obj);
  355. }
  356. // 초기정보 관리 - 리스트에서 다른 환자의 정보가 수정되는 경우를 고려
  357. function saveOrgInfo() {
  358. // 호출시 전달된 환자가 아닌경우 체크
  359. if(ds_privacydesc.getColumn(0, 'pid') == pid){
  360. // 창닫기 시 사생활관리여부 전송용 종료플래그 백업
  361. // 조회 / 저장 이후 화면상에서의 값 변경이 저장없이도 그대로 인스턴스에 적용되기 때문
  362. if (!utlf_isNull(ds_privacydesc.getColumn(0, 'no'))) {
  363. orgyn = 'Y';
  364. orgendyn = ds_privacydesc.getColumn(0, 'endyn');
  365. }
  366. }
  367. }
  368. // 화면입력검증(필수체크 등) - 신청자, 보호대상, 보호내용은 필수
  369. function validateForm() {
  370. if(( utlf_isNull(ds_privacydesc.getColumn(0, "request")) && utlf_isNull(ds_privacydesc.getColumn(0, "requestetc")) )
  371. || ( utlf_isNull(ds_privacydesc.getColumn(0, "target")) && utlf_isNull(ds_privacydesc.getColumn(0, "targetetc")) )
  372. || ( utlf_isNull(ds_privacydesc.getColumn(0, "type")) && utlf_isNull(ds_privacydesc.getColumn(0, "typeetc")) )) {
  373. sysf_messageBox('신청자 / 보호대상 / 보호내용은 필수', 'E008');
  374. return false;
  375. }
  376. return true;
  377. }
  378. function SPPMC06900_onload(obj:Form, e:LoadEventInfo){
  379. // 폼 초기화
  380. frmf_initForm(obj);
  381. // 싸인창 초기화
  382. switch1.case1.import1.fsignpad_init();
  383. // 체크박스 리스트 초기화
  384. var prop1 = 'col=3,row=1,cellspacing=2,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow="visible"';
  385. switch1.case1.checkbox1.setInitComp(prop1, ds_checkbox1, 'value', 'label', 'cbCheckbox1');
  386. var prop2 = 'col=5,row=1,cellspacing=2,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow="visible"';
  387. switch1.case1.checkbox2.setInitComp(prop2, ds_checkbox2, 'value', 'label', 'cbCheckbox2');
  388. var prop3 = 'col=2,row=1,cellspacing=2,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow="visible"';
  389. switch1.case1.checkbox3.setInitComp(prop3, ds_checkbox3, 'value', 'label', 'cbCheckbox3');
  390. pid = opener.frmf_getParameter("SPPMC06900_PARM");
  391. // 검색조건 초기화
  392. ds_hidden_cond.setColumn(0, "endyn", "N");
  393. ds_hidden_cond.setColumn(0, "histyn", "N");
  394. // 환자가 선택되었을 경우에만 초기화처리 실시
  395. if (!utlf_isNull(pid)) {
  396. ds_privacydesc.setColumn(0, "pid", pid);
  397. dsf_createDsRow("ds_req", [{ col:"pid", type:"string", size:256, val:pid }], false);
  398. var oParam = {};
  399. oParam.id = "TRPMC06901";
  400. oParam.service = "patinfomngtapp.PatPrivacy";
  401. oParam.method = "reqGetPatPrivacyDesc";
  402. oParam.inds = "req=ds_req";
  403. oParam.outds = "ds_privacydesc=privacydesc";
  404. oParam.async = false;
  405. tranf_submit(oParam);
  406. // 초기정보 관리
  407. saveOrgInfo();
  408. // 콤보박스 리스트 값 설정
  409. switch1.case1.checkbox1.setData(utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'target')).split(' '), null, true);
  410. switch1.case1.checkbox2.setData(utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'type')).split(' '), null, true);
  411. switch1.case1.checkbox3.setData(utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'request')).split(' '), null, true);
  412. // 서명 존재하는 경우 표시
  413. if (!utlf_isNull(ds_privacydesc.getColumn(0, 'elctsigncnts'))) {
  414. switch1.case1.import1.fsignpad_view(ds_privacydesc.getColumn(0, "elctsignkey"), ds_privacydesc.getColumn(0, "elctsigncnts"));
  415. }
  416. }
  417. // 환자가 선택되지 않았을 경우 목록으로 이동
  418. else{
  419. switch1.tabindex = 1;
  420. }
  421. }
  422. // 저장 버튼 클릭 이벤트
  423. function switch1_case1_btn_confirm_onclick(obj:Button, e:ClickEventInfo){
  424. // 입력내용 검증 후 저장
  425. // 종료를 선택한 경우에는
  426. if (validateForm()) {
  427. // 노드 카피
  428. ds_send.copyData(ds_privacydesc);
  429. // 사용자정보 설정
  430. // 최초등록자정보의 설정은 최초등록시만
  431. if (utlf_isNull(ds_privacydesc.getColumn(0, 'fstrgstrid'))) {
  432. ds_send.setColumn(0, 'fstrgstrid', sysf_getUserId());
  433. ds_send.setColumn(0, 'fstrgstrdeptcd', sysf_getUserInfo('dutplcecd'));
  434. }
  435. ds_send.setColumn(0, 'lastupdtrid', sysf_getUserId());
  436. ds_send.setColumn(0, 'lastupdtrdeptcd', sysf_getUserInfo('dutplcecd'));
  437. // 확인서명 처리
  438. if (signyn == "Y") {
  439. var signData = switch1.case1.import1.fsignpad_save();
  440. ds_send.setColumn(0, "elctsignkey", signData.key);
  441. ds_send.setColumn(0, "elctsigncnts", signData.img);
  442. signyn = "N";
  443. }
  444. dsf_setTypeFormat(ds_send, "no:STRING");
  445. ds_send.setColumn(0, "no", utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'no')));
  446. // 저장
  447. var oParam = {};
  448. oParam.id = "TRPMC06902"; // TRPMC06901에서 TRPMC06902로 호출해야 함....
  449. oParam.service = "patinfomngtapp.PatPrivacy";
  450. oParam.method = "reqSetPatPrivacyDesc";
  451. oParam.inds = "req=ds_send";
  452. oParam.outds = "ds_privacydesc=privacydesc";
  453. oParam.async = false;
  454. oParam.callback = "cf_TRPMC06902";
  455. tranf_submit(oParam);
  456. if(arErrorCode.pop("TRPMC06902") < 0) {
  457. trace("arErrorCode : " + arErrorCode.toString());
  458. }
  459. // 초기정보 관리
  460. saveOrgInfo();
  461. // 싸인패드 닫기
  462. switch1.case1.import1.fsignpad_close();
  463. }
  464. }
  465. function cf_TRPMC06902(sSvcId, nErrorCode, sErrorMsg) {
  466. arErrorCode.push(sSvcId, nErrorCode);
  467. }
  468. // 이력포함 체크박스 클릭 이벤트
  469. function switch1_case2_grp_bool3_onclick(obj:CheckBox, e:ClickEventInfo) {
  470. if(obj.value == 'Y'){
  471. switch1.case2.grp.bool2.enable = false;
  472. ds_hidden_cond.setColumn(0, 'endyn', 'N');
  473. }
  474. else{
  475. switch1.case2.grp.bool2.enable = true;
  476. }
  477. }
  478. // 대상목록 스위치 조회 버튼 클릭 이벤트
  479. function switch1_case2_grp_button3_onclick(obj:Button, e:ClickEventInfo) {
  480. ds_send.copyData(ds_hidden_cond);
  481. // 대상목록 조회
  482. var oParam = {};
  483. oParam.id = "TRPMC06901";
  484. oParam.service = "patinfomngtapp.PatPrivacy";
  485. oParam.method = "reqGetPatPrivacyList";
  486. oParam.inds = "req=ds_send";
  487. oParam.outds = "ds_privacylist=privacylist";
  488. oParam.async = false;
  489. tranf_submit(oParam);
  490. }
  491. // 대상목록 그리드 더블 버튼 클릭 이벤트
  492. function switch1_case2_datagrid1_oncelldblclick(obj:Grid, e:GridClickEventInfo) {
  493. ds_privacydesc.clearData();
  494. ds_privacydesc.addRow();
  495. switch1.case1.checkbox1.setCheckAll(false, false);
  496. switch1.case1.checkbox2.setCheckAll(false, false);
  497. switch1.case1.checkbox3.setCheckAll(false, false);
  498. var pidVal = ds_privacylist.getColumn(obj.currentrow, 'pid');
  499. var histstat = ds_privacylist.getColumn(obj.currentrow, 'histstat');
  500. if(!utlf_isNull(pidVal)){
  501. // 이력이 아닐경우에만 세부정보로 이동
  502. if(histstat == 'Y'){
  503. ds_send.setColumn(0, 'pid', pidVal);
  504. // 세부정보 조회
  505. var oParam = {};
  506. oParam.id = "TRPMC06901";
  507. oParam.service = "patinfomngtapp.PatPrivacy";
  508. oParam.method = "reqGetPatPrivacyDesc";
  509. oParam.inds = "req=ds_send";
  510. oParam.outds = "ds_privacydesc=privacydesc";
  511. oParam.async = false;
  512. tranf_submit(oParam);
  513. // 콤보박스 리스트 값 설정
  514. switch1.case1.checkbox1.setData(utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'target')).split(' '), null, true);
  515. switch1.case1.checkbox2.setData(utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'type')).split(' '), null, true);
  516. switch1.case1.checkbox3.setData(utlf_transNullToEmpty(ds_privacydesc.getColumn(0, 'request')).split(' '), null, true);
  517. // 서명 존재하는 경우 표시
  518. if (!utlf_isNull(ds_privacydesc.getColumn(0, 'elctsigncnts'))) {
  519. switch1.case1.import1.fsignpad_view(ds_privacydesc.getColumn(0, "elctsignkey"), ds_privacydesc.getColumn(0, "elctsigncnts"));
  520. }
  521. // 초기정보 관리
  522. saveOrgInfo();
  523. // 세부정보 탭이동
  524. switch1.tabindex = 0;
  525. }
  526. else{
  527. sysf_messageBox('구분이 Y인 데이터만 수정이', 'I006');
  528. }
  529. }
  530. }
  531. function SPPMC06900_onclose(obj:Form, e:CloseEventInfo) {
  532. // 부모창 검증
  533. if (frmf_checkOpener()) {
  534. // 부모창의 인스턴스에 사생활관리여부를 생성
  535. opener.ds_hidden.setColumn(0, "patprivacyendyn", "");
  536. // 호출시 환자가 선택 + 저장된 정보 있음 + 해제가 아님
  537. if (!utlf_isNull(pid) && orgyn == "Y" && orgendyn == "N") {// initPid에서 pid로 변경함.
  538. opener.ds_hidden.setColumn(0, "patprivacyendyn", "N");
  539. } else {
  540. opener.ds_hidden.setColumn(0, "patprivacyendyn", "Y");
  541. }
  542. }
  543. // 부모창이 변경되었을 경우
  544. else {
  545. alert("상위화면이 변경되어 데이터를 전달할 수 없습니다.");
  546. }
  547. }
  548. /* 서명버튼 클릭 이벤트 */
  549. function switch1_case1_Button00_onclick(obj:Button, e:ClickEventInfo)
  550. {
  551. signyn = "Y";
  552. switch1.case1.import1.fsignpad_init();
  553. ds_privacydesc.setColumn(0, "elctsignkey", "");
  554. ds_privacydesc.setColumn(0, "elctsigncnts", "");
  555. switch1.case1.import1.fsignpad_request(0);
  556. switch1.case1.btn_confirm.setFocus();
  557. }
  558. ]]></Script>
  559. </Form>
  560. </FDL>