SMLPP01100_검사진행현황.xfdl 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLPP01100" position="absolute 0 0 1256 805" titletext="검사진행현황" onload="SMLPP01100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Shape id="Shape11" type="roundrectangle" position="absolute 729 123 869 177"/>
  8. <Shape id="Shape10" type="roundrectangle" position="absolute 561 123 701 177"/>
  9. <Shape id="Shape09" type="roundrectangle" position="absolute 383 123 523 177"/>
  10. <Shape id="Shape08" type="roundrectangle" position="absolute 205 123 345 177"/>
  11. <Shape id="Shape07" type="roundrectangle" position="absolute 35 123 175 177"/>
  12. <Static id="Static01" class="sta_DA_box" position="absolute 0 206 1256 232" anchor="left top right"/>
  13. <Shape id="Shape13" type="roundrectangle" position="absolute 1077 123 1217 177" onclick="Shape13_onclick"/>
  14. <Shape id="Shape12" type="roundrectangle" position="absolute 899 123 1039 177"/>
  15. <Shape id="rect_stat6" type="roundrectangle" position="absolute 1077 98 1217 122"/>
  16. <Shape id="rect_stat5" type="roundrectangle" position="absolute 899 98 1039 122" onclick="rect_stat5_onclick"/>
  17. <Shape id="rect_stat4" type="roundrectangle" position="absolute 729 98 869 122"/>
  18. <Shape id="rect_stat7" type="roundrectangle" position="absolute 561 98 701 122"/>
  19. <Shape id="rect_stat3" type="roundrectangle" position="absolute 383 98 523 122" style="fillbrush:solid #f2f2efff true;background:transparent;"/>
  20. <Shape id="rect_stat2" type="roundrectangle" position="absolute 205 98 345 122"/>
  21. <Shape id="rect_stat1" position="absolute 35 98 175 122" type="roundrectangle"/>
  22. <Static id="caption6" text="검사진행현황" class="tit_1" position="absolute 0 0 147 25"/>
  23. <Static id="caption3" text="검사진행상황" class="tit_2" position="absolute 0 78 111 98"/>
  24. <Static id="caption2" text="검체접수목록" class="tit_2" position="absolute 0 242 100 262"/>
  25. <Div id="div_search" taborder="1" style="align:center top;" class="div_SA" position="absolute 0 25 1256 67" anchor="left top right">
  26. <Layouts>
  27. <Layout>
  28. <Static id="caption1" text="검색조건" class="search_name" position="absolute 686 10 760 30" anchor="default"/>
  29. <Button id="btn_search" taborder="9" text="조회" class="btn1" position="absolute 1188 10 1244 30" anchor="top right" onclick="div_search_btn_search_onclick"/>
  30. <Static id="caption10" text="접수일자" class="search_name" position="absolute 376 10 450 30" anchor="default"/>
  31. <Static id="caption11" text="~" class="search_n_b" position="absolute 550 10 566 30" anchor="default" style="align:center;"/>
  32. <Combo id="cmb_refflagcd" taborder="7" class="combo_search" position="absolute 760 10 851 30" style="align:center middle;" anchor="default" codecolumn="codecolumn" datacolumn="datacolumn" index="-1" onitemchanged="div_search_cmb_refflagcd_onitemchanged">
  33. <Dataset id="innerdataset">
  34. <ColumnInfo>
  35. <Column id="codecolumn" size="256"/>
  36. <Column id="datacolumn" size="256"/>
  37. </ColumnInfo>
  38. <Rows>
  39. <Row>
  40. <Col id="codecolumn">0</Col>
  41. <Col id="datacolumn">바코드번호</Col>
  42. </Row>
  43. <Row>
  44. <Col id="codecolumn">1</Col>
  45. <Col id="datacolumn">등록번호</Col>
  46. </Row>
  47. </Rows>
  48. </Dataset>
  49. </Combo>
  50. <Edit id="edt_refval" taborder="8" class="input_search" position="absolute 859 10 974 30" anchor="default" onkeydown="div_search_edt_refval_onkeydown" style="align:center middle;" onkillfocus="div_search_edt_refval_onkillfocus" onsetfocus="div_search_edt_refval_onsetfocus" imemode="alpha" inputtype="numberandenglish" useime="none" inputmode="upper" maxlength="11"/>
  51. <Calendar id="cal_acptfromdd" taborder="5" class="input_s_essential" position="absolute 450 10 550 30" mask="####-##-##" anchor="default" dateformat="yyyy-MM-dd" value="null"/>
  52. <Calendar id="cal_acpttodd" taborder="6" class="input_s_essential" position="absolute 562 10 662 30" mask="####-##-##" anchor="default" dateformat="yyyy-MM-dd" value="null"/>
  53. <Combo id="cmb_ptnocd" taborder="0" position="absolute 82 10 173 30" anchor="default" innerdataset="@ds_init_ptnocdlist" codecolumn="ptnocd" datacolumn="ptnonm"/>
  54. <Edit id="edt_fromptno" taborder="2" class="text_center" position="absolute 206 10 256 30" anchor="default" maxlength="6" inputtype="number"/>
  55. <Static id="caption4" text="병리번호" class="search_name" position="absolute 8 10 82 30" anchor="default"/>
  56. <Static id="caption5" text="~" position="absolute 256 10 272 30" anchor="default" style="align:center;"/>
  57. <Edit id="edt_toptno" taborder="4" class="text_center" position="absolute 302 10 352 30" anchor="default" maxlength="6" inputtype="number"/>
  58. <Edit id="edt_toyear" taborder="3" class="text_center" position="absolute 272 10 299 30" anchor="default" inputtype="number" maxlength="2"/>
  59. <Edit id="edt_fromyear" taborder="1" class="text_center" position="absolute 176 10 203 30" anchor="default" maxlength="2" inputtype="number"/>
  60. </Layout>
  61. </Layouts>
  62. </Div>
  63. <Static id="caption13" text="검체현황" class="tit_2" position="absolute 0 187 111 207"/>
  64. <Static id="caption31" text="검체전달" class="cell_1" position="absolute 0 207 101 231"/>
  65. <Edit id="opt_spctran" taborder="2" readonly="true" position="absolute 104 209 229 229" style="align:center middle;font:arial,9,bold;" mask="#,###,###"/>
  66. <Static id="caption14" text="병리과 수신" class="cell_1" position="absolute 232 207 333 231"/>
  67. <Edit id="opt_spcrecv" taborder="3" readonly="true" position="absolute 336 209 460 229" style="align:center middle;font:arial,9,bold;" mask="#,###,###"/>
  68. <Static id="caption15" text="검체접수" class="cell_1" position="absolute 463 207 564 231"/>
  69. <Edit id="opt_spcacpt" taborder="4" readonly="true" position="absolute 567 209 691 229" style="align:center middle;font:arial,9,bold;" mask="#,###,###"/>
  70. <Static id="caption17" text="총 환자수" class="cell_1" position="absolute 694 207 795 231"/>
  71. <Edit id="opt_totalpat" taborder="5" readonly="true" position="absolute 798 209 922 229" style="align:center middle;font:arial,9,bold;" mask="#,###,###"/>
  72. <Static id="caption18" text="총 검사수" class="cell_1" position="absolute 925 207 1026 231"/>
  73. <Edit id="opt_totalspc" taborder="6" readonly="true" position="absolute 1029 209 1145 229" style="align:center middle;font:arial,9,bold;" mask="#,###,###"/>
  74. <Static id="cap_stat1" text="검체전달(A)" position="absolute 35 101 175 121" style="color:black;align:center middle;font:Dotum,9, bold;"/>
  75. <Static id="cap_stat2" text="병리과 수신(B)" position="absolute 207 101 347 121" style="color:black;align:center middle;font:Dotum,9, bold;"/>
  76. <Static id="cap_stat3" text="검체접수(C)" position="absolute 388 101 520 121" style="background:transparent;color:black;align:center middle;font:Dotum,9, bold;"/>
  77. <Static id="cap_stat4" text="판독중(E)" position="absolute 728 101 868 121" style="color:black;align:center middle;font:Dotum,9, bold;"/>
  78. <Static id="cap_stat5" text="최종진단(F)" position="absolute 901 101 1041 121" style="color:black;align:center middle;font:Dotum,9, bold;" onkeydown="cap_stat5_onkeydown" onclick="cap_stat5_onclick"/>
  79. <Static id="cap_stat6" text="추가진단(G)" position="absolute 1073 101 1213 121" style="color:black;align:center middle;font:Dotum,9, bold;" onkeydown="cap_stat6_onkeydown" onclick="cap_stat6_onclick"/>
  80. <Grid id="grd_acptspclist" taborder="7" useinputpanel="false" position="absolute 0 262 1256 805" onclick="grd_acptspclist_onclick" anchor="all" autofittype="col" oncellclick="grd_acptspclist_oncellclick" binddataset="ds_grid_grd_acptspclist" cellsizingtype="col" onrbuttondown="grd_acptspclist_onrbuttondown" class="CSS::lis.css">
  81. <Formats>
  82. <Format id="default">
  83. <Columns>
  84. <Column size="30"/>
  85. <Column size="41"/>
  86. <Column size="0"/>
  87. <Column size="0"/>
  88. <Column size="0"/>
  89. <Column size="80"/>
  90. <Column size="70"/>
  91. <Column size="70"/>
  92. <Column size="70"/>
  93. <Column size="100"/>
  94. <Column size="0"/>
  95. <Column size="0"/>
  96. <Column size="0"/>
  97. <Column size="70"/>
  98. <Column size="60"/>
  99. <Column size="0"/>
  100. <Column size="0"/>
  101. <Column size="0"/>
  102. <Column size="0"/>
  103. <Column size="0"/>
  104. <Column size="0"/>
  105. <Column size="70"/>
  106. <Column size="60"/>
  107. <Column size="76"/>
  108. <Column size="140"/>
  109. <Column size="60"/>
  110. <Column size="50"/>
  111. <Column size="70"/>
  112. <Column size="79"/>
  113. <Column size="0"/>
  114. <Column size="0"/>
  115. <Column size="0"/>
  116. </Columns>
  117. <Rows>
  118. <Row size="24" band="head"/>
  119. <Row size="24"/>
  120. </Rows>
  121. <Band id="head">
  122. <Cell text="No"/>
  123. <Cell col="1" text="상태"/>
  124. <Cell col="2" text="바코드번호"/>
  125. <Cell col="3" text="기관코드"/>
  126. <Cell col="4" text="ptno"/>
  127. <Cell col="5" text="병리번호"/>
  128. <Cell col="6" text="육안검사의"/>
  129. <Cell col="7" text="등록번호"/>
  130. <Cell col="8" text="환자명"/>
  131. <Cell col="9" text="검체명"/>
  132. <Cell col="10" text="환자구분"/>
  133. <Cell col="11" text="진료과"/>
  134. <Cell col="12" text="진료의사"/>
  135. <Cell col="13" text="처방일자"/>
  136. <Cell col="14" text="처방시간"/>
  137. <Cell col="15" text="출력일자"/>
  138. <Cell col="16" text="출력시간"/>
  139. <Cell col="17" text="채취일자"/>
  140. <Cell col="18" text="채취시간"/>
  141. <Cell col="19" text="수신일자"/>
  142. <Cell col="20" text="수신시간"/>
  143. <Cell col="21" text="접수일자"/>
  144. <Cell col="22" text="접수시간"/>
  145. <Cell col="23" text="검사코드"/>
  146. <Cell col="24" text="처방명"/>
  147. <Cell col="25" text="처방의"/>
  148. <Cell col="26" text="진료과"/>
  149. <Cell col="27" text="판독일자"/>
  150. <Cell col="28" text="판독의사"/>
  151. <Cell col="29" text="execprcpuniqno"/>
  152. <Cell col="30" text="prcpgenrflag"/>
  153. <Cell col="31"/>
  154. </Band>
  155. <Band id="body">
  156. <Cell celltype="head" expr="currow+1"/>
  157. <Cell col="1" text="bind:spcstatnm"/>
  158. <Cell col="2" text="bind:spcbarcdno"/>
  159. <Cell col="3"/>
  160. <Cell col="4"/>
  161. <Cell col="5" style="align:center middle;" text="bind:dispptno"/>
  162. <Cell col="6" class="text_center" text="bind:grosdrnm"/>
  163. <Cell col="7" displaytype="text" style="align:center middle;" class="text_center" text="bind:pid"/>
  164. <Cell col="8" style="align:center middle;" class="text_center" text="bind:patnm"/>
  165. <Cell col="9" style="align:center middle;" class="text_center" text="bind:spcnm"/>
  166. <Cell col="10" class="text_center"/>
  167. <Cell col="11"/>
  168. <Cell col="12"/>
  169. <Cell col="13" style="align:center middle;" class="text_center" text="bind:prcpdd" mask="expr:getColumn(currow, prcpdd) != '-' ? '####-##-##' : ''"/>
  170. <Cell col="14" style="align:center middle;" class="text_center" text="bind:prcptm" mask="expr:getColumn(currow, prcptm) != '-' ? '##:##:##' : ''"/>
  171. <Cell col="15" class="text_center" text="bind:trandd" mask="expr:getColumn(currow, trandd) != '-' ? '####-##-##' : ''"/>
  172. <Cell col="16" class="text_center" text="bind:trantm" mask="expr:getColumn(currow, trantm) != '-' ? '##:##:##' : ''"/>
  173. <Cell col="17" class="text_center" text="bind:delivedd" mask="expr:getColumn(currow, delivedd) != '-' ? '####-##-##' : ''"/>
  174. <Cell col="18" class="text_center" text="bind:delivetm" mask="expr:getColumn(currow, delivetm) != '-' ? '##:##:##' : ''"/>
  175. <Cell col="19" class="text_center" text="bind:cnfmdd" mask="expr:getColumn(currow, cnfmdd) != '-' ? '####-##-##' : ''"/>
  176. <Cell col="20" class="text_center" text="bind:cnfmtm" mask="expr:getColumn(currow, cnfmtm) != '-' ? '##:##:##' : ''"/>
  177. <Cell col="21" style="align:center middle;" class="text_center" text="bind:acptdd" mask="expr:getColumn(currow, acptdd) != '-' ? '####-##-##' : ''"/>
  178. <Cell col="22" style="align:center middle;" class="text_center" text="bind:acpttm" mask="expr:getColumn(currow, acpttm) != '-' ? '##:##:##' : ''"/>
  179. <Cell col="23" text="bind:testcd"/>
  180. <Cell col="24" style="align:left;" text="bind:testnm"/>
  181. <Cell col="25" style="align:center middle;" class="text_center" text="bind:orddrnm"/>
  182. <Cell col="26" style="align:center middle;" class="text_center" text="bind:orddeptnm"/>
  183. <Cell col="27" style="align:center middle;" text="bind:readdd" mask="####-##-##"/>
  184. <Cell col="28" text="bind:readdrnm"/>
  185. <Cell col="29"/>
  186. <Cell col="30"/>
  187. <Cell col="31"/>
  188. <Cell col="32"/>
  189. <Cell col="33"/>
  190. <Cell col="34"/>
  191. </Band>
  192. </Format>
  193. </Formats>
  194. </Grid>
  195. <Static id="cap_cnts1" position="absolute 35 126 175 170" style="align:center middle;"/>
  196. <Static id="cap_cnts2" position="absolute 207 129 347 170" style="align:center middle;"/>
  197. <Static id="cap_cnts3" position="absolute 381 126 521 170" style="align:center middle;"/>
  198. <Static id="cap_cnts4" position="absolute 728 126 868 170" style="align:center middle;"/>
  199. <Static id="cap_cnts5" position="absolute 901 126 1041 170" style="align:center middle;" onkeydown="cap_cnts5_onkeydown" onclick="cap_cnts5_onclick"/>
  200. <Static id="cap_cnts6" position="absolute 1078 126 1218 170" style="align:center middle;" onkeydown="cap_cnts6_onkeydown" onclick="cap_cnts6_onclick"/>
  201. <Static id="cap_stat7" text="검사중(D)" position="absolute 562 101 702 121" style="color:black;align:center middle;font:Dotum,9, bold;"/>
  202. <Button id="btn_left" taborder="8" class="icon_left" position="absolute 105 239 131 259" onclick="btn_left_onclick"/>
  203. <Static id="cap_cnts7" position="absolute 563 126 703 170" style="align:center middle;"/>
  204. <Button id="btn_right" taborder="9" class="icon_right" position="absolute 134 239 160 259" onclick="btn_right_onclick"/>
  205. <Button id="btn_excel" taborder="10" text="EXCEL저장" class="btn2" position="absolute 1174 239 1256 259" anchor="top right" onclick="btn_excel_onclick"/>
  206. <PopupMenu id="pop_right" position="absolute 13 296 148 319" idcolumn="idcolumn" captioncolumn="captioncolumn" levelcolumn="levelcolumn" enablecolumn="enablecolumn" iconcolumn="iconcolumn" checkboxcolumn="checkboxcolumn" hotkeycolumn="hotkeycolumn" userdatacolumn="userdatacolumn" onmenuclick="pop_right_onmenuclick">
  207. <Dataset id="innerdataset">
  208. <ColumnInfo>
  209. <Column id="idcolumn" size="256"/>
  210. <Column id="captioncolumn" size="256"/>
  211. <Column id="levelcolumn" size="256"/>
  212. <Column id="enablecolumn" size="256"/>
  213. <Column id="iconcolumn" size="256"/>
  214. <Column id="checkboxcolumn" size="256"/>
  215. <Column id="hotkeycolumn" size="256"/>
  216. <Column id="userdatacolumn" size="256"/>
  217. </ColumnInfo>
  218. <Rows>
  219. <Row>
  220. <Col id="idcolumn">1</Col>
  221. <Col id="captioncolumn">병리번호별 상태조회</Col>
  222. <Col id="levelcolumn">lf_exeAcptDetlStat</Col>
  223. <Col id="enablecolumn"/>
  224. <Col id="iconcolumn"/>
  225. <Col id="checkboxcolumn"/>
  226. <Col id="hotkeycolumn"/>
  227. <Col id="userdatacolumn"/>
  228. </Row>
  229. </Rows>
  230. </Dataset>
  231. </PopupMenu>
  232. </Layout>
  233. </Layouts>
  234. <Objects>
  235. <Dataset id="ds_spccntinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  236. <ColumnInfo>
  237. <Column id="trancnt" type="STRING"/>
  238. <Column id="recvcnt" type="STRING"/>
  239. <Column id="acptcnt" type="STRING"/>
  240. <Column id="patcnt" type="STRING"/>
  241. <Column id="testcnt" type="STRING"/>
  242. </ColumnInfo>
  243. </Dataset>
  244. <Dataset id="ds_detlstatinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  245. <Dataset id="ds_grid_grd_acptspclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  246. <Dataset id="ds_init_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  247. <Dataset id="ds_init_hospenvinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  248. <Dataset id="ds_init_sysdtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  249. <Dataset id="ds_init_ptnocdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  250. <ColumnInfo>
  251. <Column id="ptnocd" type="STRING"/>
  252. <Column id="ptnonm" type="STRING"/>
  253. </ColumnInfo>
  254. </Dataset>
  255. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  256. </Objects>
  257. <Bind>
  258. <BindItem id="item0" compid="opt_spctran" propid="value" datasetid="ds_spccntinfo" columnid="trancnt"/>
  259. <BindItem id="item1" compid="opt_spcrecv" propid="value" datasetid="ds_spccntinfo" columnid="recvcnt"/>
  260. <BindItem id="item2" compid="opt_spcacpt" propid="value" datasetid="ds_spccntinfo" columnid="acptcnt"/>
  261. <BindItem id="item3" compid="opt_totalpat" propid="value" datasetid="ds_spccntinfo" columnid="patcnt"/>
  262. <BindItem id="item4" compid="opt_totalspc" propid="value" datasetid="ds_spccntinfo" columnid="testcnt"/>
  263. </Bind>
  264. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  265. * System Name :
  266. * Job Name :
  267. * Creator :
  268. * Make Date : 2015-05-19
  269. * Description :
  270. *---------------------------------------------------------------------------------------
  271. * Modify Date Modifier Modify Description
  272. *---------------------------------------------------------------------------------------
  273. * 2015-05-19 Live Converter TF->XP
  274. *
  275. *---------------------------------------------------------------------------------------
  276. ****************************************************************************************/
  277. include "com_commonxp::comm_main.xjs";
  278. include "lis_commonxp::LLZ001.xjs";
  279. include "lis_commonxp::LZZ001.xjs";
  280. include "lis_commonxp::LPZ001.xjs";
  281. //=======================================================================================
  282. // Function
  283. //---------------------------------------------------------------------------------------
  284. //콜백함수
  285. function cbf_SMLPP01100(strSvcID, nErrorCode, strErrorMag){
  286. if(nErrorCode != 0) sysf_messageBox("ID: " + strSvcID + " Error: " + strErrorMag, "E009", "");
  287. }
  288. function lf_exeInitialize(){
  289. var sInstcd = sysf_getUserInfo("dutplceinstcd");
  290. var sInDsName = dsf_createDsRow("ds_temp_search"
  291. , [{col: "instcd", val: sInstcd}]);
  292. // 서브밋호출
  293. var oParam = {};
  294. oParam.id = "TRLPZ00101";
  295. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  296. oParam.method = "reqGetHospitalEnvironmentSetInfo";
  297. oParam.inds = "refData="+sInDsName;
  298. oParam.outds = "ds_init_hospenvinfo=hospenvinfo";
  299. oParam.async = false;
  300. oParam.callback = "cbf_SMLPP01100";
  301. tranf_submit(oParam);
  302. var oParam = {};
  303. oParam.id = "TRLPZ00102";
  304. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  305. oParam.method = "reqGetSystemDateTimeInformation";
  306. oParam.inds = "refData="+sInDsName;
  307. oParam.outds = "ds_init_sysdtinfo=sysdtinfo";
  308. oParam.async = false;
  309. oParam.callback = "cbf_SMLPP01100";
  310. tranf_submit(oParam);
  311. var sInDsName = dsf_createDsRow("ds_temp_search"
  312. , [{col: "instcd", val: sInstcd}
  313. , {col: "refflagcd", val: "0"}]);
  314. // 서브밋호출
  315. var oParam = {};
  316. oParam.id = "TRLPZ00109";
  317. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  318. oParam.method = "reqGetPtNoCdList";
  319. oParam.inds = "refdata="+sInDsName;
  320. oParam.outds = "ds_init_ptnocdlist=rsltlist";
  321. oParam.async = false;
  322. oParam.callback = "cbf_SMLPP01100";
  323. tranf_submit(oParam);
  324. //---------------------------------------------------------
  325. // 병원환경정보를 취득하여 병리과와 병리팀 코드를 편집한다.
  326. lpzfUserDeptCd(ds_init_hospenvinfo, ds_hidden);
  327. div_search.cal_acptfromdd.value = ds_init_sysdtinfo.getColumn(0, "sysdd");
  328. div_search.cal_acpttodd.value = ds_init_sysdtinfo.getColumn(0, "sysdd");
  329. div_search.edt_refval.value = null;
  330. appf_getPatientInfoDetails("ds_init_paminfo");
  331. if(ds_init_paminfo.rowcount >= 0){
  332. if(!utlf_isNull(ds_init_paminfo.getColumn(0, "pid"))){
  333. div_search.cmb_refflagcd.value = "1";
  334. div_search.edt_refval.value = ds_init_paminfo.getColumn(0, "pid");
  335. lf_getSpcStatList();
  336. }
  337. }
  338. // div_search.cmb_ptnocd.value = "-";
  339. // div_search.cmb_refflagcd.value = "1";
  340. lf_getSpcStatList();
  341. div_search.edt_refval.setFocus();
  342. }
  343. function lf_getSpcStatList(){
  344. var sPtNoCd = div_search.cmb_ptnocd.value;
  345. // 조회시 병리번호 From ~ To 체크/셋팅 [include "lis_commonxp::LZZ001.xjs";]
  346. gf_getPtNoSetting( div_search.cal_acptfromdd.value
  347. , div_search.cal_acpttodd.value
  348. , div_search.cmb_ptnocd
  349. , div_search.edt_fromyear
  350. , div_search.edt_fromptno
  351. , div_search.edt_toyear
  352. , div_search.edt_toptno);
  353. var sInDsName = dsf_createDsRow("ds_temp_search"
  354. , [{col: "instcd", val: sysf_getUserInfo("dutplceinstcd")}
  355. , {col: "refmthd", val: utlf_transNullToEmpty(div_search.cmb_refflagcd.value)}
  356. , {col: "refval", val: utlf_transNullToEmpty(div_search.edt_refval.value)}
  357. , {col: "acptfromdd", val: utlf_transNullToEmpty(div_search.cal_acptfromdd.value)}
  358. , {col: "acpttodd", val: utlf_transNullToEmpty(div_search.cal_acpttodd.value)}
  359. , {col: "ptnocode", val: utlf_transNullToEmpty(sPtNoCd).replace("-","")}
  360. , {col: "fromyear", val: utlf_transNullToEmpty(div_search.edt_fromyear.value)}
  361. , {col: "fromptno", val: utlf_transNullToEmpty(div_search.edt_fromptno.value)}
  362. , {col: "toyear", val: utlf_transNullToEmpty(div_search.edt_toyear.value)}
  363. , {col: "toptno", val: utlf_transNullToEmpty(div_search.edt_toptno.value)}]);
  364. // 서브밋호출
  365. var oParam = {};
  366. oParam.id = "TRLPP01101";
  367. oParam.service = "plgyrefmngtapp.TestRsltRef";
  368. oParam.method = "reqGetSpcStatList";
  369. oParam.inds = "refData="+sInDsName;
  370. oParam.outds = "ds_grid_grd_acptspclist=acptspclist ds_spccntinfo=spccntinfo";
  371. oParam.async = false;
  372. oParam.callback = "cbf_SMLPP01100";
  373. tranf_submit(oParam);
  374. //상세상태를 자동으로 표시
  375. if(ds_grid_grd_acptspclist.rowcount > 0){
  376. lf_getSpcDeltStat(0);
  377. }
  378. }
  379. function lf_getSpcDeltStat(pRowNo){
  380. var bState = false;
  381. var iMaxRowCnt = 0;
  382. var sInDsName = dsf_createDsRow("ds_temp_search"
  383. , [{col: "instcd", val: ds_grid_grd_acptspclist.getColumn(pRowNo, "instcd")}
  384. , {col: "spcbarcdno", val: ds_grid_grd_acptspclist.getColumn(pRowNo, "spcbarcdno")}
  385. , {col: "pid", val: ds_grid_grd_acptspclist.getColumn(pRowNo, "pid")}
  386. , {col: "prcpdd", val: ds_grid_grd_acptspclist.getColumn(pRowNo, "prcpdd")}
  387. , {col: "execprcpuniqno", val: ds_grid_grd_acptspclist.getColumn(pRowNo, "execprcpuniqno")}]);
  388. // 서브밋호출
  389. var oParam = {};
  390. oParam.id = "TRLPP01102";
  391. oParam.service = "plgyrefmngtapp.TestRsltRef";
  392. oParam.method = "reqGetSpcDetlStat";
  393. oParam.inds = "refData="+sInDsName;
  394. oParam.outds = "ds_detlstatinfo=refrslt";
  395. oParam.async = false;
  396. oParam.callback = "cbf_SMLPP01100";
  397. tranf_submit(oParam);
  398. iMaxRowCnt = ds_detlstatinfo.rowcount;
  399. //초기화
  400. lf_exeCtrlInitialize();
  401. for(iNo = 0; iNo < iMaxRowCnt; iNo++){
  402. if (iNo == (iMaxRowCnt - 1) ) {
  403. bState = true;
  404. } else {
  405. bState = false;
  406. }
  407. switch (ds_detlstatinfo.getColumn(iNo, "tretflagcd")){
  408. // 바코드 출력
  409. case "400": {
  410. break;
  411. }// 채취일자 등록
  412. case "410": {
  413. lf_exeStatChange(iNo, rect_stat1, cap_cnts1, bState);
  414. break;
  415. }// 병리과 수신확인
  416. case "420": {
  417. lf_exeStatChange(iNo, rect_stat2, cap_cnts2, bState);
  418. break;
  419. }// 검체접수
  420. case "430": {
  421. lf_exeStatChange(iNo, rect_stat3, cap_cnts3, false);
  422. lf_exeStatChange(iNo, rect_stat7, cap_cnts7, bState);
  423. break;
  424. }// 검사중
  425. case "510": {
  426. if(bState){
  427. if(!ds_detlstatinfo.getColumn(iNo, "tretdd")){
  428. rect_stat7.style.backgroundColor = "#ff0000";
  429. }
  430. }
  431. break;
  432. }// 판독중
  433. case "700": {
  434. lf_exeStatChange(iNo, rect_stat4, cap_cnts4, bState);
  435. break;
  436. }// 예비결과 등록
  437. case "710": {
  438. if(bState){
  439. if(!utlf_isNull(ds_detlstatinfo.getColumn(iNo, "tretdd"))){
  440. rect_stat4.style.fillbrush.color = "#ff0000";
  441. }else if (!utlf_isNull(cap_cnts7.text)){
  442. rect_stat7.style.fillbrush.color = "#ff0000";
  443. }
  444. }
  445. break;
  446. }// 최종진단 등록
  447. case "730": {
  448. lf_exeStatChange(iNo, rect_stat5, cap_cnts5, bState);
  449. break;
  450. }// 수정진단 등록
  451. case "740": {
  452. lf_exeStatChange(iNo, rect_stat6, cap_cnts6, bState);
  453. break;
  454. }
  455. }
  456. }
  457. }
  458. function lf_exeStatChange(iNo, objCtrl1, objCtrl2, pState){
  459. var sMsg = "";
  460. sMsg += "시행일자 : " + ds_detlstatinfo.getColumn(iNo, "tretdd") + "\n";
  461. sMsg += "시행시간 : " + ds_detlstatinfo.getColumn(iNo, "trettm") + "\n";
  462. sMsg += "시 행 자 : " + ds_detlstatinfo.getColumn(iNo, "tretpsnnm");
  463. if(pState){
  464. objCtrl1.style.fillbrush.color = "#ff0000";
  465. objCtrl1.style.fillbrush.style = "solid";
  466. objCtrl1.style.fillbrush.antialiasing = "true";
  467. }else{
  468. objCtrl1.style.fillbrush.color = "#33cccc";
  469. objCtrl1.style.fillbrush.style = "solid";
  470. objCtrl1.style.fillbrush.antialiasing = "true";
  471. }
  472. objCtrl2.text = sMsg;
  473. }
  474. function lf_exeCtrlInitialize(){
  475. rect_stat1.style.fillbrush.color = "#f2f2ef";
  476. rect_stat1.style.fillbrush.style = "solid";
  477. rect_stat1.style.fillbrush.antialiasing = "true";
  478. cap_stat1.text = "검체전달(A)";
  479. cap_cnts1.text = "";
  480. rect_stat2.style.fillbrush.color = "#f2f2ef";
  481. rect_stat2.style.fillbrush.style = "solid";
  482. rect_stat2.style.fillbrush.antialiasing = "true";
  483. cap_stat2.text = "병리과 수신(B)";
  484. cap_cnts2.text = "";
  485. rect_stat3.style.fillbrush.color = "#f2f2ef";
  486. rect_stat3.style.fillbrush.style = "solid";
  487. rect_stat3.style.fillbrush.antialiasing = "true";
  488. cap_stat3.text = "검체접수(C)";
  489. cap_cnts3.text = "";
  490. rect_stat7.style.fillbrush.color = "#f2f2ef";
  491. rect_stat7.style.fillbrush.style = "solid";
  492. rect_stat7.style.fillbrush.antialiasing = "true";
  493. cap_stat7.text = "검사중(D)";
  494. cap_cnts7.text = "";
  495. rect_stat4.style.fillbrush.color = "#f2f2ef";
  496. rect_stat4.style.fillbrush.style = "solid";
  497. rect_stat4.style.fillbrush.antialiasing = "true";
  498. cap_stat4.text = "판독중(E)";
  499. cap_cnts4.text = "";
  500. rect_stat5.style.fillbrush.color = "#f2f2ef";
  501. rect_stat5.style.fillbrush.style = "solid";
  502. rect_stat5.style.fillbrush.antialiasing = "true";
  503. cap_stat5.text = "최종진단(F)";
  504. cap_cnts5.text = "";
  505. rect_stat6.style.fillbrush.color = "#f2f2ef";
  506. rect_stat6.style.fillbrush.style = "solid";
  507. rect_stat6.style.fillbrush.antialiasing = "true";
  508. cap_stat6.text = "수정진단(G)";
  509. cap_cnts6.text = "";
  510. }
  511. function lf_exePopupCallSytsRslt(){
  512. //환자상단정보 표시
  513. if(utlf_isNull(ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "execprcpuniqno"))){
  514. }else{
  515. var mngtflag = "S"; //조회구분
  516. var prcpdd = ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "prcpdd"); //처방일자
  517. var execprcpuniqno = ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "execprcpuniqno"); //실시부서유일번호
  518. var instcd = ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "instcd"); //기관코드
  519. var srchdd = utlf_getCurrentDate(); //기준일자
  520. var async = true; //비동기여부
  521. var condparam = mngtflag + '▦' + prcpdd + '▦' + execprcpuniqno + '▦' + instcd + '▦' + srchdd + '▦' + async;
  522. frmf_setParameter('condparam', condparam); // 글로벌변수에 저장
  523. appf_initPatientInfo();
  524. //통합결과 조회 부분 일단 주석 처리 화면 모두 개발후 수정 예정
  525. //상단정보를 이용하여 통합결과 조회 조회
  526. //modal("SMAER00800");
  527. }
  528. }
  529. function lf_exeAcptSpcClick(){
  530. lf_getSpcDeltStat(ds_grid_grd_acptspclist.rowposition);
  531. }
  532. function lf_exeSaveToExcel(){
  533. if(ds_grid_grd_acptspclist.rowcount > 0){
  534. grdf_exportExcel(grd_acptspclist, lf_lisGetTitle(this), "see", false, "", "none", false);
  535. } else {
  536. sysf_messageBox("저장할 내용이","I004","");
  537. }
  538. }
  539. function lf_exeAcptDetlStat(){
  540. dsf_createDs("ds_acptspclist"
  541. , [{col: "instcd"}
  542. , {col: "pid"}
  543. , {col: "prcpdd"}
  544. , {col: "spcbarcdno"}
  545. , {col: "execprcpuniqno"}]);
  546. var nRow = ds_acptspclist.addRow();
  547. ds_acptspclist.setColumn(nRow, "instcd", ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "instcd"));
  548. ds_acptspclist.setColumn(nRow, "pid", ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "pid"));
  549. ds_acptspclist.setColumn(nRow, "prcpdd", ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "prcpdd"));
  550. ds_acptspclist.setColumn(nRow, "spcbarcdno", ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "spcbarcdno"));
  551. ds_acptspclist.setColumn(nRow, "execprcpuniqno", ds_grid_grd_acptspclist.getColumn(ds_grid_grd_acptspclist.rowposition, "execprcpuniqno"));
  552. var objArg = new Object();
  553. objArg.DSParam = ds_acptspclist;
  554. frmf_modal("SPLPP01200","SPLPP01200",objArg);
  555. }
  556. function SMLPP01100_onload(obj:Form, e:LoadEventInfo){
  557. //폼 초기화 함수
  558. frmf_initForm(obj);
  559. lf_exeInitialize();
  560. }
  561. function div_search_btn_search_onclick(obj:Button, e:ClickEventInfo){
  562. lf_getSpcStatList();
  563. }
  564. function btn_left_onclick(obj:Button, e:ClickEventInfo){
  565. grd_acptspclist.setRealColSize(2, 0, false);
  566. grd_acptspclist.setRealColSize(15, 0, false);
  567. grd_acptspclist.setRealColSize(16, 0, false);
  568. grd_acptspclist.setRealColSize(17, 0, false);
  569. grd_acptspclist.setRealColSize(18, 0, false);
  570. grd_acptspclist.setRealColSize(19, 0, false);
  571. grd_acptspclist.setRealColSize(20, 0, false);
  572. }
  573. function btn_right_onclick(obj:Button, e:ClickEventInfo){
  574. grd_acptspclist.setRealColSize(2, 85, false);
  575. grd_acptspclist.setRealColSize(15, 60, false);
  576. grd_acptspclist.setRealColSize(16, 70, false);
  577. grd_acptspclist.setRealColSize(17, 60, false);
  578. grd_acptspclist.setRealColSize(18, 70, false);
  579. grd_acptspclist.setRealColSize(19, 60, false);
  580. grd_acptspclist.setRealColSize(20, 70, false);
  581. }
  582. function cap_stat6_onclick(obj:Static, e:ClickEventInfo){
  583. lf_exePopupCallSytsRslt();
  584. }
  585. function cap_stat5_onclick(obj:Static, e:ClickEventInfo){
  586. lf_exePopupCallSytsRslt();
  587. }
  588. function grd_acptspclist_oncellclick(obj:Grid, e:GridClickEventInfo){
  589. lf_exeAcptSpcClick();
  590. }
  591. function btn_excel_onclick(obj:Button, e:ClickEventInfo){
  592. lf_exeSaveToExcel();
  593. }
  594. function pop_right_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo){
  595. if (ds_grid_grd_acptspclist.rowcount < 0) return;
  596. var str = pop_right.innerdataset.getColumn(e.index, "levelcolumn");
  597. // 존재하지 않는 함수 체크
  598. if (this[str] == undefined) {
  599. sysf_messageBox("해당 function이", "E014");
  600. }else{
  601. // "exist_func"이 함수 타입인지 체크
  602. if (typeof eval(str) == "function")
  603. eval(str).call(); // function 인 경우 해당 함수를 call 한다.
  604. }
  605. }
  606. function cap_cnts5_onclick(obj:Static, e:ClickEventInfo){
  607. lf_exePopupCallSytsRslt();
  608. }
  609. function cap_cnts6_onclick(obj:Static, e:ClickEventInfo){
  610. lf_exePopupCallSytsRslt();
  611. }
  612. function grd_acptspclist_onrbuttondown(obj:Grid, e:GridMouseEventInfo){
  613. ds_grid_grd_acptspclist.rowposition = e.row;
  614. pop_right.trackPopup(e.screenX+5, e.screenY+5, "right bottom");
  615. }
  616. function div_search_edt_refval_onkeydown(obj:Edit, e:KeyEventInfo){
  617. if(e.keycode == 13){
  618. if( !utlf_isNull(div_search.cmb_refflagcd.value) ){
  619. if( div_search.cmb_refflagcd.value == "1" ){
  620. div_search.edt_refval.setSelect(0, div_search.edt_refval.value.length);
  621. }
  622. lf_getSpcStatList();
  623. } else {
  624. sysf_messageBox( "검색조건을 선택하세요." );
  625. return;
  626. }
  627. }
  628. }
  629. function div_search_cmb_refflagcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  630. {
  631. div_search.edt_refval.value = "";
  632. switch (div_search.cmb_refflagcd.value) {
  633. case "0":
  634. div_search.edt_refval.maxlength = 11:
  635. div_search.edt_refval.inputtype = "numberandenglish";
  636. break;
  637. case "1":
  638. div_search.edt_refval.maxlength = 9:
  639. div_search.edt_refval.inputtype = "number";
  640. break;
  641. }
  642. div_search.edt_refval.setFocus();
  643. }
  644. function div_search_edt_refval_onkillfocus(obj:Edit, e:KillFocusEventInfo)
  645. {
  646. if(div_search.cmb_refflagcd.value == "0"){
  647. obj.style.glow = "";
  648. obj.value = null;
  649. }
  650. }
  651. function div_search_edt_refval_onsetfocus(obj:Edit, e:SetFocusEventInfo)
  652. {
  653. if(div_search.cmb_refflagcd.value == "0"){
  654. obj.style.glow = "2 blue";
  655. }
  656. }
  657. ]]></Script>
  658. </Form>
  659. </FDL>