fix:외사대상목표 작성자 직급추가

TaehunPark 2022-11-01 13:27:40 +09:00
parent 479126666f
commit a0f462ae3e
17 changed files with 72 additions and 28 deletions

View File

@ -120,7 +120,8 @@ public class FipTargetController {
@PostMapping("/savePartInfo") @PostMapping("/savePartInfo")
public void savePartInfo (@AuthenticationPrincipal UserInfo loginUser, PartInfo partInfo,MultipartHttpServletRequest request){ public void savePartInfo (@AuthenticationPrincipal UserInfo loginUser, PartInfo partInfo,MultipartHttpServletRequest request){
partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles")); partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles"));
partInfo.setWrtNm(loginUser.getUserId()); partInfo.setWrtNm(loginUser.getUserNm());
partInfo.setWrtTitle(loginUser.getTitleCd());
partInfo.setWrtPart(loginUser.getOfcCd()); partInfo.setWrtPart(loginUser.getOfcCd());
partInfo.setWrtUserSeq(loginUser.getUserSeq()); partInfo.setWrtUserSeq(loginUser.getUserSeq());
partInfo.setWrtOrgan(loginUser.getOgCd()); partInfo.setWrtOrgan(loginUser.getOgCd());
@ -141,8 +142,8 @@ public class FipTargetController {
//메뉴권한 확인 //메뉴권한 확인
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/target/partInfoList").get(0).getAccessAuth(); String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/target/partInfoList").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth); mav.addObject("accessAuth", accessAuth);
mav.addObject("userId", loginUser.getUserId()); mav.addObject("userSeq", loginUser.getUserSeq());
mav.addObject("wrtId", fipTargetService.selectPartInfoFirstId(partInfo)); mav.addObject("wrtUserSeq", fipTargetService.selectPartInfoFirstId(partInfo));
return mav; return mav;
} }
@ -152,9 +153,10 @@ public class FipTargetController {
@RequestParam(value = "fileSeq", required = false) List < Integer > deleteFileSeq){ @RequestParam(value = "fileSeq", required = false) List < Integer > deleteFileSeq){
partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles")); partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles"));
partInfo.setWrtUserSeq(loginUser.getUserSeq()); partInfo.setWrtUserSeq(loginUser.getUserSeq());
partInfo.setWrtNm(loginUser.getUserId()); partInfo.setWrtNm(loginUser.getUserNm());
partInfo.setWrtOrgan(loginUser.getOgCd()); partInfo.setWrtOrgan(loginUser.getOgCd());
partInfo.setWrtPart(loginUser.getOfcCd()); partInfo.setWrtPart(loginUser.getOfcCd());
partInfo.setWrtTitle(loginUser.getTitleCd());
partInfo.setWrtDt(LocalDateTime.now()); partInfo.setWrtDt(LocalDateTime.now());
fipTargetService.updatePartInfo(partInfo,deleteFileSeq); fipTargetService.updatePartInfo(partInfo,deleteFileSeq);
return partInfo.getPiSeq(); return partInfo.getPiSeq();
@ -305,10 +307,11 @@ public class FipTargetController {
@PostMapping("/savePartWork") @PostMapping("/savePartWork")
public void savePartWork (@AuthenticationPrincipal UserInfo loginUser, PartWork partWork,MultipartHttpServletRequest request){ public void savePartWork (@AuthenticationPrincipal UserInfo loginUser, PartWork partWork,MultipartHttpServletRequest request){
partWork.setMultipartFileList(request.getMultiFileMap().get("uploadFiles")); partWork.setMultipartFileList(request.getMultiFileMap().get("uploadFiles"));
partWork.setWrtNm(loginUser.getUserId()); partWork.setWrtNm(loginUser.getUserNm());
partWork.setWrtPart(loginUser.getOfcCd()); partWork.setWrtPart(loginUser.getOfcCd());
partWork.setWrtUserSeq(loginUser.getUserSeq()); partWork.setWrtUserSeq(loginUser.getUserSeq());
partWork.setWrtOrgan(loginUser.getOgCd()); partWork.setWrtOrgan(loginUser.getOgCd());
partWork.setWrtTitle(loginUser.getTitleCd());
partWork.setWrtDt(LocalDateTime.now()); partWork.setWrtDt(LocalDateTime.now());
fipTargetService.savePartWork(partWork); fipTargetService.savePartWork(partWork);
} }
@ -391,15 +394,16 @@ public class FipTargetController {
if(vulnerable.getVulnKey() != null) { if(vulnerable.getVulnKey() != null) {
vulnerable = fipTargetService.selectVulnInfo(vulnerable); vulnerable = fipTargetService.selectVulnInfo(vulnerable);
vulnerable.setFileList(fipTargetService.selectVulnFile(vulnerable.getVulnKey())); vulnerable.setFileList(fipTargetService.selectVulnFile(vulnerable.getVulnKey()));
mav.addObject("userId", loginUser.getUserId()); mav.addObject("userSeq", loginUser.getUserSeq());
} }
//메뉴권한 확인 //메뉴권한 확인
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/target/vulnerableList").get(0).getAccessAuth(); String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/target/vulnerableList").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth); mav.addObject("accessAuth", accessAuth);
vulnerable.setWrtNm(loginUser.getUserId()); vulnerable.setWrtNm(loginUser.getUserNm());
vulnerable.setWrtPart(loginUser.getOfcCd()); vulnerable.setWrtPart(loginUser.getOfcCd());
vulnerable.setWrtUserSeq(loginUser.getUserSeq()); vulnerable.setWrtUserSeq(loginUser.getUserSeq());
vulnerable.setWrtOrgan(loginUser.getOgCd()); vulnerable.setWrtOrgan(loginUser.getOgCd());
vulnerable.setWrtTitle(loginUser.getTitleCd());
mav.addObject("info", vulnerable); mav.addObject("info", vulnerable);
return mav; return mav;
} }
@ -524,7 +528,7 @@ public class FipTargetController {
@PostMapping("/saveShipInfo") @PostMapping("/saveShipInfo")
public void saveShipInfo (@AuthenticationPrincipal UserInfo loginUser, ShipInfo shipInfo){ public void saveShipInfo (@AuthenticationPrincipal UserInfo loginUser, ShipInfo shipInfo){
shipInfo.setWrtNm(loginUser.getUserId()); shipInfo.setWrtNm(loginUser.getUserNm());
shipInfo.setWrtPart(loginUser.getOfcCd()); shipInfo.setWrtPart(loginUser.getOfcCd());
shipInfo.setWrtTitle(loginUser.getTitleCd()); shipInfo.setWrtTitle(loginUser.getTitleCd());
shipInfo.setWrtUserSeq(loginUser.getUserSeq()); shipInfo.setWrtUserSeq(loginUser.getUserSeq());
@ -549,7 +553,7 @@ public class FipTargetController {
@PostMapping("/updateShipInfo") @PostMapping("/updateShipInfo")
public ShipInfo updateShipInfo (@AuthenticationPrincipal UserInfo loginUser,ShipInfo shipInfo){ public ShipInfo updateShipInfo (@AuthenticationPrincipal UserInfo loginUser,ShipInfo shipInfo){
shipInfo.setWrtNm(loginUser.getUserId()); shipInfo.setWrtNm(loginUser.getUserNm());
shipInfo.setWrtPart(loginUser.getOfcCd()); shipInfo.setWrtPart(loginUser.getOfcCd());
shipInfo.setWrtTitle(loginUser.getTitleCd()); shipInfo.setWrtTitle(loginUser.getTitleCd());
shipInfo.setWrtUserSeq(loginUser.getUserSeq()); shipInfo.setWrtUserSeq(loginUser.getUserSeq());
@ -561,7 +565,7 @@ public class FipTargetController {
@GetMapping("/ipShipHistory") @GetMapping("/ipShipHistory")
public ModelAndView ipShipHistory(ShipInfo shipInfo) { public ModelAndView ipShipHistory(ShipInfo shipInfo) {
ModelAndView mav = new ModelAndView("fipTarget/ipShipHistory"); ModelAndView mav = new ModelAndView("fipTarget/ipShipHistory");
mav.addObject("shipInfoList", fipTargetService.selectShipInfoSeq(shipInfo)); mav.addObject("shipInfoList", fipTargetService.selectIpShiwHistoryList(shipInfo));
return mav; return mav;
} }

View File

@ -60,6 +60,8 @@ public interface FipTargetMapper {
List<ParamMap> selectShipInfoListToExcle(ShipInfo shipInfo); List<ParamMap> selectShipInfoListToExcle(ShipInfo shipInfo);
List<ShipInfo> selectIpShiwHistoryList(ShipInfo shipInfo);

View File

@ -66,6 +66,8 @@ public class PartInfo extends BaseModel implements Serializable{
private String wrtOrgan; private String wrtOrgan;
@Column(name = "wrt_part") @Column(name = "wrt_part")
private String wrtPart; private String wrtPart;
@Column(name = "wrt_title")
private String wrtTitle;
@Column(name = "wrt_user_seq") @Column(name = "wrt_user_seq")
private Integer wrtUserSeq; private Integer wrtUserSeq;
@Column(name = "wrt_nm") @Column(name = "wrt_nm")

View File

@ -50,6 +50,8 @@ public class PartWork extends BaseModel implements Serializable{
private String wrtOrgan; private String wrtOrgan;
@Column(name = "wrt_part") @Column(name = "wrt_part")
private String wrtPart; private String wrtPart;
@Column(name = "wrt_title")
private String wrtTitle;
@Column(name = "wrt_user_seq") @Column(name = "wrt_user_seq")
private Integer wrtUserSeq; private Integer wrtUserSeq;
@Column(name = "wrt_nm") @Column(name = "wrt_nm")

View File

@ -42,6 +42,8 @@ public class Vulnerable extends BaseModel{
private String wrtOrgan; private String wrtOrgan;
@Column(name = "wrt_part") @Column(name = "wrt_part")
private String wrtPart; private String wrtPart;
@Column(name = "wrt_title")
private String wrtTitle;
@Column(name = "wrt_user_seq") @Column(name = "wrt_user_seq")
private Integer wrtUserSeq; private Integer wrtUserSeq;
@Column(name = "wrt_nm") @Column(name = "wrt_nm")

View File

@ -473,8 +473,8 @@ public class FipTargetService extends BaseService {
return shipInfoRepository.save(shipTmp); return shipInfoRepository.save(shipTmp);
} }
public List<ShipInfo> selectShipInfoSeq(ShipInfo shipInfo) { public List<ShipInfo> selectIpShiwHistoryList(ShipInfo shipInfo) {
return shipInfoRepository.findBySiSeqAndSiTypeOrderByVersionNoDesc(shipInfo.getSiSeq(),shipInfo.getSiType()); return fipTargetMapper.selectIpShiwHistoryList(shipInfo);
} }
public ShipInfo selectIpShipHistoryView(ShipInfo shipInfo) { public ShipInfo selectIpShipHistoryView(ShipInfo shipInfo) {

View File

@ -247,6 +247,7 @@
<select id="selectPartInfoSeq" resultType="PartInfo" parameterType="PartInfo"> <select id="selectPartInfoSeq" resultType="PartInfo" parameterType="PartInfo">
select pi_seq, select pi_seq,
version_no, version_no,
(select item_value from code_mgt where item_cd = wrt_title) as wrt_title,
wrt_nm, wrt_nm,
wrt_dt wrt_dt
from part_info from part_info
@ -301,7 +302,7 @@
</select> </select>
<select id="selectPartInfoFirstId" resultType="String" parameterType="int"> <select id="selectPartInfoFirstId" resultType="String" parameterType="int">
select wrt_nm select wrt_user_seq
from part_info from part_info
where pi_seq = #{piSeq} where pi_seq = #{piSeq}
order by version_no asc order by version_no asc
@ -327,6 +328,7 @@
select pw.pw_seq, select pw.pw_seq,
pw.pi_seq , pw.pi_seq ,
pi.terminal_nm, pi.terminal_nm,
(select item_value from code_mgt where item_cd = pw.wrt_title) as wrt_title,
pw.wrt_nm, pw.wrt_nm,
pw.work_dt, pw.work_dt,
pw.save_yn, pw.save_yn,
@ -419,6 +421,7 @@
select pw.pw_seq, select pw.pw_seq,
pw.pi_seq , pw.pi_seq ,
pi.terminal_nm, pi.terminal_nm,
(select item_value from code_mgt where item_cd = pw.wrt_title) as wrt_title,
pw.wrt_nm, pw.wrt_nm,
pw.work_dt, pw.work_dt,
pw.save_yn, pw.save_yn,
@ -500,6 +503,7 @@
mgt_organ, mgt_organ,
vuln_nm, vuln_nm,
(select item_value from code_mgt where item_cd = vuln_type) as vuln_type, (select item_value from code_mgt where item_cd = vuln_type) as vuln_type,
(select item_value from code_mgt where item_cd = wrt_title) as wrt_title,
wrt_nm, wrt_nm,
wrt_dt wrt_dt
from board_vuln from board_vuln
@ -523,7 +527,9 @@
mgt_organ, mgt_organ,
(select item_value from code_mgt where item_cd = vuln_type) as vuln_type, (select item_value from code_mgt where item_cd = vuln_type) as vuln_type,
description, description,
(select item_value from code_mgt where item_cd = wrt_title) as wrt_title,
wrt_nm, wrt_nm,
wrt_user_seq,
wrt_dt wrt_dt
from board_vuln from board_vuln
where vuln_key = #{vulnKey} where vuln_key = #{vulnKey}
@ -609,6 +615,30 @@
and si.si_type = #{siType} and si.si_type = #{siType}
</select> </select>
<select id="selectIpShiwHistoryList" resultType="ShipInfo" parameterType="ShipInfo">
select si_seq,
version_no,
si_type,
start_point,
end_point,
distance_nm,
distance_km,
owner_nm,
ship_nm,
ship_weight,
passenger_cnt,
freight_cnt,
operation_cnt,
close_yn,
description,
(select item_value from code_mgt where item_cd = wrt_title) as wrt_title,
wrt_nm,
wrt_dt
from ship_info
where si_seq = #{siSeq}
and si_type = #{siType}
</select>
<select id="selectShipInfoListToExcle" resultType="com.dbnt.faisp.util.ParamMap" parameterType="ShipInfo"> <select id="selectShipInfoListToExcle" resultType="com.dbnt.faisp.util.ParamMap" parameterType="ShipInfo">
select si.si_seq, select si.si_seq,
version_no, version_no,

View File

@ -56,8 +56,9 @@
<select id="selectManagerList" resultType="com.dbnt.faisp.util.ParamMap" parameterType="com.dbnt.faisp.util.ParamMap"> <select id="selectManagerList" resultType="com.dbnt.faisp.util.ParamMap" parameterType="com.dbnt.faisp.util.ParamMap">
select user_seq, select user_seq,
user_id user_id,
user_name (select item_value from code_mgt where item_cd = title_cd) as title_cd,
user_nm
from user_info from user_info
where og_cd in where og_cd in
<foreach collection="downOrganCdList" item="item" index="index" separator="," open="(" close=")"> <foreach collection="downOrganCdList" item="item" index="index" separator="," open="(" close=")">

View File

@ -34,7 +34,7 @@
<input type="hidden" class="siSeq" th:value="${si.siSeq}"> <input type="hidden" class="siSeq" th:value="${si.siSeq}">
<input type="hidden" class="siType" th:value="${si.siType}"> <input type="hidden" class="siType" th:value="${si.siType}">
<input type="hidden" class="verNo" th:value="${si.versionNo}"></td> <input type="hidden" class="verNo" th:value="${si.versionNo}"></td>
<td th:text="${si.wrtNm}"></td> <td th:text="|${si.wrtTitle} ${si.wrtNm}|"></td>
<td th:text="${#temporals.format(si.wrtDt, 'yyyy-MM-dd')}"></td> <td th:text="${#temporals.format(si.wrtDt, 'yyyy-MM-dd')}"></td>
</tr> </tr>
</tbody> </tbody>

View File

@ -41,7 +41,7 @@
type="hidden" class="piSeq" th:value="${partInfo.piSeq}"> type="hidden" class="piSeq" th:value="${partInfo.piSeq}">
<input type="hidden" class="verNo" <input type="hidden" class="verNo"
th:value="${partInfo.versionNo}"></td> th:value="${partInfo.versionNo}"></td>
<td th:text="${partInfo.wrtNm}"></td> <td th:text="|${partInfo.wrtTitle} ${partInfo.wrtNm}|"></td>
<td <td
th:text="${#temporals.format(partInfo.wrtDt, 'yyyy-MM-dd')}"></td> th:text="${#temporals.format(partInfo.wrtDt, 'yyyy-MM-dd')}"></td>
</tr> </tr>

View File

@ -42,7 +42,7 @@
<select class="form-select form-select-sm" id="mPiUserSeq" name="piUserSeq"> <select class="form-select form-select-sm" id="mPiUserSeq" name="piUserSeq">
<option value="">-선택-</option> <option value="">-선택-</option>
<th:block th:each="info:${managerList}"> <th:block th:each="info:${managerList}">
<option th:value="${info.user_seq}" th:text="${info.user_name}" th:selected="${info.user_seq eq partInfo.piUserSeq}"></option> <option th:value="${info.user_seq}" th:text="|${info.title_cd} ${info.user_nm}|" th:selected="${info.user_seq eq partInfo.piUserSeq}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
@ -145,8 +145,8 @@
<div class="modal-footer justify-content-between"> <div class="modal-footer justify-content-between">
<div class="col-auto"> <div class="col-auto">
<button type="button" class="btn btn-secondary" id="btn-close" data-bs-dismiss="modal">닫기</button> <button type="button" class="btn btn-secondary" id="btn-close" data-bs-dismiss="modal">닫기</button>
<button type="button" class="btn btn-danger" id="deletePartInfo" th:if="${accessAuth eq 'ACC003'} or ${wrtId eq userId}">삭제</button> <button type="button" class="btn btn-danger" id="deletePartInfo" th:if="${accessAuth eq 'ACC003'} or ${wrtUserSeq eq userSeq}">삭제</button>
<button type="button" class="btn btn-primary" id="updatePartInfo" th:if="${accessAuth eq 'ACC003'} or ${wrtId eq userId}">수정</button> <button type="button" class="btn btn-primary" id="updatePartInfo" th:if="${accessAuth eq 'ACC003'} or ${wrtUserSeq eq userSeq}">수정</button>
</div> </div>
</div> </div>
</html> </html>

View File

@ -2,6 +2,6 @@
<html lang="ko" xmlns:th="http://www.thymeleaf.org"> <html lang="ko" xmlns:th="http://www.thymeleaf.org">
<option value="">-선택-</option> <option value="">-선택-</option>
<th:block th:each="info:${managerList}"> <th:block th:each="info:${managerList}">
<option th:value="${info.user_seq}" th:text="${info.user_name}"></option> <option th:value="${info.user_seq}" th:text="|${info.title_cd} ${info.user_nm}|"></option>
</th:block> </th:block>
</html> </html>

View File

@ -62,7 +62,7 @@
<input type="hidden" class="piSeq" th:value="${pw.piSeq}"> <input type="hidden" class="piSeq" th:value="${pw.piSeq}">
</th:block> </th:block>
<td th:text="|[임시]${pw.terminalNm}|"></td> <td th:text="|[임시]${pw.terminalNm}|"></td>
<td th:text="${pw.wrtNm}"></td> <td th:text="|${pw.wrtTitle} ${pw.wrtNm}|"></td>
<td th:text="${pw.workDt}"></td> <td th:text="${pw.workDt}"></td>
<td th:text="${pw.workTypeCh}"></td> <td th:text="${pw.workTypeCh}"></td>
<td th:text="${pw.workTypePoci}"></td> <td th:text="${pw.workTypePoci}"></td>
@ -82,7 +82,7 @@
<input type="hidden" class="piSeq" th:value="${pw.piSeq}"> <input type="hidden" class="piSeq" th:value="${pw.piSeq}">
</th:block> </th:block>
<td th:text="${pw.terminalNm}"></td> <td th:text="${pw.terminalNm}"></td>
<td th:text="${pw.wrtNm}"></td> <td th:text="|${pw.wrtTitle} ${pw.wrtNm}|"></td>
<td th:text="${pw.workDt}"></td> <td th:text="${pw.workDt}"></td>
<td th:text="${pw.workTypeCh}"></td> <td th:text="${pw.workTypeCh}"></td>
<td th:text="${pw.workTypePoci}"></td> <td th:text="${pw.workTypePoci}"></td>

View File

@ -25,7 +25,7 @@
<div class="mb-3 row"> <div class="mb-3 row">
<label for="title" class="col-sm-2 col-form-label text-center">작성자</label> <label for="title" class="col-sm-2 col-form-label text-center">작성자</label>
<div class="col-sm-4"> <div class="col-sm-4">
<input type="text" class="form-control" th:value="${pwInfo.wrtNm}" readonly> <input type="text" class="form-control" th:value="|${pwInfo.wrtTitle} ${pwInfo.wrtNm}|" readonly>
</div> </div>
<label for="wrtDt" class="col-sm-2 col-form-label text-center">최종수정일</label> <label for="wrtDt" class="col-sm-2 col-form-label text-center">최종수정일</label>
<div class="col-sm-4"> <div class="col-sm-4">

View File

@ -17,6 +17,7 @@
<input type="hidden" name="vulnKey" th:value="${info.vulnKey}"> <input type="hidden" name="vulnKey" th:value="${info.vulnKey}">
<input type="hidden" name="wrtOrgan" th:value="${info.wrtOrgan}"> <input type="hidden" name="wrtOrgan" th:value="${info.wrtOrgan}">
<input type="hidden" name="wrtPart" th:value="${info.wrtPart}"> <input type="hidden" name="wrtPart" th:value="${info.wrtPart}">
<input type="hidden" name="wrtTitle" th:value="${info.wrtTitle}">
<input type="hidden" name="wrtUserSeq" th:value="${info.wrtUserSeq}"> <input type="hidden" name="wrtUserSeq" th:value="${info.wrtUserSeq}">
<input type="hidden" name="wrtNm" th:value="${info.wrtNm}"> <input type="hidden" name="wrtNm" th:value="${info.wrtNm}">
<div class="mb-3 row"> <div class="mb-3 row">
@ -86,8 +87,8 @@
</th:block> </th:block>
<th:block th:unless="${info.vulnKey eq null}"> <th:block th:unless="${info.vulnKey eq null}">
<button type="button" id="btn-close" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button> <button type="button" id="btn-close" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button>
<button type="button" class="btn btn-danger" id="deleteVuln" th:if="${accessAuth eq 'ACC003'} or ${info.wrtNm eq userId}">삭제</button> <button type="button" class="btn btn-danger" id="deleteVuln" th:if="${accessAuth eq 'ACC003'} or ${info.wrtUserSeq eq userSeq}">삭제</button>
<button type="button" class="btn btn-primary" id="updateVuln" th:if="${accessAuth eq 'ACC003'} or ${info.wrtNm eq userId}">수정</button> <button type="button" class="btn btn-primary" id="updateVuln" th:if="${accessAuth eq 'ACC003'} or ${info.wrtUserSeq eq userSeq}">수정</button>
</th:block> </th:block>
</div> </div>
</div> </div>

View File

@ -24,7 +24,7 @@
<tr th:each="info:${vulnInfoList}"> <tr th:each="info:${vulnInfoList}">
<td id="viewModal" style="color: blue; cursor:pointer;" th:data-vulnKey="${info.vulnKey}" th:text="${info.vulnNm}"></td> <td id="viewModal" style="color: blue; cursor:pointer;" th:data-vulnKey="${info.vulnKey}" th:text="${info.vulnNm}"></td>
<td th:text="${info.vulnType}"></td> <td th:text="${info.vulnType}"></td>
<td th:text="${info.wrtNm}"></td> <td th:text="|${info.wrtTitle} ${info.wrtNm}|"></td>
<td <td
th:text="${#temporals.format(info.wrtDt, 'yyyy-MM-dd HH:mm')}"></td> th:text="${#temporals.format(info.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
</tr> </tr>

View File

@ -23,7 +23,7 @@
<tr> <tr>
<td id="goEdit" th:data-vulnKey="${vulnInfo.vulnKey}" style="color: blue; cursor:pointer;" th:text="${vulnInfo.vulnNm}"></td> <td id="goEdit" th:data-vulnKey="${vulnInfo.vulnKey}" style="color: blue; cursor:pointer;" th:text="${vulnInfo.vulnNm}"></td>
<td th:text="${vulnInfo.vulnType}"></td> <td th:text="${vulnInfo.vulnType}"></td>
<td th:text="${vulnInfo.wrtNm}"></td> <td th:text="|${vulnInfo.wrtTitle} ${vulnInfo.wrtNm}|"></td>
<td th:text="${#temporals.format(vulnInfo.wrtDt, 'yyyy-MM-dd HH:mm')}"></td> <td th:text="${#temporals.format(vulnInfo.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
</tr> </tr>