Hyung Geun 2022-04-15 15:20:54 +09:00
commit db98cb473f
3 changed files with 105 additions and 185 deletions

View File

@ -233,114 +233,54 @@
</select> </select>
<select id="Member.getFaMemberList" parameterType="memberSearchVO" resultType="memberVO"> <select id="Member.getFaMemberList" parameterType="memberSearchVO" resultType="memberVO">
<![CDATA[ select (ROW_NUMBER() OVER()) AS RNUM,
SELECT (aa.PLACE1STR || ' ' || aa.PLACE2STR) PLACE3STR,
* TOTALEXCAREER_Y || '년 ' || TOTALEXCAREER_M || '개월' TOTALCAREER,
FROM ( aa.*
SELECT from (select pl1.codenm place1str,
ROWNUM RNUM, MEMBER_LIST.* pl2.codenm PLACE2STR,
FROM ( pst.codenm POSITIONSTR,
SELECT jt.codenm JOBTYPESTR,
MEMBER_LIST.PLACE1STR || ' ' || MEMBER_LIST.PLACE2STR AS PLACE3STR, MEMBER_LIST.*, TOTALEXCAREER_Y || '년 ' || TOTALEXCAREER_M || '개월' TOTALCAREER MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) TOTALEXCAREER_M,
FROM (EXCAREER_Y + EXCAREER1_Y + EXCAREER2_Y + EXCAREER3_Y) + FLOOR(MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) / 12) TOTALEXCAREER_Y,
( a.*
SELECT from (select *,
B.CODENM AS PLACE2STR, A.* split_part(EXCAREER, '-', 1)::int EXCAREER_Y,
FROM split_part(EXCAREER, '-', 2)::int EXCAREER_M,
(SELECT split_part(EXCAREER1, '-', 1)::int EXCAREER1_Y,
B.CODENM AS POSITIONSTR, A.* split_part(EXCAREER1, '-', 2)::int EXCAREER1_M,
FROM split_part(EXCAREER2, '-', 1)::int EXCAREER2_Y,
(SELECT split_part(EXCAREER2, '-', 2)::int EXCAREER2_M,
B.CODENM AS PLACE1STR, A.* split_part(EXCAREER3, '-', 1)::int EXCAREER3_Y,
FROM split_part(EXCAREER3, '-', 2)::int EXCAREER3_M
(SELECT from tagent
B.CODENM AS JOBTYPESTR, A.* <where>
FROM <if test="name != null and name != ''">
( AND NAME LIKE '%' || #{name} || '%'
SELECT </if>
TAGENT.*, <if test="place1 != null and place1 != ''">
MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) TOTALEXCAREER_M, AND PLACE1 = #{place1}
(EXCAREER_Y + EXCAREER1_Y + EXCAREER2_Y + EXCAREER3_Y) + FLOOR(MOD((EXCAREER_M + EXCAREER1_M + EXCAREER2_M + EXCAREER3_M), 12) / 12) TOTALEXCAREER_Y </if>
FROM ( </where>
SELECT ORDER BY
TAGENT.*, <if test="orderkey != null and orderkey != ''">
SUBSTR(EXCAREER, 1, INSTR(EXCAREER, '-', 1) - 1) EXCAREER_Y, <choose>
SUBSTR(EXCAREER, INSTR(EXCAREER, '-', 1) + 1, 3) EXCAREER_M, <when test="ordercode == 7">
SUBSTR(EXCAREER1, 1, INSTR(EXCAREER1, '-', 1) - 1) EXCAREER1_Y, TOTALEXCAREER_Y <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
SUBSTR(EXCAREER1, INSTR(EXCAREER1, '-', 1) + 1, 3) EXCAREER1_M, TOTALEXCAREER_M <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
SUBSTR(EXCAREER2, 1, INSTR(EXCAREER2, '-', 1) - 1) EXCAREER2_Y, </when>
SUBSTR(EXCAREER2, INSTR(EXCAREER2, '-', 1) + 1, 3) EXCAREER2_M, <otherwise>
SUBSTR(EXCAREER3, 1, INSTR(EXCAREER3, '-', 1) - 1) EXCAREER3_Y, ${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
SUBSTR(EXCAREER3, INSTR(EXCAREER3, '-', 1) + 1, 3) EXCAREER3_M </otherwise>
FROM </choose>
TAGENT </if>
) TAGENT PLACE1, PLACE2, PLACE3, POSITION DESC, DUTIES, NAME
) A, limit #{recordCountPerPage} offset #{firstIndex}) a
TCODE B inner join tcode pl1 on pl1.code1 = 'C001' and a.place1 = pl1.code2
WHERE inner join tcode pl2 on a.place1 = pl2.code1 and a.place2 = pl2.code2
B.CODE1(+) = 'C003' AND inner join tcode pst on pst.code1 = 'C002' and a.position = pst.code2
A.JOBTYPE = B.CODE2(+)) A, inner join tcode jt on jt.code1 = 'C003' and a.jobtype = jt.code2
TCODE B ) aa
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 ]]>
<if test="orderkey != null and orderkey != ''">
<choose>
<when test="ordercode == 7">
TOTALEXCAREER_Y <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
TOTALEXCAREER_M <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
</when>
<otherwise>
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
</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
WHERE
A.RNUM > #{firstIndex} AND
A.RNUM <= #{firstIndex} + #{recordCountPerPage}
ORDER BY
A.RNUM
]]>
</select> </select>
<select id="Member.getCmmnListAll" parameterType="memberSearchVO" resultType="memberVO"> <select id="Member.getCmmnListAll" parameterType="memberSearchVO" resultType="memberVO">
@ -1000,53 +940,37 @@
</select> </select>
<select id="Member.exmemberList" parameterType="memberSearchVO" resultType="memberVO"> <select id="Member.exmemberList" parameterType="memberSearchVO" resultType="memberVO">
<![CDATA[ SELECT
SELECT (ROW_NUMBER() OVER()) RNUM,
* MEMBER_LIST.*
FROM ( FROM (SELECT MEMBER_LIST.*
SELECT FROM (SELECT
ROWNUM RNUM, MEMBER_LIST.* (SELECT CODENM FROM TCODE WHERE CODE1 = 'C001' AND CODE2 = EA.PLACE1) AS PLACE1STR,
FROM ( (SELECT CODENM FROM TCODE WHERE CODE1 = 'C002' AND CODE2 = EA.POSITION) AS POSITIONSTR,
SELECT (SELECT CODENM FROM TCODE WHERE CODE1 = EA.PLACE1 AND CODE2 = EA.PLACE2) AS PLACE2STR,
MEMBER_LIST.* (SELECT CODENM FROM TCODE WHERE CODE1 = 'C001' AND CODE2 = EA.NOWPLACE) AS NOWPLACESTR,
FROM (SELECT CODENM FROM TCODE WHERE CODE1 = 'C002' AND CODE2 = EA.NOWPOSITION) AS NOWPOSITIONSTR,
(SELECT EA.*
(SELECT CODENM FROM TCODE WHERE CODE1 = 'C001' AND CODE2 = EA.PLACE1) AS PLACE1STR, FROM TEXAGENT EA
(SELECT CODENM FROM TCODE WHERE CODE1 = 'C002' AND CODE2 = EA.POSITION) AS POSITIONSTR, <where>
(SELECT CODENM FROM TCODE WHERE CODE1 = EA.PLACE1 AND CODE2 = EA.PLACE2) AS PLACE2STR, <if test="place1 != null and place1 != ''">
(SELECT CODENM FROM TCODE WHERE CODE1 = 'C001' AND CODE2 = EA.NOWPLACE) AS NOWPLACESTR, AND PLACE1 = #{place1}
(SELECT CODENM FROM TCODE WHERE CODE1 = 'C002' AND CODE2 = EA.NOWPOSITION) AS NOWPOSITIONSTR, </if>
EA.* <if test="position != null and position != ''">
FROM AND Position = #{position}
TEXAGENT EA </if>
ORDER BY ]]> <if test="name != null and name != ''">
<if test="orderkey != null and orderkey != ''"> AND NAME LIKE '%' || #{name} || '%'
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>, </if>
</if> </where>
PLACE1, ORDER by
POSITION, <if test="orderkey != null and orderkey != ''">
USERID ${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
<![CDATA[) MEMBER_LIST </if>
WHERE PLACE1, POSITION, USERID
1 = 1 limit #{recordCountPerPage} offset #{firstIndex}
]]> ) MEMBER_LIST
<if test="place1 != null and place1 != ''"> ) MEMBER_LIST
AND PLACE1 = #{place1}
</if>
<if test="position != null and position != ''">
AND Position = #{position}
</if>
<if test="name != null and name != ''">
AND NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[
) MEMBER_LIST
) WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerPage}
ORDER BY
RNUM
]]>
</select> </select>
<select id="Member.selectExmemberTotalCnt" parameterType="memberSearchVO" resultType="int"> <select id="Member.selectExmemberTotalCnt" parameterType="memberSearchVO" resultType="int">
@ -1088,7 +1012,7 @@
VALUES ( VALUES (
#{userid}, #{place1}, #{excareer_y}, #{excareer_m}, #{userid}, #{place1}, #{excareer_y}, #{excareer_m},
#{excareer1_y}, #{excareer1_m}, #{excareer2_y}, #{excareer2_m}, #{excareer3_y}, #{excareer3_m}, #{excareer1_y}, #{excareer1_m}, #{excareer2_y}, #{excareer2_m}, #{excareer3_y}, #{excareer3_m},
NOW(), NOW() NOW(), to_char(now(), 'YY/MM/DD')
) )
]]> ]]>
</insert> </insert>

View File

@ -1052,16 +1052,12 @@
cat4.name AS inCategory4Str, cat4.name AS inCategory4Str,
a.* a.*
from ( from (
select (IN_PLACE_NAME || '외사-' || IN_PLACE_NUM) AS docNo,
select RPT.*
(IN_PLACE_NAME || '외사-' || IN_PLACE_NUM) AS docNo, FROM RPT_INFO RPT
RPT.* WHERE IN_STATE_CODE != '99'
FROM
RPT_INFO RPT
WHERE
IN_STATE_CODE != '99'
AND IN_TYPE = #{type} AND IN_TYPE = #{type}
<choose> <choose>
<when test="type != null and type == '1'"> <when test="type != null and type == '1'">
AND IN_USERID = #{userid} AND IN_USERID = #{userid}
</when> </when>

View File

@ -15,7 +15,7 @@
</div> </div>
</form> </form>
<div id="table"> <div id="table">
<table class="tbl_listview2" width="100%" border="0" cellpadding="0" cellspacing="0"> <table class="tbl_listview2" width="100%" border="0" cellpadding="0" cellspacing="0">
<colgroup> <colgroup>
<col width="176"/> <col width="176"/>
@ -75,24 +75,24 @@
<tbody> <tbody>
<c:forEach items="${resultList}" var="item"> <c:forEach items="${resultList}" var="item">
<tr> <tr>
<td align="left"><c:out value="${item.CODENM}"/></td> <td align="left"><c:out value="${item.codenm}"/></td>
<td align="right"><c:out value="${item.TOT_CNT}"/></td> <td align="right"><c:out value="${item.tot_cnt}"/></td>
<td align="right"><c:out value="${item.CURRENT_CNT}"/></td> <td align="right"><c:out value="${item.current_cnt}"/></td>
<td align="right"><c:out value="${item.EXCESS}"/></td> <td align="right"><c:out value="${item.excess}"/></td>
<td align="right"><c:out value="${item.POSITION204}"/></td> <td align="right"><c:out value="${item.position204}"/></td>
<td align="right"><c:out value="${item.CNT_204}"/></td> <td align="right"><c:out value="${item.cnt_204}"/></td>
<td align="right"><c:out value="${item.POSITION203}"/></td> <td align="right"><c:out value="${item.position203}"/></td>
<td align="right"><c:out value="${item.CNT_203}"/></td> <td align="right"><c:out value="${item.cnt_203}"/></td>
<td align="right"><c:out value="${item.POSITION202}"/></td> <td align="right"><c:out value="${item.position202}"/></td>
<td align="right"><c:out value="${item.CNT_202}"/></td> <td align="right"><c:out value="${item.cnt_202}"/></td>
<td align="right"><c:out value="${item.POSITION201}"/></td> <td align="right"><c:out value="${item.position201}"/></td>
<td align="right"><c:out value="${item.CNT_201}"/></td> <td align="right"><c:out value="${item.cnt_201}"/></td>
<td align="right"><c:out value="${item.POSITION104}"/></td> <td align="right"><c:out value="${item.position104}"/></td>
<td align="right"><c:out value="${item.CNT_104}"/></td> <td align="right"><c:out value="${item.cnt_104}"/></td>
<td align="right"><c:out value="${item.POSITION103}"/></td> <td align="right"><c:out value="${item.position103}"/></td>
<td align="right"><c:out value="${item.CNT_103}"/></td> <td align="right"><c:out value="${item.cnt_103}"/></td>
<td align="right"><c:out value="${item.POSITION102}"/></td> <td align="right"><c:out value="${item.position102}"/></td>
<td align="right"><c:out value="${item.CNT_102}"/></td> <td align="right"><c:out value="${item.cnt_102}"/></td>
</tr> </tr>
</c:forEach> </c:forEach>
</tbody> </tbody>
@ -109,7 +109,7 @@
/* 엑셀 다운로드 function */ /* 엑셀 다운로드 function */
function fn_goExcel() { function fn_goExcel() {
document.searchForm.method = "post"; document.searchForm.method = "post";
document.searchForm.action = "<c:url value='/fa//memberManagePersonnelExcel.do'/>"; document.searchForm.action = "<c:url value='/fa/memberManagePersonnelExcel.do'/>";
document.searchForm.submit(); document.searchForm.submit();
} }
//--> //-->