Browse Source

修改新闻接口

DESKTOP-USV654P\pc 1 year ago
parent
commit
d0f0ea55a0

+ 23 - 1
src/main/java/com/xjrsoft/module/oa/controller/NewsController.java

@@ -40,6 +40,7 @@ import lombok.AllArgsConstructor;
 import org.apache.commons.lang3.BooleanUtils;
 import org.springframework.web.bind.annotation.*;
 
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -133,7 +134,9 @@ public class NewsController {
                 new MPJLambdaWrapper<NewsAppendix>().eq(NewsAppendix::getNewsId, id)
                         .select(NewsRelation::getId)
                         .select(NewsAppendix.class, x -> VoToColumnUtil.fieldsToColumns(NewsAppendixVo.class).contains(x.getProperty()))
-                        .leftJoin(File.class, File::getId, NewsAppendix::getFileId, ext -> ext.selectAs(File::getFileName, NewsAppendixVo::getFileName).selectAs(File::getFolderId,NewsAppendixVo::getFolderId))
+                        .leftJoin(File.class, File::getId, NewsAppendix::getFileId, ext -> ext.selectAs(File::getFileName, NewsAppendixVo::getFileName)
+                                .selectAs(File::getFolderId,NewsAppendixVo::getFolderId)
+                                .selectAs(File::getFileUrl,NewsAppendixVo::getFileUrl))
         );
 
         if (newsAppendixVoList.size() > 0) {
@@ -190,4 +193,23 @@ public class NewsController {
                 .eq(NewsRelation::getUserId, StpUtil.getLoginIdAsLong()));
         return R.ok(newsRelationService.saveBatch(toSaveList));
     }
+
+    @PutMapping("/reply")
+    @ApiOperation(value = "新闻回复")
+    public R reply(@RequestParam("id") String id, @RequestParam("replyContent") String replyContent) throws Exception {
+        NewsRelation newsRelation = newsRelationService.getOne(
+                Wrappers.<NewsRelation>query().lambda()
+                        .eq(NewsRelation::getNewsId,id)
+                        .eq(NewsRelation::getUserId,StpUtil.getLoginIdAsLong()));
+        if (replyContent == null || newsRelation == null) {
+            throw new Exception("参数异常");
+        }
+
+        if (newsRelation.getReadMark() == 0) {
+            newsRelation.setReadMark(1);
+            newsRelation.setReadDate(LocalDateTime.now());
+        }
+        newsRelation.setReplyContent(replyContent);
+        return R.ok(newsRelationService.updateById(newsRelation));
+    }
 }

+ 3 - 0
src/main/java/com/xjrsoft/module/oa/vo/NewsAppendixVo.java

@@ -20,4 +20,7 @@ public class NewsAppendixVo {
 
     @ApiModelProperty("附件夹主键")
     private Long folderId;
+
+    @ApiModelProperty("文件路径")
+    private String fileUrl;
 }