diff --git a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/DisasterInfo.java b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/DisasterInfo.java index 09a382a..e6e720b 100644 --- a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/DisasterInfo.java +++ b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/DisasterInfo.java @@ -128,6 +128,12 @@ public class DisasterInfo implements Serializable { @TableField(exist = false) private String managerOrganization; + /** + * 灾害类型value + */ + @TableField(exist = false) + private String dictValue; + /** * 减灾网站 */ diff --git a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/DisasterInfoVo.java b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/DisasterInfoVo.java index f7ec3db..4b4b306 100644 --- a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/DisasterInfoVo.java +++ b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/DisasterInfoVo.java @@ -5,13 +5,11 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; -import java.time.LocalDate; -import java.time.LocalDateTime; import java.util.Date; import lombok.Data; /** - * + * * @TableName disaster_info_vo */ @TableName(value ="disaster_info_vo") @@ -35,12 +33,12 @@ public class DisasterInfoVo implements Serializable { /** * 灾害发生时间 */ - private LocalDate disasterTime; + private Date disasterTime; /** * 灾害发起时间 */ - private LocalDateTime uploadTime; + private Date uploadTime; /** * 灾害区域地理字段 @@ -108,7 +106,7 @@ public class DisasterInfoVo implements Serializable { private String sponsorOrganization; /** - * + * */ private String disasterImg; @@ -118,10 +116,15 @@ public class DisasterInfoVo implements Serializable { private String dictValue; /** - * + * */ private Long size; + /** + * + */ + private String news; + @TableField(exist = false) private static final long serialVersionUID = 1L; -} +} \ No newline at end of file diff --git a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/GroupByUse.java b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/GroupByUse.java index 9bf4211..5627be5 100644 --- a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/GroupByUse.java +++ b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/vo/GroupByUse.java @@ -32,4 +32,10 @@ public class GroupByUse { * 类型 */ private String type; + + + /** + * 字典value + */ + private String dictValue; } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/VoRdmApplication.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/VoRdmApplication.java index 6979a41..8464ead 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/VoRdmApplication.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/VoRdmApplication.java @@ -11,7 +11,7 @@ import org.springframework.cloud.client.SpringCloudApplication; @SpringCloudApplication public class VoRdmApplication { public static void main(String[] args) { - BladeApplication.run(CommonConstant.KN_VORDM_MODULE_NAME, VoRdmApplication.class, args); + BladeApplication.run("glj-"+CommonConstant.KN_VORDM_MODULE_NAME, VoRdmApplication.class, args); // BladeApplication.run("zqq-" + CommonConstant.KN_VORDM_MODULE_NAME, VoRdmApplication.class, args); } } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/CaptchaController.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/CaptchaController.java index 0795576..6aad750 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/CaptchaController.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/controller/CaptchaController.java @@ -28,12 +28,12 @@ public class CaptchaController extends BladeController { @PostMapping("/validate") @ApiOperation(value = "验证码校验", notes = "传入需要校验的验证码以及缓存Key") - public R validDefaultTime(@RequestParam String code, @RequestParam String key) { + public R validDefaultTime(@RequestParam String code, @RequestParam String key) { // 获取验证码 String redisCode = bladeRedis.get(CacheNames.CAPTCHA_KEY + key); // 判断验证码 if (code == null || !StringUtil.equalsIgnoreCase(redisCode, code)) { - return R.fail(1404, "Verification code error"); + return R.data(1404, "Verification code error"); } return R.success("OK"); } 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 7612b9b..e7741a8 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 @@ -6,12 +6,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.kening.vordm.entity.*; import com.kening.vordm.service.*; import com.kening.vordm.vo.CallForHelpVo; import com.kening.vordm.vo.DisasterInfoVo; import com.kening.vordm.vo.GroupByUse; import com.kening.vordm.vo.UserTenantVo; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; @@ -20,6 +24,7 @@ import org.springblade.core.tool.utils.DateUtil; import org.springframework.web.bind.annotation.*; import java.time.LocalDate; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -46,29 +51,43 @@ public class DisasterInfoController { private final DisasterInfoVoService disasterInfoVoService; + @ApiOperationSupport(order = 1) + @ApiOperation(value = "分页", notes = "传入Tool") + @ApiImplicitParams({ + @ApiImplicitParam(name = "current", value = "当前页", paramType = "query", dataType = "int"), + @ApiImplicitParam(name = "size", value = "分页大小", paramType = "query", dataType = "int") + }) + @GetMapping("/list") + public R> list(CallForHelpVo CallForHelpVo, Query query) { + IPage pages = disasterInfoService.page(Condition.getPage(query), CallForHelpVo); + return R.data(pages); + } + /** * 首页数据,轮播和定位相关 + * * @return */ @GetMapping("/indexData") - public R> indexData(){ + public R> indexData() { return R.data(disasterInfoService.list(Wrappers.lambdaQuery() - .eq(DisasterInfo::getRespondStatus,2))); + .eq(DisasterInfo::getRespondStatus, 2))); } @GetMapping("/getPicInfoByDisasterId") - public R> getPicInfoByDisasterInfoId(Long disasterId){ + public R> getPicInfoByDisasterInfoId(Long disasterId) { return R.data(pictureInfoService.list(Wrappers.lambdaQuery() - .eq(PictureInfo::getDisasterId,disasterId))); + .eq(PictureInfo::getDisasterId, disasterId))); } /** * 灾害查询条件,时间,类型,灾害联动 + * * @param disasterInfo * @return */ @GetMapping("/selectCondition") - public R> getSelectCondition1(DisasterInfo disasterInfo){ + public R> getSelectCondition1(DisasterInfo disasterInfo) { String disaster_time = null; if (disasterInfo.getDisasterTime() != null) { disaster_time = disasterInfo.getDisasterTime().toString(); @@ -85,37 +104,35 @@ 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"); + disaster_time = DateUtil.format(disasterInfo.getDisasterTime(), "yyyy-MM-dd"); } return R.data(disasterInfoService.getConditionData(disasterInfo.getDisasterType(), disasterInfo.getDisasterCountry(), disaster_time, disasterInfo.getName() )); } - - /** * 灾害信息统计 国家/灾害类型 左边栏 * @@ -130,9 +147,9 @@ public class DisasterInfoController { //按国家统计 第2栏 取前7个 dataMap.put("country", disasterInfoService.getLeft2Data()); //发起机构方法 第三个左边栏 取前3个 - dataMap.put("sponsorOrganization",disasterInfoService.getLeft3Data()); + dataMap.put("sponsorOrganization", disasterInfoService.getLeft3Data()); //发起机构方法 第四个左边栏 取前3个 - dataMap.put("responseOrganization",disasterInfoService.getLeft4Data()); + dataMap.put("responseOrganization", disasterInfoService.getLeft4Data()); //List groupByUseList = new ArrayList<>(); // if("searchSponsorOrganization".equals(name)){ // //发起机构方法 第三个左边栏 @@ -154,18 +171,96 @@ public class DisasterInfoController { */ @GetMapping("/homeDisasterInfo") public R> gethomeDisasterInfo(Query query, @RequestParam Map params) { - return R.data(disasterInfoVoService.page(Condition.getPage(query),Wrappers.lambdaQuery() - .eq(DisasterInfoVo::getRespondStatus, Integer.valueOf(params.get("respondStatus"))) - .ge(StringUtils.isNotBlank(String.valueOf(params.get("startTime"))),DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("startTime")))) - .le(StringUtils.isNotBlank(String.valueOf(params.get("endTime"))),DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("endTime")))) - .eq(StringUtils.isNotBlank(String.valueOf(params.get("disasterType"))),DisasterInfoVo::getDisasterType, String.valueOf(params.get("disasterType"))) - .orderByDesc(DisasterInfoVo::getDisasterTime) - )); + 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, 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"))) + .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) + )); + } + 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"))) + .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) + )); + } + } - public static void main(String[] args) { - System.out.println(LocalDate.now().minusMonths(6).toString()); + + /** + * 获取债害详情信息 + * + * @param id + * @return + */ + @GetMapping("/addVisitCount") + public R addVisitCount(Long id) { + return R.data(disasterInfoService.addVisitCount(id)); } + /** * 获取债害详情信息 * @@ -192,7 +287,7 @@ public class DisasterInfoController { public R saveDownloadRecord(@RequestBody DownloadRecord downloadRecord) { DisasterInfo byId = disasterInfoService.getById(downloadRecord.getDiasterId()); if (byId != null) { - byId.setDownloadCount(byId.getDownloadCount() +1); + byId.setDownloadCount(byId.getDownloadCount() + 1); disasterInfoService.updateById(byId); } return R.status(true); @@ -200,6 +295,7 @@ public class DisasterInfoController { /** * 获取用户所以得机构 + * * @return */ @GetMapping("/getUserTenant") @@ -209,27 +305,34 @@ public class DisasterInfoController { /** * call for help - * */ @PostMapping("Call-for-help") - public R insertRespondInfo(@RequestBody CallForHelpVo callForHelpVo){ + public R insertRespondInfo(@RequestBody CallForHelpVo callForHelpVo ){ GuestInfo guestInfo = new GuestInfo(); BeanUtil.copyProperties(callForHelpVo, guestInfo); guestInfo.setId(IdWorker.getId()); DisasterInfo disasterInfo = new DisasterInfo(); BeanUtil.copyProperties(callForHelpVo, disasterInfo); disasterInfo.setId(IdWorker.getId()); + disasterInfo.setUploadTime(new Date()); GuestManageDisasterRef GuestManageDisasterRef = new GuestManageDisasterRef(); GuestManageDisasterRef.setId(IdWorker.getId()); GuestManageDisasterRef.setSponsorId(guestInfo.getId()); - String vordm_id="test"; GuestManageDisasterRef.setDisasterId(disasterInfo.getId()); - Boolean flag1=guestInfoService.save(guestInfo); - Boolean flag2= guestManageDisasterRefService.save(GuestManageDisasterRef); - Boolean flag3=disasterInfoService.save(disasterInfo); - Boolean callForHelp= flag1&flag2&flag3; -// callForHelpVo.setId(IdWorker.getId()); -// Boolean insertFlag=accountInfoService.save(accountInfo); + Boolean flag1 = guestInfoService.save(guestInfo); + Boolean flag2 = guestManageDisasterRefService.save(GuestManageDisasterRef); + Boolean flag3 = disasterInfoService.save(disasterInfo); + Boolean callForHelp = flag1 && flag2 && flag3; return R.data(callForHelp); } + + + @PostMapping("review") + public R review(String id) { + DisasterInfo disasterInfo = new DisasterInfo(); + disasterInfo.setId(Long.valueOf(id)); + disasterInfo.setRespondStatus(2); + Boolean flag=disasterInfoService.updateById(disasterInfo); + return R.data(flag); + } } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.java index 0d39144..9051bd0 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoMapper.java @@ -4,10 +4,12 @@ package com.kening.vordm.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.kening.vordm.entity.DisasterInfo; +import com.kening.vordm.vo.CallForHelpVo; import com.kening.vordm.vo.DisasterMangerInfo; import com.kening.vordm.vo.GroupByUse; import com.kening.vordm.vo.UserTenantVo; import org.apache.ibatis.annotations.Param; +import org.apache.poi.ss.formula.functions.T; import java.util.List; @@ -24,6 +26,7 @@ public interface DisasterInfoMapper extends BaseMapper { @Param("disaster_time") String disaster_time, @Param("name") String name); + /** * 获取债害详情信息 * @param id @@ -44,4 +47,6 @@ public interface DisasterInfoMapper extends BaseMapper { List getLeft1Data(); List getLeft2Data(); + + List page(IPage page,@Param("callForHelpVo" )CallForHelpVo callForHelpVo); } 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 d382336..b1bf87b 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,7 +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, @@ -44,12 +44,13 @@ gi.username AS sponsorName, gi.organization AS sponsorOrganization, bu.name AS managerName, - bt.tenant_name AS managerOrganization + bu.organization AS managerOrganization, + bdb.dict_value AS dictValue from disaster_info di left join guest_manage_disaster_ref gmdr on gmdr.disaster_id = di.id + left join blade_dict_biz bdb on bdb.dict_key = di.disaster_type left join guest_info gi on gi.id = gmdr.sponsor_id left join blade_user bu on bu.id = gmdr.manager_id - left join blade_tenant bt on bt.id = bu.organization di.id = #{id} @@ -57,66 +58,114 @@ - + select distinct ${name} AS name , bdb.dict_value AS dictValue from disaster_info - where - - disaster_type like concat('%',#{disaster_type},'%') - and - disaster_country like concat('%',#{disaster_country},'%') - and - disaster_time like concat('%',#{disaster_time},'%') + left join blade_dict_biz bdb on bdb.dict_key = disaster_info.disaster_type + + + disaster_type = #{disaster_type} + + + and disaster_country like concat('%',#{disaster_country},'%') + + + and disaster_time like concat('%',#{disaster_time},'%') + + + + + - + SELECT b.*, c.img as icon + from country_icon c + INNER JOIN + (select t.disaster_country as name, count(*) as cnt, 'country' as `type` + from disaster_info t + group by t.disaster_country + order by cnt desc limit 7) b on c.flagname = b.`name` + diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoVoMapper.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoVoMapper.java index f10a04d..a5ba33f 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoVoMapper.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/mapper/DisasterInfoVoMapper.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @author wangns * @description 针对表【disaster_info_vo】的数据库操作Mapper -* @createDate 2023-04-10 17:33:26 +* @createDate 2023-04-11 10:44:37 * @Entity com.kening.vordm.vo.DisasterInfoVo */ public interface DisasterInfoVoMapper extends BaseMapper { 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..d852563 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 @@ -4,6 +4,7 @@ package com.kening.vordm.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.kening.vordm.entity.DisasterInfo; +import com.kening.vordm.vo.CallForHelpVo; import com.kening.vordm.vo.DisasterMangerInfo; import com.kening.vordm.vo.GroupByUse; import com.kening.vordm.vo.UserTenantVo; @@ -50,4 +51,8 @@ public interface DisasterInfoService extends IService { List getLeft1Data(); List getLeft2Data(); + + Boolean addVisitCount(Long id); + + IPage page(IPage page, CallForHelpVo callForHelpVo); } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoVoService.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoVoService.java index 20ebf9b..2ef17ce 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoVoService.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/DisasterInfoVoService.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; /** * @author wangns * @description 针对表【disaster_info_vo】的数据库操作Service -* @createDate 2023-04-10 17:33:26 +* @createDate 2023-04-11 10:44:37 */ public interface DisasterInfoVoService extends IService { 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..a65ebc4 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 @@ -6,10 +6,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.kening.vordm.entity.DisasterInfo; import com.kening.vordm.mapper.DisasterInfoMapper; import com.kening.vordm.service.DisasterInfoService; +import com.kening.vordm.vo.CallForHelpVo; 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 +116,20 @@ 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; + + } + + @Override + public IPage page(IPage page, CallForHelpVo callForHelpVo) { + return page.setRecords(this.baseMapper.page(page,callForHelpVo)); + } + } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoVoServiceImpl.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoVoServiceImpl.java index 452e93d..7ac1db3 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoVoServiceImpl.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/DisasterInfoVoServiceImpl.java @@ -9,7 +9,7 @@ import org.springframework.stereotype.Service; /** * @author wangns * @description 针对表【disaster_info_vo】的数据库操作Service实现 -* @createDate 2023-04-10 17:33:26 +* @createDate 2023-04-11 10:44:37 */ @Service public class DisasterInfoVoServiceImpl extends ServiceImpl diff --git a/kn-service/biz-vordm/src/main/java/mapper/DisasterInfoVoMapper.xml b/kn-service/biz-vordm/src/main/java/mapper/DisasterInfoVoMapper.xml deleted file mode 100644 index 20eba77..0000000 --- a/kn-service/biz-vordm/src/main/java/mapper/DisasterInfoVoMapper.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - id,disaster_type,disaster_keyword, - disaster_time,upload_time,geometry, - disaster_level,disaster_country,respond_status, - visit_count,download_count,spider_type, - tempend_time,temp_start_time,create_time, - vordm_id,respond_time,sponsor_organization, - disaster_img,dict_value,size - - diff --git a/kn-sys-manager/src/main/java/org/springblade/auth/system/controller/DictBizController.java b/kn-sys-manager/src/main/java/org/springblade/auth/system/controller/DictBizController.java index 2c40fbb..29d1e5d 100644 --- a/kn-sys-manager/src/main/java/org/springblade/auth/system/controller/DictBizController.java +++ b/kn-sys-manager/src/main/java/org/springblade/auth/system/controller/DictBizController.java @@ -1,6 +1,7 @@ package org.springblade.auth.system.controller; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -8,6 +9,7 @@ import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; +import org.springblade.auth.system.dto.DictBizDTO; import org.springblade.auth.system.entity.DictBiz; import org.springblade.auth.system.service.IDictBizService; import org.springblade.auth.system.vo.DictBizVO; @@ -166,6 +168,24 @@ public class DictBizController { List tree = dictService.getList(code); return R.data(DictBizWrapper.build().listNodeVO(tree)); } - + /** + * 新增或修改 + */ + @PostMapping("/submit2") + @ApiOperationSupport(order = 6) + @ApiOperation(value = "新增或修改", notes = "传入dict") + public R submit2(@Valid @RequestBody DictBizDTO dict) { + CacheUtil.clear(DICT_CACHE); + dictService.submit(dict); + List list = dict.getChildren(); + dictService.remove(Wrappers.update().lambda().eq(DictBiz::getParentId,dict.getId())); + for (DictBiz dictBiz : list) { + //清空id + dictBiz.setId(null); + //添加父子关系 + dictBiz.setParentId(dict.getId()); + } + return R.success(dictService.saveBatch(list)||list.size()==0?"操作成功":"操作失败"); + } } diff --git a/kn-sys-manager/src/main/java/org/springblade/auth/system/dto/DictBizDTO.java b/kn-sys-manager/src/main/java/org/springblade/auth/system/dto/DictBizDTO.java new file mode 100644 index 0000000..b9eee4a --- /dev/null +++ b/kn-sys-manager/src/main/java/org/springblade/auth/system/dto/DictBizDTO.java @@ -0,0 +1,15 @@ +package org.springblade.auth.system.dto; + +import io.swagger.annotations.ApiModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.auth.system.entity.DictBiz; + +import java.util.List; + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "DictBizDTO对象", description = "DictBizDTO对象") +public class DictBizDTO extends DictBiz { + private List children; +}