feat: add useSSL property to mail setting
This commit is contained in:
parent
2592056cd7
commit
29c5231526
|
@ -17,5 +17,7 @@ public class SystemEmailResponse {
|
||||||
|
|
||||||
private Boolean useSSL;
|
private Boolean useSSL;
|
||||||
|
|
||||||
|
private Boolean useTls;
|
||||||
|
|
||||||
private LocalDateTime createAt;
|
private LocalDateTime createAt;
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,4 +26,7 @@ public class SystemEmailUpdateRequest {
|
||||||
@NotNull
|
@NotNull
|
||||||
private Boolean useSSL;
|
private Boolean useSSL;
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
private Boolean useTls;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,6 +32,7 @@ public class SystemService {
|
||||||
response.setCreateAt(mail.getCreateAt());
|
response.setCreateAt(mail.getCreateAt());
|
||||||
response.setMailFrom(mail.getMailFrom());
|
response.setMailFrom(mail.getMailFrom());
|
||||||
response.setUseSSL(mail.getUseSsl());
|
response.setUseSSL(mail.getUseSsl());
|
||||||
|
response.setUseTls(mail.getUseTls());
|
||||||
return response;
|
return response;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -50,6 +51,7 @@ public class SystemService {
|
||||||
sysMail.setUsername(request.getUsername());
|
sysMail.setUsername(request.getUsername());
|
||||||
sysMail.setMailFrom(request.getMailFrom());
|
sysMail.setMailFrom(request.getMailFrom());
|
||||||
sysMail.setUseSsl(request.getUseSSL());
|
sysMail.setUseSsl(request.getUseSSL());
|
||||||
|
sysMail.setUseTls(request.getUseTls());
|
||||||
|
|
||||||
Optional<Integer> idOpt = sysMailDao.selectOptionTopOne().map(SysMail::getId);
|
Optional<Integer> idOpt = sysMailDao.selectOptionTopOne().map(SysMail::getId);
|
||||||
idOpt.ifPresent(sysMail::setId);
|
idOpt.ifPresent(sysMail::setId);
|
||||||
|
|
|
@ -13,6 +13,7 @@ import javax.mail.internet.MimeMessage;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
public class MailSender {
|
public class MailSender {
|
||||||
|
@ -54,11 +55,19 @@ public class MailSender {
|
||||||
}
|
}
|
||||||
sender.setUsername(properties.getUsername());
|
sender.setUsername(properties.getUsername());
|
||||||
sender.setPassword(properties.getPassword());
|
sender.setPassword(properties.getPassword());
|
||||||
|
Properties props = sender.getJavaMailProperties();
|
||||||
|
props.put("mail.smtp.auth", "true");
|
||||||
|
|
||||||
if (properties.getUseSsl()) {
|
if (properties.getUseSsl()) {
|
||||||
sender.setProtocol("smtps");
|
sender.setProtocol("smtps");
|
||||||
|
props.put("mail.smtp.ssl.enable", "true");
|
||||||
} else {
|
} else {
|
||||||
sender.setProtocol("smtp");
|
sender.setProtocol("smtp");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (properties.getUseTls()) {
|
||||||
|
props.put("mail.smtp.starttls.enable", "true");
|
||||||
|
}
|
||||||
sender.setDefaultEncoding(StandardCharsets.UTF_8.name());
|
sender.setDefaultEncoding(StandardCharsets.UTF_8.name());
|
||||||
return sender;
|
return sender;
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,7 @@ jooq {
|
||||||
forcedTypes {
|
forcedTypes {
|
||||||
forcedType {
|
forcedType {
|
||||||
name = 'BOOLEAN'
|
name = 'BOOLEAN'
|
||||||
includeExpression = 'deleted|enabled|is.*|use_ssl'
|
includeExpression = 'deleted|enabled|is.*|use_ssl|use_tls'
|
||||||
includeTypes = '.*'
|
includeTypes = '.*'
|
||||||
}
|
}
|
||||||
forcedType {
|
forcedType {
|
||||||
|
|
|
@ -15,7 +15,7 @@ import org.jooq.ForeignKey;
|
||||||
import org.jooq.Identity;
|
import org.jooq.Identity;
|
||||||
import org.jooq.Name;
|
import org.jooq.Name;
|
||||||
import org.jooq.Record;
|
import org.jooq.Record;
|
||||||
import org.jooq.Row9;
|
import org.jooq.Row10;
|
||||||
import org.jooq.Schema;
|
import org.jooq.Schema;
|
||||||
import org.jooq.Table;
|
import org.jooq.Table;
|
||||||
import org.jooq.TableField;
|
import org.jooq.TableField;
|
||||||
|
@ -92,6 +92,11 @@ public class SysMailTable extends TableImpl<SysMailRecord> {
|
||||||
*/
|
*/
|
||||||
public final TableField<SysMailRecord, String> MAIL_FROM = createField(DSL.name("mail_from"), SQLDataType.VARCHAR(512), this, "");
|
public final TableField<SysMailRecord, String> MAIL_FROM = createField(DSL.name("mail_from"), SQLDataType.VARCHAR(512), this, "");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The column <code>databasir.sys_mail.use_tls</code>.
|
||||||
|
*/
|
||||||
|
public final TableField<SysMailRecord, Boolean> USE_TLS = createField(DSL.name("use_tls"), SQLDataType.BOOLEAN.nullable(false).defaultValue(DSL.inline("0", SQLDataType.BOOLEAN)), this, "");
|
||||||
|
|
||||||
private SysMailTable(Name alias, Table<SysMailRecord> aliased) {
|
private SysMailTable(Name alias, Table<SysMailRecord> aliased) {
|
||||||
this(alias, aliased, null);
|
this(alias, aliased, null);
|
||||||
}
|
}
|
||||||
|
@ -167,11 +172,11 @@ public class SysMailTable extends TableImpl<SysMailRecord> {
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
// Row9 type methods
|
// Row10 type methods
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Row9<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String> fieldsRow() {
|
public Row10<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String, Boolean> fieldsRow() {
|
||||||
return (Row9) super.fieldsRow();
|
return (Row10) super.fieldsRow();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@ public class SysMail implements Serializable {
|
||||||
private LocalDateTime updateAt;
|
private LocalDateTime updateAt;
|
||||||
private LocalDateTime createAt;
|
private LocalDateTime createAt;
|
||||||
private String mailFrom;
|
private String mailFrom;
|
||||||
|
private Boolean useTls;
|
||||||
|
|
||||||
public SysMail() {}
|
public SysMail() {}
|
||||||
|
|
||||||
|
@ -38,6 +39,7 @@ public class SysMail implements Serializable {
|
||||||
this.updateAt = value.updateAt;
|
this.updateAt = value.updateAt;
|
||||||
this.createAt = value.createAt;
|
this.createAt = value.createAt;
|
||||||
this.mailFrom = value.mailFrom;
|
this.mailFrom = value.mailFrom;
|
||||||
|
this.useTls = value.useTls;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SysMail(
|
public SysMail(
|
||||||
|
@ -49,7 +51,8 @@ public class SysMail implements Serializable {
|
||||||
Boolean useSsl,
|
Boolean useSsl,
|
||||||
LocalDateTime updateAt,
|
LocalDateTime updateAt,
|
||||||
LocalDateTime createAt,
|
LocalDateTime createAt,
|
||||||
String mailFrom
|
String mailFrom,
|
||||||
|
Boolean useTls
|
||||||
) {
|
) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.username = username;
|
this.username = username;
|
||||||
|
@ -60,6 +63,7 @@ public class SysMail implements Serializable {
|
||||||
this.updateAt = updateAt;
|
this.updateAt = updateAt;
|
||||||
this.createAt = createAt;
|
this.createAt = createAt;
|
||||||
this.mailFrom = mailFrom;
|
this.mailFrom = mailFrom;
|
||||||
|
this.useTls = useTls;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -188,6 +192,20 @@ public class SysMail implements Serializable {
|
||||||
this.mailFrom = mailFrom;
|
this.mailFrom = mailFrom;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Getter for <code>databasir.sys_mail.use_tls</code>.
|
||||||
|
*/
|
||||||
|
public Boolean getUseTls() {
|
||||||
|
return this.useTls;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Setter for <code>databasir.sys_mail.use_tls</code>.
|
||||||
|
*/
|
||||||
|
public void setUseTls(Boolean useTls) {
|
||||||
|
this.useTls = useTls;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder sb = new StringBuilder("SysMail (");
|
StringBuilder sb = new StringBuilder("SysMail (");
|
||||||
|
@ -201,6 +219,7 @@ public class SysMail implements Serializable {
|
||||||
sb.append(", ").append(updateAt);
|
sb.append(", ").append(updateAt);
|
||||||
sb.append(", ").append(createAt);
|
sb.append(", ").append(createAt);
|
||||||
sb.append(", ").append(mailFrom);
|
sb.append(", ").append(mailFrom);
|
||||||
|
sb.append(", ").append(useTls);
|
||||||
|
|
||||||
sb.append(")");
|
sb.append(")");
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
|
|
|
@ -11,8 +11,8 @@ import java.time.LocalDateTime;
|
||||||
|
|
||||||
import org.jooq.Field;
|
import org.jooq.Field;
|
||||||
import org.jooq.Record1;
|
import org.jooq.Record1;
|
||||||
import org.jooq.Record9;
|
import org.jooq.Record10;
|
||||||
import org.jooq.Row9;
|
import org.jooq.Row10;
|
||||||
import org.jooq.impl.UpdatableRecordImpl;
|
import org.jooq.impl.UpdatableRecordImpl;
|
||||||
|
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ import org.jooq.impl.UpdatableRecordImpl;
|
||||||
* This class is generated by jOOQ.
|
* This class is generated by jOOQ.
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||||
public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements Record9<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String> {
|
public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements Record10<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String, Boolean> {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ -150,6 +150,20 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
return (String) get(8);
|
return (String) get(8);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Setter for <code>databasir.sys_mail.use_tls</code>.
|
||||||
|
*/
|
||||||
|
public void setUseTls(Boolean value) {
|
||||||
|
set(9, value);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Getter for <code>databasir.sys_mail.use_tls</code>.
|
||||||
|
*/
|
||||||
|
public Boolean getUseTls() {
|
||||||
|
return (Boolean) get(9);
|
||||||
|
}
|
||||||
|
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
// Primary key information
|
// Primary key information
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
|
@ -160,17 +174,17 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
// Record9 type implementation
|
// Record10 type implementation
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Row9<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String> fieldsRow() {
|
public Row10<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String, Boolean> fieldsRow() {
|
||||||
return (Row9) super.fieldsRow();
|
return (Row10) super.fieldsRow();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Row9<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String> valuesRow() {
|
public Row10<Integer, String, String, String, Integer, Boolean, LocalDateTime, LocalDateTime, String, Boolean> valuesRow() {
|
||||||
return (Row9) super.valuesRow();
|
return (Row10) super.valuesRow();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -218,6 +232,11 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
return SysMailTable.SYS_MAIL.MAIL_FROM;
|
return SysMailTable.SYS_MAIL.MAIL_FROM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Field<Boolean> field10() {
|
||||||
|
return SysMailTable.SYS_MAIL.USE_TLS;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Integer component1() {
|
public Integer component1() {
|
||||||
return getId();
|
return getId();
|
||||||
|
@ -263,6 +282,11 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
return getMailFrom();
|
return getMailFrom();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean component10() {
|
||||||
|
return getUseTls();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Integer value1() {
|
public Integer value1() {
|
||||||
return getId();
|
return getId();
|
||||||
|
@ -308,6 +332,11 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
return getMailFrom();
|
return getMailFrom();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean value10() {
|
||||||
|
return getUseTls();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SysMailRecord value1(Integer value) {
|
public SysMailRecord value1(Integer value) {
|
||||||
setId(value);
|
setId(value);
|
||||||
|
@ -363,7 +392,13 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SysMailRecord values(Integer value1, String value2, String value3, String value4, Integer value5, Boolean value6, LocalDateTime value7, LocalDateTime value8, String value9) {
|
public SysMailRecord value10(Boolean value) {
|
||||||
|
setUseTls(value);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SysMailRecord values(Integer value1, String value2, String value3, String value4, Integer value5, Boolean value6, LocalDateTime value7, LocalDateTime value8, String value9, Boolean value10) {
|
||||||
value1(value1);
|
value1(value1);
|
||||||
value2(value2);
|
value2(value2);
|
||||||
value3(value3);
|
value3(value3);
|
||||||
|
@ -373,6 +408,7 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
value7(value7);
|
value7(value7);
|
||||||
value8(value8);
|
value8(value8);
|
||||||
value9(value9);
|
value9(value9);
|
||||||
|
value10(value10);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -390,7 +426,7 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
/**
|
/**
|
||||||
* Create a detached, initialised SysMailRecord
|
* Create a detached, initialised SysMailRecord
|
||||||
*/
|
*/
|
||||||
public SysMailRecord(Integer id, String username, String password, String smtpHost, Integer smtpPort, Boolean useSsl, LocalDateTime updateAt, LocalDateTime createAt, String mailFrom) {
|
public SysMailRecord(Integer id, String username, String password, String smtpHost, Integer smtpPort, Boolean useSsl, LocalDateTime updateAt, LocalDateTime createAt, String mailFrom, Boolean useTls) {
|
||||||
super(SysMailTable.SYS_MAIL);
|
super(SysMailTable.SYS_MAIL);
|
||||||
|
|
||||||
setId(id);
|
setId(id);
|
||||||
|
@ -402,6 +438,7 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
setUpdateAt(updateAt);
|
setUpdateAt(updateAt);
|
||||||
setCreateAt(createAt);
|
setCreateAt(createAt);
|
||||||
setMailFrom(mailFrom);
|
setMailFrom(mailFrom);
|
||||||
|
setUseTls(useTls);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -420,6 +457,7 @@ public class SysMailRecord extends UpdatableRecordImpl<SysMailRecord> implements
|
||||||
setUpdateAt(value.getUpdateAt());
|
setUpdateAt(value.getUpdateAt());
|
||||||
setCreateAt(value.getCreateAt());
|
setCreateAt(value.getCreateAt());
|
||||||
setMailFrom(value.getMailFrom());
|
setMailFrom(value.getMailFrom());
|
||||||
|
setUseTls(value.getUseTls());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@ import org.springframework.data.domain.PageImpl;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.domain.Sort;
|
import org.springframework.data.domain.Sort;
|
||||||
|
|
||||||
|
import org.jooq.Record;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
alter table sys_mail
|
||||||
|
add column `use_tls` BOOLEAN NOT NULL DEFAULT FALSE;
|
|
@ -1,5 +1,5 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.1-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|
Loading…
Reference in New Issue