Browse Source

groupList 조건변경(임시)

Test
qkr7828(박재우) 2 years ago
parent
commit
0cbd349fde
  1. 71
      src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java

71
src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java

@ -111,46 +111,61 @@ public class PtyGroupQueryRepository{
*/
public List<BasGroupJoinModel> groupList(int cstmrSno){
QPtyGroupBas bas = QPtyGroupBas.ptyGroupBas;
QPtyCstmrGroup dtl = QPtyCstmrGroup.ptyCstmrGroup;
QPtyCstmrGroup group = QPtyCstmrGroup.ptyCstmrGroup;
List<BasGroupJoinModel> result = new ArrayList<>();
List<BasGroupJoinModel> resultList = new ArrayList<>();
String appAuth = jwtTokenUtil.getUserAuthByToken();
List<JwtGroupModel> groupAuth = jwtTokenUtil.getGroupAuthByToken();
BooleanBuilder builder = new BooleanBuilder();
builder.and(bas.useYn.eq("Y"));
if(appAuth.equals("USER") || appAuth.equals("ROLE_USER")) {
builder.and(dtl.joinYn.eq("Y"));
builder.and(dtl.cstmrSno.eq(cstmrSno));
}
List<BasGroupJoinModel> result =
builder.and(group.joinYn.eq("Y"));
builder.and(group.cstmrSno.eq(cstmrSno));
result =
query.select(Projections.bean(BasGroupJoinModel.class ,
bas.groupId,
bas.groupNm,
bas.groupTypeCd,
dtl.cstmrSno,
dtl.cstmrGroupSno,
bas.updateDt,
bas.createDt,
dtl.aprvlYn,
dtl.joinDt,
dtl.aprvlDt,
dtl.groupAuthCd
group.groupAuthCd
)).from(bas)
.leftJoin(dtl)
.on(bas.groupId.eq(dtl.groupId))
.leftJoin(group)
.on(bas.groupId.eq(group.groupId))
.where(builder)
.orderBy(dtl.joinDt.desc())
.orderBy(group.joinDt.desc())
.orderBy(bas.createDt.desc())
.groupBy(bas.groupId)
.fetch();
for(BasGroupJoinModel list : result) {
if(list.getCstmrSno() != null) {
if(!list.getCstmrSno().equals(cstmrSno)) {
list.setGroupAuthCd("NORMAL");
}
}
}
.fetch();
if(appAuth.equals("USER") || appAuth.equals("ROLE_USER")) {
return result;
}else {
resultList =
query.select(Projections.bean(BasGroupJoinModel.class ,
bas.groupId,
bas.groupNm,
group.groupAuthCd
)).from(bas)
.leftJoin(group)
.on(bas.groupId.eq(group.groupId))
.where(bas.useYn.eq("Y"))
.orderBy(group.joinDt.desc())
.orderBy(bas.createDt.desc())
.groupBy(bas.groupId)
.fetch();
for(BasGroupJoinModel lists : resultList) {
int cnt = 0;
for(JwtGroupModel list : groupAuth) {
if(list.getGroupId().equals(lists.getGroupId())) {
cnt++;
}
}
if(cnt==0) {
lists.setGroupAuthCd("");
result.add(lists);
}
}
}
return result;
}

Loading…
Cancel
Save