|
|
|
|
@ -3,17 +3,24 @@ package org.springblade.file.controller; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
|
import io.swagger.annotations.Api; |
|
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
|
import org.apache.commons.lang.math.RandomUtils; |
|
|
|
|
import org.springblade.core.boot.ctrl.BladeController; |
|
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
|
import org.springblade.file.dto.QualityStorageFileRelDTO; |
|
|
|
|
import org.springblade.file.entity.QualityFileAssistent; |
|
|
|
|
import org.springblade.file.mapper.QualityStorageFileRelMapper; |
|
|
|
|
import org.springblade.file.service.IQualityFileAssistentService; |
|
|
|
|
import org.springblade.file.service.IQualityFileService; |
|
|
|
|
import org.springblade.file.service.IQualityStorageFileRelService; |
|
|
|
|
import org.springblade.file.service.IStorageFileService; |
|
|
|
|
import org.springblade.file.service.impl.QualityFileAssistentServiceImpl; |
|
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.Comparator; |
|
|
|
|
import java.util.List; |
|
|
|
|
import java.util.Set; |
|
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 质量文件版本管理 |
|
|
|
|
@ -29,12 +36,25 @@ public class QualityFileAssistentController extends BladeController { |
|
|
|
|
|
|
|
|
|
private final IQualityFileAssistentService qualityFileAssistentService; |
|
|
|
|
|
|
|
|
|
private final IStorageFileService storageFileService; |
|
|
|
|
|
|
|
|
|
private final IQualityStorageFileRelService qualityStorageFileRelService; |
|
|
|
|
|
|
|
|
|
@PutMapping("/update") |
|
|
|
|
@SuppressWarnings("all") |
|
|
|
|
public R update(@RequestBody QualityFileAssistent file){ |
|
|
|
|
boolean tmep = true; |
|
|
|
|
if (file.getId() != null) { |
|
|
|
|
tmep = qualityFileAssistentService.updateById(file); |
|
|
|
|
} else { |
|
|
|
|
Long assistentId = RandomUtils.nextLong(); |
|
|
|
|
file.setId(assistentId); |
|
|
|
|
// 处理文件实体与关联
|
|
|
|
|
Set<QualityStorageFileRelDTO> fileRels = file.getFiles(); |
|
|
|
|
fileRels.forEach(dto -> dto.setAssistantId(file.getId())); |
|
|
|
|
//重新保存文件与存储关联关系
|
|
|
|
|
qualityStorageFileRelService.saveBatch(new ArrayList<>(fileRels)); |
|
|
|
|
|
|
|
|
|
// 查询库里版本最大值 +1 作为新版本号
|
|
|
|
|
QueryWrapper<QualityFileAssistent> queryWrapper = new QueryWrapper<>(); |
|
|
|
|
queryWrapper.eq("quality_file_id", file.getQualityFileId()); |
|
|
|
|
@ -47,7 +67,6 @@ public class QualityFileAssistentController extends BladeController { |
|
|
|
|
} |
|
|
|
|
tmep = qualityFileAssistentService.save(file); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return R.data(tmep) ; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|