parent
778539224b
commit
9330763c2c
|
|
@ -29,13 +29,17 @@ public class KwmsController {
|
|||
mav.addObject("userInfo", empInfo);
|
||||
mav.addObject("msg", "-포함 입력 ex) M00-00000");
|
||||
}else{
|
||||
if(userInfoService.selectUserInfoToDicCode(empInfo.getDic()) == null){
|
||||
UserInfo savedUser = userInfoService.selectUserInfoToDicCode(empInfo.getDic());
|
||||
if(savedUser == null || savedUser.getUserStatus().equals("USC004")){
|
||||
UserInfo userInfo = kwmsService.selectEmpInfo(empInfo.getDic());
|
||||
if(userInfo==null){
|
||||
mav.addObject("joinFlag", "F");
|
||||
mav.addObject("userInfo", empInfo);
|
||||
mav.addObject("msg", "검색 결과가 없습니다.");
|
||||
}else{
|
||||
if(savedUser.getUserStatus().equals("USC004")){
|
||||
userInfo.setUserSeq(savedUser.getUserSeq());
|
||||
}
|
||||
mav.addObject("joinFlag", "T");
|
||||
mav.addObject("userInfo", userInfo);
|
||||
mav.addObject("ogList", codeMgtService.selectCodeMgtList("OG"));
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ public interface UserInfoRepository extends JpaRepository<UserInfo, Integer> {
|
|||
Optional<UserInfo> findByUserSeq(Integer userSeq);
|
||||
|
||||
Optional<UserInfo> findByDicCode(String dicCode);
|
||||
Optional<UserInfo> findByDicCodeAndUserStatus(String dicCode, String userStatus);
|
||||
|
||||
@Query(value = "SELECT user_status FROM user_info WHERE user_seq=:userSeq", nativeQuery = true)
|
||||
String getUserStatus(@Param("userSeq") Integer userSeq);
|
||||
|
|
|
|||
|
|
@ -35,7 +35,8 @@ public class UserInfoService implements UserDetailsService {
|
|||
|
||||
@Transactional
|
||||
public String insertUserInfo(UserInfo userInfo){
|
||||
if(userInfoRepository.findByUserId(userInfo.getUserId()).orElse(null) != null){
|
||||
UserInfo savedUser = userInfoRepository.findByUserId(userInfo.getUserId()).orElse(null);
|
||||
if(savedUser != null && savedUser.getUserStatus().equals("USC003")){
|
||||
return "userIdDuplication";
|
||||
}
|
||||
userInfo.setUserRole(Role.USER.getValue());
|
||||
|
|
@ -43,7 +44,7 @@ public class UserInfoService implements UserDetailsService {
|
|||
userInfo.setPassword(convertPassword(userInfo.getPassword()));
|
||||
userInfo.setWrtDt(LocalDateTime.now());
|
||||
UserInfo result = userInfoRepository.save(userInfo);
|
||||
saveUserInfoHistory(result, result);
|
||||
saveUserInfoHistory(savedUser==null?result:savedUser, result);
|
||||
return result.getUserId();
|
||||
}
|
||||
@Transactional
|
||||
|
|
|
|||
|
|
@ -51,9 +51,11 @@ $(document).on('click', '#updateBtn', function (){
|
|||
})
|
||||
|
||||
$(document).on('click', '#deleteBtn', function (){
|
||||
if(confirm("삭제 하시겠습니까?")){
|
||||
/*if(confirm("삭제 하시겠습니까?")){
|
||||
deleteUser([{userSeq: Number($("#userSeq").val())}])
|
||||
}
|
||||
}*/
|
||||
$("#editModalUserStatus").val('USC004');
|
||||
saveUserInfo();
|
||||
})
|
||||
$(document).on('click', '#syncToKwmsBtn', function (){
|
||||
const dicCode = $("#dicCode").val();
|
||||
|
|
@ -159,7 +161,13 @@ function userCompanion(checkArr){
|
|||
|
||||
|
||||
function saveUserInfo(){
|
||||
if(confirm("저장하시겠습니까?")){
|
||||
let actionMsg = "";
|
||||
if($("#editModalUserStatus").val()==="USC004"){
|
||||
actionMsg = "삭제"
|
||||
}else{
|
||||
actionMsg = "저장"
|
||||
}
|
||||
if(confirm(actionMsg+"하시겠습니까?")){
|
||||
contentFade("in");
|
||||
const formData = new FormData($("#userInfoUpdate")[0]);
|
||||
$.ajax({
|
||||
|
|
@ -169,12 +177,12 @@ function saveUserInfo(){
|
|||
processData: false,
|
||||
contentType: false,
|
||||
success : function() {
|
||||
alert("저장되었습니다.");
|
||||
alert(actionMsg+"되었습니다.");
|
||||
contentFade("out");
|
||||
location.reload();
|
||||
},
|
||||
error : function(xhr, status) {
|
||||
alert("저장에 실패하였습니다.");
|
||||
alert(actionMsg+"에 실패하였습니다.");
|
||||
contentFade("out");
|
||||
}
|
||||
})
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
|
||||
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
|
||||
<input type="hidden" name="userSeq" id="userSeq" class="userSeq" th:value="${userInfo.userSeq}">
|
||||
<input type="hidden" name="userStatus" th:value="${userInfo.userStatus}">
|
||||
<input type="hidden" name="userStatus" id="editModalUserStatus" th:value="${userInfo.userStatus}">
|
||||
<div class="mb-3 mt-3 row" sec:authorize="hasRole('ROLE_ADMIN')" th:classappend="${#strings.contains(userInfo.userRole, 'ROLE_ADMIN')?'d-none':''}">
|
||||
<label for="userRole" class="col-sm-2 col-form-label col-form-label-sm text-center ">시스템권한</label>
|
||||
<div class="col-sm-4" id="userRole">
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
</div>
|
||||
<div class="modal-body" th:if="${joinFlag eq 'T'}">
|
||||
<form id="userInfoInsert" action="#" th:action="@{/admin/insertUserInfo}" method="post">
|
||||
<input type="hidden" name="userSeq" th:value="${userInfo.userSeq}">
|
||||
<div class="mb-3 mt-3 row">
|
||||
<label for="dicCode" class="col-sm-2 col-form-label col-form-label-sm text-center ">디지털식별코드</label>
|
||||
<div class="col-sm-3">
|
||||
|
|
|
|||
|
|
@ -64,19 +64,19 @@
|
|||
<th th:text="${statusSummary.sumNow}"></th>
|
||||
<th th:text="${statusSummary.sumNow-statusSummary.sumMax}" th:classappend="${(statusSummary.sumNow-statusSummary.sumMax)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt007Max}"></th>
|
||||
<th th:text="${statusSummary.jt007Now}"></th>
|
||||
<th th:text="${statusSummary.jt007Now}" th:classappend="${(statusSummary.jt007Now-statusSummary.jt007Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt006Max}"></th>
|
||||
<th th:text="${statusSummary.jt006Now}"></th>
|
||||
<th th:text="${statusSummary.jt006Now}" th:classappend="${(statusSummary.jt006Now-statusSummary.jt006Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt005Max}"></th>
|
||||
<th th:text="${statusSummary.jt005Now}"></th>
|
||||
<th th:text="${statusSummary.jt005Now}" th:classappend="${(statusSummary.jt005Now-statusSummary.jt005Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt004Max}"></th>
|
||||
<th th:text="${statusSummary.jt004Now}"></th>
|
||||
<th th:text="${statusSummary.jt004Now}" th:classappend="${(statusSummary.jt004Now-statusSummary.jt004Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt003Max}"></th>
|
||||
<th th:text="${statusSummary.jt003Now}"></th>
|
||||
<th th:text="${statusSummary.jt003Now}" th:classappend="${(statusSummary.jt003Now-statusSummary.jt003Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt002Max}"></th>
|
||||
<th th:text="${statusSummary.jt002Now}"></th>
|
||||
<th th:text="${statusSummary.jt002Now}" th:classappend="${(statusSummary.jt002Now-statusSummary.jt002Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
<th th:text="${statusSummary.jt001Max}"></th>
|
||||
<th th:text="${statusSummary.jt001Now}"></th>
|
||||
<th th:text="${statusSummary.jt001Now}" th:classappend="${(statusSummary.jt001Now-statusSummary.jt001Max)>=0?'text-primary':'text-danger'}"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="table-group-divider">
|
||||
|
|
@ -90,19 +90,19 @@
|
|||
<td th:text="${status.sumNow}"></td>
|
||||
<td th:text="${status.sumNow-status.sumMax}" th:classappend="${(status.sumNow-status.sumMax)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt007Max}"></td>
|
||||
<td th:text="${status.jt007Now}"></td>
|
||||
<td th:text="${status.jt007Now}" th:classappend="${(status.jt007Now-status.jt007Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt006Max}"></td>
|
||||
<td th:text="${status.jt006Now}"></td>
|
||||
<td th:text="${status.jt006Now}" th:classappend="${(status.jt006Now-status.jt006Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt005Max}"></td>
|
||||
<td th:text="${status.jt005Now}"></td>
|
||||
<td th:text="${status.jt005Now}" th:classappend="${(status.jt005Now-status.jt005Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt004Max}"></td>
|
||||
<td th:text="${status.jt004Now}"></td>
|
||||
<td th:text="${status.jt004Now}" th:classappend="${(status.jt004Now-status.jt004Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt003Max}"></td>
|
||||
<td th:text="${status.jt003Now}"></td>
|
||||
<td th:text="${status.jt003Now}" th:classappend="${(status.jt003Now-status.jt003Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt002Max}"></td>
|
||||
<td th:text="${status.jt002Now}"></td>
|
||||
<td th:text="${status.jt002Now}" th:classappend="${(status.jt002Now-status.jt002Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${status.jt001Max}"></td>
|
||||
<td th:text="${status.jt001Now}"></td>
|
||||
<td th:text="${status.jt001Now}" th:classappend="${(status.jt001Now-status.jt001Max)>=0?'text-primary':'text-danger'}"></td>
|
||||
<td th:text="${#temporals.format(status.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
|
|
|||
Loading…
Reference in New Issue