From e35ecb16ac77fc9aa6adb6bc7c88de6615a754c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com> Date: Fri, 15 Aug 2025 17:49:59 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E7=BB=B4=E6=8A=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nursing-unit-iot/nu-iot-biz/pom.xml | 4 + .../tplink/camera/entity/CameraInfo.java | 2 + .../electricity/entity/ElectricityMeter.java | 3 + .../modules/tq/water/entity/WaterMeter.java | 3 + .../controller/DeviceMaintainController.java | 54 +++++++ .../modules/weihu/entity/DeviceMaintain.java | 48 ++++++ .../weihu/mapper/DeviceMaintainMapper.java | 11 ++ .../weihu/mapper/xml/DeviceMaintainMapper.xml | 152 ++++++++++++++++++ .../weihu/service/DeviceMaintainService.java | 11 ++ .../impl/DeviceMaintainServiceImpl.java | 120 ++++++++++++++ .../yiweilian/humid/entity/HumidDevice.java | 3 + 11 files changed, 411 insertions(+) create mode 100644 nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/controller/DeviceMaintainController.java create mode 100644 nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/entity/DeviceMaintain.java create mode 100644 nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/DeviceMaintainMapper.java create mode 100644 nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/xml/DeviceMaintainMapper.xml create mode 100644 nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/DeviceMaintainService.java create mode 100644 nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/impl/DeviceMaintainServiceImpl.java diff --git a/nursing-unit-iot/nu-iot-biz/pom.xml b/nursing-unit-iot/nu-iot-biz/pom.xml index eb3b0d9..9d1250d 100644 --- a/nursing-unit-iot/nu-iot-biz/pom.xml +++ b/nursing-unit-iot/nu-iot-biz/pom.xml @@ -47,6 +47,10 @@ 2.0.0 compile + + com.nursingunit.boot + nu-system-biz + diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java index 26e9419..9b6006a 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java @@ -321,6 +321,8 @@ public class CameraInfo implements Serializable { private String oldDepartName;//原机构名称 private String maintainStatus;//维修状态 0正常 1报修 2报废 + private String reserveDepartId;//预留机构ID + private String reserveDepartName;//预留机构名称 @TableField(exist = false) private String checkType; diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/electricity/entity/ElectricityMeter.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/electricity/entity/ElectricityMeter.java index 75ddd65..d99384c 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/electricity/entity/ElectricityMeter.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/electricity/entity/ElectricityMeter.java @@ -86,6 +86,9 @@ public class ElectricityMeter implements Serializable { private String oldDepartId;//原机构id private String oldDepartName;//原机构名称 private String maintainStatus;//维修状态 0正常 1报修 2报废 + private String reserveDepartId;//预留机构ID + private String reserveDepartName;//预留机构名称 + @TableField(exist = false) private String oldOrgCode;//原机构编码 @TableField(exist = false) diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/water/entity/WaterMeter.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/water/entity/WaterMeter.java index ca4f38a..9716003 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/water/entity/WaterMeter.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tq/water/entity/WaterMeter.java @@ -89,6 +89,9 @@ public class WaterMeter implements Serializable { private String oldDepartId;//原机构id private String oldDepartName;//原机构名称 private String maintainStatus;//维修状态 0正常 1报修 2报废 + private String reserveDepartId;//预留机构ID + private String reserveDepartName;//预留机构名称 + @TableField(exist = false) private String checkType; @TableField(exist = false) diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/controller/DeviceMaintainController.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/controller/DeviceMaintainController.java new file mode 100644 index 0000000..b0e41c1 --- /dev/null +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/controller/DeviceMaintainController.java @@ -0,0 +1,54 @@ +package com.nu.modules.weihu.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.nu.modules.weihu.entity.DeviceMaintain; +import com.nu.modules.weihu.service.DeviceMaintainService; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; + + +@Slf4j +@RestController +@RequestMapping("/iot/weihu/deviceMaintain") +public class DeviceMaintainController extends JeecgController { + + @Autowired + private DeviceMaintainService service; + + /** + * 分页列表查询 + * + * @param deviceInfo + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @GetMapping(value = "/list") + public Result> queryPageList(DeviceMaintain deviceInfo, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + Page page = new Page(pageNo, pageSize); + IPage pageList = service.findPage(page, deviceInfo); + return Result.OK(pageList); + } + + /** + * 指派机构 + * + * @param deviceInfo + * @return + */ + @RequestMapping(value = "/saveSendOrg", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result saveSendOrg(@RequestBody DeviceMaintain deviceInfo) { + service.saveSendOrg(deviceInfo); + return Result.OK("操作成功!"); + } + +} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/entity/DeviceMaintain.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/entity/DeviceMaintain.java new file mode 100644 index 0000000..7ab39b8 --- /dev/null +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/entity/DeviceMaintain.java @@ -0,0 +1,48 @@ +package com.nu.modules.weihu.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import java.io.Serializable; +import java.util.List; + +/** + *

Class:设备维护表Entity + */ +@Data +@TableName("nu_iot_weihu_info") +public class DeviceMaintain implements Serializable { + private static final long serialVersionUID = 1L; + + @TableId(type = IdType.ASSIGN_ID) + private String id;//主键 + private String type;//设备类型 + private String deviceId;//设备编码 + private String remark;//备注 + private String updateDate;//更新时间 + @TableField(exist = false) + private String sn;//设备SN号 + @TableField(exist = false) + private String deviceName;//设备名称 + @TableField(exist = false) + private String nuId;//区域编码 + @TableField(exist = false) + private String nuName;//区域名称 + @TableField(exist = false) + private String maintainStatus;//维修状态 0正常 1报修 2报废 + @TableField(exist = false) + private String departId;//机构ID + @TableField(exist = false) + private String departName;//机构名称 + @TableField(exist = false) + private String orgCode;//机构编码 + @TableField(exist = false) + private String reserveDepartId;//预留机构ID,记录发往机构的设备归属 + @TableField(exist = false) + private String reserveDepartName;//预留机构名称,记录发往机构的设备归属 + + @TableField(exist = false) + private List deviceMaintainList;//子列表 +} \ No newline at end of file diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/DeviceMaintainMapper.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/DeviceMaintainMapper.java new file mode 100644 index 0000000..271397c --- /dev/null +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/DeviceMaintainMapper.java @@ -0,0 +1,11 @@ +package com.nu.modules.weihu.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.nu.modules.weihu.entity.DeviceMaintain; +import org.apache.ibatis.annotations.Param; + +public interface DeviceMaintainMapper extends BaseMapper { + IPage findPage(Page page, @Param("params") DeviceMaintain deviceInfo); +} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/xml/DeviceMaintainMapper.xml b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/xml/DeviceMaintainMapper.xml new file mode 100644 index 0000000..66848f9 --- /dev/null +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/mapper/xml/DeviceMaintainMapper.xml @@ -0,0 +1,152 @@ + + + + + \ No newline at end of file diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/DeviceMaintainService.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/DeviceMaintainService.java new file mode 100644 index 0000000..3dcc161 --- /dev/null +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/DeviceMaintainService.java @@ -0,0 +1,11 @@ +package com.nu.modules.weihu.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.nu.modules.weihu.entity.DeviceMaintain; + +public interface DeviceMaintainService extends IService { + IPage findPage(Page page, DeviceMaintain deviceInfo); + void saveSendOrg(DeviceMaintain deviceInfo); +} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/impl/DeviceMaintainServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/impl/DeviceMaintainServiceImpl.java new file mode 100644 index 0000000..3b8e0f7 --- /dev/null +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/weihu/service/impl/DeviceMaintainServiceImpl.java @@ -0,0 +1,120 @@ +package com.nu.modules.weihu.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.nu.modules.tplink.camera.entity.CameraInfo; +import com.nu.modules.tplink.camera.service.ICameraCapabilityService; +import com.nu.modules.tplink.camera.service.ICameraInfoService; +import com.nu.modules.tq.common.service.ITqDeviceInfoService; +import com.nu.modules.tq.electricity.entity.ElectricityMeter; +import com.nu.modules.tq.electricity.service.IElectricityMeterService; +import com.nu.modules.tq.water.entity.WaterMeter; +import com.nu.modules.tq.water.service.IWaterMeterService; +import com.nu.modules.weihu.entity.DeviceMaintain; +import com.nu.modules.weihu.mapper.DeviceMaintainMapper; +import com.nu.modules.weihu.service.DeviceMaintainService; +import com.nu.modules.yiweilian.humid.entity.HumidDevice; +import com.nu.modules.yiweilian.humid.service.IHumidDeviceService; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.util.DateUtils; +import org.jeecg.modules.system.entity.SysDepart; +import org.jeecg.modules.system.service.ISysDepartService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Slf4j +@Service +public class DeviceMaintainServiceImpl extends ServiceImpl implements DeviceMaintainService { + + @Autowired + private ICameraInfoService cameraInfoService; + + @Autowired + private IElectricityMeterService electricityMeterService; + + @Autowired + private IWaterMeterService waterMeterService; + + @Autowired + private IHumidDeviceService humidDeviceService; + + @Autowired + private ISysDepartService sysDepartService; + + @Override + public IPage findPage(Page page, DeviceMaintain deviceInfo){ + return baseMapper.findPage(page,deviceInfo); + } + + @Override + public void saveSendOrg(DeviceMaintain deviceInfo){ + String reserveDepartId = deviceInfo.getReserveDepartId(); + SysDepart sysDepart = sysDepartService.getDepartById(reserveDepartId); + String reserveDepartName = sysDepart.getDepartName(); + String remark = deviceInfo.getRemark(); + String updateDate = DateUtils.formatDate("yyyy-MM-dd HH:mm:ss"); + List list = deviceInfo.getDeviceMaintainList(); + for(int i=0;i qw = new QueryWrapper<>(); + qw.eq("device_id",di.getDeviceId()); + DeviceMaintain entity = this.getOne(qw); + if(entity!=null){ + entity.setReserveDepartId(reserveDepartId); + entity.setReserveDepartName(reserveDepartName); + entity.setRemark(remark); + entity.setUpdateDate(updateDate); + this.updateById(entity); + }else{ + di.setId(null); + this.save(di); + } + } + } + + private void updateDeviceByType(DeviceMaintain entity){ + String type = entity.getType(); + if(type.equals("摄像头")){ + QueryWrapper cameraQw = new QueryWrapper<>(); + cameraQw.eq("mac",entity.getDeviceId()); + CameraInfo cameraInfo = cameraInfoService.getOne(cameraQw); + cameraInfo.setReserveDepartId(entity.getReserveDepartId()); + cameraInfo.setReserveDepartName(entity.getReserveDepartName()); + cameraInfoService.updateById(cameraInfo); + } + if(type.equals("电表")){ + QueryWrapper electricityQw = new QueryWrapper<>(); + electricityQw.eq("cid",entity.getDeviceId()); + ElectricityMeter electricityMeter = electricityMeterService.getOne(electricityQw); + electricityMeter.setReserveDepartId(entity.getReserveDepartId()); + electricityMeter.setReserveDepartName(entity.getReserveDepartName()); + electricityMeterService.updateById(electricityMeter); + } + if(type.equals("水表")){ + QueryWrapper waterQw = new QueryWrapper<>(); + waterQw.eq("cid",entity.getDeviceId()); + WaterMeter waterMeter = waterMeterService.getOne(waterQw); + waterMeter.setReserveDepartId(entity.getReserveDepartId()); + waterMeter.setReserveDepartName(entity.getReserveDepartName()); + waterMeterService.updateById(waterMeter); + } + if(type.equals("温湿度计")){ + QueryWrapper humidQw = new QueryWrapper<>(); + humidQw.eq("sn",entity.getDeviceId()); + HumidDevice humidDevice = humidDeviceService.getOne(humidQw); + humidDevice.setReserveDepartId(entity.getReserveDepartId()); + humidDevice.setReserveDepartName(entity.getReserveDepartName()); + humidDeviceService.updateById(humidDevice); + } + } +} + diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/entity/HumidDevice.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/entity/HumidDevice.java index 1b4040f..1273101 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/entity/HumidDevice.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/entity/HumidDevice.java @@ -110,6 +110,9 @@ public class HumidDevice implements Serializable { private String nuId;//护理单元ID private String nuName;//护理单元 private String maintainStatus;//维修状态 0正常 1报修 2报废 + private String reserveDepartId;//预留机构ID + private String reserveDepartName;//预留机构名称 + @Dict(dicCode = "nu_type") @TableField(exist = false) private String areaFlag;//区域标签