package cc.mrbird.febs.video.service.impl;
|
|
import cc.mrbird.febs.common.entity.DeptTree;
|
import cc.mrbird.febs.common.utils.TreeUtil;
|
import cc.mrbird.febs.system.entity.Dept;
|
import cc.mrbird.febs.video.entity.VideoCategoryEntity;
|
import cc.mrbird.febs.video.mapper.VideoCategoryMapper;
|
import cc.mrbird.febs.video.service.IVideoCategoryService;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.stereotype.Service;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* @author wzy
|
* @date 2021-12-14
|
**/
|
@Slf4j
|
@Service
|
@RequiredArgsConstructor
|
public class VideoCategoryServiceImpl extends ServiceImpl<VideoCategoryMapper, VideoCategoryEntity> implements IVideoCategoryService {
|
@Override
|
public List<DeptTree<VideoCategoryEntity>> findVideoCategory() {
|
List<VideoCategoryEntity> list = this.baseMapper.selectList(null);
|
return convertTree(list);
|
}
|
|
@Override
|
public List<DeptTree<VideoCategoryEntity>> categoryTree(VideoCategoryEntity category) {
|
QueryWrapper<VideoCategoryEntity> queryWrapper = new QueryWrapper<>();
|
|
if (StringUtils.isNotBlank(category.getName())) {
|
queryWrapper.lambda().eq(VideoCategoryEntity::getName, category.getName());
|
}
|
queryWrapper.lambda().orderByAsc(VideoCategoryEntity::getSeq);
|
|
List<VideoCategoryEntity> list = this.baseMapper.selectList(null);
|
List<DeptTree<VideoCategoryEntity>> trees = convertTree(list);
|
|
return TreeUtil.buildDeptTree(trees);
|
}
|
|
private List<DeptTree<VideoCategoryEntity>> convertTree(List<VideoCategoryEntity> list) {
|
List<DeptTree<VideoCategoryEntity>> trees = new ArrayList<>();
|
list.forEach(category -> {
|
DeptTree<VideoCategoryEntity> tree = new DeptTree<>();
|
tree.setId(String.valueOf(category.getId()));
|
tree.setParentId(String.valueOf(category.getParentId()));
|
tree.setName(category.getName());
|
tree.setData(category);
|
trees.add(tree);
|
});
|
return trees;
|
}
|
}
|