提交 69c91a18 authored 作者: zhoushaopan's avatar zhoushaopan

fix(列装模块): 根据修改列装型号从而修改装备型号

根据修改列装型号从而修改装备型号
上级 d23d52c8
......@@ -163,10 +163,10 @@ public interface DeviceLibraryDao extends JpaRepository<DeviceLibrary, Integer>,
List<DeviceLibrary> findAllByPackingIdIn(List<Integer> packingIds);
@Transactional
@Modifying
@Query("update DeviceLibrary o set o.model = :model where o.id in :ids")
int batchUpdateDevices(String model, List<Integer> ids);
@Query("update DeviceLibrary d set d.model = :newModel where d.id in(select d.id from d where d.model = :oldModel)")
int batchUpdateDevices(String oldModel,String newModel);
List<DeviceLibrary> findAllByModel(String model);
}
......
......@@ -228,10 +228,10 @@ public interface DeviceLibraryService {
/**
* 批量更新装备
* @param model 装备的型号
* @param ids 装备的id
* @param
* @param
*/
void batchUpdateDevices(String model,List<Integer> ids);
void batchUpdateDevices(String oldModel,String newModel);
/**
* 通过型号查询装备
*/
......
......@@ -664,8 +664,8 @@ public class DeviceLibraryServiceImpl implements DeviceLibraryService {
}
@Override
public void batchUpdateDevices(String model, List<Integer> ids) {
deviceLibraryDao.batchUpdateDevices(model,ids);
public void batchUpdateDevices(String oldModel,String newModel) {
deviceLibraryDao.batchUpdateDevices(oldModel,newModel);
}
@Override
......
......@@ -32,28 +32,11 @@ public class DeviceModelSort {
* @return 排】序过后的型号列表
*/
public static List<String> modelToSort(List<String> modelList) {
//int -> map {id , value String} -> sort -> mappping get value -> to list
// List<String> resultModel = new ArrayList<>();
// List<SortedModel> sortedModels = new ArrayList<>();
//
// for (String m : modelList) {
// sortedModels.add(new SortedModel(toModelSort(m), m));
// }
//
// sortedModels.sort(Comparator.comparing(SortedModel::getId));
//
// for (SortedModel model : sortedModels) {
// resultModel.add(model.getValue());
// }
return modelList.stream()
.map(s -> new SortedModel(toModelSort(s), s))
.sorted(Comparator.comparing(SortedModel::getId))
.sorted(Comparator.comparing(SortedModel::getId).thenComparing(SortedModel::getValue))
.map(SortedModel::getValue)
.collect(Collectors.toList());
// modelList= modelList.stream().sorted(Comparator.comparing(DeviceModelSort::toModelSort)).collect(Collectors.toList());
// return modelList;
}
@Data
......
......@@ -21,6 +21,7 @@ import com.tykj.dev.device.user.read.service.MessageService;
import com.tykj.dev.device.user.read.subject.bto.MessageBto;
import com.tykj.dev.device.user.subject.service.UserPublicService;
import com.tykj.dev.device.user.util.UserUtils;
import com.tykj.dev.misc.base.ResultObj;
import com.tykj.dev.misc.exception.ApiException;
import com.tykj.dev.misc.utils.*;
import com.tykj.dev.socket.MyWebSocket;
......@@ -29,6 +30,7 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.domain.Page;
import org.springframework.http.ResponseEntity;
import org.springframework.transaction.annotation.Transactional;
......@@ -37,6 +39,7 @@ import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.Min;
import java.util.*;
import java.util.concurrent.Executor;
import java.util.stream.Collectors;
import static java.util.stream.Collectors.groupingBy;
......@@ -88,6 +91,10 @@ public class PackingController {
@Autowired
DeviceLibraryDao deviceLibraryDao;
@Autowired
@Qualifier("taskExecutor")
Executor executor;
@ApiOperation(value = "查询列装详情", notes = "可以通过这个接口查询列装详情")
@GetMapping(value = "/detail/{billId}")
public ResponseEntity selectDetail(@PathVariable("billId") @Min(value = 1,message = "billId不能小于1") int billId) {
......@@ -107,7 +114,6 @@ public class PackingController {
packingDetailVo.setDeviceLogUserVos(deviceLogUserVos);
return ResultUtil.success(packingDetailVo);
}
@ApiOperation(value = "添加列装型号")
@PostMapping("/add/model")
@Transactional(rollbackFor = Exception.class)
......@@ -122,31 +128,10 @@ public class PackingController {
packingLibrary.setIsRoot(1);
packingLibrary.setName("");
packingLibrary.setPackingStatus(2);
packingLibrary.setShowOrder(99999);
//设置排序 赋值为null
packingLibrary.setShowOrder(null);
PackingLibrary packingLibrary1 = packingLibraryService.addEntity(packingLibrary);
List<PackingLibrary> packingLibraries1 = packingLibraryService.getInsertList(new SelectPack()).stream().sorted(Comparator.comparing(PackingLibrary::getModel,Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
int order = 9999;
for (int i=1;i<=packingLibraries1.size();i++){
PackingLibrary packingLibrary2 = packingLibraries1.get(i-1);
if (packingLibrary2.getId().equals(packingLibrary1.getId())){
packingLibrary2.setShowOrder(i);
packingLibraryService.update(packingLibrary2);
order = i;
break;
}
}
for (PackingLibrary p:packingLibraries1) {
if (!p.getId().equals(packingLibrary1.getId()) && p.getShowOrder() >= order){
p.setShowOrder(p.getShowOrder()+1);
packingLibraryService.update(p);
}
}
// TaskBto taskBto = new TaskBto(StatusEnum.END.id, "列装业务", null, ".", packingLibrary1.getId(), 1, userUtils.getCurrentUnitId(), 0, null, Collections.singletonList(userUtils.getCurrentUserId()));
// TaskBto saveEntity = taskService.start(taskBto);
String message = "添加列装型号:"+addModel.getModel();
// //添加业务日志
// TaskLogBto taskLogBto2 = new TaskLogBto(saveEntity.getId(), message, null);
// taskLogService.addLog(taskLogBto2);
//添加列装日志
PackingLog packingLog = new PackingLog();
packingLog.setRemark(message);
......@@ -157,11 +142,67 @@ public class PackingController {
MessageBto messageBto = new MessageBto(0,1,message,userIds,0);
messageBto.setRecord(packingLibrary1.getId().toString());
messageService.add(messageBto);
packingLibraryService.setOrder(packingLibraryService.getInsertList(new SelectPack()));
//更新型号和排序号的对应map
packingLibraryService.getSortMap();
return ResponseEntity.ok(packingLibraryService.getOne(packingLibrary1.getId()));
}
// @ApiOperation(value = "添加列装型号")
// @PostMapping("/add/model")
// @Transactional(rollbackFor = Exception.class)
// public ResponseEntity addModel(@RequestBody @Validated AddModel addModel){
// if (packingLibraryService.modelIsExist(addModel.getModel())){
// Map<String,Object> map = new HashMap<>();
// map.put("error","型号"+addModel.getModel()+"已存在");
// return ResponseEntity.ok(map);
// }
// PackingLibrary packingLibrary = new PackingLibrary();
// BeanUtils.copyProperties(addModel,packingLibrary);
// packingLibrary.setIsRoot(1);
// packingLibrary.setName("");
// packingLibrary.setPackingStatus(2);
// packingLibrary.setShowOrder(99999);
// PackingLibrary packingLibrary1 = packingLibraryService.addEntity(packingLibrary);
// List<PackingLibrary> packingLibraries1 = packingLibraryService.getInsertList(new SelectPack()).stream().sorted(Comparator.comparing(PackingLibrary::getModel,Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
// int order = 9999;
// for (int i=1;i<=packingLibraries1.size();i++){
// PackingLibrary packingLibrary2 = packingLibraries1.get(i-1);
// if (packingLibrary2.getId().equals(packingLibrary1.getId())){
// packingLibrary2.setShowOrder(i);
// packingLibraryService.update(packingLibrary2);
// order = i;
// break;
// }
// }
// for (PackingLibrary p:packingLibraries1) {
// if(p.getShowOrder()!=null){
// if (!p.getId().equals(packingLibrary1.getId()) && p.getShowOrder() >= order){
// p.setShowOrder(p.getShowOrder()+1);
// packingLibraryService.update(p);
// }
// }
//
// }
//// TaskBto taskBto = new TaskBto(StatusEnum.END.id, "列装业务", null, ".", packingLibrary1.getId(), 1, userUtils.getCurrentUnitId(), 0, null, Collections.singletonList(userUtils.getCurrentUserId()));
//// TaskBto saveEntity = taskService.start(taskBto);
// String message = "添加列装型号:"+addModel.getModel();
//// //添加业务日志
//// TaskLogBto taskLogBto2 = new TaskLogBto(saveEntity.getId(), message, null);
//// taskLogService.addLog(taskLogBto2);
// //添加列装日志
// PackingLog packingLog = new PackingLog();
// packingLog.setRemark(message);
// packingLog.setPackingId(packingLibrary1.getId());
// packingLogService.add(packingLog);
// //发送阅知信息
// List<Integer> userIds = userPublicService.findOtherUser(userUtils.getCurrentUserId());
// MessageBto messageBto = new MessageBto(0,1,message,userIds,0);
// messageBto.setRecord(packingLibrary1.getId().toString());
// messageService.add(messageBto);
// packingLibraryService.setOrder(packingLibraryService.getInsertList(new SelectPack()));
// //更新型号和排序号的对应map
// packingLibraryService.getSortMap();
// return ResponseEntity.ok(packingLibraryService.getOne(packingLibrary1.getId()));
// }
@ApiOperation(value = "添加列装装备")
@PostMapping("/add")
......@@ -278,12 +319,7 @@ public class PackingController {
@PostMapping("/select")
public ResponseEntity selectPack(@RequestBody SelectPack selectPack){
List<PackingLibrary> resultList;
if (selectPack.getContent()==null&&selectPack.getModel()==null&&selectPack.getName()==null&&selectPack.getSecretLevel()==null&&selectPack.getStatus()==null){
resultList = packingLibraryService.setOrder(packingLibraryService.getInsertList(selectPack));
} else {
resultList = packingLibraryService.getInsertList(selectPack);
}
resultList = packingLibraryService.getInsertList(selectPack);
Map<String,Object> map = new HashMap<>();
//进行过滤 退装的目录下面 回收站
List<Integer> statuses = new ArrayList<>(Arrays.asList(3, 4));
......@@ -297,15 +333,9 @@ public class PackingController {
resultList.add(packingLibrary);
}
});
resultList.sort(Comparator.comparing(PackingLibrary::getShowOrder,Comparator.nullsLast(Integer::compareTo)).thenComparing(Comparator.comparing(PackingLibrary::getModel)));
Page<PackingLibrary> packingLibraries = PageUtil.getPerPage(selectPack.getPage(), selectPack.getSize(), resultList, selectPack.getPageable());
map.put("pages",packingLibraries);
// for (PackingLibrary p : resultList){
// if (p.getIsRoot()==1){
// models.add(p.getModel());
// }
// }
List<String> models = new ArrayList<>(resultList.stream().filter(packingLibrary -> packingLibrary.getIsRoot() == 1).map(PackingLibrary::getModel).collect(Collectors.toList()));
//去重
models = models.stream().distinct().collect(Collectors.toList());
......@@ -496,79 +526,171 @@ public class PackingController {
@ApiOperation(value = "编辑列装型号")
@PostMapping("/update/model")
@Transactional(rollbackFor = Exception.class)
public ResponseEntity updateModel(@RequestBody @Validated PackingModelEdit packingModelEdit){
public ResponseEntity updateModel(@RequestBody PackingModelEdit packingModelEdit){
PackingLibrary packingLibrary = packingLibraryService.getOne(packingModelEdit.getPackingId());
if (!packingLibrary.getModel().equals(packingModelEdit.getModel())&&packingLibraryService.modelIsExist(packingModelEdit.getModel())){
Map<String,Object> map = new HashMap<>();
map.put("error","型号"+packingModelEdit.getModel()+"已存在");
if (!packingLibrary.getModel().equals(packingModelEdit.getModel()) && packingLibraryService.modelIsExist(packingModelEdit.getModel())) {
Map<String, Object> map = new HashMap<>();
map.put("error", "型号" + packingModelEdit.getModel() + "已存在");
return ResponseEntity.ok(map);
}
//判断该列装下有没有入库装备 有装备则进行装备的型号的修改
//通过型号查询装备
// List<DeviceLibrary> storagePackingDevices = deviceLibraryService.findAllByPackingId(packingLibrary.getId());
List<DeviceLibrary> storagePackingDevices = deviceLibraryService.findAllByModel(packingLibrary.getModel());
if(storagePackingDevices.size()>0){
//取出所有的装备id
List<Integer> ids = storagePackingDevices.stream().map(DeviceLibrary::getId).collect(Collectors.toList());
//更新装备
deviceLibraryService.batchUpdateDevices(packingModelEdit.getModel(),ids);
}
// else {
List<PackingLibrary> packingLibraries = new ArrayList<>();
if (packingLibrary.getShowOrder()>packingModelEdit.getShowOrder()){
String model=" ";
for (int i = packingModelEdit.getShowOrder();i<packingLibrary.getShowOrder();i++){
if (packingLibraryDao.findByShowOrderAndModelNot(i,model)!=null){
PackingLibrary packingLibrary1 = packingLibraryDao.findByShowOrderAndModelNot(i,model);
packingLibrary1.setShowOrder(i+1);
// packingLibrary1.setShowOrder(packingModelEdit.getShowOrder());
packingLibraries.add(packingLibrary1);
model=packingLibrary1.getModel();
}
else {
break;
}
}
}
else if(packingLibrary.getShowOrder()<packingModelEdit.getShowOrder()){
for (int i = packingLibrary.getShowOrder()+1;i<=packingModelEdit.getShowOrder();i++){
if (packingLibraryDao.findByShowOrder(i)!=null){
PackingLibrary packingLibrary1 = packingLibraryDao.findByShowOrder(i);
packingLibrary1.setShowOrder(i-1);
packingLibraries.add(packingLibrary1);
packingLibrary.setShowOrder(packingModelEdit.getShowOrder());
if (packingLibrary.getIsRoot() == 1) {
if (packingModelEdit.getModel() != null && !packingModelEdit.getModel().equals(packingLibrary.getModel())) {
//判断该列装下有没有入库装备 有装备则进行装备的型号的修改
//通过型号查询装备
// long l = System.currentTimeMillis();
// List<DeviceLibrary> storagePackingDevices = deviceLibraryService.findAllByModel(packingLibrary.getModel());
// log.info("findAllByModel时间:{}", System.currentTimeMillis() - l);
// if (storagePackingDevices.size() > 0) {
//取出所有的装备id
// List<Integer> ids = storagePackingDevices.stream().map(DeviceLibrary::getId).collect(Collectors.toList());
//更新装备
long l2 = System.currentTimeMillis();
List<DeviceLibrary> storagePackingDevices = deviceLibraryService.findAllByModel(packingLibrary.getModel());
if (storagePackingDevices.size()>0){
deviceLibraryService.batchUpdateDevices(packingLibrary.getModel(),packingModelEdit.getModel());
}
else {
break;
}
}
}
else{
packingLibrary.setShowOrder(packingLibrary.getShowOrder());
}
if (packingLibraries.size()>0) {
packingLibraryDao.saveAll(packingLibraries);
}
if (packingLibrary.getIsRoot()==1){
if (packingModelEdit.getModel()!=null&&!packingModelEdit.getModel().equals(packingLibrary.getModel())){
packingLibrary.setModel(packingModelEdit.getModel());
packingLibrary.setName(packingModelEdit.getModel());
packingLibraryService.changeAllModel(packingLibrary.getId(),packingModelEdit.getModel());
}
BeanUtils.copyProperties(packingModelEdit,packingLibrary);
packingLibraryService.update(packingLibrary);
//发送阅知信息
List<Integer> userIds = userPublicService.findOtherUser(userUtils.getCurrentUserId());
MessageBto messageBto = new MessageBto(0,1,"修改列装型号目录",userIds,0);
messageService.add(messageBto);
}
else {
throw new ApiException("传入的列装id不是型号");
log.info("batchUpdateDevices时间:{}", System.currentTimeMillis() - l2);
// }
packingLibrary.setModel(packingModelEdit.getModel());
packingLibrary.setName(packingModelEdit.getModel());
packingLibraryService.changeAllModel(packingLibrary.getId(), packingModelEdit.getModel());
}
// }
BeanUtils.copyProperties(packingModelEdit, packingLibrary);
packingLibraryService.update(packingLibrary);
//发送阅知信息
List<Integer> userIds = userPublicService.findOtherUser(userUtils.getCurrentUserId());
MessageBto messageBto = new MessageBto(0, 1, "修改列装型号目录", userIds, 0);
messageService.add(messageBto);
} else {
throw new ApiException("传入的列装id不是型号");
}
//更新缓存
packingLibraryService.getSortMap();
return ResponseEntity.ok(ResponseEntity.ok(packingModelEdit));
}
// @ApiOperation(value = "编辑列装型号")
// @PostMapping("/update/model")
// @Transactional(rollbackFor = Exception.class)
// public ResponseEntity updateModel(@RequestBody PackingModelEdit packingModelEdit){
// PackingLibrary packingLibrary = packingLibraryService.getOne(packingModelEdit.getPackingId());
// if (!packingLibrary.getModel().equals(packingModelEdit.getModel())&&packingLibraryService.modelIsExist(packingModelEdit.getModel())){
// Map<String,Object> map = new HashMap<>();
// map.put("error","型号"+packingModelEdit.getModel()+"已存在");
// return ResponseEntity.ok(map);
// }
// //判断该列装下有没有入库装备 有装备则进行装备的型号的修改
// //通过型号查询装备
// if (!packingLibrary.getModel().equals(packingModelEdit.getModel())){
// long l = System.currentTimeMillis();
// List<DeviceLibrary> storagePackingDevices = deviceLibraryService.findAllByModel(packingLibrary.getModel());
// log.info("findAllByModel时间:{}",System.currentTimeMillis()-l);
// if(storagePackingDevices.size()>0){
// //取出所有的装备id
// List<Integer> ids = storagePackingDevices.stream().map(DeviceLibrary::getId).collect(Collectors.toList());
// //更新装备
// long l2 = System.currentTimeMillis();
// executor.execute(()->{
// deviceLibraryService.batchUpdateDevices(packingModelEdit.getModel(),ids);
// });
// log.info("batchUpdateDevices时间:{}",System.currentTimeMillis()-l2);
// }
// }
// //如果排序字段为空
// if (packingModelEdit.getShowOrder() == null){
// packingLibrary.setShowOrder(packingModelEdit.getShowOrder());
// packingLibraryService.update(packingLibrary);
// }else {
//
//// else {
// List<PackingLibrary> packingLibraries = new ArrayList<>();
// if (packingLibrary.getShowOrder() == null){
// int maxShowOrder = packingLibraryDao.maxShowOrder();
// List<Integer> showOrders = packingLibraryDao.selectShowOrders(packingModelEdit.getShowOrder(), maxShowOrder);
// //先判断是否在数据库中
// List<Integer> allShowOrders = packingLibraryDao.selectAllShowOrders();
// if(!allShowOrders.contains(packingModelEdit.getShowOrder())){
// //直接更新
// packingLibrary.setShowOrder(packingModelEdit.getShowOrder());
// }else {
//
// //排序全部都加1
// packingLibraries = packingLibraryDao.findByShowOrderIn(showOrders);
// packingLibraryDao.updateShowOrders(packingLibraries);
// //将传入的进行更新
// packingLibrary.setShowOrder(packingModelEdit.getShowOrder());
// //所有的
//// for (int i = packingModelEdit.getShowOrder(); i < maxShowOrder; i++) {
//// String model=" ";
//// if (packingLibraryDao.findByShowOrderAndModelNot(i,model)!=null){
//// PackingLibrary packingLibrary1 = packingLibraryDao.findByShowOrderAndModelNot(i,model);
//// packingLibrary1.setShowOrder(i+1);
//// packingLibraries.add(packingLibrary1);
//// model=packingLibrary1.getModel();
//// }
//// else {
//// break;
//// }
//// }
// }
//
// }else if (packingLibrary.getShowOrder()>=packingModelEdit.getShowOrder()){
// String model=" ";
// for (int i = packingModelEdit.getShowOrder();i<packingLibrary.getShowOrder();i++){
// if (packingLibraryDao.findByShowOrderAndModelNot(i,model)!=null){
// PackingLibrary packingLibrary1 = packingLibraryDao.findByShowOrderAndModelNot(i,model);
// packingLibrary1.setShowOrder(i+1);
//// packingLibrary1.setShowOrder(packingModelEdit.getShowOrder());
// packingLibraries.add(packingLibrary1);
// model=packingLibrary1.getModel();
// }
// else {
// break;
// }
// }
// }
// else if(packingLibrary.getShowOrder()<packingModelEdit.getShowOrder()){
// for (int i = packingLibrary.getShowOrder()+1;i<=packingModelEdit.getShowOrder();i++){
// if (packingLibraryDao.findByShowOrder(i)!=null){
// PackingLibrary packingLibrary1 = packingLibraryDao.findByShowOrder(i);
// packingLibrary1.setShowOrder(i-1);
// packingLibraries.add(packingLibrary1);
// }
// else {
// break;
// }
// }
// }
// else{
// packingLibrary.setShowOrder(packingLibrary.getShowOrder());
// }
// if (packingLibraries.size()>0) {
// packingLibraryDao.saveAll(packingLibraries);
// }
// if (packingLibrary.getIsRoot()==1){
// if (packingModelEdit.getModel()!=null&&!packingModelEdit.getModel().equals(packingLibrary.getModel())){
// packingLibrary.setModel(packingModelEdit.getModel());
// packingLibrary.setName(packingModelEdit.getModel());
// packingLibraryService.changeAllModel(packingLibrary.getId(),packingModelEdit.getModel());
// }
// BeanUtils.copyProperties(packingModelEdit,packingLibrary);
// packingLibraryService.update(packingLibrary);
// //发送阅知信息
// List<Integer> userIds = userPublicService.findOtherUser(userUtils.getCurrentUserId());
// MessageBto messageBto = new MessageBto(0,1,"修改列装型号目录",userIds,0);
// messageService.add(messageBto);
// }
// else {
// throw new ApiException("传入的列装id不是型号");
// }
// }
//
//// }
// //更新缓存
// packingLibraryService.getSortMap();
// return ResponseEntity.ok(ResponseEntity.ok(packingModelEdit));
// }
@ApiOperation(value = "编辑列装装备")
@PostMapping("/update/device")
......@@ -738,4 +860,9 @@ public class PackingController {
));
}
// public void setSeqNumber(){
// //拿到所有的列装
// ResponseEntity responseEntity = selectPack(new SelectPack());
// }
}
......@@ -3,6 +3,10 @@ package com.tykj.dev.device.packing.repository;
import com.tykj.dev.device.packing.subject.domin.PackingLibrary;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
......@@ -52,5 +56,23 @@ public interface PackingLibraryDao extends JpaRepository<PackingLibrary, Integer
*/
List<PackingLibrary> findAllByModel(String model);
/**
*
*/
@Query("select max(o.showOrder) from PackingLibrary o")
int maxShowOrder();
@Query(value = "select p.showOrder from PackingLibrary p where p.showOrder between :beginShowOrder and :endShowOrder ")
List<Integer> selectShowOrders(@Param("beginShowOrder") Integer beginShowOrder,@Param("endShowOrder") Integer endShowOrder);
List<PackingLibrary> findByShowOrderIn(List<Integer> showOrders);
@Transactional
@Modifying
@Query("update PackingLibrary p set p.showOrder = p.showOrder+1 where p in (:packingLibraries)")
void updateShowOrders(@Param("packingLibraries") List<PackingLibrary> packingLibraries);
@Query("select p.showOrder from PackingLibrary p")
List<Integer> selectAllShowOrders();
}
......@@ -162,7 +162,7 @@ public class PackingLibraryServiceImpl implements PackingLibraryService {
@Override
public List<String> getModelList() {
List<PackingLibrary> list = packingLibraryDao.findAllByIsRootAndPackingStatus(1,2).stream().sorted(Comparator.comparing(PackingLibrary::getShowOrder)).collect(Collectors.toList());
List<PackingLibrary> list = packingLibraryDao.findAllByIsRootAndPackingStatus(1,2).stream().sorted(Comparator.comparing(PackingLibrary::getShowOrder,Comparator.nullsLast(Integer::compareTo)).thenComparing(PackingLibrary::getModel)).collect(Collectors.toList());
List<String> s = new ArrayList<>();
for (PackingLibrary d : list) {
......@@ -759,7 +759,16 @@ public class PackingLibraryServiceImpl implements PackingLibraryService {
@Override
public void getSortMap() {
DeviceModelSort.mapModelSort = packingLibraryDao.findAllByIsRootAndPackingStatus(1,2).stream().collect(toMap(PackingLibrary::getModel,PackingLibrary::getShowOrder));
Map<String, Integer> map=new HashMap<>();
// DeviceModelSort.mapModelSort = packingLibraryDao.findAllByIsRootAndPackingStatus(1,2).stream().collect(toMap(PackingLibrary::getModel,PackingLibrary::getShowOrder));
packingLibraryDao.findAllByIsRootAndPackingStatus(1,2).forEach(packingLibrary -> {
if (packingLibrary.getShowOrder()!=null) {
map.put(packingLibrary.getModel(), packingLibrary.getShowOrder());
}else {
map.put(packingLibrary.getModel(), 9999);
}
});
DeviceModelSort.mapModelSort=map;
}
private Specification<PackingLibrary> getSelectSpecification(PackingLibrarySelectVo packingLibrarySelectVo) {
......
......@@ -31,7 +31,7 @@ public class PackingModelEdit {
@ApiModelProperty(value = "列装状态")
private Integer status;
@NotNull(message = "showOrder不能为空")
// @NotNull(message = "showOrder不能为空")
@ApiModelProperty(value = "排序号")
private Integer showOrder;
......
......@@ -22,6 +22,7 @@ import com.tykj.dev.device.user.subject.entity.Area;
import com.tykj.dev.device.user.subject.entity.Units;
import com.tykj.dev.device.user.subject.entity.User;
import com.tykj.dev.misc.base.BusinessEnum;
import com.tykj.dev.misc.base.StatusEnum;
import com.tykj.dev.misc.utils.StringSplitUtil;
import com.tykj.dev.statistical.cache.StatisticalCache;
import com.tykj.dev.statistical.service.BigScreenService;
......@@ -148,7 +149,10 @@ public class BigScreenServiceImpl implements BigScreenService {
centerNum.setDeviceAddCount((int) deviceLibraryDao.findAll().stream().filter(deviceLibrary -> deviceLibrary.getCreateTime()!=null&&isPresentYear(deviceLibrary.getCreateTime())).count());
//故障率
Set<Integer> repairDeviceIds = new HashSet<>();
List<Task> tasks = taskDao.findAllByBusinessType(BusinessEnum.REPAIR.id).stream().filter(task -> task.getParentTaskId()==null).collect(Collectors.toList());
List<Task> businessList = taskDao.findAllByBusinessType(BusinessEnum.REPAIR.id);
List<Task> tasks = businessList.stream()
.filter(task -> task.getParentTaskId()==null && !task.getBillStatus().equals(StatusEnum.END.id) && !task.getBillStatus().equals(StatusEnum.REVOKEALLOTTASK.id))
.collect(Collectors.toList());
List<RepairSendBill> repairSendBills = tasks.stream()
.map(task -> repairBillService.getOne(task.getBillId()))
.map(repairBill -> repairSendBillDao.findByDeviceRepairBillId(repairBill.getId()))
......@@ -170,7 +174,8 @@ public class BigScreenServiceImpl implements BigScreenService {
@Override
public RepairNum getRepairNum() {
RepairNum repairNum = new RepairNum();
List<Task> tasks = taskDao.findAllByBusinessType(BusinessEnum.REPAIR.id).stream().filter(task -> task.getParentTaskId()==null).collect(Collectors.toList());
List<Task> tasks = taskDao.findAllByBusinessType(BusinessEnum.REPAIR.id).stream()
.filter(task -> task.getParentTaskId()==null && !task.getBillStatus().equals(StatusEnum.END.id) && !task.getBillStatus().equals(StatusEnum.REVOKEALLOTTASK.id)).collect(Collectors.toList());
List<List<RepairDetail>> repairDetails = tasks.stream()
.map(task -> repairBillService.getOne(task.getBillId()))
.map(repairBill -> repairDetailDao.findByDeviceRepairBillId(repairBill.getId()))
......@@ -224,7 +229,8 @@ public class BigScreenServiceImpl implements BigScreenService {
@Override
public List<RepairDevice> getRepairDevices() {
List<RepairDevice> repairDevices = new ArrayList<>();
List<Task> tasks = taskDao.findAllByBusinessType(BusinessEnum.REPAIR.id).stream().filter(task -> task.getParentTaskId()==null).collect(Collectors.toList());
List<Task> tasks = taskDao.findAllByBusinessType(BusinessEnum.REPAIR.id).stream()
.filter(task -> task.getParentTaskId()==null && !task.getBillStatus().equals(StatusEnum.END.id) && !task.getBillStatus().equals(StatusEnum.REVOKEALLOTTASK.id)).collect(Collectors.toList());
List<List<RepairDetail>> repairDetails = tasks.stream()
.map(task -> repairBillService.getOne(task.getBillId()))
.map(repairBill -> repairDetailDao.findByDeviceRepairBillId(repairBill.getId()))
......
......@@ -150,6 +150,9 @@ public class MessageServiceImpl implements MessageService {
.sorted(Comparator.comparing(MessageUserVo::getCreateTime, Comparator.nullsLast(Date::compareTo)).reversed())
.collect(Collectors.toList());
return messageUserVos;
// userRecords.forEach(userRecord -> {
//
// });
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论