diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/DisasterInfoController.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/DisasterInfoController.java index 0d76b6e..f7b2477 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/DisasterInfoController.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/DisasterInfoController.java @@ -20,6 +20,7 @@ import org.springblade.core.tool.utils.DateUtil; import org.springframework.web.bind.annotation.*; import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -85,26 +86,26 @@ public class DisasterInfoController { */ @GetMapping("/select-condition") public R> getSelectCondition(DisasterInfo disasterInfo) { - //String dateType = String.valueOf(params.get("dateTyle")); - // LocalDate date = LocalDate.now(); - // if(StringUtils.isNotBlank(dateType)){ - // switch (dateType){ - // case "1" : - // //Latest week 上一周 - // date = LocalDate.now().minusWeeks(1); - // break; - // case "2": - // //Latest month 上一个月 - // date = LocalDate.now().minusMonths(1); - // break; - // case "3": - // //Latest six month 上6个月 - // date = LocalDate.now().minusMonths(6); - // break; - // default: - // break; - // } - // } +// String dateType = String.valueOf(params.get("dateTyle")); +// LocalDate date = LocalDate.now(); +// if(StringUtils.isNotBlank(dateType)){ +// switch (dateType){ +// case "1" : +// //Latest week 上一周 +// date = LocalDate.now().minusWeeks(1); +// break; +// case "2": +// //Latest month 上一个月 +// date = LocalDate.now().minusMonths(1); +// break; +// case "3": +// //Latest six month 上6个月 +// date = LocalDate.now().minusMonths(6); +// break; +// default: +// break; +// } +// } String disaster_time = null; if (disasterInfo.getDisasterTime() != null) { disaster_time = DateUtil.format(disasterInfo.getDisasterTime(),"yyyy-MM-dd"); @@ -154,14 +155,33 @@ public class DisasterInfoController { */ @GetMapping("/homeDisasterInfo") public R> gethomeDisasterInfo(Query query, @RequestParam Map params) { - if(StringUtils.isNotBlank(String.valueOf(params.get("startTime"))) && !"null".equals(String.valueOf(params.get("startTime")))){ + String dateType = String.valueOf(params.get("dateType")); + if(StringUtils.isNotBlank(dateType) && !"4".equals(dateType) && !"null".equals(dateType)){ + LocalDate date = LocalDate.now(); + //如果有时间类型 + switch (dateType){ + case "1" : + //Latest week 上一周 + date = LocalDate.now().minusWeeks(1); + break; + case "2": + //Latest month 上一个月 + date = LocalDate.now().minusMonths(1); + break; + case "3": + //Latest six month 上6个月 + date = LocalDate.now().minusMonths(6); + break; + default: + break; + } return R.data(disasterInfoVoService.page(Condition.getPage(query),Wrappers.lambdaQuery() .eq(DisasterInfoVo::getRespondStatus, Integer.valueOf(params.get("respondStatus"))) - .ge(DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("startTime")))) - .le(DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("endTime")))) + .ge(DisasterInfoVo::getDisasterTime,date) + .le(DisasterInfoVo::getDisasterTime,LocalDate.now()) .eq(StringUtils.isNotBlank(String.valueOf(params.get("disasterType"))) && !"null".equals(String.valueOf(params.get("disasterType"))),DisasterInfoVo::getDisasterType, String.valueOf(params.get("disasterType"))) - .like(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))),DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("affectedArea"))) - .like(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))),DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("affectedArea"))) + .and(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))) + ,Wrappers->Wrappers.like(DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("affectedArea"))).or().like(DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("affectedArea")))) .eq("type".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getDisasterType,String.valueOf(params.get("leftVal"))) .eq("country".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("leftVal"))) .eq("sponsorOrganization".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("leftVal"))) @@ -172,12 +192,33 @@ public class DisasterInfoController { .orderByDesc("updateTime".equals(String.valueOf(params.get("order"))),DisasterInfoVo::getUploadTime) .orderByDesc(DisasterInfoVo::getDisasterTime) )); - }else{ + } + if("4".equals(dateType)){ + //自定义时间 + return R.data(disasterInfoVoService.page(Condition.getPage(query),Wrappers.lambdaQuery() + .eq(DisasterInfoVo::getRespondStatus, Integer.valueOf(params.get("respondStatus"))) + .ge(DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("startTime")))) + .le(DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("endTime")))) + .eq(StringUtils.isNotBlank(String.valueOf(params.get("disasterType"))) && !"null".equals(String.valueOf(params.get("disasterType"))),DisasterInfoVo::getDisasterType, String.valueOf(params.get("disasterType"))) + .and(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))) + ,Wrappers->Wrappers.like(DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("affectedArea"))).or().like(DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("affectedArea")))) + .eq("type".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getDisasterType,String.valueOf(params.get("leftVal"))) + .eq("country".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("leftVal"))) + .eq("sponsorOrganization".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("leftVal"))) + .inSql("responseOrganization".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getId,"select t.disaster_id from guest_manage_disaster_ref t " + + " where t.response_organization = " + params.get("leftVal")) + .orderByDesc("Visits".equals(String.valueOf(params.get("order"))),DisasterInfoVo::getVisitCount) + .orderByDesc("Downloads".equals(String.valueOf(params.get("order"))),DisasterInfoVo::getDownloadCount) + .orderByDesc("updateTime".equals(String.valueOf(params.get("order"))),DisasterInfoVo::getUploadTime) + .orderByDesc(DisasterInfoVo::getDisasterTime) + )); + } else{ + //没有时间相关的 return R.data(disasterInfoVoService.page(Condition.getPage(query),Wrappers.lambdaQuery() .eq(DisasterInfoVo::getRespondStatus, Integer.valueOf(params.get("respondStatus"))) .eq(StringUtils.isNotBlank(String.valueOf(params.get("disasterType"))) && !"null".equals(String.valueOf(params.get("disasterType"))),DisasterInfoVo::getDisasterType, String.valueOf(params.get("disasterType"))) - .like(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))),DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("affectedArea"))) - .like(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))),DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("affectedArea"))) + .and(StringUtils.isNotBlank(String.valueOf(params.get("affectedArea"))) && !"null".equals(String.valueOf(params.get("affectedArea"))) + ,Wrappers->Wrappers.like(DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("affectedArea"))).or().like(DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("affectedArea")))) .eq("type".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getDisasterType,String.valueOf(params.get("leftVal"))) .eq("country".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getDisasterCountry,String.valueOf(params.get("leftVal"))) .eq("sponsorOrganization".equals(String.valueOf(params.get("leftType"))) && !"null".equals(String.valueOf(params.get("leftType"))),DisasterInfoVo::getSponsorOrganization,String.valueOf(params.get("leftVal"))) @@ -192,6 +233,18 @@ public class DisasterInfoController { } + + /** + * 获取债害详情信息 + * + * @param id + * @return + */ + @GetMapping("/addVisitCount") + public R addVisitCount(Long id) { + return R.data(disasterInfoService.addVisitCount(id)); + } + /** * 获取债害详情信息 * diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.xml b/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.xml index 63f8b4e..ccf9d70 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.xml +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.xml @@ -26,10 +26,7 @@ - di - . - id - ,di.disaster_type,di.disaster_keyword, + di.id,di.disaster_type,di.disaster_keyword, di.disaster_time,di.upload_time,di.geometry, di.disaster_level,di.disaster_country,di.respond_status, di.visit_count,di.spider_type,di.tempend_time, @@ -37,10 +34,7 @@ di.respond_time,di.download_count,di.sponsor_organization - d - . - disaster_type - ,d.disaster_time,d.disaster_country, + d.disaster_type,d.disaster_time,d.disaster_country, m.organization @@ -104,31 +98,29 @@ LEFT JOIN blade_tenant bt ON bt.id = bu.organization GROUP BY bu.organization + + + + diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoService.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoService.java index 323dbe7..6285ce4 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoService.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoService.java @@ -50,4 +50,6 @@ public interface DisasterInfoService extends IService { List getLeft1Data(); List getLeft2Data(); + + Boolean addVisitCount(Long id); } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoServiceImpl.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoServiceImpl.java index 5b2bfd3..f66fa12 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoServiceImpl.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoServiceImpl.java @@ -10,6 +10,7 @@ import com.kening.vordm.vo.DisasterMangerInfo; import com.kening.vordm.vo.GroupByUse; import com.kening.vordm.vo.UserTenantVo; import lombok.RequiredArgsConstructor; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -114,5 +115,14 @@ implements DisasterInfoService { return this.baseMapper.getLeft2Data(); } + @Override + @Async + public Boolean addVisitCount(Long id) { + DisasterInfo disasterInfo = getById(id); + disasterInfo.setVisitCount(disasterInfo.getVisitCount()+1); + updateById(disasterInfo); + return null; + } + }