|
|
@@ -16,19 +16,25 @@
|
|
|
*/
|
|
|
package org.springblade.desk.controller;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
import io.swagger.annotations.*;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
+import org.springblade.client.entity.CommonFile;
|
|
|
import org.springblade.client.entity.CorpsDesc;
|
|
|
import org.springblade.core.boot.ctrl.BladeController;
|
|
|
import org.springblade.core.mp.support.BladePage;
|
|
|
import org.springblade.core.mp.support.Condition;
|
|
|
import org.springblade.core.mp.support.Query;
|
|
|
+import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tenant.annotation.TenantDS;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
import org.springblade.core.tool.utils.ObjectUtil;
|
|
|
+import org.springblade.core.tool.utils.RsaUtil;
|
|
|
+import org.springblade.core.tool.utils.StringUtil;
|
|
|
import org.springblade.desk.entity.Notice;
|
|
|
import org.springblade.desk.feign.INoticeClient;
|
|
|
import org.springblade.desk.service.INoticeService;
|
|
|
@@ -37,6 +43,7 @@ import org.springblade.desk.wrapper.NoticeWrapper;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import springfox.documentation.annotations.ApiIgnore;
|
|
|
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
@@ -63,6 +70,7 @@ public class NoticeController extends BladeController {
|
|
|
@ApiOperation(value = "详情", notes = "传入notice")
|
|
|
public R<NoticeVO> detail(Notice notice) {
|
|
|
Notice detail = noticeService.getOne(Condition.getQueryWrapper(notice));
|
|
|
+ detail.setFileList(noticeService.fileList(detail.getId()));
|
|
|
return R.data(NoticeWrapper.build().entityVO(detail));
|
|
|
}
|
|
|
|
|
|
@@ -76,13 +84,22 @@ public class NoticeController extends BladeController {
|
|
|
})
|
|
|
@ApiOperationSupport(order = 2)
|
|
|
@ApiOperation(value = "分页", notes = "传入notice")
|
|
|
- public R<IPage<NoticeVO>> list(@ApiIgnore @RequestParam Map<String, Object> notice, Query query) {
|
|
|
- IPage<Notice> pages = noticeService.page(Condition.getPage(query), Condition.getQueryWrapper(notice, Notice.class));
|
|
|
- if (ObjectUtil.isNotEmpty(pages)){
|
|
|
- pages.getRecords().stream().forEach(item -> {
|
|
|
- item.setFileList(noticeService.fileList(item.getId()));
|
|
|
- });
|
|
|
+ public R<IPage<NoticeVO>> list(Notice notice, Query query) {
|
|
|
+ LambdaQueryWrapper<Notice> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.eq(Notice::getTenantId, AuthUtil.getTenantId());
|
|
|
+ lambdaQueryWrapper.eq(Notice::getIsDeleted, 0);
|
|
|
+ lambdaQueryWrapper.like(StringUtil.isNotBlank(notice.getTitle()), Notice::getTitle, notice.getTitle());//标题
|
|
|
+ lambdaQueryWrapper.eq(ObjectUtil.isNotEmpty(notice.getCategory()), Notice::getCategory, notice.getCategory());//通知类型
|
|
|
+ lambdaQueryWrapper.ge(StringUtil.isNotBlank(notice.getReleaseTimeStart()), Notice::getReleaseTime, notice.getReleaseTimeStart());//通告开始日期
|
|
|
+ lambdaQueryWrapper.le(StringUtil.isNotBlank(notice.getReleaseTimeEnd()), Notice::getReleaseTime, notice.getReleaseTimeEnd());//通告结束日期
|
|
|
+
|
|
|
+ //根据角色设置权限
|
|
|
+ String role = AuthUtil.getUserRole();
|
|
|
+ if (!role.contains("admin")){//admin能看全部,不是admin根据登录人查询
|
|
|
+ lambdaQueryWrapper.in(Notice::getSendRange,AuthUtil.getUserId());
|
|
|
}
|
|
|
+
|
|
|
+ IPage<Notice> pages = noticeService.page(Condition.getPage(query), lambdaQueryWrapper);
|
|
|
return R.data(NoticeWrapper.build().pageVO(pages));
|
|
|
}
|
|
|
|
|
|
@@ -108,7 +125,7 @@ public class NoticeController extends BladeController {
|
|
|
@ApiOperationSupport(order = 4)
|
|
|
@ApiOperation(value = "新增", notes = "传入notice")
|
|
|
public R save(@RequestBody Notice notice) {
|
|
|
- return R.status(noticeService.save(notice));
|
|
|
+ return R.data(noticeService.saveNotice(notice));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -128,7 +145,8 @@ public class NoticeController extends BladeController {
|
|
|
@ApiOperationSupport(order = 6)
|
|
|
@ApiOperation(value = "新增或修改", notes = "传入notice")
|
|
|
public R submit(@RequestBody Notice notice) {
|
|
|
- return R.status(noticeService.saveOrUpdate(notice));
|
|
|
+ return R.data(noticeService.saveNotice(notice));
|
|
|
+// return R.status(noticeService.saveOrUpdate(notice));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -157,7 +175,7 @@ public class NoticeController extends BladeController {
|
|
|
* 附件上传
|
|
|
*/
|
|
|
@PostMapping("/file")
|
|
|
- @ApiOperationSupport(order = 15)
|
|
|
+ @ApiOperationSupport(order = 9)
|
|
|
@ApiOperation(value = "附件上传", notes = "传入fileList")
|
|
|
public R file(@RequestBody Notice notice) {
|
|
|
return R.status(noticeService.file(notice));
|
|
|
@@ -167,7 +185,7 @@ public class NoticeController extends BladeController {
|
|
|
* 附件列表
|
|
|
*/
|
|
|
@GetMapping("/file-list")
|
|
|
- @ApiOperationSupport(order = 16)
|
|
|
+ @ApiOperationSupport(order = 10)
|
|
|
@ApiOperation(value = "附件列表", notes = "传入id")
|
|
|
public R fileList(Long id) {
|
|
|
return R.data(noticeService.fileList(id));
|