From e1d4fb83b9017647923c03c403caf9d4bb627ad2 Mon Sep 17 00:00:00 2001 From: qjq <1766193529@qq.com> Date: Wed, 10 Apr 2024 17:18:29 +0800 Subject: [PATCH] =?UTF-8?q?ip=E8=8E=B7=E5=8F=96=E9=97=A8=E5=BA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/devuce/DevuceController.java | 10 ++-- .../dataobject/deviceInfo/DeviceInfoDO.java | 47 +++++++++++++++++++ .../mysql/deviceInfo/DeviceInfoMapper.java | 13 +++++ .../system/service/devuce/DevuceService.java | 13 +++-- .../service/devuce/DevuceServiceImpl.java | 37 ++++++++++++--- 5 files changed, 106 insertions(+), 14 deletions(-) create mode 100644 yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/deviceInfo/DeviceInfoDO.java create mode 100644 yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/deviceInfo/DeviceInfoMapper.java diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java index 76fe759e..1998c843 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java @@ -75,8 +75,8 @@ public class DevuceController { } @GetMapping("/list") @Operation(summary = "获得绑定的菜品") - public CommonResult getDevuceList(@RequestParam("sn")String sn){ - DishesDO devuceList = devuceService.getDevuceList(sn); + public CommonResult getDevuceList(){ + DishesDO devuceList = devuceService.getDevuceList(); return success(BeanUtils.toBean(devuceList, DishesRespVO.class)); } @GetMapping("/type") @@ -104,5 +104,9 @@ public class DevuceController { // ExcelUtils.write(response, "设备.xls", "数据", DevuceRespVO.class, // BeanUtils.toBean(list, DevuceRespVO.class)); // } - + @GetMapping("/carteen") + @Operation(summary = "根据ip获取门店id") + public CommonResult getCarteenId() { + return success(devuceService.getCarteenIdByIp()); + } } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/deviceInfo/DeviceInfoDO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/deviceInfo/DeviceInfoDO.java new file mode 100644 index 00000000..faa2f79a --- /dev/null +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/deviceInfo/DeviceInfoDO.java @@ -0,0 +1,47 @@ +package cn.iocoder.yudao.module.system.dal.dataobject.deviceInfo; + +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.*; + +/** + * @Author:qjq + * @Date:2024/4/10 下午4:37 + */ +@TableName("t_device_info") +@KeySequence("t_device_info_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class DeviceInfoDO extends BaseDO { + /** + * 编号 + */ + private Long id; + + /** + * 设备sn码 + */ + private String deviceSn; + /** + * 门店编号 + */ + private Long carteenId; + /** + * 设备ip + */ + private String deviceIp; + /** + * 设备名称 + */ + private String deviceName; + + /** + * 门店名称 + */ + private String carteenName; +} diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/deviceInfo/DeviceInfoMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/deviceInfo/DeviceInfoMapper.java new file mode 100644 index 00000000..1094b4f2 --- /dev/null +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/deviceInfo/DeviceInfoMapper.java @@ -0,0 +1,13 @@ +package cn.iocoder.yudao.module.system.dal.mysql.deviceInfo; + +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import cn.iocoder.yudao.module.system.dal.dataobject.deviceInfo.DeviceInfoDO; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:qjq + * @Date:2024/4/10 下午4:37 + */ +@Mapper +public interface DeviceInfoMapper extends BaseMapperX { +} diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java index 13bba514..76b8427a 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java @@ -58,9 +58,9 @@ public interface DevuceService { * @Description: 设备绑定菜品,或计算菜品重量与剩余重量 * @Author: qjq * @Date: 2024/4/10 下午1:40 - * @return + * @return */ - DishesDO getDevuceList(String sn); + DishesDO getDevuceList(); List getDishesList(Long carteenId,Long dishecType); /** @@ -70,7 +70,12 @@ public interface DevuceService { * @return */ List getDishesTypeList(Long carteenId); - - + /** + * @Description: 根据ip获取门店id + * @Author: qjq + * @Date: 2024/4/10 下午4:28 + * @return + */ + Long getCarteenIdByIp(); } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java index 1440bfd0..6e9c0725 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java @@ -6,9 +6,11 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.system.controller.app.devuce.vo.DevucePageReqVO; import cn.iocoder.yudao.module.system.controller.app.devuce.vo.DevuceSaveReqVO; +import cn.iocoder.yudao.module.system.dal.dataobject.deviceInfo.DeviceInfoDO; import cn.iocoder.yudao.module.system.dal.dataobject.devuce.DevuceDO; import cn.iocoder.yudao.module.system.dal.dataobject.dishes.DishesDO; import cn.iocoder.yudao.module.system.dal.dataobject.dishestype.DishesTypeDO; +import cn.iocoder.yudao.module.system.dal.mysql.deviceInfo.DeviceInfoMapper; import cn.iocoder.yudao.module.system.dal.mysql.devuce.DevuceMapper; import cn.iocoder.yudao.module.system.dal.mysql.dishes.DishesMapper; import cn.iocoder.yudao.module.system.dal.mysql.dishestype.DishesTypeMapper; @@ -41,6 +43,8 @@ public class DevuceServiceImpl implements DevuceService { private DishesTypeMapper dishesTypeMapper; @Resource private HttpServletRequest httpServletRequest; + @Resource + private DeviceInfoMapper deviceInfoMapper; @Override public Long createDevuce(DevuceSaveReqVO createReqVO) { // 插入 @@ -76,16 +80,18 @@ public class DevuceServiceImpl implements DevuceService { bind(updateReqVO); return null; }*/ - try { - String header = httpServletRequest.getHeader("Authorization"); - updateReqVO.setDeviceSn(header); + updateReqVO.setDeviceSn(this.getHearder()); bind(updateReqVO); + } + public String getHearder(){ + try { + return httpServletRequest.getHeader("Authorization"); } catch (Exception e) { throw exception(2000_10_001,"无法获取设备编码"); } } public void bind(DevuceSaveReqVO updateReqVO){ - if (devuceMapper.selectOne(new LambdaQueryWrapperX() + if (devuceMapper.selectList(new LambdaQueryWrapperX() .eqIfPresent(DevuceDO::getDeviceSn,updateReqVO.getDeviceSn())) == null) { createDevuce(updateReqVO); }else{ @@ -123,10 +129,10 @@ public class DevuceServiceImpl implements DevuceService { } @Override - public DishesDO getDevuceList(String sn) { + public DishesDO getDevuceList() { //获取当前设备绑定的菜品id DevuceDO devuceDO = devuceMapper.selectOne(new LambdaQueryWrapperX() - .eq(DevuceDO::getDeviceSn, sn)); + .eq(DevuceDO::getDeviceSn, this.getHearder())); if(ObjUtil.isEmpty(devuceDO)){ return null; }else{ @@ -168,5 +174,22 @@ public class DevuceServiceImpl implements DevuceService { return dishesTypeMapper.selectList(new LambdaQueryWrapperX().eq(DishesTypeDO::getCarteenId,carteenId)); } - + /** + * @return + * @Description: 根据ip获取门店id + * @Author: qjq + * @Date: 2024/4/10 下午4:28 + */ + @Override + public Long getCarteenIdByIp() { + String hearder = this.getHearder(); + List deviceInfoDOS = deviceInfoMapper.selectList(new LambdaQueryWrapperX() + .eq(DeviceInfoDO::getDeviceIp, hearder) + ); + if(ObjUtil.isNotEmpty(deviceInfoDOS)){ + return deviceInfoDOS.get(0).getCarteenId(); + }else{ + throw exception(2000_10_002,"无法通IP获取门店"); + } + } } \ No newline at end of file