| | |
| | | GridUtils.prossSqlParm(m.getSubject()) + "," + GridUtils.prossSqlParm(m.getUserCode()) + "," + GridUtils.prossSqlParm(m.getUserName()) + "," + |
| | | GridUtils.prossSqlParm(m.getContent()) + "," + GridUtils.prossSqlParm(m.getPlainText()) + "," + GridUtils.prossSqlParm(m.getFileUNID()) + "," + GridUtils.prossSqlParm(m.getMessageId()) + "," + |
| | | m.getReadFlag() + "," + m.getDeleteFlag() + ",getdate(),getdate()," + GridUtils.prossSqlParm(m.getReceiveTime()) + "," + m.getAttachFlag() + "," + |
| | | GridUtils.prossSqlParm(m.getAttachmentList())+") \n"; |
| | | GridUtils.prossSqlParm(m.getAttachmentList()) + ") \n"; |
| | | sql += "select @docCode as docCode"; |
| | | String docCode = jdbcTemplate.queryForObject(sql, String.class); |
| | | if (StringUtils.isNotBlank(docCode)) { |
| | |
| | | GridUtils.prossSqlParm(m.getSubject()) + "," + GridUtils.prossSqlParm(m.getUserCode()) + "," + GridUtils.prossSqlParm(m.getUserName()) + "," + |
| | | GridUtils.prossSqlParm(m.getContent()) + "," + GridUtils.prossSqlParm(m.getPlainText()) + "," + GridUtils.prossSqlParm(m.getFileUNID()) + "," + GridUtils.prossSqlParm(m.getMessageId()) + "," + |
| | | m.getReadFlag() + "," + m.getDeleteFlag() + ",getdate(),getdate()," + GridUtils.prossSqlParm(m.getReceiveTime()) + "," + |
| | | m.getAttachFlag() + ","+GridUtils.prossSqlParm(m.getAttachmentList())+") \n"; |
| | | m.getAttachFlag() + "," + GridUtils.prossSqlParm(m.getAttachmentList()) + ") \n"; |
| | | // sql +="exec postt482101V3 '' ,'',''"; |
| | | } |
| | | jdbcTemplate.update(sql); |
| | |
| | | @Override |
| | | public List<t482101HEntity> getMailReceiving(T482102Entity emailEntity, HttpServletRequest request) throws MessagingException { |
| | | String imapServer = emailEntity.getReceiveHost();//"imap.qq.com"; |
| | | String user = emailEntity.getEmail();//"xxx@qq.com"; |
| | | String pwd = emailEntity.getPassword();//"xxxx"; |
| | | String user = emailEntity.getReceiveEmail();//"xxx@qq.com"; |
| | | String pwd = emailEntity.getReceivePassword();//"xxxx"; |
| | | |
| | | Properties properties = new Properties(); |
| | | properties.put("mail.store.protocol", emailEntity.getReceiveProtocol()); // IMAP over SSL |
| | | properties.put("mail.imaps.host", emailEntity.getReceiveHost()); |
| | | properties.put("mail.imaps.port", emailEntity.getReceivePort()); |
| | | properties.put("mail.imaps.starttls.enable", "true");//// IMAP 协议设置 STARTTLS |
| | | |
| | | HashMap IAM = new HashMap(); |
| | | //带上IMAP ID信息,由key和value组成,例如name,version,vendor,support-email等。 |
| | | IAM.put("name", emailEntity.getAliasEmail()); |
| | | IAM.put("name", emailEntity.getReceiveEmail()); |
| | | IAM.put("version", emailEntity.getDocVersion() + ""); |
| | | IAM.put("vendor", emailEntity.getCompanyName()); |
| | | IAM.put("support-email", emailEntity.getEmail()); |
| | | //创建会话 |
| | | Session session = Session.getInstance(new Properties(), new Authenticator() { |
| | | Session session = Session.getInstance(properties, new Authenticator() { |
| | | @Override |
| | | protected PasswordAuthentication getPasswordAuthentication() { |
| | | return new PasswordAuthentication(user, pwd); |
| | |
| | | try { |
| | | //根据当前用户查询绑定的邮箱信息 |
| | | T482102Entity emailEntity = emailAccountIfc.getAccountInfo(t482101H.getUserCode(), t482101H.getSender());//返回邮箱的账号信息 |
| | | if (emailEntity == null || StringUtils.isBlank(emailEntity.getEmail())) { |
| | | if (emailEntity == null || StringUtils.isBlank(emailEntity.getSmtpEmail())) { |
| | | if (StringUtils.isBlank(t482101H.getDocCode())) { |
| | | t482101H.setMailType(0);//草稿箱状态 |
| | | t482101H = saveReceivingMail(t482101H);//保存到草稿箱内 |
| | |
| | | Properties properties = new Properties(); |
| | | properties.setProperty("mail.smtp.host", emailEntity.getSmtpHost()); |
| | | properties.setProperty("mail.smtp.port", emailEntity.getSmtpPort() + ""); |
| | | properties.setProperty("mail.smtp.auth", "true"); |
| | | properties.setProperty("mail.smtp.starttls.enable", "true"); |
| | | properties.setProperty("mail.smtp.auth", "true");// // 设置SMTP是否需要认证 |
| | | properties.put("mail.smtp.ssl.enable", emailEntity.isSmtpSSL()+"");// // 设置启用SSL加密 |
| | | properties.setProperty("mail.smtp.starttls.enable", "true");//// SMTP 协议设置 STARTTLS 开启tls |
| | | |
| | | // |
| | | String sendEmail = emailEntity.getEmail();//发件人 |
| | | String sendPassword = emailEntity.getPassword();//密码 |
| | | String sendEmail = emailEntity.getSmtpEmail();//发件人 |
| | | String sendPassword = emailEntity.getSmtpPassword();//密码 |
| | | String recipientEmail = StringUtils.join(t482101H.getReceiver(), ",");//收件人 |
| | | Session session = Session.getInstance(properties, new Authenticator() { |
| | | @Override |
| | |
| | | sql += "update t482101H set sender=" + GridUtils.prossSqlParm(mail.getSender()) + ",receiver=" + GridUtils.prossSqlParm(StringUtils.join(mail.getReceiver(), ",")) + "," + |
| | | "cc=" + GridUtils.prossSqlParm(StringUtils.join(mail.getCc(), ",")) + ",bcc=" + GridUtils.prossSqlParm(StringUtils.join(mail.getBcc(), ",")) + ",subject=" + GridUtils.prossSqlParm(mail.getSubject()) + "," + |
| | | "content=" + GridUtils.prossSqlParm(mail.getContent()) + ",file_unid=" + GridUtils.prossSqlParm(mail.getFileUNID()) + ",mailType=" + mail.getMailType() + "," + |
| | | "updateTime=getdate() \n"; |
| | | "update_time=getdate() \n"; |
| | | sql += " where docCode=" + GridUtils.prossSqlParm(mail.getDocCode()); |
| | | sql += " select @@ROWCOUNT"; |
| | | return jdbcTemplate.queryForObject(sql, Integer.class); |
| | |
| | | int count = 0; |
| | | for (T482102Entity a : account) { |
| | | MailModuleEntity.MailCode nextCode = new MailModuleEntity.MailCode(); |
| | | nextCode.setMailName(a.getEmail()); |
| | | String eMail = (mailType == 1 ? a.getReceiveEmail() : a.getSmtpEmail());//获取邮箱账号 |
| | | nextCode.setMailName(eMail); |
| | | nextCode.setMailType(m.getMailType()); |
| | | if (userMail.size() > 0) { |
| | | count = (mailType == 1 ? (int) userMail.stream().filter(s -> s.getMailType().equals(mailType) && s.getReceiver().contains(a.getEmail())).count() : |
| | | (int) userMail.stream().filter(s -> s.getMailType().equals(mailType) && s.getSender().contains(a.getEmail())).count()); |
| | | count = (mailType == 1 ? (int) userMail.stream().filter(s -> s.getMailType().equals(mailType) && s.getReceiver().contains(eMail)).count() : |
| | | (int) userMail.stream().filter(s -> s.getMailType().equals(mailType) && s.getSender().contains(eMail)).count()); |
| | | nextCode.setTotal(count); |
| | | } |
| | | codeList.add(nextCode); |