package cn.timer.api.controller.disk.sevice; import cn.timer.api.bean.disk.DiskCatalogue; import cn.timer.api.bean.disk.DiskCloudDiskUser; import cn.timer.api.config.enuminterface.JxglEnumInterface; import cn.timer.api.dao.disk.DiskCloudDiskUserMapper; import cn.timer.api.dto.disk.DiskCatalogueDto; import cn.timer.api.dto.disk.DiskCatalogueParam; import cn.timer.api.dto.disk.DiskCloudDiskUserParam; import cn.timer.api.utils.ResultUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.util.List; /** * @author wuqingjun * @email 284718418@qq.com * @date 2021/12/29 */ @Service public class DiskCloudDiskUserServiceImpl implements DiskCloudDiskUserService { @Resource private DiskCloudDiskUserMapper diskCloudDiskUserMapper; @Override public boolean getDiskUserRole(DiskCatalogueDto diskCatalogueDto, DiskCatalogue catalogue) { if(StringUtils.isEmpty(catalogue) || StringUtils.isEmpty(diskCatalogueDto)){ return false; } if(catalogue.getCreateUserId().equals(diskCatalogueDto.getUserId())){ return true; } DiskCloudDiskUser dcdUser = DiskCloudDiskUser.builder().build().selectOne(new QueryWrapper<DiskCloudDiskUser>() .lambda().eq(DiskCloudDiskUser::getUserId,diskCatalogueDto.getUserId())); if(StringUtils.isEmpty(dcdUser)){ return false; } return false; } @Override public List<DiskCatalogue> getDiskCatalogueList(DiskCatalogueParam diskCatalogueParam) { return diskCloudDiskUserMapper.getDiskCatalogueList(diskCatalogueParam); } @Override public DiskCloudDiskUser getUserRoleBySharedSpace(DiskCloudDiskUserParam diskCloudDiskUserParam) { DiskCloudDiskUser dcdUser = DiskCloudDiskUser.builder().build(); DiskCatalogue catalogue = DiskCatalogue.builder().id(diskCloudDiskUserParam.getCatalogueId()).build().selectById(); if(StringUtils.isEmpty(catalogue)){ return dcdUser; } if(catalogue.getParentId() > 0){ String[] parent = catalogue.getParentIds().split(","); catalogue = DiskCatalogue.builder().id(Integer.parseInt(parent[0])).build().selectById(); } dcdUser = dcdUser.selectOne(new QueryWrapper<DiskCloudDiskUser>() .lambda().eq(DiskCloudDiskUser::getUserId,diskCloudDiskUserParam.getUserId()) .eq(DiskCloudDiskUser::getOrgId,diskCloudDiskUserParam.getOrgId()) .eq(DiskCloudDiskUser::getCatalogueId,catalogue.getId())); if(StringUtils.isEmpty(dcdUser) && catalogue.getCreateUserId().equals(diskCloudDiskUserParam.getUserId())){ dcdUser = DiskCloudDiskUser.builder().build(); dcdUser.setId(0); dcdUser.setUserRole(JxglEnumInterface.DiskCloudUserRole.SUPER_ADMIN_USER.getType()); dcdUser.setUserPower("rwxd"); } return dcdUser; } }