feat:修改上传人

This commit is contained in:
2023-05-23 11:33:31 +08:00
parent a4a4189181
commit 71c3662665
4 changed files with 98 additions and 1 deletions
@@ -16,6 +16,7 @@ import com.adc.da.report.util.LocalFileUtil;
import com.adc.da.report.util.OSSClientUtil;
import com.adc.da.report.util.ObsBootUtil;
import com.adc.da.report.util.WaterMarkUtil;
import com.adc.da.report.vo.ChangeUploaderVo;
import com.adc.da.report.vo.ReportQueryVo;
import com.adc.da.report.vo.ReportVo;
import com.adc.da.util.exception.AdcDaBaseException;
@@ -38,6 +39,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.*;
import java.net.URISyntaxException;
import java.net.URLEncoder;
@@ -186,6 +188,18 @@ public class ReportManageConroller {
return Result.success(list);
}
/**
* 修改上传人
* @param changeUploaderVo
* @return
* @throws Exception
*/
@ApiOperation("修改上传人")
@PostMapping("/changeUploader")
public ResponseMessage changeUploader(@Valid @RequestBody ChangeUploaderVo changeUploaderVo) {
return reportService.changeUploader(changeUploaderVo);
}
/**
@@ -1,6 +1,7 @@
package com.adc.da.report.service;
import com.adc.da.report.eo.ReportEntity;
import com.adc.da.report.vo.ChangeUploaderVo;
import com.adc.da.report.vo.ReportQueryVo;
import com.adc.da.report.vo.ReportVo;
import com.adc.da.util.http.ResponseMessage;
@@ -78,5 +79,20 @@ public interface IReportService {
*/
Boolean isAllowDownload(String userId, String repostId);
/**
* 判断用户是否允许修改上传人
*
* @param userId 用户id
* @return 是否有修改上传人的权限
*/
Boolean isAllowChangeUploader(String userId);
void addOrUpdate(ReportEntity reportEntity);
/**
* 更改上传人
* @param changeUploaderVo
* @return
*/
ResponseMessage changeUploader(ChangeUploaderVo changeUploaderVo);
}
@@ -10,14 +10,17 @@ import com.adc.da.report.dao.mysql.ReportLabelDao;
import com.adc.da.report.eo.*;
import com.adc.da.report.service.*;
import com.adc.da.report.util.*;
import com.adc.da.report.vo.ChangeUploaderVo;
import com.adc.da.report.vo.ReportDetailVo;
import com.adc.da.report.vo.ReportQueryVo;
import com.adc.da.report.vo.ReportVo;
import com.adc.da.sys.dao.mysql.RoleEODao;
import com.adc.da.sys.dao.mysql.UserEODao;
import com.adc.da.sys.entity.MenuEO;
import com.adc.da.sys.entity.OrgEO;
import com.adc.da.sys.entity.RoleEO;
import com.adc.da.sys.entity.UserEO;
import com.adc.da.sys.service.MenuEOService;
import com.adc.da.sys.service.OrgEOService;
import com.adc.da.util.http.ResponseMessage;
import com.adc.da.util.http.Result;
@@ -27,7 +30,7 @@ import com.adc.da.util.utils.StringUtils;
import com.adc.da.util.utils.UUID;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -118,9 +121,12 @@ public class IReportServiceImpl extends ServiceImpl<ReportDao, ReportEntity>
@Resource
private OrgEOService orgEOService;
@Resource
private ILogService logService;
@Resource
private MenuEOService menuEOService;
@Override
public void addOrUpdate(ReportEntity reportEntity) {
@@ -161,6 +167,20 @@ public class IReportServiceImpl extends ServiceImpl<ReportDao, ReportEntity>
}
@Override
public ResponseMessage changeUploader(ChangeUploaderVo changeUploaderVo) {
//判断当前登陆人是否有权限更改上传人
if (!this.isAllowChangeUploader(UserUtils.getUserId())) {
return Result.error("无权限更改上传人");
}
//更改上传人
LambdaUpdateWrapper<ReportEntity> wrapper = new LambdaUpdateWrapper<>();
wrapper.in(ReportEntity::getId, changeUploaderVo.getReportIds());
wrapper.set(ReportEntity::getCreateUserId, changeUploaderVo.getUserId());
update(wrapper);
return Result.success("修改成功");
}
/**
* 新增或编辑报告
*
@@ -627,6 +647,18 @@ public class IReportServiceImpl extends ServiceImpl<ReportDao, ReportEntity>
return list;
}
@Override
public Boolean isAllowChangeUploader(String userId) {
//找出对应的权限id
List<MenuEO> menuEOS = menuEOService.listMenuEOByUserId(userId);
for (MenuEO menuEO : menuEOS) {
if ("修改上传人".equals(menuEO.getName())) {
return true;
}
}
return false;
}
@Override
public Boolean isAllowDownload(String userId, String reportId) {
//校验权限
@@ -0,0 +1,35 @@
package com.adc.da.report.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* @author: CaiHaohan
* @Date: 2023/5/22 11:03
* @Description:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class ChangeUploaderVo {
/**
* 报告ids
*/
@NotEmpty
private List<String> reportIds;
/**
* 用户id
*/
@NotBlank
private String userId;
}