국제범죄 검거현황 요청사항 반영.

통계 년도 조건 컬럼 변경.
마감기능 오류 수정.
master
최강석 2023-07-20 11:55:36 +09:00
parent 02781efdeb
commit b168ebc938
7 changed files with 50 additions and 32 deletions

View File

@ -56,6 +56,7 @@ public class InternationalCrimeArrestController {
if(yearList.size()==0){ if(yearList.size()==0){
yearList.add(icaStatistics.getYear()); yearList.add(icaStatistics.getYear());
} }
mav.addObject("deadlineState", menuMgtService.selectDeadlineChk("/faStatistics/icaStatistics"));
mav.addObject("accessAuth", accessAuth); mav.addObject("accessAuth", accessAuth);
mav.addObject("yearOptionList", yearList); mav.addObject("yearOptionList", yearList);
mav.addObject("searchParams", icaStatistics); mav.addObject("searchParams", icaStatistics);
@ -77,7 +78,7 @@ public class InternationalCrimeArrestController {
mav.addObject("icaList", internationalCrimeArrestService.selectInternationalCrimeArrestList(internationalCrimeArrest)); mav.addObject("icaList", internationalCrimeArrestService.selectInternationalCrimeArrestList(internationalCrimeArrest));
internationalCrimeArrest.setContentCnt(internationalCrimeArrestService.selectInternationalCrimeArrestListCnt(internationalCrimeArrest)); internationalCrimeArrest.setContentCnt(internationalCrimeArrestService.selectInternationalCrimeArrestListCnt(internationalCrimeArrest));
internationalCrimeArrest.setPaginationInfo(); internationalCrimeArrest.setPaginationInfo();
mav.addObject("deadlineState", menuMgtService.selectDeadlineChk("/faStatistics/internationalCrimeArrest")); mav.addObject("deadlineState", menuMgtService.selectDeadlineChk("/faStatistics/icaStatistics"));
mav.addObject("organConfigList", organConfigService.selectOrganList()); mav.addObject("organConfigList", organConfigService.selectOrganList());
mav.addObject("searchParams", internationalCrimeArrest); mav.addObject("searchParams", internationalCrimeArrest);
return mav; return mav;
@ -111,7 +112,7 @@ public class InternationalCrimeArrestController {
mav.addObject("accessAuth", authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/icaStatistics").get(0).getAccessAuth()); mav.addObject("accessAuth", authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/icaStatistics").get(0).getAccessAuth());
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList()); mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
//마감여부 //마감여부
mav.addObject("deadlineState", menuMgtService.selectDeadlineChk("/faStatistics/internationalCrimeArrest")); mav.addObject("deadlineState", menuMgtService.selectDeadlineChk("/faStatistics/icaStatistics"));
return mav; return mav;
} }

View File

