diff --git a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/controller/BizBidSharedController.java b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/controller/BizBidSharedController.java index 7744bfd..4a166c6 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/controller/BizBidSharedController.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/controller/BizBidSharedController.java @@ -4,6 +4,7 @@ package com.chinaunicom.mall.ebtp.extend.bizbidshared.controller; import cn.hutool.core.util.StrUtil; import com.chinaunicom.mall.ebtp.common.base.entity.BasePageResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; +import com.chinaunicom.mall.ebtp.common.constant.EbtpRoleEnum; import com.chinaunicom.mall.ebtp.common.util.PropertyUtils; import com.chinaunicom.mall.ebtp.extend.bizbidshared.entity.BizBidShared; import com.chinaunicom.mall.ebtp.extend.bizbidshared.entity.BizBidSharedVO; @@ -17,6 +18,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; +import java.util.stream.Collectors; @RestController @Api(tags = "") @@ -51,7 +53,8 @@ public class BizBidSharedController { if (StringUtils.isEmpty(bizBidShared.getId())) { bizBidShared.setId(PropertyUtils.getSnowflakeId()); } - bizBidShared.setSharedRole(StrUtil.join(",", bizBidShared.getSharedRoles())); + bizBidShared.setSharedRole(StrUtil.join(",", bizBidShared.getRoles().stream().map(m -> EbtpRoleEnum.matchRole(m).getDesc()).collect(Collectors.toList()))); + bizBidShared.setSharedRoles(StrUtil.join(",", bizBidShared.getRoles())); boolean save = ibizBidSharedService.saveOrUpdate(bizBidShared); return BaseResponse.success(save); diff --git a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/entity/BizBidShared.java b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/entity/BizBidShared.java index ee8f73a..4ae4b4c 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/entity/BizBidShared.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/entity/BizBidShared.java @@ -44,6 +44,12 @@ public class BizBidShared extends BaseEntity implements Serializable { @ApiModelProperty(value = "共享文档文件名") private String sharedName; + /** + * 共享文档使用角色 + */ + @ApiModelProperty(value = "共享文档使用角色") + private String sharedRoles; + /** * 共享文档使用角色 */ @@ -52,10 +58,9 @@ public class BizBidShared extends BaseEntity implements Serializable { /** * 共享文档使用角色list */ - @Transient @TableField(exist = false) - private List sharedRoles; + private List roles; /** * 共享文档ID */ @@ -78,4 +83,7 @@ public class BizBidShared extends BaseEntity implements Serializable { @TableField(exist = false) private String fileSuffix; + @TableField(exist = false) + private boolean isAllowDownload; + } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/service/impl/BizBidSharedServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/service/impl/BizBidSharedServiceImpl.java index 6dc380a..d52a108 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/service/impl/BizBidSharedServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidshared/service/impl/BizBidSharedServiceImpl.java @@ -1,15 +1,13 @@ package com.chinaunicom.mall.ebtp.extend.bizbidshared.service.impl; -import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.chinaunicom.ebtp.mall.cloud.attachment.sdk.api.AttachmentClient; -import com.chinaunicom.ebtp.mall.cloud.attachment.sdk.model.AttachmentDetail; -import com.chinaunicom.ebtp.mall.cloud.attachment.sdk.model.AttachmentEntity; +import com.chinaunicom.mall.ebtp.common.base.entity.BaseCacheUser; +import com.chinaunicom.mall.ebtp.common.base.service.IBaseCacheUserService; import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl; import com.chinaunicom.mall.ebtp.extend.bizbidshared.dao.BizBidSharedMapper; import com.chinaunicom.mall.ebtp.extend.bizbidshared.entity.BizBidShared; @@ -18,10 +16,6 @@ import com.chinaunicom.mall.ebtp.extend.bizbidshared.service.IBizBidSharedServic import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; -import java.util.Optional; -import java.util.stream.Collectors; - /** * 对数据表 biz_bid_shared 操作的 serviceImpl * @@ -31,10 +25,11 @@ import java.util.stream.Collectors; public class BizBidSharedServiceImpl extends BaseServiceImpl implements IBizBidSharedService { @Autowired - private AttachmentClient attachmentClient; + private IBaseCacheUserService cacheUserService; @Override public IPage getList(BizBidSharedVO bizBidNotice) { + BaseCacheUser user = cacheUserService.getCacheUser(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); wrapper.like(StrUtil.isNotEmpty(bizBidNotice.getSharedName()), BizBidShared::getSharedName, bizBidNotice.getSharedName()) .like(StrUtil.isNotEmpty(bizBidNotice.getSharedRole()), BizBidShared::getSharedRole, bizBidNotice.getSharedRole()) @@ -46,14 +41,9 @@ public class BizBidSharedServiceImpl extends BaseServiceImpl page = this.page(new Page<>(bizBidNotice.getPageNo(), bizBidNotice.getPageSize()), wrapper); - List collect = page.getRecords().stream().map(BizBidShared::getSharedFile).distinct().collect(Collectors.toList()); - Optional optional = attachmentClient.findByBusinessId(collect); - optional.ifPresent(o -> { - page.getRecords().forEach(r -> { - Optional first = o.get(r.getSharedFile()).stream().findFirst(); - first.ifPresent(f -> r.setFileName(f.getFilename()).setFileSuffix(FileUtil.getSuffix(f.getFilename()))); - }); - }); + //是否可下载 + page.getRecords().forEach(p -> p.setAllowDownload(p.getSharedRoles().contains(user.getCurrentRoleCode()))); + return page; } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidsharedrecord/service/impl/BizBidSharedRecordServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidsharedrecord/service/impl/BizBidSharedRecordServiceImpl.java index ba920be..19992a0 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidsharedrecord/service/impl/BizBidSharedRecordServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/extend/bizbidsharedrecord/service/impl/BizBidSharedRecordServiceImpl.java @@ -7,11 +7,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl; +import com.chinaunicom.mall.ebtp.common.constant.EbtpRoleEnum; import com.chinaunicom.mall.ebtp.extend.bizbidsharedrecord.dao.BizBidSharedRecordMapper; import com.chinaunicom.mall.ebtp.extend.bizbidsharedrecord.entity.BizBidSharedRecord; import com.chinaunicom.mall.ebtp.extend.bizbidsharedrecord.entity.BizBidSharedRecordVO; import com.chinaunicom.mall.ebtp.extend.bizbidsharedrecord.service.IBizBidSharedRecordService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** @@ -22,8 +22,6 @@ import org.springframework.stereotype.Service; @Service public class BizBidSharedRecordServiceImpl extends BaseServiceImpl implements IBizBidSharedRecordService { - @Autowired - BizBidSharedRecordMapper bizBidSharedRecordMapper; @Override public IPage getList(BizBidSharedRecordVO recordVO) { @@ -38,13 +36,11 @@ public class BizBidSharedRecordServiceImpl extends BaseServiceImpl(recordVO.getPageNo(), recordVO.getPageSize()), wrapper); - } + Page page = this.page(new Page<>(recordVO.getPageNo(), recordVO.getPageSize()), wrapper); -// @Override -// public BizBidSharedRecord getByIdInfo(BizBidSharedRecord bizBidSharedRecord) { -// return bizBidSharedRecordMapper.getByIdInfo(bizBidSharedRecord.getRecordId(), bizBidSharedRecord.getCurrent(), bizBidSharedRecord.getPageSize()); -// } + page.getRecords().forEach(p -> p.setRecordRole(EbtpRoleEnum.matchRole(p.getRecordRole()).getDesc())); + return page; + } }