提交 208f41c9 authored 作者: zhoushaopan's avatar zhoushaopan

feat(装备模块,3D模块): 新增修改存放位置的接口

新增修改存放位置的接口
上级 b403613b
...@@ -7,12 +7,10 @@ import com.tykj.dev.config.cache.ConfigCache; ...@@ -7,12 +7,10 @@ import com.tykj.dev.config.cache.ConfigCache;
import com.tykj.dev.config.swagger.AutoDocument; import com.tykj.dev.config.swagger.AutoDocument;
import com.tykj.dev.device.library.repository.DeviceLibraryDao; import com.tykj.dev.device.library.repository.DeviceLibraryDao;
import com.tykj.dev.device.library.repository.DeviceLogDao; import com.tykj.dev.device.library.repository.DeviceLogDao;
import com.tykj.dev.device.library.service.DeviceChangeService; import com.tykj.dev.device.library.service.*;
import com.tykj.dev.device.library.service.DeviceLibraryCacheService;
import com.tykj.dev.device.library.service.DeviceLibraryService;
import com.tykj.dev.device.library.service.DeviceLogService;
import com.tykj.dev.device.library.subject.Dto.DeviceLogDto; import com.tykj.dev.device.library.subject.Dto.DeviceLogDto;
import com.tykj.dev.device.library.subject.domin.DeviceLibrary; import com.tykj.dev.device.library.subject.domin.DeviceLibrary;
import com.tykj.dev.device.library.subject.domin.DeviceLibraryPosition;
import com.tykj.dev.device.library.subject.domin.DeviceLog; import com.tykj.dev.device.library.subject.domin.DeviceLog;
import com.tykj.dev.device.library.subject.vo.*; import com.tykj.dev.device.library.subject.vo.*;
import com.tykj.dev.device.user.cache.UnitsCache; import com.tykj.dev.device.user.cache.UnitsCache;
...@@ -41,6 +39,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -41,6 +39,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.constraints.Min; import javax.validation.constraints.Min;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
...@@ -91,8 +90,8 @@ public class DeviceLibraryController { ...@@ -91,8 +90,8 @@ public class DeviceLibraryController {
@Autowired @Autowired
private UnitsService unitsService; private UnitsService unitsService;
@Autowired @Resource
private UnitsCache unitsCache; private DeviceLibraryPositionService deviceLibraryPositionService;
@ApiOperation(value = "修改装备备注", notes = "修改装备备注") @ApiOperation(value = "修改装备备注", notes = "修改装备备注")
@PostMapping("/setRecord") @PostMapping("/setRecord")
...@@ -803,6 +802,9 @@ public class DeviceLibraryController { ...@@ -803,6 +802,9 @@ public class DeviceLibraryController {
deviceLogService.addLog(deviceLogDto); deviceLogService.addLog(deviceLogDto);
deviceLibraryEntity.setStorageLocation(libraryUpdateVo.getStorageLocation()); deviceLibraryEntity.setStorageLocation(libraryUpdateVo.getStorageLocation());
deviceLibraryEntity.setStorageLocationId(libraryUpdateVo.getStorageLocationId()); deviceLibraryEntity.setStorageLocationId(libraryUpdateVo.getStorageLocationId());
//从而修改3D的库房位置
deviceLibraryPositionService.onlyUpdateStorageLocation(libraryUpdateVo.getStorageLocationId(),
libraryUpdateVo.getStorageLocation(), libraryUpdateVo.getDeviceId());
} }
//add 备注 //add 备注
if (libraryUpdateVo.getRecord()!=null && !libraryUpdateVo.getRecord().equals(deviceLibraryEntity.getRecord())){ if (libraryUpdateVo.getRecord()!=null && !libraryUpdateVo.getRecord().equals(deviceLibraryEntity.getRecord())){
......
...@@ -19,7 +19,9 @@ import org.springframework.web.bind.annotation.*; ...@@ -19,7 +19,9 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* DATE:2021-8-11 * DATE:2021-8-11
...@@ -36,19 +38,41 @@ public class DeviceLibraryPositionController { ...@@ -36,19 +38,41 @@ public class DeviceLibraryPositionController {
private DeviceLibraryPositionService deviceLibraryPositionService; private DeviceLibraryPositionService deviceLibraryPositionService;
@GetMapping("/findByStorageLocationId") @GetMapping("/findByStorageLocationId")
@ApiOperation(value = "根据库房位置查询装备") @ApiOperation(value = "根据当前库房位置查询装备")
public ResponseEntity<List<DeviceLibraryPosition>> findByStorageLocationId(Integer StorageLocationId){ public ResponseEntity<List<DeviceLibraryPosition>> findByStorageLocationId(Integer StorageLocationId){
List<DeviceLibraryPosition> deviceLibraryPositions = new ArrayList<>(); List<DeviceLibraryPosition> deviceLibraryPositions = new ArrayList<>();
for (DeviceLibraryPosition deviceLibraryPosition : deviceLibraryPositionService.findByStorageLocationId(StorageLocationId)) { if (!deviceLibraryPositionService.findByStorageLocationId(StorageLocationId).isEmpty()){
deviceLibraryPosition.setDeviceLibraryPositionMessageVo( for (DeviceLibraryPosition deviceLibraryPosition : deviceLibraryPositionService.findByStorageLocationId(StorageLocationId)) {
JacksonUtil.readValue(deviceLibraryPosition.getDeviceLibraryPositionMessage(), new TypeReference<DeviceLibraryPositionMessageVo>() {})); deviceLibraryPosition.setDeviceLibraryPositionMessageVo(
deviceLibraryPosition.setRotationVo( JacksonUtil.readValue(deviceLibraryPosition.getDeviceLibraryPositionMessage(), new TypeReference<DeviceLibraryPositionMessageVo>() {}));
JacksonUtil.readValue(deviceLibraryPosition.getRotation(), new TypeReference<RotationVo>() {})); deviceLibraryPosition.setRotationVo(
deviceLibraryPositions.add(deviceLibraryPosition); JacksonUtil.readValue(deviceLibraryPosition.getRotation(), new TypeReference<RotationVo>() {}));
deviceLibraryPositions.add(deviceLibraryPosition);
}
} }
return ResponseEntity.ok(deviceLibraryPositions); return ResponseEntity.ok(deviceLibraryPositions);
} }
@GetMapping("/findByOtherStorageLocationId")
@ApiOperation(value = "根据其他库房位置查询装备")
public ResponseEntity<Map<String, Object>> findByOtherStorageLocationId(List<Integer> StorageLocationIds){
Map<String, Object> map = new HashMap<>();
List<DeviceLibraryPosition> deviceLibraryPositions = new ArrayList<>();
List<DeviceLibraryPosition> libraryPositions =
deviceLibraryPositionService.findByStorageLocationIds(StorageLocationIds);
if (!libraryPositions.isEmpty()){
for (DeviceLibraryPosition libraryPosition : libraryPositions) {
libraryPosition.setDeviceLibraryPositionMessageVo(
JacksonUtil.readValue(libraryPosition.getDeviceLibraryPositionMessage(), new TypeReference<DeviceLibraryPositionMessageVo>() {}));
libraryPosition.setRotationVo(
JacksonUtil.readValue(libraryPosition.getRotation(), new TypeReference<RotationVo>() {}));
deviceLibraryPositions.add(libraryPosition);
}
}
map.put("deviceLibraryPositions",deviceLibraryPositions);
return ResponseEntity.ok(map);
}
@PostMapping("/updateDeviceLibraryPosition") @PostMapping("/updateDeviceLibraryPosition")
@ApiOperation(value = "修改3D") @ApiOperation(value = "修改3D")
public ResponseEntity<String> updateDeviceLibraryPosition(@RequestBody DeviceLibraryPosition deviceLibraryPosition){ public ResponseEntity<String> updateDeviceLibraryPosition(@RequestBody DeviceLibraryPosition deviceLibraryPosition){
......
...@@ -20,6 +20,24 @@ import java.util.List; ...@@ -20,6 +20,24 @@ import java.util.List;
public interface DeviceLibraryPositionDao extends JpaRepository<DeviceLibraryPosition, Integer>, JpaSpecificationExecutor<DeviceLibraryPosition> { public interface DeviceLibraryPositionDao extends JpaRepository<DeviceLibraryPosition, Integer>, JpaSpecificationExecutor<DeviceLibraryPosition> {
List<DeviceLibraryPosition> findAllByStorageLocationId(Integer StorageLocationId); List<DeviceLibraryPosition> findAllByStorageLocationId(Integer StorageLocationId);
List<DeviceLibraryPosition> findAllByStorageLocationIdIn(List<Integer> StorageLocationIds);
DeviceLibraryPosition findByDeviceId(Integer deviceId);
DeviceLibraryPosition findAllByDeviceIdIn(List<Integer> deviceIds);
@Transactional
@Modifying
@Query("update DeviceLibraryPosition d set d.storageLocationId = :StorageLocationId ,d.storageLocation = :StorageLocation where d.deviceId = :deviceId")
int onlyUpdateStorageLocation(@Param("StorageLocationId") Integer StorageLocationId,
@Param("StorageLocation")String StorageLocation,@Param("deviceId")Integer deviceId);
@Transactional
@Modifying
@Query("update DeviceLibraryPosition d set d.storageLocationId = :StorageLocationId ,d.storageLocation = :StorageLocation where d.deviceId in :deviceIds")
int batchUpdateStorageLocation(@Param("StorageLocationId") Integer StorageLocationId,
@Param("StorageLocation")String StorageLocation,@Param("deviceIds")List<Integer> deviceIds);
} }
...@@ -18,7 +18,29 @@ public interface DeviceLibraryPositionService { ...@@ -18,7 +18,29 @@ public interface DeviceLibraryPositionService {
List<DeviceLibraryPosition> findByStorageLocationId(Integer StorageLocationId); List<DeviceLibraryPosition> findByStorageLocationId(Integer StorageLocationId);
List<DeviceLibraryPosition> findByStorageLocationIds(List<Integer> StorageLocationIds);
DeviceLibraryPosition findById(Integer id); DeviceLibraryPosition findById(Integer id);
void deleteByPosition(Integer id); void deleteByPosition(Integer id);
DeviceLibraryPosition findByDeviceId(Integer deviceId);
DeviceLibraryPosition findByDeviceIds(List<Integer> deviceIds);
/**
* 根据装备id修改库房位置
* @param StorageLocationId 库房id
* @param StorageLocation 库房名称
* @param deviceId 装备id
*/
void onlyUpdateStorageLocation(Integer StorageLocationId,String StorageLocation,Integer deviceId);
/**
* 批量修改库房位置
* @param StorageLocationId 库房id
* @param StorageLocation 库房名称
* @param deviceIds 装备id的集合
*/
void batchUpdateStorageLocation(Integer StorageLocationId,String StorageLocation,List<Integer> deviceIds);
} }
...@@ -11,6 +11,7 @@ import com.tykj.dev.config.base.DeviceLifeStatus; ...@@ -11,6 +11,7 @@ import com.tykj.dev.config.base.DeviceLifeStatus;
import com.tykj.dev.device.library.controller.CacheLibraryController; import com.tykj.dev.device.library.controller.CacheLibraryController;
import com.tykj.dev.device.library.repository.DeviceLibraryDao; import com.tykj.dev.device.library.repository.DeviceLibraryDao;
import com.tykj.dev.device.library.service.DeviceLibraryCacheService; import com.tykj.dev.device.library.service.DeviceLibraryCacheService;
import com.tykj.dev.device.library.service.DeviceLibraryPositionService;
import com.tykj.dev.device.library.service.DeviceLibraryService; import com.tykj.dev.device.library.service.DeviceLibraryService;
import com.tykj.dev.device.library.service.DeviceLogService; import com.tykj.dev.device.library.service.DeviceLogService;
import com.tykj.dev.device.library.subject.Dto.DeviceLogDto; import com.tykj.dev.device.library.subject.Dto.DeviceLogDto;
...@@ -83,6 +84,9 @@ public class DeviceLibraryServiceImpl implements DeviceLibraryService { ...@@ -83,6 +84,9 @@ public class DeviceLibraryServiceImpl implements DeviceLibraryService {
@Qualifier("taskExecutor") @Qualifier("taskExecutor")
private Executor executor; private Executor executor;
@Autowired
private DeviceLibraryPositionService deviceLibraryPositionService;
@Override @Override
@UpdateCache @UpdateCache
public DeviceLibrary addEntity(DeviceLibrary deviceLibraryEntity) { public DeviceLibrary addEntity(DeviceLibrary deviceLibraryEntity) {
...@@ -1167,6 +1171,9 @@ public class DeviceLibraryServiceImpl implements DeviceLibraryService { ...@@ -1167,6 +1171,9 @@ public class DeviceLibraryServiceImpl implements DeviceLibraryService {
CompletableFuture.runAsync(()->{ CompletableFuture.runAsync(()->{
deviceLogService.addAllLog(deviceLogDtos); deviceLogService.addAllLog(deviceLogDtos);
}); });
deviceLibraryPositionService.batchUpdateStorageLocation(updateStorageLocationVo.getStorageLocationId(),
updateStorageLocationVo.getStorageLocation(),deviceIds);
} }
@Override @Override
......
...@@ -79,16 +79,16 @@ public class DeviceLibraryPosition implements Serializable { ...@@ -79,16 +79,16 @@ public class DeviceLibraryPosition implements Serializable {
*/ */
@ApiModelProperty(value = "rfid卡号") @ApiModelProperty(value = "rfid卡号")
private String rfidCardId; private String rfidCardId;
/** // /**
* 所在单位 // * 所在单位
*/ // */
@ApiModelProperty(value = "所在单位") // @ApiModelProperty(value = "所在单位")
private String locationUnit; // private String locationUnit;
/** // /**
* 所属单位 // * 所属单位
*/ // */
@ApiModelProperty(value = "所属单位") // @ApiModelProperty(value = "所属单位")
private String ownUnit; // private String ownUnit;
/** /**
* 创建用户id * 创建用户id
......
...@@ -19,9 +19,6 @@ import java.util.Optional; ...@@ -19,9 +19,6 @@ import java.util.Optional;
@Service @Service
public class DeviceLibraryPositionServiceImpl implements DeviceLibraryPositionService { public class DeviceLibraryPositionServiceImpl implements DeviceLibraryPositionService {
@Autowired
private UserUtils userUtils;
@Autowired @Autowired
private DeviceLibraryPositionDao deviceLibraryPositionDao; private DeviceLibraryPositionDao deviceLibraryPositionDao;
...@@ -46,6 +43,11 @@ public class DeviceLibraryPositionServiceImpl implements DeviceLibraryPositionSe ...@@ -46,6 +43,11 @@ public class DeviceLibraryPositionServiceImpl implements DeviceLibraryPositionSe
} }
@Override
public List<DeviceLibraryPosition> findByStorageLocationIds(List<Integer> StorageLocationIds) {
return deviceLibraryPositionDao.findAllByStorageLocationIdIn(StorageLocationIds);
}
@Override @Override
public DeviceLibraryPosition findById(Integer id) { public DeviceLibraryPosition findById(Integer id) {
DeviceLibraryPosition deviceLibraryPosition = new DeviceLibraryPosition(); DeviceLibraryPosition deviceLibraryPosition = new DeviceLibraryPosition();
...@@ -60,4 +62,26 @@ public class DeviceLibraryPositionServiceImpl implements DeviceLibraryPositionSe ...@@ -60,4 +62,26 @@ public class DeviceLibraryPositionServiceImpl implements DeviceLibraryPositionSe
public void deleteByPosition(Integer id) { public void deleteByPosition(Integer id) {
deviceLibraryPositionDao.deleteById(id); deviceLibraryPositionDao.deleteById(id);
} }
@Override
public DeviceLibraryPosition findByDeviceId(Integer deviceId) {
return deviceLibraryPositionDao.findByDeviceId(deviceId);
}
@Override
public DeviceLibraryPosition findByDeviceIds(List<Integer> deviceIds) {
return deviceLibraryPositionDao.findAllByDeviceIdIn(deviceIds);
}
@Override
public void onlyUpdateStorageLocation(Integer StorageLocationId, String StorageLocation,Integer deviceId) {
if (findByDeviceId(deviceId)!=null){
deviceLibraryPositionDao.onlyUpdateStorageLocation(StorageLocationId,StorageLocation,deviceId);
}
}
@Override
public void batchUpdateStorageLocation(Integer StorageLocationId, String StorageLocation, List<Integer> deviceIds) {
deviceLibraryPositionDao.batchUpdateStorageLocation(StorageLocationId,StorageLocation,deviceIds);
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论