From 9a4ae6ecf6b9869f7d2b5898ca6ea3bdb633ed12 Mon Sep 17 00:00:00 2001 From: haozq <1611483981@qq.com> Date: Wed, 7 Aug 2024 10:18:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=8B=E7=8E=AF=E7=AE=B1?= =?UTF-8?q?=E5=AD=90id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bonus/app/entity/BoxEntity.java | 2 + .../com/bonus/app/entity/BraceletEntity.java | 22 ++++++- .../gateway/config/ContextPathConfig.java | 39 ++++++++++++ .../com/bonus/gateway/filter/AuthFilter.java | 2 +- .../src/main/resources/bootstrap.yml | 2 +- .../app/controller/BraceletController.java | 19 ++++-- .../app/controller/DevUseController.java | 3 + .../com/bonus/app/mapper/BraceletMapper.java | 10 +++ .../bonus/app/service/BraceletService.java | 10 ++- .../app/service/BraceletServiceImpl.java | 61 +++++++++++++++++-- .../main/resources/mapper/BraceletMapper.xml | 31 ++++++++-- .../mapper/bracelet/BraceletMapper.xml | 26 ++++---- 12 files changed, 197 insertions(+), 30 deletions(-) create mode 100644 bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java diff --git a/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BoxEntity.java b/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BoxEntity.java index 1799859..59b31f6 100644 --- a/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BoxEntity.java +++ b/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BoxEntity.java @@ -28,4 +28,6 @@ public class BoxEntity { private long teamId; + + private String curryDay; } diff --git a/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BraceletEntity.java b/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BraceletEntity.java index 17242e3..0055dc0 100644 --- a/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BraceletEntity.java +++ b/bonus-common/bonus-common-entity/src/main/java/com/bonus/app/entity/BraceletEntity.java @@ -26,8 +26,26 @@ public class BraceletEntity { * 用户id */ private String userId; - - + /** + * 设备id + */ + private String devId; + /** + * 手机号码 + */ + private String phone; + /** + * 身份证号码 + */ + private String idCard; + /** + * 人员类型 + */ + private String userType; + /** + * 手环编号 + */ + private String shCode; } diff --git a/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java b/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java new file mode 100644 index 0000000..476ae17 --- /dev/null +++ b/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java @@ -0,0 +1,39 @@ +package com.bonus.gateway.config; + +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.autoconfigure.web.ServerProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.Ordered; +import org.springframework.core.annotation.Order; +import org.springframework.http.HttpStatus; +import org.springframework.http.server.reactive.ServerHttpRequest; +import org.springframework.web.server.ResponseStatusException; +import org.springframework.web.server.WebFilter; + +@Configuration +public class ContextPathConfig { + + @Bean + @ConditionalOnProperty("server.servlet.context-path") + @Order(Ordered.HIGHEST_PRECEDENCE) + public WebFilter contextPathWebFilter(ServerProperties serverProperties){ + String contextPath = serverProperties.getServlet().getContextPath(); + return (serverWebExchange, webFilterChain) ->{ + ServerHttpRequest request = serverWebExchange.getRequest(); + String requestPath = request.getURI().getPath(); + + if(requestPath.contains(contextPath)){ + String newPath = requestPath.replaceFirst(contextPath+"/", ""); + ServerHttpRequest newRequest = request.mutate() + .path(newPath).build(); + return webFilterChain.filter(serverWebExchange.mutate() + .request(newRequest) + .build() + ); + }else { + throw new ResponseStatusException(HttpStatus.NOT_FOUND); + } + }; + } +} \ No newline at end of file diff --git a/bonus-gateway/src/main/java/com/bonus/gateway/filter/AuthFilter.java b/bonus-gateway/src/main/java/com/bonus/gateway/filter/AuthFilter.java index 1184a9e..3882d36 100644 --- a/bonus-gateway/src/main/java/com/bonus/gateway/filter/AuthFilter.java +++ b/bonus-gateway/src/main/java/com/bonus/gateway/filter/AuthFilter.java @@ -35,7 +35,7 @@ import java.util.concurrent.TimeUnit; public class AuthFilter implements GlobalFilter, Ordered { - @Value("${system.jie-enable}") + @Value("${system.jia-enable}") public boolean jaData; private static final Logger log = LoggerFactory.getLogger(AuthFilter.class); diff --git a/bonus-gateway/src/main/resources/bootstrap.yml b/bonus-gateway/src/main/resources/bootstrap.yml index 2225d83..63b777b 100644 --- a/bonus-gateway/src/main/resources/bootstrap.yml +++ b/bonus-gateway/src/main/resources/bootstrap.yml @@ -2,7 +2,7 @@ server: port: 18080 servlet: - context-path: zhgd + context-path: ljzhgd # Spring spring: application: diff --git a/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/BraceletController.java b/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/BraceletController.java index e972a5d..becfe1a 100644 --- a/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/BraceletController.java +++ b/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/BraceletController.java @@ -39,14 +39,25 @@ public class BraceletController extends BaseController{ @GetMapping("getBoxListById") @SysLog(title = "手环管理", businessType = OperaType.QUERY, module = "基础管理->手环管理", details = "查询手环列表") public AjaxResult getBoxListById(BoxEntity entity) { - List list = service.getBoxListById(entity); - return AjaxResult.success(list); + return service.getBoxListById(entity); + + } + + + /** + * 查询相关手环箱 + * 分配信息 + * @param entity + * @return + */ + @GetMapping("getBoxInfo") + @SysLog(title = "手环管理", businessType = OperaType.QUERY, module = "基础管理->手环管理", details = "查询手环列表") + public AjaxResult getBoxInfo(BoxEntity entity) { + return service.getBoxInfo(entity); } - - } diff --git a/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/DevUseController.java b/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/DevUseController.java index e10bb15..dd97694 100644 --- a/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/DevUseController.java +++ b/bonus-modules/bonus-app/src/main/java/com/bonus/app/controller/DevUseController.java @@ -1,4 +1,7 @@ package com.bonus.app.controller; +/** + * 设备领用信息 + */ public class DevUseController { } diff --git a/bonus-modules/bonus-app/src/main/java/com/bonus/app/mapper/BraceletMapper.java b/bonus-modules/bonus-app/src/main/java/com/bonus/app/mapper/BraceletMapper.java index 7642ec6..36acb68 100644 --- a/bonus-modules/bonus-app/src/main/java/com/bonus/app/mapper/BraceletMapper.java +++ b/bonus-modules/bonus-app/src/main/java/com/bonus/app/mapper/BraceletMapper.java @@ -1,9 +1,11 @@ package com.bonus.app.mapper; import com.bonus.app.entity.BoxEntity; +import com.bonus.app.entity.BraceletEntity; import org.apache.ibatis.annotations.Mapper; import java.util.List; +import java.util.Map; /** * 手环管理 数据层 @@ -16,4 +18,12 @@ public interface BraceletMapper { * @return */ List getBoxListById(BoxEntity entity); + + List getBoxInfo(BoxEntity entity); + + /** + * 查询手环信息 + * @param vo + */ + List> getBoxInfoDetails(BraceletEntity vo); } diff --git a/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletService.java b/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletService.java index 37d648c..f9fa80b 100644 --- a/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletService.java +++ b/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletService.java @@ -2,6 +2,7 @@ package com.bonus.app.service; import com.bonus.app.entity.BoxEntity; import com.bonus.app.entity.BraceletEntity; +import com.bonus.common.core.web.domain.AjaxResult; import org.springframework.stereotype.Service; import java.util.List; @@ -17,5 +18,12 @@ public interface BraceletService { * @param entity * @return */ - List getBoxListById(BoxEntity entity); + AjaxResult getBoxListById(BoxEntity entity); + + /** + * 查询当前手环箱 设备信息 + * @param entity + * @return + */ + AjaxResult getBoxInfo(BoxEntity entity); } diff --git a/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletServiceImpl.java b/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletServiceImpl.java index 9d74cea..9137db2 100644 --- a/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletServiceImpl.java +++ b/bonus-modules/bonus-app/src/main/java/com/bonus/app/service/BraceletServiceImpl.java @@ -4,14 +4,21 @@ import com.bonus.app.config.RoleConfig; import com.bonus.app.entity.BoxEntity; import com.bonus.app.entity.BraceletEntity; import com.bonus.app.mapper.BraceletMapper; +import com.bonus.common.core.utils.DateTimeHelper; +import com.bonus.common.core.utils.StringUtils; +import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.security.utils.SecurityUtils; import com.bonus.system.api.model.LoginUser; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; /** * app 接口实现层 @@ -23,17 +30,63 @@ public class BraceletServiceImpl implements BraceletService{ @Autowired private BraceletMapper mapper; @Override - public List getBoxListById(BoxEntity entity) { + public AjaxResult getBoxListById(BoxEntity entity) { try{ + if (!DateTimeHelper.getNowDay().equals(entity.getCurryDay())) { + return AjaxResult.error("请求参数不正确"); + } LoginUser loginUser= SecurityUtils.getLoginUser(); String teamCode=loginUser.getSysUser().getRoleCode(); entity.setRoleCode(teamCode); - entity.setTeamId(loginUser.getSysUser().getTeamId()); + if(ObjectUtils.isEmpty((loginUser.getSysUser().getTeamId()))){ + entity.setTeamId(-99999L); + }else{ + entity.setTeamId(loginUser.getSysUser().getTeamId()); + } List list=mapper.getBoxListById(entity); - return list; + return AjaxResult.success(list); }catch (Exception e){ log.error(e.toString()); } - return new ArrayList<>(); + return AjaxResult.error("系统异常"); + } + + /** + * 查询手环箱信息 + * @param entity + * @return + */ + @Override + public AjaxResult getBoxInfo(BoxEntity entity) { + try{ + if (StringUtils.isEmpty(entity.getBoxId())){ + return AjaxResult.error("请求参数不正确"); + } + //查询手环数据信息 + List list=mapper.getBoxInfo(entity); + ExecutorService executor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors()); + List> futures = new ArrayList<>(); + + for (BraceletEntity vo:list){ + CompletableFuture future = CompletableFuture.runAsync(() -> { + mapper.getBoxInfoDetails(vo); + + + }, executor); + + futures.add(future); + + } + //数据处理->查询属性值、高空作业信息 + // 等待所有任务完成 + CompletableFuture.allOf(futures.toArray(new CompletableFuture[0])).join(); + // 关闭ExecutorService + executor.shutdown(); + + + }catch (Exception e){ + log.error(e.toString()); + } + return AjaxResult.error("系统异常"); } } diff --git a/bonus-modules/bonus-app/src/main/resources/mapper/BraceletMapper.xml b/bonus-modules/bonus-app/src/main/resources/mapper/BraceletMapper.xml index 3aa042a..d4b98e7 100644 --- a/bonus-modules/bonus-app/src/main/resources/mapper/BraceletMapper.xml +++ b/bonus-modules/bonus-app/src/main/resources/mapper/BraceletMapper.xml @@ -2,11 +2,8 @@ - - - - select id boxId,box_name boxName FROM tb_sh_box WHERE team_id is not null @@ -14,4 +11,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and team_id=#{teamId} + + \ No newline at end of file diff --git a/bonus-modules/bonus-bracelet/src/main/resources/mapper/bracelet/BraceletMapper.xml b/bonus-modules/bonus-bracelet/src/main/resources/mapper/bracelet/BraceletMapper.xml index 0acee1b..2d53d7c 100644 --- a/bonus-modules/bonus-bracelet/src/main/resources/mapper/bracelet/BraceletMapper.xml +++ b/bonus-modules/bonus-bracelet/src/main/resources/mapper/bracelet/BraceletMapper.xml @@ -8,7 +8,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select tb.id as shId,tb.sh_code as shCode,sh_status as shStatus,tsb.box_name as shboxName, tsb.box_code as shboxCode,tb.peopel_type as shPersonType,tb.bid_id as shPersonId,tsb.id as shboxId from tb_bracelet tb - left join tb_sh_box tsb on tb.box_ix = tsb.id and tsb.del_flag = 0 + left join tb_sh_box tsb on tb.box_id = tsb.id and tsb.del_flag = 0 where tb.del_flag = 0 AND INSTR(tb.sh_code,#{shCode}) > 0 @@ -27,10 +27,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id as shId,sh_code as shCode from tb_bracelet - where box_ix is NULL and del_flag = 0 + where box_id is NULL and del_flag = 0 order by id ASC @@ -68,7 +68,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select tsb.id as shboxId, tsb.box_name as shboxName,tsb.box_code as shboxCode,tsb.box_capacity as shboxCapacity,count(tb.id) as shboxBindNum from tb_sh_box tsb - left join tb_bracelet tb on tsb.id = tb.box_ix and tb.del_flag = 0 + left join tb_bracelet tb on tsb.id = tb.box_id and tb.del_flag = 0 where tsb.del_flag = 0 AND (INSTR(tsb.box_name,#{keyword}) > 0 or @@ -111,7 +111,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" UPDATE tb_bracelet tb set - box_ix = #{shboxId}, + box_id = #{shboxId}, sh_status = #{shStatus},sh_code = #{shCode} where id = #{shId} @@ -163,7 +163,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" insert into tb_bracelet( - box_ix, + box_id, sh_code, sh_status, del_flag @@ -193,14 +193,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" UPDATE tb_bracelet - SET box_ix = #{shboxId},bid_time = now(),sh_status = 0 + SET box_id = #{shboxId},bid_time = now(),sh_status = 0 where id = #{shId} UPDATE tb_bracelet - SET box_ix = null,sh_status = 1 + SET box_id = null,sh_status = 1 where id = #{shId} @@ -228,7 +228,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"