package cc.mrbird.febs.server.hr.service.impl; import cc.mrbird.febs.common.core.constant.ModuleCode; import cc.mrbird.febs.common.core.utils.FebsUtil; import cc.mrbird.febs.common.core.utils.SequenceUtil; import cc.mrbird.febs.server.hr.entity.FilesUpload; import cc.mrbird.febs.server.hr.entity.Folder; import cc.mrbird.febs.server.hr.entity.Label; import cc.mrbird.febs.server.hr.mapper.FolderMapper; import cc.mrbird.febs.server.hr.service.IFolderService; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Propagation; import lombok.RequiredArgsConstructor; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import cc.mrbird.febs.common.core.entity.QueryRequest; import java.util.Date; import java.util.List; import java.util.Optional; /** * 文件夹 Service实现 * * @author yz * @date 2021-02-05 22:51:02 */ @Service @RequiredArgsConstructor @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) public class FolderServiceImpl extends ServiceImpl implements IFolderService { private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) .map(u -> u.getUserId().toString()) .orElse("1"); @Override public IPage findFolders(QueryRequest request, Folder folder) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); // TODO 设置查询条件 Page page = new Page<>(request.getPageNum(), request.getPageSize()); return this.page(page, queryWrapper); } @Override public List findFolders(Folder folder) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(Folder::getDelFlag,0).orderByAsc(Folder::getSort); return this.baseMapper.selectList(queryWrapper); } @Override @Transactional(rollbackFor = Exception.class) public void createFolder(Folder folder) { folder.setFolderid(SequenceUtil.generateId(0L, ModuleCode.HR_FIlE)); folder.setCreator(operatorId); folder.setModifier(operatorId); folder.setCreatetime(new Date()); folder.setModifytime(new Date()); folder.setVersion(0); this.save(folder); } @Override @Transactional(rollbackFor = Exception.class) public void updateFolder(Folder folder) { this.saveOrUpdate(folder); } @Override @Transactional(rollbackFor = Exception.class) public void deleteFolder(Folder folder) { LambdaUpdateWrapper wapper = new LambdaUpdateWrapper<>(); wapper.eq(Folder::getFolderid,folder.getFolderid()); wapper.set(Folder::getDelFlag,1); wapper.set(Folder::getModifier,operatorId); wapper.set(Folder::getModifytime,new Date()); this.update(wapper); } }