diff --git a/src/main/java/com/cetc32/dh/beans/DataCollected.java b/src/main/java/com/cetc32/dh/beans/DataCollected.java new file mode 100644 index 0000000000000000000000000000000000000000..8d8c10a2a7c93db9aad15e099b2effacd9caba2c --- /dev/null +++ b/src/main/java/com/cetc32/dh/beans/DataCollected.java @@ -0,0 +1,72 @@ +package com.cetc32.dh.beans; + +import java.util.Date; + +public class DataCollected { + private Integer userid; + private String eventtype; + private String points; + private String cityname; + private Date uploadtime; + private String describe; + private byte[] photo; + + + + public Integer getUserid() { + return userid; + } + + public void setUserid(Integer userid) { + this.userid = userid; + } + + public String getEventtype() { + return eventtype; + } + + public void setEventtype(String eventtype) { + this.eventtype = eventtype; + } + + public String getPoints() { + return points; + } + + public void setPoints(String points) { + this.points = points; + } + + public String getCityname() { + return cityname; + } + + public void setCityname(String cityname) { + this.cityname = cityname; + } + + public Date getUploadtime() { + return uploadtime; + } + + public void setUploadtime(Date uploadtime) { + this.uploadtime = uploadtime; + } + + public String getDescribe() { + return describe; + } + + public void setDescribe(String describe) { + this.describe = describe; + } + + public byte[] getPhoto() { + return photo; + } + + public void setPhoto(byte[] photo) { + this.photo = photo; + } + +} diff --git a/src/main/java/com/cetc32/dh/beans/LoginParameter.java b/src/main/java/com/cetc32/dh/beans/LoginParameter.java index 66a1a741f6ae807d561a0439afbb92b461270470..14270aa1ae71cfff9ddb893986e653fe0562e396 100644 --- a/src/main/java/com/cetc32/dh/beans/LoginParameter.java +++ b/src/main/java/com/cetc32/dh/beans/LoginParameter.java @@ -4,6 +4,7 @@ public class LoginParameter { private String username; private String password; + public String getUsername() { return username; } @@ -19,4 +20,5 @@ public class LoginParameter { public void setPassword(String password) { this.password = password; } + } diff --git a/src/main/java/com/cetc32/dh/beans/LoginResult.java b/src/main/java/com/cetc32/dh/beans/LoginResult.java index c3c74505eee4501b16cbab52c44e5e14fe17c7b5..968dee56e5c0ee465e8199ef0432d321f790e7bc 100644 --- a/src/main/java/com/cetc32/dh/beans/LoginResult.java +++ b/src/main/java/com/cetc32/dh/beans/LoginResult.java @@ -16,6 +16,7 @@ public class LoginResult { private List areacode; private long expriation; + public String getToken() { return token; } diff --git a/src/main/java/com/cetc32/dh/beans/ResultDataCollected.java b/src/main/java/com/cetc32/dh/beans/ResultDataCollected.java new file mode 100644 index 0000000000000000000000000000000000000000..2c0692d9770d790da162ba7c1c22f9c454ff09ff --- /dev/null +++ b/src/main/java/com/cetc32/dh/beans/ResultDataCollected.java @@ -0,0 +1,76 @@ +package com.cetc32.dh.beans; + + +import com.alibaba.fastjson.annotation.JSONField; + +import java.util.Date; + +public class ResultDataCollected { + private Integer userid; + private String eventtype; + private String points; + private String cityname; + private Date uploadtime; + private String describe; + private String photopath; + + + + public String getPhotopath() { + return photopath; + } + + public void setPhotopath(String photopath) { + this.photopath = photopath; + } + + + public Integer getUserid() { + return userid; + } + + public void setUserid(Integer userid) { + this.userid = userid; + } + + public String getEventtype() { + return eventtype; + } + + public void setEventtype(String eventtype) { + this.eventtype = eventtype; + } + + public String getPoints() { + return points; + } + + public void setPoints(String points) { + this.points = points; + } + + public String getCityname() { + return cityname; + } + + public void setCityname(String cityname) { + this.cityname = cityname; + } + + public Date getUploadtime() { + return uploadtime; + } + + public void setUploadtime(Date uploadtime) { + this.uploadtime = uploadtime; + } + + public String getDescribe() { + return describe; + } + + public void setDescribe(String describe) { + this.describe = describe; + } + +} diff --git a/src/main/java/com/cetc32/dh/controller/rest/AuthController.java b/src/main/java/com/cetc32/dh/controller/rest/AuthController.java index 762aba9c30e30ae03a776a964c72f0d5e9108298..d02caf82c4751160b2205351142211e7c1641cc9 100644 --- a/src/main/java/com/cetc32/dh/controller/rest/AuthController.java +++ b/src/main/java/com/cetc32/dh/controller/rest/AuthController.java @@ -11,6 +11,7 @@ package com.cetc32.dh.controller.rest; import com.cetc32.dh.beans.LoginParameter; import com.cetc32.dh.beans.LoginResult; +import com.cetc32.dh.beans.ResultUserInfo; import com.cetc32.dh.beans.UserInfo; import com.cetc32.dh.common.response.ResponseData; import com.cetc32.dh.common.response.ResponseResult; @@ -66,7 +67,7 @@ public class AuthController { /** * 用户登陆 * @param loginParameter "包含username和password的json字符串" - * @return ResponseResult + * @return ResponseData * 备注:无 */ @ApiOperation(value = "用户登录验证,并返回用户相应角色", notes = "") @@ -90,7 +91,6 @@ public class AuthController { long currentTimeMillis = System.currentTimeMillis(); String token= JWTUtil.createToken(username,currentTimeMillis); redisUtil.set(username,currentTimeMillis,60*30); - long t=JWTUtil.getExpire(token); LoginResult data=new LoginResult(token, user.getDepartment(), username, @@ -238,33 +238,83 @@ public class AuthController { @ApiOperation(value = "获取角色列表", notes = "") @GetMapping(value = "/roles") - public ResponseResult getRoles(){ - return ResponseResult.success(adminRoleService.getAllRoles()); + public ResponseData getRoles(){ + return ResponseData.success(adminRoleService.getAllRoles()); } + /** - * 非授权用户登陆 - * @param message - * @return ResponseResult + * 注销 + * @param token + * @return ResponseData * 备注:无 */ - @PostMapping(path = "/unauthorized/{message}") - public ResponseResult unauthorized(@PathVariable String message) throws UnsupportedEncodingException { - return ResponseResult.fail(message); + @ApiOperation(value = "用户登出", notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(name = "token", value = "登陆成功返回的token", paramType = "String"), + }) + @PostMapping("/logout") + public ResponseData logout(String token){ + if(token!=null) + { + String username=JWTUtil.getUsername(token); + redisUtil.del(username); + } + return ResponseData.success(); } + /** * 注销 - * @param request + * @param token + * @return ResponseData + * 备注:无 + */ + @ApiOperation(value = "token校验", notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(name = "token", value = "登陆成功返回的token", paramType = "String"), + }) + @PostMapping("/token") + public ResponseData token(String token){ + if(token!=null ) + { + String username=JWTUtil.getUsername(token); + if(username!=null && JWTUtil.verify(token)) + { + BaseAdminUser user= userService.findByUserName(username); + if(user!=null) + { + long currentTimeMillis = System.currentTimeMillis(); + long exp=JWTUtil.getExpire(token); + if(exp0) + { + return ResponseData.success(); + } + return ResponseData.error("上报失败!"); + + } + + @ApiOperation(value = "采集数据上报") + @PostMapping("/collection") + public ResponseData DataCollection(@RequestBody DataCollected data) { + if(dataPlpService.insertCollected(data)>0) + { + return ResponseData.success(); + } + return ResponseData.error("上报失败!"); + + } + + @ApiOperation(value = "数据获取",notes = "数据获取获取指定时间空间数据") + @GetMapping(value = "/ploygon") + public ResponseData DataPloygon(@RequestBody Map map) { + SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" ); + Date startTime; + Date endTime; + try { + startTime=map.get("starttime")==null?null:sdf.parse((String)map.get("starttime")); + endTime=map.get("endtime")==null?null:sdf.parse((String)map.get("endtime")); + } catch (ParseException e) { + + return ResponseData.error("日期格式有误(允许格式为:yyyy-MM-dd)"); + } + String polygon=map.get("polygon")==null?null:(String) map.get("polygon"); + if(polygon==null || polygon.length()==0) + { + return ResponseData.error("参数 polygon 不能为空"); + } + return ResponseData.success(dataPlpService.selectPloygon(startTime,endTime,polygon)); + } + + + + + + // /** // * @param page 页码 diff --git a/src/main/java/com/cetc32/dh/entity/DataFile.java b/src/main/java/com/cetc32/dh/entity/DataFile.java index c47e76fa9bbb69f663e9a680646b03d911a2d1c3..20024c99cf46e30402bb5995a84ce9296adb8c01 100644 --- a/src/main/java/com/cetc32/dh/entity/DataFile.java +++ b/src/main/java/com/cetc32/dh/entity/DataFile.java @@ -59,6 +59,7 @@ public class DataFile extends NumberS { this.fileConfig = fileConfig; this.approveTime = approveTime; } + /** * 数据id,文件(夹)id */ @@ -188,6 +189,17 @@ public class DataFile extends NumberS { @Column(name = "approve_time") private Date approveTime; + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + @Column(name = "area") + private String area; + Integer userId; diff --git a/src/main/java/com/cetc32/dh/mybatis/DataFileMapper.java b/src/main/java/com/cetc32/dh/mybatis/DataFileMapper.java index 4497d0885c6ef0190c7900355008133cc95a308c..cd5556792ce9e65d4523cfc2ef7f3aa8e1198ef1 100644 --- a/src/main/java/com/cetc32/dh/mybatis/DataFileMapper.java +++ b/src/main/java/com/cetc32/dh/mybatis/DataFileMapper.java @@ -3,10 +3,12 @@ package com.cetc32.dh.mybatis; import com.cetc32.dh.entity.DataFile; import com.cetc32.dh.entity.DataSubmit; import com.cetc32.dh.entity.VfileMenu; +import io.swagger.models.auth.In; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import tk.mybatis.mapper.common.Mapper; +import java.security.PublicKey; import java.util.Date; import java.util.List; @@ -15,6 +17,7 @@ public interface DataFileMapper extends Mapper { public Integer countAll(); public Integer insertOne(DataFile dataFile); + public Integer insertGain(DataFile dataFile); public Integer updateById(DataFile dataFile); diff --git a/src/main/java/com/cetc32/dh/mybatis/DataPlpMapper.java b/src/main/java/com/cetc32/dh/mybatis/DataPlpMapper.java index 5b401381d4dc6d24444dd9ecf684417aa99629ee..0d6da0bb89bddd8f29b486e34ca905856c93198a 100644 --- a/src/main/java/com/cetc32/dh/mybatis/DataPlpMapper.java +++ b/src/main/java/com/cetc32/dh/mybatis/DataPlpMapper.java @@ -1,18 +1,28 @@ package com.cetc32.dh.mybatis; +import com.cetc32.dh.beans.DataCollected; +import com.cetc32.dh.beans.ResultDataCollected; import com.cetc32.dh.entity.DataFile; import com.cetc32.dh.entity.DataPlp; import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; import tk.mybatis.mapper.common.Mapper; import java.util.Date; import java.util.List; +@Repository public interface DataPlpMapper extends Mapper { public Integer countAll(); public Integer insertOne(DataPlp dataPlp); + public Integer insertCollected(DataCollected data); + + public List selectPloygon(@Param("startTime") Date startTime, + @Param("endTime") Date endTime, + @Param("polygon") String polygon); + public Integer updateById(DataPlp dataPlp); public Integer deleteById(Integer id); diff --git a/src/main/java/com/cetc32/dh/service/DataFileService.java b/src/main/java/com/cetc32/dh/service/DataFileService.java index 5b49c8d46c30e1ffb88f0149a8125149aef7e5fa..d685db7bfad6eede5ef3d349c6b34576590ea596 100644 --- a/src/main/java/com/cetc32/dh/service/DataFileService.java +++ b/src/main/java/com/cetc32/dh/service/DataFileService.java @@ -29,6 +29,8 @@ public interface DataFileService { public Integer insertDataFile(DataFile dataFile); + public Integer insertGain(DataFile dataFile); + public Integer updatebyId(DataFile dataFile); public Integer deleteById(Long id); diff --git a/src/main/java/com/cetc32/dh/service/DataPlpServices.java b/src/main/java/com/cetc32/dh/service/DataPlpServices.java new file mode 100644 index 0000000000000000000000000000000000000000..4416618099b2f607bb0e9d85315ec833b8434fca --- /dev/null +++ b/src/main/java/com/cetc32/dh/service/DataPlpServices.java @@ -0,0 +1,14 @@ +package com.cetc32.dh.service; + +import com.cetc32.dh.beans.DataCollected; +import com.cetc32.dh.beans.ResultDataCollected; + + +import java.util.Date; +import java.util.List; + +public interface DataPlpServices { + public Integer insertCollected(DataCollected data); + + public List selectPloygon(Date startTime, Date endTime, String polygon); +} diff --git a/src/main/java/com/cetc32/dh/service/impl/DataFileServiceImpl.java b/src/main/java/com/cetc32/dh/service/impl/DataFileServiceImpl.java index 077889f93801e84224d2f1b14e1d54969d9f0766..c0c87b675347264b914e5d32ec895106f6a66c2d 100644 --- a/src/main/java/com/cetc32/dh/service/impl/DataFileServiceImpl.java +++ b/src/main/java/com/cetc32/dh/service/impl/DataFileServiceImpl.java @@ -57,6 +57,17 @@ public class DataFileServiceImpl implements DataFileService { return dataFileMapper.insertOne(dataFile); } + /** + * 成果数据上报 + * @param dataFile + * @return Integer + */ + @Override + public Integer insertGain(DataFile dataFile){ + return dataFileMapper.insertGain(dataFile); + } + + /** * 更新文件 * @param dataFile diff --git a/src/main/java/com/cetc32/dh/service/impl/DataPlpServiceImpl.java b/src/main/java/com/cetc32/dh/service/impl/DataPlpServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..df18c0d2193e3ec7f6699f05cc0ad888426103fb --- /dev/null +++ b/src/main/java/com/cetc32/dh/service/impl/DataPlpServiceImpl.java @@ -0,0 +1,29 @@ +package com.cetc32.dh.service.impl; + +import com.cetc32.dh.beans.DataCollected; +import com.cetc32.dh.beans.ResultDataCollected; +import com.cetc32.dh.mybatis.DataPlpMapper; +import com.cetc32.dh.service.DataPlpServices; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; + + +@Service +public class DataPlpServiceImpl implements DataPlpServices { + + @Autowired + DataPlpMapper dataPlpMapper; + + @Override + public Integer insertCollected(DataCollected data) { + return dataPlpMapper.insertCollected(data); + } + @Override + public List selectPloygon(Date startTime, Date endTime, String polygon) + { + return dataPlpMapper.selectPloygon(startTime,endTime,polygon); + } +} diff --git a/src/main/resources/mapper/DataFileMapper.xml b/src/main/resources/mapper/DataFileMapper.xml index 39545774b55383db3548d90b43576c63a0e75b23..801a4a48f0d24bd26aae0c6554967d7d43c98ce4 100644 --- a/src/main/resources/mapper/DataFileMapper.xml +++ b/src/main/resources/mapper/DataFileMapper.xml @@ -28,6 +28,7 @@ + + select userid,file_type as eventtype,points,region as cityname,create_time as uploadtime,description as describe,photo_byte from data_plp + where 1 = 1 + + and create_time >= #{startTime} + + + and create_time <= #{endTime} + + + and points = #{polygon} + + + update data_plp