회원정보 목록 조회 수정

This commit is contained in:
2025-12-15 12:12:52 +09:00
parent bad02af1c1
commit bb1b7a4fa9
2 changed files with 62 additions and 58 deletions

View File

@@ -31,22 +31,27 @@ public class MembersDto {
private String employeeNo; private String employeeNo;
private String status; private String status;
private String statusName; private String statusName;
@JsonFormatDttm private ZonedDateTime createdDttm; @JsonFormatDttm
@JsonFormatDttm private ZonedDateTime updatedDttm; private ZonedDateTime createdDttm;
@JsonFormatDttm private ZonedDateTime firstLoginDttm; @JsonFormatDttm
@JsonFormatDttm private ZonedDateTime lastLoginDttm; private ZonedDateTime firstLoginDttm;
@JsonFormatDttm
private ZonedDateTime lastLoginDttm;
@JsonFormatDttm
private ZonedDateTime statusChgDttm;
public Basic( public Basic(
Long id, Long id,
UUID uuid, UUID uuid,
String userRole, String userRole,
String name, String name,
String employeeNo, String employeeNo,
String status, String status,
ZonedDateTime createdDttm, ZonedDateTime createdDttm,
ZonedDateTime updatedDttm, ZonedDateTime firstLoginDttm,
ZonedDateTime firstLoginDttm, ZonedDateTime lastLoginDttm,
ZonedDateTime lastLoginDttm) { ZonedDateTime statusChgDttm
) {
this.id = id; this.id = id;
this.uuid = uuid; this.uuid = uuid;
this.userRole = userRole; this.userRole = userRole;
@@ -56,9 +61,9 @@ public class MembersDto {
this.status = status; this.status = status;
this.statusName = getStatusName(status); this.statusName = getStatusName(status);
this.createdDttm = createdDttm; this.createdDttm = createdDttm;
this.updatedDttm = updatedDttm;
this.firstLoginDttm = firstLoginDttm; this.firstLoginDttm = firstLoginDttm;
this.lastLoginDttm = lastLoginDttm; this.lastLoginDttm = lastLoginDttm;
this.statusChgDttm = statusChgDttm;
} }
private String getUserRoleName(String roleId) { private String getUserRoleName(String roleId) {

View File

@@ -33,11 +33,11 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
@Override @Override
public boolean existsByUserId(String userId) { public boolean existsByUserId(String userId) {
return queryFactory return queryFactory
.selectOne() .selectOne()
.from(memberEntity) .from(memberEntity)
.where(memberEntity.userId.eq(userId)) .where(memberEntity.userId.eq(userId))
.fetchFirst() .fetchFirst()
!= null; != null;
} }
/** /**
@@ -49,11 +49,11 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
@Override @Override
public boolean existsByEmployeeNo(String employeeNo) { public boolean existsByEmployeeNo(String employeeNo) {
return queryFactory return queryFactory
.selectOne() .selectOne()
.from(memberEntity) .from(memberEntity)
.where(memberEntity.employeeNo.eq(employeeNo)) .where(memberEntity.employeeNo.eq(employeeNo))
.fetchFirst() .fetchFirst()
!= null; != null;
} }
/** /**
@@ -65,7 +65,7 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
@Override @Override
public Optional<MemberEntity> findByUserId(String userId) { public Optional<MemberEntity> findByUserId(String userId) {
return Optional.ofNullable( return Optional.ofNullable(
queryFactory.selectFrom(memberEntity).where(memberEntity.userId.eq(userId)).fetchOne()); queryFactory.selectFrom(memberEntity).where(memberEntity.userId.eq(userId)).fetchOne());
} }
/** /**
@@ -77,10 +77,10 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
@Override @Override
public Optional<MemberEntity> findByEmployeeNo(String employeeNo) { public Optional<MemberEntity> findByEmployeeNo(String employeeNo) {
return Optional.ofNullable( return Optional.ofNullable(
queryFactory queryFactory
.selectFrom(memberEntity) .selectFrom(memberEntity)
.where(memberEntity.employeeNo.eq(employeeNo)) .where(memberEntity.employeeNo.eq(employeeNo))
.fetchOne()); .fetchOne());
} }
/** /**
@@ -99,11 +99,11 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
String contains = "%" + searchReq.getKeyword() + "%"; String contains = "%" + searchReq.getKeyword() + "%";
builder.and( builder.and(
memberEntity memberEntity
.name .name
.likeIgnoreCase(contains) .likeIgnoreCase(contains)
.or(memberEntity.userId.likeIgnoreCase(contains)) .or(memberEntity.userId.likeIgnoreCase(contains))
.or(memberEntity.employeeNo.likeIgnoreCase(contains))); .or(memberEntity.employeeNo.likeIgnoreCase(contains)));
} }
// 권한 // 권한
@@ -112,28 +112,27 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
} }
List<MembersDto.Basic> content = List<MembersDto.Basic> content =
queryFactory queryFactory
.select( .select(
Projections.constructor( Projections.constructor(
MembersDto.Basic.class, MembersDto.Basic.class,
memberEntity.id, memberEntity.id,
memberEntity.uuid, memberEntity.uuid,
memberEntity.userRole, memberEntity.userRole,
memberEntity.name, memberEntity.name,
memberEntity.userId, memberEntity.employeeNo,
memberEntity.employeeNo, memberEntity.status,
memberEntity.tempPassword, memberEntity.createdDttm,
memberEntity.status, memberEntity.firstLoginDttm,
memberEntity.createdDttm, memberEntity.lastLoginDttm,
memberEntity.updatedDttm, memberEntity.statusChgDttm
memberEntity.firstLoginDttm, ))
memberEntity.lastLoginDttm)) .from(memberEntity)
.from(memberEntity) .where(builder)
.where(builder) .offset(pageable.getOffset())
.offset(pageable.getOffset()) .limit(pageable.getPageSize())
.limit(pageable.getPageSize()) .orderBy(memberEntity.createdDttm.desc())
.orderBy(memberEntity.createdDttm.desc()) .fetch();
.fetch();
long total = queryFactory.select(memberEntity).from(memberEntity).fetchCount(); long total = queryFactory.select(memberEntity).from(memberEntity).fetchCount();
@@ -149,6 +148,6 @@ public class MembersRepositoryImpl implements MembersRepositoryCustom {
@Override @Override
public Optional<MemberEntity> findByUUID(UUID uuid) { public Optional<MemberEntity> findByUUID(UUID uuid) {
return Optional.ofNullable( return Optional.ofNullable(
queryFactory.selectFrom(memberEntity).where(memberEntity.uuid.eq(uuid)).fetchOne()); queryFactory.selectFrom(memberEntity).where(memberEntity.uuid.eq(uuid)).fetchOne());
} }
} }