CLIP.e-Form.Consent.FormRepository.xml 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <!--<sqlMap namespace="CLIP.e-Form.Consent.Dfh" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >-->
  3. <sqlMap namespace="CLIP.e-Form.Consent.Knuh" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
  4. <statements>
  5. <statement id="GET_CATEGORY_FOR_DROPDOWN" parameterClass="System.Collections.Hashtable" resultMap="CategoryForDropdownMap">
  6. <![CDATA[
  7. SELECT CATEGORY_TYPE,
  8. CATEGORY_ID,
  9. CATEGORY_NAME
  10. FROM EFORM_CATEGORY
  11. WHERE USE_YN = 'Y'
  12. AND P_CATEGORY_RID = (SELECT CATEGORY_RID FROM EFORM_CATEGORY WHERE CATEGORY_ID = #category_id#)
  13. ORDER BY CATEGORY_NAME
  14. ]]>
  15. <!--isEqual property="category_id" compareValue="1">
  16. <![CDATA[
  17. WHERE USE_YN = 'Y'
  18. AND P_CATEGORY_RID = '1'
  19. ]]>
  20. </isEqual>
  21. <isNotEqual property="category_id" compareValue="1">
  22. <![CDATA[
  23. WHERE USE_YN = 'Y'
  24. AND P_CATEGORY_RID = (SELECT CATEGORY_RID FROM EFORM_CATEGORY WHERE CATEGORY_ID = #category_id#)
  25. ]]>
  26. </isNotEqual><![CDATA[
  27. ORDER BY CATEGORY_NAME]]-->
  28. </statement>
  29. <statement id="GET_CONSENT_BY_SEARCH_LIST" parameterClass="System.Collections.Hashtable" resultMap="ConsentMap">
  30. <![CDATA[
  31. SELECT '' AS CONSENT_MST_RID,
  32. CF.FORM_ID AS FORM_ID,
  33. CF.FORM_CODE AS FORM_CD,
  34. CF.FORM_NAME AS FORM_NAME,
  35. '' AS CONSENT_STATE,
  36. '' AS CONSENT_STATE_DISP,
  37. '' AS OCR_NUMBER,
  38. MRFM.OCRTAGPRNTYN AS OCRTAGPRNTYN,
  39. MRFM.PRNTCNT AS PRNTCNT,
  40. MRFM.PRINT_ONLY AS PRNT_ONLY,
  41. MRFM.FORMPRNTNM AS FORMPRNTNM,
  42. CASE WHEN EXISTS (SELECT 1
  43. FROM EMR.MMBDHRCD C
  44. WHERE C.INSTCD = #instCd#
  45. AND C.HARDCDNO = '6920'
  46. AND C.TRGTCD = CF.FORM_CODE
  47. ) THEN
  48. 'N'
  49. ELSE 'Y'
  50. END AS USERDRFLAG,
  51. (SELECT C.RMK
  52. FROM EMR.MMBMHRCD C,
  53. EMR.MMBDHRCD D
  54. WHERE C.INSTCD = #instCd#
  55. AND C.HARDCDNO = '6011'
  56. AND D.INSTCD = C.INSTCD
  57. AND D.HARDCDNO = C.HARDCDNO
  58. AND D.TRGTCD != C.RMK
  59. AND D.TRGTCD = CF.FORM_CODE
  60. AND NVL(D.HARDSPEC, 'Y') = 'Y'
  61. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN D.VALIFROMDD AND D.VALITODD
  62. AND ROWNUM = 1
  63. ) AS LNKFORMCD,
  64. (
  65. SELECT DECODE(COUNT(FORM.FORMCD), 0, '-', '1100010977')
  66. FROM EMR.MRFMCALCMECH MECH,
  67. EMR.MRFMFORM FORM
  68. WHERE MECH.INSTCD = #instCd#
  69. AND FORM.FORMCD = CF.FORM_CODE
  70. AND MECH.INSTCD = FORM.INSTCD
  71. AND MECH.FORMCD = FORM.FORMCD
  72. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN FORM.FORMFROMDT AND FORM.FORMTODT
  73. AND MECH.BIZFLAG='JINJEONG'
  74. ) AS JINJEONGCD,
  75. NVL(MRFM.DRONLY, 'N') AS DRONLY,
  76. DECODE(MRFM.CERTUSEYN, 'Y', MRFM.CERTUSEYN, 'N') AS CERT_USE_YN,
  77. #instCd# AS HOS_TYPE,
  78. '' AS CRETNO,
  79. '' AS PID,
  80. '' AS PATIENT_NAME,
  81. '' AS VISIT_TYPE,
  82. '' AS CLN_DEPT_CD,
  83. '' AS CLN_DEPT_NM,
  84. '' AS CLN_DATE,
  85. '' AS MAIN_DR_ID,
  86. '' AS WARDCD,
  87. '' AS ROOMCD,
  88. OP.OPDIAGNM AS OPDIAGNM,
  89. OP.OPNM AS OPNM,
  90. '' AS OPRSRVNO,
  91. '' AS CREATE_USER_ID,
  92. '' AS CREATE_USER_NAME,
  93. '' AS CREATE_DATETIME,
  94. '' AS MODIFY_USER_ID,
  95. '' AS MODIFY_USER_NAME
  96. FROM EMA.CLIP_FORM CF,
  97. EMR.MRFMFORM MRFM,
  98. (SELECT TRGTCD,
  99. TRGTCDNM AS OPDIAGNM,
  100. TRGTCDSNM AS OPNM
  101. FROM EMR.MMBDHRCD
  102. WHERE INSTCD = #instCd#
  103. AND HARDCDNO = '6011'
  104. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN VALIFROMDD AND VALITODD
  105. ) OP
  106. WHERE 1 = 1
  107. AND MRFM.INSTCD = #instCd#
  108. AND MRFM.FORMPROGFLAG LIKE 'OCR%'
  109. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN MRFM.FORMFROMDT AND MRFM.FORMTODT
  110. AND CF.FORM_CODE = MRFM.FORMCD
  111. AND OP.TRGTCD(+) = CF.FORM_CODE
  112. ]]>
  113. <isNotEmpty property="keyWord">
  114. <![CDATA[
  115. AND REPLACE(UPPER(CF.FORM_NAME), ' ', '') LIKE REPLACE(UPPER(#keyWord#), ' ', '')
  116. ]]>
  117. </isNotEmpty>
  118. <isNotEmpty property="categoryId">
  119. <![CDATA[
  120. AND CF.FORM_CATEGORY_ID = #categoryId#
  121. ]]>
  122. </isNotEmpty>
  123. <![CDATA[
  124. ORDER BY CF.FORM_NAME
  125. ]]>
  126. </statement>
  127. <statement id="GET_FORM_GUID_BY_FORM_CD" parameterClass="System.Collections.Hashtable" resultClass="String">
  128. <![CDATA[
  129. SELECT form_guid
  130. FROM v_eform_formdoc
  131. WHERE form_cd = #formCd#]]>
  132. </statement>
  133. <statement id="GET_CONSENT_LIST" parameterClass="System.Collections.Hashtable" resultMap="ConsentMap">
  134. <![CDATA[
  135. SELECT CMT.CONSENT_MST_RID AS CONSENT_MST_RID,
  136. CF.FORM_ID AS FORM_ID,
  137. CF.FORM_CODE AS FORM_CD,
  138. CF.FORM_NAME AS FORM_NAME,
  139. CASE
  140. WHEN CMT.CONSENT_STATE = 'PAPER_OUT'
  141. THEN
  142. (
  143. SELECT
  144. CASE WHEN B.STATCD IN ('P','CR') THEN '출력'
  145. WHEN B.STATCD IN ('R','CC') THEN '반납'
  146. WHEN B.STATCD = 'C' THEN '반납확인'
  147. ELSE NULL
  148. END
  149. FROM EMR.MRFMOCRPRNT A, EMR.MRFHOCRPRNT B
  150. WHERE A.INSTCD = B.INSTCD
  151. AND A.OCRTAG = B.OCRTAG
  152. AND A.UPDTDT = B.UPDTDT
  153. AND NVL(A.EOCRYN,'N') = 'N'
  154. AND B.STATCD IN ('P','R','C','CR','CC')
  155. AND A.INSTCD = #instCd#
  156. AND A.OCRTAG = CMT.OCR_NUMBER
  157. )
  158. ELSE
  159. DECODE(CMT.CONSENT_STATE
  160. , 'TEMP', '임시'
  161. , 'ELECTR_CMP', '확인'
  162. , 'PAPER_OUT', '출력'
  163. , 'CERTIFY_CMP', '인증'
  164. , 'UNFINISHED', '연동'
  165. , 'VERBAL', '구두'
  166. , CMT.CONSENT_STATE)
  167. END AS CONSENT_STATE_DISP,
  168. CMT.CONSENT_STATE AS CONSENT_STATE,
  169. CMT.OCR_NUMBER AS OCR_NUMBER,
  170. MRFM.OCRTAGPRNTYN AS OCRTAGPRNTYN,
  171. MRFM.PRINT_ONLY AS PRNT_ONLY,
  172. MRFM.PRNTCNT AS PRNTCNT,
  173. MRFM.FORMPRNTNM AS FORMPRNTNM,
  174. CASE
  175. WHEN
  176. EXISTS
  177. (
  178. SELECT 1
  179. FROM EMR.MMBDHRCD C
  180. WHERE C.INSTCD = #instCd#
  181. AND C.HARDCDNO = '6920'
  182. AND C.TRGTCD = CF.FORM_CODE
  183. )
  184. THEN 'N'
  185. ELSE 'Y'
  186. END AS USERDRFLAG,
  187. '' AS LNKFORMCD,
  188. '' AS JINJEONGCD,
  189. NVL(MRFM.DRONLY, 'N') AS DRONLY,
  190. DECODE(MRFM.CERTUSEYN, 'Y', MRFM.CERTUSEYN, 'N') AS CERT_USE_YN,
  191. CMT.HOS_TYPE AS HOS_TYPE,
  192. CMT.CRETNO AS CRETNO,
  193. CMT.PID AS PID,
  194. (
  195. SELECT PTBS.HNGNM
  196. FROM PAM.PMCMPTBS PTBS
  197. WHERE PTBS.INSTCD = #instCd#
  198. AND PTBS.PID = CMT.PID
  199. ) AS PATIENT_NAME,
  200. CMT.CLN_DATE AS INDD,
  201. CMT.VISIT_TYPE AS VISIT_TYPE,
  202. CMT.CLN_DEPT_CD AS CLN_DEPT_CD,
  203. (
  204. SELECT DEPTHNGNM
  205. FROM COM.ZSDDDEPT E
  206. WHERE E.INSTCD = #instCd#
  207. AND E.DEPTCD = CMT.CLN_DEPT_CD
  208. AND E.VALITODD = '99991231'
  209. ) AS CLN_DEPT_NM,
  210. CMT.CLN_DATE AS CLN_DATE,
  211. CMT.MAIN_DR_ID AS MAIN_DR_ID,
  212. CMT.WARDCD AS WARDCD,
  213. CMT.ROOMCD AS ROOMCD,
  214. OP.OPDIAGNM AS OPDIAGNM,
  215. OP.OPNM AS OPNM,
  216. CMT.OPRSRVNO AS OPRSRVNO,
  217. CMT.CREATE_USER_ID AS CREATE_USER_ID,
  218. CMT.CREATE_USER_NAME AS CREATE_USER_NAME,
  219. CMT.MODIFY_DATETIME AS CREATE_DATETIME,
  220. CMT.MODIFY_USER_ID AS MODIFY_USER_ID,
  221. CMT.MODIFY_USER_NAME AS MODIFY_USER_NAME
  222. FROM EMA.CONSENT_MST CMT
  223. , EMA.CLIP_FORM CF
  224. , EMR.MRFMFORM MRFM
  225. ,
  226. (
  227. SELECT TRGTCD
  228. , TRGTCDNM AS OPDIAGNM
  229. , TRGTCDSNM AS OPNM
  230. FROM EMR.MMBDHRCD
  231. WHERE INSTCD = #instCd#
  232. AND HARDCDNO = '6011'
  233. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN VALIFROMDD AND VALITODD
  234. ) OP
  235. WHERE CMT.HOS_TYPE = #instCd#
  236. ]]>
  237. <isNotEmpty property="patientCode">
  238. <isEmpty property="userId">
  239. <![CDATA[
  240. AND CMT.PID = #pid#
  241. ]]>
  242. </isEmpty>
  243. </isNotEmpty>
  244. <isNotEmpty property="consentMstRid">
  245. <![CDATA[
  246. AND CMT.CONSENT_MST_RID = #consentMstRid#
  247. ]]>
  248. </isNotEmpty>
  249. <isNotEmpty property="userId">
  250. <![CDATA[
  251. AND #userId# = CMT.MODIFY_USER_ID
  252. ]]>
  253. </isNotEmpty>
  254. <![CDATA[
  255. AND CMT.USE_YN = 'Y'
  256. AND TO_CHAR(TO_DATE(CMT.MODIFY_DATETIME, 'YYYY-MM-DD HH24:MI:SS'), 'YYYYMMDD') BETWEEN #startDt# AND #endDt#
  257. AND CF.FORM_ID = CMT.FORM_RID
  258. AND MRFM.INSTCD = CMT.HOS_TYPE
  259. AND MRFM.FORMCD = CF.FORM_CODE
  260. AND MRFM.FORMPROGFLAG LIKE 'OCR%'
  261. AND MRFM.FORMLEVLCD != '-'
  262. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN MRFM.FORMFROMDT AND MRFM.FORMTODT
  263. ]]>
  264. <isNotEqual property="consentState" compareValue="ALL">
  265. <![CDATA[
  266. AND CMT.CONSENT_STATE IN ($consentState$)
  267. ]]>
  268. </isNotEqual><![CDATA[
  269. AND
  270. CASE
  271. WHEN EXISTS
  272. (
  273. SELECT 1
  274. FROM EMR.MRFMOCRPRNT E
  275. WHERE E.INSTCD = #instCd#
  276. AND E.OCRTAG = CMT.OCR_NUMBER
  277. )
  278. THEN
  279. CASE WHEN
  280. CMT.CONSENT_STATE IN ('UNFINISHED', 'TEMP', 'PAPER_OUT', 'ELECTR_CMP')
  281. AND EXISTS
  282. (
  283. SELECT 1
  284. FROM EMR.MRFMOCRPRNT E
  285. , EMR.MRFHOCRPRNT F
  286. WHERE E.INSTCD = #instCd#
  287. AND E.OCRTAG = CMT.OCR_NUMBER
  288. AND F.INSTCD = E.INSTCD
  289. AND F.OCRTAG = E.OCRTAG
  290. AND F.UPDTDT = E.UPDTDT
  291. AND F.STATCD IN ('C', 'R', 'CC', 'CR', 'P')
  292. ) THEN 'Y'
  293. WHEN CMT.CONSENT_STATE = 'CERTIFY_CMP'
  294. AND EXISTS
  295. (
  296. SELECT 1
  297. FROM EMR.MRFMOCRPRNT E
  298. , EMR.MRFHOCRPRNT F
  299. WHERE E.INSTCD = #instCd#
  300. AND E.OCRTAG = CMT.OCR_NUMBER
  301. AND F.INSTCD = E.INSTCD
  302. AND F.OCRTAG = E.OCRTAG
  303. AND F.UPDTDT = E.UPDTDT
  304. AND F.STATCD = 'C'
  305. ) THEN 'Y'
  306. ELSE 'N'
  307. END
  308. ELSE 'N'
  309. END = 'Y'
  310. AND OP.TRGTCD(+) = CF.FORM_CODE
  311. ]]>
  312. <![CDATA[
  313. ORDER BY CF.FORM_NAME ASC, OCR_NUMBER DESC
  314. ]]>
  315. </statement>
  316. <statement id="GET_CONSENT_IMAGE" parameterClass="System.Collections.Hashtable" resultMap="ConsentImageMap">
  317. <![CDATA[
  318. SELECT CONSENT_MST_RID
  319. , CONSENT_IMAGE_RID
  320. , FORM_RID
  321. , CASE WHEN SUBSTR(IMAGE_PATH,0,6) = 'Image1' THEN '\\192.168.100.32\image_a01' || SUBSTR(IMAGE_PATH,7)
  322. WHEN SUBSTR(IMAGE_PATH,0,6) = 'Image2' THEN '\\192.168.100.32\image_a02' || SUBSTR(IMAGE_PATH,7)
  323. WHEN SUBSTR(IMAGE_PATH,0,6) = 'Image3' THEN '\\192.168.100.32\image_a03' || SUBSTR(IMAGE_PATH,7)
  324. ELSE IMAGE_PATH
  325. END IMAGE_PATH
  326. , IMAGE_FILENAME
  327. , COMPLETE_YN
  328. , CREATE_USER_ID
  329. , CREATE_DATETIME
  330. FROM CONSENT_IMAGE
  331. WHERE COMPLETE_YN = 'Y'
  332. AND CONSENT_MST_RID = #consent-mst-rid#
  333. ORDER BY CONSENT_IMAGE_RID
  334. ]]>
  335. </statement>
  336. <statement id="GET_CONSET_IMAGE_COUNT" parameterClass="System.Collections.Hashtable" resultClass="System.Int32">
  337. <![CDATA[
  338. SELECT COUNT(*) AS CNT
  339. FROM EMA.CONSENT_IMAGE
  340. WHERE CONSENT_MST_RID = #consentMstRid#
  341. ]]>
  342. </statement>
  343. <statement id="GET_CONSENT_IMAGE_FILE_NAME" parameterClass="System.Collections.Hashtable" resultMap="ConsentImageMap">
  344. <![CDATA[
  345. SELECT CONSENT_MST_RID
  346. , CONSENT_IMAGE_RID
  347. , FORM_RID
  348. , CASE WHEN SUBSTR(IMAGE_PATH,0,6) = 'Image1' THEN '\\192.168.100.32\image_a01' || SUBSTR(IMAGE_PATH,7)
  349. WHEN SUBSTR(IMAGE_PATH,0,6) = 'Image2' THEN '\\192.168.100.32\image_a02' || SUBSTR(IMAGE_PATH,7)
  350. WHEN SUBSTR(IMAGE_PATH,0,6) = 'Image3' THEN '\\192.168.100.32\image_a03' || SUBSTR(IMAGE_PATH,7)
  351. ELSE IMAGE_PATH
  352. END IMAGE_PATH
  353. , IMAGE_FILENAME
  354. , COMPLETE_YN
  355. , CREATE_USER_ID
  356. , CREATE_DATETIME
  357. FROM EMA.CONSENT_IMAGE
  358. WHERE CONSENT_MST_RID = #consentMstRid#
  359. ORDER BY CONSENT_IMAGE_RID
  360. ]]>
  361. </statement>
  362. <update id="UPDATE_CONSENT_IMAGE" parameterClas="System.Collections.Hashtable">
  363. <![CDATA[
  364. UPDATE EMA.CONSENT_IMAGE
  365. SET COMPLETE_YN = 'Y'
  366. WHERE CONSENT_MST_RID = #consentMstRid#
  367. ]]>
  368. </update>
  369. <update id="UPDATE_CHARPAGE_T" parameterClas="System.Collections.Hashtable">
  370. <![CDATA[
  371. UPDATE CMR.CHARTPAGET
  372. SET LASTUPDTRID = #userId#,
  373. LASTUPDTDT = SYSTIMESTAMP
  374. WHERE OCRCODE = #ocrCode#
  375. ]]>
  376. </update>
  377. <statement id="GetConsentStateCheck" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  378. <![CDATA[
  379. select mst.consent_state
  380. from EMA.CONSENT_MST mst
  381. where mst.consent_mst_rid = #consentmstrid#
  382. and mst.use_yn = 'Y'
  383. ]]>
  384. </statement>
  385. <statement id="getImageServerProps" parameterClass="System.Collections.Hashtable" resultMap="ImageServerPropsMap">
  386. <![CDATA[
  387. SELECT
  388. IPADDRESS,
  389. LOCALPATH,
  390. ACTIVE,
  391. CIFSUSER,
  392. CIFSPASS
  393. FROM cmr.patht
  394. WHERE
  395. active IN ('A', 'R', 'C', 'V')
  396. order by active
  397. ]]>
  398. </statement>
  399. <!-- tatement id="GET_CONSENT_BY_FORMCD" parameterClass="System.Collections.Hashtable" resultMap="ConsentBySearchMap">
  400. <![CDATA[
  401. SELECT a.form_cd
  402. , a.form_guid
  403. , a.form_name
  404. , '' AS full_category_name
  405. , a.form_rid
  406. , b.prntcnt
  407. , b.print_only
  408. , b.ocrtagprntyn
  409. , ( SELECT formprntnm
  410. FROM emr.mrfmform d
  411. WHERE d.instcd = #instcd#
  412. AND d.formcd = b.formcd
  413. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN d.formfromdt AND d.formtodt
  414. ) AS formprntnm
  415. , c.opdiagnm
  416. , c.opnm
  417. , CASE WHEN EXISTS ( SELECT 1
  418. FROM emr.mmbdhrcd d
  419. WHERE d.instcd = b.instcd
  420. AND d.hardcdno = '6920'
  421. AND d.trgtcd = b.formcd
  422. ) THEN
  423. 'N'
  424. ELSE 'Y'
  425. END AS userdrflag
  426. , ( SELECT c.rmk
  427. FROM emr.mmbmhrcd c
  428. , emr.mmbdhrcd d
  429. WHERE c.instcd = #instcd#
  430. AND c.hardcdno = '6011'
  431. AND d.instcd = c.instcd
  432. AND d.hardcdno = c.hardcdno
  433. AND d.trgtcd != c.rmk
  434. AND NVL(d.hardspec, '-') != 'N'
  435. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN d.valifromdd AND d.valitodd
  436. AND ROWNUM = 1
  437. ) AS lnkformcd
  438. FROM ema.eform_document a
  439. , emr.mrfmform b
  440. , ( SELECT trgtcd
  441. , trgtcdnm AS opdiagnm
  442. , trgtcdsnm AS opnm
  443. FROM emr.mmbdhrcd
  444. WHERE instcd = #instcd#
  445. AND hardcdno = '6011'
  446. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd
  447. ) c
  448. WHERE a.form_cd IN ($formcdarr$)
  449. AND a.use_yn = 'Y'
  450. AND a.deploy_yn = 'Y'
  451. AND a.form_version = ( SELECT MAX(form_version)
  452. FROM ema.eform_document c
  453. WHERE c.form_cd = a.form_cd
  454. AND c.use_yn = 'Y'
  455. AND c.deploy_yn = 'Y' )
  456. AND b.instcd = #instcd#
  457. AND b.formcd = a.form_cd
  458. AND b.formprogflag LIKE 'OCR%'
  459. AND b.formlevlcd != '-'
  460. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN b.formfromdt AND b.formtodt
  461. AND c.trgtcd(+) = b.formcd]]>
  462. </statement -->
  463. <statement id="GET_CONSENT_BY_FORMCD" parameterClass="System.Collections.Hashtable" resultMap="ConsentMap">
  464. <![CDATA[
  465. SELECT '' AS CONSENT_MST_RID,
  466. CF.FORM_ID AS FORM_ID,
  467. CF.FORM_CODE AS FORM_CD,
  468. CF.FORM_NAME AS FORM_NAME,
  469. '' AS CONSENT_STATE,
  470. '' AS CONSENT_STATE_DISP,
  471. '' AS OCR_TAG,
  472. MRF.OCRTAGPRNTYN AS OCRTAGPRNTYN,
  473. MRF.PRNTCNT AS PRNTCNT,
  474. MRF.PRINT_ONLY AS PRNT_ONLY,
  475. MRF.FORMPRNTNM AS FORMPRNTNM,
  476. CASE
  477. WHEN EXISTS
  478. (
  479. SELECT 1
  480. FROM EMR.MMBDHRCD D
  481. WHERE D.INSTCD = MRF.INSTCD
  482. AND D.HARDCDNO = '6920'
  483. AND D.TRGTCD = MRF.FORMCD
  484. ) THEN 'N'
  485. ELSE 'Y'
  486. END AS USERDRFLAG,
  487. (
  488. SELECT C.RMK
  489. FROM EMR.MMBMHRCD C,
  490. EMR.MMBDHRCD D
  491. WHERE C.INSTCD = #instCd#
  492. AND C.HARDCDNO = '6011'
  493. AND D.INSTCD = C.INSTCD
  494. AND D.HARDCDNO = C.HARDCDNO
  495. AND D.TRGTCD != C.RMK
  496. AND NVL(D.HARDSPEC, '-') != 'N'
  497. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN D.VALIFROMDD AND D.VALITODD
  498. AND ROWNUM = 1
  499. ) AS LNKFORMCD,
  500. (
  501. SELECT DECODE(COUNT(FORM.FORMCD), 0, '-', '1100010977')
  502. FROM EMR.MRFMCALCMECH MECH,
  503. EMR.MRFMFORM FORM
  504. WHERE MECH.INSTCD = #instCd#
  505. AND FORM.FORMCD = CF.FORM_CODE
  506. AND MECH.INSTCD = FORM.INSTCD
  507. AND MECH.FORMCD = FORM.FORMCD
  508. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN FORM.FORMFROMDT AND FORM.FORMTODT
  509. AND MECH.BIZFLAG = 'JINJEONG'
  510. ) AS JINJEONGCD,
  511. NVL(MRFM.DRONLY, 'N') AS DRONLY,
  512. DECODE(MRF.CERTUSEYN, 'Y', MRF.CERTUSEYN, 'N') AS CERT_USE_YN,
  513. #instCd# AS HOS_TYPE,
  514. '' AS CRETNO,
  515. '' AS PID,
  516. '' AS PATIENT_NAME,
  517. '' AS VISIT_TYPE,
  518. '' AS CLN_DEPT_CD,
  519. '' AS CLN_DEPT_NM,
  520. '' AS CLN_DATE,
  521. '' AS MAIN_DR_ID,
  522. '' AS WARDCD,
  523. '' AS ROOMCD,
  524. OP.OPDIAGNM AS OP_DIAG_NM,
  525. OP.OPNM AS OP_NM,
  526. '' AS OPRSRVNO,
  527. '' AS CREATE_USER_ID,
  528. '' AS CREATE_USER_NAME,
  529. '' AS CREATE_DATETIME,
  530. '' AS MODIFY_USER_ID,
  531. '' AS MODIFY_USER_NAME
  532. FROM EMA.CLIP_FORM CF,
  533. LEFT OUTER JOIN EMA.CLIP_FORM_DATA CFD ON CF.FORM_ID = CFD.FORM_ID
  534. LEFT OUTER JOIN EMR.MRFMFORM MRF ON CF.FORM_CODE = MRF.FORMCD AND MRF.INSTCD = #instCd#
  535. , (
  536. SELECT TRGTCD,
  537. TRGTCDNM AS OPDIAGNM,
  538. TRGTCDSNM AS OPNM
  539. FROM EMR.MMBDHRCD
  540. WHERE INSTCD = #instCd#
  541. AND HARDCDNO = '6011'
  542. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN VALIFROMDD AND VALITODD
  543. ) OP
  544. WHERE CF.FORM_ID = CFD.FORM_ID
  545. AND CF.FORM_CODE = MRF.FORMCD
  546. AND MRF.INSTCD = #instCd#
  547. AND CF.FORM_CODE IN ($formcdarr$)
  548. AND CF.PRODUCT_ID = 1
  549. AND CF.FORM_TYPE = 'FORM_TYPE_001'
  550. AND CF.USE_YN = 'Y'
  551. AND MRF.INSTCD = #instCd#
  552. AND MRF.FORMCD = CF.FORM_CODE
  553. AND MRF.FORMPROGFLAG LIKE 'OCR%'
  554. AND MRF.FORMLEVLCD != '-'
  555. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN MRF.FORMFROMDT AND MRF.FORMTODT
  556. AND OP.TRGTCD(+) = MRF.FORMCD
  557. ]]>
  558. </statement>
  559. <statement id="GET_CONSENT_FORM_XML" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  560. <![CDATA[
  561. SELECT EMR.blob_to_clob(FORM_XML)
  562. FROM EMA.CONSENT_DATA
  563. WHERE 1 = 1
  564. AND CONSENT_MST_RID = #consentMstRid#
  565. ]]>
  566. </statement>
  567. <statement id="GET_OCR_STRING" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  568. <![CDATA[
  569. SELECT A.TRGTCDNM
  570. FROM emr.MMBDHRCD A
  571. WHERE INSTCD = #instcd#
  572. AND trgtcd = #formcd#
  573. AND hardcdno = '6938'
  574. AND TO_CHAR (SYSDATE, 'YYYYMMDDHH') BETWEEN A.valifromdd and a.valitodd
  575. AND rownum = 1]]>
  576. </statement>
  577. <statement id="GET_CERTUSEYN" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  578. <![CDATA[
  579. SELECT A.CERTUSEYN
  580. from emr.mrfmform a
  581. where 1=1
  582. and rownum = 1
  583. and instcd = #instcd#
  584. and A.FORMCD = #formcd#
  585. and A.FORMPROGFLAG like 'OCR%'
  586. and to_char(sysdate, 'YYYYMMDDHH24MISS') between a.formfromdt and a.formtodt]]>
  587. </statement>
  588. <statement id="GET_CERTUSEYN_MAP" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  589. <![CDATA[
  590. SELECT LISTAGG(DECODE(a.certuseyn,'Y', a.certuseyn,'N'), ', ') WITHIN GROUP (ORDER BY a.certuseyn) as result
  591. FROM emr.mrfmform A
  592. WHERE instcd = #instcd#
  593. AND A.FORMCD IN ($formcd$)
  594. AND A.FORMPROGFLAG LIKE 'OCR%'`
  595. AND to_char(sysdate, 'YYYYMMDDHH24MISS') between a.formfromdt and a.formtodt]]>
  596. </statement>
  597. <statement id="GET_RESULT" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  598. <![CDATA[
  599. SELECT NVL(LISTAGG(c.formcd, ',') WITHIN GROUP (ORDER BY c.formcd), 'N') AS RESULT
  600. FROM (SELECT DISTINCT a.formcd
  601. FROM emr.mrfmocrprnt a, emr.mrfhocrprnt b
  602. WHERE a.instcd = b.instcd
  603. AND a.ocrtag = b.ocrtag
  604. AND a.updtdt = b.updtdt
  605. AND a.instcd = '031'
  606. AND a.formcd IN ('1300013648')
  607. AND a.pid = '1783676'
  608. AND substr(a.FSTPRNTDT,1,8) = to_char(sysdate,'yyyymmdd')
  609. AND a.eocryn = 'Y'
  610. AND b.statcd = 'C') c
  611. ]]>
  612. </statement>
  613. <statement id="GET_DUAL_MODE" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  614. <![CDATA[
  615. SELECT CASE
  616. WHEN count(*) > 0 THEN 'Y'
  617. ELSE 'N'
  618. END AS result
  619. FROM emr.MMBDHRCD A
  620. WHERE a.instcd = #instcd#
  621. AND A.hardcdno = '6960'
  622. AND a.trgtcd = #ipaddr#
  623. AND TO_CHAR (SYSDATE, 'YYYYMMDDHH') BETWEEN A.valifromdd AND a.valitodd]]>
  624. </statement>
  625. <statement id="TO_CERTIFY_CONSENT_MST" parameterClass="System.Collections.Hashtable">
  626. <![CDATA[
  627. UPDATE ema.consent_mst
  628. SET consent_state = 'CERTIFY_CMP'
  629. ,complete_datetime = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss')
  630. , modify_datetime = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss')
  631. WHERE consent_mst_rid in ($consent_rids$)
  632. AND hos_type = #instcd#
  633. AND consent_state = 'ELECTR_CMP']]>
  634. </statement>
  635. <statement id="TO_CERTIFY_OCRPRNT" parameterClass="System.Collections.Hashtable">
  636. <![CDATA[
  637. UPDATE emr.mrfhocrprnt
  638. SET statcd = 'C'
  639. , scanyn = 'Y'
  640. , lastupdtdt = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss')
  641. WHERE ocrtag IN ($ocrtags$)
  642. AND instcd = #instcd#
  643. AND statcd = 'P'
  644. AND scanyn = 'N']]>
  645. </statement>
  646. <statement id="UPDATE_CONSENT_MASTER" parameterClass="System.Collections.Hashtable">
  647. <![CDATA[
  648. update EMA.consent_mst
  649. set use_yn = 'N'
  650. where hos_type = #instcd#
  651. and pid = #pid#
  652. and use_yn = 'Y'
  653. and ocr_number = #ocrtag#]]>
  654. </statement>
  655. <statement id="UPDATE_OCR_HISTORY" parameterClass="System.Collections.Hashtable">
  656. <![CDATA[
  657. update emr.mrfmocrprnt
  658. set instcd = '999'
  659. where instcd = #instcd#
  660. and pid = #pid#
  661. and ocrtag = #ocrtag#]]>
  662. </statement>
  663. <statement id="CHECK_JINJEONG_DOCUMENT" parameterClass="System.Collections.Hashtable">
  664. <![CDATA[
  665. SELECT COUNT(form.FORMCD)
  666. FROM emr.mrfmcalcmech mech,
  667. emr.mrfmform form
  668. WHERE mech.instcd = #instcd#
  669. AND form.formcd = #formcd#
  670. AND mech.instcd = form.instcd
  671. AND mech.formcd = form.formcd
  672. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') between form.formfromdt and form.formtodt
  673. AND mech.bizflag='JINJEONG'
  674. ]]>
  675. </statement>
  676. <statement id="GET_LINKED_ANST_DOCUMENT" parameterClass="System.Collections.Hashtable">
  677. <![CDATA[
  678. SELECT RMK AS LINKFORMCD
  679. FROM EMR.MMBMHRCD
  680. WHERE INSTCD = #instcd#
  681. AND HARDCDNO = 6011
  682. AND ROWNUM = 1
  683. ]]>
  684. </statement>
  685. <statement id="CHECK_OPERATION_DOCUMENT" parameterClass="System.Collections.Hashtable">
  686. <![CDATA[
  687. select case when count(*) > 0 then 'Y'
  688. else 'N'
  689. end as result
  690. from emr.mmbdhrcd
  691. where hardcdno = 6011
  692. and instcd = #instcd#
  693. and trgtcd = #formCd#
  694. and to_char(sysdate, 'yyyyMMdd') between valifromdd and valitodd
  695. ]]>
  696. </statement>
  697. <statement id="GetUnfinishedListPerUserName" parameterClass="System.Collections.Hashtable" resultMap="ConsentMap">
  698. <!-- 해당 탭을 사용하지 않아 쿼리를 삭제-->
  699. <!--<![CDATA[
  700. SELECT a.consent_mst_rid
  701. , DECODE(a.consent_state, 'TEMP', '임시'
  702. , 'ELECTR_CMP', '확인'
  703. , 'PAPER_OUT', '출력'
  704. , 'CERTIFY_CMP', '인증'
  705. , 'UNFINISHED', '임시'
  706. , 'VERBAL', '구두'
  707. , a.consent_state) AS consent_state_disp
  708. , b.form_name AS consent_name
  709. , a.hos_type
  710. , a.pid
  711. , ( SELECT hngnm
  712. FROM pam.pmcmptbs e
  713. WHERE e.instcd = a.hos_type
  714. AND e.pid = a.pid
  715. ) AS hngnm
  716. , a.visit_type
  717. , DECODE(a.visit_type, 'O', '외래'
  718. , 'I', '입원'
  719. , 'D', 'DSC'
  720. , 'E', '응급'
  721. , 'S', '건진'
  722. , a.visit_type) AS visit_type_nm
  723. , a.order_no
  724. , a.order_cd
  725. , a.order_name
  726. , a.cln_dept_cd
  727. , ( SELECT depthngnm
  728. FROM com.zsdddept e
  729. WHERE e.instcd = #instcd#
  730. AND e.deptcd = a.cln_dept_cd
  731. AND e.valitodd = '99991231'
  732. ) AS cln_dept_nm
  733. , COM.FN_ZS_GETDEPTNAME(#instcd#
  734. , ( SELECT deptcd
  735. FROM com.zsdddept d
  736. WHERE d.instcd = #instcd#
  737. AND d.deptengabbr = a.wardcd
  738. AND d.valitodd = '99991231'
  739. )
  740. , '99991231') AS wardcd
  741. , a.roomcd
  742. , a.form_rid
  743. , b.form_cd
  744. , b.form_guid
  745. , c.prntcnt
  746. , a.consent_state
  747. , a.ocr_number
  748. , a.cosign_dc_id
  749. , a.cosign_dc_name
  750. , a.modify_user_id AS create_user_id
  751. , a.modify_user_name AS create_user_name
  752. , a.modify_datetime AS create_datetime
  753. , a.cln_date
  754. , a.cretno
  755. , c.ocrtagprntyn
  756. , c.formprntnm
  757. , CASE WHEN EXISTS ( SELECT 1
  758. FROM emr.mmbdhrcd e
  759. WHERE e.instcd = c.instcd
  760. AND e.hardcdno = '6920'
  761. AND e.trgtcd = c.formcd
  762. ) THEN
  763. 'N'
  764. ELSE 'Y'
  765. END AS userdrflag
  766. , c.print_only
  767. , d.opdiagnm
  768. , d.opnm
  769. , a.oprsrvno
  770. FROM ema.consent_mst a
  771. , ema.eform_document b
  772. , emr.mrfmform c
  773. , ( SELECT trgtcd
  774. , trgtcdnm AS opdiagnm
  775. , trgtcdsnm AS opnm
  776. FROM emr.mmbdhrcd
  777. WHERE instcd = #instcd#
  778. AND hardcdno = '6011'
  779. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd
  780. ) d
  781. WHERE a.hos_type = #instcd#
  782. and a.MODIFY_USER_name = #usename#
  783. AND a.use_yn = 'Y'
  784. AND TO_CHAR(TO_DATE(a.create_datetime, 'YYYY-MM-DD HH24:MI:SS'), 'YYYYMMDD') BETWEEN #startDt# AND #endDt#
  785. AND b.form_rid = a.form_rid
  786. AND c.instcd = a.hos_type
  787. AND c.formcd = b.form_cd
  788. AND c.formprogflag LIKE 'OCR%'
  789. AND c.formlevlcd != '-'
  790. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN c.formfromdt AND c.formtodt]]>
  791. <isNotEqual property="status" compareValue="ALL">
  792. <![CDATA[
  793. AND a.consent_state IN ($status$)]]>
  794. </isNotEqual><![CDATA[
  795. AND CASE WHEN EXISTS ( SELECT 1
  796. FROM emr.mrfmocrprnt d
  797. WHERE d.instcd = #instcd#
  798. AND d.ocrtag = a.ocr_number ) THEN
  799. CASE WHEN a.consent_state IN ('TEMP', 'PAPER_OUT')
  800. AND EXISTS ( SELECT 1
  801. FROM emr.mrfmocrprnt d
  802. , emr.mrfhocrprnt e
  803. WHERE d.instcd = #instcd#
  804. AND d.ocrtag = a.ocr_number
  805. AND e.instcd = d.instcd
  806. AND e.ocrtag = d.ocrtag
  807. AND e.updtdt = d.updtdt
  808. AND e.statcd = 'P'
  809. ) THEN 'Y'
  810. WHEN a.consent_state = 'CERTIFY_CMP'
  811. AND EXISTS ( SELECT 1
  812. FROM emr.mrfmocrprnt d
  813. , emr.mrfhocrprnt e
  814. WHERE d.instcd = #instcd#
  815. AND d.ocrtag = a.ocr_number
  816. AND e.instcd = d.instcd
  817. AND e.ocrtag = d.ocrtag
  818. AND e.updtdt = d.updtdt
  819. AND e.statcd = 'C'
  820. ) THEN 'Y'
  821. ELSE 'N'
  822. END
  823. ELSE 'Y'
  824. END = 'Y'
  825. AND d.trgtcd(+) = b.form_cd
  826. ]]>-->
  827. </statement>
  828. <statement id ="getConsentMstForAgmt" parameterClass="System.Collections.Hashtable" resultMap="AgmtVoMap">
  829. <![CDATA[
  830. SELECT CM.CONSENT_MST_RID AS CONSENT_MST_RID
  831. , CM.CRETNO AS CRETNO
  832. , CM.FORM_RID AS FORMRID
  833. , CM.HOS_TYPE AS INSTCD
  834. , CM.PID AS PID
  835. , CM.VISIT_TYPE AS ORDTYPE
  836. , CM.CLN_DEPT_CD AS DEPTCD
  837. , CM.WARDCD AS WARDCD
  838. , CM.ROOMCD AS ROOMCD
  839. , CM.OCR_NUMBER AS OCRTAG
  840. , CM.CREATE_USER_ID AS CREATEUSERID
  841. , CM.CREATE_DATETIME AS CREATEDATETIME
  842. , CM.CREATE_USER_NAME AS CREATEUSERNAME
  843. , CM.CLN_DATE AS CLNDATE
  844. , (
  845. select a.form_cd
  846. from EMA.EFORM_DOCUMENT a
  847. where CM.form_rid = a.FORM_RID
  848. and a.use_yn = 'Y'
  849. and a.last_yn = 'Y'
  850. and a.deploy_yn = 'Y'
  851. and rownum = 1
  852. ) AS FORMCD
  853. , CM.MAIN_DR_ID AS ORDDRID
  854. FROM EMA.CONSENT_MST CM
  855. WHERE 1=1
  856. AND CM.HOS_TYPE = #instcd#
  857. AND CM.OCR_NUMBER = #ocrtag#
  858. ]]>
  859. </statement>
  860. <statement id ="getConsentDataForAgmt" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  861. <![CDATA[
  862. SELECT EMR.BLOB_TO_CLOB(DATA_XML) AS data
  863. FROM EMA.CONSENT_DATA
  864. WHERE 1 = 1
  865. AND CONSENT_MST_RID = #consentMstRid#
  866. and complete_yn = 'Y'
  867. AND ROWNUM = 1
  868. ORDER BY CONSENT_DATA_RID DESC
  869. ]]>
  870. </statement>
  871. </statements>
  872. </sqlMap>