Browse Source

修改密集架

master
刘力 3 years ago
parent
commit
9061928b16
  1. 23
      storeroom/src/main/java/com/storeroom/modules/device/controller/DeseCabinetController.java
  2. 27
      storeroom/src/main/java/com/storeroom/modules/device/controller/SupplierController.java
  3. 13
      storeroom/src/main/java/com/storeroom/modules/device/repository/DeseCabinetRepository.java
  4. 15
      storeroom/src/main/java/com/storeroom/modules/device/service/SupplierService.java
  5. 23
      storeroom/src/main/java/com/storeroom/modules/device/service/impl/DenseCabinetImpl.java
  6. 28
      storeroom/src/main/java/com/storeroom/modules/device/service/impl/SupplierImpl.java
  7. 11
      storeroom/src/main/java/com/storeroom/modules/device/service/mapstruct/SupplierMapper.java

23
storeroom/src/main/java/com/storeroom/modules/device/controller/DeseCabinetController.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.DeseCabinetService; import com.storeroom.modules.device.service.DeseCabinetService;
import com.storeroom.modules.device.service.DeviceService; import com.storeroom.modules.device.service.DeviceService;
@ -18,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequiredArgsConstructor @RequiredArgsConstructor
@Api(tags = "密集架控制器")
@Api(tags = "密集架管理")
@RequestMapping("/api/desecabinet/") @RequestMapping("/api/desecabinet/")
public class DeseCabinetController { public class DeseCabinetController {
@ -28,6 +29,24 @@ public class DeseCabinetController {
@ApiOperation("新增密集架") @ApiOperation("新增密集架")
@AnonymousPostMapping("create") @AnonymousPostMapping("create")
public ApiResponse<Object> create(@RequestBody DeseCabinetDto deseCabinetDto) { public ApiResponse<Object> create(@RequestBody DeseCabinetDto deseCabinetDto) {
verifyDate(deseCabinetDto);
deseCabinetService.create(deseCabinetDto);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
@ApiOperation("新增密集架")
@AnonymousPutMapping("update")
public ApiResponse<Object> update(@RequestBody DeseCabinetDto deseCabinetDto) {
verifyDate(deseCabinetDto);
deseCabinetService.update(deseCabinetDto);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
/**
* 验证数据
* @param deseCabinetDto
*/
private void verifyDate(DeseCabinetDto deseCabinetDto) {
if (!StringUtils.isEmpty(deseCabinetDto.getId())) { if (!StringUtils.isEmpty(deseCabinetDto.getId())) {
throw new BaseException("id不为空"); throw new BaseException("id不为空");
} }
@ -43,8 +62,6 @@ public class DeseCabinetController {
) { ) {
throw new BaseException("必填字段不能为空"); throw new BaseException("必填字段不能为空");
} }
deseCabinetService.create(deseCabinetDto);
return ApiResponse.success(ResponseStatus.SUCCESS);
} }
} }

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

@ -0,0 +1,27 @@
package com.storeroom.modules.device.controller;
import com.storeroom.annotaion.rest.AnonymousGetMapping;
import com.storeroom.modules.device.service.SupplierService;
import com.storeroom.utils.ApiResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@Api(tags = "供应商管理")
@RequiredArgsConstructor
@RequestMapping("/api/supplier/")
public class SupplierController {
private final SupplierService supplierService;
@ApiOperation("新增设备-获取供应商下拉列表")
@AnonymousGetMapping("dropdown-list")
public ApiResponse<Object> getAll() {
return ApiResponse.success(supplierService.getAll());
}
}

13
storeroom/src/main/java/com/storeroom/modules/device/repository/DeseCabinetRepository.java

@ -3,9 +3,20 @@ package com.storeroom.modules.device.repository;
import com.storeroom.modules.device.domain.DeseCabinet; import com.storeroom.modules.device.domain.DeseCabinet;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
public interface DeseCabinetRepository extends JpaRepository<DeseCabinet,String>, JpaSpecificationExecutor<DeseCabinet> {
import java.util.List;
public interface DeseCabinetRepository extends JpaRepository<DeseCabinet, String>, JpaSpecificationExecutor<DeseCabinet> {
/**
* 区号ip 端口号查询
* @param areaNo
* @param ip
* @param port
* @return
*/
@Query(value = "SELECT * FROM dese_cabinet a JOIN device_info b ON a.device_info_id=b.id WHERE a.area_No=1? AND b.device_ip=2? AND b.device_port=3?", nativeQuery = true)
List<DeseCabinet> findIpAndPortAndAreaNo(Integer areaNo, String ip, Integer port);
} }

15
storeroom/src/main/java/com/storeroom/modules/device/service/SupplierService.java

@ -0,0 +1,15 @@
package com.storeroom.modules.device.service;
import com.storeroom.modules.device.service.dto.SupplierDto;
import java.util.List;
public interface SupplierService {
/**
* 获取所有
* @return
*/
List<SupplierDto> getAll();
}

23
storeroom/src/main/java/com/storeroom/modules/device/service/impl/DenseCabinetImpl.java

@ -15,7 +15,9 @@ import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.w3c.dom.stylesheets.LinkStyle;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.ThreadLocalRandom;
@ -30,15 +32,15 @@ public class DenseCabinetImpl implements DeseCabinetService {
@Override @Override
@Transactional
@Transactional(rollbackFor = Exception.class)
public void create(DeseCabinetDto deseCabinetDto) { public void create(DeseCabinetDto deseCabinetDto) {
//转换密集架实体 //转换密集架实体
DeseCabinet deseCabinet = deseCabinetMapper.toEntity(deseCabinetDto); DeseCabinet deseCabinet = deseCabinetMapper.toEntity(deseCabinetDto);
//根据IP和端口号查询设备 //根据IP和端口号查询设备
DeviceInfo deviceInfo = deviceInfoRepository.findByDeviceIpAndDevicePort(deseCabinetDto.getDeviceInfo().getDeviceIp(), deseCabinetDto.getDeviceInfo().getDevicePort());
List<DeseCabinet> deseCabinet1 = deseCabinetRepository.findIpAndPortAndAreaNo(deseCabinetDto.getAreaNo(), deseCabinetDto.getDeviceInfo().getDeviceIp(), deseCabinetDto.getDeviceInfo().getDevicePort());
//判断设备同一IP和端口下是否重复 //判断设备同一IP和端口下是否重复
if (!ObjectUtils.isEmpty(deviceInfo)) {
if (!ObjectUtils.isEmpty(deseCabinet1)) {
throw new BaseException("同一IP和端口号下不能重复添加设备"); throw new BaseException("同一IP和端口号下不能重复添加设备");
} }
//创建设备信息id //创建设备信息id
@ -83,8 +85,23 @@ public class DenseCabinetImpl implements DeseCabinetService {
@Override @Override
@Transactional(rollbackFor = Exception.class)
public void update(DeseCabinetDto deseCabinetDto) { public void update(DeseCabinetDto deseCabinetDto) {
List<DeseCabinet> deseCabinet = deseCabinetRepository.findIpAndPortAndAreaNo(deseCabinetDto.getAreaNo(), deseCabinetDto.getDeviceInfo().getDeviceIp(), deseCabinetDto.getDeviceInfo().getDevicePort());
if (!ObjectUtils.isEmpty(deseCabinet)) {
throw new BaseException("同一IP和端口号下不能重复添加设备");
}
DeseCabinet deseCabinet1 = deseCabinetMapper.toEntity(deseCabinetDto);
DeseCabinet deseCabinet2 = deseCabinetRepository.findById(deseCabinet1.getId()).orElseGet(DeseCabinet::new);
if (ObjectUtils.isEmpty(deseCabinet2)) {
throw new BaseException("数据不存在");
}
deseCabinet2.getDeviceInfo().setDeviceName(deseCabinetDto.getDeviceInfo().getDeviceName());
deseCabinet2.getDeviceInfo().setDeviceIp(deseCabinetDto.getDeviceInfo().getDeviceIp());
deseCabinet2.getDeviceInfo().setDevicePort(deseCabinetDto.getDeviceInfo().getDevicePort());
deseCabinet2.setStoreroomCode(deseCabinetDto.getStoreroomCode());
deseCabinetRepository.save(deseCabinet2);
} }
@Override @Override

28
storeroom/src/main/java/com/storeroom/modules/device/service/impl/SupplierImpl.java

@ -0,0 +1,28 @@
package com.storeroom.modules.device.service.impl;
import com.storeroom.modules.device.domain.Supplier;
import com.storeroom.modules.device.repository.SupplierRepository;
import com.storeroom.modules.device.service.SupplierService;
import com.storeroom.modules.device.service.dto.SupplierDto;
import com.storeroom.modules.device.service.mapstruct.SupplierMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@RequiredArgsConstructor
public class SupplierImpl implements SupplierService {
private final SupplierRepository supplierRepository;
private final SupplierMapper supplierMapper;
@Override
public List<SupplierDto> getAll() {
List<Supplier> supplierList = supplierRepository.findAll();
List<SupplierDto> list = supplierMapper.toDto(supplierList);
return list;
}
}

11
storeroom/src/main/java/com/storeroom/modules/device/service/mapstruct/SupplierMapper.java

@ -0,0 +1,11 @@
package com.storeroom.modules.device.service.mapstruct;
import com.storeroom.base.BaseMapper;
import com.storeroom.modules.device.domain.Supplier;
import com.storeroom.modules.device.service.dto.SupplierDto;
import org.mapstruct.Mapper;
import org.mapstruct.ReportingPolicy;
@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE)
public interface SupplierMapper extends BaseMapper<SupplierDto, Supplier> {
}
Loading…
Cancel
Save