diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java index f5649fb9..c705440b 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java @@ -79,7 +79,9 @@ public class ArticleServiceImpl implements IArticleService{ // articles.add(article); List
tops =dao.findList(1, oc,FieldFilters.eq("status", Article.STATUS_PUBLISH), FieldFilters.eq("deleted", false), FieldFilters.eq("enabled", true), FieldFilters.isNotNull("coverurl"),FieldFilters.ne("coverurl", "")); - articles.add(tops.get(0)); + + Article first=tops.get(0); + articles.add(first); QueryBuilder builder = QueryBuilder.from(Article.class); @@ -87,6 +89,7 @@ public class ArticleServiceImpl implements IArticleService{ builder.addFilter(FieldFilters.eq("status", Article.STATUS_PUBLISH)); builder.addFilter(FieldFilters.eq("enabled",true)); builder.addFilter(FieldFilters.eq("deleted",false)); + builder.addFilter(FieldFilters.ne("id", first.getId()));//去除第一个 builder.setPageSize(3); List
list = dao.findList(builder.builder()); articles.addAll(list); diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java index 0488e181..fd0116d2 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java @@ -22,6 +22,7 @@ import com.xboe.core.log.AutoLog; import com.xboe.system.user.entity.Message; import com.xboe.system.user.service.IMessageService; import com.xboe.system.user.service.MessageSender; +import com.xboe.system.user.vo.BatchMessage; import lombok.extern.slf4j.Slf4j; @@ -108,7 +109,24 @@ public class MessageApi extends ApiBaseController { @PostMapping("/batch-send") @AutoLog(module = "消息",action = "批量发送消息") - public JsonResponse batchSave(@RequestBody Message message){ + public JsonResponse batchSave(@RequestBody BatchMessage message){ + + if(message.getAcceptIds()==null || message.getAcceptIds().isEmpty()) { + return badRequest("无发送人信息"); + } + + if(message.getAcceptNames()==null || message.getAcceptNames().isEmpty()) { + return badRequest("无发送人姓名信息"); + } + + if(message.getAcceptIds().size()!=message.getAcceptNames().size()) { + return badRequest("发送人姓名信息不相符"); + } + + if(StringUtil.isBlank(message.getTitle())){ + return badRequest("标题不能为空"); + } + if(StringUtil.isBlank(message.getTitle())){ return badRequest("标题不能为空"); } @@ -116,10 +134,10 @@ public class MessageApi extends ApiBaseController { return badRequest("内容不能为空"); } try { - message.setIsRead(false); - message.setMsgType(1); - message.setMsgTime(LocalDateTime.now()); - MessageSender.send(message); + //message.setIsRead(false); +// message.setMsgType(1); +// message.setMsgTime(LocalDateTime.now()); + //MessageSender.send(message); return success(true); } catch (Exception e) { log.error("发布消息失败",e); diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java index 3b52343b..8e7692fe 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java @@ -5,6 +5,7 @@ import java.util.Map; import com.xboe.common.PageList; import com.xboe.system.user.entity.Message; +import com.xboe.system.user.vo.BatchMessage; /** * 消息接口 @@ -20,6 +21,12 @@ public interface IMessageService { * 查看消息 * */ PageList queryMobile(int pageIndex,int pageSize,String aid,Boolean isRead); + + /** + * 批量保存 + * @param batch + */ + void batchSave(List list); /** * 删除消息 diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/MessageSender.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/MessageSender.java index bccd86a8..35f24431 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/MessageSender.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/MessageSender.java @@ -1,7 +1,12 @@ package com.xboe.system.user.service; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + import org.springframework.stereotype.Component; +import com.xboe.common.utils.IDGenerator; import com.xboe.system.user.entity.Message; /** @@ -16,9 +21,44 @@ public class MessageSender { public MessageSender(IMessageService service) { MessageSender.messageService=service; } + public static void send(Message msg) { if(messageService!=null){ messageService.save(msg); } } + + public static void batchSend(List acceptIds,List acceptNames, Message data) { + if(messageService!=null){ + List msgList=new ArrayList(); + int n=acceptIds.size(); + LocalDateTime now=LocalDateTime.now(); + for(int i=0;i ids) { dao.deleteByFilter(FieldFilters.in("id",ids)); } @Override + @Transactional public Message detail(String id) { Message message = dao.get(id); if(!message.getIsRead()){ @@ -75,6 +77,7 @@ public class MessageServiceImpl implements IMessageService { } @Override + @Transactional public void save(Message message) { dao.save(message); } @@ -89,6 +92,7 @@ public class MessageServiceImpl implements IMessageService { } @Override + @Transactional public void updateIsRead(List ids) { dao.update(UpdateBuilder.from(Message.class) .addUpdateField("isRead",true) @@ -113,6 +117,7 @@ public class MessageServiceImpl implements IMessageService { } @Override + @Transactional public void remove(String aid) { dao.deleteByFilter(FieldFilters.eq("acceptId",aid)); } @@ -128,6 +133,7 @@ public class MessageServiceImpl implements IMessageService { } @Override + @Transactional public void setReadByAcceptId(String aid) { dao.update("Update "+Message.class.getSimpleName()+" set isRead=?1 where acceptId=?2 and isRead=?3", true,aid,false); } @@ -137,4 +143,14 @@ public class MessageServiceImpl implements IMessageService { dao.deleteByField("acceptId", aid); } + + @Override + @Transactional + public void batchSave(List list) { + +// for(Message msg : list) { +// +// } + dao.saveList(list); + } } diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/vo/BatchMessage.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/vo/BatchMessage.java index 5d5ee1f7..f56b04d1 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/vo/BatchMessage.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/vo/BatchMessage.java @@ -36,4 +36,8 @@ public class BatchMessage { private Integer sendType; private String title; + + private String content; + + private Integer source; }