孙永军 пре 1 година
родитељ
комит
e273789cf1

+ 9 - 4
src/main/java/com/smcic/api/conference/controller/ConferenceNewsController.java

@@ -4,6 +4,7 @@ package com.smcic.api.conference.controller;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.smcic.api.conference.entity.ConferenceNews;
 import com.smcic.api.conference.service.impl.ConferenceNewsServiceImpl;
+import com.smcic.core.auth.CmsLoginRequired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -26,11 +27,15 @@ public class ConferenceNewsController {
     private ConferenceNewsServiceImpl conferenceNewsService;
 
     @PostMapping("create")
+    @CmsLoginRequired
     public ConferenceNews create(@RequestBody ConferenceNews conferenceNews){
-        conferenceNews.setCreateTime(LocalDateTime.now());
-        conferenceNews.setUpdateTime(LocalDateTime.now());
-        conferenceNewsService.save(conferenceNews);
-        return conferenceNews;
+        return conferenceNewsService.create(conferenceNews);
+    }
+
+    @PostMapping("update")
+    @CmsLoginRequired
+    public void update(@RequestBody ConferenceNews conferenceNews){
+        conferenceNewsService.update(conferenceNews);
     }
 
     @GetMapping("list/{id}")

+ 1 - 3
src/main/java/com/smcic/api/conference/service/impl/ConferenceAgendaDetailServiceImpl.java

@@ -1,14 +1,12 @@
 package com.smcic.api.conference.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.smcic.api.conference.entity.ConferenceAgenda;
 import com.smcic.api.conference.entity.ConferenceAgendaDetail;
 import com.smcic.api.conference.mapper.ConferenceAgendaDetailMapper;
 import com.smcic.api.conference.service.IConferenceAgendaDetailService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.smcic.core.advice.APIException;
 import com.smcic.core.advice.BizException;
 import org.springframework.stereotype.Service;
-import org.springframework.web.bind.annotation.RequestBody;
 
 import javax.annotation.Resource;
 

+ 1 - 3
src/main/java/com/smcic/api/conference/service/impl/ConferenceAgendaServiceImpl.java

@@ -1,14 +1,12 @@
 package com.smcic.api.conference.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.smcic.api.conference.entity.ConferenceAgenda;
 import com.smcic.api.conference.entity.ConferenceAgendaDetail;
 import com.smcic.api.conference.mapper.ConferenceAgendaMapper;
 import com.smcic.api.conference.service.IConferenceAgendaService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.smcic.core.advice.APIException;
 import com.smcic.core.advice.BizException;
 import org.springframework.stereotype.Service;
-import org.springframework.web.bind.annotation.RequestBody;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;

+ 1 - 2
src/main/java/com/smcic/api/conference/service/impl/ConferenceConfServiceImpl.java

@@ -1,10 +1,9 @@
 package com.smcic.api.conference.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.smcic.api.conference.entity.ConferenceConf;
 import com.smcic.api.conference.mapper.ConferenceConfMapper;
 import com.smcic.api.conference.service.IConferenceConfService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.smcic.core.advice.APIException;
 import com.smcic.core.advice.BizException;
 import org.springframework.stereotype.Service;
 

+ 39 - 1
src/main/java/com/smcic/api/conference/service/impl/ConferenceNewsServiceImpl.java

@@ -8,8 +8,12 @@ import com.smcic.api.conference.entity.ConferenceNews;
 import com.smcic.api.conference.mapper.ConferenceNewsMapper;
 import com.smcic.api.conference.service.IConferenceNewsService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.smcic.core.advice.BizException;
 import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestBody;
 
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
 import java.util.Arrays;
 import java.util.List;
 
@@ -23,7 +27,8 @@ import java.util.List;
  */
 @Service
 public class ConferenceNewsServiceImpl extends ServiceImpl<ConferenceNewsMapper, ConferenceNews> implements IConferenceNewsService {
-
+    @Resource
+    private ConferenceAclDataServiceImpl aclDataService;
 
     public Page<ConferenceNews> newsPage(Long cid, Integer page, Integer pageSize, String category) {
         Page<ConferenceNews> newsPage = new Page<>(page, pageSize);
@@ -40,4 +45,37 @@ public class ConferenceNewsServiceImpl extends ServiceImpl<ConferenceNewsMapper,
     public List<ConferenceNews>  newsList(Long cid, String category){
         return lambdaQuery().eq(ConferenceNews::getConferenceId, cid).eq(ConferenceNews::getCategory, category).list();
     }
+
+
+    public ConferenceNews create(ConferenceNews conferenceNews){
+        if(!aclDataService.hasDataAcl(conferenceNews.getConferenceId())){
+            throw new BizException("没有该会议的权限");
+        }
+        conferenceNews.setCreateTime(LocalDateTime.now());
+        conferenceNews.setUpdateTime(LocalDateTime.now());
+        save(conferenceNews);
+        return conferenceNews;
+    }
+
+    public void update(ConferenceNews conferenceNews){
+        ConferenceNews news = getById(conferenceNews.getId());
+        if(!aclDataService.hasDataAcl(news.getConferenceId())){
+            throw new BizException("没有该会议的权限");
+        }
+
+        news.setCover(conferenceNews.getCover());
+        news.setTitle(conferenceNews.getTitle());
+        news.setSummary(conferenceNews.getSummary());
+        news.setContent(conferenceNews.getContent());
+        news.setAuthor(conferenceNews.getAuthor());
+        news.setSource(conferenceNews.getSource());
+        news.setPublishTime(conferenceNews.getPublishTime());
+
+        news.setUpdateTime(LocalDateTime.now());
+        news.setIsTop(conferenceNews.getIsTop());
+        news.setType(conferenceNews.getType());
+
+        updateById(news);
+
+    }
 }

+ 1 - 2
src/main/java/com/smcic/api/conference/service/impl/ConferenceServiceImpl.java

@@ -2,14 +2,13 @@ package com.smcic.api.conference.service.impl;
 
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.lang.UUID;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.smcic.api.conference.entity.Conference;
 import com.smcic.api.conference.mapper.ConferenceMapper;
 import com.smcic.api.conference.service.IConferenceService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.smcic.api.operate.service.OSSService;
 import com.smcic.api.user.entity.User;
 import com.smcic.api.user.service.impl.UserServiceImpl;
-import com.smcic.core.advice.APIException;
 import com.smcic.core.advice.BizException;
 import com.smcic.core.auth.AESUtil;
 import com.smcic.core.auth.HttpContextUtil;

+ 4 - 4
src/main/java/com/smcic/api/conference/service/impl/ConferenceSubscriptionServiceImpl.java

@@ -1,10 +1,10 @@
 package com.smcic.api.conference.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.smcic.api.conference.entity.ConferenceSubscription;
 import com.smcic.api.conference.mapper.ConferenceSubscriptionMapper;
 import com.smcic.api.conference.service.IConferenceSubscriptionService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.smcic.core.advice.APIException;
+import com.smcic.core.advice.BizException;
 import org.apache.http.util.TextUtils;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
@@ -28,7 +28,7 @@ public class ConferenceSubscriptionServiceImpl extends ServiceImpl<ConferenceSub
     public ConferenceSubscription create(ConferenceSubscription conferenceSubscription, String code){
         String phone =  redisTemplate.opsForValue().get("WX_CODE_" + code); // 从redis中获取手机号
         if (TextUtils.isEmpty(phone)) {
-            throw new APIException("账号已过期,请重新登陆");
+            throw new BizException("账号已过期,请重新登陆");
         }
         conferenceSubscription.setPhone(phone);
         save(conferenceSubscription);
@@ -38,7 +38,7 @@ public class ConferenceSubscriptionServiceImpl extends ServiceImpl<ConferenceSub
     public List<ConferenceSubscription> getByCode(Long id, String code){
         String phone =  redisTemplate.opsForValue().get("WX_CODE_" + code); // 从redis中获取手机号
         if (TextUtils.isEmpty(phone)) {
-            throw new APIException("账号已过期,请重新登陆");
+            throw new BizException("账号已过期,请重新登陆");
         }
         return lambdaQuery().eq(ConferenceSubscription::getConferenceId, id).eq(ConferenceSubscription::getPhone, phone)
                 .eq(ConferenceSubscription::getStatus, 1).list();

+ 0 - 1
src/main/java/com/smcic/api/conference/service/impl/SSEService.java

@@ -1,6 +1,5 @@
 package com.smcic.api.conference.service.impl;
 
-import com.smcic.core.advice.APIException;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

+ 6 - 6
src/main/java/com/smcic/api/conference/service/impl/UserThirdServiceImpl.java

@@ -6,11 +6,11 @@ import com.alibaba.fastjson.TypeReference;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.google.common.collect.ImmutableMap;
 import com.smcic.api.conference.dto.WxPhoneDTO;
-import com.smcic.api.conference.entity.ConferenceWxAccount;
 import com.smcic.api.conference.entity.ConferenceUserThird;
+import com.smcic.api.conference.entity.ConferenceWxAccount;
 import com.smcic.api.conference.mapper.ConferenceUserThirdMapper;
 import com.smcic.api.conference.service.IUserThirdService;
-import com.smcic.core.advice.APIException;
+import com.smcic.core.advice.BizException;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.http.util.TextUtils;
 import org.springframework.data.redis.core.RedisTemplate;
@@ -59,7 +59,7 @@ public class UserThirdServiceImpl extends ServiceImpl<ConferenceUserThirdMapper,
         }
         ConferenceWxAccount wxAccount = conferenceWxAccountService.getById(cid);
         if (wxAccount == null) {
-            throw new APIException("请先配置会议微信账号");
+            throw new BizException("请先配置会议微信账号");
         }
         String token;
         if (!access_token.containsKey(cid)){
@@ -73,7 +73,7 @@ public class UserThirdServiceImpl extends ServiceImpl<ConferenceUserThirdMapper,
         WxPhoneDTO wxPhoneDTO = JSON.parseObject(response, WxPhoneDTO.class);
         log.info("获取wx手机号{}", response);
         if (wxPhoneDTO.getErrcode() != 0){
-            throw new APIException("获取用户手机号失败");
+            throw new BizException("获取用户手机号失败");
         }
         redisTemplate.opsForValue().set("WX_CODE_" + code, wxPhoneDTO.getPhoneInfo().getPhoneNumber(), 60 * 60 * 24 * 30);  // 30天过期
         return wxPhoneDTO.getPhoneInfo().getPhoneNumber();
@@ -89,7 +89,7 @@ public class UserThirdServiceImpl extends ServiceImpl<ConferenceUserThirdMapper,
     public ConferenceUserThird info(Long cid , String code){
         String phone = redisTemplate.opsForValue().get("WX_CODE_" + code);
         if(TextUtils.isEmpty(phone)){
-            throw new APIException("请先登录");
+            throw new BizException("请先登录");
         }
         return lambdaQuery().eq(ConferenceUserThird::getConferenceId, cid).eq(ConferenceUserThird::getPhone, phone).one();
     }
@@ -97,7 +97,7 @@ public class UserThirdServiceImpl extends ServiceImpl<ConferenceUserThirdMapper,
     public void create(ConferenceUserThird userThird){
         boolean exists = lambdaQuery().eq(ConferenceUserThird::getConferenceId, userThird.getConferenceId()).eq(ConferenceUserThird::getPhone, userThird.getPhone()).exists();
         if (exists){
-            throw new APIException(400, "手机号已存在");
+            throw new BizException(400, "手机号已存在");
         }
         userThird.setCreateTime(LocalDateTime.now());
         save(userThird);