fix : 외사경찰 교육현황리스트 교육명 교육일 담당기관추가 수정사항 14번

master
TaehunPark 2023-01-30 10:38:34 +09:00
parent 6bea705334
commit 1ea93f8c08
6 changed files with 124 additions and 25 deletions

View File

@ -279,8 +279,8 @@ public class PoliceController {
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/police/educationMgt").get(0).getAccessAuth(); String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/police/educationMgt").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth); mav.addObject("accessAuth", accessAuth);
userInfo.setQueryInfo(); userInfo.setQueryInfo();
mav.addObject("policeList", userInfoService.selectPoliceList(userInfo)); mav.addObject("policeList", userInfoService.selectPoliceEducationList(userInfo));
userInfo.setContentCnt(userInfoService.selectPoliceListCnt(userInfo)); userInfo.setContentCnt(userInfoService.selectPoliceEducationListCnt(userInfo));
userInfo.setPaginationInfo(); userInfo.setPaginationInfo();
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList()); mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("userStatus", userInfo.getUserStatus()); mav.addObject("userStatus", userInfo.getUserStatus());

View File

@ -45,4 +45,8 @@ public interface UserInfoMapper {
Integer selectAlarmListCnt(UserAlarm userAlarm); Integer selectAlarmListCnt(UserAlarm userAlarm);
Integer selectUserInfo(UserInfo ui); Integer selectUserInfo(UserInfo ui);
List<UserInfo> selectPoliceEducationList(UserInfo userInfo);
Integer selectPoliceEducationListCnt(UserInfo userInfo);
} }

View File

@ -132,6 +132,14 @@ public class UserInfo extends BaseModel implements UserDetails{
@Transient @Transient
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
private LocalDateTime lastEduWrtDt; private LocalDateTime lastEduWrtDt;
@Transient
private String eduName;
@Transient
private String eduSdate;
@Transient
private String eduEdate;
@Transient
private String eduRa;
@Transient @Transient
private List<AccessConfig> accessConfigList; private List<AccessConfig> accessConfigList;

View File

@ -247,5 +247,13 @@ public class UserInfoService implements UserDetailsService {
dbUser.setPassword(convertPassword(ui.getPassword())); dbUser.setPassword(convertPassword(ui.getPassword()));
return userInfoRepository.save(dbUser).getUserSeq(); return userInfoRepository.save(dbUser).getUserSeq();
} }
public List<UserInfo> selectPoliceEducationList(UserInfo userInfo) {
return userInfoMapper.selectPoliceEducationList(userInfo);
}
public Integer selectPoliceEducationListCnt(UserInfo userInfo) {
return userInfoMapper.selectPoliceEducationListCnt(userInfo);
}
} }

View File

