Merge remote-tracking branch 'origin/dev' into dev

dev
litao 3 years ago
commit 16d3b8b476
  1. 2
      lab-service-api/lab-file-api/src/main/java/org/springblade/file/dto/QualityFileDTO.java
  2. 3
      lab-service-api/lab-file-api/src/main/java/org/springblade/file/entity/QualityFile.java
  3. 2
      lab-service-api/lab-file-api/src/main/java/org/springblade/file/entity/QualityFileDeptRel.java
  4. 6
      lab-service/lab-file/src/main/java/org/springblade/file/mapper/QualityFileMapper.xml
  5. 24
      lab-service/lab-file/src/main/java/org/springblade/file/service/impl/QualityFileServiceImpl.java

@ -42,7 +42,7 @@ public class QualityFileDTO extends QualityFile {
@ApiModelProperty(value = "部门ids")
@NotNull
@NotEmpty
private Set<Long> deptIds;
private Set<String> deptIds;
@ApiModelProperty(value = "文件")
@NotNull

@ -75,5 +75,6 @@ public class QualityFile extends BaseEntity implements Serializable {
@NotNull
private Long categoryId;
@ApiModelProperty(value = "在用的部门ids")
private String activeDeptIds;
}

@ -56,6 +56,6 @@ public class QualityFileDeptRel extends BaseEntity implements Serializable {
* 质量文件类型id
*/
@ApiModelProperty(value = "质量文件类型id")
private Long deptId;
private String deptId;
}

@ -23,12 +23,12 @@
<select id="selectQualityFilePage" resultType="org.springblade.file.vo.QualityFileVO">
select * from t_quality_file
<where>
<if test="qualityFile.categoryId != null">
AND category_id = #{qualityFile.categoryId,jdbcType=NUMERIC}
</if>
<if test="qualityFile.filename != null and qualityFile.filename != ''">
AND filename like CONCAT('%', #{qualityFile.filename,jdbcType=VARCHAR}, '%')
</if>
<if test="qualityFile.categoryId != null and qualityFile.categoryId != ''">
AND active_dept_ids like CONCAT('%', #{qualityFile.categoryId,jdbcType=VARCHAR}, '%')
</if>
AND is_deleted = 0
</where>
</select>

@ -37,6 +37,8 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@ -94,23 +96,31 @@ public class QualityFileServiceImpl extends BaseServiceImpl<QualityFileMapper, Q
@Override
@Transactional(rollbackFor = Exception.class)
public boolean saveOrUpdateDTO(QualityFileDTO qualityFile) {
// 临时将部门id转串存表
Set<String> deptIds1 = qualityFile.getDeptIds();
String resultDeptStr = "";
for (String s : deptIds1) {
resultDeptStr += s + ",";
}
qualityFile.setActiveDeptIds(resultDeptStr);
// 新增和修改质量文件主表
qualityFileService.saveOrUpdate(qualityFile);
Long qualityFileId = qualityFile.getId();
qualityFileDeptRelService.removeByQualityFileId(qualityFileId);
Set<Long> deptIds = qualityFile.getDeptIds();
qualityFileDeptRelService.saveBatch(deptIds.stream()
.map(deptId -> QualityFileDeptRel.builder().qualityFileId(qualityFileId).deptId(deptId).build())
.collect(Collectors.toList()));
Set<String> deptIds = qualityFile.getDeptIds();
qualityFileDeptRelService.saveBatch(deptIds.stream().map(deptId -> QualityFileDeptRel.builder().qualityFileId(qualityFileId).deptId(deptId).build()).collect(Collectors.toList()));
Set<QualityStorageFileRelDTO> fileRels = qualityFile.getFiles();
qualityStorageFileRelService.removeByQualityFileId(qualityFileId);
fileRels.forEach(dto -> dto.setQualityFileId(qualityFileId));
int pageCount = storageFileService.countPageCount(fileRels.stream()
.map(QualityStorageFileRel::getStorageFileId)
.collect(Collectors.toSet()));
int pageCount = storageFileService.countPageCount(fileRels.stream().map(QualityStorageFileRel::getStorageFileId).collect(Collectors.toSet()));
qualityStorageFileRelService.saveBatch(new ArrayList<>(fileRels));
qualityFile.setPageCount(pageCount);

Loading…
Cancel
Save