Commit 8f85cf11 by tutingyin

refactor: 设备详情拆分

cpu 系统资源 网卡信息 磁盘信息 usb信息
parent 589d2fcc
...@@ -22,12 +22,12 @@ public class EquipmentImportFailDTO { ...@@ -22,12 +22,12 @@ public class EquipmentImportFailDTO {
@ExcelProperty(value = "手机号") @ExcelProperty(value = "手机号")
private String phoneNumber; private String phoneNumber;
@ExcelProperty(value = "IMEI") @ExcelProperty(value = "序列号")
private String imei; private String serial;
@ExcelProperty(value = "设备名") @ExcelProperty(value = "设备名")
private String equipmentName; private String equipmentName;
@ExcelProperty(value = "失败信息") @ExcelProperty(value = "失败信息")
private String failInfo; private String failInfo;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
@Date:2020/9/1 17:55
@Version:1.0
*/
@Data
@ApiModel("设备详细信息")
public class DeviceEquipmentCpuVO {
@ApiModelProperty("设备名称")
private String equipmentName;
@ApiModelProperty("用户名称")
private String userName;
@ApiModelProperty("激活时间")
private String activationTime;
@ApiModelProperty("部门名称")
private String departmentName;
@ApiModelProperty("离线时间")
private String offlineTime;
@ApiModelProperty("固件版本")
private String firmwareVersion;
@ApiModelProperty("版本型号")
private String modelNumber;
@ApiModelProperty("版本号码")
private String versionNumber;
@ApiModelProperty("CPU 架构")
private String cpuArch;
@ApiModelProperty("CPU 制造厂商")
private String cpuMaker;
@ApiModelProperty("CPU 型号")
private String cpuModel;
@ApiModelProperty("CPU 额定主频")
private String cpuNominalMainFrequency;
@ApiModelProperty("CPU 核心数量")
private Integer cpuCore;
@ApiModelProperty("CPU 对虚拟化的支持")
private String cpuVirtualization;
@ApiModelProperty("物理内存总大小")
private String totalPhyMem;
@ApiModelProperty("物理内存使用率")
private String phyMemRate;
@ApiModelProperty("物理内存使用大小")
private String usedPhyMem;
@ApiModelProperty("实际可用的物理内存大小")
private String availPhyMem;
@ApiModelProperty("实际空闲的物理内存大小")
private String freePhyMem;
@ApiModelProperty("所有应用申请的虚拟内存总量")
private String totalVirtualMem;
@ApiModelProperty("系统中 Swap 分区总大小")
private String totalSwapSpace;
@ApiModelProperty("Swap 分区使用率")
private String swapRate;
@ApiModelProperty("Swap 分区使用量")
private String usedSwap;
@ApiModelProperty("Swap 分区空闲大小")
private String freeSwap;
@ApiModelProperty("CPU 瞬时使用率")
private String cpuPeak;
@ApiModelProperty("开机时长")
private String upTime;
@ApiModelProperty("系统架构信息")
private String sysArch;
@ApiModelProperty("系统名称")
private String sysName;
@ApiModelProperty("系统版本号")
private String sysVersion;
@ApiModelProperty("内核版本号")
private String sysKernelVersion;
@ApiModelProperty("当前登录用户的用户名")
private String sysLoginUser;
@ApiModelProperty("操作系统项目编号名")
private String osProjectNumName;
@ApiModelProperty("操作系统项目子编号名")
private String osSubProjectNumName;
@ApiModelProperty("操作系统产品标识码")
private String osProductId;
@ApiModelProperty("操作系统宿主机的虚拟机类型")
private String osHostVmType;
@ApiModelProperty("操作系统宿主机的云平台类型")
private String osCloudPlatformType;
@ApiModelProperty("操作系统是否为专用机系统")
private String osIsDedicatedSystem;
@ApiModelProperty("系统分辨率信息")
private String sysResolution;
@ApiModelProperty("系统硬件版本类别")
private String sysHwVersionType;
@ApiModelProperty("系统版本号/补丁版本号")
private String sysPatchVersion;
@ApiModelProperty("厂商信息")
private String biosVendor;
@ApiModelProperty("最后更新时间")
private Date updateTime;
}
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
@Date:2020/9/1 17:55
@Version:1.0
*/
@Data
@ApiModel("设备详细信息")
public class DeviceEquipmentDiskVO {
@ApiModelProperty("设备名称")
private String equipmentName;
@ApiModelProperty("用户名称")
private String userName;
@ApiModelProperty("激活时间")
private String activationTime;
@ApiModelProperty("部门名称")
private String departmentName;
@ApiModelProperty("离线时间")
private String offlineTime;
@ApiModelProperty("固件版本")
private String firmwareVersion;
@ApiModelProperty("版本型号")
private String modelNumber;
@ApiModelProperty("版本号码")
private String versionNumber;
@ApiModelProperty("CPU 架构")
private String cpuArch;
@ApiModelProperty("CPU 制造厂商")
private String cpuMaker;
@ApiModelProperty("CPU 型号")
private String cpuModel;
@ApiModelProperty("CPU 额定主频")
private String cpuNominalMainFrequency;
@ApiModelProperty("CPU 核心数量")
private Integer cpuCore;
@ApiModelProperty("CPU 对虚拟化的支持")
private String cpuVirtualization;
@ApiModelProperty("物理内存总大小")
private String totalPhyMem;
@ApiModelProperty("物理内存使用率")
private String phyMemRate;
@ApiModelProperty("物理内存使用大小")
private String usedPhyMem;
@ApiModelProperty("实际可用的物理内存大小")
private String availPhyMem;
@ApiModelProperty("实际空闲的物理内存大小")
private String freePhyMem;
@ApiModelProperty("所有应用申请的虚拟内存总量")
private String totalVirtualMem;
@ApiModelProperty("系统中 Swap 分区总大小")
private String totalSwapSpace;
@ApiModelProperty("Swap 分区使用率")
private String swapRate;
@ApiModelProperty("Swap 分区使用量")
private String usedSwap;
@ApiModelProperty("Swap 分区空闲大小")
private String freeSwap;
@ApiModelProperty("CPU 瞬时使用率")
private String cpuPeak;
@ApiModelProperty("开机时长")
private String upTime;
@ApiModelProperty("系统架构信息")
private String sysArch;
@ApiModelProperty("系统名称")
private String sysName;
@ApiModelProperty("系统版本号")
private String sysVersion;
@ApiModelProperty("内核版本号")
private String sysKernelVersion;
@ApiModelProperty("当前登录用户的用户名")
private String sysLoginUser;
@ApiModelProperty("操作系统项目编号名")
private String osProjectNumName;
@ApiModelProperty("操作系统项目子编号名")
private String osSubProjectNumName;
@ApiModelProperty("操作系统产品标识码")
private String osProductId;
@ApiModelProperty("操作系统宿主机的虚拟机类型")
private String osHostVmType;
@ApiModelProperty("操作系统宿主机的云平台类型")
private String osCloudPlatformType;
@ApiModelProperty("操作系统是否为专用机系统")
private String osIsDedicatedSystem;
@ApiModelProperty("系统分辨率信息")
private String sysResolution;
@ApiModelProperty("系统硬件版本类别")
private String sysHwVersionType;
@ApiModelProperty("系统版本号/补丁版本号")
private String sysPatchVersion;
@ApiModelProperty("厂商信息")
private String biosVendor;
@ApiModelProperty("最后更新时间")
private Date updateTime;
}
\ No newline at end of file
...@@ -9,11 +9,11 @@ import java.util.Date; ...@@ -9,11 +9,11 @@ import java.util.Date;
/** /**
@ClassName:DeviceEquipmentInfo * @ClassName:DeviceEquipmentInfo
@Author:Tty * @Author:Tty
@Description:设备详细信息 * @Description:设备详细信息
@Date:2020/9/1 17:55 * @Date:2020/9/1 17:55
@Version:1.0 * @Version:1.0
*/ */
@Data @Data
@ApiModel("设备详细信息") @ApiModel("设备详细信息")
...@@ -21,76 +21,33 @@ public class DeviceEquipmentInfo2VO { ...@@ -21,76 +21,33 @@ public class DeviceEquipmentInfo2VO {
@ApiModelProperty("设备名称") @ApiModelProperty("设备名称")
private String equipmentName; private String equipmentName;
@ApiModelProperty("用户名称") @ApiModelProperty("用户名称")
private String userName; private String userName;
@ApiModelProperty("用户手机号")
private String userPhoneNumber;
@ApiModelProperty("激活时间") @ApiModelProperty("激活时间")
private String activationTime; private String activationTime;
@ApiModelProperty("部门名称") @ApiModelProperty("部门名称")
private String departmentName; private String departmentName;
@ApiModelProperty("离线时间") @ApiModelProperty("离线时间")
private String offlineTime; private String offlineTime;
@ApiModelProperty("固件版本")
private String firmwareVersion;
@ApiModelProperty("版本型号")
private String modelNumber;
@ApiModelProperty("版本号码")
private String versionNumber;
@ApiModelProperty("CPU 架构")
private String cpuArch;
@ApiModelProperty("CPU 制造厂商")
private String cpuMaker;
@ApiModelProperty("CPU 型号")
private String cpuModel;
@ApiModelProperty("CPU 额定主频")
private String cpuNominalMainFrequency;
@ApiModelProperty("CPU 核心数量")
private Integer cpuCore;
@ApiModelProperty("CPU 对虚拟化的支持")
private String cpuVirtualization;
@ApiModelProperty("物理内存总大小")
private String totalPhyMem;
@ApiModelProperty("物理内存使用率") @ApiModelProperty("主板名称信息")
private String phyMemRate; private String motherboard;
@ApiModelProperty("物理内存使用大小") @ApiModelProperty("生产日期")
private String usedPhyMem; private String productionDate;
@ApiModelProperty("实际可用的物理内存大小") @ApiModelProperty("序列号")
private String availPhyMem; private String serialNumber;
@ApiModelProperty("实际空闲的物理内存大小")
private String freePhyMem;
@ApiModelProperty("所有应用申请的虚拟内存总量")
private String totalVirtualMem;
@ApiModelProperty("系统中 Swap 分区总大小")
private String totalSwapSpace;
@ApiModelProperty("Swap 分区使用率")
private String swapRate;
@ApiModelProperty("Swap 分区使用量")
private String usedSwap;
@ApiModelProperty("Swap 分区空闲大小")
private String freeSwap;
@ApiModelProperty("CPU 瞬时使用率")
private String cpuPeak;
@ApiModelProperty("开机时长")
private String upTime;
@ApiModelProperty("厂商信息")
private String vendor;
@ApiModelProperty("系统架构信息") @ApiModelProperty("系统架构信息")
private String sysArch; private String sysArch;
...@@ -134,10 +91,19 @@ public class DeviceEquipmentInfo2VO { ...@@ -134,10 +91,19 @@ public class DeviceEquipmentInfo2VO {
@ApiModelProperty("系统版本号/补丁版本号") @ApiModelProperty("系统版本号/补丁版本号")
private String sysPatchVersion; private String sysPatchVersion;
@ApiModelProperty("厂商信息") @ApiModelProperty("bios厂商")
private String biosVendor; private String biosVendor;
@ApiModelProperty("最后更新时间") @ApiModelProperty("bios版本")
private Date updateTime; private String biosVersion;
@ApiModelProperty("客户端版本号")
private String clientVersionCode;
@ApiModelProperty("地理位置纬度")
private String latitude;
@ApiModelProperty("地理位置经度")
private String longitude;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
@Date:2020/9/1 17:55
@Version:1.0
*/
@Data
@ApiModel("设备详细信息")
public class DeviceEquipmentNetVO {
@ApiModelProperty("设备名称")
private String equipmentName;
@ApiModelProperty("用户名称")
private String userName;
@ApiModelProperty("激活时间")
private String activationTime;
@ApiModelProperty("部门名称")
private String departmentName;
@ApiModelProperty("离线时间")
private String offlineTime;
@ApiModelProperty("固件版本")
private String firmwareVersion;
@ApiModelProperty("版本型号")
private String modelNumber;
@ApiModelProperty("版本号码")
private String versionNumber;
@ApiModelProperty("CPU 架构")
private String cpuArch;
@ApiModelProperty("CPU 制造厂商")
private String cpuMaker;
@ApiModelProperty("CPU 型号")
private String cpuModel;
@ApiModelProperty("CPU 额定主频")
private String cpuNominalMainFrequency;
@ApiModelProperty("CPU 核心数量")
private Integer cpuCore;
@ApiModelProperty("CPU 对虚拟化的支持")
private String cpuVirtualization;
@ApiModelProperty("物理内存总大小")
private String totalPhyMem;
@ApiModelProperty("物理内存使用率")
private String phyMemRate;
@ApiModelProperty("物理内存使用大小")
private String usedPhyMem;
@ApiModelProperty("实际可用的物理内存大小")
private String availPhyMem;
@ApiModelProperty("实际空闲的物理内存大小")
private String freePhyMem;
@ApiModelProperty("所有应用申请的虚拟内存总量")
private String totalVirtualMem;
@ApiModelProperty("系统中 Swap 分区总大小")
private String totalSwapSpace;
@ApiModelProperty("Swap 分区使用率")
private String swapRate;
@ApiModelProperty("Swap 分区使用量")
private String usedSwap;
@ApiModelProperty("Swap 分区空闲大小")
private String freeSwap;
@ApiModelProperty("CPU 瞬时使用率")
private String cpuPeak;
@ApiModelProperty("开机时长")
private String upTime;
@ApiModelProperty("系统架构信息")
private String sysArch;
@ApiModelProperty("系统名称")
private String sysName;
@ApiModelProperty("系统版本号")
private String sysVersion;
@ApiModelProperty("内核版本号")
private String sysKernelVersion;
@ApiModelProperty("当前登录用户的用户名")
private String sysLoginUser;
@ApiModelProperty("操作系统项目编号名")
private String osProjectNumName;
@ApiModelProperty("操作系统项目子编号名")
private String osSubProjectNumName;
@ApiModelProperty("操作系统产品标识码")
private String osProductId;
@ApiModelProperty("操作系统宿主机的虚拟机类型")
private String osHostVmType;
@ApiModelProperty("操作系统宿主机的云平台类型")
private String osCloudPlatformType;
@ApiModelProperty("操作系统是否为专用机系统")
private String osIsDedicatedSystem;
@ApiModelProperty("系统分辨率信息")
private String sysResolution;
@ApiModelProperty("系统硬件版本类别")
private String sysHwVersionType;
@ApiModelProperty("系统版本号/补丁版本号")
private String sysPatchVersion;
@ApiModelProperty("厂商信息")
private String biosVendor;
@ApiModelProperty("最后更新时间")
private Date updateTime;
}
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
@Date:2020/9/1 17:55
@Version:1.0
*/
@Data
@ApiModel("设备详细信息")
public class DeviceEquipmentUsbVO {
@ApiModelProperty("设备名称")
private String equipmentName;
@ApiModelProperty("用户名称")
private String userName;
@ApiModelProperty("激活时间")
private String activationTime;
@ApiModelProperty("部门名称")
private String departmentName;
@ApiModelProperty("离线时间")
private String offlineTime;
@ApiModelProperty("固件版本")
private String firmwareVersion;
@ApiModelProperty("版本型号")
private String modelNumber;
@ApiModelProperty("版本号码")
private String versionNumber;
@ApiModelProperty("CPU 架构")
private String cpuArch;
@ApiModelProperty("CPU 制造厂商")
private String cpuMaker;
@ApiModelProperty("CPU 型号")
private String cpuModel;
@ApiModelProperty("CPU 额定主频")
private String cpuNominalMainFrequency;
@ApiModelProperty("CPU 核心数量")
private Integer cpuCore;
@ApiModelProperty("CPU 对虚拟化的支持")
private String cpuVirtualization;
@ApiModelProperty("物理内存总大小")
private String totalPhyMem;
@ApiModelProperty("物理内存使用率")
private String phyMemRate;
@ApiModelProperty("物理内存使用大小")
private String usedPhyMem;
@ApiModelProperty("实际可用的物理内存大小")
private String availPhyMem;
@ApiModelProperty("实际空闲的物理内存大小")
private String freePhyMem;
@ApiModelProperty("所有应用申请的虚拟内存总量")
private String totalVirtualMem;
@ApiModelProperty("系统中 Swap 分区总大小")
private String totalSwapSpace;
@ApiModelProperty("Swap 分区使用率")
private String swapRate;
@ApiModelProperty("Swap 分区使用量")
private String usedSwap;
@ApiModelProperty("Swap 分区空闲大小")
private String freeSwap;
@ApiModelProperty("CPU 瞬时使用率")
private String cpuPeak;
@ApiModelProperty("开机时长")
private String upTime;
@ApiModelProperty("系统架构信息")
private String sysArch;
@ApiModelProperty("系统名称")
private String sysName;
@ApiModelProperty("系统版本号")
private String sysVersion;
@ApiModelProperty("内核版本号")
private String sysKernelVersion;
@ApiModelProperty("当前登录用户的用户名")
private String sysLoginUser;
@ApiModelProperty("操作系统项目编号名")
private String osProjectNumName;
@ApiModelProperty("操作系统项目子编号名")
private String osSubProjectNumName;
@ApiModelProperty("操作系统产品标识码")
private String osProductId;
@ApiModelProperty("操作系统宿主机的虚拟机类型")
private String osHostVmType;
@ApiModelProperty("操作系统宿主机的云平台类型")
private String osCloudPlatformType;
@ApiModelProperty("操作系统是否为专用机系统")
private String osIsDedicatedSystem;
@ApiModelProperty("系统分辨率信息")
private String sysResolution;
@ApiModelProperty("系统硬件版本类别")
private String sysHwVersionType;
@ApiModelProperty("系统版本号/补丁版本号")
private String sysPatchVersion;
@ApiModelProperty("厂商信息")
private String biosVendor;
@ApiModelProperty("最后更新时间")
private Date updateTime;
}
\ No newline at end of file
...@@ -5,9 +5,11 @@ import com.skr.mdm.dto.LoginUserDTO; ...@@ -5,9 +5,11 @@ import com.skr.mdm.dto.LoginUserDTO;
import com.skr.mdm.result.ResponseResult; import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.service.CmdHandlerService; import com.skr.mdm.service.CmdHandlerService;
import com.skr.mdm.service.StrategyFactory; import com.skr.mdm.service.StrategyFactory;
import com.skr.mdm.service.impl.equipment.EquipmentInfo2ServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam; import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.Authentication; import org.springframework.security.core.Authentication;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -24,6 +26,10 @@ import springfox.documentation.annotations.ApiIgnore; ...@@ -24,6 +26,10 @@ import springfox.documentation.annotations.ApiIgnore;
@Api(tags = "设备信息上传") @Api(tags = "设备信息上传")
public class EquipmentInfoController { public class EquipmentInfoController {
@Autowired
private EquipmentInfo2ServiceImpl equipmentInfo2Service;
@PostMapping("upload") @PostMapping("upload")
@ApiOperation("设备信息上传") @ApiOperation("设备信息上传")
public ResponseResult uploadEquipmentInfo(@RequestParam @ApiParam(value = "设备信息", required = true) String data, public ResponseResult uploadEquipmentInfo(@RequestParam @ApiParam(value = "设备信息", required = true) String data,
...@@ -32,8 +38,40 @@ public class EquipmentInfoController { ...@@ -32,8 +38,40 @@ public class EquipmentInfoController {
CmdHandlerService strategy = StrategyFactory.getStrategy(CmdTypeConstants.DEV_INFO); CmdHandlerService strategy = StrategyFactory.getStrategy(CmdTypeConstants.DEV_INFO);
return strategy.cmdHandler(loginUserDTO.getId(), data); return strategy.cmdHandler(loginUserDTO.getId(), data);
} }
@PostMapping("cpu/upload")
@ApiOperation("设备信息上传")
public ResponseResult updateCpuInfo(@RequestParam @ApiParam(value = "设备信息", required = true) String data,
@ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
equipmentInfo2Service.operationEquipmentCpu(loginUserDTO.getId(),null);
return ResponseResult.success();
}
@PostMapping("disk/upload")
@ApiOperation("设备信息上传")
public ResponseResult updateDiskInfo(@RequestParam @ApiParam(value = "设备信息", required = true) String data,
@ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
equipmentInfo2Service.operationEquipmentDisk(loginUserDTO.getId(),null);
return ResponseResult.success();
}
@PostMapping("usb/upload")
@ApiOperation("设备信息上传")
public ResponseResult updateUsbInfo(@RequestParam @ApiParam(value = "设备信息", required = true) String data,
@ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
equipmentInfo2Service.operationEquipmentUsb(loginUserDTO.getId(),null);
return ResponseResult.success();
}
@PostMapping("sysSource/upload")
@ApiOperation("设备信息上传")
public ResponseResult updateSysSourceInfo(@RequestParam @ApiParam(value = "设备信息", required = true) String data,
@ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
equipmentInfo2Service.operationEquipmentSysSource(loginUserDTO.getId(),null);
return ResponseResult.success();
}
@PostMapping("delete") @PostMapping("delete")
@ApiOperation("设备删除") @ApiOperation("设备删除")
......
package com.skr.mdm.service.impl.equipment; package com.skr.mdm.service.impl.equipment;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.skr.mdm.annotation.CmdHandler; import com.skr.mdm.annotation.CmdHandler;
...@@ -103,22 +104,23 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService { ...@@ -103,22 +104,23 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService {
* @param equipmentId * @param equipmentId
* @param equipmentCPUDTO * @param equipmentCPUDTO
*/ */
private void operationEquipmentCpu(Integer equipmentId, EquipmentCPUDTO equipmentCPUDTO) { public void operationEquipmentCpu(Integer equipmentId, EquipmentCPUDTO equipmentCPUDTO) {
DeviceEquipmentCpuDO deviceEquipmentCpuDO = new DeviceEquipmentCpuDO(); if (Objects.nonNull(equipmentCPUDTO)) {
DeviceEquipmentCpuDO deviceEquipmentCpuDO = new DeviceEquipmentCpuDO();
BeanUtils.copyProperties(equipmentCPUDTO, deviceEquipmentCpuDO); BeanUtils.copyProperties(equipmentCPUDTO, deviceEquipmentCpuDO);
deviceEquipmentCpuDO.setEquipmentId(equipmentId); deviceEquipmentCpuDO.setEquipmentId(equipmentId);
DeviceEquipmentCpuDO dbEquipmentInfoDO = new LambdaQueryChainWrapper<>(equipmentCpuDao) DeviceEquipmentCpuDO dbEquipmentInfoDO = new LambdaQueryChainWrapper<>(equipmentCpuDao)
.eq(DeviceEquipmentCpuDO::getEquipmentId, equipmentId) .eq(DeviceEquipmentCpuDO::getEquipmentId, equipmentId)
.one(); .one();
if (Objects.isNull(dbEquipmentInfoDO)) { if (Objects.isNull(dbEquipmentInfoDO)) {
// 添加设备信息 // 添加设备信息
equipmentCpuDao.insertSelective(deviceEquipmentCpuDO); equipmentCpuDao.insertSelective(deviceEquipmentCpuDO);
} else { } else {
// 修改设备信息 // 修改设备信息
deviceEquipmentCpuDO.setId(dbEquipmentInfoDO.getId()); deviceEquipmentCpuDO.setId(dbEquipmentInfoDO.getId());
equipmentCpuDao.updateByPrimaryKeySelective(deviceEquipmentCpuDO); equipmentCpuDao.updateByPrimaryKeySelective(deviceEquipmentCpuDO);
}
} }
} }
...@@ -128,22 +130,23 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService { ...@@ -128,22 +130,23 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService {
* @param equipmentId * @param equipmentId
* @param equipmentSysResourceDTO * @param equipmentSysResourceDTO
*/ */
private void operationEquipmentSysSource(Integer equipmentId, EquipmentSysResourceDTO equipmentSysResourceDTO) { public void operationEquipmentSysSource(Integer equipmentId, EquipmentSysResourceDTO equipmentSysResourceDTO) {
DeviceEquipmentSysSourceDO equipmentSysSourceDO = new DeviceEquipmentSysSourceDO(); if (Objects.nonNull(equipmentSysResourceDTO)) {
DeviceEquipmentSysSourceDO equipmentSysSourceDO = new DeviceEquipmentSysSourceDO();
BeanUtils.copyProperties(equipmentSysResourceDTO, equipmentSysSourceDO); BeanUtils.copyProperties(equipmentSysResourceDTO, equipmentSysSourceDO);
equipmentSysSourceDO.setEquipmentId(equipmentId); equipmentSysSourceDO.setEquipmentId(equipmentId);
DeviceEquipmentSysSourceDO dbSysSourceDO = new LambdaQueryChainWrapper<>(equipmentSysSourceDao) DeviceEquipmentSysSourceDO dbSysSourceDO = new LambdaQueryChainWrapper<>(equipmentSysSourceDao)
.eq(DeviceEquipmentSysSourceDO::getEquipmentId, equipmentId) .eq(DeviceEquipmentSysSourceDO::getEquipmentId, equipmentId)
.one(); .one();
if (Objects.isNull(dbSysSourceDO)) { if (Objects.isNull(dbSysSourceDO)) {
// 添加设备信息 // 添加设备信息
equipmentSysSourceDao.insertSelective(equipmentSysSourceDO); equipmentSysSourceDao.insertSelective(equipmentSysSourceDO);
} else { } else {
// 修改设备信息 // 修改设备信息
equipmentSysSourceDO.setId(dbSysSourceDO.getId()); equipmentSysSourceDO.setId(dbSysSourceDO.getId());
equipmentSysSourceDao.updateByPrimaryKeySelective(equipmentSysSourceDO); equipmentSysSourceDao.updateByPrimaryKeySelective(equipmentSysSourceDO);
}
} }
} }
...@@ -153,24 +156,16 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService { ...@@ -153,24 +156,16 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService {
* @param equipmentId * @param equipmentId
* @param equipmentUsbDTOList * @param equipmentUsbDTOList
*/ */
private void operationEquipmentUsb(Integer equipmentId, List<EquipmentUsbDTO> equipmentUsbDTOList) { public void operationEquipmentUsb(Integer equipmentId, List<EquipmentUsbDTO> equipmentUsbDTOList) {
equipmentUsbDao.delete(Wrappers.lambdaQuery(DeviceEquipmentUsbDO.class).eq(DeviceEquipmentUsbDO::getEquipmentId, equipmentId));
if (CollectionUtils.isNotEmpty(equipmentUsbDTOList)) { if (CollectionUtils.isNotEmpty(equipmentUsbDTOList)) {
for (EquipmentUsbDTO equipmentUsbDTO : equipmentUsbDTOList) { for (EquipmentUsbDTO equipmentUsbDTO : equipmentUsbDTOList) {
DeviceEquipmentUsbDO deviceEquipmentUsbDO = new DeviceEquipmentUsbDO(); DeviceEquipmentUsbDO deviceEquipmentUsbDO = new DeviceEquipmentUsbDO();
BeanUtils.copyProperties(equipmentUsbDTO, deviceEquipmentUsbDO); BeanUtils.copyProperties(equipmentUsbDTO, deviceEquipmentUsbDO);
deviceEquipmentUsbDO.setEquipmentId(equipmentId); deviceEquipmentUsbDO.setEquipmentId(equipmentId);
DeviceEquipmentUsbDO dbEquipmentUsbDO = new LambdaQueryChainWrapper<>(equipmentUsbDao) // 添加设备信息
.eq(DeviceEquipmentUsbDO::getEquipmentId, equipmentId) equipmentUsbDao.insertSelective(deviceEquipmentUsbDO);
.one();
if (Objects.isNull(dbEquipmentUsbDO)) {
// 添加设备信息
equipmentUsbDao.insertSelective(deviceEquipmentUsbDO);
} else {
// 修改设备信息
deviceEquipmentUsbDO.setId(dbEquipmentUsbDO.getId());
equipmentUsbDao.updateByPrimaryKeySelective(deviceEquipmentUsbDO);
}
} }
} }
...@@ -182,7 +177,7 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService { ...@@ -182,7 +177,7 @@ public class EquipmentInfo2ServiceImpl implements CmdHandlerService {
* @param equipmentId * @param equipmentId
* @param equipmentDiskDTO * @param equipmentDiskDTO
*/ */
private void operationEquipmentDisk(Integer equipmentId, EquipmentDiskDTO equipmentDiskDTO) { public void operationEquipmentDisk(Integer equipmentId, EquipmentDiskDTO equipmentDiskDTO) {
if (Objects.nonNull(equipmentDiskDTO)) { if (Objects.nonNull(equipmentDiskDTO)) {
DeviceEquipmentDiskDO deviceEquipmentDiskDO = new DeviceEquipmentDiskDO(); DeviceEquipmentDiskDO deviceEquipmentDiskDO = new DeviceEquipmentDiskDO();
BeanUtils.copyProperties(equipmentDiskDTO, deviceEquipmentDiskDO); BeanUtils.copyProperties(equipmentDiskDTO, deviceEquipmentDiskDO);
......
...@@ -24,6 +24,12 @@ import java.util.List; ...@@ -24,6 +24,12 @@ import java.util.List;
@Repository @Repository
public interface DeviceEquipmentDao extends BaseMapper<DeviceEquipmentDO> { public interface DeviceEquipmentDao extends BaseMapper<DeviceEquipmentDO> {
/**
* 根据公司ID删除
* @param companyId 公司ID
*/
void deleteByCompanyId(@Param("companyId") Integer companyId);
List<UserEquipmentVO> listUserEquipmentVO(@Param("userId") Integer userId); List<UserEquipmentVO> listUserEquipmentVO(@Param("userId") Integer userId);
List<Integer> selectDeviceEquipmentIdByUserId(@Param("list") List<Integer> userIdList); List<Integer> selectDeviceEquipmentIdByUserId(@Param("list") List<Integer> userIdList);
......
package com.skr.mdm.dao; package com.skr.mdm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.skr.mdm.bean.vo.equipment.DeviceEquipmentInfo2VO;
import com.skr.mdm.entity.DeviceEquipmentInfoCopyDO; import com.skr.mdm.entity.DeviceEquipmentInfoCopyDO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
@Repository @Repository
...@@ -14,4 +16,12 @@ public interface DeviceEquipmentInfoCopyDao extends BaseMapper<DeviceEquipmentIn ...@@ -14,4 +16,12 @@ public interface DeviceEquipmentInfoCopyDao extends BaseMapper<DeviceEquipmentIn
int updateByPrimaryKeySelective(DeviceEquipmentInfoCopyDO record); int updateByPrimaryKeySelective(DeviceEquipmentInfoCopyDO record);
DeviceEquipmentInfo2VO getEquipmentInfo(Integer equipmentId);
/**
* 根据公司ID删除
* @param companyId 公司ID
*/
void deleteByCompanyId(@Param("companyId") Integer companyId);
} }
\ No newline at end of file
...@@ -13,9 +13,6 @@ ...@@ -13,9 +13,6 @@
<result column="bound_state" jdbcType="TINYINT" property="boundState"/> <result column="bound_state" jdbcType="TINYINT" property="boundState"/>
<result column="equipment_model" jdbcType="VARCHAR" property="equipmentModel"/> <result column="equipment_model" jdbcType="VARCHAR" property="equipmentModel"/>
<result column="phone_number" jdbcType="VARCHAR" property="phoneNumber"/> <result column="phone_number" jdbcType="VARCHAR" property="phoneNumber"/>
<result column="imei" jdbcType="VARCHAR" property="imei"/>
<result column="uuid" jdbcType="VARCHAR" property="uuid"/>
<result column="oaid" jdbcType="VARCHAR" property="oaid"/>
<result column="tid" jdbcType="INTEGER" property="tid"/> <result column="tid" jdbcType="INTEGER" property="tid"/>
<result column="trid" jdbcType="INTEGER" property="trid"/> <result column="trid" jdbcType="INTEGER" property="trid"/>
<result column="weed_out_time" jdbcType="TIMESTAMP" property="weedOutTime"/> <result column="weed_out_time" jdbcType="TIMESTAMP" property="weedOutTime"/>
...@@ -49,23 +46,20 @@ ...@@ -49,23 +46,20 @@
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
we de.id as id, equipment_name as equipment_name,
.
id
as id, equipment_name as equipment_name,
equipment_state as equipment_state, `state` as `state`, `control_state` as `controlState`, equipment_state as equipment_state, `state` as `state`, `control_state` as `controlState`,
user_id as user_id, we.user_name as user_name, user_id as user_id, de.user_name as user_name,
equipment_type as equipment_type, bound_state as bound_state, equipment_model as equipment_model, equipment_type as equipment_type, bound_state as bound_state, equipment_model as equipment_model,
we.phone_number as phone_number, imei as imei, we.is_card_binding, we.card_unbind_password, de.phone_number as phone_number, imei as imei, de.is_card_binding, de.card_unbind_password,
uuid as uuid, oaid as oaid, tid as tid, trid as trid, uuid as uuid, oaid as oaid, tid as tid, trid as trid,
login_count as login_count, weed_out_time as weed_out_time, login_count as login_count, weed_out_time as weed_out_time,
erase_time as erase_time, token as token, erase_time as erase_time, token as token,
refresh_token as refresh_token, ws_channel_id as ws_channel_id, refresh_token as refresh_token, ws_channel_id as ws_channel_id,
uninstall_code as uninstall_code, logon_time as logon_time, uninstall_code as uninstall_code, logon_time as logon_time,
offline_time as offline_time, activation_time as activation_time, offline_time as offline_time, activation_time as activation_time,
heartbeat_time as heartbeat_time, we.department_name as department_name, heartbeat_time as heartbeat_time, de.department_name as department_name,
we.company_id as company_id, we.create_time as create_time, de.company_id as company_id, de.create_time as create_time,
we.update_time as update_time de.update_time as update_time
</sql> </sql>
<delete id="deleteByCompanyId"> <delete id="deleteByCompanyId">
...@@ -88,16 +82,6 @@ ...@@ -88,16 +82,6 @@
and user_id = #{userId} and user_id = #{userId}
</select> </select>
<select id="selectUserIdListByStatus" resultType="java.lang.Integer">
SELECT user_id FROM device_equipment
<where>
is_delete = 0 AND equipment_state IN
<foreach collection="statusList" item="status" open="(" close=")" separator=",">
#{status}
</foreach>
</where>
order by user_id
</select>
<select id="selectDeviceEquipmentIdByUserId" resultType="java.lang.Integer"> <select id="selectDeviceEquipmentIdByUserId" resultType="java.lang.Integer">
SELECT id FROM device_equipment SELECT id FROM device_equipment
WHERE is_delete = 0 AND bound_state = 0 AND user_id IN WHERE is_delete = 0 AND bound_state = 0 AND user_id IN
...@@ -260,40 +244,35 @@ ...@@ -260,40 +244,35 @@
<select id="listEquipment" resultType="com.skr.mdm.bean.vo.equipment.DeviceEquipmentVO"> <select id="listEquipment" resultType="com.skr.mdm.bean.vo.equipment.DeviceEquipmentVO">
SELECT SELECT
we.id, de.id,
we.equipment_name, de.equipment_name,
we.equipment_state, de.equipment_state,
we.state, de.state,
we.control_state, de.control_state,
we.user_id, de.user_id,
we.user_name, de.user_name,
we.equipment_type, de.equipment_type,
we.bound_state, de.bound_state,
we.equipment_model, de.equipment_model,
au.phone_number, de.serial_number,
we.serial_number, de.vendor,
we.vendor, de.production_date,
we.production_date, de.motherboard,
we.motherboard, de.uninstall_code,
we.is_card_binding, de.offline_unlock_code,
we.card_unbind_password, de.offline_time,
we.tid, de.department_id,
we.trid, de.department_name,
we.uninstall_code,
we.offline_unlock_code,
we.offline_time,
we.department_id,
we.department_name,
dei.longitude, dei.longitude,
dei.latitude, dei.latitude,
dei.client_version_code dei.client_version_code
FROM device_equipment we FROM device_equipment de
JOIN au_user au on we.user_id = au.id JOIN au_user au on de.user_id = au.id
JOIN au_admin_department aad on au.department_id = aad.department_id JOIN au_admin_department aad on au.department_id = aad.department_id
left join device_equipment_info dei on we.id = dei.equipment_id left join device_equipment_info dei on de.id = dei.equipment_id
WHERE we.is_delete = 0 AND we.company_id = #{companyId} AND aad.admin_id = #{adminId} WHERE de.is_delete = 0 AND de.company_id = #{companyId} AND aad.admin_id = #{adminId}
<if test="boundState != null"> <if test="boundState != null">
AND we.bound_state = #{boundState} AND de.bound_state = #{boundState}
</if> </if>
<if test="departmentIdList != null and departmentIdList.size() > 0"> <if test="departmentIdList != null and departmentIdList.size() > 0">
AND au.department_id IN AND au.department_id IN
...@@ -303,62 +282,62 @@ ...@@ -303,62 +282,62 @@
</if> </if>
<choose> <choose>
<when test="state == 1 "> <when test="state == 1 ">
AND we.equipment_state != 0 AND de.equipment_state != 0
</when> </when>
<when test="state == 0 "> <when test="state == 0 ">
AND we.equipment_state = 0 AND de.equipment_state = 0
</when> </when>
<otherwise> <otherwise>
<if test="state != null"> <if test="state != null">
AND we.state = #{state} AND de.state = #{state}
</if> </if>
</otherwise> </otherwise>
</choose> </choose>
<if test="onlineState != null and onlineState == 1"> <if test="onlineState != null and onlineState == 1">
AND we.equipment_state IN (1,2) AND de.equipment_state IN (1,2)
</if> </if>
<if test="onlineState != null and onlineState != 1"> <if test="onlineState != null and onlineState != 1">
AND we.equipment_state = #{onlineState} AND de.equipment_state = #{onlineState}
</if> </if>
<if test="deviceModel != null"> <if test="deviceModel != null">
AND we.equipment_type = #{deviceModel} AND de.equipment_type = #{deviceModel}
</if> </if>
<if test="searchType != null"> <if test="searchType != null">
<if test="searchType == 1"> <if test="searchType == 1">
AND we.equipment_name LIKE CONCAT('%',#{searchValue},'%') AND de.equipment_name LIKE CONCAT('%',#{searchValue},'%')
</if> </if>
<if test="searchType == 2"> <if test="searchType == 2">
AND we.user_name LIKE CONCAT('%',#{searchValue},'%') AND de.user_name LIKE CONCAT('%',#{searchValue},'%')
</if> </if>
<if test="searchType == 3"> <if test="searchType == 3">
AND we.department_name LIKE CONCAT('%',#{searchValue},'%') AND de.department_name LIKE CONCAT('%',#{searchValue},'%')
</if> </if>
<if test="searchType == 4"> <if test="searchType == 4">
AND we.imei LIKE CONCAT('%',#{searchValue},'%') AND de.imei LIKE CONCAT('%',#{searchValue},'%')
</if> </if>
<if test="searchType == 5"> <if test="searchType == 5">
AND au.phone_number LIKE CONCAT('%',#{searchValue},'%') AND au.phone_number LIKE CONCAT('%',#{searchValue},'%')
</if> </if>
</if> </if>
GROUP BY we.id GROUP BY de.id
<choose> <choose>
<when test="orderState != null and orderState == 'onlineStateAsc'"> <when test="orderState != null and orderState == 'onlineStateAsc'">
ORDER BY FIELD(we.equipment_state,0,3,2,1) ORDER BY FIELD(de.equipment_state,0,3,2,1)
</when> </when>
<when test="state == 0"> <when test="state == 0">
</when> </when>
<otherwise> <otherwise>
ORDER BY FIELD(we.equipment_state,1,2,3,0) ORDER BY FIELD(de.equipment_state,1,2,3,0)
</otherwise> </otherwise>
</choose> </choose>
<choose> <choose>
<when test="orderTime != null and orderTime == 'orderTimeAsc' "> <when test="orderTime != null and orderTime == 'orderTimeAsc' ">
,we.offline_time ASC ,de.offline_time ASC
</when> </when>
<when test="state == 0"> <when test="state == 0">
</when> </when>
<otherwise> <otherwise>
,we.offline_time DESC ,de.offline_time DESC
</otherwise> </otherwise>
</choose> </choose>
</select> </select>
......
...@@ -39,11 +39,53 @@ ...@@ -39,11 +39,53 @@
from device_equipment_info_copy from device_equipment_info_copy
where id = #{id,jdbcType=INTEGER} where id = #{id,jdbcType=INTEGER}
</select> </select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer"> <select id="getEquipmentInfo" resultType="com.skr.mdm.bean.vo.equipment.DeviceEquipmentInfo2VO">
SELECT de.equipment_name,
de.user_name,
de.activation_time,
de.department_name,
de.offline_time,
de.motherboard,
de.serial_number,
de.production_date,
de.vendor,
au.phone_number as userPhoneNumber,
dei.sys_arch,
dei.sys_name,
dei.sys_version,
dei.sys_kernel_version,
dei.sys_login_user,
dei.os_project_num_name,
dei.os_sub_project_num_name,
dei.os_product_id,
dei.os_host_vm_type,
dei.os_cloud_platform_type,
dei.os_is_dedicated_system,
dei.sys_resolution,
dei.sys_hw_version_type,
dei.sys_patch_version,
dei.bios_vendor,
dei.bios_version,
dei.client_version_code,
dei.latitude,
dei.longitude,
dei.update_time
FROM device_equipment de
LEFT JOIN device_equipment_info_copy dei ON dei.equipment_id = de.id
JOIN au_user au on de.user_id = au.id
WHERE au.is_delete = 0
AND de.id = #{equipmentId}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from device_equipment_info_copy delete from device_equipment_info_copy
where id = #{id,jdbcType=INTEGER} where id = #{id,jdbcType=INTEGER}
</delete> </delete>
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.skr.mdm.entity.DeviceEquipmentInfoCopyDO" useGeneratedKeys="true"> <delete id="deleteByCompanyId">
delete
from device_equipment
where company_id = #{companyId}
</delete>
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.skr.mdm.entity.DeviceEquipmentInfoCopyDO" useGeneratedKeys="true">
insert into device_equipment_info_copy insert into device_equipment_info_copy
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
<if test="equipmentId != null"> <if test="equipmentId != null">
......
...@@ -2,7 +2,6 @@ package com.skr.mdm.api.equipment.controller; ...@@ -2,7 +2,6 @@ package com.skr.mdm.api.equipment.controller;
import com.skr.mdm.api.equipment.UserStrategyFactory; import com.skr.mdm.api.equipment.UserStrategyFactory;
import com.skr.mdm.api.equipment.service.EquipmentService; import com.skr.mdm.api.equipment.service.EquipmentService;
import com.skr.mdm.bean.qo.BaseQueryQO;
import com.skr.mdm.bean.qo.equipment.EquipmentAddUpdateQO; import com.skr.mdm.bean.qo.equipment.EquipmentAddUpdateQO;
import com.skr.mdm.bean.qo.equipment.EquipmentPageQO; import com.skr.mdm.bean.qo.equipment.EquipmentPageQO;
import com.skr.mdm.bean.vo.equipment.DeviceEquipmentVO; import com.skr.mdm.bean.vo.equipment.DeviceEquipmentVO;
......
...@@ -68,7 +68,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -68,7 +68,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
private final List<EquipmentImportFailDTO> equipmentImportFailDTOList = Lists.newArrayListWithExpectedSize(256); private final List<EquipmentImportFailDTO> equipmentImportFailDTOList = Lists.newArrayListWithExpectedSize(256);
private Set<String> imeiSet = Sets.newHashSetWithExpectedSize(256); private Set<String> serialSet = Sets.newHashSetWithExpectedSize(256);
private Map<Integer, Set<String>> equipmentNameMap = Maps.newHashMapWithExpectedSize(256); private Map<Integer, Set<String>> equipmentNameMap = Maps.newHashMapWithExpectedSize(256);
...@@ -129,7 +129,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -129,7 +129,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
.eq(DeviceEquipmentDO::getIsDelete, DeleteStateEnum.NON_DELETE.getState()) .eq(DeviceEquipmentDO::getIsDelete, DeleteStateEnum.NON_DELETE.getState())
.list(); .list();
if (CollectionUtils.isNotEmpty(deviceEquipmentDOList)) { if (CollectionUtils.isNotEmpty(deviceEquipmentDOList)) {
this.imeiSet = deviceEquipmentDOList.stream() this.serialSet = deviceEquipmentDOList.stream()
.map(DeviceEquipmentDO::getSerialNumber) .map(DeviceEquipmentDO::getSerialNumber)
.filter(StringUtils::isNotBlank) .filter(StringUtils::isNotBlank)
.collect(Collectors.toSet()); .collect(Collectors.toSet());
...@@ -188,12 +188,12 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -188,12 +188,12 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
return; return;
} }
// imei查重 // imei查重
if (CollectionUtils.isNotEmpty(imeiSet) && imeiSet.contains(data.getSerialNum())) { if (CollectionUtils.isNotEmpty(serialSet) && serialSet.contains(data.getSerialNum())) {
equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "IMEI与系统中重复")); equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "序列号与系统中重复"));
failCount++; failCount++;
return; return;
} }
imeiSet.add(data.getSerialNum()); serialSet.add(data.getSerialNum());
// 如果存在设备名进行查重 不存在自动生成设备名 // 如果存在设备名进行查重 不存在自动生成设备名
AuUserDO userDO = userDOMap.get(data.getPhoneNumber()); AuUserDO userDO = userDOMap.get(data.getPhoneNumber());
String equipmentName = data.getEquipmentName(); String equipmentName = data.getEquipmentName();
...@@ -233,7 +233,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -233,7 +233,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
// 生成错误报告,并上传到minio // 生成错误报告,并上传到minio
uploadErrorReport(); uploadErrorReport();
equipmentDOList.clear(); equipmentDOList.clear();
imeiSet.clear(); serialSet.clear();
equipmentNameMap.clear(); equipmentNameMap.clear();
userDOMap.clear(); userDOMap.clear();
} }
...@@ -309,10 +309,10 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -309,10 +309,10 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "手机号格式错误")); equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "手机号格式错误"));
return true; return true;
} }
if (!Pattern.matches(RegexConstants.IMEI_REGEX, data.getSerialNum()) && !Pattern.matches(RegexConstants.IMEI_NUMBER_REGEX, data.getSerialNum())) { // if (!Pattern.matches(RegexConstants.IMEI_REGEX, data.getSerialNum()) && !Pattern.matches(RegexConstants.IMEI_NUMBER_REGEX, data.getSerialNum())) {
equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "IMEI格式错误")); // equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "IMEI格式错误"));
return true; // return true;
} // }
if (StringUtils.isNotBlank(data.getEquipmentName()) && !Pattern.matches(RegexConstants.EQUIPMENT_NAME_REGEX, data.getEquipmentName())) { if (StringUtils.isNotBlank(data.getEquipmentName()) && !Pattern.matches(RegexConstants.EQUIPMENT_NAME_REGEX, data.getEquipmentName())) {
equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "设备名格式错误")); equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "设备名格式错误"));
return true; return true;
...@@ -326,7 +326,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -326,7 +326,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
return true; return true;
} }
if (StringUtils.isBlank(data.getSerialNum())) { if (StringUtils.isBlank(data.getSerialNum())) {
equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "IMEI不能为空")); equipmentImportFailDTOList.add(covertEquipmentImportFailDTO(data, "序列号不能为空"));
return true; return true;
} }
return false; return false;
...@@ -347,7 +347,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -347,7 +347,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
private EquipmentImportFailDTO covertEquipmentImportFailDTO(EquipmentImportData userImportData, String failInfo) { private EquipmentImportFailDTO covertEquipmentImportFailDTO(EquipmentImportData userImportData, String failInfo) {
return EquipmentImportFailDTO.builder() return EquipmentImportFailDTO.builder()
.phoneNumber(userImportData.getPhoneNumber()) .phoneNumber(userImportData.getPhoneNumber())
.imei(userImportData.getSerialNum()) .serial(userImportData.getSerialNum())
.equipmentName(userImportData.getEquipmentName()) .equipmentName(userImportData.getEquipmentName())
.failInfo(failInfo) .failInfo(failInfo)
.build(); .build();
......
...@@ -2,7 +2,9 @@ package com.skr.mdm.api.equipment.service.impl; ...@@ -2,7 +2,9 @@ package com.skr.mdm.api.equipment.service.impl;
import com.skr.mdm.api.equipment.annotation.UserStrategy; import com.skr.mdm.api.equipment.annotation.UserStrategy;
import com.skr.mdm.api.equipment.service.UserStrategyService; import com.skr.mdm.api.equipment.service.UserStrategyService;
import com.skr.mdm.bean.vo.equipment.DeviceEquipmentInfo2VO;
import com.skr.mdm.dao.DeviceEquipmentDao; import com.skr.mdm.dao.DeviceEquipmentDao;
import com.skr.mdm.dao.DeviceEquipmentInfoCopyDao;
import com.skr.mdm.enums.SendCmdConfigEnum; import com.skr.mdm.enums.SendCmdConfigEnum;
import com.skr.mdm.enums.UserStrategyEnum; import com.skr.mdm.enums.UserStrategyEnum;
import com.skr.mdm.handle.IssuedUserHandler; import com.skr.mdm.handle.IssuedUserHandler;
...@@ -23,6 +25,8 @@ public class EquipmentInfoUserStrategyServiceImpl implements UserStrategyService ...@@ -23,6 +25,8 @@ public class EquipmentInfoUserStrategyServiceImpl implements UserStrategyService
private DeviceEquipmentDao equipmentDao; private DeviceEquipmentDao equipmentDao;
@Autowired @Autowired
private IssuedUserHandler issuedUserHandler; private IssuedUserHandler issuedUserHandler;
@Autowired
private DeviceEquipmentInfoCopyDao deviceEquipmentInfoCopyDao;
@Override @Override
public ResponseResult getUserStrategy(Integer equipmentId) { public ResponseResult getUserStrategy(Integer equipmentId) {
...@@ -30,6 +34,7 @@ public class EquipmentInfoUserStrategyServiceImpl implements UserStrategyService ...@@ -30,6 +34,7 @@ public class EquipmentInfoUserStrategyServiceImpl implements UserStrategyService
DeviceEquipmentDO equipmentDO = equipmentDao.selectById(equipmentId); DeviceEquipmentDO equipmentDO = equipmentDao.selectById(equipmentId);
issuedUserHandler.issuedUser(Collections.singletonList(equipmentId), equipmentDO.getCompanyId(), issuedUserHandler.issuedUser(Collections.singletonList(equipmentId), equipmentDO.getCompanyId(),
SendCmdConfigEnum.UPLOAD_EQUIPMENT.getCmd(), null); SendCmdConfigEnum.UPLOAD_EQUIPMENT.getCmd(), null);
return ResponseResult.success(equipmentDao.getEquipmentInfo(equipmentId)); DeviceEquipmentInfo2VO deviceEquipmentInfo2VO = deviceEquipmentInfoCopyDao.getEquipmentInfo(equipmentId);
return ResponseResult.success(deviceEquipmentInfo2VO);
} }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment