| | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import liquibase.pro.packaged.S; |
| | | import lombok.AllArgsConstructor; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springblade.core.tool.utils.DateUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.core.tool.utils.StringUtil; |
| | | import org.springblade.modules.email.service.IEmailAccountService; |
| | | import org.springblade.modules.email.service.IEmailService; |
| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.mail.MessagingException; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public Boolean customizeSave(MessageRecordVO messageRecord) { |
| | | |
| | | if (StringUtils.isBlank(messageRecord.getType())) { |
| | | return false; |
| | | } |
| | | List<User> userList = new ArrayList(); |
| | | |
| | | if (messageRecord.getMessageResource().equals("1")) { |
| | | //系统消息(receiveUser指定的是部门,所以要通过部门去查人) |
| | | userList = userService.getUserListByDeptIds(messageRecord.getReceiver()); |
| | |
| | | |
| | | //保存消息记录 |
| | | boolean saveRecord = save(messageRecord); |
| | | |
| | | List<MessageUser> messageUserList = new ArrayList<>(); |
| | | userList.forEach(user -> { |
| | | MessageUser messageUser = new MessageUser(); |
| | | |
| | | messageUser.setUserId(user.getId().toString()); |
| | | messageUser.setMessageRecordId(messageRecord.getId().toString()); |
| | | messageUser.setType(messageRecord.getType()); |
| | | messageUser.setCreateTime(DateUtil.now()); |
| | | messageUser.setUpdateTime(DateUtil.now()); |
| | | messageUser.setSendStatus("1"); |
| | | if (messageRecord.getType().indexOf("1") > -1) { |
| | | messageUser.setSendStatus("2"); |
| | | } else if (messageRecord.getType().indexOf("2") > -1) { |
| | | messageUser.setEmail(user.getEmail()); |
| | | } else if (messageRecord.getType().indexOf("3") > -1) { |
| | | messageUser.setSendStatus("2"); |
| | | messageUser.setPhone(user.getPhone()); |
| | | List<String> longs = Func.toStrList(messageRecord.getType()); |
| | | for (String type : longs) { |
| | | MessageUser messageUser = new MessageUser(); |
| | | messageUser.setUserId(user.getId().toString()); |
| | | messageUser.setMessageRecordId(messageRecord.getId()); |
| | | messageUser.setType(type); |
| | | messageUser.setCreateTime(DateUtil.now()); |
| | | messageUser.setUpdateTime(DateUtil.now()); |
| | | messageUser.setSendStatus("1"); |
| | | if (messageUser.getType().indexOf("1") > -1) { |
| | | messageUser.setSendStatus("2"); |
| | | } else if (messageUser.getType().indexOf("2") > -1) { |
| | | messageUser.setEmail(user.getEmail()); |
| | | } else if (messageUser.getType().indexOf("3") > -1) { |
| | | messageUser.setSendStatus("2"); |
| | | messageUser.setPhone(user.getPhone()); |
| | | } |
| | | messageUserList.add(messageUser); |
| | | } |
| | | |
| | | messageUserList.add(messageUser); |
| | | }); |
| | | //在message_user表里存数据 |
| | | boolean saveBatch = messageUserService.saveBatch(messageUserList); |
| | |
| | | return true; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public List<MessageRecordVO> getUnreadList() { |
| | | try { |
| | | List<MessageRecordVO> aa = emailAccountService.getUnreadList(); |
| | | return aa; |
| | | } catch (MessagingException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | } |