Merge branch 'master' into yyhouc
This commit is contained in:
commit
200a9efe58
|
@ -67,6 +67,11 @@ public class DisasterInfo implements Serializable {
|
|||
*/
|
||||
private Integer visitCount;
|
||||
|
||||
/**
|
||||
* 本灾害的数据下载次数
|
||||
*/
|
||||
private Integer downloadCount;
|
||||
|
||||
/**
|
||||
* 爬虫类型
|
||||
*/
|
||||
|
@ -109,7 +114,6 @@ public class DisasterInfo implements Serializable {
|
|||
/**
|
||||
* 发起机构
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private String sponsorOrganization;
|
||||
|
||||
/**
|
||||
|
|
|
@ -51,6 +51,16 @@ public class GuestInfo implements Serializable {
|
|||
*/
|
||||
private Integer isManage;
|
||||
|
||||
/**
|
||||
* 职业
|
||||
*/
|
||||
private String occupation;
|
||||
|
||||
/**
|
||||
* 职称
|
||||
*/
|
||||
private String professionalTitle;
|
||||
|
||||
@TableField(exist = false)
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
|
|
|
@ -40,6 +40,11 @@ public class GuestManageDisasterRef implements Serializable {
|
|||
*/
|
||||
private Long disasterId;
|
||||
|
||||
/**
|
||||
* 灾害id
|
||||
*/
|
||||
private String responseOrganization;
|
||||
|
||||
@TableField(exist = false)
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
package com.kening.vordm.vo;
|
||||
|
||||
import com.kening.vordm.entity.DisasterInfo;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class CallForHelpVo extends DisasterInfo {
|
||||
|
||||
/**
|
||||
* 灾害id
|
||||
*/
|
||||
private Long disasterId;
|
||||
/**
|
||||
* 账户id
|
||||
*/
|
||||
private Long accountId;
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
private String username;
|
||||
|
||||
/**
|
||||
* 用户邮件
|
||||
*/
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户组织机构
|
||||
*/
|
||||
private String organization;
|
||||
|
||||
/**
|
||||
* 研究范围
|
||||
*/
|
||||
private String researchField;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
}
|
|
@ -0,0 +1,127 @@
|
|||
package com.kening.vordm.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
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")
|
||||
@Data
|
||||
public class DisasterInfoVo implements Serializable {
|
||||
/**
|
||||
* 唯一值
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 灾害类型
|
||||
*/
|
||||
private String disasterType;
|
||||
|
||||
/**
|
||||
* 灾害关键词
|
||||
*/
|
||||
private String disasterKeyword;
|
||||
|
||||
/**
|
||||
* 灾害发生时间
|
||||
*/
|
||||
private LocalDate disasterTime;
|
||||
|
||||
/**
|
||||
* 灾害发起时间
|
||||
*/
|
||||
private LocalDateTime uploadTime;
|
||||
|
||||
/**
|
||||
* 灾害区域地理字段
|
||||
*/
|
||||
private String geometry;
|
||||
|
||||
/**
|
||||
* 灾害强度或震级
|
||||
*/
|
||||
private String disasterLevel;
|
||||
|
||||
/**
|
||||
* 受灾国家
|
||||
*/
|
||||
private String disasterCountry;
|
||||
|
||||
/**
|
||||
* 响应状态,0未审批,1审批未通过。2审批通过并正在响应,3审批通过并且响应完成
|
||||
*/
|
||||
private Integer respondStatus;
|
||||
|
||||
/**
|
||||
* 本灾害的用户访问次数
|
||||
*/
|
||||
private Integer visitCount;
|
||||
|
||||
/**
|
||||
* 本灾害的数据下载次数
|
||||
*/
|
||||
private Integer downloadCount;
|
||||
|
||||
/**
|
||||
* 爬虫类型
|
||||
*/
|
||||
private Integer spiderType;
|
||||
|
||||
/**
|
||||
* 爬虫起始时间
|
||||
*/
|
||||
private Date tempendTime;
|
||||
|
||||
/**
|
||||
* 爬虫终止时间
|
||||
*/
|
||||
private Date tempStartTime;
|
||||
|
||||
/**
|
||||
* 数据条目创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 灾害id,审批通过后生成
|
||||
*/
|
||||
private String vordmId;
|
||||
|
||||
/**
|
||||
* 灾害响应时间
|
||||
*/
|
||||
private Date respondTime;
|
||||
|
||||
/**
|
||||
* 灾害申请组织
|
||||
*/
|
||||
private String sponsorOrganization;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private String disasterImg;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long size;
|
||||
|
||||
@TableField(exist = false)
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
|
@ -1,7 +1,9 @@
|
|||
package com.kening.vordm.vo;
|
||||
|
||||
import com.kening.vordm.entity.DisasterInfo;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class DisasterMangerInfo extends DisasterInfo {
|
||||
/**
|
||||
* 用户名
|
||||
|
|
|
@ -0,0 +1,146 @@
|
|||
package com.kening.vordm.vo;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class EntityDataUserVo {
|
||||
|
||||
/**
|
||||
* 数据名称
|
||||
*/
|
||||
private String title;
|
||||
|
||||
/**
|
||||
* 数据产品的大小(byte)
|
||||
*/
|
||||
private Long size;
|
||||
|
||||
/**
|
||||
* 数据类型(0-基础数据,1-减灾产品,2-制图产品)
|
||||
*/
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 数据下载链接(网站上,对象存储路径)
|
||||
*/
|
||||
private String link;
|
||||
|
||||
/**
|
||||
* 数据备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 上传时间
|
||||
*/
|
||||
private Date uploadTime;
|
||||
|
||||
/**
|
||||
* 灾害id
|
||||
*/
|
||||
private Long disasterId;
|
||||
|
||||
/**
|
||||
* 可视化可视化标志0-不可可视化;1-表示可以可视化
|
||||
*/
|
||||
private Integer visualFlag;
|
||||
|
||||
/**
|
||||
* 可视化跳转中心经度
|
||||
*/
|
||||
private Double visualLon;
|
||||
|
||||
/**
|
||||
* 可视化跳转中心纬度
|
||||
*/
|
||||
private Double visualLat;
|
||||
|
||||
/**
|
||||
* 审核时间
|
||||
*/
|
||||
private Date examTime;
|
||||
|
||||
/**
|
||||
* 0 未审核,1-审核已通过,2-审核未通过
|
||||
*/
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 上传人
|
||||
*/
|
||||
private Long uploaderId;
|
||||
|
||||
/**
|
||||
* 管理人/审核人
|
||||
*/
|
||||
private Long managerId;
|
||||
|
||||
/**
|
||||
* 审核时间
|
||||
*/
|
||||
private Date reviewTime;
|
||||
|
||||
/**
|
||||
* 来源机构
|
||||
*/
|
||||
private String sourceOrganization;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
private String username;
|
||||
|
||||
/**
|
||||
* 用户邮件
|
||||
*/
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户组织机构
|
||||
*/
|
||||
private String organization;
|
||||
|
||||
/**
|
||||
* 研究范围
|
||||
*/
|
||||
private String researchField;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 是否是管理员
|
||||
*/
|
||||
private Integer isManage;
|
||||
|
||||
/**
|
||||
* 验证码
|
||||
*/
|
||||
private Integer Verification;
|
||||
|
||||
/**
|
||||
* 职业
|
||||
*/
|
||||
private String occupation;
|
||||
|
||||
/**
|
||||
* 职称
|
||||
*/
|
||||
private String professionalTitle;
|
||||
|
||||
/**
|
||||
* 职称
|
||||
*/
|
||||
private String key;
|
||||
|
||||
/**
|
||||
* 文件信息
|
||||
*/
|
||||
private List<MultipartFile> filesArray;
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package com.kening.vordm.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FileVo {
|
||||
|
||||
//文件大小
|
||||
private Long fileSize;
|
||||
|
||||
//获取文件类型
|
||||
private String fileType;
|
||||
|
||||
//文件后缀
|
||||
private String fileSuffix;
|
||||
|
||||
//文件存储路径
|
||||
private String link;
|
||||
|
||||
}
|
|
@ -22,4 +22,14 @@ public class GroupByUse {
|
|||
* 图标
|
||||
*/
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 字典值
|
||||
*/
|
||||
private String dicKey;
|
||||
|
||||
/**
|
||||
* 类型
|
||||
*/
|
||||
private String type;
|
||||
}
|
||||
|
|
|
@ -12,5 +12,6 @@ import org.springframework.cloud.client.SpringCloudApplication;
|
|||
public class VoRdmApplication {
|
||||
public static void main(String[] args) {
|
||||
BladeApplication.run(CommonConstant.KN_VORDM_MODULE_NAME, VoRdmApplication.class, args);
|
||||
// BladeApplication.run("zqq-" + CommonConstant.KN_VORDM_MODULE_NAME, VoRdmApplication.class, args);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
package com.kening.vordm.controller;
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springblade.common.cache.CacheNames;
|
||||
import org.springblade.core.boot.ctrl.BladeController;
|
||||
import org.springblade.core.redis.cache.BladeRedis;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springblade.core.tool.utils.StringUtil;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author wanghongqing
|
||||
* @date 2023/3/31 11:10
|
||||
**/
|
||||
@RestController
|
||||
@RequestMapping("/captcha")
|
||||
@RequiredArgsConstructor
|
||||
@Api(value = "验证码校验接口", tags = "验证码校验")
|
||||
public class CaptchaController extends BladeController {
|
||||
|
||||
private final BladeRedis bladeRedis;
|
||||
|
||||
|
||||
@PostMapping("/validate")
|
||||
@ApiOperation(value = "验证码校验", notes = "传入需要校验的验证码以及缓存Key")
|
||||
public R<String> 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.success("OK");
|
||||
}
|
||||
|
||||
}
|
|
@ -21,7 +21,7 @@ import java.util.Arrays;
|
|||
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/contact")
|
||||
@RequestMapping("/ui/contact")
|
||||
public class ContactController{
|
||||
private ContactService contactService;
|
||||
@ApiOperationSupport(order = 1)
|
||||
|
|
|
@ -1,27 +1,28 @@
|
|||
package com.kening.vordm.controller;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.DisasterInfo;
|
||||
import com.kening.vordm.entity.DownloadRecord;
|
||||
import com.kening.vordm.entity.News;
|
||||
import com.kening.vordm.entity.Websites;
|
||||
import com.kening.vordm.service.DisasterInfoService;
|
||||
import com.kening.vordm.service.DownloadRecordService;
|
||||
import com.kening.vordm.service.NewsService;
|
||||
import com.kening.vordm.service.WebsitesService;
|
||||
import com.kening.vordm.vo.DisasterMangerInfo;
|
||||
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
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 lombok.RequiredArgsConstructor;
|
||||
import org.springblade.core.mp.support.BladePage;
|
||||
import org.springblade.core.mp.support.Condition;
|
||||
import org.springblade.core.mp.support.Query;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springblade.core.tool.utils.DateUtil;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
|
@ -34,9 +35,47 @@ public class DisasterInfoController {
|
|||
|
||||
private final NewsService newsService;
|
||||
|
||||
private final PictureInfoService pictureInfoService;
|
||||
|
||||
private final GuestInfoService guestInfoService;
|
||||
|
||||
private final GuestManageDisasterRefService guestManageDisasterRefService;
|
||||
|
||||
//下载次数记录
|
||||
private final DownloadRecordService downloadRecordService;
|
||||
|
||||
private final DisasterInfoVoService disasterInfoVoService;
|
||||
|
||||
/**
|
||||
* 首页数据,轮播和定位相关
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/indexData")
|
||||
public R<List<DisasterInfo>> indexData(){
|
||||
return R.data(disasterInfoService.list(Wrappers.<DisasterInfo>lambdaQuery()
|
||||
.eq(DisasterInfo::getRespondStatus,2)));
|
||||
}
|
||||
|
||||
@GetMapping("/getPicInfoByDisasterId")
|
||||
public R<List<PictureInfo>> getPicInfoByDisasterInfoId(Long disasterId){
|
||||
return R.data(pictureInfoService.list(Wrappers.<PictureInfo>lambdaQuery()
|
||||
.eq(PictureInfo::getDisasterId,disasterId)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 灾害查询条件,时间,类型,灾害联动
|
||||
* @param disasterInfo
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/selectCondition")
|
||||
public R<List<GroupByUse>> getSelectCondition1(DisasterInfo disasterInfo){
|
||||
String disaster_time = null;
|
||||
if (disasterInfo.getDisasterTime() != null) {
|
||||
disaster_time = disasterInfo.getDisasterTime().toString();
|
||||
}
|
||||
return R.data(disasterInfoService.getConditionData(disasterInfo.getDisasterType(), disasterInfo.getDisasterCountry(), disaster_time, disasterInfo.getName()
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* 灾害查询条件,时间,类型,灾害联动
|
||||
|
@ -46,53 +85,87 @@ public class DisasterInfoController {
|
|||
*/
|
||||
@GetMapping("/select-condition")
|
||||
public R<List<GroupByUse>> 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 disaster_time = null;
|
||||
if (disasterInfo.getDisasterTime() != null) {
|
||||
disaster_time = disasterInfo.getDisasterTime().toString();
|
||||
disaster_time = DateUtil.format(disasterInfo.getDisasterTime(),"yyyy-MM-dd");
|
||||
}
|
||||
return R.data(disasterInfoService.getConditionData(disasterInfo.getDisasterType(), disasterInfo.getDisasterCountry(), disaster_time, disasterInfo.getName()
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 指定条件返回数据
|
||||
*
|
||||
* @param query
|
||||
* @param disasterInfo
|
||||
* @return
|
||||
*/
|
||||
|
||||
@GetMapping("/test")
|
||||
public R<IPage<News>> getdata(Query query, DisasterInfo disasterInfo) {
|
||||
List<Long> disasterIds = disasterInfoService.getDisasterId(disasterInfo);
|
||||
return R.data(newsService.page(Condition.getPage(query), new QueryWrapper<News>().in("disaster_id", disasterIds)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 灾害信息统计 国家/灾害类型
|
||||
* 灾害信息统计 国家/灾害类型 左边栏
|
||||
*
|
||||
* @param name
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/disasterStatistics")
|
||||
public R<List<GroupByUse>> getDisasterStatistics(String name) {
|
||||
return R.data(disasterInfoService.getDisasterStatistics(name));
|
||||
public R<Map<String, List<GroupByUse>>> getDisasterStatistics() {
|
||||
Map dataMap = new HashMap();
|
||||
//按灾害类型查找 第一栏 取前7个
|
||||
dataMap.put("type", disasterInfoService.getLeft1Data());
|
||||
//按国家统计 第2栏 取前7个
|
||||
dataMap.put("country", disasterInfoService.getLeft2Data());
|
||||
//发起机构方法 第三个左边栏 取前3个
|
||||
dataMap.put("sponsorOrganization",disasterInfoService.getLeft3Data());
|
||||
//发起机构方法 第四个左边栏 取前3个
|
||||
dataMap.put("responseOrganization",disasterInfoService.getLeft4Data());
|
||||
//List<GroupByUse> groupByUseList = new ArrayList<>();
|
||||
// if("searchSponsorOrganization".equals(name)){
|
||||
// //发起机构方法 第三个左边栏
|
||||
// groupByUseList = disasterInfoService.getLeft3Data();
|
||||
// } else if ("searchResponseOrganization".equals(name)) {
|
||||
// //发起机构方法 第四个左边栏
|
||||
// groupByUseList = disasterInfoService.getLeft4Data();
|
||||
// }else{
|
||||
// groupByUseList = disasterInfoService.getDisasterStatistics(name);
|
||||
// }
|
||||
return R.data(dataMap);
|
||||
}
|
||||
|
||||
/**
|
||||
* 首页数据展示,包括响应中和未响应
|
||||
*
|
||||
* @param query
|
||||
* @param respondStatus
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/homeDisasterInfo")
|
||||
public R<BladePage<DisasterMangerInfo>> gethomeDisasterInfo(Query query, Integer respondStatus) {
|
||||
IPage<DisasterMangerInfo> pages = disasterInfoService.getHomeDisaster(Condition.getPage(query), respondStatus);
|
||||
return R.data(BladePage.of(pages));
|
||||
public R<IPage<DisasterInfoVo>> gethomeDisasterInfo(Query query, @RequestParam Map<String, String> params) {
|
||||
return R.data(disasterInfoVoService.page(Condition.getPage(query),Wrappers.<DisasterInfoVo>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)
|
||||
));
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(LocalDate.now().minusMonths(6).toString());
|
||||
}
|
||||
/**
|
||||
* 获取债害详情信息
|
||||
*
|
||||
|
@ -117,16 +190,10 @@ public class DisasterInfoController {
|
|||
*/
|
||||
@PostMapping("/saveDownloadRecord")
|
||||
public R saveDownloadRecord(@RequestBody DownloadRecord downloadRecord) {
|
||||
LambdaQueryWrapper<DownloadRecord> qw = new LambdaQueryWrapper<>();
|
||||
qw.eq(DownloadRecord::getBigType, downloadRecord.getBigType());
|
||||
qw.eq(DownloadRecord::getSmallType, downloadRecord.getSmallType());
|
||||
qw.eq(DownloadRecord::getDiasterId, downloadRecord.getDiasterId());
|
||||
DownloadRecord one = downloadRecordService.getOne(qw);
|
||||
if (one != null) {
|
||||
one.setCount(one.getCount() + 1);
|
||||
downloadRecordService.updateById(one);
|
||||
} else {
|
||||
downloadRecordService.save(downloadRecord);
|
||||
DisasterInfo byId = disasterInfoService.getById(downloadRecord.getDiasterId());
|
||||
if (byId != null) {
|
||||
byId.setDownloadCount(byId.getDownloadCount() +1);
|
||||
disasterInfoService.updateById(byId);
|
||||
}
|
||||
return R.status(true);
|
||||
}
|
||||
|
@ -139,4 +206,30 @@ public class DisasterInfoController {
|
|||
public R<List<UserTenantVo>> getUserTenant() {
|
||||
return R.data(disasterInfoService.getAllUser());
|
||||
}
|
||||
|
||||
/**
|
||||
* call for help
|
||||
*
|
||||
*/
|
||||
@PostMapping("Call-for-help")
|
||||
public R<Boolean> 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());
|
||||
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);
|
||||
return R.data(callForHelp);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,13 +3,15 @@ package com.kening.vordm.controller;
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.service.EntityDataService;
|
||||
import com.kening.vordm.vo.EntityDataUserVo;
|
||||
import com.kening.vordm.vo.UserTenantVo;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springblade.core.mp.support.Condition;
|
||||
import org.springblade.core.mp.support.Query;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
|
@ -17,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
public class EntityDataController {
|
||||
|
||||
//实体数据服务层
|
||||
private final EntityDataService respondInfoService;
|
||||
private final EntityDataService entityDataService;
|
||||
|
||||
/**
|
||||
* 实体数据列表信息
|
||||
|
@ -27,9 +29,26 @@ public class EntityDataController {
|
|||
*/
|
||||
@GetMapping("/getList")
|
||||
public R<IPage<EntityData>> getEntityDataList(EntityData entityData, Query query) {
|
||||
return R.data(respondInfoService.getEntityDataList(Condition.getPage(query), entityData));
|
||||
return R.data(entityDataService.getEntityDataList(Condition.getPage(query), entityData));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有实体信息下机构信息
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getEntityDataSourceOrganization")
|
||||
public R<List<UserTenantVo>> getEntityDataSourceOrganization() {
|
||||
return R.data(entityDataService.getEntityDataSourceOrganization());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Resource upload 上传实体信息
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/saveEntityData")
|
||||
public R saveEntityData(EntityDataUserVo entityDataUserVo) {
|
||||
return R.data(entityDataService.saveEntityData(entityDataUserVo));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
package com.kening.vordm.controller;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.kening.vordm.vo.FileVo;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springblade.core.oss.MinioTemplate;
|
||||
import org.springblade.core.oss.model.BladeFile;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
@RequestMapping("/ui/upload")
|
||||
@RestController
|
||||
@Slf4j
|
||||
public class FileController {
|
||||
|
||||
|
||||
/**
|
||||
* 对象存储模块
|
||||
*/
|
||||
@Autowired
|
||||
private MinioTemplate minioTemplate;
|
||||
|
||||
/**
|
||||
* 上传文件
|
||||
* @param file
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/uploadFile")
|
||||
public R upload(MultipartFile file){
|
||||
BladeFile bladeFile = minioTemplate.putFile(file);
|
||||
//获取文件大小
|
||||
Long fileSize = file.getSize();
|
||||
//获取文件类型
|
||||
String fileType = file.getContentType();
|
||||
//文件后缀
|
||||
String fileSuffix = file.getOriginalFilename();
|
||||
//文件存储路径
|
||||
String link = bladeFile.getLink();
|
||||
FileVo fileVo = new FileVo();
|
||||
fileVo.setFileSize(fileSize);
|
||||
fileVo.setFileType(fileType);
|
||||
fileVo.setFileSuffix(fileSuffix);
|
||||
fileVo.setLink(link);
|
||||
return R.data(bladeFile);
|
||||
}
|
||||
}
|
|
@ -3,13 +3,16 @@ package com.kening.vordm.controller;
|
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.DisasterInfo;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.entity.RemoteSensingSourceData;
|
||||
import com.kening.vordm.service.DisasterInfoService;
|
||||
import com.kening.vordm.service.RemoteSensingSourceDataService;
|
||||
import com.kening.vordm.vo.GroupByUse;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springblade.core.mp.support.Condition;
|
||||
import org.springblade.core.mp.support.Query;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springblade.core.tool.utils.DateUtil;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
@ -33,8 +36,32 @@ public class RemoteSensingSourceDataController {
|
|||
*/
|
||||
@GetMapping("/SourceData")
|
||||
public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceData(DisasterInfo disasterInfo, Query query){
|
||||
List<Long> disasterIds=disasterInfoService.getDisasterId(disasterInfo);
|
||||
List<Long> disasterIds = disasterInfoService.getDisasterId(disasterInfo);
|
||||
if (disasterIds.isEmpty()){
|
||||
return R.data(null);
|
||||
}
|
||||
return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),new QueryWrapper<RemoteSensingSourceData>().in("disaster_id",disasterIds)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 实体数据列表信息
|
||||
* @param remoteSensingSourceData 实体数据条件信息
|
||||
* @param query current当前页 size 每页数据量
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/Condition")
|
||||
public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition(RemoteSensingSourceData remoteSensingSourceData, Query query) {
|
||||
return R.data(remoteSensingSourceDataService.getRemoteSensingSourceDataByCondition(Condition.getPage(query), remoteSensingSourceData));
|
||||
}
|
||||
|
||||
// /**
|
||||
// * 根据页码和灾害信息查出遥感影像源数据,可多个灾害
|
||||
// * @param remoteSensingSourceData
|
||||
// * @param query
|
||||
// * @return
|
||||
// */
|
||||
// @GetMapping("/Condition1")
|
||||
// public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition(RemoteSensingSourceData remoteSensingSourceData, Query query){
|
||||
// return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),Condition.getQueryWrapper(remoteSensingSourceData)));
|
||||
// }
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ import java.util.Arrays;
|
|||
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/tool")
|
||||
@RequestMapping("/ui/tool")
|
||||
public class ToolController{
|
||||
private ToolService toolService;
|
||||
@ApiOperationSupport(order = 1)
|
||||
|
@ -60,6 +60,7 @@ public class ToolController{
|
|||
Tool detail = toolService.getById(id);
|
||||
return R.data(detail);
|
||||
}
|
||||
|
||||
@ApiOperationSupport(order = 6)
|
||||
@ApiOperation(value = "提交", notes = "传入Tool")
|
||||
@PostMapping("/submit")
|
||||
|
|
|
@ -37,4 +37,11 @@ public interface DisasterInfoMapper extends BaseMapper<DisasterInfo> {
|
|||
|
||||
List<UserTenantVo> getAllUser();
|
||||
|
||||
List<GroupByUse> getLeft3Data();
|
||||
|
||||
List<GroupByUse> getLeft4Data();
|
||||
|
||||
List<GroupByUse> getLeft1Data();
|
||||
|
||||
List<GroupByUse> getLeft2Data();
|
||||
}
|
||||
|
|
|
@ -15,12 +15,14 @@
|
|||
<result property="disasterCountry" column="disaster_country" jdbcType="VARCHAR"/>
|
||||
<result property="respondStatus" column="respond_status" jdbcType="SMALLINT"/>
|
||||
<result property="visitCount" column="visit_count" jdbcType="INTEGER"/>
|
||||
<result property="downloadCount" column="download_count" jdbcType="INTEGER"/>
|
||||
<result property="spiderType" column="spider_type" jdbcType="INTEGER"/>
|
||||
<result property="tempendTime" column="tempend_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="tempStartTime" column="temp_start_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="vordmId" column="vordm_id" jdbcType="VARCHAR"/>
|
||||
<result property="respondTime" column="respond_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="sponsorOrganization" column="sponsor_organization" jdbcType="TIMESTAMP"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
|
@ -29,7 +31,7 @@
|
|||
di.disaster_level,di.disaster_country,di.respond_status,
|
||||
di.visit_count,di.spider_type,di.tempend_time,
|
||||
di.temp_start_time,di.create_time,di.vordm_id,
|
||||
di.respond_time
|
||||
di.respond_time,di.download_count,di.sponsor_organization
|
||||
</sql>
|
||||
<sql id="Home_Disaster_Info">
|
||||
d.disaster_type,d.disaster_time,d.disaster_country,
|
||||
|
@ -60,7 +62,7 @@
|
|||
from disaster_info
|
||||
<if test="disaster_type!=null or disaster_country!=null or disaster_time!=null"> where </if>
|
||||
|
||||
<if test="disaster_type!=null"> disaster_type=#{disaster_type} </if>
|
||||
<if test="disaster_type!=null"> disaster_type like concat('%',#{disaster_type},'%') </if>
|
||||
<if test="disaster_type!=null and (disaster_country!=null or disaster_time!=null)"> and </if>
|
||||
<if test="disaster_country!=null"> disaster_country like concat('%',#{disaster_country},'%') </if>
|
||||
<if test="disaster_time!=null and disaster_country!=null and disaster_time!=null"> and </if>
|
||||
|
@ -76,7 +78,7 @@
|
|||
</select>
|
||||
|
||||
<select id="getHomeDisaster" resultType="com.kening.vordm.vo.DisasterMangerInfo">
|
||||
select <include refid="Home_Disaster_Info"></include>
|
||||
select *
|
||||
from (select distinct manager_id,disaster_id from guest_mamanager_info
|
||||
on g.manager_id=m.id and g.disaster_id=d.id
|
||||
where d.respond_status=#{respondStatus}
|
||||
|
@ -92,5 +94,29 @@
|
|||
LEFT JOIN blade_tenant bt ON bt.id = bu.organization
|
||||
GROUP BY bu.organization
|
||||
</select>
|
||||
<select id="getLeft3Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||
select t.sponsor_organization as `name`, count(*) as cnt , 'sponsorOrganization' as `type` from disaster_info t GROUP BY t.sponsor_organization ORDER BY cnt desc LIMIT 3
|
||||
</select>
|
||||
<select id="getLeft4Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||
select t.response_organization as `name`, count(*) as cnt, 'responseOrganization' as `type` from guest_manage_disaster_ref t GROUP BY t.response_organization ORDER BY cnt desc LIMIT 3
|
||||
</select>
|
||||
<select id="getLeft1Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||
select b.dict_key, b.dict_value as name, count(t.disaster_type) as cnt, 'type' as `type`,
|
||||
CONCAT('/icon_disastertype/icon-',b.dict_key,'.png') as icon
|
||||
from blade_dict_biz b left join disaster_info t on b.dict_key = t.disaster_type
|
||||
where b.`code` = 'disaster' and b.dict_key is not null
|
||||
group by b.dict_key, b.dict_value
|
||||
order by cnt desc
|
||||
limit 7
|
||||
</select>
|
||||
<select id="getLeft2Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||
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`
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
package com.kening.vordm.mapper;
|
||||
|
||||
import com.kening.vordm.vo.DisasterInfoVo;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* @author wangns
|
||||
* @description 针对表【disaster_info_vo】的数据库操作Mapper
|
||||
* @createDate 2023-04-10 17:33:26
|
||||
* @Entity com.kening.vordm.vo.DisasterInfoVo
|
||||
*/
|
||||
public interface DisasterInfoVoMapper extends BaseMapper<DisasterInfoVo> {
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -4,8 +4,11 @@ package com.kening.vordm.mapper;
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.vo.UserTenantVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
* @description 针对表【entity_data(其他上传的实体数据)】的数据库操作Mapper
|
||||
|
@ -18,4 +21,6 @@ public interface EntityDataMapper extends BaseMapper<EntityData> {
|
|||
IPage<EntityData> getEntityDataList(@Param("entityData") EntityData entityData, IPage<Object> page);
|
||||
|
||||
|
||||
List<UserTenantVo> getEntityDataSourceOrganization();
|
||||
|
||||
}
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
<if test="entityData.status != null and entityData.status != ''">
|
||||
and ed.status = #{entityData.status}
|
||||
</if>
|
||||
<if test="entityData.visualFlag != null and entityData.visualFlag != ''">
|
||||
<if test="entityData.visualFlag != null">
|
||||
and ed.visual_flag = #{entityData.visualFlag}
|
||||
</if>
|
||||
<if test="entityData.type != null and entityData.type != ''">
|
||||
|
@ -56,4 +56,10 @@
|
|||
</where>
|
||||
ORDER BY ed.upload_time DESC
|
||||
</select>
|
||||
|
||||
<select id="getEntityDataSourceOrganization" resultType="com.kening.vordm.vo.UserTenantVo">
|
||||
select ed.source_organization AS organizationName
|
||||
from entity_data ed
|
||||
GROUP BY ed.source_organization
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
@ -1,22 +1,24 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.kening.vordm.mapper.GuestInfoMapper">
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.kening.vordm.entity.GuestInfo">
|
||||
<id property="id" column="id" jdbcType="BIGINT"/>
|
||||
<result property="username" column="username" jdbcType="VARCHAR"/>
|
||||
<result property="email" column="email" jdbcType="VARCHAR"/>
|
||||
<result property="organization" column="organization" jdbcType="VARCHAR"/>
|
||||
<result property="researchField" column="research_field" jdbcType="VARCHAR"/>
|
||||
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="isManage" column="is_manage" jdbcType="INTEGER"/>
|
||||
<id property="id" column="id" jdbcType="BIGINT"/>
|
||||
<result property="username" column="username" jdbcType="VARCHAR"/>
|
||||
<result property="email" column="email" jdbcType="VARCHAR"/>
|
||||
<result property="organization" column="organization" jdbcType="VARCHAR"/>
|
||||
<result property="researchField" column="research_field" jdbcType="VARCHAR"/>
|
||||
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="isManage" column="is_manage" jdbcType="INTEGER"/>
|
||||
<result property="occupation" column="occupation" jdbcType="VARCHAR"/>
|
||||
<result property="professionalTitle" column="professional_title" jdbcType="VARCHAR"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
id,username,email,
|
||||
organization,research_field,create_time,
|
||||
is_manage
|
||||
is_manage,occupation,professional_title
|
||||
</sql>
|
||||
</mapper>
|
||||
|
|
|
@ -10,10 +10,11 @@
|
|||
<result property="uploaderId" column="uploader_id" jdbcType="BIGINT"/>
|
||||
<result property="managerId" column="manager_id" jdbcType="BIGINT"/>
|
||||
<result property="disasterId" column="disaster_id" jdbcType="BIGINT"/>
|
||||
<result property="responseOrganization" column="response_organization"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
id,sponsor_id,uploader_id,
|
||||
manager_id,disaster_id
|
||||
manager_id,disaster_id,response_organization
|
||||
</sql>
|
||||
</mapper>
|
||||
|
|
|
@ -2,7 +2,10 @@ package com.kening.vordm.mapper;
|
|||
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.entity.RemoteSensingSourceData;
|
||||
import com.kening.vordm.vo.GroupByUse;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -16,4 +19,7 @@ import java.util.List;
|
|||
public interface RemoteSensingSourceDataMapper extends BaseMapper<RemoteSensingSourceData> {
|
||||
|
||||
List<RemoteSensingSourceData> getRemoteSensingSourceData(@Param("disasterType") String disasterType,@Param("disasterCountry") String disasterCountry,@Param("disasterTime") String disasterTime);
|
||||
|
||||
IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(@Param("remoteSensingSourceData") RemoteSensingSourceData remoteSensingSourceData, IPage<Object> page);
|
||||
|
||||
}
|
||||
|
|
|
@ -62,4 +62,22 @@
|
|||
AND d.disaster_country = #{disasterCountry}
|
||||
AND d.disaster_time = #{disasterTime}
|
||||
</select>
|
||||
|
||||
<select id="getRemoteSensingSourceDataByCondition" resultType="com.kening.vordm.entity.RemoteSensingSourceData">
|
||||
select
|
||||
<include refid="Base_Column_List"/>
|
||||
from remote_sensing_source_data r
|
||||
<where>
|
||||
<if test="remoteSensingSourceData.disasterId != null and remoteSensingSourceData.disasterId != ''">
|
||||
r.disaster_id = #{remoteSensingSourceData.disasterId}
|
||||
</if>
|
||||
<if test="remoteSensingSourceData.productResolution != null and remoteSensingSourceData.productResolution != ''">
|
||||
and r.product_resolution = #{remoteSensingSourceData.productResolution}
|
||||
</if>
|
||||
<if test="remoteSensingSourceData.satelliteCode != null and remoteSensingSourceData.satelliteCode != ''">
|
||||
and r.satellite_code = #{remoteSensingSourceData.satelliteCode}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -11,16 +11,17 @@ import com.kening.vordm.vo.UserTenantVo;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
* @description 针对表【disaster_info(灾害信息表,存储灾害信息)】的数据库操作Service
|
||||
* @createDate 2023-04-04 15:54:30
|
||||
*/
|
||||
* @author G1393
|
||||
* @description 针对表【disaster_info(灾害信息表,存储灾害信息)】的数据库操作Service
|
||||
* @createDate 2023-04-04 15:54:30
|
||||
*/
|
||||
public interface DisasterInfoService extends IService<DisasterInfo> {
|
||||
|
||||
List<GroupByUse> getConditionData(String type, String country, String time, String name);
|
||||
List<GroupByUse> getConditionData(String type, String country, String time, String name);
|
||||
|
||||
/**
|
||||
* 获取债害详情信息
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
|
@ -28,17 +29,25 @@ public interface DisasterInfoService extends IService<DisasterInfo> {
|
|||
|
||||
/**
|
||||
* 根据灾害信息获取灾害id
|
||||
*
|
||||
* @param disasterInfo
|
||||
* @return
|
||||
*/
|
||||
List<Long> getDisasterId(DisasterInfo disasterInfo);
|
||||
List<Long> getDisasterId(DisasterInfo disasterInfo);
|
||||
|
||||
|
||||
List<GroupByUse> getDisasterStatistics( String name);
|
||||
List<GroupByUse> getDisasterStatistics(String name);
|
||||
|
||||
|
||||
IPage<DisasterMangerInfo> getHomeDisaster(IPage<DisasterMangerInfo> page, Integer respondStatus);
|
||||
IPage<DisasterMangerInfo> getHomeDisaster(IPage<DisasterMangerInfo> page, Integer respondStatus);
|
||||
|
||||
List<UserTenantVo> getAllUser();
|
||||
|
||||
List<GroupByUse> getLeft3Data();
|
||||
|
||||
List<GroupByUse> getLeft4Data();
|
||||
|
||||
List<GroupByUse> getLeft1Data();
|
||||
|
||||
List<GroupByUse> getLeft2Data();
|
||||
}
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
package com.kening.vordm.service;
|
||||
|
||||
import com.kening.vordm.vo.DisasterInfoVo;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* @author wangns
|
||||
* @description 针对表【disaster_info_vo】的数据库操作Service
|
||||
* @createDate 2023-04-10 17:33:26
|
||||
*/
|
||||
public interface DisasterInfoVoService extends IService<DisasterInfoVo> {
|
||||
|
||||
}
|
|
@ -4,6 +4,10 @@ package com.kening.vordm.service;
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.vo.EntityDataUserVo;
|
||||
import com.kening.vordm.vo.UserTenantVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
|
@ -14,4 +18,15 @@ public interface EntityDataService extends IService<EntityData> {
|
|||
|
||||
IPage<EntityData> getEntityDataList(IPage<Object> page, EntityData entityData);
|
||||
|
||||
/**
|
||||
* 获取所以不可可视化下机构信息
|
||||
* @return
|
||||
*/
|
||||
List<UserTenantVo> getEntityDataSourceOrganization();
|
||||
|
||||
/**
|
||||
* Resource upload 上传实体信息
|
||||
* @return
|
||||
*/
|
||||
Boolean saveEntityData(EntityDataUserVo entityDataUserVo);
|
||||
}
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
package com.kening.vordm.service;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.entity.RemoteSensingSourceData;
|
||||
import com.kening.vordm.vo.GroupByUse;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -15,4 +18,6 @@ import java.util.List;
|
|||
public interface RemoteSensingSourceDataService extends IService<RemoteSensingSourceData> {
|
||||
List<RemoteSensingSourceData> getRemoteSensingSourceData(String disasterType,String disasterCountry, String disasterTime);
|
||||
|
||||
IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(IPage<Object> page, RemoteSensingSourceData remoteSensingSourceData);
|
||||
|
||||
}
|
||||
|
|
|
@ -46,23 +46,23 @@ implements DisasterInfoService {
|
|||
public List<Long> getDisasterId(DisasterInfo disasterInfo){
|
||||
QueryWrapper<DisasterInfo> qw = new QueryWrapper<>();
|
||||
if (disasterInfo.getDisasterType()!=null){
|
||||
qw.like("disaster_type",disasterInfo.getDisasterType());
|
||||
qw.eq("disaster_type",disasterInfo.getDisasterType());
|
||||
}
|
||||
if (disasterInfo.getDisasterCountry()!=null){
|
||||
qw.like("disaster_country",disasterInfo.getDisasterCountry());
|
||||
qw.eq("disaster_country",disasterInfo.getDisasterCountry());
|
||||
}
|
||||
if (disasterInfo.getDisasterTime()!=null){
|
||||
qw.like("disaster_time",disasterInfo.getDisasterTime());
|
||||
qw.eq("disaster_time",disasterInfo.getDisasterTime());
|
||||
}
|
||||
List<DisasterInfo> disasterInfos = this.baseMapper.selectList(qw);
|
||||
List<Long> ids = new ArrayList<>();
|
||||
if (!disasterInfos.isEmpty()){
|
||||
List<Long> ids = new ArrayList<>();
|
||||
disasterInfos.stream().forEach(disasterInfo1 -> {
|
||||
ids.add(disasterInfo1.getId());
|
||||
ids .add(disasterInfo1.getId());
|
||||
});
|
||||
return ids;
|
||||
}
|
||||
return null;
|
||||
return ids;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -94,4 +94,25 @@ implements DisasterInfoService {
|
|||
return this.baseMapper.getAllUser();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GroupByUse> getLeft3Data() {
|
||||
return this.baseMapper.getLeft3Data();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GroupByUse> getLeft4Data() {
|
||||
return this.baseMapper.getLeft4Data();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GroupByUse> getLeft1Data() {
|
||||
return this.baseMapper.getLeft1Data();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GroupByUse> getLeft2Data() {
|
||||
return this.baseMapper.getLeft2Data();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
package com.kening.vordm.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.kening.vordm.vo.DisasterInfoVo;
|
||||
import com.kening.vordm.service.DisasterInfoVoService;
|
||||
import com.kening.vordm.mapper.DisasterInfoVoMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author wangns
|
||||
* @description 针对表【disaster_info_vo】的数据库操作Service实现
|
||||
* @createDate 2023-04-10 17:33:26
|
||||
*/
|
||||
@Service
|
||||
public class DisasterInfoVoServiceImpl extends ServiceImpl<DisasterInfoVoMapper, DisasterInfoVo>
|
||||
implements DisasterInfoVoService{
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,16 +1,26 @@
|
|||
package com.kening.vordm.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.alibaba.nacos.common.utils.StringUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.entity.GuestInfo;
|
||||
import com.kening.vordm.mapper.EntityDataMapper;
|
||||
import com.kening.vordm.mapper.GuestInfoMapper;
|
||||
import com.kening.vordm.service.EntityDataService;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springblade.core.tool.utils.CollectionUtil;
|
||||
import com.kening.vordm.vo.EntityDataUserVo;
|
||||
import com.kening.vordm.vo.UserTenantVo;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springblade.core.oss.MinioTemplate;
|
||||
import org.springblade.core.oss.model.BladeFile;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -18,14 +28,79 @@ import java.util.List;
|
|||
* @description 针对表【entity_data(其他上传的实体数据)】的数据库操作Service实现
|
||||
* @createDate 2023-04-04 15:54:30
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class EntityDataServiceImpl extends ServiceImpl<EntityDataMapper, EntityData>
|
||||
implements EntityDataService {
|
||||
|
||||
private GuestInfoMapper guestInfoMapper;
|
||||
|
||||
/**
|
||||
* 对象存储模块
|
||||
*/
|
||||
private MinioTemplate minioTemplate;
|
||||
|
||||
@Override
|
||||
public IPage<EntityData> getEntityDataList(IPage<Object> page, EntityData entityData) {
|
||||
return this.baseMapper.getEntityDataList(entityData, page);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所以不可可视化下机构信息
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<UserTenantVo> getEntityDataSourceOrganization() {
|
||||
return this.baseMapper.getEntityDataSourceOrganization();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Boolean saveEntityData(EntityDataUserVo entityDataUserVo) {
|
||||
//创建实体数据
|
||||
EntityData entityData = new EntityData();
|
||||
|
||||
//路径拼接
|
||||
List<String> link = new ArrayList<>();
|
||||
//文件数据
|
||||
List<MultipartFile> filesArray = entityDataUserVo.getFilesArray();
|
||||
filesArray.stream().forEach(files->{
|
||||
BladeFile bladeFile = minioTemplate.putFile(files);
|
||||
link.add(bladeFile.getLink());
|
||||
});
|
||||
|
||||
//判断上传用户是否存在
|
||||
LambdaQueryWrapper<GuestInfo> qw = new LambdaQueryWrapper<>();
|
||||
qw.eq(GuestInfo::getEmail, entityDataUserVo.getEmail());
|
||||
GuestInfo guestInfo1 = guestInfoMapper.selectOne(qw);
|
||||
if (guestInfo1 == null) {
|
||||
GuestInfo guestInfo = new GuestInfo();
|
||||
guestInfo.setEmail(entityDataUserVo.getEmail());
|
||||
guestInfo.setOrganization(entityDataUserVo.getOrganization());
|
||||
guestInfo.setIsManage(entityDataUserVo.getIsManage());
|
||||
guestInfo.setResearchField(entityDataUserVo.getResearchField());
|
||||
guestInfo.setUsername(entityDataUserVo.getUsername());
|
||||
guestInfo.setCreateTime(new Date());
|
||||
guestInfo.setOccupation(entityDataUserVo.getOccupation());
|
||||
guestInfo.setProfessionalTitle(entityDataUserVo.getProfessionalTitle());
|
||||
guestInfoMapper.insert(guestInfo);
|
||||
entityData.setUploaderId(guestInfo.getId());
|
||||
} else {
|
||||
entityData.setUploaderId(guestInfo1.getId());
|
||||
}
|
||||
|
||||
//实体数据
|
||||
entityData.setTitle(entityDataUserVo.getTitle());
|
||||
entityData.setSize(entityDataUserVo.getSize());
|
||||
entityData.setLink(StringUtils.join(link,","));
|
||||
entityData.setDisasterId(entityDataUserVo.getDisasterId());
|
||||
entityData.setUploadTime(new Date());
|
||||
entityData.setRemark(entityDataUserVo.getRemark());
|
||||
entityData.setSourceOrganization(entityDataUserVo.getOrganization());
|
||||
return this.baseMapper.insert(entityData)>1;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
package com.kening.vordm.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.kening.vordm.entity.EntityData;
|
||||
import com.kening.vordm.entity.RemoteSensingSourceData;
|
||||
import com.kening.vordm.mapper.RemoteSensingSourceDataMapper;
|
||||
import com.kening.vordm.service.RemoteSensingSourceDataService;
|
||||
import com.kening.vordm.vo.GroupByUse;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -22,4 +25,8 @@ implements RemoteSensingSourceDataService {
|
|||
return this.baseMapper.getRemoteSensingSourceData(disasterType, disasterCountry, disasterTime);
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(IPage<Object> page, RemoteSensingSourceData remoteSensingSourceData) {
|
||||
return this.baseMapper.getRemoteSensingSourceDataByCondition(remoteSensingSourceData, page);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.kening.vordm.mapper.DisasterInfoVoMapper">
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.kening.vordm.vo.DisasterInfoVo">
|
||||
<result property="id" column="id" jdbcType="BIGINT"/>
|
||||
<result property="disasterType" column="disaster_type" jdbcType="VARCHAR"/>
|
||||
<result property="disasterKeyword" column="disaster_keyword" jdbcType="VARCHAR"/>
|
||||
<result property="disasterTime" column="disaster_time" jdbcType="DATE"/>
|
||||
<result property="uploadTime" column="upload_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="geometry" column="geometry" jdbcType="VARCHAR"/>
|
||||
<result property="disasterLevel" column="disaster_level" jdbcType="VARCHAR"/>
|
||||
<result property="disasterCountry" column="disaster_country" jdbcType="VARCHAR"/>
|
||||
<result property="respondStatus" column="respond_status" jdbcType="SMALLINT"/>
|
||||
<result property="visitCount" column="visit_count" jdbcType="INTEGER"/>
|
||||
<result property="downloadCount" column="download_count" jdbcType="INTEGER"/>
|
||||
<result property="spiderType" column="spider_type" jdbcType="INTEGER"/>
|
||||
<result property="tempendTime" column="tempend_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="tempStartTime" column="temp_start_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="vordmId" column="vordm_id" jdbcType="VARCHAR"/>
|
||||
<result property="respondTime" column="respond_time" jdbcType="TIMESTAMP"/>
|
||||
<result property="sponsorOrganization" column="sponsor_organization" jdbcType="VARCHAR"/>
|
||||
<result property="disasterImg" column="disaster_img" jdbcType="VARCHAR"/>
|
||||
<result property="dictValue" column="dict_value" jdbcType="VARCHAR"/>
|
||||
<result property="size" column="size" jdbcType="DECIMAL"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
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
|
||||
</sql>
|
||||
</mapper>
|
|
@ -1,5 +1,5 @@
|
|||
spring:
|
||||
datasource:
|
||||
url: ${kn.datasource.vordm.url}
|
||||
username: ${kn.datasource.vordm.username}
|
||||
password: ${kn.datasource.vordm.password}
|
||||
url: ${blade.datasource.dev.url}
|
||||
username: ${blade.datasource.dev.username}
|
||||
password: ${blade.datasource.dev.password}
|
||||
|
|
|
@ -19,3 +19,4 @@
|
|||
</dependencies>
|
||||
|
||||
</project>
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<modelVersion>4.0.0</modelVersion>
|
||||
<modules>
|
||||
<module>biz-vordm</module>
|
||||
<module>kn-setting</module>
|
||||
<!-- <module>kn-setting</module>-->
|
||||
</modules>
|
||||
|
||||
<parent>
|
||||
|
@ -65,6 +65,25 @@
|
|||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springblade</groupId>
|
||||
<artifactId>blade-starter-oss</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>esdk-obs-java</artifactId>
|
||||
<groupId>com.huaweicloud</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.minio</groupId>
|
||||
<artifactId>minio</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-mock</artifactId>
|
||||
<version>2.0.8</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>fastjson</artifactId>
|
||||
|
|
Loading…
Reference in New Issue