From b94fffb01c94100b34e2908b4fe79c1c554b0912 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期四, 02 一月 2025 13:55:03 +0800 Subject: [PATCH] 代码 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeclareNoticeController.java | 96 ++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 80 insertions(+), 16 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeclareNoticeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeclareNoticeController.java index 93278a8..0a4c2dc 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeclareNoticeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeclareNoticeController.java @@ -18,8 +18,10 @@ import javax.annotation.Resource; import java.lang.reflect.Array; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -128,24 +130,83 @@ @ApiOperation(value = "查询",tags = {"后台-申报通知","web-职称申报"}) @PostMapping(value = "/list") public R<Page<TDeclareNotice>> list(@RequestBody DeclareNoticeQuery informationQuery) { - Page<TDeclareNotice> page = tDeclareNoticeService.lambdaQuery() - .like(!StringUtils.isEmpty(informationQuery.getDeclareNoticeName()), TDeclareNotice::getDeclareNoticeName, informationQuery.getDeclareNoticeName()) - .eq(informationQuery.getRegionId() != null, TDeclareNotice::getRegionId, informationQuery.getRegionId()) - .eq(informationQuery.getTechnicalId() != null, TDeclareNotice::getTechnicalId, informationQuery.getTechnicalId()) - .eq(informationQuery.getMajorId() != null, TDeclareNotice::getMajorId, informationQuery.getMajorId()) - .eq(informationQuery.getLevel() != null, TDeclareNotice::getLevel, informationQuery.getLevel()) - .eq(informationQuery.getIsOnline()!=null, TDeclareNotice::getIsOnline, informationQuery.getIsOnline()) - .between(informationQuery.getDeclareStartTime1()!=null,TDeclareNotice::getDeclareStartTime,informationQuery.getDeclareStartTime1(),informationQuery.getDeclareStartTime2()) - .between(informationQuery.getDeclareEndTime1()!=null,TDeclareNotice::getDeclareEndTime,informationQuery.getDeclareEndTime1(),informationQuery.getDeclareEndTime2()) - .orderByDesc(TDeclareNotice::getNoticeSort) - .page(Page.of(informationQuery.getPageNum(), informationQuery.getPageSize())); + Page<TDeclareNotice> page; + if(StringUtils.isEmpty(informationQuery.getProvinceName())){ + if(informationQuery.getSortType()==1){ + page = tDeclareNoticeService.lambdaQuery() + .like(!StringUtils.isEmpty(informationQuery.getDeclareNoticeName()), TDeclareNotice::getDeclareNoticeName, informationQuery.getDeclareNoticeName()) + .eq(informationQuery.getRegionId() != null, TDeclareNotice::getRegionId, informationQuery.getRegionId()) + .eq(informationQuery.getTechnicalId() != null, TDeclareNotice::getTechnicalId, informationQuery.getTechnicalId()) + .eq(informationQuery.getMajorId() != null, TDeclareNotice::getMajorId, informationQuery.getMajorId()) + .eq(informationQuery.getLevel() != null, TDeclareNotice::getLevel, informationQuery.getLevel()) + .eq(informationQuery.getIsOnline()!=null, TDeclareNotice::getIsOnline, informationQuery.getIsOnline()) + .between(informationQuery.getDeclareStartTime1()!=null,TDeclareNotice::getDeclareStartTime,informationQuery.getDeclareStartTime1(),informationQuery.getDeclareStartTime2()) + .between(informationQuery.getDeclareEndTime1()!=null,TDeclareNotice::getDeclareEndTime,informationQuery.getDeclareEndTime1(),informationQuery.getDeclareEndTime2()) + .orderByDesc(TDeclareNotice::getCreateTime) + .page(Page.of(informationQuery.getPageNum(), informationQuery.getPageSize())); + }else { + page = tDeclareNoticeService.lambdaQuery() + .like(!StringUtils.isEmpty(informationQuery.getDeclareNoticeName()), TDeclareNotice::getDeclareNoticeName, informationQuery.getDeclareNoticeName()) + .eq(informationQuery.getRegionId() != null, TDeclareNotice::getRegionId, informationQuery.getRegionId()) + .eq(informationQuery.getTechnicalId() != null, TDeclareNotice::getTechnicalId, informationQuery.getTechnicalId()) + .eq(informationQuery.getMajorId() != null, TDeclareNotice::getMajorId, informationQuery.getMajorId()) + .eq(informationQuery.getLevel() != null, TDeclareNotice::getLevel, informationQuery.getLevel()) + .eq(informationQuery.getIsOnline()!=null, TDeclareNotice::getIsOnline, informationQuery.getIsOnline()) + .between(informationQuery.getDeclareStartTime1()!=null,TDeclareNotice::getDeclareStartTime,informationQuery.getDeclareStartTime1(),informationQuery.getDeclareStartTime2()) + .between(informationQuery.getDeclareEndTime1()!=null,TDeclareNotice::getDeclareEndTime,informationQuery.getDeclareEndTime1(),informationQuery.getDeclareEndTime2()) + .orderByDesc(TDeclareNotice::getNoticeSort) + .page(Page.of(informationQuery.getPageNum(), informationQuery.getPageSize())); + } + }else { + List<TRegion> list; + // 查询省份下的市 + if(informationQuery.getProvinceName().equals("直辖市")){ + List<String> cityList = new ArrayList<>(); + cityList.add("北京市"); + cityList.add("天津市"); + cityList.add("重庆市"); + cityList.add("上海市"); + list = regionService.lambdaQuery().in(TRegion::getProvinceName, cityList).list(); + }else { + list = regionService.lambdaQuery().eq(TRegion::getProvinceName, informationQuery.getProvinceName()).list(); + } + List<Integer> ids = list.stream().map(TRegion::getId).collect(Collectors.toList()); + if(informationQuery.getSortType()==1){ + page = tDeclareNoticeService.lambdaQuery() + .like(!StringUtils.isEmpty(informationQuery.getDeclareNoticeName()), TDeclareNotice::getDeclareNoticeName, informationQuery.getDeclareNoticeName()) + .in( TDeclareNotice::getRegionId, ids) + .eq(informationQuery.getTechnicalId() != null, TDeclareNotice::getTechnicalId, informationQuery.getTechnicalId()) + .eq(informationQuery.getMajorId() != null, TDeclareNotice::getMajorId, informationQuery.getMajorId()) + .eq(informationQuery.getLevel() != null, TDeclareNotice::getLevel, informationQuery.getLevel()) + .eq(informationQuery.getIsOnline()!=null, TDeclareNotice::getIsOnline, informationQuery.getIsOnline()) + .between(informationQuery.getDeclareStartTime1()!=null,TDeclareNotice::getDeclareStartTime,informationQuery.getDeclareStartTime1(),informationQuery.getDeclareStartTime2()) + .between(informationQuery.getDeclareEndTime1()!=null,TDeclareNotice::getDeclareEndTime,informationQuery.getDeclareEndTime1(),informationQuery.getDeclareEndTime2()) + .orderByDesc(TDeclareNotice::getCreateTime) + .page(Page.of(informationQuery.getPageNum(), informationQuery.getPageSize())); + }else { + page = tDeclareNoticeService.lambdaQuery() + .like(!StringUtils.isEmpty(informationQuery.getDeclareNoticeName()), TDeclareNotice::getDeclareNoticeName, informationQuery.getDeclareNoticeName()) + .in( TDeclareNotice::getRegionId, ids) + .eq(informationQuery.getTechnicalId() != null, TDeclareNotice::getTechnicalId, informationQuery.getTechnicalId()) + .eq(informationQuery.getMajorId() != null, TDeclareNotice::getMajorId, informationQuery.getMajorId()) + .eq(informationQuery.getLevel() != null, TDeclareNotice::getLevel, informationQuery.getLevel()) + .eq(informationQuery.getIsOnline()!=null, TDeclareNotice::getIsOnline, informationQuery.getIsOnline()) + .between(informationQuery.getDeclareStartTime1()!=null,TDeclareNotice::getDeclareStartTime,informationQuery.getDeclareStartTime1(),informationQuery.getDeclareStartTime2()) + .between(informationQuery.getDeclareEndTime1()!=null,TDeclareNotice::getDeclareEndTime,informationQuery.getDeclareEndTime1(),informationQuery.getDeclareEndTime2()) + .orderByDesc(TDeclareNotice::getNoticeSort) + .page(Page.of(informationQuery.getPageNum(), informationQuery.getPageSize())); + } + } + List<TRegion> regions = regionService.lambdaQuery().list(); + List<TTechnicalTitle> tTechnicalTitles = tTechnicalTitleService.lambdaQuery().list(); + List<TTitleMajor> tTitleMajors = majorService.lambdaQuery().list(); for (TDeclareNotice record : page.getRecords()) { - TRegion byId = regionService.getById(record.getRegionId()); - record.setRegionName(byId.getProvinceName()+"-"+byId.getName()); - TTechnicalTitle byId1 = tTechnicalTitleService.getById(record.getTechnicalId() ); - TTitleMajor byId2 = majorService.getById(record.getMajorId()); - record.setTechnicalName(byId1.getTitileName()+"-"+byId2.getMajorName()); + TRegion region = regions.stream().filter(e -> e.getId().equals(record.getRegionId())).findFirst().orElse(null); + TTechnicalTitle tTechnicalTitle = tTechnicalTitles.stream().filter(e -> e.getId().equals(record.getTechnicalId())).findFirst().orElse(null); + TTitleMajor tTitleMajor = tTitleMajors.stream().filter(e -> e.getId().equals(record.getMajorId())).findFirst().orElse(null); + record.setRegionName(region.getProvinceName()+"-"+region.getName()); + record.setTechnicalName(tTechnicalTitle.getTitileName()+"-"+tTitleMajor.getMajorName()); } return R.ok(page); } @@ -160,6 +221,9 @@ tDeclareNotice.setDeclareNoticeFiles(tDeclareNoticeFiles); tDeclareNotice.setDeclareNoticeTechnicals(tDeclareNoticeTechnicals); tDeclareNotice.setDeclareNoticeMajors(tDeclareNoticeMajors); + if(StringUtils.isEmpty(tDeclareNotice.getDeclareLevel())){ + tDeclareNotice.setDeclareLevel(tDeclareNoticeTechnicals.stream().map(TDeclareNoticeTechnical::getTechnicalName).collect(Collectors.joining("/"))); + } return R.ok(tDeclareNotice); } -- Gitblit v1.7.1