Explorar el Código

发送邀请邮件功能

XMTT %!s(int64=8) %!d(string=hace) años
padre
commit
dd7df11281

+ 126 - 0
src/main/java/com/ekexiu/console/system/mail/MailService.java

@ -0,0 +1,126 @@
1
package com.ekexiu.console.system.mail;
2
3
import org.jfw.apt.annotation.Bean;
4
5
import javax.mail.Message;
6
import javax.mail.MessagingException;
7
import javax.mail.Session;
8
import javax.mail.Transport;
9
import javax.mail.internet.AddressException;
10
import javax.mail.internet.InternetAddress;
11
import javax.mail.internet.MimeMessage;
12
import java.io.UnsupportedEncodingException;
13
import java.util.Map;
14
import java.util.Properties;
15
16
@Bean
17
public class MailService {
18
	private Properties sessionProperties = new Properties();;
19
	private String mailHost;
20
	private int port;
21
	private String username;
22
	private String password;
23
	private Session session;
24
	private String from;
25
	private String nick;
26
27
	public void setNick(String nick) {
28
		if (nick == null)
29
			return;
30
		try {
31
			this.nick = javax.mail.internet.MimeUtility.encodeText(nick);
32
		} catch (UnsupportedEncodingException e) {
33
			this.nick = null;
34
		}
35
	}
36
37
	public String getFrom() {
38
		return from;
39
	}
40
41
	public void setFrom(String from) {
42
		this.from = from;
43
	}
44
45
	private Session getSession() {
46
		if (null == this.session) {
47
			this.session = Session.getInstance(this.sessionProperties);
48
		}
49
		return this.session;
50
	}
51
52
	public int getPort() {
53
		return port;
54
	}
55
56
	public void setPort(int port) {
57
		this.port = port;
58
	}
59
60
	public Properties getSessionProperties() {
61
		return sessionProperties;
62
	}
63
64
	public void setSessionProperties(Map<String, String> map) {
65
		this.sessionProperties.clear();
66
		this.sessionProperties.putAll(map);
67
	}
68
69
	public String getMailHost() {
70
		return mailHost;
71
	}
72
73
	public void setMailHost(String mailHost) {
74
		this.mailHost = mailHost;
75
	}
76
77
	public String getUsername() {
78
		return username;
79
	}
80
81
	public void setUsername(String username) {
82
		this.username = username;
83
	}
84
85
	public String getPassword() {
86
		return password;
87
	}
88
89
	public void setPassword(String password) {
90
		this.password = password;
91
	}
92
93
	public void sendSimpleMail(String to, String template, Map<String, String> values, String subject) throws MessagingException {
94
		Transport ts = this.getSession().getTransport();
95
		ts.connect(this.mailHost, port, username, password);
96
		try {
97
			Message message = this.createSimpleMail(to, subject, template, values);
98
			ts.sendMessage(message, message.getAllRecipients());
99
		} finally {
100
			try {
101
				ts.close();
102
			} catch (Exception e) {
103
			}
104
		}
105
	}
106
107
	private MimeMessage createSimpleMail(String to, String subject, String template, Map<String, String> values) throws AddressException, MessagingException {
108
		MimeMessage message = new MimeMessage(session);
109
		if (null == this.nick) {
110
			message.setFrom(new InternetAddress(this.from));
111
		} else {
112
			message.setFrom(new InternetAddress(this.nick + " <" + this.from + ">"));
113
		}
114
		message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
115
		message.setSubject(subject);
116
117
		String content = template;
118
		if (null != values && values.size() > 0) {
119
			for (Map.Entry<String, String> entry : values.entrySet()) {
120
				content = content.replaceAll(entry.getKey(), entry.getValue());
121
			}
122
		}
123
		message.setContent(content, "text/html;charset=UTF-8");
124
		return message;
125
	}
126
}

+ 12 - 1
src/main/java/com/ekexiu/console/system/po/MyCustomer.java

@ -35,7 +35,18 @@ public class MyCustomer  implements CreateTimeSupported,ModifyTimeSupported,Desc
35 35
	private String modifyTime;
36 36
	private String cuserId;
37 37
	private String cuserName;
38
//String_de大写的是允许为空,小写的是不允许为空
38
	private String inviteCode;
39

40
	@Column(DE.String_de)
41
	public String getInviteCode() {
42
		return inviteCode;
43
	}
44

45
	public void setInviteCode(String inviteCode) {
46
		this.inviteCode = inviteCode;
47
	}
48

49
	//String_de大写的是允许为空,小写的是不允许为空
39 50
	@Column(DE.string_de)
