sap 유저 검색 필드명 변경

This commit is contained in:
2025-06-05 09:44:27 +09:00
parent d397065226
commit 327a62f1d7
3 changed files with 79 additions and 5 deletions

View File

@@ -0,0 +1,72 @@
package com.kospo.svcm.dto.res;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.kospo.svcm.model.User;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Builder
@JsonIgnoreProperties(ignoreUnknown = true)
@Schema(name = "UserSelectLIstResponse", description = "직원 선택")
public class UserSapSelectListResponse {
String label;
UserSelect value;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Builder
@JsonIgnoreProperties(ignoreUnknown = true)
@Schema(name = "UserSelect", description = "직원 정보")
public static class UserSelect{
@Schema(name = "bname", description = "사번")
String bname;
@Schema(name = "btext", description = "이름")
private String btext;
@Schema(name = "deptCd", description = "무서코드")
private String deptCd;
@Schema(name = "deptNm", description = "부서명")
private String deptNm;
@Schema(name = "ptsnNm", description = "직위")
private String ptsnNm;
@Schema(name = "gradeCd", description = "직급코드")
private String gradeCd;
@Schema(name = "gradeNm", description = "직급명")
private String gradeNm;
@Schema(name = "ofcePhn", description = "내선벟노")
private String ofcePhn;
@Schema(name = "mblPhn", description = "이동번호")
private String mblPhn;
@Schema(name = "state", description = "상태")
private String state;
@Schema(name = "abscd", description = "근태상태코드")
private String abscd;
@Schema(name = "abscdNm", description = "근태상태")
private String abscdNm;
@Schema(name = "attendStaYmd", description = "근태시작일")
private String attendStaYmd;
@Schema(name = "attendEndYmd", description = "근태종료일")
private String attendEndYmd;
public static UserSelect from(User user) {
return UserSelect.builder()
.bname(user.getSabun())
.btext(user.getName())
.deptCd(user.getDeptCd())
.deptNm("")
.ptsnNm(user.getPtsnNm())
.gradeCd(user.getGradeCd())
.gradeNm(user.getGradeNm())
.abscd(user.getAttendCd())
.abscdNm(user.getAttendNm())
.attendStaYmd(user.getAttendStaYmd())
.attendEndYmd(user.getAttendEndYmd())
.build();
}
}
}

View File

@@ -1,5 +1,6 @@
package com.kospo.svcm.service;
import com.kospo.svcm.dto.res.UserSapSelectListResponse;
import com.kospo.svcm.dto.res.UserSelectListResponse;
import com.kospo.svcm.model.User;
import org.springframework.security.core.userdetails.UserDetails;
@@ -14,5 +15,5 @@ public interface UserService {
List<UserSelectListResponse> findByNameContaining(String name);
List<UserSelectListResponse> findSapUserByNameContaining(String name);
List<UserSapSelectListResponse> findSapUserByNameContaining(String name);
}

View File

@@ -1,5 +1,6 @@
package com.kospo.svcm.service.impl;
import com.kospo.svcm.dto.res.UserSapSelectListResponse;
import com.kospo.svcm.dto.res.UserSelectListResponse;
import com.kospo.svcm.model.Dept;
import com.kospo.svcm.model.User;
@@ -51,16 +52,16 @@ public class UserServiceImpl implements UserService {
}
@Override
public List<UserSelectListResponse> findSapUserByNameContaining(String name) {
public List<UserSapSelectListResponse> findSapUserByNameContaining(String name) {
if(name.equals("") || name == null) {
return new ArrayList<UserSelectListResponse>();
return new ArrayList<UserSapSelectListResponse>();
} else {
List<Dept> deptList = deptRepository.findAll();
return userRepository.findSapByNameContainingOrSabunContaining(name).stream().map(u -> {
Dept dept = deptList.stream().filter(d -> d.getDeptCd().equals(u.getDeptCd())).findFirst().orElse(null);
UserSelectListResponse.UserSelect userSelect = UserSelectListResponse.UserSelect.from(u);
UserSapSelectListResponse.UserSelect userSelect = UserSapSelectListResponse.UserSelect.from(u);
userSelect.setDeptNm(dept.getDeptNm());
return UserSelectListResponse.builder()
return UserSapSelectListResponse.builder()
.label(dept.getDeptNm() + " - " + u.getName() + " (" + u.getSabun() + ")")
.value(userSelect)
.build();