|
@@ -11,7 +11,7 @@ import com.github.yulichang.toolkit.MPJWrappers;
|
|
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
|
|
import com.xjrsoft.common.constant.GlobalConstant;
|
|
|
import com.xjrsoft.common.enums.EnabledMark;
|
|
|
-import com.xjrsoft.common.model.result.R;
|
|
|
+import com.xjrsoft.common.model.result.RT;
|
|
|
import com.xjrsoft.common.page.ConventPage;
|
|
|
import com.xjrsoft.common.page.PageOutput;
|
|
|
import com.xjrsoft.common.utils.VoToColumnUtil;
|
|
@@ -60,19 +60,19 @@ public class NewsController {
|
|
|
|
|
|
@GetMapping
|
|
|
@ApiOperation(value = "获取新闻分页")
|
|
|
- public R page(NewsPageDto dto) {
|
|
|
+ public RT<PageOutput<NewsPageVo>> page(NewsPageDto dto) {
|
|
|
Wrapper<News> wrapper = Wrappers.<News>query().lambda()
|
|
|
.eq(News::getTypeId, dto.getType())
|
|
|
.like(StrUtil.isNotBlank(dto.getKeyword()), News::getFullHead, dto.getKeyword())
|
|
|
.select(News.class, x -> VoToColumnUtil.fieldsToColumns(NewsPageVo.class).contains(x.getProperty()));
|
|
|
IPage<News> page = newsService.page(ConventPage.getPage(dto), wrapper);
|
|
|
PageOutput<NewsPageVo> pageOutput = ConventPage.getPageOutput(page, NewsPageVo.class);
|
|
|
- return R.ok(pageOutput);
|
|
|
+ return RT.ok(pageOutput);
|
|
|
}
|
|
|
|
|
|
@GetMapping("/box")
|
|
|
@ApiOperation(value = "获取新闻分页")
|
|
|
- public R box(NewsPageDto dto) {
|
|
|
+ public RT<PageOutput<NewsPageVo>> box(NewsPageDto dto) {
|
|
|
MPJLambdaWrapper<News> wrapper = MPJWrappers.<News>lambdaJoin()
|
|
|
.distinct()
|
|
|
.eq(ObjectUtil.isNotEmpty(dto.getType()) && dto.getType() > 0, News::getTypeId, dto.getType())
|
|
@@ -86,22 +86,22 @@ public class NewsController {
|
|
|
.select(News.class, x -> VoToColumnUtil.fieldsToColumns(NewsPageVo.class).contains(x.getProperty()));
|
|
|
IPage<NewsPageVo> page = newsService.selectJoinListPage(ConventPage.getPage(dto), NewsPageVo.class, wrapper);
|
|
|
PageOutput<NewsPageVo> pageOutput = ConventPage.getPageOutput(page, NewsPageVo.class);
|
|
|
- return R.ok(pageOutput);
|
|
|
+ return RT.ok(pageOutput);
|
|
|
}
|
|
|
|
|
|
|
|
|
@PostMapping
|
|
|
@ApiOperation(value = "新增新闻")
|
|
|
- public R add(@RequestBody AddNewsDto addNewsDto) {
|
|
|
- return R.ok(newsService.add(addNewsDto));
|
|
|
+ public RT<Long> add(@RequestBody AddNewsDto addNewsDto) {
|
|
|
+ return RT.ok(newsService.add(addNewsDto));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = "/info")
|
|
|
@ApiOperation(value = "新闻详情")
|
|
|
- public R info(@RequestParam Long id, @RequestParam(required = false) Boolean isRead) {
|
|
|
+ public RT<NewsVo> info(@RequestParam Long id, @RequestParam(required = false) Boolean isRead) {
|
|
|
News news = newsService.getById(id);
|
|
|
if (news == null) {
|
|
|
- R.error("找不到此新闻!");
|
|
|
+ RT.error("找不到此新闻!");
|
|
|
}
|
|
|
if (BooleanUtils.isTrue(isRead)) {
|
|
|
// NewsRelation newsRelation = new NewsRelation();
|
|
@@ -138,26 +138,26 @@ public class NewsController {
|
|
|
newsVo.setAppendixList(newsAppendixVoList);
|
|
|
}
|
|
|
|
|
|
- return R.ok(newsVo);
|
|
|
+ return RT.ok(newsVo);
|
|
|
}
|
|
|
|
|
|
@PutMapping
|
|
|
@ApiOperation(value = "修改新闻")
|
|
|
- public R update(@RequestBody UpdateNewsDto updateNewsDto) {
|
|
|
+ public RT<Boolean> update(@RequestBody UpdateNewsDto updateNewsDto) {
|
|
|
//News news = BeanUtil.toBean(updateNewsDto, News.class);
|
|
|
- return R.ok(newsService.update(updateNewsDto));
|
|
|
+ return RT.ok(newsService.update(updateNewsDto));
|
|
|
}
|
|
|
|
|
|
@DeleteMapping
|
|
|
@ApiOperation(value = "删除新闻")
|
|
|
- public R delete(@RequestBody List<Long> ids) {
|
|
|
- return R.ok(newsService.delete(ids));
|
|
|
+ public RT<Boolean> delete(@RequestBody List<Long> ids) {
|
|
|
+ return RT.ok(newsService.delete(ids));
|
|
|
}
|
|
|
|
|
|
|
|
|
@PutMapping("/change-status")
|
|
|
@ApiOperation(value = "发布或下架新闻")
|
|
|
- public R changeStatus(@RequestParam("id") String id, @RequestParam("type") Integer type) throws Exception {
|
|
|
+ public RT<Boolean> changeStatus(@RequestParam("id") String id, @RequestParam("type") Integer type) throws Exception {
|
|
|
News xjrNews = newsService.getById(id);
|
|
|
if (type == null || xjrNews == null) {
|
|
|
throw new Exception("参数异常");
|
|
@@ -170,12 +170,12 @@ public class NewsController {
|
|
|
}
|
|
|
}
|
|
|
xjrNews.setEnabledMark(type);
|
|
|
- return R.ok(newsService.updateById(xjrNews));
|
|
|
+ return RT.ok(newsService.updateById(xjrNews));
|
|
|
}
|
|
|
|
|
|
@PutMapping("/read")
|
|
|
@ApiOperation(value = "读新闻")
|
|
|
- public R read(@RequestBody List<Long> ids) {
|
|
|
+ public RT<Boolean> read(@RequestBody List<Long> ids) {
|
|
|
List<NewsRelation> toSaveList = newsRelationService.list(
|
|
|
Wrappers.<NewsRelation>query().lambda()
|
|
|
.in(NewsRelation::getNewsId, ids)
|
|
@@ -187,12 +187,12 @@ public class NewsController {
|
|
|
// newsRelationService.remove(Wrappers.<NewsRelation>query().lambda()
|
|
|
// .in(NewsRelation::getNewsId, ids)
|
|
|
// .eq(NewsRelation::getUserId, StpUtil.getLoginIdAsLong()));
|
|
|
- return R.ok(newsRelationService.updateBatchById(toSaveList));
|
|
|
+ return RT.ok(newsRelationService.updateBatchById(toSaveList));
|
|
|
}
|
|
|
|
|
|
@PutMapping("/reply")
|
|
|
@ApiOperation(value = "新闻回复")
|
|
|
- public R reply(@RequestBody NewsReplyDto newsReplyDto) {
|
|
|
+ public RT<Boolean> reply(@RequestBody NewsReplyDto newsReplyDto) {
|
|
|
NewsRelation newsRelation = newsRelationService.getOne(
|
|
|
Wrappers.<NewsRelation>query().lambda()
|
|
|
.eq(NewsRelation::getNewsId, newsReplyDto.getId())
|
|
@@ -204,7 +204,7 @@ public class NewsController {
|
|
|
newsRelation.setReadMark(1);
|
|
|
newsRelation.setReadDate(LocalDateTime.now());
|
|
|
newsRelation.setReplyContent(newsReplyDto.getReplyContent());
|
|
|
- return R.ok(newsRelationService.save(newsRelation));
|
|
|
+ return RT.ok(newsRelationService.save(newsRelation));
|
|
|
}
|
|
|
|
|
|
if (newsRelation.getReadMark() == null || newsRelation.getReadMark() == 0) {
|
|
@@ -212,12 +212,12 @@ public class NewsController {
|
|
|
newsRelation.setReadDate(LocalDateTime.now());
|
|
|
}
|
|
|
newsRelation.setReplyContent(newsReplyDto.getReplyContent());
|
|
|
- return R.ok(newsRelationService.updateById(newsRelation));
|
|
|
+ return RT.ok(newsRelationService.updateById(newsRelation));
|
|
|
}
|
|
|
|
|
|
@GetMapping("/page-relation")
|
|
|
@ApiOperation(value = "获取新闻阅读权限分页")
|
|
|
- public R pageRelation(NewsRelationPageDto dto) {
|
|
|
+ public RT<PageOutput<NewsRelationVo>> pageRelation(NewsRelationPageDto dto) {
|
|
|
|
|
|
IPage<NewsRelationVo> page = newsRelationService.selectJoinListPage(ConventPage.getPage(dto), NewsRelationVo.class,
|
|
|
new MPJLambdaWrapper<NewsRelation>()
|
|
@@ -230,49 +230,49 @@ public class NewsController {
|
|
|
.leftJoin(XjrUser.class, XjrUser::getId, NewsRelation::getUserId, ext -> ext.selectAs(XjrUser::getName, NewsRelationVo::getUserName))
|
|
|
);
|
|
|
PageOutput<NewsRelationVo> pageOutput = ConventPage.getPageOutput(page);
|
|
|
- return R.ok(pageOutput);
|
|
|
+ return RT.ok(pageOutput);
|
|
|
}
|
|
|
|
|
|
|
|
|
@GetMapping("/page-relation-config")
|
|
|
@ApiOperation(value = "获取新闻权限分页")
|
|
|
- public R pageRelationConfig(NewsRelationPageDto dto) {
|
|
|
+ public RT<PageOutput<NewsRelationConfigVo>> pageRelationConfig(NewsRelationPageDto dto) {
|
|
|
Wrapper<NewsRelationConfig> wrapper = Wrappers.<NewsRelationConfig>query().lambda()
|
|
|
.eq(NewsRelationConfig::getNewsId, dto.getNewsId())
|
|
|
.select(NewsRelationConfig.class, x -> VoToColumnUtil.fieldsToColumns(NewsRelationConfigVo.class).contains(x.getProperty()));
|
|
|
|
|
|
IPage<NewsRelationConfig> page = newsRelationConfigService.page(ConventPage.getPage(dto), wrapper);
|
|
|
PageOutput<NewsRelationConfigVo> pageOutput = ConventPage.getPageOutput(page, NewsRelationConfigVo.class);
|
|
|
- return R.ok(pageOutput);
|
|
|
+ return RT.ok(pageOutput);
|
|
|
}
|
|
|
|
|
|
@GetMapping("/count-relation")
|
|
|
@ApiOperation(value = "新闻阅读权限统计")
|
|
|
- public R countRelation(@RequestParam Long id) {
|
|
|
+ public RT<Long[]> countRelation(@RequestParam Long id) {
|
|
|
Long total = newsRelationService.count(Wrappers.<NewsRelation>query().lambda().eq(NewsRelation::getNewsId, id));
|
|
|
Long notRead = newsRelationService.count(Wrappers.<NewsRelation>query().lambda().eq(NewsRelation::getNewsId, id).eq(NewsRelation::getReadMark, 0));
|
|
|
Long isRead = newsRelationService.count(Wrappers.<NewsRelation>query().lambda().eq(NewsRelation::getNewsId, id).eq(NewsRelation::getReadMark, 1));
|
|
|
Long isReply = newsRelationService.count(Wrappers.<NewsRelation>query().lambda().eq(NewsRelation::getNewsId, id).isNull(NewsRelation::getReplyContent));
|
|
|
Long notReply = newsRelationService.count(Wrappers.<NewsRelation>query().lambda().eq(NewsRelation::getNewsId, id).isNotNull(NewsRelation::getReplyContent));
|
|
|
Long[] arrayRefVar = {total, notRead, isRead, isReply, notReply};
|
|
|
- return R.ok(arrayRefVar);
|
|
|
+ return RT.ok(arrayRefVar);
|
|
|
}
|
|
|
|
|
|
@PutMapping("/update-relation")
|
|
|
@ApiOperation(value = "设置新闻阅读权限")
|
|
|
- public R updateRelation(@RequestBody UpdateNewsRelationDto updateRelationDto) {
|
|
|
- return R.ok(newsService.updateRelation(updateRelationDto));
|
|
|
+ public RT<Boolean> updateRelation(@RequestBody UpdateNewsRelationDto updateRelationDto) {
|
|
|
+ return RT.ok(newsService.updateRelation(updateRelationDto));
|
|
|
}
|
|
|
|
|
|
@DeleteMapping("/delete-relation")
|
|
|
@ApiOperation(value = "删除新闻阅读权限")
|
|
|
- public R deleteRelation(@RequestBody DeleteNewsRelationDto deleteNewsRelationDto) {
|
|
|
- return R.ok(newsService.deleteRelation(deleteNewsRelationDto));
|
|
|
+ public RT<Boolean> deleteRelation(@RequestBody DeleteNewsRelationDto deleteNewsRelationDto) {
|
|
|
+ return RT.ok(newsService.deleteRelation(deleteNewsRelationDto));
|
|
|
}
|
|
|
|
|
|
@GetMapping("/count-type")
|
|
|
@ApiOperation(value = "未读类型统计")
|
|
|
- public R countType() {
|
|
|
+ public RT<List<NewsCountTypeVo>> countType() {
|
|
|
List<NewsCountTypeVo> newsCountTypeVoList = new ArrayList<>();
|
|
|
Integer typeIds[] = {1, 2, 3};
|
|
|
for (Integer typeId : typeIds) {
|
|
@@ -287,13 +287,12 @@ public class NewsController {
|
|
|
}
|
|
|
newsCountTypeVoList.add(newsCountTypeVo);
|
|
|
}
|
|
|
- return R.ok(newsCountTypeVoList);
|
|
|
+ return RT.ok(newsCountTypeVoList);
|
|
|
}
|
|
|
|
|
|
@GetMapping("/send-message")
|
|
|
@ApiOperation(value = "发送消息")
|
|
|
- public R sendMessage(@RequestParam Long id) {
|
|
|
- newsService.SendMessage(id);
|
|
|
- return R.ok(true);
|
|
|
+ public RT<Boolean> sendMessage(@RequestParam Long id) {
|
|
|
+ return RT.ok(newsService.SendMessage(id));
|
|
|
}
|
|
|
}
|