Hyung Geun 2022-04-15 17:22:47 +09:00
commit b7010282ab
3 changed files with 227 additions and 434 deletions

View File

@ -25,62 +25,47 @@
</insert>
<select id="Log.selectUserLog" parameterType="logSearchVO" resultType="logVO">
<![CDATA[
SELECT
select (ROW_NUMBER() OVER()) AS RNUM,
LOG_LIST.*
FROM
(
SELECT
ROWNUM RNUM, LOG_LIST.*
FROM
( SELECT
LOG.UL_USERID AS USERID, LOG.UL_NAME AS NAME, LOG.UL_LOCATION1 AS LOCATION1, LOG.UL_LOCATION2 AS LOCATION2, LOG.UL_LOCATION3 AS LOCATION3,
TO_CHAR(LOG.UL_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE, LOG.UL_USER_IP AS IP, LOG.UL_POSITION AS POSITION_CODE, CODE.CODENM AS POSITION
FROM
H3_USER_LOG LOG, TCODE CODE
WHERE
LOG.UL_POSITION = CODE.CODE2
AND CODE.CODE1 = 'C002' ]]>
<if test="sdate != null and sdate != '' and edate != null and edate != ''"><![CDATA[
AND UL_REGDATE >= #{sdate} || ' 00:00:00'
AND UL_REGDATE <= #{edate} || ' 23:59:59' ]]>
FROM (SELECT LOG.UL_USERID AS USERID,
LOG.UL_NAME AS NAME,
LOG.UL_LOCATION1 AS LOCATION1,
LOG.UL_LOCATION2 AS LOCATION2,
LOG.UL_LOCATION3 AS LOCATION3,
TO_CHAR(LOG.UL_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE,
LOG.UL_USER_IP AS IP,
LOG.UL_POSITION AS POSITION_CODE,
CODE.CODENM AS POSITION
FROM H3_USER_LOG LOG
inner join TCODE CODE on LOG.UL_POSITION = CODE.CODE2 and CODE.CODE1 = 'C002'
<where>
<if test="sdate != null and sdate != '' and edate != null and edate != ''">
AND UL_REGDATE >= (#{sdate} || ' 00:00:00')::date
AND UL_REGDATE &lt;= (#{edate} || ' 23:59:59')::date
</if>
<if test="place1 != null and place1 != ''">
AND UL_PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND UL_NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[ ORDER BY
UL_REGDATE ]]> <if test="order != 0">DESC</if> <![CDATA[
</where>
ORDER BY UL_REGDATE <if test="order != 0">DESC</if>
limit #{recordCountPerPage} offset #{firstIndex}
) LOG_LIST
WHERE ROWNUM <= #{firstIndex} + #{recordCountPerPage}
) LOG_LIST
WHERE
RNUM > #{firstIndex}
]]>
</select>
<select id="Log.selectLoginoutLog" parameterType="logSearchVO" resultType="logVO">
<![CDATA[
SELECT
LOG_LIST.*, CODE.CODENM AS POSITION
FROM
(
SELECT
ROWNUM RNUM, LOG_LIST.*
FROM
( SELECT
IO_USERID AS USERID, IO_NAME AS NAME, TO_CHAR(IO_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE, IO_POSITION AS POSITION_CODE, IO_TYPE AS TYPE
FROM
H3_LOGINOUT_LOG
WHERE
1 = 1
]]>
<if test="sdate != null and sdate != '' and edate != null and edate != ''"><![CDATA[
AND
TO_CHAR(IO_REGDATE, 'yyyy-mm-dd') >= #{sdate} AND
TO_CHAR(IO_REGDATE, 'yyyy-mm-dd') <= #{edate} ]]>
SELECT (ROW_NUMBER() OVER()) AS RNUM,
IO_USERID AS USERID,
IO_NAME AS NAME,
TO_CHAR(IO_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE,
IO_POSITION AS POSITION_CODE,
IO_TYPE AS TYPE,
CODE.CODENM AS POSITION
FROM H3_LOGINOUT_LOG log
inner join TCODE CODE on log.IO_POSITION = CODE.CODE2 AND CODE.CODE1 = 'C002'
<where>
<if test="sdate != null and sdate != '' and edate != null and edate != ''">
AND TO_CHAR(log.IO_REGDATE, 'yyyy-mm-dd') >= #{sdate}
AND TO_CHAR(log.IO_REGDATE, 'yyyy-mm-dd') &lt;= #{edate}
</if>
<if test="place1 != null and place1 != ''">
AND IO_PLACE1 = #{place1}
@ -88,20 +73,9 @@
<if test="name != null and name != ''">
AND IO_NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[ ORDER BY
IO_REGDATE ]]> <if test="order != 0">DESC</if> <![CDATA[
) LOG_LIST
) LOG_LIST,
TCODE CODE
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerPage} AND
LOG_LIST.POSITION_CODE = CODE.CODE2 AND
CODE.CODE1 = 'C002'
]]>
</where>
ORDER BY IO_REGDATE <if test="order != 0">DESC</if>
limit #{recordCountPerPage} offset #{firstIndex}
</select>
<select id="Log.selectLogListTotCnt" parameterType="logSearchVO" resultType="int">
@ -150,18 +124,36 @@
</select>
<select id="Log.selectUrlInfo" parameterType="logVO" resultType="hashmap">
<![CDATA[
SELECT
LEVEL AS LV, MENU.*
FROM
T_MENU MENU
START WITH
MENU.URL = #{location2}
CONNECT BY PRIOR
MENU.PARENT = MENU.ID
ORDER BY
LV DESC
]]>
with recursive menu_hierarchy (
level,
id,
name,
eng_name,
parent,
depth,
url,
menu_position,
visible,
url_group,
sub_visibel,
role_level,
url_query,
board_id,
window_target
) as (
select 1, a.*
from t_menu a
where url = #{location2}
union all
select b.level +1, a.*
from t_menu a
inner join menu_hierarchy b
on a.id = b.parent
)
select * from menu_hierarchy
order by level desc
</select>
<select id="Log.selectLogTotalCnt" parameterType="logSearchVO" resultType="int">

View File

@ -66,66 +66,36 @@
</select>
<select id="getFaListAll" parameterType="memberSearchVO" resultType="memberVO">
<![CDATA[
SELECT
*
FROM (
SELECT
ROWNUM RNUM, MEMBER_LIST.*
FROM (
SELECT
MEMBER_LIST.PLACE1STR || ' ' || MEMBER_LIST.PLACE2STR AS PLACE3STR, MEMBER_LIST.*, TOTALEXCAREER_Y || '년 ' || TOTALEXCAREER_M || '개월' TOTALCAREER
FROM
(
SELECT
B.CODENM AS PLACE2STR, A.*
FROM
(SELECT
B.CODENM AS POSITIONSTR, A.*
FROM
(SELECT
B.CODENM AS PLACE1STR, A.*
FROM
(SELECT
B.CODENM AS JOBTYPESTR, A.*
FROM
(
SELECT
TAGENT.*,
select (ROW_NUMBER() OVER()) AS RNUM,
(aa.PLACE1STR || ' ' || aa.PLACE2STR) PLACE3STR,
TOTALEXCAREER_Y || '년 ' || TOTALEXCAREER_M || '개월' TOTALCAREER,
aa.*
from (select pl1.codenm place1str,
pl2.codenm PLACE2STR,
pst.codenm POSITIONSTR,
jt.codenm JOBTYPESTR,
MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) TOTALEXCAREER_M,
(EXCAREER_Y + EXCAREER1_Y + EXCAREER2_Y + EXCAREER3_Y) + FLOOR(MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) / 12) TOTALEXCAREER_Y
FROM (
SELECT
TAGENT.*,
SUBSTR(EXCAREER, 1, INSTR(EXCAREER, '-', 1) - 1) EXCAREER_Y,
SUBSTR(EXCAREER, INSTR(EXCAREER, '-', 1) + 1, 3) EXCAREER_M,
SUBSTR(EXCAREER1, 1, INSTR(EXCAREER1, '-', 1) - 1) EXCAREER1_Y,
SUBSTR(EXCAREER1, INSTR(EXCAREER1, '-', 1) + 1, 3) EXCAREER1_M,
SUBSTR(EXCAREER2, 1, INSTR(EXCAREER2, '-', 1) - 1) EXCAREER2_Y,
SUBSTR(EXCAREER2, INSTR(EXCAREER2, '-', 1) + 1, 3) EXCAREER2_M,
SUBSTR(EXCAREER3, 1, INSTR(EXCAREER3, '-', 1) - 1) EXCAREER3_Y,
SUBSTR(EXCAREER3, INSTR(EXCAREER3, '-', 1) + 1, 3) EXCAREER3_M
FROM
TAGENT
) TAGENT
) A,
TCODE B
WHERE
B.CODE1(+) = 'C003' AND
A.JOBTYPE = B.CODE2(+)) A,
TCODE B
WHERE
A.PLACE1 = B.CODE2(+) AND
B.CODE1(+) = 'C001' ) A,
TCODE B
WHERE
A.POSITION = B.CODE2(+) AND
B.CODE1(+) = 'C002') A,
TCODE B
WHERE
A.PLACE1 = B.CODE1(+) AND
A.PLACE2 = B.CODE2(+)
ORDER BY ]]>
(EXCAREER_Y + EXCAREER1_Y + EXCAREER2_Y + EXCAREER3_Y) + FLOOR(MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) / 12) TOTALEXCAREER_Y,
a.*
from (select *,
split_part(EXCAREER, '-', 1)::int EXCAREER_Y,
split_part(EXCAREER, '-', 2)::int EXCAREER_M,
split_part(EXCAREER1, '-', 1)::int EXCAREER1_Y,
split_part(EXCAREER1, '-', 2)::int EXCAREER1_M,
split_part(EXCAREER2, '-', 1)::int EXCAREER2_Y,
split_part(EXCAREER2, '-', 2)::int EXCAREER2_M,
split_part(EXCAREER3, '-', 1)::int EXCAREER3_Y,
split_part(EXCAREER3, '-', 2)::int EXCAREER3_M
from tagent
<where>
<if test="name != null and name != ''">
AND NAME LIKE '%' || #{name} || '%'
</if>
<if test="place1 != null and place1 != ''">
AND PLACE1 = #{place1}
</if>
</where>
ORDER BY
<if test="orderkey != null and orderkey != ''">
<choose>
<when test="ordercode == 7">
@ -137,65 +107,13 @@
</otherwise>
</choose>
</if>
PLACE1,
PLACE2,
PLACE3,
POSITION DESC,
DUTIES,
NAME
<![CDATA[
) MEMBER_LIST
WHERE
1 = 1
]]>
<if test="place1 != null and place1 != ''">
AND PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[
) MEMBER_LIST
) A
LEFT JOIN
(
SELECT
IO_USERID, TO_CHAR(MAX(IO_REGDATE), 'YYYY-MM-DD HH24:MI:SS') AS RECENTDATE
FROM
H3_LOGINOUT_LOG
GROUP BY
IO_USERID
) B
ON
A.USERID = B.IO_USERID
]]>
<!--
SELECT
P1.CODENM AS PLACE1STR, P2.CODENM AS PLACE2STR,
J.CODENM AS JOBTYPESTR, POS.CODENM AS POSITIONSTR, P1.CODENM || ' ' || P2.CODENM,
(경력계산)
A.*
FROM TAGENT A
LEFT JOIN TCODE J ON J.CODE1 = 'C003' AND A.JOBTYPE = J.CODE2
LEFT JOIN TCODE P1 ON P1.CODE1 = 'C001' AND A.PLACE1 = P1.CODE2
LEFT JOIN TCODE POS ON POS.CODE1 = 'C002' AND A.POSITION = POS.CODE2
LEFT JOIN TCODE P2 ON A.PLACE1 = P2.CODE1 AND A.PLACE2 = P2.CODE2
LEFT JOIN
(
SELECT
IO_USERID, TO_CHAR(MAX(IO_REGDATE), 'YYYY-MM-DD HH24:MI:SS') AS RECENTDATE
FROM
H3_LOGINOUT_LOG
GROUP BY
IO_USERID
) B
ON
A.USERID = B.IO_USERID
WHERE
A.PLACE1 = 'PS92'
ORDER BY
PLACE1, PLACE2, PLACE3, POSITION DESC, DUTIES, NAME
-->
) a
inner join tcode pl1 on pl1.code1 = 'C001' and a.place1 = pl1.code2
inner join tcode pl2 on a.place1 = pl2.code1 and a.place2 = pl2.code2
inner join tcode pst on pst.code1 = 'C002' and a.position = pst.code2
inner join tcode jt on jt.code1 = 'C003' and a.jobtype = jt.code2
) aa
</select>
<select id="Member.getMemberSearchResult" parameterType="memberSearchVO" resultType="memberVO">
@ -284,149 +202,88 @@
</select>
<select id="Member.getCmmnListAll" parameterType="memberSearchVO" resultType="memberVO">
<![CDATA[
SELECT
*
FROM (
SELECT
ROWNUM RNUM, MEMBER_LIST.*
FROM (
SELECT
MEMBER_LIST.PLACE1STR || ' ' || MEMBER_LIST.PLACE2STR AS PLACE3STR, MEMBER_LIST.NAME, MEMBER_LIST.POSITIONSTR,
MEMBER_LIST.USERID, MEMBER_LIST.LOGINCHK, MEMBER_LIST.CHKCNT, MEMBER_LIST.IDNO
FROM
(
SELECT
B.CODENM AS PLACE2STR, A.*
FROM
(SELECT
B.CODENM AS POSITIONSTR, A.*
FROM
(SELECT
B.CODENM AS PLACE1STR, A.*
FROM
TUSER A,
TCODE B
WHERE
A.PLACE1 = B.CODE2(+) AND
B.CODE1(+) = 'C001' ) A,
TCODE B
WHERE
A.POSITION = B.CODE2(+) AND
B.CODE1(+) = 'C002') A,
TCODE B
WHERE
A.PLACE1 = B.CODE1(+) AND
B.CODE2(+) = A.PLACE2
ORDER BY]]>
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
select (ROW_NUMBER() OVER()) AS RNUM,
aa.*
from (select pl1.codenm place1str,
b.recentdate,
pl2.codenm PLACE2STR,
pl3.codenm PLACE3STR,
pst.codenm POSITIONSTR,
jt.codenm JOBTYPESTR,
a.*
from tagent a
inner join tcode pl1 on pl1.code1 = 'C001' and a.place1 = pl1.code2
inner join tcode pl2 on a.place1 = pl2.code1 and a.place2 = pl2.code2
inner join tcode pl3 on pl3.code1 = 'C009' and a.place3 = pl3.code2
inner join tcode pst on pst.code1 = 'C002' and a.position = pst.code2
inner join tcode jt on jt.code1 = 'C003' and a.jobtype = jt.code2
left outer join (SELECT IO_USERID, TO_CHAR(MAX(IO_REGDATE), 'YYYY-MM-DD HH24:MI:SS') AS RECENTDATE
FROM H3_LOGINOUT_LOG
<where>
<if test="place1 != null and place1 != ''">
AND IO_PLACE1 = #{place1}
</if>
PLACE1,
PLACE2,
POSITION DESC,
NAME
<![CDATA[) MEMBER_LIST
WHERE
1 = 1
]]>
<if test="name != null and name != ''">
AND IO_NAME LIKE '%' || #{name} || '%'
</if>
</where>
GROUP BY IO_USERID ) B ON A.USERID = B.IO_USERID
<where>
<if test="place1 != null and place1 != ''">
AND PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[
) MEMBER_LIST
) A
LEFT JOIN
(
SELECT
IO_USERID, TO_CHAR(MAX(IO_REGDATE), 'YYYY-MM-DD HH24:MI:SS') AS RECENTDATE
FROM
H3_LOGINOUT_LOG
GROUP BY
IO_USERID
) B
ON
A.USERID = B.IO_USERID
]]>
</where>
ORDER BY
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when></choose>,
</if>
PLACE1, PLACE2, POSITION DESC, NAME ) aa
</select>
<select id="Member.getCmmnMemberList" parameterType="memberSearchVO" resultType="memberVO">
<![CDATA[
SELECT
*
FROM (
SELECT
ROWNUM RNUM, MEMBER_LIST.*
FROM (
SELECT
MEMBER_LIST.PLACE1STR || ' ' || MEMBER_LIST.PLACE2STR AS PLACE3STR, MEMBER_LIST.NAME, MEMBER_LIST.POSITIONSTR,
MEMBER_LIST.USERID, MEMBER_LIST.LOGINCHK, MEMBER_LIST.CHKCNT, MEMBER_LIST.IDNO, MEMBER_LIST.PLACE1
FROM
(
SELECT
B.CODENM AS PLACE2STR, A.*
FROM
(SELECT
B.CODENM AS POSITIONSTR, A.*
FROM
(SELECT
B.CODENM AS PLACE1STR, A.*
FROM
TUSER A,
TCODE B
WHERE
A.PLACE1 = B.CODE2(+) AND
B.CODE1(+) = 'C001' ) A,
TCODE B
WHERE
A.POSITION = B.CODE2(+) AND
B.CODE1(+) = 'C002') A,
TCODE B
WHERE
A.PLACE1 = B.CODE1(+) AND
B.CODE2(+) = A.PLACE2
ORDER BY]]>
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
select (ROW_NUMBER() OVER()) AS RNUM,
aa.*
from (select pl1.codenm place1str,
b.recentdate,
pl2.codenm PLACE2STR,
pl3.codenm PLACE3STR,
pst.codenm POSITIONSTR,
jt.codenm JOBTYPESTR,
a.*
from tagent a
inner join tcode pl1 on pl1.code1 = 'C001' and a.place1 = pl1.code2
inner join tcode pl2 on a.place1 = pl2.code1 and a.place2 = pl2.code2
inner join tcode pl3 on pl3.code1 = 'C009' and a.place3 = pl3.code2
inner join tcode pst on pst.code1 = 'C002' and a.position = pst.code2
inner join tcode jt on jt.code1 = 'C003' and a.jobtype = jt.code2
left outer join (SELECT IO_USERID, TO_CHAR(MAX(IO_REGDATE), 'YYYY-MM-DD HH24:MI:SS') AS RECENTDATE
FROM H3_LOGINOUT_LOG
<where>
<if test="place1 != null and place1 != ''">
AND IO_PLACE1 = #{place1}
</if>
PLACE1,
PLACE2,
POSITION DESC,
NAME
<![CDATA[) MEMBER_LIST
WHERE
1 = 1
]]>
<if test="name != null and name != ''">
AND IO_NAME LIKE '%' || #{name} || '%'
</if>
</where>
GROUP BY IO_USERID ) B ON A.USERID = B.IO_USERID
<where>
<if test="place1 != null and place1 != ''">
AND PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[
) MEMBER_LIST
) A
LEFT JOIN
(
SELECT
IO_USERID, TO_CHAR(MAX(IO_REGDATE), 'YYYY-MM-DD HH24:MI:SS') AS RECENTDATE
FROM
H3_LOGINOUT_LOG
GROUP BY
IO_USERID
) B
ON
A.USERID = B.IO_USERID
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerPage}
</where>
ORDER BY
RNUM
]]>
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
</if>
PLACE1, PLACE2, POSITION DESC, NAME
limit #{recordCountPerPage} offset #{firstIndex} ) aa
</select>
@ -620,7 +477,6 @@
WHERE
USERID = #{userid}
]]>
</update>