40 51
	public String getPowerId() {
41 52
		return powerId;

+ 183 - 0
src/main/java/com/ekexiu/console/system/service/EmailService.java

@ -0,0 +1,183 @@
1
package com.ekexiu.console.system.service;
2
3
import com.ekexiu.console.system.mail.MailService;
4
import org.apache.log4j.Logger;
5
import org.jfw.apt.annotation.Autowrie;
6
import org.jfw.apt.annotation.Nullable;
7
import org.jfw.apt.web.annotation.Path;
8
import org.jfw.apt.web.annotation.operate.Post;
9
import org.jfw.apt.web.annotation.param.JdbcConn;
10
11
import javax.mail.MessagingException;
12
import java.sql.Connection;
13
import java.sql.SQLException;
14
15
/**
16
 * Created by TT on 2017/5/11.
17
 */
18
@Path
19
public class EmailService {
20
    private Logger logger = Logger.getLogger(EmailService.class);
21
22
    @Autowrie
23
    private MailService mailservice;
24
25
    private String phoneContentTemplate;
26
27
    private String content = "contentKey";
28
    private String contentDefault = "科袖网是一个为科研工作者服务的平台。我们将为您免费提供一个专属主页,您可以对外展示您的科研经历、成果以及资源,我们的平台将面向全国的企业与科研机构进行推广,您将得到更多与企业的合作、与同行交流的机会。";
29
30
    private String appellation = "appellationKey";
31
    private String appellationDefault = "您好";
32
33
    private String phoneReplaceKey = "mobileCode";
34
    private String inviteReplacePhone = "phoneKey";
35
    private String inviteReplaceEmail = "mailKey";
36
    private String inviteReplaceCode = "invitCodeKey";
37
    private String inviteMailSubject = "[ 科袖网 ]特邀科研专家邀请函";
38
    private String inviteMailContentTempalte;
39
40
    public String getAppellation() {
41
        return appellation;
42
    }
43
44
    public void setAppellation(String appellation) {
45
        this.appellation = appellation;
46
    }
47
48
    public String getAppellationDefault() {
49
        return appellationDefault;
50
    }
51
52
    public void setAppellationDefault(String appellationDefault) {
53
        this.appellationDefault = appellationDefault;
54
    }
55
56
    public String getContentDefault() {
57
        return contentDefault;
58
    }
59
60
    public void setContentDefault(String contentDefault) {
61
        this.contentDefault = contentDefault;
62
    }
63
64
    public String getContent() {
65
        return content;
66
    }
67
68
    public void setContent(String content) {
69
        this.content = content;
70
    }
71
72
    public MailService getMailservice() {
73
        return mailservice;
74
    }
75
76
    public void setMailservice(MailService mailservice) {
77
        this.mailservice = mailservice;
78
    }
79
80
    public String getPhoneContentTemplate() {
81
        return phoneContentTemplate;
82
    }
83
84
    public void setPhoneContentTemplate(String phoneContentTemplate) {
85
        this.phoneContentTemplate = phoneContentTemplate;
86
    }
87
88
    public String getPhoneReplaceKey() {
89
        return phoneReplaceKey;
90
    }
91
92
    public void setPhoneReplaceKey(String phoneReplaceKey) {
93
        this.phoneReplaceKey = phoneReplaceKey;
94
    }
95
96
    public String getInviteReplacePhone() {
97
        return inviteReplacePhone;
98
    }
99
100
    public void setInviteReplacePhone(String inviteReplacePhone) {
101
        this.inviteReplacePhone = inviteReplacePhone;
102
    }
103
104
    public String getInviteReplaceEmail() {
105
        return inviteReplaceEmail;
106
    }
107
108
    public void setInviteReplaceEmail(String inviteReplaceEmail) {
109
        this.inviteReplaceEmail = inviteReplaceEmail;
110
    }
111
112
    public String getInviteReplaceCode() {
113
        return inviteReplaceCode;
114
    }
115
116
    public void setInviteReplaceCode(String inviteReplaceCode) {
117
        this.inviteReplaceCode = inviteReplaceCode;
118
    }
119
120
    public String getInviteMailSubject() {
121
        return inviteMailSubject;
122
    }
123
124
    public void setInviteMailSubject(String inviteMailSubject) {
125
        this.inviteMailSubject = inviteMailSubject;
126
    }
127
128
    public String getInviteMailContentTempalte() {
129
        return inviteMailContentTempalte;
130
    }
131
132
    public void setInviteMailContentTempalte(String inviteMailContentTempalte) {
133
        this.inviteMailContentTempalte = inviteMailContentTempalte;
134
    }
135
136
    /**
137
     * 给指定邮箱发送邀请邮件
138
     *
139
     * @param con
140
     * @param mobilePhones 手机号数组
141
     * @param emails       邮箱
142
     * @param inviteCodes  邀请码
143
     * @throws SQLException
144
     * @throws MessagingException
145
     */
146
    @Post
147
    @Path("/sendmail")
148
    public int sendmail(@Nullable String content,@Nullable String appellation, @Nullable String[] mobilePhones, String[] emails, String[] inviteCodes)
149
            throws SQLException, MessagingException {
150
        for (int i = 0; i < emails.length; i++) {
151
            if (mobilePhones[i] == "") {
152
                mobilePhones[i] = null;
153
            }
154
            if (content == null) {
155
                content = this.contentDefault;
156
            }
157
            if (appellation == null) {
158
                appellation = this.appellationDefault;
159
            }
160
            this.sendInviteMail(content, appellation,emails[i], mobilePhones[i], inviteCodes[i]);
161
            this.logger.info("成功发送邀请邮件:" + emails[i]);
162
        }
163
        return emails.length;
164
    }
165
166
    public void sendInviteMail(String content,String appellation,String email, @Nullable String mobilePhone, String inviteCode)
167
            throws MessagingException {
168
        String mailContent = this.inviteMailContentTempalte;
169
        mailContent = mailContent.replaceAll(this.inviteReplaceEmail, email);
170
        mailContent = mailContent.replaceAll(this.inviteReplaceCode, inviteCode);
171
        mailContent = mailContent.replaceAll(this.appellation, appellation);
172
        mailContent = mailContent.replaceAll(this.content, content);
173
        String phoneReplace = "";
174
        if (mobilePhone != null && mobilePhone.trim().length() == 11) {
175
            String mobile = mobilePhone.trim();
176
            mobile = mobile.substring(0, 3) + "****" + mobile.substring(7);
177
            phoneReplace = this.phoneContentTemplate.replaceAll(this.phoneReplaceKey, mobile);
178
        }
179
        mailContent = mailContent.replaceAll(this.inviteReplacePhone, phoneReplace);
180
        this.mailservice.sendSimpleMail(email, mailContent, null, this.inviteMailSubject);
181
    }
182
183
}

+ 26 - 1
src/main/resources/project-dev.properties

@ -31,4 +31,29 @@ dataSource.poolPreparedStatements::boolean=true
31 31
dataSource.maxPoolPreparedStatementPerConnectionSize::int=20
32 32
#默认的SQL语句自动提交状态(开启或关闭)设置由连接池本身设置(false由连接池定)
33 33
dataSource.defaultAutoCommit::boolean=false
34
com_ekexiu_console_system_service_UserService.path::java.io.File=D:/tmp/data
34

35

36
com_ekexiu_console_system_service_EmailService.phoneContentTemplate=<p class\='infoBox'><span class\='importInfo'>mobileCode</span><span style\='margin-left\:20px;'> \u6216\u8005</span></p>
37
com_ekexiu_console_system_service_EmailService.inviteMailSubject=[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD
38
com_ekexiu_console_system_service_EmailService.phoneReplaceKey=mobileCode
39
com_ekexiu_console_system_service_EmailService.inviteReplacePhone=phoneKey
40
com_ekexiu_console_system_service_EmailService.inviteReplaceEmail=mailKey
41
com_ekexiu_console_system_service_EmailService.content=contentKey
42
com_ekexiu_console_system_service_EmailService.appellation=appellationKey
43
com_ekexiu_console_system_service_EmailService.inviteReplaceCode=invitCodeKey
44
#特邀专家发送邀请邮件
45
com_ekexiu_console_system_service_EmailService.inviteMailContentTempalte=<html lang\="en">\r\n<head>\r\n<meta name\="viewport" content\="width\=device-width, initial-scale\=1" />\r\n<meta http-equiv\="Content-Type" content\="text/html; charset\=utf-8">\r\n<title>[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</title>\r\n<style>\r\nbody {width\:100%\!important;font-family\: Microsoft Yahei, Arial, sans-serif; -webkit-text-size-adjust\:100%; -ms-text-size-adjust\:100%;margin\:0;padding\:0;font-size\:15px;color\:\#444;}\r\nspan,p,a{font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:15px;line-height\:24px;color\:\#444;}\r\n.bodyBlock{-webkit-font-smoothing\:antialiased;width\:100% \!important;background-color\:\#fff;background-image\:none;background-repeat\:repeat;background-position\:top left;background-attachment\:scroll;-webkit-text-size-adjust\:none;}\r\n.textIndent{text-indent\:2em;}\r\n.infoBox{text-align\:left; margin-left\:23%;}\r\n.importInfo{ font-size\:20px;color\:\#ff9900;}\r\n.importInfo *{font-size\:20px;color\:\#ff9900;text-decoration\: none;}\r\n.importInfo2{font-size\:20px;color\:\#018ed9;}\r\n.importInfo2 *{font-size\:20px;color\:\#018ed9;}\r\n.contentBody{position\:relative;background\:rgba(216, 234, 236, 0.6);width\:100%; padding\:14px 6px;margin\:40px 0 0 -6px;}\r\n.contentBody em{position\: absolute; width\: 0px;height\: 0px;bottom\: -5px;}\r\n.contentBody em.rightEm{right\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent; border-left\: 6px solid \#acb4b8;border-right\: 0px solid transparent;}\r\n.contentBody em.leftEm{left\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent;border-right\: 6px solid \#acb4b8;border-left\: 0px solid transparent;}\r\n\r\n.full_width{float\:right;position\: absolute;top\: 30%;right\: 20px;}\r\n.mainContent{padding\:10px 20px;float\:left;max-width\:480px;}\r\n.mainContent2{padding\:10px 26px;}\r\n.buttonGo{color\:\#399A9B;background-color\:\#308F9B;text-align\:center;color\:\#fff; \r\n    padding\: 6px 40px;\r\n    font-size\:15px;line-height\:24px;\r\n    text-decoration\: none;\r\n    text-transform\: uppercase;\r\n    border-radius\:4px;\r\n    -moz-border-radius\:4px;\r\n    -webkit-border-radius\:4px;\r\n    font-family\: Microsoft Yahei, Calibri, 'Segoe UI', Arial, sans-serif;}\r\n.afterEnter{margin\:10px 4px 0 4px;padding\:10px 18px;width\:42%;font-size\: 13px;float\:left;min-height\:130px;}\r\n.afterEnter h4{margin\:6px 0;}\r\n.afterEnter a{font-size\:13px; padding\:0 4px;}\r\n@media only screen and (max-width\: 600px) {\r\n\tdiv[class\='contentBody']{\r\n\t\ttext-align\:center\!important;}\r\n  \r\n\tdiv[class\='content_wrap'] {\r\n\t  width\: 94%\!important;\r\n\t}\r\n\t\r\n\tdiv[class\='full_width'] {\r\n\t  width\: 100%\!important;\r\n\t  float\:none;\r\n\t  position\:inherit;\r\n\t  right\:0;\r\n\t}\r\n\tdiv[class\='mainContent']{\r\n\t\twidth\: 90%\!important;\r\n\t\tfloat\:none;\r\n    margin\:auto;\r\n  }\r\n  div[class\='contentMain']{\r\n    width\:100%\!important;\r\n   text-align\:left\!important; \r\n  }\r\n\t\r\n\tdiv[class\='text-center'] {\r\n\t  text-align\: center;\r\n\t}\r\n\t\r\n\ta[class\='buttonGo'] {\r\n     border-radius\:2px;\r\n    -moz-border-radius\:2px;\r\n    -webkitborder-radius\:2px;\r\n\t  background-color\:\#308F9B;\r\n\t  color\:\#fff\!important;\r\n\t  padding\: 5px 0;\r\n\t  width\:100%;\r\n\t  display\:block;\r\n\t  margin\:0 auto 10px;\r\n\t}\r\n\tdiv[class\='afterEnter']{\r\n\t\tfloat\:none;\r\n\t\twidth\: 90%\!important;\r\n\t\t    min-height\: auto;\r\n\t}\r\n\tp[class\='infoBox']{\r\n\t\ttext-align\:left;\r\n\t\tmargin-left\:10%;}\r\n}\r\n</style>\r\n</head>\r\n\r\n<body class\='bodyBlock'>\r\n    <\!--Content wrapper-->\r\n    <div style\='width\:640px;margin\:auto;background\:\#F7F7F7;' class\='content_wrap'>\r\n\r\n           <\!--Logo-->\r\n          <div style\='background\:\#fff;width\:100%;' class\='text-center'>\r\n            <a href\='\#'>\r\n              <img src\='http\://www.ekexiu.com/images/logo4.png' width\='120' height\='80' alt\='logo' border\='0'  style\='margin\:20px auto' />\r\n            </a>\r\n          </div>\r\n          <\!--Content 2-->\r\n            <div class\='contentBody'>\r\n                  <\!--image-->\r\n                  <div class\='full_width'>\r\n                      <div style\='text-align\:center;padding\:10px;' class\='text-center'> \r\n                         <img src\='http\://www.ekexiu.com/images/icon_2.png' border\='0' alt\='' width\='100' height\='100' />\r\n                      </div>\r\n                  </div>\r\n                  <\!--content-->\r\n                  <div class\='mainContent'>\r\n                        <h3 class\='mainTit'>\u300C\u79D1\u8896\u7F51\u300D\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</h3>\r\n                        <div class\='contentMain'>\r\n                          <p>appellationKey</p>\r\n                              <p class\='textIndent'>contentKey</p>\r\n                              <p class\='textIndent'>\u901A\u8FC7\u5BF9\u60A8\u7684\u8BA4\u771F\u4E86\u89E3\uFF0C\u6211\u4EEC\u8BDA\u631A\u7684\u9080\u8BF7\u60A8\u6210\u4E3A\u9996\u6279\u79D1\u7814\u4E13\u5BB6\u7528\u6237\u3002</p>\r\n                              <div class\='textIndent'>\u6211\u4EEC\u4E3A\u60A8\u5EFA\u7ACB\u7684\u8D26\u53F7\u662F\uFF1A \r\n                                  phoneKey\r\n                                  <p class\='infoBox'><span class\='importInfo'><a href\=''>mailKey</a></span></p>\r\n\r\n                              </div>\r\n                              <p class\='textIndent'>\u60A8\u7684\u9080\u8BF7\u7801\u662F\uFF1A <span class\='importInfo importInfo2' >invitCodeKey</span></p>\r\n                        </div>\r\n                   </div> \r\n                   <div style\='clear\:both;padding\:6px 20px;'>\r\n                      <p style\=' margin\:4px 4px 20px 4px; text-align\:center; width\: 100%;'> <a href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank' class\='buttonGo' style\='text-decoration\: none;' >\u63A5\u53D7\u9080\u8BF7\u5E76\u767B\u5F55</a></p>\r\n                      <div class\='afterEnter' style\='background\: \#FFFDEB;'>\r\n                      \t\t<h4>\u5B8C\u5584\u4E13\u5C5E\u4E3B\u9875</h4>\r\n                      \t\t<span style\='font-size\:12px;color\:\#666;'>\u767B\u5F55\u540E\uFF0C\u5728\u4E2A\u4EBA\u5934\u50CF\u5904\u70B9\u51FB\u3010\u4FEE\u6539\u8D44\u6599\u3011\uFF0C\u586B\u5199\u4E2A\u4EBA\u7B80\u5386\uFF1B</span><br/>\r\n                            <span style\='font-size\:12px;color\:\#666;'>\u5728'\u6211\u7684\u5DE5\u4F5C\u53F0'\u7684\u3010\u7814\u53D1\u8D44\u6E90\u3011\u680F\u76EE\u4E2D\uFF0C\u6DFB\u52A0\u8D44\u6E90\u4FE1\u606F\u3002</span>\r\n                      </div>\r\n                      <div class\='afterEnter' style\='background\:\#FFFFFF;'>\r\n                      \t <h4>\u6CA1\u65F6\u95F4\u767B\u5F55\uFF0C\u8BF7\u5BA2\u670D\u5E2E\u5FD9</h4>\r\n                         <p style\='font-size\:12px;color\:\#666;'>\u4E0B\u8F7D <a href\='http\://www.ekexiu.com/attachment/kexiu_resume.docx'> \u79D1\u8896\u7279\u9080\u4E13\u5BB6\u7B80\u5386 </a> \u548C <a href\='http\://www.ekexiu.com/attachment/kexiu_resources.docx'> \u7814\u53D1\u8D44\u6E90\u4FE1\u606F\u8868 </a> \uFF0C\u586B\u5199\u540E\u56DE\u590D\u81F3\u672C\u90AE\u4EF6\uFF0C\u7531\u5BA2\u670D\u4E13\u5458\u5E2E\u60A8\u5F55\u5165\u4FE1\u606F\u3002</p>\r\n                      </div>\r\n                      <div style\='clear\:both;'></div>\r\n                   </div>\r\n                   <em class\='rightEm'></em>   \r\n                   <em class\='leftEm'></em>    \r\n            </div>\r\n          <\!--end Content 2-->\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n              <div class\='mainContent2'>\r\n                  <h3>\u767B\u5F55\u56FE\u793A</h3>\r\n                  <p style\='font-size\:13px;'>\u70B9\u51FB\u3010\u7279\u9080\u4E13\u5BB6\u767B\u5F55\u3011\u540E\uFF0C\u8F93\u5165\u60A8\u7684\u8D26\u53F7\u4E0E\u9080\u8BF7\u7801\u5373\u53EF\u767B\u5F55\u3002</p>\r\n                  <a style\='display\:block;' href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank'>\r\n                     <img src\='http\://www.ekexiu.com/images/pointImg.jpg' width\='100%'>\r\n                  </a>\r\n              </div> \r\n              <em class\='rightEm'></em>   \r\n              <em class\='leftEm'></em>\r\n          </div>\r\n\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n               <div class\='mainContent2' style\='text-align\:left;'>\r\n                  <h3>\u300C\u79D1\u8896\u300D\u662F\u4EC0\u4E48\uFF1F</h3>\r\n                  <p class\='textIndent'>\u300C\u79D1\u8896\u300D\u662F\u4E00\u5EA7\u5546\u4E1A\u4E0E\u79D1\u7814\u7684\u6865\u6881\uFF0C\u662F\u4E00\u4E2A\u81F4\u529B\u4E8E\u6574\u5408\u884C\u4E1A\u5185\u4F18\u79C0\u7684\u79D1\u7814\u4E13\u5BB6\u4E0E\u7814\u53D1\u8D44\u6E90\u7684\u5171\u4EAB\u7ECF\u6D4E\u5E73\u53F0\u3002\u901A\u8FC7\u63D0\u4F9B\u4E92\u8054\u7F51\u670D\u52A1\uFF0C\u5E2E\u52A9\u4F01\u4E1A\u5BFB\u627E\u653B\u514B\u7814\u53D1\u96BE\u9898\u7684\u4E13\u5BB6\uFF0C\u4F7F\u4F01\u4E1A\u62E5\u6709\u81EA\u5DF1\u7684\u4E13\u5BB6\u987E\u95EE\u3001\u79D1\u7814\u56E2\u961F\u3001\u865A\u62DF\u7814\u7A76\u9662\uFF0C\u4ECE\u800C\u63D0\u9AD8\u4F01\u4E1A\u7684\u7814\u53D1\u4E0E\u521B\u65B0\u80FD\u529B\uFF1B\u5E2E\u52A9\u4E13\u5BB6\u5B9E\u73B0\u7814\u7A76\u6210\u679C\u7684\u5E94\u7528\uFF0C\u4F7F\u79D1\u7814\u4EF7\u503C\u8F6C\u5316\u4E3A\u7ECF\u6D4E\u4EF7\u503C\uFF1B\u4F7F\u95F2\u7F6E\u7684\u7814\u53D1\u8D44\u6E90\u5F97\u5230\u5145\u5206\u5229\u7528\uFF0C\u51CF\u5C11\u8D44\u6E90\u6D6A\u8D39\uFF0C\u521B\u9020\u66F4\u591A\u4EF7\u503C\u3002</p>    \r\n                </div>\r\n                <em class\='rightEm'></em>   \r\n                <em class\='leftEm'></em>\r\n          </div>\r\n          \r\n          \r\n          <\!--Footer-->\r\n           <div style\='padding\:20px;margin\:10px 0;font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:12px;line-height\:17px;color\:\#555;background\:\#ECF0F5;'>\r\n              <div>&copy; 2016 \u5317\u4EAC\u79D1\u8896\u79D1\u6280\u6709\u9650\u516C\u53F8 &nbsp; | &nbsp; \u4EACICP\u590716042588\u53F7-1 &nbsp; | &nbsp;\r\n                <a class\='beianbox' style\='color\:\#399A9B;font-size\:12px;' target\='_black' rel\='nofollow' href\='http\://www.beian.gov.cn/portal/registerSystemInfo?recordcode\=11010802022306'><span class\='beian-icon'></span> \u4EAC\u516C\u7F51\u5B89\u590711010802022306\u53F7</a></div>\r\n              <div>\u610F\u89C1\u5EFA\u8BAE\uFF1A<a href\='mailto\:service@ekexiu.com' style\='color\:\#399A9B;' rel\='nofollow'>service@ekexiu.com</a>&nbsp;&nbsp;&nbsp; \u5BA2\u670D\u7535\u8BDD\uFF1A 010-62343359\uFF089\:00-17\:00\uFF09</div>\r\n              \r\n           </div>\r\n            <\!--End Footer-->\r\n     </div>         \r\n    <\!--end Content wrapper-->\r\n     \r\n</body>\r\n</html>
46
com_ekexiu_console_system_mail_MailService.port::int=25
47
com_ekexiu_console_system_mail_MailService.from=service@service.ekexiu.com
48
com_ekexiu_console_system_mail_MailService.nick=\u79D1\u8896\u5BA2\u670D
49
com_ekexiu_console_system_mail_MailService.mailHost=smtpdm.aliyun.com
50
com_ekexiu_console_system_mail_MailService.username=service@service.ekexiu.com
51
com_ekexiu_console_system_mail_MailService.password=lycrystal12EkexiuA
52
com_ekexiu_console_system_mail_MailService.sessionProperties-ref=mailService_Map
53
mailService_Map::map=java.util.HashMap
54
mailService_Map.map-key-0::java.lang.String=mail.host
55
mailService_Map.map-val-0::java.lang.String=smtp.mxhichina.com
56
mailService_Map.map-key-1::java.lang.String=mail.transport.protocol
57
mailService_Map.map-val-1::java.lang.String=smtp
58
mailService_Map.map-key-2::java.lang.String=mail.smtp.auth
59
mailService_Map.map-val-2::java.lang.String=true

+ 26 - 0
src/main/resources/project-test-dev.properties

@ -29,3 +29,29 @@ dataSource.poolPreparedStatements::boolean=true
29 29
dataSource.maxPoolPreparedStatementPerConnectionSize::int=20
30 30
#默认的SQL语句自动提交状态(开启或关闭)设置由连接池本身设置(false由连接池定)
31 31
dataSource.defaultAutoCommit::boolean=false
32
33
34
com_ekexiu_console_system_service_EmailService.phoneContentTemplate=<p class\='infoBox'><span class\='importInfo'>mobileCode</span><span style\='margin-left\:20px;'> \u6216\u8005</span></p>
35
com_ekexiu_console_system_service_EmailService.inviteMailSubject=[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD
36
com_ekexiu_console_system_service_EmailService.phoneReplaceKey=mobileCode
37
com_ekexiu_console_system_service_EmailService.inviteReplacePhone=phoneKey
38
com_ekexiu_console_system_service_EmailService.inviteReplaceEmail=mailKey
39
com_ekexiu_console_system_service_EmailService.content=contentKey
40
com_ekexiu_console_system_service_EmailService.appellation=appellationKey
41
com_ekexiu_console_system_service_EmailService.inviteReplaceCode=invitCodeKey
42
#特邀专家发送邀请邮件
43
com_ekexiu_console_system_service_EmailService.inviteMailContentTempalte=<html lang\="en">\r\n<head>\r\n<meta name\="viewport" content\="width\=device-width, initial-scale\=1" />\r\n<meta http-equiv\="Content-Type" content\="text/html; charset\=utf-8">\r\n<title>[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</title>\r\n<style>\r\nbody {width\:100%\!important;font-family\: Microsoft Yahei, Arial, sans-serif; -webkit-text-size-adjust\:100%; -ms-text-size-adjust\:100%;margin\:0;padding\:0;font-size\:15px;color\:\#444;}\r\nspan,p,a{font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:15px;line-height\:24px;color\:\#444;}\r\n.bodyBlock{-webkit-font-smoothing\:antialiased;width\:100% \!important;background-color\:\#fff;background-image\:none;background-repeat\:repeat;background-position\:top left;background-attachment\:scroll;-webkit-text-size-adjust\:none;}\r\n.textIndent{text-indent\:2em;}\r\n.infoBox{text-align\:left; margin-left\:23%;}\r\n.importInfo{ font-size\:20px;color\:\#ff9900;}\r\n.importInfo *{font-size\:20px;color\:\#ff9900;text-decoration\: none;}\r\n.importInfo2{font-size\:20px;color\:\#018ed9;}\r\n.importInfo2 *{font-size\:20px;color\:\#018ed9;}\r\n.contentBody{position\:relative;background\:rgba(216, 234, 236, 0.6);width\:100%; padding\:14px 6px;margin\:40px 0 0 -6px;}\r\n.contentBody em{position\: absolute; width\: 0px;height\: 0px;bottom\: -5px;}\r\n.contentBody em.rightEm{right\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent; border-left\: 6px solid \#acb4b8;border-right\: 0px solid transparent;}\r\n.contentBody em.leftEm{left\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent;border-right\: 6px solid \#acb4b8;border-left\: 0px solid transparent;}\r\n\r\n.full_width{float\:right;position\: absolute;top\: 30%;right\: 20px;}\r\n.mainContent{padding\:10px 20px;float\:left;max-width\:480px;}\r\n.mainContent2{padding\:10px 26px;}\r\n.buttonGo{color\:\#399A9B;background-color\:\#308F9B;text-align\:center;color\:\#fff; \r\n    padding\: 6px 40px;\r\n    font-size\:15px;line-height\:24px;\r\n    text-decoration\: none;\r\n    text-transform\: uppercase;\r\n    border-radius\:4px;\r\n    -moz-border-radius\:4px;\r\n    -webkit-border-radius\:4px;\r\n    font-family\: Microsoft Yahei, Calibri, 'Segoe UI', Arial, sans-serif;}\r\n.afterEnter{margin\:10px 4px 0 4px;padding\:10px 18px;width\:42%;font-size\: 13px;float\:left;min-height\:130px;}\r\n.afterEnter h4{margin\:6px 0;}\r\n.afterEnter a{font-size\:13px; padding\:0 4px;}\r\n@media only screen and (max-width\: 600px) {\r\n\tdiv[class\='contentBody']{\r\n\t\ttext-align\:center\!important;}\r\n  \r\n\tdiv[class\='content_wrap'] {\r\n\t  width\: 94%\!important;\r\n\t}\r\n\t\r\n\tdiv[class\='full_width'] {\r\n\t  width\: 100%\!important;\r\n\t  float\:none;\r\n\t  position\:inherit;\r\n\t  right\:0;\r\n\t}\r\n\tdiv[class\='mainContent']{\r\n\t\twidth\: 90%\!important;\r\n\t\tfloat\:none;\r\n    margin\:auto;\r\n  }\r\n  div[class\='contentMain']{\r\n    width\:100%\!important;\r\n   text-align\:left\!important; \r\n  }\r\n\t\r\n\tdiv[class\='text-center'] {\r\n\t  text-align\: center;\r\n\t}\r\n\t\r\n\ta[class\='buttonGo'] {\r\n     border-radius\:2px;\r\n    -moz-border-radius\:2px;\r\n    -webkitborder-radius\:2px;\r\n\t  background-color\:\#308F9B;\r\n\t  color\:\#fff\!important;\r\n\t  padding\: 5px 0;\r\n\t  width\:100%;\r\n\t  display\:block;\r\n\t  margin\:0 auto 10px;\r\n\t}\r\n\tdiv[class\='afterEnter']{\r\n\t\tfloat\:none;\r\n\t\twidth\: 90%\!important;\r\n\t\t    min-height\: auto;\r\n\t}\r\n\tp[class\='infoBox']{\r\n\t\ttext-align\:left;\r\n\t\tmargin-left\:10%;}\r\n}\r\n</style>\r\n</head>\r\n\r\n<body class\='bodyBlock'>\r\n    <\!--Content wrapper-->\r\n    <div style\='width\:640px;margin\:auto;background\:\#F7F7F7;' class\='content_wrap'>\r\n\r\n           <\!--Logo-->\r\n          <div style\='background\:\#fff;width\:100%;' class\='text-center'>\r\n            <a href\='\#'>\r\n              <img src\='http\://www.ekexiu.com/images/logo4.png' width\='120' height\='80' alt\='logo' border\='0'  style\='margin\:20px auto' />\r\n            </a>\r\n          </div>\r\n          <\!--Content 2-->\r\n            <div class\='contentBody'>\r\n                  <\!--image-->\r\n                  <div class\='full_width'>\r\n                      <div style\='text-align\:center;padding\:10px;' class\='text-center'> \r\n                         <img src\='http\://www.ekexiu.com/images/icon_2.png' border\='0' alt\='' width\='100' height\='100' />\r\n                      </div>\r\n                  </div>\r\n                  <\!--content-->\r\n                  <div class\='mainContent'>\r\n                        <h3 class\='mainTit'>\u300C\u79D1\u8896\u7F51\u300D\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</h3>\r\n                        <div class\='contentMain'>\r\n                          <p>appellationKey</p>\r\n                              <p class\='textIndent'>contentKey</p>\r\n                              <p class\='textIndent'>\u901A\u8FC7\u5BF9\u60A8\u7684\u8BA4\u771F\u4E86\u89E3\uFF0C\u6211\u4EEC\u8BDA\u631A\u7684\u9080\u8BF7\u60A8\u6210\u4E3A\u9996\u6279\u79D1\u7814\u4E13\u5BB6\u7528\u6237\u3002</p>\r\n                              <div class\='textIndent'>\u6211\u4EEC\u4E3A\u60A8\u5EFA\u7ACB\u7684\u8D26\u53F7\u662F\uFF1A \r\n                                  phoneKey\r\n                                  <p class\='infoBox'><span class\='importInfo'><a href\=''>mailKey</a></span></p>\r\n\r\n                              </div>\r\n                              <p class\='textIndent'>\u60A8\u7684\u9080\u8BF7\u7801\u662F\uFF1A <span class\='importInfo importInfo2' >invitCodeKey</span></p>\r\n                        </div>\r\n                   </div> \r\n                   <div style\='clear\:both;padding\:6px 20px;'>\r\n                      <p style\=' margin\:4px 4px 20px 4px; text-align\:center; width\: 100%;'> <a href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank' class\='buttonGo' style\='text-decoration\: none;' >\u63A5\u53D7\u9080\u8BF7\u5E76\u767B\u5F55</a></p>\r\n                      <div class\='afterEnter' style\='background\: \#FFFDEB;'>\r\n                      \t\t<h4>\u5B8C\u5584\u4E13\u5C5E\u4E3B\u9875</h4>\r\n                      \t\t<span style\='font-size\:12px;color\:\#666;'>\u767B\u5F55\u540E\uFF0C\u5728\u4E2A\u4EBA\u5934\u50CF\u5904\u70B9\u51FB\u3010\u4FEE\u6539\u8D44\u6599\u3011\uFF0C\u586B\u5199\u4E2A\u4EBA\u7B80\u5386\uFF1B</span><br/>\r\n                            <span style\='font-size\:12px;color\:\#666;'>\u5728'\u6211\u7684\u5DE5\u4F5C\u53F0'\u7684\u3010\u7814\u53D1\u8D44\u6E90\u3011\u680F\u76EE\u4E2D\uFF0C\u6DFB\u52A0\u8D44\u6E90\u4FE1\u606F\u3002</span>\r\n                      </div>\r\n                      <div class\='afterEnter' style\='background\:\#FFFFFF;'>\r\n                      \t <h4>\u6CA1\u65F6\u95F4\u767B\u5F55\uFF0C\u8BF7\u5BA2\u670D\u5E2E\u5FD9</h4>\r\n                         <p style\='font-size\:12px;color\:\#666;'>\u4E0B\u8F7D <a href\='http\://www.ekexiu.com/attachment/kexiu_resume.docx'> \u79D1\u8896\u7279\u9080\u4E13\u5BB6\u7B80\u5386 </a> \u548C <a href\='http\://www.ekexiu.com/attachment/kexiu_resources.docx'> \u7814\u53D1\u8D44\u6E90\u4FE1\u606F\u8868 </a> \uFF0C\u586B\u5199\u540E\u56DE\u590D\u81F3\u672C\u90AE\u4EF6\uFF0C\u7531\u5BA2\u670D\u4E13\u5458\u5E2E\u60A8\u5F55\u5165\u4FE1\u606F\u3002</p>\r\n                      </div>\r\n                      <div style\='clear\:both;'></div>\r\n                   </div>\r\n                   <em class\='rightEm'></em>   \r\n                   <em class\='leftEm'></em>    \r\n            </div>\r\n          <\!--end Content 2-->\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n              <div class\='mainContent2'>\r\n                  <h3>\u767B\u5F55\u56FE\u793A</h3>\r\n                  <p style\='font-size\:13px;'>\u70B9\u51FB\u3010\u7279\u9080\u4E13\u5BB6\u767B\u5F55\u3011\u540E\uFF0C\u8F93\u5165\u60A8\u7684\u8D26\u53F7\u4E0E\u9080\u8BF7\u7801\u5373\u53EF\u767B\u5F55\u3002</p>\r\n                  <a style\='display\:block;' href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank'>\r\n                     <img src\='http\://www.ekexiu.com/images/pointImg.jpg' width\='100%'>\r\n                  </a>\r\n              </div> \r\n              <em class\='rightEm'></em>   \r\n              <em class\='leftEm'></em>\r\n          </div>\r\n\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n               <div class\='mainContent2' style\='text-align\:left;'>\r\n                  <h3>\u300C\u79D1\u8896\u300D\u662F\u4EC0\u4E48\uFF1F</h3>\r\n                  <p class\='textIndent'>\u300C\u79D1\u8896\u300D\u662F\u4E00\u5EA7\u5546\u4E1A\u4E0E\u79D1\u7814\u7684\u6865\u6881\uFF0C\u662F\u4E00\u4E2A\u81F4\u529B\u4E8E\u6574\u5408\u884C\u4E1A\u5185\u4F18\u79C0\u7684\u79D1\u7814\u4E13\u5BB6\u4E0E\u7814\u53D1\u8D44\u6E90\u7684\u5171\u4EAB\u7ECF\u6D4E\u5E73\u53F0\u3002\u901A\u8FC7\u63D0\u4F9B\u4E92\u8054\u7F51\u670D\u52A1\uFF0C\u5E2E\u52A9\u4F01\u4E1A\u5BFB\u627E\u653B\u514B\u7814\u53D1\u96BE\u9898\u7684\u4E13\u5BB6\uFF0C\u4F7F\u4F01\u4E1A\u62E5\u6709\u81EA\u5DF1\u7684\u4E13\u5BB6\u987E\u95EE\u3001\u79D1\u7814\u56E2\u961F\u3001\u865A\u62DF\u7814\u7A76\u9662\uFF0C\u4ECE\u800C\u63D0\u9AD8\u4F01\u4E1A\u7684\u7814\u53D1\u4E0E\u521B\u65B0\u80FD\u529B\uFF1B\u5E2E\u52A9\u4E13\u5BB6\u5B9E\u73B0\u7814\u7A76\u6210\u679C\u7684\u5E94\u7528\uFF0C\u4F7F\u79D1\u7814\u4EF7\u503C\u8F6C\u5316\u4E3A\u7ECF\u6D4E\u4EF7\u503C\uFF1B\u4F7F\u95F2\u7F6E\u7684\u7814\u53D1\u8D44\u6E90\u5F97\u5230\u5145\u5206\u5229\u7528\uFF0C\u51CF\u5C11\u8D44\u6E90\u6D6A\u8D39\uFF0C\u521B\u9020\u66F4\u591A\u4EF7\u503C\u3002</p>    \r\n                </div>\r\n                <em class\='rightEm'></em>   \r\n                <em class\='leftEm'></em>\r\n          </div>\r\n          \r\n          \r\n          <\!--Footer-->\r\n           <div style\='padding\:20px;margin\:10px 0;font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:12px;line-height\:17px;color\:\#555;background\:\#ECF0F5;'>\r\n              <div>&copy; 2016 \u5317\u4EAC\u79D1\u8896\u79D1\u6280\u6709\u9650\u516C\u53F8 &nbsp; | &nbsp; \u4EACICP\u590716042588\u53F7-1 &nbsp; | &nbsp;\r\n                <a class\='beianbox' style\='color\:\#399A9B;font-size\:12px;' target\='_black' rel\='nofollow' href\='http\://www.beian.gov.cn/portal/registerSystemInfo?recordcode\=11010802022306'><span class\='beian-icon'></span> \u4EAC\u516C\u7F51\u5B89\u590711010802022306\u53F7</a></div>\r\n              <div>\u610F\u89C1\u5EFA\u8BAE\uFF1A<a href\='mailto\:service@ekexiu.com' style\='color\:\#399A9B;' rel\='nofollow'>service@ekexiu.com</a>&nbsp;&nbsp;&nbsp; \u5BA2\u670D\u7535\u8BDD\uFF1A 010-62343359\uFF089\:00-17\:00\uFF09</div>\r\n              \r\n           </div>\r\n            <\!--End Footer-->\r\n     </div>         \r\n    <\!--end Content wrapper-->\r\n     \r\n</body>\r\n</html>
44
com_ekexiu_console_system_mail_MailService.port::int=25
45
com_ekexiu_console_system_mail_MailService.from=service@service.ekexiu.com
46
com_ekexiu_console_system_mail_MailService.nick=\u79D1\u8896\u5BA2\u670D
47
com_ekexiu_console_system_mail_MailService.mailHost=smtpdm.aliyun.com
48
com_ekexiu_console_system_mail_MailService.username=service@service.ekexiu.com
49
com_ekexiu_console_system_mail_MailService.password=lycrystal12EkexiuA
50
com_ekexiu_console_system_mail_MailService.sessionProperties-ref=mailService_Map
51
mailService_Map::map=java.util.HashMap
52
mailService_Map.map-key-0::java.lang.String=mail.host
53
mailService_Map.map-val-0::java.lang.String=smtp.mxhichina.com
54
mailService_Map.map-key-1::java.lang.String=mail.transport.protocol
55
mailService_Map.map-val-1::java.lang.String=smtp
56
mailService_Map.map-key-2::java.lang.String=mail.smtp.auth
57
mailService_Map.map-val-2::java.lang.String=true

+ 27 - 1
src/main/resources/project-test.properties

@ -28,4 +28,30 @@ dataSource.poolPreparedStatements::boolean=true
28 28
#statement池能够同时分配的打开的statements的最大数量
29 29
dataSource.maxPoolPreparedStatementPerConnectionSize::int=20
30 30
#默认的SQL语句自动提交状态(开启或关闭)设置由连接池本身设置(false由连接池定)
31
dataSource.defaultAutoCommit::boolean=false
31
dataSource.defaultAutoCommit::boolean=false
32
33
34
com_ekexiu_console_system_service_EmailService.phoneContentTemplate=<p class\='infoBox'><span class\='importInfo'>mobileCode</span><span style\='margin-left\:20px;'> \u6216\u8005</span></p>
35
com_ekexiu_console_system_service_EmailService.inviteMailSubject=[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD
36
com_ekexiu_console_system_service_EmailService.phoneReplaceKey=mobileCode
37
com_ekexiu_console_system_service_EmailService.inviteReplacePhone=phoneKey
38
com_ekexiu_console_system_service_EmailService.inviteReplaceEmail=mailKey
39
com_ekexiu_console_system_service_EmailService.content=contentKey
40
com_ekexiu_console_system_service_EmailService.appellation=appellationKey
41
com_ekexiu_console_system_service_EmailService.inviteReplaceCode=invitCodeKey
42
#特邀专家发送邀请邮件
43
com_ekexiu_console_system_service_EmailService.inviteMailContentTempalte=<html lang\="en">\r\n<head>\r\n<meta name\="viewport" content\="width\=device-width, initial-scale\=1" />\r\n<meta http-equiv\="Content-Type" content\="text/html; charset\=utf-8">\r\n<title>[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</title>\r\n<style>\r\nbody {width\:100%\!important;font-family\: Microsoft Yahei, Arial, sans-serif; -webkit-text-size-adjust\:100%; -ms-text-size-adjust\:100%;margin\:0;padding\:0;font-size\:15px;color\:\#444;}\r\nspan,p,a{font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:15px;line-height\:24px;color\:\#444;}\r\n.bodyBlock{-webkit-font-smoothing\:antialiased;width\:100% \!important;background-color\:\#fff;background-image\:none;background-repeat\:repeat;background-position\:top left;background-attachment\:scroll;-webkit-text-size-adjust\:none;}\r\n.textIndent{text-indent\:2em;}\r\n.infoBox{text-align\:left; margin-left\:23%;}\r\n.importInfo{ font-size\:20px;color\:\#ff9900;}\r\n.importInfo *{font-size\:20px;color\:\#ff9900;text-decoration\: none;}\r\n.importInfo2{font-size\:20px;color\:\#018ed9;}\r\n.importInfo2 *{font-size\:20px;color\:\#018ed9;}\r\n.contentBody{position\:relative;background\:rgba(216, 234, 236, 0.6);width\:100%; padding\:14px 6px;margin\:40px 0 0 -6px;}\r\n.contentBody em{position\: absolute; width\: 0px;height\: 0px;bottom\: -5px;}\r\n.contentBody em.rightEm{right\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent; border-left\: 6px solid \#acb4b8;border-right\: 0px solid transparent;}\r\n.contentBody em.leftEm{left\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent;border-right\: 6px solid \#acb4b8;border-left\: 0px solid transparent;}\r\n\r\n.full_width{float\:right;position\: absolute;top\: 30%;right\: 20px;}\r\n.mainContent{padding\:10px 20px;float\:left;max-width\:480px;}\r\n.mainContent2{padding\:10px 26px;}\r\n.buttonGo{color\:\#399A9B;background-color\:\#308F9B;text-align\:center;color\:\#fff; \r\n    padding\: 6px 40px;\r\n    font-size\:15px;line-height\:24px;\r\n    text-decoration\: none;\r\n    text-transform\: uppercase;\r\n    border-radius\:4px;\r\n    -moz-border-radius\:4px;\r\n    -webkit-border-radius\:4px;\r\n    font-family\: Microsoft Yahei, Calibri, 'Segoe UI', Arial, sans-serif;}\r\n.afterEnter{margin\:10px 4px 0 4px;padding\:10px 18px;width\:42%;font-size\: 13px;float\:left;min-height\:130px;}\r\n.afterEnter h4{margin\:6px 0;}\r\n.afterEnter a{font-size\:13px; padding\:0 4px;}\r\n@media only screen and (max-width\: 600px) {\r\n\tdiv[class\='contentBody']{\r\n\t\ttext-align\:center\!important;}\r\n  \r\n\tdiv[class\='content_wrap'] {\r\n\t  width\: 94%\!important;\r\n\t}\r\n\t\r\n\tdiv[class\='full_width'] {\r\n\t  width\: 100%\!important;\r\n\t  float\:none;\r\n\t  position\:inherit;\r\n\t  right\:0;\r\n\t}\r\n\tdiv[class\='mainContent']{\r\n\t\twidth\: 90%\!important;\r\n\t\tfloat\:none;\r\n    margin\:auto;\r\n  }\r\n  div[class\='contentMain']{\r\n    width\:100%\!important;\r\n   text-align\:left\!important; \r\n  }\r\n\t\r\n\tdiv[class\='text-center'] {\r\n\t  text-align\: center;\r\n\t}\r\n\t\r\n\ta[class\='buttonGo'] {\r\n     border-radius\:2px;\r\n    -moz-border-radius\:2px;\r\n    -webkitborder-radius\:2px;\r\n\t  background-color\:\#308F9B;\r\n\t  color\:\#fff\!important;\r\n\t  padding\: 5px 0;\r\n\t  width\:100%;\r\n\t  display\:block;\r\n\t  margin\:0 auto 10px;\r\n\t}\r\n\tdiv[class\='afterEnter']{\r\n\t\tfloat\:none;\r\n\t\twidth\: 90%\!important;\r\n\t\t    min-height\: auto;\r\n\t}\r\n\tp[class\='infoBox']{\r\n\t\ttext-align\:left;\r\n\t\tmargin-left\:10%;}\r\n}\r\n</style>\r\n</head>\r\n\r\n<body class\='bodyBlock'>\r\n    <\!--Content wrapper-->\r\n    <div style\='width\:640px;margin\:auto;background\:\#F7F7F7;' class\='content_wrap'>\r\n\r\n           <\!--Logo-->\r\n          <div style\='background\:\#fff;width\:100%;' class\='text-center'>\r\n            <a href\='\#'>\r\n              <img src\='http\://www.ekexiu.com/images/logo4.png' width\='120' height\='80' alt\='logo' border\='0'  style\='margin\:20px auto' />\r\n            </a>\r\n          </div>\r\n          <\!--Content 2-->\r\n            <div class\='contentBody'>\r\n                  <\!--image-->\r\n                  <div class\='full_width'>\r\n                      <div style\='text-align\:center;padding\:10px;' class\='text-center'> \r\n                         <img src\='http\://www.ekexiu.com/images/icon_2.png' border\='0' alt\='' width\='100' height\='100' />\r\n                      </div>\r\n                  </div>\r\n                  <\!--content-->\r\n                  <div class\='mainContent'>\r\n                        <h3 class\='mainTit'>\u300C\u79D1\u8896\u7F51\u300D\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</h3>\r\n                        <div class\='contentMain'>\r\n                          <p>appellationKey</p>\r\n                              <p class\='textIndent'>contentKey</p>\r\n                              <p class\='textIndent'>\u901A\u8FC7\u5BF9\u60A8\u7684\u8BA4\u771F\u4E86\u89E3\uFF0C\u6211\u4EEC\u8BDA\u631A\u7684\u9080\u8BF7\u60A8\u6210\u4E3A\u9996\u6279\u79D1\u7814\u4E13\u5BB6\u7528\u6237\u3002</p>\r\n                              <div class\='textIndent'>\u6211\u4EEC\u4E3A\u60A8\u5EFA\u7ACB\u7684\u8D26\u53F7\u662F\uFF1A \r\n                                  phoneKey\r\n                                  <p class\='infoBox'><span class\='importInfo'><a href\=''>mailKey</a></span></p>\r\n\r\n                              </div>\r\n                              <p class\='textIndent'>\u60A8\u7684\u9080\u8BF7\u7801\u662F\uFF1A <span class\='importInfo importInfo2' >invitCodeKey</span></p>\r\n                        </div>\r\n                   </div> \r\n                   <div style\='clear\:both;padding\:6px 20px;'>\r\n                      <p style\=' margin\:4px 4px 20px 4px; text-align\:center; width\: 100%;'> <a href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank' class\='buttonGo' style\='text-decoration\: none;' >\u63A5\u53D7\u9080\u8BF7\u5E76\u767B\u5F55</a></p>\r\n                      <div class\='afterEnter' style\='background\: \#FFFDEB;'>\r\n                      \t\t<h4>\u5B8C\u5584\u4E13\u5C5E\u4E3B\u9875</h4>\r\n                      \t\t<span style\='font-size\:12px;color\:\#666;'>\u767B\u5F55\u540E\uFF0C\u5728\u4E2A\u4EBA\u5934\u50CF\u5904\u70B9\u51FB\u3010\u4FEE\u6539\u8D44\u6599\u3011\uFF0C\u586B\u5199\u4E2A\u4EBA\u7B80\u5386\uFF1B</span><br/>\r\n                            <span style\='font-size\:12px;color\:\#666;'>\u5728'\u6211\u7684\u5DE5\u4F5C\u53F0'\u7684\u3010\u7814\u53D1\u8D44\u6E90\u3011\u680F\u76EE\u4E2D\uFF0C\u6DFB\u52A0\u8D44\u6E90\u4FE1\u606F\u3002</span>\r\n                      </div>\r\n                      <div class\='afterEnter' style\='background\:\#FFFFFF;'>\r\n                      \t <h4>\u6CA1\u65F6\u95F4\u767B\u5F55\uFF0C\u8BF7\u5BA2\u670D\u5E2E\u5FD9</h4>\r\n                         <p style\='font-size\:12px;color\:\#666;'>\u4E0B\u8F7D <a href\='http\://www.ekexiu.com/attachment/kexiu_resume.docx'> \u79D1\u8896\u7279\u9080\u4E13\u5BB6\u7B80\u5386 </a> \u548C <a href\='http\://www.ekexiu.com/attachment/kexiu_resources.docx'> \u7814\u53D1\u8D44\u6E90\u4FE1\u606F\u8868 </a> \uFF0C\u586B\u5199\u540E\u56DE\u590D\u81F3\u672C\u90AE\u4EF6\uFF0C\u7531\u5BA2\u670D\u4E13\u5458\u5E2E\u60A8\u5F55\u5165\u4FE1\u606F\u3002</p>\r\n                      </div>\r\n                      <div style\='clear\:both;'></div>\r\n                   </div>\r\n                   <em class\='rightEm'></em>   \r\n                   <em class\='leftEm'></em>    \r\n            </div>\r\n          <\!--end Content 2-->\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n              <div class\='mainContent2'>\r\n                  <h3>\u767B\u5F55\u56FE\u793A</h3>\r\n                  <p style\='font-size\:13px;'>\u70B9\u51FB\u3010\u7279\u9080\u4E13\u5BB6\u767B\u5F55\u3011\u540E\uFF0C\u8F93\u5165\u60A8\u7684\u8D26\u53F7\u4E0E\u9080\u8BF7\u7801\u5373\u53EF\u767B\u5F55\u3002</p>\r\n                  <a style\='display\:block;' href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank'>\r\n                     <img src\='http\://www.ekexiu.com/images/pointImg.jpg' width\='100%'>\r\n                  </a>\r\n              </div> \r\n              <em class\='rightEm'></em>   \r\n              <em class\='leftEm'></em>\r\n          </div>\r\n\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n               <div class\='mainContent2' style\='text-align\:left;'>\r\n                  <h3>\u300C\u79D1\u8896\u300D\u662F\u4EC0\u4E48\uFF1F</h3>\r\n                  <p class\='textIndent'>\u300C\u79D1\u8896\u300D\u662F\u4E00\u5EA7\u5546\u4E1A\u4E0E\u79D1\u7814\u7684\u6865\u6881\uFF0C\u662F\u4E00\u4E2A\u81F4\u529B\u4E8E\u6574\u5408\u884C\u4E1A\u5185\u4F18\u79C0\u7684\u79D1\u7814\u4E13\u5BB6\u4E0E\u7814\u53D1\u8D44\u6E90\u7684\u5171\u4EAB\u7ECF\u6D4E\u5E73\u53F0\u3002\u901A\u8FC7\u63D0\u4F9B\u4E92\u8054\u7F51\u670D\u52A1\uFF0C\u5E2E\u52A9\u4F01\u4E1A\u5BFB\u627E\u653B\u514B\u7814\u53D1\u96BE\u9898\u7684\u4E13\u5BB6\uFF0C\u4F7F\u4F01\u4E1A\u62E5\u6709\u81EA\u5DF1\u7684\u4E13\u5BB6\u987E\u95EE\u3001\u79D1\u7814\u56E2\u961F\u3001\u865A\u62DF\u7814\u7A76\u9662\uFF0C\u4ECE\u800C\u63D0\u9AD8\u4F01\u4E1A\u7684\u7814\u53D1\u4E0E\u521B\u65B0\u80FD\u529B\uFF1B\u5E2E\u52A9\u4E13\u5BB6\u5B9E\u73B0\u7814\u7A76\u6210\u679C\u7684\u5E94\u7528\uFF0C\u4F7F\u79D1\u7814\u4EF7\u503C\u8F6C\u5316\u4E3A\u7ECF\u6D4E\u4EF7\u503C\uFF1B\u4F7F\u95F2\u7F6E\u7684\u7814\u53D1\u8D44\u6E90\u5F97\u5230\u5145\u5206\u5229\u7528\uFF0C\u51CF\u5C11\u8D44\u6E90\u6D6A\u8D39\uFF0C\u521B\u9020\u66F4\u591A\u4EF7\u503C\u3002</p>    \r\n                </div>\r\n                <em class\='rightEm'></em>   \r\n                <em class\='leftEm'></em>\r\n          </div>\r\n          \r\n          \r\n          <\!--Footer-->\r\n           <div style\='padding\:20px;margin\:10px 0;font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:12px;line-height\:17px;color\:\#555;background\:\#ECF0F5;'>\r\n              <div>&copy; 2016 \u5317\u4EAC\u79D1\u8896\u79D1\u6280\u6709\u9650\u516C\u53F8 &nbsp; | &nbsp; \u4EACICP\u590716042588\u53F7-1 &nbsp; | &nbsp;\r\n                <a class\='beianbox' style\='color\:\#399A9B;font-size\:12px;' target\='_black' rel\='nofollow' href\='http\://www.beian.gov.cn/portal/registerSystemInfo?recordcode\=11010802022306'><span class\='beian-icon'></span> \u4EAC\u516C\u7F51\u5B89\u590711010802022306\u53F7</a></div>\r\n              <div>\u610F\u89C1\u5EFA\u8BAE\uFF1A<a href\='mailto\:service@ekexiu.com' style\='color\:\#399A9B;' rel\='nofollow'>service@ekexiu.com</a>&nbsp;&nbsp;&nbsp; \u5BA2\u670D\u7535\u8BDD\uFF1A 010-62343359\uFF089\:00-17\:00\uFF09</div>\r\n              \r\n           </div>\r\n            <\!--End Footer-->\r\n     </div>         \r\n    <\!--end Content wrapper-->\r\n     \r\n</body>\r\n</html>
44
com_ekexiu_console_system_mail_MailService.port::int=25
45
com_ekexiu_console_system_mail_MailService.from=service@service.ekexiu.com
46
com_ekexiu_console_system_mail_MailService.nick=\u79D1\u8896\u5BA2\u670D
47
com_ekexiu_console_system_mail_MailService.mailHost=smtpdm.aliyun.com
48
com_ekexiu_console_system_mail_MailService.username=service@service.ekexiu.com
49
com_ekexiu_console_system_mail_MailService.password=lycrystal12EkexiuA
50
com_ekexiu_console_system_mail_MailService.sessionProperties-ref=mailService_Map
51
mailService_Map::map=java.util.HashMap
52
mailService_Map.map-key-0::java.lang.String=mail.host
53
mailService_Map.map-val-0::java.lang.String=smtp.mxhichina.com
54
mailService_Map.map-key-1::java.lang.String=mail.transport.protocol
55
mailService_Map.map-val-1::java.lang.String=smtp
56
mailService_Map.map-key-2::java.lang.String=mail.smtp.auth
57
mailService_Map.map-val-2::java.lang.String=true

+ 27 - 1
src/main/resources/project.properties

@ -28,4 +28,30 @@ dataSource.poolPreparedStatements::boolean=true
28 28
#statement池能够同时分配的打开的statements的最大数量
29 29
dataSource.maxPoolPreparedStatementPerConnectionSize::int=20
30 30
#默认的SQL语句自动提交状态(开启或关闭)设置由连接池本身设置(false由连接池定)
31
dataSource.defaultAutoCommit::boolean=false
31
dataSource.defaultAutoCommit::boolean=false
32
33
34
com_ekexiu_console_system_service_EmailService.phoneContentTemplate=<p class\='infoBox'><span class\='importInfo'>mobileCode</span><span style\='margin-left\:20px;'> \u6216\u8005</span></p>
35
com_ekexiu_console_system_service_EmailService.inviteMailSubject=[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD
36
com_ekexiu_console_system_service_EmailService.phoneReplaceKey=mobileCode
37
com_ekexiu_console_system_service_EmailService.inviteReplacePhone=phoneKey
38
com_ekexiu_console_system_service_EmailService.inviteReplaceEmail=mailKey
39
com_ekexiu_console_system_service_EmailService.content=contentKey
40
com_ekexiu_console_system_service_EmailService.appellation=appellationKey
41
com_ekexiu_console_system_service_EmailService.inviteReplaceCode=invitCodeKey
42
#特邀专家发送邀请邮件
43
com_ekexiu_console_system_service_EmailService.inviteMailContentTempalte=<html lang\="en">\r\n<head>\r\n<meta name\="viewport" content\="width\=device-width, initial-scale\=1" />\r\n<meta http-equiv\="Content-Type" content\="text/html; charset\=utf-8">\r\n<title>[ \u79D1\u8896\u7F51 ]\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</title>\r\n<style>\r\nbody {width\:100%\!important;font-family\: Microsoft Yahei, Arial, sans-serif; -webkit-text-size-adjust\:100%; -ms-text-size-adjust\:100%;margin\:0;padding\:0;font-size\:15px;color\:\#444;}\r\nspan,p,a{font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:15px;line-height\:24px;color\:\#444;}\r\n.bodyBlock{-webkit-font-smoothing\:antialiased;width\:100% \!important;background-color\:\#fff;background-image\:none;background-repeat\:repeat;background-position\:top left;background-attachment\:scroll;-webkit-text-size-adjust\:none;}\r\n.textIndent{text-indent\:2em;}\r\n.infoBox{text-align\:left; margin-left\:23%;}\r\n.importInfo{ font-size\:20px;color\:\#ff9900;}\r\n.importInfo *{font-size\:20px;color\:\#ff9900;text-decoration\: none;}\r\n.importInfo2{font-size\:20px;color\:\#018ed9;}\r\n.importInfo2 *{font-size\:20px;color\:\#018ed9;}\r\n.contentBody{position\:relative;background\:rgba(216, 234, 236, 0.6);width\:100%; padding\:14px 6px;margin\:40px 0 0 -6px;}\r\n.contentBody em{position\: absolute; width\: 0px;height\: 0px;bottom\: -5px;}\r\n.contentBody em.rightEm{right\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent; border-left\: 6px solid \#acb4b8;border-right\: 0px solid transparent;}\r\n.contentBody em.leftEm{left\: 0px;border-top\: 0px solid \#acb4b8;border-bottom\: 4px solid transparent;border-right\: 6px solid \#acb4b8;border-left\: 0px solid transparent;}\r\n\r\n.full_width{float\:right;position\: absolute;top\: 30%;right\: 20px;}\r\n.mainContent{padding\:10px 20px;float\:left;max-width\:480px;}\r\n.mainContent2{padding\:10px 26px;}\r\n.buttonGo{color\:\#399A9B;background-color\:\#308F9B;text-align\:center;color\:\#fff; \r\n    padding\: 6px 40px;\r\n    font-size\:15px;line-height\:24px;\r\n    text-decoration\: none;\r\n    text-transform\: uppercase;\r\n    border-radius\:4px;\r\n    -moz-border-radius\:4px;\r\n    -webkit-border-radius\:4px;\r\n    font-family\: Microsoft Yahei, Calibri, 'Segoe UI', Arial, sans-serif;}\r\n.afterEnter{margin\:10px 4px 0 4px;padding\:10px 18px;width\:42%;font-size\: 13px;float\:left;min-height\:130px;}\r\n.afterEnter h4{margin\:6px 0;}\r\n.afterEnter a{font-size\:13px; padding\:0 4px;}\r\n@media only screen and (max-width\: 600px) {\r\n\tdiv[class\='contentBody']{\r\n\t\ttext-align\:center\!important;}\r\n  \r\n\tdiv[class\='content_wrap'] {\r\n\t  width\: 94%\!important;\r\n\t}\r\n\t\r\n\tdiv[class\='full_width'] {\r\n\t  width\: 100%\!important;\r\n\t  float\:none;\r\n\t  position\:inherit;\r\n\t  right\:0;\r\n\t}\r\n\tdiv[class\='mainContent']{\r\n\t\twidth\: 90%\!important;\r\n\t\tfloat\:none;\r\n    margin\:auto;\r\n  }\r\n  div[class\='contentMain']{\r\n    width\:100%\!important;\r\n   text-align\:left\!important; \r\n  }\r\n\t\r\n\tdiv[class\='text-center'] {\r\n\t  text-align\: center;\r\n\t}\r\n\t\r\n\ta[class\='buttonGo'] {\r\n     border-radius\:2px;\r\n    -moz-border-radius\:2px;\r\n    -webkitborder-radius\:2px;\r\n\t  background-color\:\#308F9B;\r\n\t  color\:\#fff\!important;\r\n\t  padding\: 5px 0;\r\n\t  width\:100%;\r\n\t  display\:block;\r\n\t  margin\:0 auto 10px;\r\n\t}\r\n\tdiv[class\='afterEnter']{\r\n\t\tfloat\:none;\r\n\t\twidth\: 90%\!important;\r\n\t\t    min-height\: auto;\r\n\t}\r\n\tp[class\='infoBox']{\r\n\t\ttext-align\:left;\r\n\t\tmargin-left\:10%;}\r\n}\r\n</style>\r\n</head>\r\n\r\n<body class\='bodyBlock'>\r\n    <\!--Content wrapper-->\r\n    <div style\='width\:640px;margin\:auto;background\:\#F7F7F7;' class\='content_wrap'>\r\n\r\n           <\!--Logo-->\r\n          <div style\='background\:\#fff;width\:100%;' class\='text-center'>\r\n            <a href\='\#'>\r\n              <img src\='http\://www.ekexiu.com/images/logo4.png' width\='120' height\='80' alt\='logo' border\='0'  style\='margin\:20px auto' />\r\n            </a>\r\n          </div>\r\n          <\!--Content 2-->\r\n            <div class\='contentBody'>\r\n                  <\!--image-->\r\n                  <div class\='full_width'>\r\n                      <div style\='text-align\:center;padding\:10px;' class\='text-center'> \r\n                         <img src\='http\://www.ekexiu.com/images/icon_2.png' border\='0' alt\='' width\='100' height\='100' />\r\n                      </div>\r\n                  </div>\r\n                  <\!--content-->\r\n                  <div class\='mainContent'>\r\n                        <h3 class\='mainTit'>\u300C\u79D1\u8896\u7F51\u300D\u7279\u9080\u79D1\u7814\u4E13\u5BB6\u9080\u8BF7\u51FD</h3>\r\n                        <div class\='contentMain'>\r\n                          <p>appellationKey</p>\r\n                              <p class\='textIndent'>contentKey</p>\r\n                              <p class\='textIndent'>\u901A\u8FC7\u5BF9\u60A8\u7684\u8BA4\u771F\u4E86\u89E3\uFF0C\u6211\u4EEC\u8BDA\u631A\u7684\u9080\u8BF7\u60A8\u6210\u4E3A\u9996\u6279\u79D1\u7814\u4E13\u5BB6\u7528\u6237\u3002</p>\r\n                              <div class\='textIndent'>\u6211\u4EEC\u4E3A\u60A8\u5EFA\u7ACB\u7684\u8D26\u53F7\u662F\uFF1A \r\n                                  phoneKey\r\n                                  <p class\='infoBox'><span class\='importInfo'><a href\=''>mailKey</a></span></p>\r\n\r\n                              </div>\r\n                              <p class\='textIndent'>\u60A8\u7684\u9080\u8BF7\u7801\u662F\uFF1A <span class\='importInfo importInfo2' >invitCodeKey</span></p>\r\n                        </div>\r\n                   </div> \r\n                   <div style\='clear\:both;padding\:6px 20px;'>\r\n                      <p style\=' margin\:4px 4px 20px 4px; text-align\:center; width\: 100%;'> <a href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank' class\='buttonGo' style\='text-decoration\: none;' >\u63A5\u53D7\u9080\u8BF7\u5E76\u767B\u5F55</a></p>\r\n                      <div class\='afterEnter' style\='background\: \#FFFDEB;'>\r\n                      \t\t<h4>\u5B8C\u5584\u4E13\u5C5E\u4E3B\u9875</h4>\r\n                      \t\t<span style\='font-size\:12px;color\:\#666;'>\u767B\u5F55\u540E\uFF0C\u5728\u4E2A\u4EBA\u5934\u50CF\u5904\u70B9\u51FB\u3010\u4FEE\u6539\u8D44\u6599\u3011\uFF0C\u586B\u5199\u4E2A\u4EBA\u7B80\u5386\uFF1B</span><br/>\r\n                            <span style\='font-size\:12px;color\:\#666;'>\u5728'\u6211\u7684\u5DE5\u4F5C\u53F0'\u7684\u3010\u7814\u53D1\u8D44\u6E90\u3011\u680F\u76EE\u4E2D\uFF0C\u6DFB\u52A0\u8D44\u6E90\u4FE1\u606F\u3002</span>\r\n                      </div>\r\n                      <div class\='afterEnter' style\='background\:\#FFFFFF;'>\r\n                      \t <h4>\u6CA1\u65F6\u95F4\u767B\u5F55\uFF0C\u8BF7\u5BA2\u670D\u5E2E\u5FD9</h4>\r\n                         <p style\='font-size\:12px;color\:\#666;'>\u4E0B\u8F7D <a href\='http\://www.ekexiu.com/attachment/kexiu_resume.docx'> \u79D1\u8896\u7279\u9080\u4E13\u5BB6\u7B80\u5386 </a> \u548C <a href\='http\://www.ekexiu.com/attachment/kexiu_resources.docx'> \u7814\u53D1\u8D44\u6E90\u4FE1\u606F\u8868 </a> \uFF0C\u586B\u5199\u540E\u56DE\u590D\u81F3\u672C\u90AE\u4EF6\uFF0C\u7531\u5BA2\u670D\u4E13\u5458\u5E2E\u60A8\u5F55\u5165\u4FE1\u606F\u3002</p>\r\n                      </div>\r\n                      <div style\='clear\:both;'></div>\r\n                   </div>\r\n                   <em class\='rightEm'></em>   \r\n                   <em class\='leftEm'></em>    \r\n            </div>\r\n          <\!--end Content 2-->\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n              <div class\='mainContent2'>\r\n                  <h3>\u767B\u5F55\u56FE\u793A</h3>\r\n                  <p style\='font-size\:13px;'>\u70B9\u51FB\u3010\u7279\u9080\u4E13\u5BB6\u767B\u5F55\u3011\u540E\uFF0C\u8F93\u5165\u60A8\u7684\u8D26\u53F7\u4E0E\u9080\u8BF7\u7801\u5373\u53EF\u767B\u5F55\u3002</p>\r\n                  <a style\='display\:block;' href\='http\://www.ekexiu.com/login-invite-code.html' target\='_blank'>\r\n                     <img src\='http\://www.ekexiu.com/images/pointImg.jpg' width\='100%'>\r\n                  </a>\r\n              </div> \r\n              <em class\='rightEm'></em>   \r\n              <em class\='leftEm'></em>\r\n          </div>\r\n\r\n          <div class\='contentBody' style\='margin-top\:16px;'>\r\n               <div class\='mainContent2' style\='text-align\:left;'>\r\n                  <h3>\u300C\u79D1\u8896\u300D\u662F\u4EC0\u4E48\uFF1F</h3>\r\n                  <p class\='textIndent'>\u300C\u79D1\u8896\u300D\u662F\u4E00\u5EA7\u5546\u4E1A\u4E0E\u79D1\u7814\u7684\u6865\u6881\uFF0C\u662F\u4E00\u4E2A\u81F4\u529B\u4E8E\u6574\u5408\u884C\u4E1A\u5185\u4F18\u79C0\u7684\u79D1\u7814\u4E13\u5BB6\u4E0E\u7814\u53D1\u8D44\u6E90\u7684\u5171\u4EAB\u7ECF\u6D4E\u5E73\u53F0\u3002\u901A\u8FC7\u63D0\u4F9B\u4E92\u8054\u7F51\u670D\u52A1\uFF0C\u5E2E\u52A9\u4F01\u4E1A\u5BFB\u627E\u653B\u514B\u7814\u53D1\u96BE\u9898\u7684\u4E13\u5BB6\uFF0C\u4F7F\u4F01\u4E1A\u62E5\u6709\u81EA\u5DF1\u7684\u4E13\u5BB6\u987E\u95EE\u3001\u79D1\u7814\u56E2\u961F\u3001\u865A\u62DF\u7814\u7A76\u9662\uFF0C\u4ECE\u800C\u63D0\u9AD8\u4F01\u4E1A\u7684\u7814\u53D1\u4E0E\u521B\u65B0\u80FD\u529B\uFF1B\u5E2E\u52A9\u4E13\u5BB6\u5B9E\u73B0\u7814\u7A76\u6210\u679C\u7684\u5E94\u7528\uFF0C\u4F7F\u79D1\u7814\u4EF7\u503C\u8F6C\u5316\u4E3A\u7ECF\u6D4E\u4EF7\u503C\uFF1B\u4F7F\u95F2\u7F6E\u7684\u7814\u53D1\u8D44\u6E90\u5F97\u5230\u5145\u5206\u5229\u7528\uFF0C\u51CF\u5C11\u8D44\u6E90\u6D6A\u8D39\uFF0C\u521B\u9020\u66F4\u591A\u4EF7\u503C\u3002</p>    \r\n                </div>\r\n                <em class\='rightEm'></em>   \r\n                <em class\='leftEm'></em>\r\n          </div>\r\n          \r\n          \r\n          <\!--Footer-->\r\n           <div style\='padding\:20px;margin\:10px 0;font-family\: Microsoft Yahei,'Segoe UI', Arial, sans-serif;font-size\:12px;line-height\:17px;color\:\#555;background\:\#ECF0F5;'>\r\n              <div>&copy; 2016 \u5317\u4EAC\u79D1\u8896\u79D1\u6280\u6709\u9650\u516C\u53F8 &nbsp; | &nbsp; \u4EACICP\u590716042588\u53F7-1 &nbsp; | &nbsp;\r\n                <a class\='beianbox' style\='color\:\#399A9B;font-size\:12px;' target\='_black' rel\='nofollow' href\='http\://www.beian.gov.cn/portal/registerSystemInfo?recordcode\=11010802022306'><span class\='beian-icon'></span> \u4EAC\u516C\u7F51\u5B89\u590711010802022306\u53F7</a></div>\r\n              <div>\u610F\u89C1\u5EFA\u8BAE\uFF1A<a href\='mailto\:service@ekexiu.com' style\='color\:\#399A9B;' rel\='nofollow'>service@ekexiu.com</a>&nbsp;&nbsp;&nbsp; \u5BA2\u670D\u7535\u8BDD\uFF1A 010-62343359\uFF089\:00-17\:00\uFF09</div>\r\n              \r\n           </div>\r\n            <\!--End Footer-->\r\n     </div>         \r\n    <\!--end Content wrapper-->\r\n     \r\n</body>\r\n</html>
44
com_ekexiu_console_system_mail_MailService.port::int=25
45
com_ekexiu_console_system_mail_MailService.from=service@service.ekexiu.com
46
com_ekexiu_console_system_mail_MailService.nick=\u79D1\u8896\u5BA2\u670D
47
com_ekexiu_console_system_mail_MailService.mailHost=smtpdm.aliyun.com
48
com_ekexiu_console_system_mail_MailService.username=service@service.ekexiu.com
49
com_ekexiu_console_system_mail_MailService.password=lycrystal12EkexiuA
50
com_ekexiu_console_system_mail_MailService.sessionProperties-ref=mailService_Map
51
mailService_Map::map=java.util.HashMap
52
mailService_Map.map-key-0::java.lang.String=mail.host
53
mailService_Map.map-val-0::java.lang.String=smtp.mxhichina.com
54
mailService_Map.map-key-1::java.lang.String=mail.transport.protocol
55
mailService_Map.map-val-1::java.lang.String=smtp
56
mailService_Map.map-key-2::java.lang.String=mail.smtp.auth
57
mailService_Map.map-val-2::java.lang.String=true