Browse Source

所有设备添加修改

master
刘力 3 years ago
parent
commit
f336d564bf
  1. 20
      storeroom/src/main/java/com/storeroom/modules/device/controller/DeseCabinetController.java
  2. 27
      storeroom/src/main/java/com/storeroom/modules/device/controller/InsideDevicesController.java
  3. 60
      storeroom/src/main/java/com/storeroom/modules/device/controller/OutsideDevicesController.java
  4. 9
      storeroom/src/main/java/com/storeroom/modules/device/repository/DeviceInfoRepository.java
  5. 13
      storeroom/src/main/java/com/storeroom/modules/device/service/DeviceService.java
  6. 25
      storeroom/src/main/java/com/storeroom/modules/device/service/impl/DeviceImpl.java

20
storeroom/src/main/java/com/storeroom/modules/device/controller/DeseCabinetController.java

@ -12,6 +12,7 @@ import com.storeroom.utils.enums.ResponseStatus;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
@ -49,22 +50,21 @@ public class DeseCabinetController {
} }
/** /**
* 必填字段验证 * 必填字段验证
* *
* @param deviceInfoDto / * @param deviceInfoDto /
*/ */
private void verifyValues(@RequestBody DeviceInfoDto deviceInfoDto) { private void verifyValues(@RequestBody DeviceInfoDto deviceInfoDto) {
if (deviceInfoDto.getAreaNo() != null
&& deviceInfoDto.getRowNo() != null
&& deviceInfoDto.getSumColumnNo() != null
&& deviceInfoDto.getFirstColumnNo() != null
&& deviceInfoDto.getPartNo() != null
&& StringUtils.isEmpty(deviceInfoDto.getDeviceName())
&& StringUtils.isEmpty(deviceInfoDto.getStoreroomId().getId())
&& StringUtils.isEmpty(deviceInfoDto.getDeviceIp())
&& deviceInfoDto.getDevicePort() != null
if (ObjectUtils.isEmpty(deviceInfoDto.getAreaNo())
|| ObjectUtils.isEmpty(deviceInfoDto.getRowNo())
|| ObjectUtils.isEmpty(deviceInfoDto.getSumColumnNo())
|| ObjectUtils.isEmpty(deviceInfoDto.getFirstColumnNo())
|| ObjectUtils.isEmpty(deviceInfoDto.getPartNo())
|| StringUtils.isEmpty(deviceInfoDto.getDeviceName())
|| StringUtils.isEmpty(deviceInfoDto.getStoreroomId().getId())
|| StringUtils.isEmpty(deviceInfoDto.getDeviceIp())
|| ObjectUtils.isEmpty(deviceInfoDto.getDevicePort())
) { ) {
throw new BaseException("必填字段不能为空"); throw new BaseException("必填字段不能为空");
} }

27
storeroom/src/main/java/com/storeroom/modules/device/controller/InsideDevicesController.java

@ -2,6 +2,7 @@ package com.storeroom.modules.device.controller;
import com.storeroom.annotaion.rest.AnonymousPostMapping; import com.storeroom.annotaion.rest.AnonymousPostMapping;
import com.storeroom.annotaion.rest.AnonymousPutMapping;
import com.storeroom.exception.BaseException; import com.storeroom.exception.BaseException;
import com.storeroom.modules.device.service.DeviceService; import com.storeroom.modules.device.service.DeviceService;
import com.storeroom.modules.device.service.dto.DeviceInfoDto; import com.storeroom.modules.device.service.dto.DeviceInfoDto;
@ -11,6 +12,7 @@ import com.storeroom.utils.enums.ResponseStatus;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
@ -35,19 +37,30 @@ public class InsideDevicesController {
return ApiResponse.success(ResponseStatus.SUCCESS); return ApiResponse.success(ResponseStatus.SUCCESS);
} }
@ApiOperation("修改环控设备")
@AnonymousPutMapping("update")
public ApiResponse<Object> update(@RequestBody DeviceInfoDto deviceInfoDto) {
if (StringUtils.isEmpty(deviceInfoDto.getId())) {
throw new BaseException("id为空");
}
verifyValues(deviceInfoDto);
deviceService.updateInsideDevices(deviceInfoDto);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
/** /**
* 验证必填值 * 验证必填值
* *
* @param deviceInfoDto
* @param deviceInfoDto /
*/ */
private void verifyValues(DeviceInfoDto deviceInfoDto) { private void verifyValues(DeviceInfoDto deviceInfoDto) {
if (StringUtils.isEmpty(deviceInfoDto.getDeviceName()) &&
StringUtils.isEmpty(deviceInfoDto.getDeviceIp()) &&
deviceInfoDto.getDevicePort() != null &&
StringUtils.isEmpty(deviceInfoDto.getDeviceId()) &&
deviceInfoDto.getDeviceTypeId() != null) {
throw new BaseException("必填字段不能为空");
if (StringUtils.isEmpty(deviceInfoDto.getDeviceName()) ||
StringUtils.isEmpty(deviceInfoDto.getDeviceIp()) ||
ObjectUtils.isEmpty(deviceInfoDto.getDevicePort()) ||
StringUtils.isEmpty(deviceInfoDto.getDeviceId()) ||
ObjectUtils.isEmpty(deviceInfoDto.getDeviceTypeId())) {
throw new BaseException("必填字段不能为空");
} }
} }
} }

