SPAHA00110_결과상담시간선택.xfdl 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPAHA00110" position="absolute 0 0 702 530" titletext="결과상담시간선택" oninit="SPAHA00110_oninit" onload="SPAHA00110_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption1" text="결과상담시간선택" class="tit_2" position="absolute 0 0 129 22"/>
  8. <Grid id="grd_rsrvtmlst" taborder="1" binddataset="ds_main_rsrvtmlst" useinputpanel="false" position="absolute 530 21 697 486" autoenter="select" autofittype="col" cellsizingtype="col" oncellclick="grd_rsrvtmlst_oncellclick" selecttype="multirow">
  9. <Formats>
  10. <Format id="default">
  11. <Columns>
  12. <Column size="26"/>
  13. <Column size="30"/>
  14. <Column size="109"/>
  15. <Column size="0"/>
  16. </Columns>
  17. <Rows>
  18. <Row size="24" band="head"/>
  19. <Row size="24"/>
  20. </Rows>
  21. <Band id="head">
  22. <Cell/>
  23. <Cell col="1" text="선택"/>
  24. <Cell col="2" text="예약시간"/>
  25. <Cell col="3" text="예약가능인원"/>
  26. </Band>
  27. <Band id="body">
  28. <Cell celltype="head" expr="currow+1"/>
  29. <Cell col="1" displaytype="checkbox" edittype="expr:readonly == 'true' ? 'none' : 'checkbox'" style="controlbackground:EXPR(readonly == 'true' ? 'darkgray': '');controlborder:1 solid #808080ff ;" text="bind:rsrvpsnnocnt"/>
  30. <Cell col="2" text="bind:rsrvtm" mask="##:##" maskchar=" "/>
  31. <Cell col="3" text="bind:psnnocnt"/>
  32. </Band>
  33. </Format>
  34. </Formats>
  35. </Grid>
  36. <Div id="grp_calendar" taborder="2" position="absolute 0 167 528 207" class="div_SA2">
  37. <Layouts>
  38. <Layout>
  39. <Button id="btn_preyear" taborder="1" class="icon_pre_year" position="absolute 165 12 181 28" onclick="grp_calendar_btn_preyear_onclick"/>
  40. <Button id="btn_nextyear" taborder="2" class="icon_next_year" position="absolute 341 12 357 28" onclick="grp_calendar_btn_nextyear_onclick"/>
  41. <Button id="btn_premonth" taborder="3" class="icon_pre_month" position="absolute 184 12 200 28" onclick="grp_calendar_btn_premonth_onclick"/>
  42. <Button id="btn_nextmonth" taborder="4" class="icon_next_month" position="absolute 322 12 338 28" onclick="grp_calendar_btn_nextmonth_onclick"/>
  43. <Edit id="opt_year" taborder="5" readonly="true" class="calendar_output" position="absolute 206 9 252 28" style="align:center middle;font:Dotum,9,bold;"/>
  44. <Edit id="opt_month" taborder="6" readonly="true" class="calendar_output" position="absolute 272 9 302 28" style="align:center middle;font:Dotum,9,bold;"/>
  45. <Static id="caption8" text="년" class="calendar_output" position="absolute 252 9 272 28" style="color:black;font:Dotum,9,bold;"/>
  46. <Static id="caption9" text="월" class="calendar_output" position="absolute 302 9 322 28" style="color:black;font:Dotum,9,bold;"/>
  47. </Layout>
  48. </Layouts>
  49. </Div>
  50. <Grid id="grd_calendar" taborder="3" useinputpanel="false" position="absolute 0 211 527 486" autoenter="select" autofittype="col" cellsizingtype="col" binddataset="ds_temp_calendar_weeklist_list" selecttype="cell" oncellclick="grd_calendar_oncellclick">
  51. <Formats>
  52. <Format id="default">
  53. <Columns>
  54. <Column size="40"/>
  55. <Column size="40"/>
  56. <Column size="40"/>
  57. <Column size="40"/>
  58. <Column size="40"/>
  59. <Column size="40"/>
  60. <Column size="40"/>
  61. </Columns>
  62. <Rows>
  63. <Row size="24" band="head"/>
  64. <Row size="24"/>
  65. <Row size="24"/>
  66. </Rows>
  67. <Band id="head">
  68. <Cell text="일"/>
  69. <Cell col="1" text="월"/>
  70. <Cell col="2" text="화"/>
  71. <Cell col="3" text="수"/>
  72. <Cell col="4" text="목"/>
  73. <Cell col="5" text="금"/>
  74. <Cell col="6" text="토"/>
  75. </Band>
  76. <Band id="body">
  77. <Cell rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  78. <Cell style="align:center middle;color:red;color2:red;" text="bind:sun" taborder="undefined"/>
  79. <Cell row="1" style="align:center middle;color:red;color2:red;" text="bind:sun_memo" taborder="undefined"/>
  80. </Cell>
  81. <Cell col="1" rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  82. <Cell style="align:center middle;" text="bind:mon"/>
  83. <Cell row="1" style="align:center middle;" text="bind:mon_memo"/>
  84. </Cell>
  85. <Cell col="2" rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  86. <Cell style="align:center middle;" text="bind:tue"/>
  87. <Cell row="1" style="align:center middle;" text="bind:tue_memo"/>
  88. </Cell>
  89. <Cell col="3" rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  90. <Cell style="align:center middle;" text="bind:wed"/>
  91. <Cell row="1" style="align:center middle;" text="bind:wed_memo"/>
  92. </Cell>
  93. <Cell col="4" rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  94. <Cell style="align:center middle;" text="bind:thu"/>
  95. <Cell row="1" style="align:center middle;" text="bind:thu_memo"/>
  96. </Cell>
  97. <Cell col="5" rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  98. <Cell style="align:center middle;" text="bind:fri"/>
  99. <Cell row="1" style="align:center middle;" text="bind:fri_memo"/>
  100. </Cell>
  101. <Cell col="6" rowspan="2" style="selectbackground:#daa7d9ff;" taborder="undefined">
  102. <Cell style="align:center middle;color:dodgerblue;color2:dodgerblue;" text="bind:sat"/>
  103. <Cell row="1" style="align:center middle;color:dodgerblue;color2:dodgerblue;" text="bind:sat_memo"/>
  104. </Cell>
  105. </Band>
  106. </Format>
  107. </Formats>
  108. </Grid>
  109. <Grid id="grd_drlst" taborder="4" binddataset="ds_init_cnst_drlst_itemdr" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 21 225 161" oncelldblclick="grd_drlst_oncelldblclick" selecttype="multirow">
  110. <Formats>
  111. <Format id="default">
  112. <Columns>
  113. <Column size="24"/>
  114. <Column size="85"/>
  115. <Column size="100"/>
  116. </Columns>
  117. <Rows>
  118. <Row size="24" band="head"/>
  119. <Row size="24"/>
  120. </Rows>
  121. <Band id="head">
  122. <Cell/>
  123. <Cell col="1" text="상담의ID"/>
  124. <Cell col="2" text="상담의명"/>
  125. </Band>
  126. <Band id="body">
  127. <Cell celltype="head" expr="currow+1"/>
  128. <Cell col="1" style="align:left middle;padding:0 0 0 3;" text="bind:drid"/>
  129. <Cell col="2" style="align:left middle;padding:0 0 0 3;" text="bind:drnm"/>
  130. </Band>
  131. </Format>
  132. </Formats>
  133. </Grid>
  134. <TextArea id="textarea1" taborder="5" wordwrap="word" autoselect="true" acceptstab="true" position="absolute 229 42 527 87"/>
  135. <Static id="caption2" text="비고사항" class="tit_2" position="absolute 229 21 350 42"/>
  136. <Shape id="line3" class="line_10" position="absolute 229 37 527 43"/>
  137. <Static id="caption3" text="일자비고" class="tit_2" position="absolute 229 95 350 117"/>
  138. <TextArea id="textarea2" taborder="6" wordwrap="word" autoselect="true" acceptstab="true" position="absolute 229 116 527 161"/>
  139. <Shape id="line2" class="line_10" position="absolute 229 111 527 117"/>
  140. <Calendar id="ipt_remdd" taborder="7" visible="false" position="absolute 315 92 415 111" autoselect="true" autoskip="true"/>
  141. <Button id="btn_srch_dayb" taborder="8" text="조회" class="btn2" visible="false" position="absolute 416 92 458 111" onclick="btn_srch_dayb_onclick"/>
  142. <Shape id="line1" class="line_10" position="absolute 0 16 697 22"/>
  143. <Shape id="line32" class="line_6" position="absolute 0 486 697 492"/>
  144. <Button id="btn_cfm" taborder="9" text="확인" class="btn4" position="absolute 585 494 641 516" onclick="btn_cfm_onclick"/>
  145. <Button id="btn_cancel" taborder="10" text="취소" class="btn4" position="absolute 642 494 698 516" onclick="btn_cancel_onclick"/>
  146. </Layout>
  147. </Layouts>
  148. <Objects>
  149. <Dataset id="ds_init_cnst_drlst_itemdr" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  150. <ColumnInfo>
  151. <Column id="sel" type="STRING" size="256" sumtext="선택"/>
  152. <Column id="drid" type="STRING" size="256" sumtext="의사ID"/>
  153. <Column id="drnm" type="STRING" size="256" sumtext="의사명"/>
  154. <Column id="drlicnsno" type="STRING" size="256" sumtext="의사면허번호"/>
  155. </ColumnInfo>
  156. </Dataset>
  157. <Dataset id="ds_main_rsrvtmlst" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  158. <ColumnInfo>
  159. <Column id="rsrvtm" type="STRING" size="256" sumtext="예약시간"/>
  160. <Column id="psnnocnt" type="STRING" size="256" sumtext="예약가능인원"/>
  161. <Column id="rsrvpsnnocnt" type="STRING" size="256" sumtext="예약인원"/>
  162. <Column id="readonly" type="STRING" size="256"/>
  163. </ColumnInfo>
  164. </Dataset>
  165. <Dataset id="ds_temp_calendar_weeklist_list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  166. <ColumnInfo>
  167. <Column id="sun" type="STRING" size="256"/>
  168. <Column id="mon" type="STRING" size="256"/>
  169. <Column id="tue" type="STRING" size="256"/>
  170. <Column id="wed" type="STRING" size="256"/>
  171. <Column id="thu" type="STRING" size="256"/>
  172. <Column id="fri" type="STRING" size="256"/>
  173. <Column id="sat" type="STRING" size="256"/>
  174. <Column id="sun_memo" type="STRING" size="256"/>
  175. <Column id="mon_memo" type="STRING" size="256"/>
  176. <Column id="tue_memo" type="STRING" size="256"/>
  177. <Column id="wed_memo" type="STRING" size="256"/>
  178. <Column id="thu_memo" type="STRING" size="256"/>
  179. <Column id="fri_memo" type="STRING" size="256"/>
  180. <Column id="sat_memo" type="STRING" size="256"/>
  181. </ColumnInfo>
  182. </Dataset>
  183. <Dataset id="ds_init_cnstinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="rsltcnstremcnts" type="STRING" size="256"/>
  186. </ColumnInfo>
  187. <Rows>
  188. <Row/>
  189. </Rows>
  190. </Dataset>
  191. <Dataset id="ds_main_dayblist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  192. <ColumnInfo>
  193. <Column id="remcnts" type="STRING" size="256"/>
  194. <Column id="remdd" type="STRING" size="256"/>
  195. </ColumnInfo>
  196. <Rows>
  197. <Row/>
  198. </Rows>
  199. </Dataset>
  200. <Dataset id="ds_main_rsrvpatlst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  201. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  202. <ColumnInfo>
  203. <Column id="srchcond" type="STRING" size="256"/>
  204. <Column id="srchhealexamflag" type="STRING" size="256"/>
  205. <Column id="srchhealexamdetlflag" type="STRING" size="256"/>
  206. <Column id="srchrsrvdd" type="STRING" size="256"/>
  207. <Column id="srchrsrvmon" type="STRING" size="256"/>
  208. <Column id="srchcnstdrid" type="STRING" size="256"/>
  209. <Column id="srchinstcd" type="STRING" size="256"/>
  210. <Column id="srchdateyn" type="STRING" size="256"/>
  211. <Column id="srchstatfg" type="STRING" size="256"/>
  212. <Column id="srchfromdd" type="STRING" size="256"/>
  213. <Column id="srchtodd" type="STRING" size="256"/>
  214. <Column id="srchrsltcnstrsrvdd" type="STRING" size="256"/>
  215. <Column id="srchrsltcnstrsrvtm" type="STRING" size="256"/>
  216. <Column id="srchrsrvflag" type="STRING" size="256"/>
  217. <Column id="srchrsltremcnts" type="STRING" size="256"/>
  218. <Column id="srchcnstdrnm" type="STRING" size="256"/>
  219. </ColumnInfo>
  220. <Rows>
  221. <Row>
  222. <Col id="srchcond"/>
  223. <Col id="srchhealexamflag"/>
  224. <Col id="srchhealexamdetlflag"/>
  225. <Col id="srchrsrvdd"/>
  226. <Col id="srchrsrvmon"/>
  227. <Col id="srchcnstdrid"/>
  228. <Col id="srchinstcd"/>
  229. <Col id="srchdateyn"/>
  230. <Col id="srchstatfg"/>
  231. <Col id="srchfromdd"/>
  232. <Col id="srchtodd"/>
  233. <Col id="srchrsltcnstrsrvdd"/>
  234. <Col id="srchrsltcnstrsrvtm"/>
  235. <Col id="srchrsrvflag"/>
  236. <Col id="srchrsltremcnts"/>
  237. <Col id="srchcnstdrnm"/>
  238. </Row>
  239. </Rows>
  240. </Dataset>
  241. <Dataset id="ds_temp_calendar" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  242. <ColumnInfo>
  243. <Column id="year" type="STRING" size="256"/>
  244. <Column id="month" type="STRING" size="256"/>
  245. </ColumnInfo>
  246. <Rows>
  247. <Row/>
  248. </Rows>
  249. </Dataset>
  250. <Dataset id="ds_main_rsrvddlst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  251. <ColumnInfo>
  252. <Column id="rsrvdd" type="STRING" size="256" sumtext="예약일자"/>
  253. <Column id="psnnocnt" type="STRING" size="256" sumtext="예약가능인원/예약인원"/>
  254. <Column id="psnnowomcnt" type="STRING" size="256" sumtext="예약가능인원/예약인원"/>
  255. <Column id="rsrvpossyn" type="STRING" size="256" sumtext="예약인원초과여부"/>
  256. </ColumnInfo>
  257. </Dataset>
  258. <Dataset id="ds_temp_templst_rsrvtmlst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  259. <ColumnInfo>
  260. <Column id="rsrvtm" type="STRING" size="256" sumtext="예약시간"/>
  261. <Column id="psnnocnt" type="STRING" size="256" sumtext="예약가능인원"/>
  262. <Column id="rsrvpsnnocnt" type="STRING" size="256" sumtext="예약인원"/>
  263. </ColumnInfo>
  264. </Dataset>
  265. <Dataset id="ds_temp_templst_rsrvddlst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  266. <ColumnInfo>
  267. <Column id="rsrvdd" type="STRING" size="256" sumtext="예약일자"/>
  268. <Column id="psnnocnt" type="STRING" size="256" sumtext="예약가능인원/예약인원"/>
  269. <Column id="psnnowomcnt" type="STRING" size="256" sumtext="예약가능인원/예약인원"/>
  270. <Column id="rsrvpossyn" type="STRING" size="256" sumtext="예약인원초과여부"/>
  271. </ColumnInfo>
  272. </Dataset>
  273. <Dataset id="ds_main_rsltcnstinfo_cnst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  274. <ColumnInfo>
  275. <Column id="rsltcnstrsrvstarttm" type="STRING" size="256"/>
  276. <Column id="rsltcnstrsrvendtm" type="STRING" size="256"/>
  277. <Column id="rsltcnstdd" type="STRING" size="256"/>
  278. <Column id="rsltcnstdr" type="STRING" size="256"/>
  279. <Column id="rsltcnstremcnts" type="STRING" size="256"/>
  280. <Column id="outexamyn" type="STRING" size="256"/>
  281. <Column id="rsltrsrvid" type="STRING" size="256"/>
  282. <Column id="rsltrsrvnm" type="STRING" size="256"/>
  283. <Column id="rsltrsrvsaveyn" type="STRING" size="256"/>
  284. <Column id="rsltcnstflag" type="STRING" size="256"/>
  285. <Column id="m" type="STRING" size="256"/>
  286. <Column id="rsltcnstseqno" type="STRING" size="256"/>
  287. <Column id="ownyn" type="STRING" size="256"/>
  288. <Column id="visitor" type="STRING" size="256"/>
  289. <Column id="visittm" type="STRING" size="256"/>
  290. <Column id="rsltcnststarttm" type="STRING" size="256"/>
  291. <Column id="rsltcnstendtm" type="STRING" size="256"/>
  292. <Column id="rsltcnstendyn" type="STRING" size="256"/>
  293. <Column id="rsltcnsthistcd" type="STRING" size="256"/>
  294. <Column id="spcffact" type="STRING" size="256"/>
  295. </ColumnInfo>
  296. <Rows>
  297. <Row>
  298. <Col id="rsltcnstrsrvstarttm"/>
  299. <Col id="rsltcnstrsrvendtm"/>
  300. <Col id="rsltcnstdd"/>
  301. <Col id="rsltcnstdr"/>
  302. <Col id="rsltcnstremcnts"/>
  303. <Col id="outexamyn"/>
  304. <Col id="rsltrsrvid"/>
  305. <Col id="rsltrsrvnm"/>
  306. <Col id="rsltrsrvsaveyn"/>
  307. <Col id="rsltcnstflag"/>
  308. <Col id="m"/>
  309. <Col id="rsltcnstseqno"/>
  310. <Col id="ownyn"/>
  311. <Col id="visitor"/>
  312. <Col id="visittm"/>
  313. <Col id="rsltcnststarttm"/>
  314. <Col id="rsltcnstendtm"/>
  315. <Col id="rsltcnstendyn"/>
  316. <Col id="rsltcnsthistcd"/>
  317. <Col id="spcffact"/>
  318. </Row>
  319. </Rows>
  320. </Dataset>
  321. </Objects>
  322. <Bind>
  323. <BindItem id="item0" compid="textarea1" propid="value" datasetid="ds_init_cnstinfo" columnid="rsltcnstremcnts"/>
  324. <BindItem id="item1" compid="textarea2" propid="value" datasetid="ds_main_dayblist" columnid="remcnts"/>
  325. <BindItem id="item2" compid="ipt_remdd" propid="value" datasetid="ds_main_dayblist" columnid="remdd"/>
  326. <BindItem id="item3" compid="grp_calendar.opt_year" propid="value" datasetid="ds_temp_calendar" columnid="year"/>
  327. <BindItem id="item4" compid="grp_calendar.opt_month" propid="value" datasetid="ds_temp_calendar" columnid="month"/>
  328. </Bind>
  329. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  330. * System Name :
  331. * Job Name :
  332. * Creator :
  333. * Make Date : 2015-11-13
  334. * Description :
  335. *---------------------------------------------------------------------------------------
  336. * Modify Date Modifier Modify Description
  337. *---------------------------------------------------------------------------------------
  338. * 2015-11-13 Live Converter TF->XP
  339. *
  340. *---------------------------------------------------------------------------------------
  341. ****************************************************************************************/
  342. include "com_commonxp::comm_main.xjs";
  343. include "ast_healexamxp::AHA001.xjs";
  344. include "ast_healthexambasexp::healcombolist.xjs";
  345. var xDesPath = "";
  346. var xRsltPath = "";
  347. function SPAHA00110_oninit(obj:Form, e:InitEventInfo)
  348. {
  349. frmf_initForm(obj);
  350. }
  351. function SPAHA00110_onload(obj:Form, e:LoadEventInfo)
  352. {
  353. grdf_initGrid(grd_drlst);
  354. grdf_initGrid(grd_rsrvtmlst);
  355. fInitCtrl();
  356. }
  357. function fInitCtrl()
  358. {
  359. ds_main_rsrvtmlst.clearData();
  360. ds_main_rsrvpatlst.clearData();
  361. var receiveref = eval("opener.ds_hidden");
  362. opener.dsf_makeValue(receiveref, "okflag", "string", "");
  363. if( frmf_checkOpener() )
  364. {
  365. var sHealexamFlag = opener.frmf_getParameter("SPAHA00110_PARAM1");
  366. var sHealexamdetlFlag = opener.frmf_getParameter("SPAHA00110_PARAM2");
  367. var sRsltcnstremcnts = opener.frmf_getParameter("SPAHA00110_PARAM5");
  368. xDesPath = opener.frmf_getParameter("SPAHA00110_PARAM3");
  369. xRsltPath = opener.frmf_getParameter("SPAHA00110_PARAM4");
  370. v_xDesPath = eval("opener."+xDesPath);
  371. ds_send.setColumn(0, "srchhealexamflag", sHealexamFlag); // 건진구분
  372. ds_send.setColumn(0, "srchhealexamdetlflag", sHealexamdetlFlag);// 건진상세구분
  373. ds_send.setColumn(0, "srchcond", "C");// 건진 의사조회 구분 (판정의: J 상담의: C)
  374. ds_init_cnstinfo.copyData(v_xDesPath);
  375. if (!utlf_isNull(sRsltcnstremcnts))
  376. {
  377. ds_init_cnstinfo.setColumn(0, "rsltcnstremcnts",sRsltcnstremcnts);
  378. }
  379. var oParam = {};
  380. oParam.id = "TRAHB01504";
  381. oParam.service = "healexambaseapp.ComCode";
  382. oParam.method = "reqGetHealExamDrList";
  383. oParam.inds = "req=ds_send";
  384. oParam.outds = "ds_init_cnst_drlst_itemdr=item";
  385. oParam.async = false;
  386. //oParam.callback = "cf_TRAHB01504";
  387. tranf_submit(oParam);
  388. var curDate = utlf_getCurrentDate().toDate();
  389. ds_temp_calendar.setColumn(0, "year", curDate.getDateFormat('YYYY'));
  390. ds_temp_calendar.setColumn(0, "month", curDate.getDateFormat('MM'));
  391. setCalendar(curDate);
  392. }
  393. else
  394. {
  395. initCalendar();
  396. }
  397. }
  398. function grd_drlst_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  399. {
  400. ds_send.setColumn(0, "srchcnstdrid" , ds_init_cnst_drlst_itemdr.getColumn(ds_init_cnst_drlst_itemdr.rowposition, "drid"));
  401. ds_send.setColumn(0, "srchcnstdrnm" , ds_init_cnst_drlst_itemdr.getColumn(ds_init_cnst_drlst_itemdr.rowposition, "drnm"));
  402. fGetRsrvSchList(2);
  403. }
  404. function fGetRsrvSchList(vMode )
  405. {
  406. if(ds_temp_calendar_weeklist_list.rowposition < 0) return false;
  407. if( !frmf_checkOpener() ) return ;
  408. ds_temp_templst_rsrvddlst.clearData();
  409. ds_temp_templst_rsrvtmlst.clearData();
  410. ds_main_rsrvddlst.clearData();
  411. ds_main_rsrvtmlst.clearData();
  412. var sRsrvMon = ds_temp_calendar.getColumn(0, "year") + ds_temp_calendar.getColumn(0, "month") ;
  413. ds_send.setColumn(0, "srchrsrvmon", sRsrvMon);
  414. if( vMode == 1 )
  415. {
  416. ds_send.setColumn(0, "srchrsrvmon", "");
  417. ds_send.setColumn(0, "srchrsrvdd", fGetCalendarDate(grd_calendar));
  418. }
  419. else if( vMode == 2 )
  420. {
  421. ds_send.setColumn(0, "srchrsrvdd", "");
  422. }
  423. ds_temp_templst_rsrvddlst.clearData();
  424. ds_temp_templst_rsrvtmlst.clearData();
  425. ds_main_rsrvddlst.clearData();
  426. var oParam = {};
  427. oParam.id = "TRAHB01503";
  428. oParam.service = "healexambaseapp.ScheduleCode";
  429. oParam.method = "reqGetRsrvScheduleList";
  430. oParam.inds = "req=ds_send";
  431. oParam.outds = "ds_temp_templst_rsrvddlst=ddlst ds_temp_templst_rsrvtmlst=tmlst";
  432. oParam.async = false;
  433. //oParam.callback = "cf_TRAHB01503";
  434. tranf_submit(oParam);
  435. var sNode = null;
  436. if( (vMode == 0 ) || (vMode == 2) )
  437. {
  438. sNode = ds_temp_templst_rsrvddlst.rowcount;
  439. if( sNode != 0 )
  440. {
  441. var dd = null ;
  442. var iCol = null;
  443. var iRow = null;
  444. var firstDay = (sRsrvMon+ "01").toDate().getDay();
  445. sNode = ds_temp_templst_rsrvddlst;
  446. for( var i = 0; i < sNode.rowcount; i++)
  447. {
  448. dd = ds_temp_templst_rsrvddlst.getColumn(i, "rsrvdd") ;
  449. iCol = ( sRsrvMon + dd).toDate().getDay();
  450. iRow = Math.ceil( ( firstDay + Number(dd) ) / 7 )-1;
  451. ds_temp_calendar_weeklist_list.setColumn(iRow, parseInt(iCol + 7), ds_temp_templst_rsrvddlst.getColumn(i, "psnnocnt"));
  452. }
  453. }
  454. else
  455. {
  456. var firstDay = Number( (sRsrvMon+ "01").toDate().getDay() );
  457. var lastDay = Number( fGetCalendarDate(grd_calendar).toDate().getMonthDay() );
  458. for( var i = firstDay ; i <= lastDay; i++)
  459. {
  460. iRow = Math.ceil( ( firstDay + i ) / 7 )-1;
  461. iCol = ( sRsrvMon + i ).toDate().getDay();
  462. ds_temp_calendar_weeklist_list.setColumn(iRow, parseInt(iCol + 7), "");
  463. }
  464. }
  465. }
  466. if( (vMode == 0 ) || (vMode == 1) )
  467. {
  468. ds_main_rsrvddlst.clearData();
  469. sNode = ds_temp_templst_rsrvtmlst.rowcount;
  470. if( sNode != 0 )
  471. {
  472. ds_main_rsrvtmlst.copyData(ds_temp_templst_rsrvtmlst);
  473. for(var i = 0; i < ds_main_rsrvtmlst.rowcount; i++)
  474. {
  475. var sRsrvCnt = ds_main_rsrvtmlst.getColumn(i , "rsrvpsnnocnt");
  476. if( sRsrvCnt == "1")
  477. {
  478. ds_main_rsrvtmlst.updatecontrol = false;
  479. dsf_makeValue(ds_main_rsrvtmlst, "readonly", "string", "true", i);
  480. ds_main_rsrvtmlst.updatecontrol = true;
  481. }
  482. else if(sRsrvCnt == "0")
  483. {
  484. ds_main_rsrvtmlst.updatecontrol = false;
  485. dsf_makeValue(ds_main_rsrvtmlst, "readonly", "string", "false", i);
  486. ds_main_rsrvtmlst.updatecontrol = true;
  487. }
  488. }
  489. }
  490. }
  491. }
  492. function btn_srch_dayb_onclick(obj:Button, e:ClickEventInfo)
  493. {
  494. dsf_makeValue(ds_main_dayblist, "instcd","string", sysf_getUserInfo("dutplceinstcd"));
  495. var oParam = {};
  496. oParam.id = "TRAHB01508";
  497. oParam.service = "healexambaseapp.ScheduleCode";
  498. oParam.method = "reqGetDaybList";
  499. oParam.inds = "req=ds_main_dayblist";
  500. oParam.outds = "ds_main_dayblist=dayblist";
  501. oParam.async = false;
  502. //oParam.callback = "cf_TRAHB01508";
  503. tranf_submit(oParam);
  504. if(utlf_isNull(ds_main_dayblist.getColumn(0, "remdd")))
  505. {
  506. dsf_makeValue(ds_main_dayblist, "remdd", "string", fGetCalendarDate(grd_calendar));
  507. }
  508. }
  509. function grp_calendar_btn_preyear_onclick(obj:Button, e:ClickEventInfo)
  510. {
  511. fHRefreshCalender("Y", -1);
  512. fGetRsrvSchList(2);
  513. }
  514. function grp_calendar_btn_premonth_onclick(obj:Button, e:ClickEventInfo)
  515. {
  516. fHRefreshCalender("M", -1);
  517. fGetRsrvSchList(2);
  518. }
  519. function grp_calendar_btn_nextmonth_onclick(obj:Button, e:ClickEventInfo)
  520. {
  521. fHRefreshCalender("M", 1);
  522. fGetRsrvSchList(2);
  523. }
  524. function grp_calendar_btn_nextyear_onclick(obj:Button, e:ClickEventInfo)
  525. {
  526. fHRefreshCalender("Y", 1);
  527. fGetRsrvSchList(2);
  528. }
  529. function grd_calendar_oncellclick(obj:Grid, e:GridClickEventInfo)
  530. {
  531. ds_main_rsrvtmlst.clearData();
  532. fGetRsrvSchList(1);
  533. dsf_makeValue(ds_main_dayblist, "remdd", "string", fGetCalendarDate(grd_calendar));
  534. btn_srch_dayb.click();
  535. }
  536. function grd_rsrvtmlst_oncellclick(obj:Grid, e:GridClickEventInfo)
  537. {
  538. var rows = grdf_getSelectedRows(grd_rsrvtmlst);
  539. for( var i = 0; i < rows.length; i++)
  540. {
  541. var m_row = rows[i];
  542. var sRsrvCnt = ds_main_rsrvtmlst.getColumn(m_row, "rsrvpsnnocnt");
  543. if(e.cell == grd_rsrvtmlst.getBindCellIndex("Body", "rsrvpsnnocnt"))
  544. {
  545. if(sRsrvCnt == "1" )
  546. {
  547. if(ds_main_rsrvtmlst.getColumn(m_row, "readonly") == "false")
  548. {
  549. ds_main_rsrvtmlst.setColumn(m_row, "rsrvpsnnocnt", "1");
  550. }
  551. }
  552. else if( sRsrvCnt == "0")
  553. {
  554. if(ds_main_rsrvtmlst.getColumn(m_row, "readonly") == "false")
  555. {
  556. ds_main_rsrvtmlst.setColumn(m_row, "rsrvpsnnocnt", "0");
  557. }
  558. }
  559. }
  560. else
  561. {
  562. if( sRsrvCnt == "0" )
  563. {
  564. if(ds_main_rsrvtmlst.getColumn(m_row, "readonly") == "false")
  565. {
  566. ds_main_rsrvtmlst.setColumn(m_row, "rsrvpsnnocnt", "1");
  567. }
  568. }
  569. else if( sRsrvCnt == "1")
  570. {
  571. if(ds_main_rsrvtmlst.getColumn(m_row, "readonly") == "false")
  572. {
  573. ds_main_rsrvtmlst.setColumn(m_row, "rsrvpsnnocnt", "0");
  574. }
  575. }
  576. }
  577. }
  578. if(!fChkInterVal())
  579. {
  580. for( var i = 0; i < rows.length; i++)
  581. {
  582. var m_row = rows[i];
  583. ds_main_rsrvtmlst.setColumn(m_row, "rsrvpsnnocnt", "0");
  584. }
  585. sysf_messageBox("예약시간은 분리","E001");
  586. return;
  587. }
  588. }
  589. function fChkInterVal()
  590. {
  591. var sOutExamYN = ds_init_cnstinfo.getColumn(0, "outexamyn");
  592. var sRsrvdd = fGetCalendarDate(grd_calendar) ;
  593. var sRsltCnstDr = ds_send.getColumn(0, "srchcnstdrid");
  594. var sel = false;
  595. var selCnt = 0;
  596. var topIdx = 0;
  597. var bottomIdx = 0;
  598. for( var i = 0; i < ds_main_rsrvtmlst.rowcount; i++)
  599. {
  600. var sRsrvCnt = ds_main_rsrvtmlst.getColumn(i , "rsrvpsnnocnt");
  601. if(ds_main_rsrvtmlst.getColumn(i, "readonly") == "false" && sRsrvCnt == "1")
  602. {
  603. topIdx = i - 1;
  604. bottomIdx = i + 1;
  605. var top = "";
  606. var middle = ds_main_rsrvtmlst.getColumn(i , "rsrvpsnnocnt");
  607. var bottom = "";
  608. if(topIdx == 0)
  609. {
  610. top = "0"
  611. }
  612. else
  613. {
  614. if(ds_main_rsrvtmlst.getColumn(i, "readonly") == "true")
  615. {
  616. top = "0"
  617. }
  618. else
  619. {
  620. top = ds_main_rsrvtmlst.getColumn(topIdx , "rsrvpsnnocnt");
  621. }
  622. }
  623. if(bottomIdx == ds_main_rsrvtmlst.rowcount)
  624. {
  625. bottom = "0";
  626. }
  627. else
  628. {
  629. if(ds_main_rsrvtmlst.getColumn(bottomIdx, "readonly") == "true")
  630. {
  631. bottom = "0"
  632. }
  633. else
  634. {
  635. bottom = ds_main_rsrvtmlst.getColumn(bottomIdx , "rsrvpsnnocnt");
  636. }
  637. }
  638. if(top == "0" && middle == "1")
  639. {
  640. var dtRsrvdd = ( sRsrvdd + " " + ds_main_rsrvtmlst.getColumn(i, "rsrvtm") + "00").toDate("YYYYMMDD hhmmss");
  641. if( dtRsrvdd <= utlf_getCurrentDateTime().toDate("YYYYMMDD hhmmss") )
  642. {
  643. sysf_messageBox("예약시간이 현재 시간 전입니다. ", "E999");
  644. return ;
  645. }
  646. }
  647. if(middle == "1" && bottom == "0")
  648. {
  649. selCnt++;
  650. if(selCnt > 1)
  651. {
  652. sel = false;
  653. }
  654. else if(selCnt <= 1 )
  655. {
  656. sel = true;
  657. }
  658. }
  659. }
  660. }
  661. return sel;
  662. }
  663. function btn_cancel_onclick(obj:Button, e:ClickEventInfo)
  664. {
  665. var receiveref = eval("opener.ds_hidden");
  666. opener.dsf_makeValue(receiveref, "okflag", "string", "");
  667. this.close();
  668. }
  669. function btn_cfm_onclick(obj:Button, e:ClickEventInfo)
  670. {
  671. fSetRsrvDT();
  672. }
  673. function fSetRsrvDT()
  674. {
  675. if ( frmf_checkOpener() )
  676. {
  677. var sOutExamYN = ds_init_cnstinfo.getColumn(0, "outexamyn");
  678. var sRsrvdd = fGetCalendarDate(grd_calendar) ;
  679. var sRsltCnstDr = ds_send.getColumn(0, "srchcnstdrid");
  680. var sel = false;
  681. var selCnt = 0;
  682. var topIdx = 0;
  683. var bottomIdx = 0;
  684. for( var i = 0; i < ds_main_rsrvtmlst.rowcount; i++)
  685. {
  686. var sRsrvCnt = ds_main_rsrvtmlst.getColumn(i , "rsrvpsnnocnt");
  687. if(ds_main_rsrvtmlst.getColumn(i , "readonly") == "false" && sRsrvCnt == "1")
  688. {
  689. if(topIdx != 0) topIdx = i - 1;
  690. bottomIdx = i + 1;
  691. var top = "";
  692. var middle = ds_main_rsrvtmlst.getColumn(i , "rsrvpsnnocnt");
  693. var bottom = "";
  694. if(topIdx == 0)
  695. {
  696. top = "0"
  697. }
  698. else
  699. {
  700. if(ds_main_rsrvtmlst.getColumn(topIdx , "readonly") == "true")
  701. {
  702. top = "0"
  703. }
  704. else
  705. {
  706. top = ds_main_rsrvtmlst.getColumn(topIdx, "rsrvpsnnocnt");
  707. }
  708. }
  709. //if(bottomIdx == ds_main_rsrvtmlst.rowcount-1)
  710. if(bottomIdx == ds_main_rsrvtmlst.rowcount) //2018.06.21 pkc
  711. {
  712. bottom = "0";
  713. }
  714. else
  715. {
  716. if(ds_main_rsrvtmlst.getColumn(bottomIdx, "readonly") == "true")
  717. {
  718. bottom = "0"
  719. }
  720. else
  721. {
  722. bottom = ds_main_rsrvtmlst.getColumn(bottomIdx , "rsrvpsnnocnt");
  723. }
  724. }
  725. if(top == "0" && middle == "1")
  726. {
  727. var dtRsrvdd = ( sRsrvdd + " " + ds_main_rsrvtmlst.getColumn(i , "rsrvtm") + "00" ).toDate("YYYYMMDD hhmmss");
  728. if( dtRsrvdd <= utlf_getCurrentDateTime().toDate("YYYYMMDD hhmmss") )
  729. {
  730. sysf_messageBox("예약시간이 현재 시간 전입니다. ", "E999");
  731. return ;
  732. }
  733. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstrsrvstarttm", ds_main_rsrvtmlst.getColumn(i, "rsrvtm"));
  734. }
  735. if(middle == "1" && bottom == "0")
  736. {
  737. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstrsrvendtm", ds_main_rsrvtmlst.getColumn(i, "rsrvtm"));
  738. sel = true;
  739. selCnt++;
  740. }
  741. if(sel)
  742. {
  743. var sRsltCnstDr = ds_send.getColumn(0, "srchcnstdrid");
  744. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstdd" , sRsrvdd);
  745. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstdr" , sRsltCnstDr);
  746. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstremcnts" , ds_init_cnstinfo.getColumn(0, "rsltcnstremcnts"));
  747. ds_main_rsltcnstinfo_cnst.setColumn(0, "outexamyn" , sOutExamYN);
  748. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstflag" , ds_init_cnstinfo.getColumn(0, "rsltcnstflag"));
  749. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltrsrvid" , sRsrvdd+ds_main_rsltcnstinfo_cnst.getColumn(0, "rsltcnstrsrvstarttm")+ds_main_rsltcnstinfo_cnst.getColumn(0, "rsltcnstrsrvendtm"));
  750. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltrsrvnm" , sRsrvdd.toDate().getDateFormat('YYYY-MM-DD') + " " + ds_main_rsltcnstinfo_cnst.getColumn(0, "rsltcnstrsrvstarttm")+ " ~ " + ds_main_rsltcnstinfo_cnst.getColumn(0, "rsltcnstrsrvendtm")+" "+ds_send.getColumn(0, "srchcnstdrnm"));
  751. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltrsrvsaveyn" , "N");
  752. ds_main_rsltcnstinfo_cnst.setColumn(0, "rsltcnstendyn" , "N");
  753. ds_main_rsltcnstinfo_cnst.setColumn(0, "m" , "i");
  754. var receiveref = eval("opener."+xRsltPath);
  755. //trace(receiveref);
  756. //trace(receiveref.saveXML());
  757. // receiveref.copyData(ds_main_rsltcnstinfo_cnst);
  758. dsf_copyDs(receiveref, ds_main_rsltcnstinfo_cnst, "after");
  759. //trace(receiveref.saveXML());
  760. var receiveref2 = eval("opener.ds_hidden");
  761. opener.dsf_makeValue(receiveref2, "okflag", "string", "ok", 0);
  762. sel = false;
  763. }
  764. }
  765. }
  766. this.close();
  767. }
  768. }
  769. ]]></Script>
  770. </Form>
  771. </FDL>