From 93aa13a9fa0198024c6e1318b5e494671b62d6ac Mon Sep 17 00:00:00 2001
From: jjLv <1981429112@qq.com>
Date: Wed, 28 May 2025 15:32:20 +0800
Subject: [PATCH] =?UTF-8?q?=E9=A3=9F=E5=A0=82-=E5=8F=8C=E5=B1=8F=E6=9C=BA?=
=?UTF-8?q?=EF=BC=9A=E6=9B=B4=E6=96=B0=E8=AE=BE=E5=A4=87=E5=9C=A8=E7=BA=BF?=
=?UTF-8?q?=E7=8A=B6=E6=80=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/DeviceInfoController.java | 19 +++++++++++++++----
.../core/device/domain/DeviceSearchDTO.java | 10 ++++++++++
.../core/device/mapper/DeviceInfoMapper.java | 8 ++++++++
.../device/service/IDeviceInfoService.java | 6 ++++++
.../service/impl/DeviceInfoServiceImpl.java | 14 ++++++++++++++
.../mapper/device/DeviceInfoMapper.xml | 5 +++++
6 files changed, 58 insertions(+), 4 deletions(-)
create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/domain/DeviceSearchDTO.java
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/controller/DeviceInfoController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/controller/DeviceInfoController.java
index 8f1f564..eca4f33 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/controller/DeviceInfoController.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/controller/DeviceInfoController.java
@@ -2,6 +2,10 @@ package com.bonus.canteen.core.device.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.bonus.canteen.core.device.domain.DeviceSearchDTO;
+import com.bonus.common.core.exception.ServiceException;
import com.bonus.common.log.enums.OperaType;
//import com.bonus.canteen.core.device.common.annotation.PreventRepeatSubmit;
import io.swagger.annotations.Api;
@@ -87,8 +91,6 @@ public class DeviceInfoController extends BaseController {
* 修改设备资料
*/
@ApiOperation(value = "修改设备资料")
- //@PreventRepeatSubmit
- //@RequiresPermissions("device:info:edit")
@SysLog(title = "设备资料", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->修改设备资料")
@PostMapping("/edit")
public AjaxResult edit(@RequestBody DeviceInfo deviceInfo) {
@@ -103,11 +105,20 @@ public class DeviceInfoController extends BaseController {
* 删除设备资料
*/
@ApiOperation(value = "删除设备资料")
- //@PreventRepeatSubmit
- //@RequiresPermissions("device:info:remove")
@SysLog(title = "设备资料", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除设备资料")
@PostMapping("/del/{deviceIds}")
public AjaxResult remove(@PathVariable Long[] deviceIds) {
return toAjax(deviceInfoService.deleteDeviceInfoByDeviceIds(deviceIds));
}
+
+ @ApiOperation(value = "更新设备在线状态")
+ @PostMapping({"/updateTimeBySn"})
+ public AjaxResult updateTimeBySn(@RequestBody DeviceSearchDTO dto) {
+ if (ObjectUtil.isEmpty(dto.getDeviceSn())) {
+ throw new ServiceException("设备sn不能为空");
+ }
+ this.deviceInfoService.updateTimeBySn(dto.getDeviceSn());
+ return AjaxResult.success();
+ }
+
}
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/domain/DeviceSearchDTO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/domain/DeviceSearchDTO.java
new file mode 100644
index 0000000..bc4f6be
--- /dev/null
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/domain/DeviceSearchDTO.java
@@ -0,0 +1,10 @@
+package com.bonus.canteen.core.device.domain;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class DeviceSearchDTO {
+ @ApiModelProperty("设备sn码")
+ private String deviceSn;
+}
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/mapper/DeviceInfoMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/mapper/DeviceInfoMapper.java
index 31a8e0d..0f2af71 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/mapper/DeviceInfoMapper.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/mapper/DeviceInfoMapper.java
@@ -136,4 +136,12 @@ public interface DeviceInfoMapper {
* @param deviceIds 需要删除的数据主键集合
*/
void deleteDeviceRecipeBinding(@Param("deviceIds") Long[] deviceIds);
+
+ /**
+ * 更新设备在线状态
+ *
+ * @param sn 设备序列号
+ * @return 结果
+ */
+ int updateTimeBySn(String sn);
}
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/IDeviceInfoService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/IDeviceInfoService.java
index e0ff018..2c07de0 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/IDeviceInfoService.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/IDeviceInfoService.java
@@ -57,4 +57,10 @@ public interface IDeviceInfoService {
* @return 结果
*/
public int deleteDeviceInfoByDeviceId(Long deviceId);
+
+ /**
+ * 根据设备sn码更新设备最后使用时间
+ * @param deviceSn 设备sn码
+ */
+ void updateTimeBySn(String deviceSn);
}
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/impl/DeviceInfoServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/impl/DeviceInfoServiceImpl.java
index a12b89e..7d63cc2 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/impl/DeviceInfoServiceImpl.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/device/service/impl/DeviceInfoServiceImpl.java
@@ -152,4 +152,18 @@ public class DeviceInfoServiceImpl implements IDeviceInfoService {
public int deleteDeviceInfoByDeviceId(Long deviceId) {
return deviceInfoMapper.deleteDeviceInfoByDeviceId(deviceId);
}
+
+ /**
+ * 根据sn更新时间
+ *
+ * @param sn 设备sn码
+ */
+ @Override
+ public void updateTimeBySn(String sn) {
+ int code = deviceInfoMapper.updateTimeBySn(sn);
+ if (code == 0) {
+ throw new RuntimeException("更新时间失败");
+ }
+ }
+
}
diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/device/DeviceInfoMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/device/DeviceInfoMapper.xml
index 829e73e..2ab04e0 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/device/DeviceInfoMapper.xml
+++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/device/DeviceInfoMapper.xml
@@ -279,6 +279,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where device_id = #{deviceId}
+
+ update device_info
+ set last_update_time = unix_timestamp()
+ where device_sn = #{sn}
+
delete from device_info where device_id = #{deviceId}