diff --git a/src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java b/src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java index e8bc430..9783c4c 100644 --- a/src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java +++ b/src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java @@ -6,18 +6,17 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import com.palnet.biz.api.bas.group.model.BasGroupModel; +import com.palnet.biz.jpa.repository.pty.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.palnet.biz.api.bas.group.model.BasGroupJoinModel; import com.palnet.biz.api.main.dash.model.MainDashListModel; import com.palnet.biz.api.main.dash.model.MainDashStcsModel; import com.palnet.biz.jpa.repository.ctr.CtrCntrlBasRepository; import com.palnet.biz.jpa.repository.ctr.CtrCntrlQueryRepository; -import com.palnet.biz.jpa.repository.pty.PtyDronQueryRepository; -import com.palnet.biz.jpa.repository.pty.PtyGroupQueryRepository; @Service public class MainDashService { @@ -35,6 +34,8 @@ public class MainDashService { @Autowired private CtrCntrlQueryRepository query; + + /** @@ -66,22 +67,16 @@ public class MainDashService { * TOP3 가입 그룹 리스트 표출 */ public List mainDashGroupList(int cstmrSno){ - - List queryList = ptyGroupQueryRepository.joinList(cstmrSno); + + List queryList = ptyGroupQueryRepository.groupTop3(cstmrSno); List resultList = new ArrayList(); - - int cnt = 0; - for(BasGroupJoinModel model : queryList) { - - if(cnt == 3) { - break; - } - + + for(BasGroupModel model : queryList) { + Map data = new HashMap(); data.put("groupId", model.getGroupId()); data.put("groupNm", model.getGroupNm()); data.put("createDt", model.getCreateDt()); - data.put("joinDt" , model.getJoinDt()); resultList.add(data); } resultList = resultList.stream().sorted((o2, o1) -> o1.get("createDt").toString().compareTo(o2.get("createDt").toString())).collect(Collectors.toList()); diff --git a/src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java b/src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java index 240ce84..3530d87 100644 --- a/src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java +++ b/src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java @@ -480,4 +480,32 @@ public class PtyGroupQueryRepository{ } return result; } + + public List groupTop3(int cstmrSno){ + + QPtyGroupBas bas = QPtyGroupBas.ptyGroupBas; + QPtyCstmrGroup dtl = QPtyCstmrGroup.ptyCstmrGroup; + + BooleanBuilder builder = new BooleanBuilder(); + builder.and(bas.useYn.eq("Y")); + builder.and(dtl.cstmrSno.eq(cstmrSno)); + builder.and(dtl.groupAuthCd.eq("MASTER")); + + List result = + query.select(Projections.bean(BasGroupModel.class , + bas.groupId, + bas.groupNm, + bas.groupTypeCd, + bas.createDt + )).from(bas) + .leftJoin(dtl) + .on(bas.groupId.eq(dtl.groupId)) + .where(builder) + .limit(3) + .orderBy(bas.createDt.desc()) + .fetch(); + + return result; + + } }