mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-09 10:56:50 +08:00
提交消息发送以及查看
This commit is contained in:
@@ -1,24 +1,24 @@
|
||||
package com.xboe.system.user.service.impl;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import com.xboe.common.OrderCondition;
|
||||
import com.xboe.core.orm.FilterCheckValue;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.xboe.common.PageList;
|
||||
import com.xboe.core.orm.FieldFilters;
|
||||
import com.xboe.core.orm.QueryBuilder;
|
||||
import com.xboe.core.orm.UpdateBuilder;
|
||||
import com.xboe.module.boecase.dao.CasesRecommendPushRecordDao;
|
||||
import com.xboe.module.boecase.entity.CasesRecommendPushRecord;
|
||||
import com.xboe.system.user.dao.MessageDao;
|
||||
import com.xboe.system.user.entity.Message;
|
||||
import com.xboe.system.user.service.IMessageService;
|
||||
import com.xboe.system.user.vo.BatchMessage;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 消息
|
||||
@@ -29,6 +29,9 @@ public class MessageServiceImpl implements IMessageService {
|
||||
@Resource
|
||||
private MessageDao dao;
|
||||
|
||||
@Resource
|
||||
private CasesRecommendPushRecordDao casesRecommendPushRecordDao;
|
||||
|
||||
@Override
|
||||
public PageList<Message> query(int pageIndex, int pageSize, String aid, Boolean isRead) {
|
||||
QueryBuilder builder = QueryBuilder.from(Message.class);
|
||||
@@ -72,6 +75,14 @@ public class MessageServiceImpl implements IMessageService {
|
||||
Message message = dao.get(id);
|
||||
if(!message.getIsRead()){
|
||||
dao.updateFieldById(id,"isRead",true);
|
||||
|
||||
if("99".equals(message.getRefType())){
|
||||
casesRecommendPushRecordDao.update(UpdateBuilder.from(CasesRecommendPushRecord.class)
|
||||
.addUpdateField("readFlag",1)
|
||||
.addUpdateField("readStartTime",new Date())
|
||||
.addFilter(FieldFilters.eq("id",message.getRefId()))
|
||||
.builder());
|
||||
}
|
||||
}
|
||||
return message;
|
||||
}
|
||||
@@ -94,6 +105,20 @@ public class MessageServiceImpl implements IMessageService {
|
||||
@Override
|
||||
@Transactional
|
||||
public void updateIsRead(List<String> ids) {
|
||||
if(CollectionUtils.isEmpty(ids)){
|
||||
return;
|
||||
}
|
||||
//更新最后读时间
|
||||
for (String id:ids){
|
||||
Message message = dao.get(id);
|
||||
if("99".equals(message.getRefType())){
|
||||
casesRecommendPushRecordDao.update(UpdateBuilder.from(CasesRecommendPushRecord.class)
|
||||
.addUpdateField("readEndTime",new Date())
|
||||
.addFilter(FieldFilters.eq("id",message.getRefId()))
|
||||
.builder());
|
||||
}
|
||||
}
|
||||
|
||||
dao.update(UpdateBuilder.from(Message.class)
|
||||
.addUpdateField("isRead",true)
|
||||
.addFilter(FieldFilters.in("id",ids))
|
||||
@@ -141,13 +166,13 @@ public class MessageServiceImpl implements IMessageService {
|
||||
@Override
|
||||
public void cleanByAcceptId(String aid) {
|
||||
dao.deleteByField("acceptId", aid);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void batchSave(List<Message> list) {
|
||||
|
||||
|
||||
// for(Message msg : list) {
|
||||
//
|
||||
// }
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.xboe.task;
|
||||
|
||||
import com.xboe.constants.CasesPushStatusEnum;
|
||||
import com.xboe.core.event.IEventDataSender;
|
||||
import com.xboe.module.cases.entity.CasesRecommend;
|
||||
import com.xboe.module.cases.entity.CasesRecommendPushRecord;
|
||||
import com.xboe.module.cases.service.ICasesRecommendPushRecordService;
|
||||
@@ -34,6 +35,10 @@ public class CasesRecommendPushSchedule {
|
||||
@Resource
|
||||
private ICasesRecommendPushRecordService casesRecommendPushRecordService;
|
||||
|
||||
@Resource
|
||||
private IEventDataSender eventDataSender;
|
||||
|
||||
|
||||
/**
|
||||
* 每分钟执行一次
|
||||
*/
|
||||
@@ -69,7 +74,11 @@ public class CasesRecommendPushSchedule {
|
||||
pushRecordTemp.setId(casesRecommendPushRecord.getId());
|
||||
pushRecordTemp.setPushTime(new Date());
|
||||
try {
|
||||
//TODO 推送
|
||||
|
||||
eventDataSender.send("案例推荐", "recommendCases", "案例推荐【" + casesRecommendPushRecord.getCaseTitle() + "】",
|
||||
casesRecommendPushRecord.getCaseId(), "99", casesRecommendPushRecord.getCaseTitle(),
|
||||
casesRecommendPushRecord.getSysCreateAid(), casesRecommendPushRecord.getSysCreateBy(), "");
|
||||
|
||||
pushRecordTemp.setPushStatus(CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
|
||||
} catch (Exception e) {
|
||||
pushRecordTemp.setPushStatus(CasesPushStatusEnum.PUSH_FAIL.getStatus());
|
||||
|
||||
Reference in New Issue
Block a user