60
storeroom/src/main/java/com/storeroom/modules/device/controller/OutsideDevicesController.java

@ -0,0 +1,60 @@
package com.storeroom.modules.device.controller;
import com.storeroom.annotaion.rest.AnonymousPostMapping;
import com.storeroom.annotaion.rest.AnonymousPutMapping;
import com.storeroom.exception.BaseException;
import com.storeroom.modules.device.service.DeviceService;
import com.storeroom.modules.device.service.dto.DeviceInfoDto;
import com.storeroom.utils.ApiResponse;
import com.storeroom.utils.StringUtils;
import com.storeroom.utils.enums.ResponseStatus;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@Api(tags = "外置设备管理")
@RequiredArgsConstructor
@RequestMapping("/api/outsidedevices/")
public class OutsideDevicesController {
private final DeviceService deviceService;
@ApiOperation("创建外置设备:通道门,手持式RFID读写器")
@AnonymousPostMapping("create")
public ApiResponse<Object> create(@RequestBody DeviceInfoDto deviceInfoDto){
if (!StringUtils.isEmpty(deviceInfoDto.getId())){
throw new BaseException("id不为空");
}
verifyValues(deviceInfoDto);
deviceService.createOutsideDevices(deviceInfoDto);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
@ApiOperation("创建外置设备:通道门,手持式RFID读写器")
@AnonymousPutMapping("update")
public ApiResponse<Object> update(@RequestBody DeviceInfoDto deviceInfoDto){
if (StringUtils.isEmpty(deviceInfoDto.getId())){
throw new BaseException("id不能为空");
}
verifyValues(deviceInfoDto);
deviceService.updateOutsideDevices(deviceInfoDto);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
/**
* 验证必填值
* @param deviceInfoDto /
*/
private void verifyValues(DeviceInfoDto deviceInfoDto){
if (StringUtils.isEmpty(deviceInfoDto.getDeviceId()) || ObjectUtils.isEmpty(deviceInfoDto.getSupplierId())){
throw new BaseException("必填字段不能为空");
}
}
}

9
storeroom/src/main/java/com/storeroom/modules/device/repository/DeviceInfoRepository.java

@ -52,6 +52,15 @@ public interface DeviceInfoRepository extends JpaRepository<DeviceInfo, String>,
*/ */
List<DeviceInfo> findByDeviceIpAndDevicePortAndDeviceId(String deviceIp, Integer devicePort, String deviceId); List<DeviceInfo> findByDeviceIpAndDevicePortAndDeviceId(String deviceIp, Integer devicePort, String deviceId);
/**
* 根据第三方设备id和设备类型查询
* @param deviceId
* @param deviceTypeId
* @return
*/
List<DeviceInfo> findByDeviceIdAndDeviceTypeId(String deviceId,DeviceType deviceTypeId);
/** /**
* 查询排序最大值 * 查询排序最大值
* *

13
storeroom/src/main/java/com/storeroom/modules/device/service/DeviceService.java

@ -66,4 +66,17 @@ public interface DeviceService {
void updateInsideDevices(DeviceInfoDto deviceInfoDto); void updateInsideDevices(DeviceInfoDto deviceInfoDto);
/**
* 新增 通道门手持RFID读写器
* @param deviceInfoDto /
*/
void createOutsideDevices(DeviceInfoDto deviceInfoDto);
/**
* 修改 通道门手持RFID读写器
* @param deviceInfoDto /
*/
void updateOutsideDevices(DeviceInfoDto deviceInfoDto);
} }

25
storeroom/src/main/java/com/storeroom/modules/device/service/impl/DeviceImpl.java

@ -246,6 +246,31 @@ public class DeviceImpl implements DeviceService {
} }
@Override
public void createOutsideDevices(DeviceInfoDto deviceInfoDto) {
List<DeviceInfo> deviceInfoList = deviceInfoRepository.findByDeviceIdAndDeviceTypeId(deviceInfoDto.getDeviceId(), deviceInfoDto.getDeviceTypeId());
if (deviceInfoList.size() != 0) {
throw new BaseException("同一类型和同一设备id不能重复添加");
}
DeviceInfo deviceInfo = deviceInfoMapper.toEntity(deviceInfoDto);
deviceInfo.setId(NanoIdUtils.randomNanoId());
Integer num = deviceInfoRepository.findByMax();
if (num == 0) {
deviceInfo.setSequence(1);
}
deviceInfo.setSequence(num + 1);
deviceInfoRepository.save(deviceInfo);
}
@Override
public void updateOutsideDevices(DeviceInfoDto deviceInfoDto) {
DeviceInfo deviceInfo = deviceInfoMapper.toEntity(deviceInfoDto);
DeviceInfo deviceInfo1 = deviceInfoRepository.findById(deviceInfo.getId()).orElseGet(DeviceInfo::new);
deviceInfo1.setDeviceName(deviceInfo.getDeviceName());
deviceInfoRepository.save(deviceInfo1);
}
/** /**
* 生成架位左右位置 * 生成架位左右位置
* *

Loading…
Cancel
Save