Compare commits

..

No commits in common. "0b71e50d0cc706df05a49499315bc7eda7d0ed7f" and "b3c57451f5d96cb7c3023bbb5eb9b84fe5cdc3fb" have entirely different histories.

2 changed files with 285 additions and 222 deletions

View File

@ -108,23 +108,23 @@ public class InternationalVO {
/** /**
* 1 * 1
*/ */
private String invasionType1 = ""; private int invasionType1 = 0;
/** /**
* 2 * 2
*/ */
private String invasionType2 = ""; private int invasionType2 = 0;
/** /**
* 3 * 3
*/ */
private String invasionType3 = ""; private int invasionType3 = 0;
/** /**
* 4 * 4
*/ */
private String invasionType4 = ""; private int invasionType4 = 0;
/** /**
* 5 * 5
*/ */
private String invasionType5 = ""; private int invasionType5 = 0;
/** /**
* () * ()
*/ */
@ -1315,7 +1315,7 @@ public class InternationalVO {
/** /**
* @return the invasionType1 * @return the invasionType1
*/ */
public String getInvasionType1() { public int getInvasionType1() {
return invasionType1; return invasionType1;
} }
@ -1323,7 +1323,7 @@ public class InternationalVO {
/** /**
* @param invasionType1 the invasionType1 to set * @param invasionType1 the invasionType1 to set
*/ */
public void setInvasionType1(String invasionType1) { public void setInvasionType1(int invasionType1) {
this.invasionType1 = invasionType1; this.invasionType1 = invasionType1;
} }
@ -1331,7 +1331,7 @@ public class InternationalVO {
/** /**
* @return the invasionType2 * @return the invasionType2
*/ */
public String getInvasionType2() { public int getInvasionType2() {
return invasionType2; return invasionType2;
} }
@ -1339,7 +1339,7 @@ public class InternationalVO {
/** /**
* @param invasionType2 the invasionType2 to set * @param invasionType2 the invasionType2 to set
*/ */
public void setInvasionType2(String invasionType2) { public void setInvasionType2(int invasionType2) {
this.invasionType2 = invasionType2; this.invasionType2 = invasionType2;
} }
@ -1347,7 +1347,7 @@ public class InternationalVO {
/** /**
* @return the invasionType3 * @return the invasionType3
*/ */
public String getInvasionType3() { public int getInvasionType3() {
return invasionType3; return invasionType3;
} }
@ -1355,7 +1355,7 @@ public class InternationalVO {
/** /**
* @param invasionType3 the invasionType3 to set * @param invasionType3 the invasionType3 to set
*/ */
public void setInvasionType3(String invasionType3) { public void setInvasionType3(int invasionType3) {
this.invasionType3 = invasionType3; this.invasionType3 = invasionType3;
} }
@ -1363,7 +1363,7 @@ public class InternationalVO {
/** /**
* @return the invasionType4 * @return the invasionType4
*/ */
public String getInvasionType4() { public int getInvasionType4() {
return invasionType4; return invasionType4;
} }
@ -1371,7 +1371,7 @@ public class InternationalVO {
/** /**
* @param invasionType4 the invasionType4 to set * @param invasionType4 the invasionType4 to set
*/ */
public void setInvasionType4(String invasionType4) { public void setInvasionType4(int invasionType4) {
this.invasionType4 = invasionType4; this.invasionType4 = invasionType4;
} }
@ -1379,7 +1379,7 @@ public class InternationalVO {
/** /**
* @return the invasionType5 * @return the invasionType5
*/ */
public String getInvasionType5() { public int getInvasionType5() {
return invasionType5; return invasionType5;
} }
@ -1387,7 +1387,7 @@ public class InternationalVO {
/** /**
* @param invasionType5 the invasionType5 to set * @param invasionType5 the invasionType5 to set
*/ */
public void setInvasionType5(String invasionType5) { public void setInvasionType5(int invasionType5) {
this.invasionType5 = invasionType5; this.invasionType5 = invasionType5;
} }

View File

@ -371,126 +371,188 @@
<select id="getArrestList" parameterType="arrestSearchVO" resultMap="arrestResult"> <select id="getArrestList" parameterType="arrestSearchVO" resultMap="arrestResult">
SELECT <![CDATA[
A.* , SELECT /*+IDX_T_ITN_ARREST_INFO*/
(A.DTTN_CAP_CNT::int + A.DTTN_MATE_CNT::int + A.DTTN_ENG_CNT::int + A.DTTN_CREW_CNT::int) DTTN_TOTAL_CNT, A.ID ,
TO_CHAR(A.ARST_DATE, 'YYYY-MM-DD hh24:mi') ARST_DATE, TO_CHAR(A.ARST_DATE, 'YYYY-MM-DD hh24:mi') ARST_DATE,
A.LAT_D ,
A.LAT_M ,
A.LAT_S ,
A.LON_D ,
A.LON_M ,
A.LON_S ,
A.ADDR_AREA ,
A.ADDR_CITY ,
C.CODE_NM ADDR_STR,
I.CODE_NM ADDR_AREA_STR,
A.ADDR_DTL ,
A.VLTN_TYPE ,
A.VLTN_DTL,
DECODE(A.IVSN_TYPE, 'YRB2', '1', '') IVSN_TYPE1,
DECODE(A.IVSN_TYPE, 'YRD1', '1', '') IVSN_TYPE2,
DECODE(A.IVSN_TYPE, 'YRA1', '1', '') IVSN_TYPE3,
DECODE(A.IVSN_TYPE, 'YRB1', '1', '') IVSN_TYPE4,
DECODE(A.SPEC_BATL_YN, 'Y', '1' , '') SPEC_BATL_YN,
A.NLL_YN,
A.AGENCY_TYPE ,
A.AGENCY_GUARD ,
G.CODENM AGENCY_GUARD_STR ,
A.AGENCY_VESSEL ,
A.SHIP_NAME ,
A.SHIP_TONNAGE ,
A.SHIP_CREW_CNT ,
A.SHIP_QLTY ,
H.CODENM SHIP_QLTY_STR,
A.SHIP_MENT ,
D.CODENM SHIP_MENT_STR,
A.SHIP_PORT_NAME ,
A.CAP_NAME CAP_NAME,
A.CAP_CHN_NAME ,
A.CAP_AGE ,
A.SHIP_TYPE ,
E.CODENM SHIP_TYPE_STR,
A.VIO_FISH ,
A.VIO_CNT ,
A.VIO_PRTD_AMT ,
A.PROC_COND ,
DECODE(A.PROC_COND, '02', '1', '') PROC_COND_Y,
DECODE(A.PROC_COND, '01', '1', '') PROC_COND_N,
A.MRGN_PYMT_YN ,
DECODE(A.MRGN_PYMT_YN, 'Y', A.MRGN_PYMT_AMT, '' ) MRGN_PYMT_AMT,
DECODE(A.MRGN_PYMT_YN, 'N', A.MRGN_PYMT_AMT, '' ) NO_MRGN_PYMT_AMT,
TO_CHAR(MRGN_PYMT_DATE, 'YYYY-MM-DD hh24:mi') MRGN_PYMT_DATE , TO_CHAR(MRGN_PYMT_DATE, 'YYYY-MM-DD hh24:mi') MRGN_PYMT_DATE ,
DECODE(A.MRGN_PYMT_YN, 'N', '1', '') NOT_PAYMENT,
A.SHIP_PROC_TYPE ,
DECODE(A.SHIP_PROC_TYPE, '01', '1', '') SHIP_PROC_TYPE_A,
DECODE(A.SHIP_PROC_TYPE, '02', '1', '') SHIP_PROC_TYPE_B,
DECODE(A.SHIP_PROC_TYPE, '03', '1', '') SHIP_PROC_TYPE_C,
DECODE(A.SHIP_PROC_TYPE, '04', '1', '') SHIP_PROC_TYPE_D,
DECODE(A.SHIP_PROC_TYPE, '05', '1', '') SHIP_PROC_TYPE_E,
A.SHIP_CMSN_COST,
A.DTTN_CAP_CNT ,
A.DTTN_MATE_CNT ,
A.DTTN_ENG_CNT ,
A.DTTN_CREW_CNT ,
A.DTTN_CAP_CNT + A.DTTN_MATE_CNT + A.DTTN_ENG_CNT + A.DTTN_CREW_CNT DTTN_TOTAL_CNT,
A.WO_DTTN_TYPE ,
F.CODENM WO_DTTN_STR,
TO_CHAR(A.FIELD_ARST_DATE, 'YYYY-MM-DD hh24:mi') FIELD_ARST_DATE, TO_CHAR(A.FIELD_ARST_DATE, 'YYYY-MM-DD hh24:mi') FIELD_ARST_DATE,
TO_CHAR(A.FIELD_RLS_DATE, 'YYYY-MM-DD hh24:mi') FIELD_RLS_DATE , TO_CHAR(A.FIELD_RLS_DATE, 'YYYY-MM-DD hh24:mi') FIELD_RLS_DATE ,
C.CODE_NM ADDR_STR, DECODE(A.FIELD_ARST_DATE, NULL, '', '1') FIELD_CNT,
D.CODENM SHIP_MENT_STR, A.LEAD_DISTANCE ,
E.CODENM SHIP_TYPE_STR, A.LEAD_HOUR ,
F.CODENM WO_DTTN_STR, A.LEAD_NUMBER ,
G.CODENM AGENCY_GUARD_STR , A.LEAD_MINUTE ,
H.CODENM SHIP_QLTY_STR, A.GEAR_CAST ,
I.CODE_NM ADDR_AREA_STR, A.GEAR_WIDTH ,
case A.IVSN_TYPE A.GEAR_ETC ,
when 'YRB2' then '1' A.STATUS ,
else '' A.DEL_YN ,
end IVSN_TYPE1, A.REG_DATE ,
case A.IVSN_TYPE A.REG_USER ,
when 'YRD1' then '1' A.REG_AGENCY,
else '' A.TRAMSPOR_TATION,
end IVSN_TYPE2, A.FOREIGN_CREW,
case A.IVSN_TYPE A.ITEM_TEST,
when 'YRA1' then '1' A.REMARKS_LIST,
else '' A.AVIOLENT_CRIME,
end IVSN_TYPE3, A.VIOLENT_CRIME,
case A.IVSN_TYPE A.INTELLIGENT_CRIME,
when 'YRB1' then '1' A.THEFT_CRIME,
else '' A.SPECIAL_LAW,
end IVSN_TYPE4, A.ARRANGE_TRANSPORT,
case A.SPEC_BATL_YN A.ILLENGAL_MOVE,
when 'Y' then '1' A.TRAN_SPORTATION,
else '' A.QUANTITY_CAP,
end SPEC_BATL_YN, A.PRICE_MONEY,
case A.PROC_COND A.TARGET_COUNTRY ,
when '02' then '1' A.ESCAPE_CHINA,
else '' A.EMPLOYMENT_CHINA,
end PROC_COND_Y, A.ETC_CHINA,
case A.PROC_COND A.ESCAPE_JAPAN,
when '01' then '1' A.EMPLYMENT_JAPAN,
else '' A.ETC_JAPAN,
end PROC_COND_N, A.ESCAPE_COUNTRIES,
case A.MRGN_PYMT_YN A.EMPLOYMENT_COUNTRIES,
when 'Y' then A.MRGN_PYMT_AMT A.ETC_COUNTRIES,
else 0 A.SMUGGLING_NAME,
end MRGN_PYMT_AMT, A.SMUGGLING_CHN,
case A.MRGN_PYMT_YN A.SMUGGLING_AGE,
when 'N' then A.MRGN_PYMT_AMT A.SMUGGLING_WORLD,
else 0 A.SPILL_TARGET,
end NO_MRGN_PYMT_AMT, A.AMOUNTOF_COMPENSATION,
case A.MRGN_PYMT_YN A.INTEL_PROPERTY,
when 'N' then '1' A.QUEN_CHING,
else '' A.FOREIGN_CURRENCY,
end NOT_PAYMENT, A.FOREIGNCURRENCYA_MOUNT,
case A.SHIP_PROC_TYPE A.NOIN_SURANCE,
when '01' then '1' A.ALLEN_DAMAGE,
else '' A.ORIGIN_VIOLATION,
end SHIP_PROC_TYPE_A, A.INHIBITION_SOCIALSAFETY,
case A.SHIP_PROC_TYPE A.SAIL_PEOPLE,
when '02' then '1' A.SAIL_OUTSIDE,
else '' A.DRUG_ADMINISTRATION,
end SHIP_PROC_TYPE_B, A.CARRYON_OFDRUGS,
case A.SHIP_PROC_TYPE A.DRUG_SALE,
when '03' then '1' A.DRUG_ITEM,
else '' A.DRUG_GUANTITY,
end SHIP_PROC_TYPE_C, A.DRUG_AMOUNT,
case A.SHIP_PROC_TYPE A.OMOF_TRANSPORT ,
when '04' then '1' A.DIRECT_SMUGGLING ,
else '' A.OTHERMENSOF_DIRECT
end SHIP_PROC_TYPE_D, FROM T_ITN_ARREST_INFO A,
case A.SHIP_PROC_TYPE (SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' ) C, -- 시군구
when '05' then '1' TCODE D , -- 선적
else '' TCODE E , -- 선종
end SHIP_PROC_TYPE_E, (SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T005' ) F , -- 무혐의불구속
case A.FIELD_ARST_DATE (SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'C001' ) G , --
when null then '' (SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T004' ) H , -- 선질
else '1' (SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' AND UP_CODE ='0000' ) I -- 특별광역시도
end FIELD_CNT
FROM T_ITN_ARREST_INFO A
inner join CD_CODE C on C.GP_CODE = 'A001' AND A.ADDR_CITY = C.CODE AND A.ADDR_AREA = C.UP_CODE -- 시군구
inner join TCODE D on A.SHIP_MENT = D.CODE2 AND D.CODE1 = 'SSRR' -- 선적
inner join TCODE E on A.SHIP_TYPE = E.CODE2 AND E.CODE1 = 'FA81' -- 선종
inner join TCODE F on F.CODE1 = 'T005' AND A.WO_DTTN_TYPE = F.CODE2 -- 무혐의불구속
left outer join TCODE G on G.CODE1 = 'C001' and G.CODE2 = A.AGENCY_GUARD --
inner join TCODE H on H.CODE1 = 'T004' AND A.SHIP_QLTY = H.CODE2 -- 선질
inner join CD_CODE I on I.GP_CODE = 'A001' AND I.UP_CODE ='0000' AND A.ADDR_AREA = I.CODE -- 특별광역시도
WHERE A.DEL_YN = 'N' WHERE A.DEL_YN = 'N'
<if test="startDate != null and startDate != ''"> AND (A.ADDR_CITY = C.CODE AND A.ADDR_AREA = C.UP_CODE)
AND (A.SHIP_MENT = D.CODE2 AND D.CODE1 = 'SSRR')
AND (A.SHIP_TYPE = E.CODE2 AND E.CODE1 = 'FA81')
AND A.WO_DTTN_TYPE = F.CODE2
AND G.CODE2(+) = A.AGENCY_GUARD
AND A.SHIP_QLTY = H.CODE2
AND A.ADDR_AREA = I.CODE
]]>
<if test="startDate != null and startDate != ''"><![CDATA[
AND A.ARST_DATE >= TO_DATE( #{startDate} || ' 00:00', 'YYYY-MM-DD hh24:mi') AND A.ARST_DATE >= TO_DATE( #{startDate} || ' 00:00', 'YYYY-MM-DD hh24:mi')
</if> ]]></if>
<if test="endDate != null and endDate != ''"> <if test="endDate != null and endDate != ''"><![CDATA[
AND A.ARST_DATE &lt;= TO_DATE( #{endDate} || ' 23:59', 'YYYY-MM-DD hh24:mi') AND A.ARST_DATE <= TO_DATE( #{endDate} || ' 23:59', 'YYYY-MM-DD hh24:mi')
</if> ]]></if>
<if test="agencyType != null and agencyType != ''"> <if test="agencyType != null and agencyType != ''"><![CDATA[
AND A.AGENCY_TYPE = #{agencyType} AND A.AGENCY_TYPE = #{agencyType}
</if> ]]></if>
<if test="agencyGuard != null and agencyGuard != ''"> <if test="agencyGuard != null and agencyGuard != ''"><![CDATA[
AND A.AGENCY_GUARD = #{agencyGuard} AND A.AGENCY_GUARD = #{agencyGuard}
</if> ]]></if>
<if test="agencyVessel != null and agencyVessel != ''"> <if test="agencyVessel != null and agencyVessel != ''"><![CDATA[
AND A.AGENCY_VESSEL like '%' || #{agencyVessel} || '%' AND A.AGENCY_VESSEL like '%' || #{agencyVessel} || '%'
</if> ]]></if>
<if test="addrArea != null and addrArea != ''"> <if test="addrArea != null and addrArea != ''"><![CDATA[
AND A.ADDR_AREA = #{addrArea} AND A.ADDR_AREA = #{addrArea}
</if> ]]></if>
<if test="addrCity != null and addrCity != ''"> <if test="addrCity != null and addrCity != ''"><![CDATA[
AND A.ADDR_CITY = #{addrCity} AND A.ADDR_CITY = #{addrCity}
</if> ]]></if>
<if test="violateType != null and violateType != ''"> <if test="violateType != null and violateType != ''"><![CDATA[
AND A.VLTN_TYPE = #{violateType} AND A.VLTN_TYPE = #{violateType}
</if> ]]></if>
<if test="shipName != null and shipName != ''"> <if test="shipName != null and shipName != ''"><![CDATA[
AND A.SHIP_NAME LIKE '%' || #{shipName} || '%' AND A.SHIP_NAME LIKE '%' || #{shipName} || '%'
</if> ]]></if>
<if test="invasionType == null or invasionType.length == 0"> <if test="invasionType == null or invasionType.length == 0">
AND 1 = 0 AND 1 = 0
</if> </if>
<if test="shipType != null and shipType.length > 0"> <if test="shipType != null and shipType.length > 0">
AND A.SHIP_TYPE IN AND A.SHIP_TYPE IN
<foreach collection="shipType" item="type" open="(" close=")" separator=","> <foreach collection="shipType" item="type" open="(" close=")"
separator=",">
#{type} #{type}
</foreach> </foreach>
</if> </if>
@ -500,7 +562,8 @@
<if test="procCondition != null and procCondition.length > 0"> <if test="procCondition != null and procCondition.length > 0">
AND A.PROC_COND IN AND A.PROC_COND IN
<foreach collection="procCondition" item="type" open="(" close=")" separator=","> <foreach collection="procCondition" item="type" open="("
close=")" separator=",">
#{type} #{type}
</foreach> </foreach>
</if> </if>
@ -510,27 +573,27 @@
<if test="arrShipTonnage != null and arrShipTonnage.length > 0"> <if test="arrShipTonnage != null and arrShipTonnage.length > 0">
<choose> <choose>
<when test="arrShipTonnage.length == 1 and arrShipTonnage[0] == '01'"> <when test="arrShipTonnage.length == 1 and arrShipTonnage[0] == '01'"><![CDATA[
AND A.SHIP_TONNAGE &lt; 50 AND A.SHIP_TONNAGE < 50
</when> ]]></when>
<when test="arrShipTonnage.length.equals(1) and arrShipTonnage[0].equals('02')"> <when test="arrShipTonnage.length.equals(1) and arrShipTonnage[0].equals('02')"><![CDATA[
AND A.SHIP_TONNAGE >= 50 AND A.SHIP_TONNAGE &lt; 100 AND A.SHIP_TONNAGE >= 50 AND A.SHIP_TONNAGE < 100
</when> ]]></when>
<when test="arrShipTonnage.length.equals(1) and arrShipTonnage[0].equals('03')"> <when test="arrShipTonnage.length.equals(1) and arrShipTonnage[0].equals('03')"><![CDATA[
AND A.SHIP_TONNAGE >= 100 AND A.SHIP_TONNAGE >= 100
</when> ]]></when>
<when <when
test="arrShipTonnage.length.equals(2) and arrShipTonnage[0].equals('01') and arrShipTonnage[1].equals('02')"> test="arrShipTonnage.length.equals(2) and arrShipTonnage[0].equals('01') and arrShipTonnage[1].equals('02')"><![CDATA[
AND ( A.SHIP_TONNAGE &lt; 50 OR ( A.SHIP_TONNAGE >= 50 AND A.SHIP_TONNAGE &lt; 100 ) ) AND ( A.SHIP_TONNAGE < 50 OR ( A.SHIP_TONNAGE >= 50 AND A.SHIP_TONNAGE < 100 ) )
</when> ]]></when>
<when <when
test="arrShipTonnage.length.equals(2) and arrShipTonnage[0].equals('01') and arrShipTonnage[1].equals('03')"> test="arrShipTonnage.length.equals(2) and arrShipTonnage[0].equals('01') and arrShipTonnage[1].equals('03')"><![CDATA[
AND ( A.SHIP_TONNAGE &lt; 50 OR A.SHIP_TONNAGE >= 100 ) AND ( A.SHIP_TONNAGE < 50 OR A.SHIP_TONNAGE >= 100 )
</when> ]]></when>
<when <when
test="arrShipTonnage.length.equals(2) and arrShipTonnage[0].equals('02') and arrShipTonnage[1].equals('03')"> test="arrShipTonnage.length.equals(2) and arrShipTonnage[0].equals('02') and arrShipTonnage[1].equals('03')"><![CDATA[
AND ( A.SHIP_TONNAGE >= 100 OR ( A.SHIP_TONNAGE >= 50 AND A.SHIP_TONNAGE &lt; 100 ) ) AND ( A.SHIP_TONNAGE >= 100 OR ( A.SHIP_TONNAGE >= 50 AND A.SHIP_TONNAGE < 100 ) )
</when> ]]></when>
<otherwise> <otherwise>
AND 1 = 1 AND 1 = 1
</otherwise> </otherwise>