@ -133,12 +133,7 @@
b.crc004Sum, b.crc004Sum,
b.crc005Sum, b.crc005Sum,
b.crc006Sum, b.crc006Sum,
b.lastCareerWrtDt, b.lastCareerWrtDt
c.lastEduWrtDt,
d.edu_name,
d.edu_sdate,
d.edu_edate,
d.edu_ra
from user_info a from user_info a
left outer join ( left outer join (
select user_seq, select user_seq,
@ -152,22 +147,6 @@
from user_career from user_career
group by user_seq group by user_seq
) b on a.user_seq = b.user_seq ) b on a.user_seq = b.user_seq
left outer join (
select user_seq,
max(wrt_dt) as lastEduWrtDt
from user_edu
group by user_seq
) c on a.user_seq = c.user_seq
left outer join (
select aa.user_seq,
aa.edu_seq,
aa.edu_name,
aa.edu_sdate,
aa.edu_edate,
aa.edu_ra
from user_edu aa inner join (select user_seq, max(edu_edate) as edu_edate from user_edu group by user_seq) ab
on aa.user_seq = ab.user_seq and aa.edu_edate = ab.edu_edate
) d on a.user_seq = d.user_seq
<include refid="selectPoliceListWhere"></include> <include refid="selectPoliceListWhere"></include>
order by rownum desc order by rownum desc
<if test='excel != "Y"'> <if test='excel != "Y"'>
@ -198,6 +177,98 @@
) a ) a
</select> </select>
<select id="selectPoliceEducationList" resultType="UserInfo" parameterType="UserInfo">
select (ROW_NUMBER() OVER(order by user_nm desc)) AS rownum,
a.user_seq,
(select item_value from code_mgt where item_cd = title_cd) as title_cd,
user_nm,
og_cd,
(select item_value from code_mgt where item_cd = og_cd) as organ_nm,
(select item_value from code_mgt where item_cd = ofc_cd) as ofc_cd,
birth_date,
(select item_value from code_mgt where item_cd = sex) as sex,
police_in_date,
title_in_date,
ofc_in_date,
duty_cd,
(select item_value from code_mgt where item_cd = outturn_cd) as outturn_cd,
(select item_value from code_mgt where item_cd = job_in_cd) as job_in_cd,
wrt_dt,
b.lastEduWrtDt,
c.edu_name,
c.edu_sdate,
c.edu_edate,
c.edu_ra
from user_info a
left outer join (
select user_seq,
max(wrt_dt) as lastEduWrtDt
from user_edu
group by user_seq
) b on a.user_seq = b.user_seq
left outer join (
select aa.user_seq,
aa.edu_seq,
aa.edu_name,
aa.edu_sdate,
aa.edu_edate,
aa.edu_ra
from user_edu aa inner join (select user_seq, max(edu_edate) as edu_edate from user_edu group by user_seq) ab
on aa.user_seq = ab.user_seq and aa.edu_edate = ab.edu_edate
) c on a.user_seq = c.user_seq
<include refid="selectPoliceListWhere"></include>
order by rownum desc
<if test='excel != "Y"'>
limit #{rowCnt} offset #{firstIndex}
</if>
</select>
<select id="selectPoliceEducationListCnt" resultType="Integer" parameterType="UserInfo">
select count(*)
from(
select (ROW_NUMBER() OVER(order by user_nm desc)) AS rownum,
a.user_seq,
(select item_value from code_mgt where item_cd = title_cd) as title_cd,
user_nm,
og_cd,
(select item_value from code_mgt where item_cd = og_cd) as organ_nm,
(select item_value from code_mgt where item_cd = ofc_cd) as ofc_cd,
birth_date,
(select item_value from code_mgt where item_cd = sex) as sex,
police_in_date,
title_in_date,
ofc_in_date,
duty_cd,
(select item_value from code_mgt where item_cd = outturn_cd) as outturn_cd,
(select item_value from code_mgt where item_cd = job_in_cd) as job_in_cd,
wrt_dt,
b.lastEduWrtDt,
c.edu_name,
c.edu_sdate,
c.edu_edate,
c.edu_ra
from user_info a
left outer join (
select user_seq,
max(wrt_dt) as lastEduWrtDt
from user_edu
group by user_seq
) b on a.user_seq = b.user_seq
left outer join (
select aa.user_seq,
aa.edu_seq,
aa.edu_name,
aa.edu_sdate,
aa.edu_edate,
aa.edu_ra
from user_edu aa inner join (select user_seq, max(edu_edate) as edu_edate from user_edu group by user_seq) ab
on aa.user_seq = ab.user_seq and aa.edu_edate = ab.edu_edate
) c on a.user_seq = c.user_seq
<include refid="selectPoliceListWhere"></include>
order by rownum desc
)d
</select>
<select id="selectPoliceHisList" resultType="UserInfoHistory" parameterType="UserInfoHistory"> <select id="selectPoliceHisList" resultType="UserInfoHistory" parameterType="UserInfoHistory">
select user_seq, select user_seq,
version_no, version_no,

View File

@ -89,6 +89,9 @@
<th>성명</th> <th>성명</th>
<th>생년월일</th> <th>생년월일</th>
<th>성별</th> <th>성별</th>
<th>교육명</th>
<th>교육일</th>
<th>담당기관</th>
<th>최종수정일</th> <th>최종수정일</th>
</tr> </tr>
</thead> </thead>
@ -109,7 +112,12 @@
<td th:text="${police.userNm}"></td> <td th:text="${police.userNm}"></td>
<td th:text="${police.birthDate}"></td> <td th:text="${police.birthDate}"></td>
<td th:text="${police.sex}"></td> <td th:text="${police.sex}"></td>
<td th:text="${police.eduName}"></td>
<td>
<th:block th:if="${police.eduEdate eq null}"></th:block>
<th:block th:unless="${police.eduEdate eq null}" th:text="|${police.eduSdate}~${police.eduEdate}|"></th:block>
</td>
<td th:text="${police.eduRa}"></td>
<td th:text="${#temporals.format(police.lastEduWrtDt, 'yyyy-MM-dd')}"></td> <td th:text="${#temporals.format(police.lastEduWrtDt, 'yyyy-MM-dd')}"></td>
</tr> </tr>
</tbody> </tbody>