diff --git a/system/src/main/java/com/storeroom/modules/system/domain/NoticeUsers.java b/system/src/main/java/com/storeroom/modules/system/domain/NoticeUsers.java index 60b8d27..5504ccb 100644 --- a/system/src/main/java/com/storeroom/modules/system/domain/NoticeUsers.java +++ b/system/src/main/java/com/storeroom/modules/system/domain/NoticeUsers.java @@ -35,5 +35,9 @@ public class NoticeUsers implements Serializable { @ApiModelProperty(value = "阅读状态") private Boolean isRead; + @Column(name = "push_user_name") + @ApiModelProperty(value = "推送人") + private String pushUserName; + } diff --git a/system/src/main/java/com/storeroom/modules/system/service/impl/NoticeServiceImpl.java b/system/src/main/java/com/storeroom/modules/system/service/impl/NoticeServiceImpl.java index e1ced58..090fbc9 100644 --- a/system/src/main/java/com/storeroom/modules/system/service/impl/NoticeServiceImpl.java +++ b/system/src/main/java/com/storeroom/modules/system/service/impl/NoticeServiceImpl.java @@ -12,9 +12,7 @@ import com.storeroom.modules.system.repository.NoticeUsersRepository; import com.storeroom.modules.system.service.NoticeService; import com.storeroom.modules.system.service.dto.NoticeDto; import com.storeroom.modules.system.service.dto.NoticeQueryCriteria; -import com.storeroom.utils.NanoIdUtils; -import com.storeroom.utils.PageUtil; -import com.storeroom.utils.QueryHelp; +import com.storeroom.utils.*; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import org.hibernate.validator.constraints.UniqueElements; @@ -53,19 +51,23 @@ public class NoticeServiceImpl implements NoticeService { Set deviceInfos = noticeDto.getUserId(); - + String pushUser = SecurityUtils.getCurrentUsername(); for (Long userid : deviceInfos) { NoticeUsers noticeUsers = new NoticeUsers(); Set noticeUsersList = new LinkedHashSet<>(); - Notice notice = noticeRepository.findById(noticeDto.getId()).orElseGet(Notice::new); + noticeUsers.setId(NanoIdUtils.randomNanoId()); noticeUsers.setIsRead(false); noticeUsers.setUserId(userid); noticeUsers.setNoticeId(noticeDto.getId()); + if (!StringUtils.isEmpty(pushUser)) { + noticeUsers.setPushUserName(pushUser); + } + noticeUsers.setPushUserName("admin"); noticeEntity.setNoticeUsers(noticeUsersList); noticeUsersList.add(noticeUsers); noticeEntity.setNoticeUsers(noticeUsersList); - noticeUsersRepository.save(noticeUsers); + noticeUsersRepository.save(noticeUsers); } noticeRepository.save(noticeEntity); } @@ -82,7 +84,6 @@ public class NoticeServiceImpl implements NoticeService { noticeEntity.setNoticeTitle(noticeDto.getNoticeTitle()); noticeEntity.setStatus(false); noticeEntity.setPushType(noticeDto.getPushType()); - Set deviceInfos = noticeDto.getDeviceInfoId(); for (String d : deviceInfos) {