Browse Source

비행이력(상세)페이징 작업

Test
qkr7828(박재우) 2 years ago
parent
commit
4c049f38e1
  1. 8
      src/main/java/com/palnet/biz/api/anls/hstry/controller/AnlsHstryController.java
  2. 39
      src/main/java/com/palnet/biz/api/anls/hstry/service/AnlsHstryService.java
  3. 89
      src/main/java/com/palnet/biz/jpa/repository/ctr/CtrCntrlQueryRepository.java

8
src/main/java/com/palnet/biz/api/anls/hstry/controller/AnlsHstryController.java

@ -92,10 +92,10 @@ public class AnlsHstryController {
@ApiOperation(value = "비행 이력 데이터")
@Tag(name = "비행 이력 현황", description = "비행 이력 현황 관련 API")
@ApiImplicitParam(name = "id",value = "관제ID", dataTypeClass = String.class)
public ResponseEntity<? extends BasicResponse> log(@PathVariable String id) {
List<AnlsHstryDetailModel> result = null;
public ResponseEntity<? extends BasicResponse> log(AnlsHstryRqModel rq) {
ComnPagingRs<AnlsHstryDetailModel> result = null;
try {
result = service.hstryList(id);
result = service.hstryList(rq);
} catch (Exception e) {
log.error("IGNORE : {}", e);
@ -103,7 +103,7 @@ public class AnlsHstryController {
.body(new ErrorResponse("Server Error", "-1"));
}
return ResponseEntity.ok().body(new SuccessResponse<List>(result));
return ResponseEntity.ok().body(new SuccessResponse<>(result));
}

39
src/main/java/com/palnet/biz/api/anls/hstry/service/AnlsHstryService.java

@ -6,6 +6,7 @@ import java.util.Date;
import java.util.List;
import java.util.Optional;
import com.palnet.biz.api.comn.model.ComnPagingModel;
import com.palnet.biz.api.comn.model.ComnPagingRs;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -67,23 +68,28 @@ public class AnlsHstryService {
//비행이력현황 list
public ComnPagingRs<AnlsHstryRsModel> list(AnlsHstryGroupModel rq){
Integer cstmrSno = jwtTokenUtil.getCstmrSnoByToken();
List<JwtGroupModel> groupAuth = jwtTokenUtil.getGroupAuthByToken();
String appAuth = jwtTokenUtil.getUserAuthByToken();
ComnPagingRs<AnlsHstryRsModel> response = new ComnPagingRs<>();
Pageable pageable = PageRequest.of(rq.getPage()-1, rq.getRecord());
if("USER".equals(appAuth) || "ROLE_USER".equals(appAuth)) {
}
PageImpl<AnlsHstryRsModel> result = query.listCntrlBasRs(rq, pageable);
long total = query.countCntrlBasRs(rq, cstmrSno);
long totalPage = total % rq.getRecord() > 0 ? (total/rq.getRecord()) + 1 : total/rq.getRecord();
response.setItems(result.getContent());
response.setTotal(total);
response.setPage(rq.getPage());
response.setTotalPage(totalPage);
response.setPage(rq.getPage());
return response;
}
@ -107,10 +113,23 @@ public class AnlsHstryService {
}
public List<AnlsHstryDetailModel> hstryList(String cntrlId) {
public ComnPagingRs<AnlsHstryDetailModel> hstryList(AnlsHstryRqModel rq) {
ComnPagingRs<AnlsHstryDetailModel> response = new ComnPagingRs<>();
Pageable pageable = PageRequest.of(rq.getPage()-1, rq.getRecord());
List<AnlsHstryDetailModel> resultList = query.listCntrlHstry(cntrlId);
PageImpl<AnlsHstryDetailModel> result = query.listCntrlHstryPage(rq.getCntrlId(), pageable);
return resultList;
long total = query.listCntrlHstryCount(rq.getCntrlId());
long totalPage = total % rq.getRecord() > 0 ? (total/rq.getRecord()) + 1 : total/rq.getRecord();
response.setItems(result.getContent());
response.setTotal(total);
response.setPage(rq.getPage());
response.setTotalPage(totalPage);
return response;
}
}

89
src/main/java/com/palnet/biz/jpa/repository/ctr/CtrCntrlQueryRepository.java

@ -564,7 +564,7 @@ public List<AnlsHstryModel> cntrlBasNormalList(AnlsHstryRqModel rq, String idntf
* @param id
* @return
*/
public List<AnlsHstryDetailModel> listCntrlHstry(String id){
public PageImpl<AnlsHstryDetailModel> listCntrlHstryPage(String id, Pageable pageable){
QCtrCntrlBas qCntrlBasEntity = QCtrCntrlBas.ctrCntrlBas;
QCtrCntrlHstry qCtrCntrHstry = QCtrCntrlHstry.ctrCntrlHstry;
@ -572,7 +572,7 @@ public List<AnlsHstryModel> cntrlBasNormalList(AnlsHstryRqModel rq, String idntf
BooleanBuilder builder = new BooleanBuilder();
builder.and(qCtrCntrHstry.cntrlId.eq(id));
List<AnlsHstryDetailModel> resultList = query.select(Projections.bean(AnlsHstryDetailModel.class ,
List<AnlsHstryDetailModel> result = query.select(Projections.bean(AnlsHstryDetailModel.class ,
qCtrCntrHstry.cntrlId ,
qCtrCntrHstry.hstrySno ,
qCtrCntrHstry.trmnlId ,
@ -598,12 +598,91 @@ public List<AnlsHstryModel> cntrlBasNormalList(AnlsHstryRqModel rq, String idntf
.on(qCntrlBasEntity.cntrlId.eq(qCtrCntrHstry.cntrlId))
.where(builder)
.orderBy(qCtrCntrHstry.srvrRcvDt.asc())
.offset(pageable.getOffset())
.limit(pageable.getPageSize())
.fetch();
return resultList;
return new PageImpl<>(result, pageable, result.size());
}
public List<AnlsHstryDetailModel> listCntrlHstry(String id){
QCtrCntrlBas qCntrlBasEntity = QCtrCntrlBas.ctrCntrlBas;
QCtrCntrlHstry qCtrCntrHstry = QCtrCntrlHstry.ctrCntrlHstry;
BooleanBuilder builder = new BooleanBuilder();
builder.and(qCtrCntrHstry.cntrlId.eq(id));
List<AnlsHstryDetailModel> result = query.select(Projections.bean(AnlsHstryDetailModel.class ,
qCtrCntrHstry.cntrlId ,
qCtrCntrHstry.hstrySno ,
qCtrCntrHstry.trmnlId ,
qCtrCntrHstry.mssgTypeCd ,
qCtrCntrHstry.statusCd ,
qCtrCntrHstry.lat,
qCtrCntrHstry.lon ,
qCtrCntrHstry.speed ,
qCtrCntrHstry.speedType ,
qCtrCntrHstry.heading ,
qCtrCntrHstry.elev ,
qCtrCntrHstry.elevType ,
qCtrCntrHstry.mvDstnc ,
qCtrCntrHstry.mvDstncType ,
qCtrCntrHstry.bttrLvl,
qCtrCntrHstry.bttrVltg,
qCtrCntrHstry.trmnlRcvDt ,
qCtrCntrHstry.srvrRcvDt,
qCntrlBasEntity.idntfNum
))
.from(qCntrlBasEntity)
.leftJoin(qCtrCntrHstry)
.on(qCntrlBasEntity.cntrlId.eq(qCtrCntrHstry.cntrlId))
.where(builder)
.orderBy(qCtrCntrHstry.srvrRcvDt.asc())
.fetch();
return result;
}
public long listCntrlHstryCount(String id){
QCtrCntrlBas qCntrlBasEntity = QCtrCntrlBas.ctrCntrlBas;
QCtrCntrlHstry qCtrCntrHstry = QCtrCntrlHstry.ctrCntrlHstry;
BooleanBuilder builder = new BooleanBuilder();
builder.and(qCtrCntrHstry.cntrlId.eq(id));
List<AnlsHstryDetailModel> resultList = query.select(Projections.bean(AnlsHstryDetailModel.class ,
qCtrCntrHstry.cntrlId ,
qCtrCntrHstry.hstrySno ,
qCtrCntrHstry.trmnlId ,
qCtrCntrHstry.mssgTypeCd ,
qCtrCntrHstry.statusCd ,
qCtrCntrHstry.lat,
qCtrCntrHstry.lon ,
qCtrCntrHstry.speed ,
qCtrCntrHstry.speedType ,
qCtrCntrHstry.heading ,
qCtrCntrHstry.elev ,
qCtrCntrHstry.elevType ,
qCtrCntrHstry.mvDstnc ,
qCtrCntrHstry.mvDstncType ,
qCtrCntrHstry.bttrLvl,
qCtrCntrHstry.bttrVltg,
qCtrCntrHstry.trmnlRcvDt ,
qCtrCntrHstry.srvrRcvDt,
qCntrlBasEntity.idntfNum
))
.from(qCntrlBasEntity)
.leftJoin(qCtrCntrHstry)
.on(qCntrlBasEntity.cntrlId.eq(qCtrCntrHstry.cntrlId))
.where(builder)
.orderBy(qCtrCntrHstry.srvrRcvDt.asc())
.fetch();
long cnt = 0;
for(AnlsHstryDetailModel list : resultList) {
cnt ++;
}
return cnt;
}
public List<CtrCntrlHstryArea> listCntrlHstryArea() {
QCtrCntrlHstryArea qCtrCntrHstryArea = QCtrCntrlHstryArea.ctrCntrlHstryArea;

Loading…
Cancel
Save