Browse Source

main - 그룹정보 내가 생성한 그룹 최신순으로 정렬 및 3개씩 출력

Test
이학준 2 years ago
parent
commit
f1e94b6998
  1. 17
      src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java
  2. 28
      src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupQueryRepository.java

17
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 {
@ -37,6 +36,8 @@ public class MainDashService {
private CtrCntrlQueryRepository query;
/**
* 일별 비행횟수 통계
* @param rq
@ -67,21 +68,15 @@ public class MainDashService {
*/
public List<Map> mainDashGroupList(int cstmrSno){
List<BasGroupJoinModel> queryList = ptyGroupQueryRepository.joinList(cstmrSno);
List<BasGroupModel> queryList = ptyGroupQueryRepository.groupTop3(cstmrSno);
List<Map> resultList = new ArrayList<Map>();
int cnt = 0;
for(BasGroupJoinModel model : queryList) {
if(cnt == 3) {
break;
}
for(BasGroupModel model : queryList) {
Map<String , Object> data = new HashMap<String , Object>();
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());

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

@ -480,4 +480,32 @@ public class PtyGroupQueryRepository{
}
return result;
}
public List<BasGroupModel> 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<BasGroupModel> 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;
}
}

Loading…
Cancel
Save