diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/CrackdownStatusController.java b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/CrackdownStatusController.java index 888bbf7a..75e0d97b 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/CrackdownStatusController.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/CrackdownStatusController.java @@ -40,7 +40,6 @@ public class CrackdownStatusController { mav.addObject("accessAuth", accessAuth); - crackdownStatus.setQueryInfo(); List crackdownStatusList = crackdownStatusService.selectCrackdownStatusList(crackdownStatus); for (CrackdownStatus cds:crackdownStatusList) { @@ -51,8 +50,6 @@ public class CrackdownStatusController { } mav.addObject("crackdownStatusList", crackdownStatusList); - crackdownStatus.setContentCnt(crackdownStatusService.selectCrackdownStatusListCnt(crackdownStatus)); - crackdownStatus.setPaginationInfo(); mav.addObject("searchParams", crackdownStatus); return mav; } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/ProcessResultController.java b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/ProcessResultController.java index 41c9a498..0228dafd 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/ProcessResultController.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/ProcessResultController.java @@ -47,8 +47,6 @@ public class ProcessResultController { } mav.addObject("processResultList", processResultList); - processResult.setContentCnt(processResultService.selectProcessResultListCnt(processResult)); - processResult.setPaginationInfo(); mav.addObject("searchParams", processResult); return mav; } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/SailorController.java b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/SailorController.java index 41486d78..05b57162 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/SailorController.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/SailorController.java @@ -39,7 +39,6 @@ public class SailorController { String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/sailor").get(0).getAccessAuth(); mav.addObject("accessAuth", accessAuth); - List sailorList = sailorService.selectSailorList(sailor); for (Sailor s:sailorList) { diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/crackdownStatus/CrackdownStatus.java b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/crackdownStatus/CrackdownStatus.java index 0bfe37e6..d464526f 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/crackdownStatus/CrackdownStatus.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/crackdownStatus/CrackdownStatus.java @@ -9,8 +9,11 @@ import lombok.NoArgsConstructor; import lombok.Setter; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; +import org.springframework.format.annotation.DateTimeFormat; import javax.persistence.*; +import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.List; @Getter @@ -76,4 +79,127 @@ public class CrackdownStatus extends CrackdownStatusBaseEntity { private List violationDeleteKeyList; @Transient private List sailorDeleteKeyList; + + @Transient + private String year; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate napoDate; + @Transient + private String violation; + @Transient + private String boatNameKr; + @Transient + private Integer tonStartCnt; + @Transient + private Integer tonEndCnt; + @Transient + private String boatMaterial; + @Transient + private String boatNnySung; + @Transient + private String boatNnySi; + @Transient + private String sailorNameKr; + @Transient + private String fisheryType; + @Transient + private String catchFishSpecies; + @Transient + private String catchCnt; + @Transient + private String offenseFishSpecies; + @Transient + private String offenseCatchCnt; + @Transient + private String offenseIllegalWasteQuantity; + @Transient + private String offenseQuantity; + @Transient + private String offenseAmount; + @Transient + private String processStatus; + @Transient + private String damboPayment; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate paymentPaymentDate; + @Transient + private Integer damboUnpaidAmount; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate consignmentStartDate; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate consignmentEndDate; + /*@Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate evictionDt;*/ + @Transient + private String isEvictionDt; + /*@Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate returnDt;*/ + @Transient + private String isReturnDt; + /*@Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate confiscationDt;*/ + @Transient + private String isConfiscationDt; + @Transient + private String isConsignmentStartDt; + @Transient + private String isDamboUnpaidAmount; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate boatDisposalDate; + @Transient + private String boatDisposalType; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate directHandoverDate; + @Transient + private String isDirectHandoverDt; + @Transient + private String handoverSeaPointLat; + @Transient + private String handoverSeaPointLon; + @Transient + private String handoverSeaPointDetail; + @Transient + private String handoverBoat; + @Transient + private String middleTakeoverBoat; + @Transient + private String captin; + @Transient + private String mate; + @Transient + private String warden; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate fieldIvsgtNapoDate; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate fieldIvsgtReleaseDate; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate pressurizedStartDate; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate pressurizedEndDate; + @Transient + private String distance; + @Transient + private String confiscationFrame; + @Transient + private String confiscationWidth; + @Transient + private String confiscationJo; + @Transient + private String confiscationGae; + @Transient + private String confiscationEtc; + } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/processResult/ProcessResult.java b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/processResult/ProcessResult.java index 8f2c6385..9920af84 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/processResult/ProcessResult.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/processResult/ProcessResult.java @@ -48,4 +48,13 @@ public class ProcessResult extends ProcessResultBaseEntity { private List crackdownStatusList; @Transient private List fishingBoatList; + + @Transient + private String caseNum; + @Transient + private String crackdownPolice; + @Transient + private String year; + @Transient + private String violation; } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/sailor/Sailor.java b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/sailor/Sailor.java index e21325e9..b3ff26d5 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/sailor/Sailor.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/crackdownsStatus/model/sailor/Sailor.java @@ -10,6 +10,8 @@ import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; import javax.persistence.*; +import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.List; @Getter @@ -39,4 +41,15 @@ public class Sailor extends SailorBaseEntity { private List fishingBoatList; @Transient private List violationList; + + @Transient + private String year; + @Transient + private String crackdownPolice; + @Transient + private String crackdownBoat; + @Transient + private String boatNameKr; + @Transient + private LocalDateTime napoDt; } diff --git a/src/main/resources/mybatisMapper/CrackdownStatustMapper.xml b/src/main/resources/mybatisMapper/CrackdownStatustMapper.xml index 26012000..79e2fd35 100644 --- a/src/main/resources/mybatisMapper/CrackdownStatustMapper.xml +++ b/src/main/resources/mybatisMapper/CrackdownStatustMapper.xml @@ -6,12 +6,265 @@ - + + And EXTRACT(YEAR FROM pr.wrt_dt) = EXTRACT(YEAR FROM CAST(#{year} AS DATE)::TIMESTAMP) + + + AND caseNum = #{caseNum} + + + AND nll = #{nll} + + + AND napo_dt::DATE = #{napoDate}::DATE + + + AND violation = #{violation} + + + AND invasion_type = #{invasionType} + + + AND ( + napo_sea_point_detail LIKE CONCAT('%', #{napoSeaPointDetail}, '%') + OR napo_sea_point_lon LIKE CONCAT('%', #{napoSeaPointDetail}, '%') + OR napo_sea_point_lat LIKE CONCAT('%', #{napoSeaPointDetail}, '%') + ) + + + AND obstr_exspd_cnt = #{obstrExspdCnt} + + + AND person_damage_cnt = #{personDamageCnt} + + + AND person_damage_amount = #{personDamageAmount} + + + AND person_damage_detail LIKE CONCAT('%', #{personDamageDetail}, '%') + + + AND material_damage_cnt = #{materialDamageCnt} + + + AND material_damage_amount = #{materialDamageAmount} + + + AND material_damage_detail LIKE CONCAT('%', #{materialDamageDetail}, '%') + + + AND case_agency = #{caseAgency} + + + AND crackdown_police = #{crackdownPolice} + + + AND crackdown_boat = #{crackdownBoat} + + + AND mmsi LIKE CONCAT('%', #{mmsi}, '%') + + + AND boat_name_kr LIKE CONCAT('%', #{boatNameKr}, '%') + + + AND ton_cnt =]]> #{tonStartCnt} + + + AND ton_cnt #{tonEndCnt} + + + AND boat_material = #{boatMaterial} + + + AND boat_nny_sung LIKE CONCAT('%', #{boatNnySung}, '%') + + + AND boat_nny_si LIKE CONCAT('%', #{boatNnySi}, '%') + + + AND sailor_name_kr LIKE CONCAT('%', #{sailorNameKr}, '%') + + + AND fishery_type = #{fisheryType} + + + AND catch_fish_species LIKE CONCAT('%', #{catchFishSpecies}, '%') + + + AND catch_cnt = #{catchCnt} + + + AND offense_fish_species LIKE CONCAT('%', #{offenseFishSpecies}, '%') + + + AND offense_catch_cnt = #{offenseCatchCnt} + + + AND offense_illegal_waste_quantity = #{offenseIllegalWasteQuantity} + + + AND offense_quantity = #{offenseQuantity} + + + AND offense_amount = #{offenseAmount} + + + AND process_status = #{processStatus} + + + AND dambo_payment = #{damboPayment} + + + AND payment_payment_dt::DATE = #{paymentPaymentDate}::DATE + + + AND dambo_unpaid_amount = #{damboUnpaidAmount} + + + + AND ( + dambo_unpaid_amount IS NOT NULL + AND dambo_unpaid_amount > 0 + ) + + + AND ( + direct_handover_dt IS NULL + OR dambo_unpaid_amount = 0 + ) + + + + + AND direct_handover_dt IS NOT NULL + + + AND direct_handover_dt IS NULL + + + + + + AND eviction_dt IS NOT NULL + + + AND eviction_dt IS NULL + + + + + + AND return_dt IS NOT NULL + + + AND return_dt IS NULL + + + + AND consignment_start_dt = #{consignmentStartDate}::DATE + + + AND consignment_end_dt = #{consignmentEndDate}::DATE + + + + + AND confiscation_dt IS NOT NULL + + + AND confiscation_dt IS NULL + + + + + AND consignment_start_dt IS NOT NULL + + + AND consignment_start_dt IS NULL + + + + + AND boat_disposal_type = #{boatDisposalType} + + + AND direct_handover_dt::DATE = #{directHandoverDate}::DATE + + + AND ( + handover_sea_point_lat LIKE CONCAT('%', #{handoverSeaPointDetail}, '%') + OR handover_sea_point_lon LIKE CONCAT('%', #{handoverSeaPointDetail}, '%') + OR handover_sea_point_detail LIKE CONCAT('%', #{handoverSeaPointDetail}, '%') + ) + + + AND handover_boat LIKE CONCAT('%', #{handoverBoat}, '%') + + + AND middle_takeover_boat LIKE CONCAT('%', #{middleTakeoverBoat}, '%') + + + AND ( + position = 'POS001' + AND is_restriction = #{captin} + ) + + + AND ( + position = 'POS002' + AND is_restriction = #{mate} + ) + + + AND ( + position = 'POS003' + AND is_restriction = #{warden} + ) + + + AND field_ivsgt_napo_dt::DATE = #{fieldIvsgtNapoDate}::DATE + + + AND field_ivsgt_release_dt::DATE = #{fieldIvsgtReleaseDate}::DATE + + + + AND distance = #{distance} + + + AND confiscation_frame = #{confiscationFrame} + + + AND confiscation_width = #{confiscationWidth} + + + AND confiscation_jo = #{confiscationJo} + + + AND confiscation_gae = #{confiscationGae} + + + AND confiscation_etc = #{confiscationEtc} + - SELECT + SELECT DISTINCT pr.pr_key , cs.cds_key , cs.case_num @@ -27,23 +65,16 @@ , pr.consignment_end_dt , pr.confiscation_dt , pr.boat_disposal_dt + , pr.wrt_dt FROM process_result pr INNER JOIN crackdown_status cs ON pr.cds_key = cs.cds_key INNER JOIN fishing_boat fb ON pr.cds_key = fb.cds_key + LEFT JOIN violation v + ON fb.fb_key = v.fb_key - ORDER BY pr.cds_key DESC + ORDER BY pr.pr_key DESC LIMIT #{rowCnt} OFFSET #{firstIndex} - - \ No newline at end of file diff --git a/src/main/resources/mybatisMapper/SailorMapper.xml b/src/main/resources/mybatisMapper/SailorMapper.xml index 2f069bcb..48c8f1a5 100644 --- a/src/main/resources/mybatisMapper/SailorMapper.xml +++ b/src/main/resources/mybatisMapper/SailorMapper.xml @@ -6,7 +6,39 @@ - + + And EXTRACT(YEAR FROM s.wrt_dt) = EXTRACT(YEAR FROM CAST(#{year} AS DATE)::TIMESTAMP) + + + AND crackdown_police = #{crackdownPolice} + + + AND crackdown_boat = #{crackdownBoat} + + + AND sailor_name_kr LIKE CONCAT('%', #{sailorNameKr}, '%') + + + AND residence = #{residence} + + + AND education = #{education} + + + AND position = #{position} + + + AND career = #{career} + + + AND similar_criminal_history = #{similarCriminalHistory} + + + AND heterogeneous_criminal_history = #{heterogeneousCriminalHistory} + + + AND arrest_history = #{arrestHistory} + @@ -37,8 +69,11 @@ , s.wrt_user_nm , s.wrt_dt FROM sailor s + INNER JOIN fishing_boat f + ON s.fb_key = f.fb_key + INNER JOIN crackdown_status cs + ON f.cds_key = cs.cds_key ORDER BY s.sailor_key DESC - LIMIT #{rowCnt} OFFSET #{firstIndex} \ No newline at end of file diff --git a/src/main/resources/static/js/faStatistics/crackdownStatus.js b/src/main/resources/static/js/faStatistics/crackdownStatus.js index c856cf2a..8e1ad386 100644 --- a/src/main/resources/static/js/faStatistics/crackdownStatus.js +++ b/src/main/resources/static/js/faStatistics/crackdownStatus.js @@ -1,3 +1,49 @@ +$(function(){ + $("#napoDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#paymentPaymentDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#consignmentStartDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#consignmentEndDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#confiscationDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#boatDisposalDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#directHandoverDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#fieldIvsgtNapoDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#fieldIvsgtReleaseDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#pressurizedStartDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#pressurizedEndDate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); +}); $(document).on('click', '#crackdownStatusAddBtn', function () { getCrackdownStatusEditModal(null); }); @@ -296,7 +342,6 @@ function getCrackdownStatusEditModal(cdsKey){ function saveCrackdownStatus(saveYn){ $('input[name="fieldIvsgtTimeTaken"]').val(dateTimeCalc($("#fieldIvsgtNapoDt").val(), $("#fieldIvsgtReleaseDt").val())); - $('input[name="warrantReqTakeTime"]').val(dateTimeCalc($("#pressurizedStartDt").val(), $("#pressurizedEndDt").val())); $('input[name="pressurizedTimeTaken"]').val(dateTimeCalc($("#pressurizedStartDt").val(), $("#pressurizedEndDt").val())); if(contentCheck()){ diff --git a/src/main/resources/static/js/faStatistics/processResult.js b/src/main/resources/static/js/faStatistics/processResult.js index 25c41eb7..42193a1a 100644 --- a/src/main/resources/static/js/faStatistics/processResult.js +++ b/src/main/resources/static/js/faStatistics/processResult.js @@ -1,3 +1,25 @@ +$(function(){ + $("#consignmentStartDt").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#consignmentEndDt").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#returnDt").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#confiscationDt").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); + $("#boatDisposalDt").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); +}); $(document).on('click', '#processResultAddBtn', function () { getProcessResultAddModal(null); }); diff --git a/src/main/resources/static/js/faStatistics/sailor.js b/src/main/resources/static/js/faStatistics/sailor.js index 5eadbe93..026bc7a2 100644 --- a/src/main/resources/static/js/faStatistics/sailor.js +++ b/src/main/resources/static/js/faStatistics/sailor.js @@ -101,6 +101,10 @@ $(document).on('change', '#crackdownBoat', function (){ } }); +$(document).on('change', 'select[name="crackdownPolice"]', function (){ + dynamicOption('select[name="crackdownBoat"]', $(this).val()); +}); + $(document).on('change', 'select[name="boatNameKr"]', function (){ $('input[name="fbKey"]').val($('select[name="boatNameKr"] option:selected').data('key')); $('input[name="cdsKey"]').val($('select[name="boatNameKr"] option:selected').data('key2')); @@ -202,6 +206,11 @@ function getSailorAddModal(){ success: function(html){ $("#sailorAddModalContent").empty().append(html); $("#sailorAddModal").modal('show'); + + $("#birthdate").datepicker({ + format: "yyyy-mm-dd", + language: "ko" + }); }, error:function(){ diff --git a/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatus.html b/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatus.html index 602275b5..e93dbce3 100644 --- a/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatus.html +++ b/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatus.html @@ -22,19 +22,306 @@
- +
+ +
+
+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+ + ~ +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
+ +
+
+ + +
+
+ + +
+
+ +
+
+ +
+
+ +
+
+ + +
+ +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
-
- - -
+
@@ -44,8 +331,8 @@ 연번 나포일시 - 위반장소 위반내용 + 위반장소 침범유형 NLL 특수공무집행방해 @@ -116,13 +403,13 @@ 중측인수함정 계 선장 - 향해장 + 항해장 기관장 선원 구속척수(몰수판결) 계 선장 - 향해장 + 항해장 기관장 선원 불구속척수 @@ -224,15 +511,15 @@
- + - + - + @@ -346,35 +633,6 @@ - - -
-
- -
-
diff --git a/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusEditModal.html b/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusEditModal.html index 7d26a5f1..4faf428a 100644 --- a/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusEditModal.html +++ b/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusEditModal.html @@ -35,12 +35,6 @@ - -
- - - -
@@ -82,6 +76,12 @@
+ +
+ + + +
- +
- + + +
+
@@ -457,10 +461,10 @@
- +
diff --git a/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusViewModal.html b/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusViewModal.html index bd164132..5d53964a 100644 --- a/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusViewModal.html +++ b/src/main/resources/templates/faStatistics/crackdownStatus/crackdownStatusViewModal.html @@ -401,7 +401,7 @@
- +
- +
+ +
-
+
- +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
@@ -50,8 +106,8 @@ 선고법원 집행내용 환부일 - 위탁종료일 위탁시작일 + 위탁종료일 몰수확정일 폐선일(인계한 날짜) 최종수정일 @@ -111,35 +167,6 @@
- - -
-
- -
-
diff --git a/src/main/resources/templates/faStatistics/sailor/sailor.html b/src/main/resources/templates/faStatistics/sailor/sailor.html index 3a92be90..b75cb75f 100644 --- a/src/main/resources/templates/faStatistics/sailor/sailor.html +++ b/src/main/resources/templates/faStatistics/sailor/sailor.html @@ -18,20 +18,109 @@
-
- +
+ +
-
+
- +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
@@ -187,11 +276,11 @@ - - - - - + + + + + @@ -221,35 +310,6 @@
- - -
-
- -
-