From 399b4143dcdec884586df110f41f578df7c7ac8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B8=B8=E7=86=9F=E5=90=B4=E5=BD=A6=E7=A5=96?= Date: Fri, 27 Mar 2026 15:05:14 +0800 Subject: [PATCH] =?UTF-8?q?feat(board):=20=E6=96=B0=E5=A2=9E=E7=9C=8B?= =?UTF-8?q?=E6=9D=BF=E5=8A=9F=E8=83=BD=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建 BoardController 提供看板接口服务 - 实现 BoardService 和 BoardServiceImpl 业务逻辑 - 添加 BoardMapper 数据访问层及对应 XML 映射文件 - 在 IfsCallErrorLogData 实体类中增加 number 字段 - 修改 LabelQueryMapper.xml 中的 epc 更新逻辑为日期格式 - 配置 Shiro 权限允许匿名访问看板接口 --- .../java/com/gaotao/config/ShiroConfig.java | 1 + .../api/entity/IfsCallErrorLogData.java | 2 + .../base/controller/BoardController.java | 26 ++++++++++ .../modules/base/mapper/BoardMapper.java | 13 +++++ .../modules/base/service/BoardService.java | 7 +++ .../base/service/Impl/BoardServiceImpl.java | 48 +++++++++++++++++++ .../resources/mapper/base/BoardMapper.xml | 18 +++++++ .../mapper/warehouse/LabelQueryMapper.xml | 4 +- 8 files changed, 117 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/gaotao/modules/base/controller/BoardController.java create mode 100644 src/main/java/com/gaotao/modules/base/mapper/BoardMapper.java create mode 100644 src/main/java/com/gaotao/modules/base/service/BoardService.java create mode 100644 src/main/java/com/gaotao/modules/base/service/Impl/BoardServiceImpl.java create mode 100644 src/main/resources/mapper/base/BoardMapper.xml diff --git a/src/main/java/com/gaotao/config/ShiroConfig.java b/src/main/java/com/gaotao/config/ShiroConfig.java index 079af5e..8bbb49f 100644 --- a/src/main/java/com/gaotao/config/ShiroConfig.java +++ b/src/main/java/com/gaotao/config/ShiroConfig.java @@ -42,6 +42,7 @@ public class ShiroConfig { shiroFilter.setFilters(filters); Map filterMap = new LinkedHashMap<>(); + filterMap.put("/board/**", "anon");//看板 filterMap.put("/webjars/**", "anon"); filterMap.put("/druid/**", "anon"); filterMap.put("/app/**", "anon"); diff --git a/src/main/java/com/gaotao/modules/api/entity/IfsCallErrorLogData.java b/src/main/java/com/gaotao/modules/api/entity/IfsCallErrorLogData.java index d7f3700..3cce35a 100644 --- a/src/main/java/com/gaotao/modules/api/entity/IfsCallErrorLogData.java +++ b/src/main/java/com/gaotao/modules/api/entity/IfsCallErrorLogData.java @@ -52,4 +52,6 @@ public class IfsCallErrorLogData extends IfsCallErrorLog { */ @TableField(exist = false) private java.util.List ids; + + private int number; } diff --git a/src/main/java/com/gaotao/modules/base/controller/BoardController.java b/src/main/java/com/gaotao/modules/base/controller/BoardController.java new file mode 100644 index 0000000..80df91a --- /dev/null +++ b/src/main/java/com/gaotao/modules/base/controller/BoardController.java @@ -0,0 +1,26 @@ +package com.gaotao.modules.base.controller; + +import com.gaotao.modules.api.entity.IfsCallErrorLogData; +import com.gaotao.modules.base.service.BoardService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +@RestController +@RequestMapping("/board") +public class BoardController { + @Autowired + private BoardService boardService; + @PostMapping("/ifsCallErrorLogBoard") + public Object ifsCallErrorLogBoard(@RequestBody IfsCallErrorLogData inData){ + Map map =boardService.ifsCallErrorLogBoard(inData.getNumber()); + map.put("code",200); + map.put("msg", "success"); + return map; + // return R.ok().put("rows", list).put("total",list.size()); + } +} diff --git a/src/main/java/com/gaotao/modules/base/mapper/BoardMapper.java b/src/main/java/com/gaotao/modules/base/mapper/BoardMapper.java new file mode 100644 index 0000000..3b40ed1 --- /dev/null +++ b/src/main/java/com/gaotao/modules/base/mapper/BoardMapper.java @@ -0,0 +1,13 @@ +package com.gaotao.modules.base.mapper; + +import com.gaotao.modules.api.entity.IfsCallErrorLogData; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.Date; +import java.util.List; + +@Mapper +public interface BoardMapper { + List ifsCallErrorLogBoard(@Param("site") String site, @Param("startDate") Date startDate); +} diff --git a/src/main/java/com/gaotao/modules/base/service/BoardService.java b/src/main/java/com/gaotao/modules/base/service/BoardService.java new file mode 100644 index 0000000..60235c3 --- /dev/null +++ b/src/main/java/com/gaotao/modules/base/service/BoardService.java @@ -0,0 +1,7 @@ +package com.gaotao.modules.base.service; + +import java.util.Map; + +public interface BoardService { + Map ifsCallErrorLogBoard(int pageIndex); +} diff --git a/src/main/java/com/gaotao/modules/base/service/Impl/BoardServiceImpl.java b/src/main/java/com/gaotao/modules/base/service/Impl/BoardServiceImpl.java new file mode 100644 index 0000000..edf4942 --- /dev/null +++ b/src/main/java/com/gaotao/modules/base/service/Impl/BoardServiceImpl.java @@ -0,0 +1,48 @@ +package com.gaotao.modules.base.service.Impl; + +import com.gaotao.common.utils.DateUtil; +import com.gaotao.modules.api.entity.IfsCallErrorLogData; +import com.gaotao.modules.base.mapper.BoardMapper; +import com.gaotao.modules.base.service.BoardService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.*; + +@Service +public class BoardServiceImpl implements BoardService { + @Autowired + private BoardMapper boardMapper; + @Override + public Map ifsCallErrorLogBoard(int pageIndex){ + int kanbannum=18; + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.HOUR_OF_DAY, -24); // 减去24小时 + Date date24HoursAgo = calendar.getTime(); + List list =boardMapper.ifsCallErrorLogBoard("55",date24HoursAgo); + double number=list.size(); + int maxPage=(int)Math.ceil(number/kanbannum); + if(pageIndex>maxPage){ + pageIndex=1; + } + List result =new ArrayList<>(); + if(pageIndex map = new HashMap<>(); + map.put("maxPage", maxPage); + map.put("rows", result); + map.put("total",result.size()); + return map; + } + +} diff --git a/src/main/resources/mapper/base/BoardMapper.xml b/src/main/resources/mapper/base/BoardMapper.xml new file mode 100644 index 0000000..605d0f1 --- /dev/null +++ b/src/main/resources/mapper/base/BoardMapper.xml @@ -0,0 +1,18 @@ + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/warehouse/LabelQueryMapper.xml b/src/main/resources/mapper/warehouse/LabelQueryMapper.xml index f984092..a64af64 100644 --- a/src/main/resources/mapper/warehouse/LabelQueryMapper.xml +++ b/src/main/resources/mapper/warehouse/LabelQueryMapper.xml @@ -229,7 +229,7 @@ UPDATE handling_unit - SET in_stock_flag = 'N', epc = '*' + SET in_stock_flag = 'N', epc = CONVERT(VARCHAR(8), GETDATE(), 112) WHERE unit_id NOT IN (SELECT serial_no FROM pallet_detail) AND in_stock_flag = 'Y' AND site = #{site} @@ -239,7 +239,7 @@ UPDATE handling_unit SET in_stock_flag = 'Y', epc = '' - WHERE epc = '*' + WHERE epc = CONVERT(VARCHAR(8), GETDATE(), 112) AND in_stock_flag = 'N' AND site = #{site}