From d60406e8f251a7c8343825403f5fd71de1680975 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期一, 08 八月 2022 13:31:48 +0800
Subject: [PATCH] bug解决

---
 src/main/java/com/example/jz/service/impl/AnnouncementServiceImpl.java |   36 +++++++++++++++++++++++++++++-------
 1 files changed, 29 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/example/jz/service/impl/AnnouncementServiceImpl.java b/src/main/java/com/example/jz/service/impl/AnnouncementServiceImpl.java
index 5e343a3..993cc40 100644
--- a/src/main/java/com/example/jz/service/impl/AnnouncementServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/AnnouncementServiceImpl.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.example.jz.auth.TokenJwtManager;
 import com.example.jz.dao.AnnouncementDao;
 import com.example.jz.dao.UserDao;
 import com.example.jz.modle.PageParam;
@@ -12,6 +13,8 @@
 import com.example.jz.modle.vo.AnnouncementVo;
 import com.example.jz.service.AnnouncementService;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -32,6 +35,9 @@
     AnnouncementDao announcementDao;
     @Resource
     UserDao userDao;
+
+    @Autowired
+    TokenJwtManager tokenJwtManager;
 
     @Override
     public PageParam<AnnouncementVo> getAnnouncements(Integer size, Integer current, String content, Integer status, Integer groupId) {
@@ -63,20 +69,36 @@
     }
 
     @Override
-    public Integer updateStatus(Integer id) {
-        return announcementDao.update(new Announcement().setStatus(1), new UpdateWrapper<Announcement>().eq("id", id));
+    public void updateStatus(Integer id,Integer status) {
+        if (status==1){
+            announcementDao.update(new Announcement().setStatus(2), new UpdateWrapper<Announcement>().eq("id", id));
+        }else {
+            Announcement announcement = new Announcement();
+            announcement.setStatus(1);
+            announcement.setPublishTime(new Date());
+            announcementDao.update(announcement, new UpdateWrapper<Announcement>().eq("id", id));
+        }
     }
 
-    @Override
-    public Integer updateStatusUnshelve(Integer id) {
-        return announcementDao.update(new Announcement().setStatus(2), new UpdateWrapper<Announcement>().eq("id", id));
-    }
 
     @Override
     public Integer add(Integer groupId, Announcement announcement) {
-        announcement.setStatus(0);
+        announcement.setCreator(userDao.selectOne(new QueryWrapper<User>().eq("login_username", SecurityContextHolder.getContext().getAuthentication().getPrincipal())).getId());
+        if(announcement.getStatus()==1){
+            announcement.setPublishTime(new Date());
+        }
         announcement.setCtime(new Date());
         announcement.setGroupId(groupId);
         return announcementDao.insert(announcement);
     }
+
+    @Override
+    public AnnouncementVo getAnnouncementsById(Integer id) {
+        AnnouncementVo announcementVo = new AnnouncementVo();
+        Announcement announcement = announcementDao.selectById(id);
+        User user = userDao.selectOne(new QueryWrapper<User>().eq("id", announcement.getCreator()));
+        BeanUtils.copyProperties(announcement,announcementVo);
+        announcementVo.setCreateName(user.getRealName());
+        return announcementVo;
+    }
 }

--
Gitblit v1.8.0