Merge remote-tracking branch 'origin/develop' into dev/dev
This commit is contained in:
@@ -560,4 +560,10 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
|
||||
}
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long getExpiredTime() {
|
||||
AuthPrincipalVo userInfo = UserContext.getUserHolder();
|
||||
return accountMapper.selectById(userInfo.getId()).getValidEndTime();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -191,6 +191,69 @@ public class ClassificationServiceImpl implements ClassificationService {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Long> getRelPublicClassificationIdList(ClassificationDTO classificationDTO) {
|
||||
List<Long> libraryIdList = classificationDTO.getLibraryIdList();
|
||||
if (CollectionUtil.isEmpty(libraryIdList)) {
|
||||
throw new BusinessException("libraryIdList.cannot.be.empty");
|
||||
}
|
||||
List<Long> classificationIdList = new ArrayList<>();
|
||||
// 遍历获取library关联的公共标签,返回给前端
|
||||
for (int i = 0; i < libraryIdList.size(); i++) {
|
||||
QueryWrapper<ClassificationRelLibrary> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(ClassificationRelLibrary::getLibraryId, libraryIdList.get(i));
|
||||
List<Long> collect = classificationRelLibraryMapper.selectList(qw)
|
||||
.stream()
|
||||
.map(ClassificationRelLibrary::getClassificationId)
|
||||
.distinct()
|
||||
.collect(Collectors.toList());
|
||||
if (i == 0) {
|
||||
classificationIdList.addAll(collect);
|
||||
}else {
|
||||
classificationIdList.retainAll(collect);
|
||||
}
|
||||
}
|
||||
return classificationIdList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean editRelPublicClassificationIdList(ClassificationDTO classificationDTO) {
|
||||
List<Long> relPublicClassificationIdList = getRelPublicClassificationIdList(classificationDTO);
|
||||
List<Long> deleteIdList = relPublicClassificationIdList.stream()
|
||||
.filter(item -> !classificationDTO.getClassificationIdList().contains(item))
|
||||
.collect(Collectors.toList());
|
||||
if (CollectionUtil.isNotEmpty(deleteIdList)) {
|
||||
for (Long libraryId : classificationDTO.getLibraryIdList()) {
|
||||
QueryWrapper<ClassificationRelLibrary> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(ClassificationRelLibrary::getLibraryId, libraryId);
|
||||
qw.lambda().in(ClassificationRelLibrary::getClassificationId, deleteIdList);
|
||||
classificationRelLibraryMapper.delete(qw);
|
||||
}
|
||||
}
|
||||
List<Long> addIdList = classificationDTO.getClassificationIdList().stream()
|
||||
.filter(item -> !relPublicClassificationIdList.contains(item))
|
||||
.collect(Collectors.toList());
|
||||
if (CollectionUtil.isNotEmpty(addIdList)) {
|
||||
for (Long libraryId : classificationDTO.getLibraryIdList()) {
|
||||
for (Long classificationId : addIdList) {
|
||||
QueryWrapper<ClassificationRelLibrary> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(ClassificationRelLibrary::getLibraryId, libraryId);
|
||||
qw.lambda().eq(ClassificationRelLibrary::getClassificationId, classificationId);
|
||||
List<ClassificationRelLibrary> exist = classificationRelLibraryMapper.selectList(qw);
|
||||
if (CollectionUtil.isEmpty(exist)) {
|
||||
ClassificationRelLibrary classificationRelLibrary = new ClassificationRelLibrary();
|
||||
classificationRelLibrary.setClassificationId(classificationId);
|
||||
classificationRelLibrary.setLibraryId(libraryId);
|
||||
classificationRelLibrary.setCreateTime(LocalDateTime.now());
|
||||
classificationRelLibrary.setIsDeleted(0);
|
||||
classificationRelLibraryMapper.insert(classificationRelLibrary);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
private List<Long> getTreeClassificationIdListByClassificationId(Long classificationId) {
|
||||
List<Long> classificationIdList = new ArrayList<>();
|
||||
classificationIdList.add(classificationId);
|
||||
|
||||
Reference in New Issue
Block a user