View File

@ -37,82 +37,27 @@
</select>
<select id="MemberAuth.getMemberListByPlace1" parameterType="memberSearchVO" resultType="loginUserVO">
<![CDATA[
SELECT
*
FROM (
SELECT
ROWNUM RNUM, MEMBER_LIST.*
FROM (
SELECT
B.CODENM AS PLACE3STR, A.*
FROM
(
SELECT
B.CODENM AS PLACE2STR, A.*
FROM
(SELECT
B.CODENM AS POSITIONSTR, A.*
FROM
(SELECT
B.CODENM AS PLACE1STR, A.*
FROM
(SELECT
B.CODENM AS DUTIESSTR, A.*
FROM
(SELECT
AGENT.USERID, AGENT.NAME, AGENT.PLACE1, AGENT.PLACE2, AGENT.PLACE3, AGENT.DUTIES, AGENT.POSITION, AGENT.USEGRADE,
PT_AUTH.AU_CODE AS AUTHCODE
FROM
( TAGENT AGENT
LEFT JOIN
RPT_AGENT_AUTH PT_AUTH
ON AGENT.USERID = PT_AUTH.AU_ID)
LEFT JOIN
H3_AGENT_AUTH ST_AUTH
ON
AGENT.USERID = ST_AUTH.AU_USERID
WHERE
PLACE1 = #{place1}
) A,
TCODE B
WHERE
B.CODE1 = 'C004' AND
A.DUTIES = B.CODE2) A,
TCODE B
WHERE
A.PLACE1 = B.CODE2 AND
B.CODE1 = 'C001' ) A,
TCODE B
WHERE
A.POSITION = B.CODE2 AND
B.CODE1 = 'C002') A,
TCODE B
WHERE
A.PLACE1 = B.CODE1(+) AND
B.CODE2(+) = A.PLACE2
select (ROW_NUMBER() OVER()) AS RNUM,
aa.*
from (select pl1.codenm place1str,
pl2.codenm PLACE2STR,
pl3.codenm PLACE3STR,
pst.codenm POSITIONSTR,
jt.codenm JOBTYPESTR,
a.*
from tagent a
inner join tcode pl1 on pl1.code1 = 'C001' and a.place1 = pl1.code2
inner join tcode pl2 on a.place1 = pl2.code1 and a.place2 = pl2.code2
inner join tcode pl3 on pl3.code1 = 'C009' and a.place3 = pl3.code2
inner join tcode pst on pst.code1 = 'C002' and a.position = pst.code2
inner join tcode jt on jt.code1 = 'C003' and a.jobtype = jt.code2
where PLACE1 =#{place1}
ORDER BY
PLACE1,
PLACE2, PLACE3, POSITION DESC, DUTIES, NAME
) A,
TCODE B
WHERE
A.PLACE3 = B.CODE2(+) AND
CODE1(+) = 'C009'
ORDER BY]]>
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
</if>
POSITION DESC,
PLACE2, PLACE3, DUTIES, NAME
<![CDATA[) MEMBER_LIST
)
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerAuthPage}
ORDER BY
RNUM
]]>
POSITION DESC, PLACE2, PLACE3, DUTIES, NAME
limit #{recordCountPerAuthPage} offset #{firstIndex} ) aa
</select>
<select id="MemberAuth.getMemberListByPlace1Cnt" parameterType="String" resultType="int">
<![CDATA[