From 476d79fa7e64d3ae7e5d4b867ef78d065b1affa0 Mon Sep 17 00:00:00 2001 From: Guava Date: Mon, 3 Jul 2023 15:43:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=B9=E6=AC=A1=E6=93=8D?= =?UTF-8?q?=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/boecase/api/CasesRecommendApi.java | 2 +- .../service/ICasesRecommendService.java | 2 +- .../CasesRecommendPushRecordServiceImpl.java | 2 ++ .../impl/CasesRecommendServiceImpl.java | 27 ++++++++++++------- .../com/xboe/system/user/entity/Message.java | 18 ++++++++----- 5 files changed, 32 insertions(+), 19 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java index e67453f4..aea2acee 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java @@ -269,7 +269,7 @@ public class CasesRecommendApi extends ApiBaseController { if (StringUtils.isEmpty(casesRecommendPushVo.getCasesRecommendId())) { throw new RuntimeException("缺少必要参数"); } - iCasesRecommendService.rePushOrWithdraw(casesRecommendPushVo); + iCasesRecommendService.rePushOrWithdraw(casesRecommendPushVo,getCurrent().getAccountId()); return success(true); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesRecommendService.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesRecommendService.java index 5ea6e659..72b32837 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesRecommendService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesRecommendService.java @@ -32,6 +32,6 @@ public interface ICasesRecommendService { * 撤回或者重新推送 * @param casesRecommendPushVo */ - void rePushOrWithdraw(CasesRecommendPushVo casesRecommendPushVo); + void rePushOrWithdraw(CasesRecommendPushVo casesRecommendPushVo,String userId); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java index 35ed5dd3..32b4dc37 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java @@ -217,6 +217,7 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR message.setIsRead(false); message.setMsgTime(LocalDateTime.now()); message.setRefId(pushRecords.get(0).getRecommendId()); + message.setBatchId(pushRecords.get(0).getRecommendId()); message.setRefType("99"); message.setSendName(pushRecords.get(0).getSysCreateBy()); message.setSendType(1); @@ -258,6 +259,7 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR message.setIsRead(false); message.setMsgTime(LocalDateTime.now()); message.setRefId(casesRecommendPushRecord.getId()); + message.setBatchId(casesRecommendPushRecord.getRecommendId()); message.setRefType("99"); message.setSendName(casesRecommendPushRecord.getSysCreateBy()); message.setSendType(1); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java index 8680b44e..7cc8f21f 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java @@ -12,6 +12,7 @@ import com.xboe.module.boecase.service.ICasesRecommendPushRecordService; import com.xboe.module.boecase.service.ICasesRecommendService; import com.xboe.module.boecase.vo.CasesRecommendPushVo; import com.xboe.module.boecase.vo.CasesRecommendVo; +import com.xboe.system.user.dao.MessageDao; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -25,19 +26,22 @@ public class CasesRecommendServiceImpl implements ICasesRecommendService { @Resource private CasesRecommendDao casesRecommendDao; + + @Resource + private MessageDao dao; @Resource private ICasesRecommendPushRecordService iCasesRecommendPushRecordService; @Override public PageList page(int pageIndex, int pageSize, CasesRecommendVo casesRecommendVo) { - QueryBuilder query=QueryBuilder.from(CasesRecommend.class); - query.addFilter(FieldFilters.eq("deleted",false)); - if(StringUtils.isNotBlank(casesRecommendVo.getRecommendName())){ + QueryBuilder query = QueryBuilder.from(CasesRecommend.class); + query.addFilter(FieldFilters.eq("deleted", false)); + if (StringUtils.isNotBlank(casesRecommendVo.getRecommendName())) { query.addFilter(FieldFilters.like("recommend_by", LikeMatchMode.ANYWHERE, casesRecommendVo.getRecommendName())); } - if(!CollectionUtils.isEmpty(casesRecommendVo.getRecommendTimeList())){ - query.addFilter(FieldFilters.ge("recommend_time",casesRecommendVo.getRecommendTimeList().get(0))); - query.addFilter(FieldFilters.le("recommend_time",casesRecommendVo.getRecommendTimeList().get(1))); + if (!CollectionUtils.isEmpty(casesRecommendVo.getRecommendTimeList())) { + query.addFilter(FieldFilters.ge("recommend_time", casesRecommendVo.getRecommendTimeList().get(0))); + query.addFilter(FieldFilters.le("recommend_time", casesRecommendVo.getRecommendTimeList().get(1))); } query.addOrder(OrderCondition.desc("sys_create_time")); @@ -58,19 +62,22 @@ public class CasesRecommendServiceImpl implements ICasesRecommendService { } @Override - public void rePushOrWithdraw(CasesRecommendPushVo casesRecommendPushVo) { + public void rePushOrWithdraw(CasesRecommendPushVo casesRecommendPushVo, String userId) { // 查询 CasesRecommend db = casesRecommendDao.get(casesRecommendPushVo.getCasesRecommendId()); if (CasesPushStatusEnum.PUSH_SUCCESS.getStatus().equals(db.getPushProgress()) || CasesPushStatusEnum.WAIT_PUSH.getStatus().equals(db.getPushProgress()) || CasesPushStatusEnum.PUSH_ING.getStatus().equals(db.getPushProgress()) - ){ + ) { // 当为推送成功时为 iCasesRecommendPushRecordService.rePushOrWithdraw(true, db); db.setPushProgress(CasesPushStatusEnum.PUSH_REVOKE.getStatus()); casesRecommendDao.update(db); - }else if (CasesPushStatusEnum.PUSH_FAIL.getStatus().equals(db.getPushProgress()) - || CasesPushStatusEnum.PUSH_REVOKE.getStatus().equals(db.getPushProgress())){ + dao.deleteByFilter(FieldFilters.eq("acceptId", userId), FieldFilters.eq("refType", "99"), + FieldFilters.eq("batchId", casesRecommendPushVo.getCasesRecommendId())); + + } else if (CasesPushStatusEnum.PUSH_FAIL.getStatus().equals(db.getPushProgress()) + || CasesPushStatusEnum.PUSH_REVOKE.getStatus().equals(db.getPushProgress())) { // 推送失败或者已撤回时 iCasesRecommendPushRecordService.rePushOrWithdraw(false, db); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java index 93dc6c68..b8d47986 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/entity/Message.java @@ -1,18 +1,16 @@ package com.xboe.system.user.entity; -import java.time.LocalDateTime; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; - import com.fasterxml.jackson.annotation.JsonFormat; import com.xboe.core.SysConstant; import com.xboe.core.orm.IdEntity; - import lombok.Data; import lombok.EqualsAndHashCode; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Table; +import java.time.LocalDateTime; + @Data @EqualsAndHashCode(callSuper = false) @@ -120,4 +118,10 @@ public class Message extends IdEntity { @Column(name = "is_read") private Boolean isRead; + /** + * 批次号 + */ + @Column(name = "batch_id") + private String batchId; + }