CLIP.e-Form.Hospital.User.xml 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667
  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" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
  4. <statements>
  5. <statement id="GET_SETTING_LIST" parameterClass="System.Collections.Hashtable" resultMap="settingMap">
  6. <![CDATA[
  7. SELECT KEYNAME AS KEYNAME,
  8. KEYVALUE AS KEYVALUE
  9. FROM EMA.EFORM_CODEDATA
  10. ]]>
  11. </statement>
  12. <statement id="GET_USER_INFO" parameterClass="System.Collections.Hashtable" resultMap="UserMap">
  13. <![CDATA[
  14. SELECT USRB.USERID AS userId,
  15. USRB.USERNM AS userName,
  16. USRD.DUTPLCECD AS userdeptCode,
  17. DEPT.DEPTHNGNM AS userDeptName,
  18. DEPT.DEPTENGABBR AS deptEngAbbr,
  19. USRD.JOBKINDCD AS jobKindCd,
  20. (SELECT CDNM
  21. FROM COM.ZBCMCODE D
  22. WHERE D.CDGRUPID = 'R0061'
  23. AND D.CDID = USRD.JOBKINDCD
  24. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN D.VALIFROMDD AND D.VALITODD
  25. ) AS jobKindNm,
  26. USRD.DUTPLCEINSTCD AS instCd,
  27. CASE WHEN USRD.JOBKINDCD LIKE '03%' THEN
  28. (SELECT PDANO
  29. FROM COM.ZSUMUSRB D
  30. WHERE D.USERID = USRB.USERID
  31. AND D.DUTINSTCD = #instCd#
  32. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN D.USERFROMDD AND D.USERTODD
  33. )
  34. ELSE (SELECT MPPHONNO
  35. FROM COM.ZSUMUSRB D
  36. WHERE D.USERID = USRB.USERID
  37. AND D.DUTINSTCD = #instCd#
  38. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN D.USERFROMDD AND D.USERTODD
  39. )
  40. END AS userTelNo,
  41. DECODE(DEPT.ORDDEPTFLAG, 'W', 'I', 'O') AS ioFlag
  42. FROM EMA.VW_COM_ZSUMUSRB USRB,
  43. COM.ZSUMUSRD USRD,
  44. COM.ZSDDDEPT DEPT
  45. WHERE USRB.USERID = #userId#
  46. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN USRB.USERFROMDD AND USRB.USERTODD
  47. AND USRD.USERID = USRB.USERID
  48. ]]>
  49. <isNotEmpty property="deptCd">
  50. <![CDATA[
  51. AND USRD.DUTPLCECD = #deptCd#
  52. ]]>
  53. </isNotEmpty>
  54. <![CDATA[
  55. AND USRD.PSNWORKYN = 'N'
  56. AND NVL(USRD.TEMPYN, '-') != 'C'
  57. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN USRD.FROMDD AND USRD.TODD
  58. AND USRD.DUTPLCEINSTCD = #instCd#
  59. AND DEPT.INSTCD = USRD.DUTPLCEINSTCD
  60. AND DEPT.DEPTCD = USRD.DUTPLCECD
  61. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN DEPT.VALIFROMDD AND DEPT.VALITODD
  62. ]]>
  63. </statement>
  64. <!--
  65. <statement id="getUserFormSet" parameterClass="System.Collections.Hashtable" resultMap="ConsentSetMap">
  66. <![CDATA[
  67. SELECT 'PERS_SET' AS set_auth
  68. , a.linkcd AS form_cd
  69. , b.form_name AS form_name
  70. , '' AS FULL_CATEGORY_NAME
  71. , b.form_guid
  72. , b.form_rid
  73. , b.prntcnt
  74. , b.print_only
  75. , b.ocrtagprntyn
  76. , ( SELECT formprntnm
  77. FROM emr.mrfmform c
  78. WHERE c.instcd = #instcd#
  79. AND c.formcd = b.form_cd
  80. AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') BETWEEN c.formfromdt AND c.formtodt
  81. ) AS formprntnm
  82. , c.opdiagnm
  83. , c.opnm
  84. , CASE WHEN EXISTS ( SELECT 1
  85. FROM emr.mmbdhrcd c
  86. WHERE c.instcd = a.instcd
  87. AND c.hardcdno = '6920'
  88. AND c.trgtcd = a.linkcd
  89. ) THEN
  90. 'N'
  91. ELSE 'Y'
  92. END AS userdrflag
  93. , ( SELECT d.rmk
  94. FROM emr.mmbmhrcd d
  95. , emr.mmbdhrcd e
  96. WHERE d.instcd = #instcd#
  97. AND d.hardcdno = '6011'
  98. AND e.instcd = d.instcd
  99. AND e.hardcdno = d.hardcdno
  100. AND e.trgtcd != d.rmk
  101. AND e.trgtcd = b.form_cd
  102. AND NVL(e.hardspec, 'Y') = 'Y'
  103. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN e.valifromdd AND e.valitodd
  104. AND ROWNUM = 1
  105. ) AS lnkformcd
  106. FROM emr.mrfmsetindx a
  107. , ema.v_eform_formdoc b
  108. , ( SELECT trgtcd
  109. , trgtcdnm AS opdiagnm
  110. , trgtcdsnm AS opnm
  111. FROM emr.mmbdhrcd
  112. WHERE instcd = #instcd#
  113. AND hardcdno = '6011'
  114. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd
  115. ) c
  116. WHERE a.userid = #userid#
  117. AND a.instcd = #instcd#
  118. AND a.valiyn = 'Y'
  119. AND b.form_cd = a.linkcd
  120. AND c.trgtcd(+) = b.form_cd
  121. ORDER BY form_name]]>
  122. </statement>
  123. -->
  124. <statement id="getFavorateDocCount" parameterClass="System.Collections.Hashtable" resultClass="System.Int32">
  125. <![CDATA[
  126. SELECT COUNT(*) AS CNT
  127. FROM EMR.MRFMSETINDX MRFI
  128. INNER JOIN EMA.CLIP_FORM CF
  129. ON MRFI.LINKCD = CF.FORM_CODE
  130. INNER JOIN EMR.MRFMFORM MF
  131. ON MRFI.LINKCD = MF.FORMCD
  132. WHERE 1 = 1
  133. AND MRFI.INSTCD = #instCd#
  134. AND MRFI.USERID = #userId#
  135. AND MRFI.LINKCD = #formCd#
  136. AND #toDay# BETWEEN MF.FORMFROMDT AND MF.FORMTODT
  137. AND CF.FORM_TYPE = 'FORM_TYPE_001'
  138. AND CF.PRODUCT_ID = '1'
  139. AND CF.USE_YN = 'Y'
  140. AND MRFI.VALIYN = 'Y'
  141. AND MRFI.INDXFLAG = 'O'
  142. AND MF.FORMPROGFLAG LIKE 'OCR%'
  143. ORDER BY CF.FORM_NAME
  144. ]]>
  145. </statement>
  146. <insert id="setUserFormSet" parameterClass="System.Collections.Hashtable">
  147. <![CDATA[
  148. INSERT INTO emr.mrfmsetindx(
  149. instcd,
  150. itemindxseq,
  151. supitemindxseq,
  152. indxflag,
  153. indxnm,
  154. indxcnts,
  155. deptcd,
  156. userid,
  157. linkflag,
  158. linkcd,
  159. comnseq,
  160. fstrgstrid,
  161. fstrgstdt,
  162. lastupdtrid,
  163. lastupdtdt,
  164. jobkind,
  165. slipno
  166. )
  167. VALUES(
  168. #instCd#,
  169. EMR.SQ_MRFMSETINDX_01.NEXTVAL,
  170. 472,
  171. 'O',
  172. '',
  173. '',
  174. '',
  175. #userId#,
  176. 'Y',
  177. #formCd#,
  178. '',
  179. #userId#,
  180. systimestamp,
  181. #userId#,
  182. systimestamp,
  183. '',
  184. '')
  185. ]]>
  186. <selectKey type="post" resultClass="System.Int32" property="itemindxseq">
  187. <![CDATA[SELECT EMR.SQ_MRFMSETINDX_01.CURRVAL AS itemindxseq FROM DUAL]]>
  188. </selectKey>
  189. </insert>
  190. <delete id="delUserFormSet" parameterClass="System.Collections.Hashtable">
  191. <![CDATA[
  192. UPDATE EMR.MRFMSETINDX
  193. SET INSTCD = '999'
  194. WHERE ITEMINDXSEQ = #idx#
  195. AND USERID = #userId#
  196. AND INSTCD = #instCd#
  197. AND LINKCD = #formCd#
  198. ]]>
  199. </delete>
  200. <insert id="setSupportUserData" parameterClass="System.Collections.Hashtable" resultClass="System.Int32">
  201. <![CDATA[
  202. MERGE INTO EMA.USER_PROP
  203. USING DUAL ON(USERID = #userId#)
  204. WHEN MATCHED THEN
  205. UPDATE SET USER_SUPPORT_DEPT = #supportDeptCd#,
  206. USER_SUPPORT_ROOM = #supportDeptNm#,
  207. USER_MAC_ADDRESS = #macAddress#,
  208. USER_BASECD = #baseCd#
  209. WHEN NOT MATCHED THEN
  210. INSERT (USERID, USER_SUPPORT_DEPT, USER_SUPPORT_ROOM, USER_MAC_ADDRESS, USER_BASECD)
  211. VALUES (#userId#, #supportDeptCd# , #supportDeptNm#, #macAddress#, #baseCd#)
  212. ]]>
  213. <selectKey type="post" parameterClass="System.String" property="userId">
  214. <![CDATA[
  215. SELECT USERID AS userId
  216. FROM EMA.USER_PROP
  217. WHERE USERID = #userId#
  218. ]]>
  219. </selectKey>
  220. </insert>
  221. <insert id="SetUserProfMonitor" parameterClass="System.Collections.Hashtable" resultClass="System.Int32">
  222. <![CDATA[
  223. MERGE INTO EMA.EFORM_CODEDATA
  224. USING DUAL ON(KEYVALUE = #userId# AND KEYNAME = 'PREF_MONITOR')
  225. WHEN MATCHED THEN
  226. UPDATE SET COMMENTS = #monitorNo#
  227. WHEN NOT MATCHED THEN
  228. INSERT (KEYNAME, KEYVALUE, COMMENTS)
  229. VALUES ('PREF_MONITOR', #userId#, #monitorNo#)
  230. ]]>
  231. <selectKey type="post" parameterClass="System.String" property="COMMENTS">
  232. <![CDATA[
  233. SELECT COMMENTS AS COMMENTS
  234. FROM EMA.EFORM_CODEDATA
  235. WHERE KEYVALUE = #userId#
  236. and keyname = 'PREF_MONITOR'
  237. ]]>
  238. </selectKey>
  239. </insert>
  240. <statement id="getUserPrefMonitor" parameterClass="System.Collections.Hashtable" >
  241. <![CDATA[
  242. SELECT COMMENTS
  243. FROM EMA.EFORM_CODEDATA
  244. WHERE KEYNAME = 'PREF_MONITOR'
  245. AND KEYVALUE = #userid#
  246. ]]>
  247. </statement>
  248. <statement id="getSessionTime" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  249. <![CDATA[
  250. SELECT KEYVALUE
  251. FROM EMA.EFORM_CODEDATA
  252. WHERE KEYNAME = 'SESSION_TIME'
  253. ]]>
  254. </statement>
  255. <!-- statement id="delUserFormSet" parameterClass="System.Collections.Hashtable">
  256. <![CDATA[
  257. update emr.mrfmsetindx
  258. set instcd = '999'
  259. where userid = #userId#
  260. and instcd = #instCd#
  261. and linkcd = #formCd#
  262. ]]>
  263. </statement -->
  264. <statement id="getUserSignImage" parameterClass="System.Collections.Hashtable" resultMap="UserSignImageMap">
  265. <![CDATA[
  266. SELECT SIGNDATA
  267. FROM EMR.MRFMSIGNIMGE
  268. WHERE USERID = #userId#
  269. AND INSTCD = #instCd#
  270. AND REPRYN = 'Y'
  271. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN SIGNIMGEFROMDD AND SIGNIMGETODD
  272. ]]>
  273. </statement>
  274. <statement id="GetUnfinishedListPerDoctor" parameterClass="System.Collections.Hashtable" resultMap="UnFinishedListMap">
  275. <![CDATA[
  276. SELECT pid AS patientCode
  277. , ( SELECT ptbs.hngnm
  278. FROM ema.vw_pam_pmcmptbs ptbs
  279. WHERE ptbs.instcd = #instcd#
  280. AND ptbs.pid = a.pid
  281. ) AS hngnm
  282. , ( SELECT v.form_cd
  283. FROM ema.v_eform_formdoc v
  284. WHERE v.form_rid = a.form_rid
  285. ) AS formcd
  286. , ( SELECT v.form_name
  287. FROM ema.v_eform_formdoc v
  288. WHERE v.form_rid = a.form_rid
  289. ) AS consentName
  290. , ( SELECT v.print_only
  291. FROM ema.v_eform_formdoc v
  292. WHERE v.form_rid = a.form_rid
  293. ) AS printonly
  294. , a.order_date AS orderdate
  295. , ( SELECT s.cert_target
  296. FROM ema.consent_image_sign s
  297. WHERE s.consent_mst_rid = a.consent_mst_rid
  298. ) AS certtarget
  299. , a.consent_state AS consentState
  300. , a.consent_mst_rid AS consentMstRid
  301. , a.cln_date AS orddd
  302. , a.visit_type AS visitType
  303. , a.cln_dept_cd AS orddeptcd
  304. , a.order_no AS orderno
  305. , a.order_cd AS ordercd
  306. , a.ocr_number AS ocrNumber
  307. , a.cretno
  308. , a.create_user_name AS createusername
  309. , a.form_rid AS formrid
  310. , ( SELECT doc.form_guid
  311. FROM ema.v_eform_formdoc doc
  312. where doc.form_rid = a.form_rid
  313. ) AS formguid
  314. FROM ema.consent_mst a
  315. WHERE a.hos_type = #instcd#
  316. AND a.modify_user_id = #userid#
  317. AND a.use_yn = 'Y'
  318. AND SUBSTR(a.create_datetime, 1, 10) BETWEEN TO_CHAR(TO_DATE(#fromdd#, 'yyyymmdd'), 'yyyy-mm-dd')
  319. AND TO_CHAR(TO_DATE(#todd#, 'yyyymmdd'), 'yyyy-mm-dd')]]>
  320. <isNotEqual property="status" compareValue="ALL">
  321. <![CDATA[
  322. AND a.consent_state IN ($status$)]]>
  323. </isNotEqual><![CDATA[
  324. AND CASE WHEN EXISTS ( SELECT 1
  325. FROM emr.mrfmocrprnt d
  326. WHERE d.instcd = #instcd#
  327. AND d.ocrtag = a.ocr_number ) THEN
  328. CASE WHEN a.consent_state IN ('TEMP', 'PAPER_OUT')
  329. AND EXISTS ( SELECT 1
  330. FROM emr.mrfmocrprnt d
  331. , emr.mrfhocrprnt e
  332. WHERE d.instcd = #instcd#
  333. AND d.ocrtag = a.ocr_number
  334. AND e.instcd = d.instcd
  335. AND e.ocrtag = d.ocrtag
  336. AND e.updtdt = d.updtdt
  337. AND e.statcd = 'P'
  338. ) THEN 'Y'
  339. WHEN a.consent_state = 'CERTIFY_CMP'
  340. AND EXISTS ( SELECT 1
  341. FROM emr.mrfmocrprnt d
  342. , emr.mrfhocrprnt e
  343. WHERE d.instcd = #instcd#
  344. AND d.ocrtag = a.ocr_number
  345. AND e.instcd = d.instcd
  346. AND e.ocrtag = d.ocrtag
  347. AND e.updtdt = d.updtdt
  348. AND e.statcd = 'C'
  349. ) THEN 'Y'
  350. ELSE 'N'
  351. END
  352. ELSE 'Y'
  353. END = 'Y']]>
  354. </statement>
  355. <statement id="doLogin" parameterClass="System.Collections.Hashtable" resultMap="MobileLoginResultMap">
  356. <![CDATA[
  357. SELECT usrb.usernm AS usernm
  358. , upwd.pwd_sha256 AS pwd_sha256
  359. , usrb.userid AS userid
  360. FROM (
  361. SELECT userb.userid as userid, userb.usernm as usernm
  362. FROM com.zsumusrb userb,
  363. (SELECT userid, max(userfromdd) as userfromdd
  364. FROM com.zsumusrb
  365. WHERE userid = #userid#
  366. GROUP BY userid
  367. ) max_userb
  368. WHERE userb.userid = max_userb.userid
  369. AND userb.userfromdd = max_userb.userfromdd
  370. ) usrb,
  371. com.zsumupwd upwd,
  372. com.zsumpwlg pwlg
  373. WHERE upwd.userid(+) = usrb.userid
  374. AND pwlg.userid(+) = usrb.userid
  375. ]]>
  376. </statement>
  377. <statement id="checkUserPwdValidTerm" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  378. <![CDATA[
  379. SELECT decode(COUNT(userid),0,'Y','N') as expiryYn
  380. FROM com.zsumupwd
  381. WHERE to_char(ADD_MONTHS(pwdlastupdtdt, 6), 'YYYYMMDD') >= to_char(SYSDATE, 'YYYYMMDD')
  382. AND userid = #userId#
  383. ]]>
  384. </statement>
  385. <statement id="getLoginFailCount" parameterClass="System.Collections.Hashtable" resultClass="System.Int32">
  386. <![CDATA[
  387. SELECT LOGINFAILCNT
  388. FROM COM.ZSUMUPWD
  389. WHERE USERID = #userId#
  390. ]]>
  391. </statement>
  392. <update id="updateLoginFailCount" parameterClass="System.Collections.Hashtable" resultMpa="System.Int32">
  393. <![CDATA[
  394. UPDATE com.zsumupwd
  395. SET loginfailcnt = (
  396. case when nvl(loginfailcnt,0) >= (
  397. select cdval
  398. from com.zbcmcode
  399. where cdgrupid = 'Z0301'
  400. and cdid = 'HALTC'
  401. )
  402. then 1
  403. else nvl(loginfailcnt,0) + 1
  404. end
  405. ),
  406. loginfaildt = systimestamp
  407. WHERE userid = #userId#
  408. ]]>
  409. </update>
  410. <statement id="checkedSession" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  411. <![CDATA[
  412. SELECT DECODE(NVL(COUNT(IS_USE), 0), 0, 'N', 'Y') AS IS_USE
  413. FROM EMA.USER_SESSION
  414. WHERE USERID = #userId#
  415. ]]>
  416. </statement>
  417. <statement id="checkedSession2" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  418. <![CDATA[
  419. SELECT IS_USE
  420. FROM EMA.USER_SESSION
  421. WHERE USERID = #userId#
  422. ]]>
  423. </statement>
  424. <update id="removeSession" parameterClass="System.Collections.Hashtable">
  425. <![CDATA[
  426. UPDATE EMA.USER_SESSION
  427. SET IS_USE = 'N'
  428. ]]>
  429. <isEqual property="adminFlag" compareValue="true">
  430. <![CDATA[
  431. , FORCE_ID = 'admin'
  432. , FORCE_DT = SYSDATE
  433. ]]>
  434. </isEqual>
  435. <![CDATA[
  436. WHERE USERID = #userId#
  437. ]]>
  438. </update>
  439. <insert id="insertUpdateSession" parameterClass="System.Collections.Hashtable" resultClass="System.Int32">
  440. <![CDATA[
  441. MERGE INTO EMA.USER_SESSION
  442. USING DUAL ON (USERId = #userId#)
  443. WHEN MATCHED THEN
  444. UPDATE SET IS_USE = 'Y',
  445. IP_ADDR = #ipAddr#,
  446. MAC_ADDR = #macAddr#
  447. WHERE USERID = #userId#
  448. WHEN NOT MATCHED THEN
  449. INSERT (USERID, IP_ADDR, MAC_ADDR, IS_USE, FORCE_ID)
  450. VALUES (#userId#, #ipAddr#, #macAddr#, 'Y', '-')
  451. ]]>
  452. <selectKey type="post" parameterClass="System.String" property="userId">
  453. <![CDATA[
  454. SELECT IS_USE AS SESSION_YN
  455. FROM EMA.USER_SESSION
  456. WHERE USERID = #userId#
  457. ]]>
  458. </selectKey>
  459. </insert>
  460. <!--<statement id="getUserdeptList" parameterClass="System.Collections.Hashtable" resultMap="UserLoginDeptListResultMap">
  461. <![CDATA[
  462. SELECT code.cdid AS dutplceinstcd,
  463. code.cdnm AS dutplceinstnm,
  464. dept.deptcd AS dutplcecd,
  465. dept.depthngnm AS depthngnm,
  466. code.cdnm || ':'|| dept.depthngnm AS deptnm,
  467. usrd.fromdd AS fromdd,
  468. seq.sortno AS sortno,
  469. code.cdid || ':' || dept.deptcd AS deptcd,
  470. usrd.jobkindcd AS jobkindcd,
  471. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0061' AND cdid = usrd.jobkindcd) AS jobkindnm,
  472. HOSUSER.HOSPAPPSTATUS as mobile
  473. FROM com.ZBCMCODE code,
  474. com.ZSDDDEPT dept,
  475. EMA.EFORM_HOSPUSERS hosuser,
  476. com.ZSUMUSRD usrd left outer join com.ZSUMSORT seq on (
  477. usrd.userid = seq.userid
  478. and usrd.dutplceinstcd = seq.dutplceinstcd
  479. and usrd.dutplcecd = seq.dutplcecd),
  480. (SELECT cdrl.subcdsid
  481. FROM com.ZBCDCDGL cdgl,
  482. com.ZBCDCDRL cdrl,
  483. com.ZBCMCDGR cdgr,
  484. com.ZBCMCODE code
  485. WHERE cdgr.cdgrupid = 'Z0011'
  486. AND cdgr.cdgrupid = cdgl.supcdgrupid
  487. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN cdgr.valifromdd AND cdgr.valitodd
  488. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN code.valifromdd ANd code.valitodd
  489. AND code.cdid = #syscd#
  490. AND code.cdsid = cdrl.supcdsid ) a
  491. WHERE a.subcdsid = code.cdsid
  492. AND code.cdid = usrd.dutplceinstcd
  493. AND usrd.userid = #userid#
  494. AND HOSUSER.HOSPUSER_ID = usrd.userid
  495. AND usrd.dutplcecd = dept.deptcd
  496. AND usrd.dutplceinstcd = dept.instcd
  497. AND usrd.psnworkyn = 'N'
  498. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN code.valifromdd AND code.valitodd
  499. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN dept.valifromdd AND dept.valitodd
  500. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN usrd.fromdd AND usrd.todd
  501. ORDER BY sortno ASC
  502. ]]>
  503. </statement>-->
  504. <statement id="getUserdeptList" parameterClass="System.Collections.Hashtable" resultMap="UserLoginDeptListResultMap">
  505. <!--B 이면 교수 A이면 교수가 아닌 의사 C는 그외 직종-->
  506. <![CDATA[
  507. SELECT code.cdid AS dutplceInstCd,
  508. code.cdnm AS dutplceInstNm,
  509. dept.deptcd AS dutplceCd,
  510. dept.depthngnm AS deptHngNm,
  511. code.cdnm || ':'|| dept.depthngnm AS deptNm,
  512. usrd.fromdd AS fromDd,
  513. seq.sortno AS sortNo,
  514. code.cdid || ':' || dept.deptcd AS deptCd,
  515. NVL(usrd.jobkindcd, '1140') AS jobKindCd,
  516. NVL((SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0061' AND cdid = usrd.jobkindcd), '-') AS jobKindNm,
  517. NVL((SELECT HOSP.HOSPAPPSTATUS
  518. FROM EMA.EFORM_HOSPUSERS hosp
  519. WHERE HOSP.HOSPUSER_ID = #userid#
  520. ), 'I') as mobile,
  521. USRD.USERID as userId,
  522. usrb.USERNM as userName,
  523. case when jobkindcd like '03%' and jobposcd in ('1799','1800') then 'A'
  524. when jobkindcd like '03%' then 'B' else 'C' end drKind
  525. FROM com.ZBCMCODE code,
  526. com.ZSDDDEPT dept,
  527. (
  528. SELECT userb.userid as userid, userb.usernm as usernm
  529. FROM com.zsumusrb userb,
  530. (SELECT userid, max(userfromdd) as userfromdd
  531. FROM com.zsumusrb
  532. WHERE userid = #userid#
  533. GROUP BY userid
  534. ) max_userb
  535. WHERE userb.userid = max_userb.userid
  536. AND userb.userfromdd = max_userb.userfromdd
  537. ) usrb,
  538. com.ZSUMUSRD usrd left outer join com.ZSUMSORT seq on (
  539. usrd.userid = seq.userid
  540. and usrd.dutplceinstcd = seq.dutplceinstcd
  541. and usrd.dutplcecd = seq.dutplcecd),
  542. (SELECT cdrl.subcdsid
  543. FROM com.ZBCDCDRL cdrl,
  544. com.ZBCMCODE code
  545. WHERE code.cdgrupid = 'Z0011'
  546. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN code.valifromdd ANd code.valitodd
  547. AND code.cdid = #syscd#
  548. AND code.cdsid = cdrl.supcdsid ) a
  549. WHERE a.subcdsid = code.cdsid
  550. AND code.cdid = usrd.dutplceinstcd
  551. AND usrd.userid = #userid#
  552. AND USRD.USERID = usrb.USERID
  553. AND usrd.dutplcecd = dept.deptcd
  554. AND usrd.dutplceinstcd = dept.instcd
  555. AND usrd.psnworkyn = 'N'
  556. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN code.valifromdd AND code.valitodd
  557. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN dept.valifromdd AND dept.valitodd
  558. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN usrd.fromdd AND usrd.todd
  559. ORDER BY sortno ASC
  560. ]]>
  561. </statement>
  562. <insert id="userLoginOutLog" parameterClass="System.Collections.Hashtable">
  563. <![CDATA[
  564. INSERT INTO EMA.USER_LOG
  565. (USERID, LOGIN_STATUS, DEVICE_TYPE, DEVICE_IDENT_NO)
  566. VALUES (#userId#, #loginStatus#, #deviceType#, #macAddress#)
  567. ]]>
  568. </insert>
  569. <statement id="getMobileUserInfo" parameterClass="System.Collections.Hashtable" resultMap="MobileUserInfoResultMap">
  570. <![CDATA[
  571. SELECT TRIM(userd.userid) AS userid,
  572. TRIM(userb.usernm) AS usernm,
  573. TRIM(userb.userengnm) AS userengnm,
  574. TRIM(userb.posinstcd) AS posinstcd,
  575. TRIM(userb.posdeptcd) AS posdeptcd,
  576. TRIM(userb.orgdeptcd) AS orgdeptcd,
  577. TRIM(userd.dutplcecd) AS dutplcecd,
  578. TRIM(userd.fstrgstrid) AS fstrgstrid,
  579. TRIM(userd.lastupdtrid) AS lastupdtrid,
  580. userd.jobposcd AS jobposcd,
  581. userd.jobrespcd AS jobrespcd,
  582. userd.prfshipflagcd AS prfshipflagcd,
  583. userd.psnworkyn AS psnworkyn,
  584. userd.apntflag AS apntflag,
  585. userd.tempyn AS tempyn,
  586. userd.fstrgstdt AS fstrgstdt,
  587. userd.fromdd AS fromdd,
  588. userd.todd AS todd,
  589. userd.licnsno AS licnsno,
  590. userd.specordyn AS specordyn,
  591. userd.majorfild AS majorfild,
  592. userd.jobkindcd AS jobkindcd,
  593. userb.userkindcd AS userkindcd,
  594. userb.orginstcd AS orginstcd,
  595. userb.grupjoblncd AS grupjoblncd,
  596. userb.dutinstcd AS dutinstcd,
  597. userb.dutunitcd AS dutunitcd,
  598. userb.mpphonno AS mpphonno,
  599. userd.dutplceinstcd AS dutplceinstcd,
  600. userd.medispclno AS medispclno,
  601. userd.lastupdtdt AS lastupdtdt,
  602. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'Z0007' AND cdid = userb.posinstcd) AS posinstnm,
  603. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'Z0016' AND cdid = userb.userkindcd) AS userkindnm,
  604. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'Z0007' AND cdid = userb.posinstcd) AS posinstnm,
  605. (SELECT depthngnm FROM com.zsdddept WHERE instcd = userb.posinstcd AND deptcd = userb.posdeptcd AND TO_CHAR (SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS posdeptnm,
  606. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'Z0007' AND cdid = userb.orginstcd) AS orginstnm,
  607. (SELECT depthngnm FROM com.zsdddept WHERE instcd = userb.orginstcd AND deptcd = userb.orgdeptcd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS orgdeptnm,
  608. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0059' AND cdid = userb.grupjoblncd) AS grupjoblnnm,
  609. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'Z0007' AND cdid = userb.dutinstcd) AS dutinstnm,
  610. (SELECT depthngnm FROM com.zsdddept WHERE instcd = userb.dutinstcd AND deptcd = userb.dutunitcd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS dutunitnm,
  611. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'Z0007' AND cdid = userd.dutplceinstcd) AS dutplceinstnm,
  612. (SELECT ordsupdeptcd FROM com.zsdddept WHERE instcd = userd.dutplceinstcd AND deptcd = dutplcecd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS ordsupdeptcd,
  613. (SELECT depthngnm FROM com.zsdddept WHERE instcd = userd.dutplceinstcd AND deptcd = userd.dutplcecd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS dutplcenm,
  614. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0061' AND cdid = userd.jobkindcd) AS jobkindnm,
  615. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0062' AND cdid = userd.jobposcd) AS jobposnm,
  616. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0063' AND cdid = userd.jobrespcd) AS jobrespnm,
  617. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0058' and cdid = userd.prfshipflagcd) AS prfshipflagnm,
  618. (SELECT cdnm FROM com.zbcmcode WHERE cdgrupid = 'R0090' and cdid = userd.apntflag) AS apntflagnm,
  619. (SELECT deptengabbr FROM com.zsdddept WHERE instcd = userd.dutplceinstcd AND deptcd = userd.dutplcecd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS deptabbr,
  620. (SELECT deptengnm FROM com.zsdddept WHERE instcd = userd.dutplceinstcd AND deptcd = userd.dutplcecd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS deptengnm,
  621. (SELECT orddeptflag FROM com.zsdddept WHERE instcd = userd.dutplceinstcd AND deptcd = userd.dutplcecd AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN valifromdd AND valitodd) AS orddeptflag,
  622. userb.email AS email
  623. FROM com.zsumusrb userb,
  624. com.zsumusrd userd
  625. WHERE userb.userid = userd.userid
  626. AND userd.userid = #userid#
  627. AND userd.dutplceinstcd = #dutplceinstcd#
  628. AND userd.dutplcecd = #dutplcecd#
  629. AND userd.psnworkyn = 'N'
  630. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN userb.userfromdd AND userb.usertodd
  631. AND TO_CHAR(SYSDATE, 'YYYYMMDD') BETWEEN userd.fromdd AND userd.todd
  632. ]]>
  633. </statement>
  634. <statement id="GET_BASE_DATA" parameterClass="System.Collections.Hashtable" resultClass="System.String">
  635. <![CDATA[
  636. SELECT LISTAGG(DECODE(HARDCDNO, 6580, 'SESSION_TIME|'||TRGTCDNM,
  637. 6581, 'ELECTR_CMP|'||TRGTCDNM,
  638. 6582, 'MY_PATIENT|'||TRGTCDNM), ',')
  639. WITHIN GROUP(ORDER BY HARDCDNO) AS BASE_DATA
  640. FROM ema.hardcode_tbl
  641. WHERE INSTCD = #instCd#
  642. AND HARDCDNO IN (6580, 6581, 6582)
  643. ]]>
  644. </statement>
  645. </statements>
  646. </sqlMap>