From a447322089cdb914d495c701b556fad635fc836a Mon Sep 17 00:00:00 2001 From: "DESKTOP-4U0TDEF\\20371" <2037158277@qq.com> Date: Fri, 16 Jul 2021 09:21:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E5=88=86=E9=85=8D?= =?UTF-8?q?=E7=81=AB=E7=82=B9=E4=BB=BB=E5=8A=A1=EF=BC=8C=E6=8A=A4=E6=9E=97?= =?UTF-8?q?=E5=91=98=E6=9F=A5=E7=9C=8B=E7=81=AB=E7=82=B9=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=EF=BC=8C=E6=9F=A5=E8=AF=A2=E6=A0=B8=E6=9F=A5=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FireAndRangerController.java | 13 ++-- .../java/com/xkrs/dao/FireAndRangerDao.java | 3 +- .../xkrs/service/FireAndRangerService.java | 8 +- .../impl/FireAndRangerServiceImpl.java | 73 ++++++++++--------- 4 files changed, 50 insertions(+), 47 deletions(-) diff --git a/src/main/java/com/xkrs/controller/FireAndRangerController.java b/src/main/java/com/xkrs/controller/FireAndRangerController.java index dfb1168..9993b1d 100644 --- a/src/main/java/com/xkrs/controller/FireAndRangerController.java +++ b/src/main/java/com/xkrs/controller/FireAndRangerController.java @@ -1,7 +1,6 @@ package com.xkrs.controller; import com.xkrs.service.FireAndRangerService; -import com.xkrs.utils.Result; import org.springframework.security.access.annotation.Secured; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @@ -25,9 +24,9 @@ public class FireAndRangerController { * @param token * @return */ - @PreAuthorize("hasAnyRole('ROLE_city','ROLE_county')") + @PreAuthorize("hasAnyAuthority('auth_general_user')") @PostMapping("/addFireAndRanger") - public Result addFireAndRanger(@RequestBody Map map, @RequestHeader(value="Authorization") String token) throws UnsupportedEncodingException { + public String addFireAndRanger(@RequestBody Map map, @RequestHeader(value="Authorization") String token) throws UnsupportedEncodingException { String rangerName = (String) map.get("rangerName"); String fireCode = (String) map.get("fireCode"); String handler = (String) map.get("handler"); @@ -40,9 +39,9 @@ public class FireAndRangerController { * @param token * @return */ - @Secured("ROLE_ranger") + @PreAuthorize("hasAnyAuthority('auth_general_user')") @GetMapping("/selectFireInformation") - public Result selectFireInformation(@RequestHeader(value="Authorization") String token){ + public String selectFireInformation(@RequestHeader(value="Authorization") String token){ return fireAndRangerService.selectFireInformation(token); } @@ -51,9 +50,9 @@ public class FireAndRangerController { * @param map * @return */ - @PreAuthorize("hasAnyRole('ROLE_city','ROLE_county')") + @PreAuthorize("hasAnyAuthority('auth_general_user')") @PostMapping("/findFireAndRanger") - public Result findFireAndRangerByFireCode(@RequestBody Map map, @RequestHeader(value="Authorization") String token) throws Exception { + public String findFireAndRangerByFireCode(@RequestBody Map map, @RequestHeader(value="Authorization") String token) throws Exception { String fireCode = (String) map.get("fireCode"); return fireAndRangerService.findFireAndRangerByFireCode(fireCode,token); } diff --git a/src/main/java/com/xkrs/dao/FireAndRangerDao.java b/src/main/java/com/xkrs/dao/FireAndRangerDao.java index 52c0337..e8f1ed1 100644 --- a/src/main/java/com/xkrs/dao/FireAndRangerDao.java +++ b/src/main/java/com/xkrs/dao/FireAndRangerDao.java @@ -1,6 +1,6 @@ package com.xkrs.dao; -import com.xkrs.entity.FireAndRanger; +import com.xkrs.model.entity.FireAndRanger; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Modifying; @@ -23,6 +23,7 @@ public interface FireAndRangerDao extends JpaRepository, Jpa /** * 根据护林员手机号查询 * @param rangerName + * @param progressType * @return */ FireAndRanger findByRangerNameAndProgressType(String rangerName, String progressType); diff --git a/src/main/java/com/xkrs/service/FireAndRangerService.java b/src/main/java/com/xkrs/service/FireAndRangerService.java index 76b3b04..9edd104 100644 --- a/src/main/java/com/xkrs/service/FireAndRangerService.java +++ b/src/main/java/com/xkrs/service/FireAndRangerService.java @@ -1,7 +1,5 @@ package com.xkrs.service; -import com.xkrs.utils.Result; - import java.io.UnsupportedEncodingException; /** @@ -18,19 +16,19 @@ public interface FireAndRangerService { * @param verifier * @return */ - Result addFireAndRanger(String rangerName, String fireCode, String handler, String verifier, String token) throws UnsupportedEncodingException; + String addFireAndRanger(String rangerName, String fireCode, String handler, String verifier, String token) throws UnsupportedEncodingException; /** * 护林员查看自己的火点任务 * @param token * @return */ - Result selectFireInformation(String token); + String selectFireInformation(String token); /** * 根据火点编码查询处理的信息 * @param fireCode * @return */ - Result findFireAndRangerByFireCode(String fireCode, String token) throws Exception; + String findFireAndRangerByFireCode(String fireCode, String token) throws Exception; } diff --git a/src/main/java/com/xkrs/service/impl/FireAndRangerServiceImpl.java b/src/main/java/com/xkrs/service/impl/FireAndRangerServiceImpl.java index 2bacc77..694d69c 100644 --- a/src/main/java/com/xkrs/service/impl/FireAndRangerServiceImpl.java +++ b/src/main/java/com/xkrs/service/impl/FireAndRangerServiceImpl.java @@ -2,15 +2,20 @@ package com.xkrs.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.xkrs.common.encapsulation.PromptMessageEnum; +import com.xkrs.common.tool.TokenUtil; import com.xkrs.dao.*; -import com.xkrs.entity.*; +import com.xkrs.model.entity.*; +import com.xkrs.model.vo.AppPhotoVo; +import com.xkrs.model.vo.AppTaskBodyVo; import com.xkrs.service.FireAndRangerService; -import com.xkrs.utils.*; -import com.xkrs.vo.AppPhotoVo; -import com.xkrs.vo.AppTaskBodyVo; +import com.xkrs.utils.DateTimeUtil; +import com.xkrs.utils.ObjectToBeanUtils; +import com.xkrs.utils.RestTemplateUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cglib.beans.BeanCopier; +import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.http.HttpHeaders; import org.springframework.stereotype.Service; @@ -21,8 +26,11 @@ import java.net.URLEncoder; import java.time.LocalDateTime; import java.util.HashMap; import java.util.List; +import java.util.Locale; import java.util.Map; +import static com.xkrs.common.encapsulation.OutputEncapsulation.outputEncapsulationObject; + /** * @author xkrs */ @@ -35,13 +43,13 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { private FireAndRangerDao fireAndRangerDao; @Resource - private ForestUserDao forestUserDao; + private SysUserDao sysUserDao; @Resource private FirePointDao firePointDao; @Resource - private XkRsForestRangerDao forestRangerDao; + private ForestRangerDao forestRangerDao; @Resource private RestTemplateUtil restTemplateUtil; @@ -60,22 +68,21 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { */ @Transactional(rollbackOn = Exception.class) @Override - public Result addFireAndRanger(String rangerName, String fireCode, String handler, String verifier, String token) throws UnsupportedEncodingException { + public String addFireAndRanger(String rangerName, String fireCode, String handler, String verifier, String token) throws UnsupportedEncodingException { + // 获取区域信息 + Locale locale = LocaleContextHolder.getLocale(); String tokenUserName = TokenUtil.getTokenUserName(token); - if(tokenUserName == null || "".equals(tokenUserName)){ - return Result.error("您还未注册和登录,请先注册和登录!"); - } FireAndRanger byFireCode = fireAndRangerDao.findByFireCode(fireCode); if(byFireCode != null){ - return Result.error("该火点已经分配,请勿重复操作"); + return outputEncapsulationObject(PromptMessageEnum.PROCESS_FAIL,"该火点已经分配,请勿重复操作",locale); } - XkRsFirePoint byFireCode1 = firePointDao.findByFireCode(fireCode); + FirePointEntity byFireCode1 = firePointDao.findByFireCode(fireCode); // 给app端推送的消息内容 Map map = new HashMap(3); map.put("latitude",byFireCode1.getLatitude()); map.put("longitude",byFireCode1.getLongitude()); - map.put("detailedAddress",byFireCode1.getDetailedAddress()); + map.put("detailedAddress",byFireCode1.getFirePointAddress()); String content = JSON.toJSONString(map); String ss = URLEncoder.encode(content,"utf-8"); @@ -83,7 +90,7 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { String url = "https://api.xmpush.xiaomi.com/v3/message/alias?title=收到消息&description=请"+verifier+"去核查该火点信息&payload="+ss+"&restricted_package_name=com.xkrs.fieldverification¬ify_id=2&extra.notify_effect=2&extra.intent_uri=fieldverify://xkrs.com&alias="+rangerName+"&extra.notify_foreground=0&extra.channel_id=mipush"; - String time = LocalDateTimeUtil.localDateTime2String(LocalDateTime.now()); + String time = DateTimeUtil.dateTimeToString(LocalDateTime.now()); FireAndRanger fireAndRanger = new FireAndRanger(); fireAndRanger.setRangerName(rangerName); fireAndRanger.setFireCode(fireCode); @@ -103,9 +110,9 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { FireAndRanger save = fireAndRangerDao.save(fireAndRanger); if(save == null){ - return Result.error("操作失败"); + return outputEncapsulationObject(PromptMessageEnum.PROCESS_FAIL,"操作失败",locale); } - return Result.ok("操作成功"); + return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"操作成功",locale); } /** @@ -114,22 +121,21 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { * @return */ @Override - public Result selectFireInformation(String token) { + public String selectFireInformation(String token) { + // 获取区域信息 + Locale locale = LocaleContextHolder.getLocale(); String tokenUserName = TokenUtil.getTokenUserName(token); - if(tokenUserName == null || "".equals(tokenUserName)){ - return Result.error("您还未注册和登录,请先注册和登录!"); - } - XkRsUser xkRsUser = forestUserDao.selectUserName(tokenUserName); - XkRsForestRanger byRangerPhone = forestRangerDao.findByRangerPhone(xkRsUser.getNickName()); + SysUserEntity sysUserEntity = sysUserDao.selectByUserName(tokenUserName); + ForestRanger byRangerPhone = forestRangerDao.findByRangerPhone(sysUserEntity.getUserName()); if(byRangerPhone.getRangerType().equals("1")){ - FireAndRanger byRangerName = fireAndRangerDao.findByRangerNameAndProgressType(xkRsUser.getNickName(),"1"); + FireAndRanger byRangerName = fireAndRangerDao.findByRangerNameAndProgressType(sysUserEntity.getUserName(),"1"); if(byRangerName == null){ - return Result.error("暂时还没有任何任务"); + return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"暂时还没有任何任务",locale); } - XkRsFirePoint byFireCode = firePointDao.findByFireCode(byRangerName.getFireCode()); - return Result.ok(byFireCode); + FirePointEntity byFireCode = firePointDao.findByFireCode(byRangerName.getFireCode()); + return outputEncapsulationObject(PromptMessageEnum.SUCCESS,byFireCode,locale); }else { - return Result.error("暂时还没有任务"); + return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"暂时还没有任何任务",locale); } } @@ -140,21 +146,20 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { * @return */ @Override - public Result findFireAndRangerByFireCode(String fireCode, String token) throws Exception { + public String findFireAndRangerByFireCode(String fireCode, String token) throws Exception { + // 获取区域信息 + Locale locale = LocaleContextHolder.getLocale(); String tokenUserName = TokenUtil.getTokenUserName(token); - if(tokenUserName == null || "".equals(tokenUserName)){ - return Result.error("您还未注册和登录,请先注册和登录!"); - } FireAndRanger byFireCode = fireAndRangerDao.findByFireCode(fireCode); if(byFireCode == null){ - return Result.error("暂时还没有该火点核查的信息"); + return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"暂时还没有该火点的核查信息",locale); } Map map = new HashMap(3); map.put("fire",byFireCode); FireTask byTaskFireCode = fireTaskDao.findByTaskFireCode(fireCode); if(byTaskFireCode == null){ map.put("task",null); - return Result.ok().data(map); + return outputEncapsulationObject(PromptMessageEnum.SUCCESS,map,locale); }else { AppTaskBodyVo appTaskBodyVo = new AppTaskBodyVo(); // 做映射,返回vo类对象 @@ -165,7 +170,7 @@ public class FireAndRangerServiceImpl implements FireAndRangerService { List appPhotoVos = ObjectToBeanUtils.objectToBean(photoPath, AppPhotoVo.class); appTaskBodyVo.setTaskFirePhoto(appPhotoVos); map.put("task",appTaskBodyVo); - return Result.ok().data(map); + return outputEncapsulationObject(PromptMessageEnum.SUCCESS,map,locale); } } }