@ -32,6 +32,8 @@ public class IcaSuspectInfo extends BaseModel {
private String country; private String country;
@Column(name = "process_result") @Column(name = "process_result")
private String processResult; private String processResult;
@Column(name = "suspect_name")
private String suspectName;
@Embeddable @Embeddable
@Data @Data

View File

@ -14,77 +14,77 @@
remark, remark,
modi_id as modiId, modi_id as modiId,
modi_date as modiDate modi_date as modiDate
from public.sp_get_budget_plan_info(#{code1}, #{code2}, #{code3}) from sp_get_budget_plan_info(#{code1}, #{code2}, #{code3})
</select> </select>
<select id="callSpGetBudgetCodeYearList" resultType="YearResult"> <select id="callSpGetBudgetCodeYearList" resultType="YearResult">
select l1_year as year select l1_year as year
from public.sp_get_budget_code_year_list( ) from sp_get_budget_code_year_list( )
</select> </select>
<select id="callSpCopyBudgetItem" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpCopyBudgetItem" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_copy_budget_item (#{year},#{copyYear},#{id},NULL,NULL,NULL) call sp_copy_budget_item (#{year},#{copyYear},#{id},NULL,NULL,NULL)
</select> </select>
<select id="callBruteForceDeleteBudgetItem" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callBruteForceDeleteBudgetItem" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_brute_force_delete_budget_item(#{year}, #{id},NULL,NULL,NULL) call sp_brute_force_delete_budget_item(#{year}, #{id},NULL,NULL,NULL)
</select> </select>
<select id="callSpAddBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpAddBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_add_budget_plan_codename (#{year}, #{code1}, #{code2}, #{code3}, #{org}, #{id} ,NULL, NULL, NULL) call sp_add_budget_plan_codename (#{year}, #{code1}, #{code2}, #{code3}, #{org}, #{id} ,NULL, NULL, NULL)
</select> </select>
<select id="callSpUpdateBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpUpdateBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_update_budget_plan_codename(#{year}, #{code1}, #{code2}, #{code3}, #{newCode1}, #{newCode2}, #{newCode3}, #{org},#{id},NULL,NULL,NULL) call sp_update_budget_plan_codename(#{year}, #{code1}, #{code2}, #{code3}, #{newCode1}, #{newCode2}, #{newCode3}, #{org},#{id},NULL,NULL,NULL)
</select> </select>
<select id="callSpDeleteBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpDeleteBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_delete_budget_plan_codename(#{year}, #{code1}, #{code2}, #{code3}, #{org},#{id},NULL,NULL,NULL) call sp_delete_budget_plan_codename(#{year}, #{code1}, #{code2}, #{code3}, #{org},#{id},NULL,NULL,NULL)
</select> </select>
<select id="callSpUpdateBudgetPlanCodeItem" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpUpdateBudgetPlanCodeItem" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_update_budget_plan_item (#{year}, #{code1}, #{code2}, #{code3}, #{amount}::int, #{org}, #{id},NULL, NULL, NULL) call sp_update_budget_plan_item (#{year}, #{code1}, #{code2}, #{code3}, #{amount}::int, #{org}, #{id},NULL, NULL, NULL)
</select> </select>
<select id="callSpDeleteBudgetPlan" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpDeleteBudgetPlan" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_clear_budget_plan(#{year}, #{org}, #{id},NULL,NULL,NULL) call sp_clear_budget_plan(#{year}, #{org}, #{id},NULL,NULL,NULL)
</select> </select>
<select id="callSpGetBudgetAssignInfo" resultType="AssignResult" parameterType="BudgetParams"> <select id="callSpGetBudgetAssignInfo" resultType="AssignResult" parameterType="BudgetParams">
select * select *
from public.sp_get_budget_assign_info(#{year}, #{code}, #{user} ,#{stDate}::date, #{edDate}::date) from sp_get_budget_assign_info(#{year}, #{code}, #{user} ,#{stDate}::date, #{edDate}::date)
</select> </select>
<select id="callSpGetDownOrg" resultType="CodeResult" parameterType="BudgetParams"> <select id="callSpGetDownOrg" resultType="CodeResult" parameterType="BudgetParams">
select org_code as orgCode, select org_code as orgCode,
org_name as orgName org_name as orgName
from public.sp_get_down_org(#{org}) from sp_get_down_org(#{org})
</select> </select>
<select id="callSpGetLowerOrgCodeByName" resultType="CodeResult" parameterType="BudgetParams"> <select id="callSpGetLowerOrgCodeByName" resultType="CodeResult" parameterType="BudgetParams">
select org_code as orgCode, select org_code as orgCode,
org_name as orgName org_name as orgName
from public.sp_get_lower_org_code_by_name('본청') from sp_get_lower_org_code_by_name('본청')
</select> </select>
<select id="callSpGetHighOrgCode" resultType="String" parameterType="BudgetParams"> <select id="callSpGetHighOrgCode" resultType="String" parameterType="BudgetParams">
select * select *
from public.sp_get_high_org_code(#{org}) from sp_get_high_org_code(#{org})
</select> </select>
<select id="callSpAddBudgetAssign" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpAddBudgetAssign" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_add_budget_assign(#{code}, #{org}, #{org}1, #{amount}::int, #{dt}::date, 'admin', NULL,NULL,NULL) call sp_add_budget_assign(#{code}, #{org}, #{org}1, #{amount}::int, #{dt}::date, 'admin', NULL,NULL,NULL)
</select> </select>
<select id="callSpGetBudgetExpenseInfo" resultType="ExpenseResult" parameterType="BudgetParams"> <select id="callSpGetBudgetExpenseInfo" resultType="ExpenseResult" parameterType="BudgetParams">
select * select *
from public.sp_get_budget_expense_info(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date) from sp_get_budget_expense_info(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date)
</select> </select>
<select id="callSpGetBudgetExpense" resultType="ExpenseInfoResult" parameterType="BudgetParams"> <select id="callSpGetBudgetExpense" resultType="ExpenseInfoResult" parameterType="BudgetParams">
select * from public.sp_get_budget_expense(#{year},#{code1},#{code2},#{code3},#{org},1,2,20,1) select * from sp_get_budget_expense(#{year},#{code1},#{code2},#{code3},#{org},1,2,20,1)
</select> </select>
<select id="callSpAddBudgetExpense" resultType="UpdateResult" parameterType="BudgetParams"> <select id="callSpAddBudgetExpense" resultType="UpdateResult" parameterType="BudgetParams">
call public.sp_add_budget_EXPENSE(#{year},#{code1},#{code2},#{code3}, #{org}, #{item} ,cast (#{amount} as bigint), #{dt}::date,'admin',NULL,NULL,NULL) call sp_add_budget_EXPENSE(#{year},#{code1},#{code2},#{code3}, #{org}, #{item} ,cast (#{amount} as bigint), #{dt}::date,'admin',NULL,NULL,NULL)
</select> </select>
<select id="callSpUpdateBudgetExpense" resultType="ExpenseResult" parameterType="BudgetParams"> <select id="callSpUpdateBudgetExpense" resultType="ExpenseResult" parameterType="BudgetParams">
call public.sp_update_budget_expense(#{seq},#{item} ,#{amount}::int,NULL,NULL,NULL,NULL,NULL) call sp_update_budget_expense(#{seq},#{item} ,#{amount}::int,NULL,NULL,NULL,NULL,NULL)
</select> </select>
<select id="callSpGetbudgetStatOrg" resultType="ExpenseResult" parameterType="BudgetParams"> <select id="callSpGetbudgetStatOrg" resultType="ExpenseResult" parameterType="BudgetParams">
select * select *
from public.sp_get_budget_statistics_by_org(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date,#{won}) from sp_get_budget_statistics_by_org(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date,#{won})
</select> </select>
<select id="callSpGetbudgetStatDetail" resultType="StatsItemResult" parameterType="BudgetParams"> <select id="callSpGetbudgetStatDetail" resultType="StatsItemResult" parameterType="BudgetParams">
select * select *
from public.sp_get_budget_statistics_by_item(#{year},#{code},#{item}, #{user},#{stDate}::date,#{edDate}::date,#{won}) from sp_get_budget_statistics_by_item(#{year},#{code},#{item}, #{user},#{stDate}::date,#{edDate}::date,#{won})
</select> </select>
<select id="callSpGetBudgetCodeL3" resultType="L3CodeResult" parameterType="BudgetParams"> <select id="callSpGetBudgetCodeL3" resultType="L3CodeResult" parameterType="BudgetParams">
select * select *
from public.sp_get_budget_code_l3(#{year},null,null,null) from sp_get_budget_code_l3(#{year},null,null,null)
</select> </select>
</mapper> </mapper>

View File

@ -152,10 +152,10 @@
and department = #{organ} and department = #{organ}
</if> </if>
<if test='year != null and year != 0'> <if test='year != null and year != 0'>
and EXTRACT(YEAR FROM wrt_dt) = ${year} and EXTRACT(YEAR FROM case_sent_dt) = ${year}
</if> </if>
<if test='month != null and month != 0'> <if test='month != null and month != 0'>
and EXTRACT(MONTH FROM wrt_dt) = ${month} and EXTRACT(MONTH FROM case_sent_dt) = ${month}
</if> </if>
</where> </where>
group by crime_type, violation_type group by crime_type, violation_type
@ -163,9 +163,9 @@
order by a.item_cd, b.item_cd order by a.item_cd, b.item_cd
</select> </select>
<select id="selectYearOptionList" resultType="int" parameterType="string"> <select id="selectYearOptionList" resultType="int">
select distinct EXTRACT(YEAR FROM wrt_dt) select distinct EXTRACT(YEAR FROM case_sent_dt)
from international_crime_arrest from international_crime_arrest
where department = #{organ} where status &lt;> 'DST008'
</select> </select>
</mapper> </mapper>

View File

@ -189,6 +189,7 @@ function saveInternationalCrimeArrest(status){
$.each($("#spiDiv").find(".spi-list"), function (idx, spi){ $.each($("#spiDiv").find(".spi-list"), function (idx, spi){
spi = $(spi); spi = $(spi);
formData.append("suspectInfoList["+idx+"].spiKey", idx+1); formData.append("suspectInfoList["+idx+"].spiKey", idx+1);
formData.append("suspectInfoList["+idx+"].suspectName", spi.find('.suspectName').val());
formData.append("suspectInfoList["+idx+"].sex", spi.find('.sex').val()); formData.append("suspectInfoList["+idx+"].sex", spi.find('.sex').val());
formData.append("suspectInfoList["+idx+"].age", spi.find('.age').val()); formData.append("suspectInfoList["+idx+"].age", spi.find('.age').val());
formData.append("suspectInfoList["+idx+"].country", spi.find('.country').val()); formData.append("suspectInfoList["+idx+"].country", spi.find('.country').val());

View File

@ -389,6 +389,10 @@
<div class="border p-1" id="spiDiv"> <div class="border p-1" id="spiDiv">
<th:block th:if="${#lists.isEmpty(ica.suspectInfoList)}"> <th:block th:if="${#lists.isEmpty(ica.suspectInfoList)}">
<div class="row spi-list m-0"> <div class="row spi-list m-0">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">이름</label>
<div class="col-sm-1">
<input type="text" class="form-control form-control-sm suspectName">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-auto"> <div class="col-sm-auto">
<select class="form-select form-select-sm sex"> <select class="form-select form-select-sm sex">
@ -430,6 +434,10 @@
<th:block th:unless="${#lists.isEmpty(ica.suspectInfoList)}"> <th:block th:unless="${#lists.isEmpty(ica.suspectInfoList)}">
<th:block th:each="suspectInfo:${ica.suspectInfoList}"> <th:block th:each="suspectInfo:${ica.suspectInfoList}">
<div class="row spi-list m-0"> <div class="row spi-list m-0">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">이름</label>
<div class="col-sm-1">
<input type="text" class="form-control form-control-sm suspectName" th:value="${suspectInfo.suspectName}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-auto"> <div class="col-sm-auto">
<select class="form-select form-select-sm sex"> <select class="form-select form-select-sm sex">
@ -492,6 +500,10 @@
</form> </form>
<div class="d-none" id="spiInputDiv"> <div class="d-none" id="spiInputDiv">
<div class="row spi-list m-0"> <div class="row spi-list m-0">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">이름</label>
<div class="col-sm-1">
<input type="text" class="form-control form-control-sm suspectName">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-auto"> <div class="col-sm-auto">
<select class="form-select form-select-sm sex"> <select class="form-select form-select-sm sex">

View File

@ -252,26 +252,28 @@
<div class="border"> <div class="border">
<th:block th:each="suspect:${ica.suspectInfoList}"> <th:block th:each="suspect:${ica.suspectInfoList}">
<div class="row m-0"> <div class="row m-0">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">이름</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${suspect.suspectName}"></label>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">성별</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start"> <label class="col-sm-1 col-form-label col-form-label-sm text-start">
<th:block th:each="code:${session.commonCode.get('SEX')}"> <th:block th:each="code:${session.commonCode.get('SEX')}">
<th:block th:if="${code.itemCd eq suspect.sex}" th:text="${code.itemValue}"></th:block> <th:block th:if="${code.itemCd eq suspect.sex}" th:text="${code.itemValue}"></th:block>
</th:block> </th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">나이</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">나이</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start"> <label class="col-sm-1 col-form-label col-form-label-sm text-start">
<th:block th:each="code:${session.commonCode.get('AGE')}"> <th:block th:each="code:${session.commonCode.get('AGE')}">
<th:block th:if="${code.itemCd eq suspect.age}" th:text="${code.itemValue}"></th:block> <th:block th:if="${code.itemCd eq suspect.age}" th:text="${code.itemValue}"></th:block>
</th:block> </th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">국적</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">국적</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start"> <label class="col-sm-1 col-form-label col-form-label-sm text-start">
<th:block th:each="code:${session.commonCode.get('NNY')}"> <th:block th:each="code:${session.commonCode.get('NNY')}">
<th:block th:if="${code.itemCd eq suspect.country}" th:text="${code.itemValue}"></th:block> <th:block th:if="${code.itemCd eq suspect.country}" th:text="${code.itemValue}"></th:block>
</th:block> </th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">신병처리</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">신병처리</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start"> <label class="col-sm-1 col-form-label col-form-label-sm text-start">
<th:block th:each="code:${session.commonCode.get('PCR')}"> <th:block th:each="code:${session.commonCode.get('PCR')}">
<th:block th:if="${code.itemCd eq suspect.processResult}" th:text="${code.itemValue}"></th:block> <th:block th:if="${code.itemCd eq suspect.processResult}" th:text="${code.itemValue}"></th:block>
</th:block> </th:block>