Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
git test
Jeesite4
Commits
fe030b75
Commit
fe030b75
authored
6 years ago
by
thinkgem
Browse files
Options
Download
Plain Diff
删除失信企业湖南乐活科技lehuo520.cn乐云短信代码
parents
8563888f
8b3a20b6
v4.4_dev
master
v4.0_dev
v4.1_dev
v4.2_dev
v4.3_dev
v4.temp
v5.0_dev
v5.temp
v5.0.0.1
v5.0.0
v4.4.0
v4.3.3
v4.3.2
v4.3.1
v4.3.0.2
v4.3.0
v4.2.3.2
v4.2.3.1
v4.2.3
v4.2.2
v4.2.1
v4.2.0
v4.1.9
v4.1.8.2
v4.1.8.1
v4.1.8
v4.1.7
v4.1.6
v4.1.5
v4.1.4
v4.1.3
v4.1.2
v4.1.1
v4.1.0
v4.0.8
v4.0.7
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
README.md
+2
-2
README.md
common/src/main/java/com/jeesite/common/msg/EmailUtils.java
+6
-6
common/src/main/java/com/jeesite/common/msg/EmailUtils.java
common/src/main/java/com/jeesite/common/msg/SmsUtils.java
+28
-126
common/src/main/java/com/jeesite/common/msg/SmsUtils.java
with
36 additions
and
134 deletions
+36
-134
README.md
+
2
-
2
View file @
fe030b75
...
...
@@ -21,8 +21,7 @@ JeeSite 自开源以来已被广大爱好者用到了企业、政府、医疗、
*
视图层:Spring MVC 4.3、Beetl 2.7 替换JSP、Bootstrap 3.3、AdminLTE 2.4
*
前端组件:jQuery 1.12、jqGrid 4.7、layer 3.0、zTree 3.5、jquery-validation
*
工具组件:Apache Commons、Logback 1.1、Jackson 2.8、POI 3.14、Quartz 2.2
*
JFlow工作流引擎:
<https://gitee.com/thinkgem/jeesite4-jflow>
:
<http://ccflow.org>
*
乐云短信网关:SmsUtils.java :
<http://www.lehuo520.cn>
*
JFlow工作流引擎:
<https://gitee.com/thinkgem/jeesite4-jflow>
:http://ccflow.org
*
技术选型详情:
<http://jeesite4.mydoc.io/?t=273599>
## 内置功能菜单
...
...
@@ -98,6 +97,7 @@ JeeSite的小版本(4.0.x)升级是非常便捷的,你只需要将 pom.xml
*
GitHub:
<https://github.com/thinkgem/jeesite4>
*
作者博客:
<https://my.oschina.net/thinkgem>
*
官方网站:
<http://jeesite.com>
*
官方论坛:
<http://jeesite.net>
*
微信公众号:

...
...
This diff is collapsed.
Click to expand it.
common/src/main/java/com/jeesite/common/msg/EmailUtils.java
+
6
-
6
View file @
fe030b75
...
...
@@ -24,12 +24,12 @@ public class EmailUtils {
* @return
*/
public
static
boolean
send
(
String
toAddress
,
String
subject
,
String
content
)
{
PropertiesUtils
loader
=
PropertiesUtils
.
getInstance
();
String
fromAddress
=
loader
.
getProperty
(
"msg.email.fromAddress"
);
String
fromPassword
=
loader
.
getProperty
(
"msg.email.fromPassword"
);
String
fromHostName
=
loader
.
getProperty
(
"msg.email.fromHostName"
);
String
sslOnConnect
=
loader
.
getProperty
(
"msg.email.sslOnConnect"
,
"false"
);
String
sslSmtpPort
=
loader
.
getProperty
(
"msg.email.sslSmtpPort"
);
PropertiesUtils
props
=
PropertiesUtils
.
getInstance
();
String
fromAddress
=
props
.
getProperty
(
"msg.email.fromAddress"
);
String
fromPassword
=
props
.
getProperty
(
"msg.email.fromPassword"
);
String
fromHostName
=
props
.
getProperty
(
"msg.email.fromHostName"
);
String
sslOnConnect
=
props
.
getProperty
(
"msg.email.sslOnConnect"
,
"false"
);
String
sslSmtpPort
=
props
.
getProperty
(
"msg.email.sslSmtpPort"
);
return
send
(
fromAddress
,
fromPassword
,
fromHostName
,
sslOnConnect
,
sslSmtpPort
,
toAddress
,
subject
,
content
);
}
...
...
This diff is collapsed.
Click to expand it.
common/src/main/java/com/jeesite/common/msg/SmsUtils.java
+
28
-
126
View file @
fe030b75
package
com.jeesite.common.msg
;
import
java.io.BufferedReader
;
import
java.io.IOException
;
import
java.io.InputStreamReader
;
import
java.io.OutputStream
;
import
java.net.HttpURLConnection
;
import
java.net.URL
;
import
java.net.URLEncoder
;
import
java.util.Date
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.jeesite.common.io.PropertiesUtils
;
import
com.jeesite.common.lang.DateUtils
;
/**
* 发送短信(
乐云短信
)
* 发送短信(
请实现send方法
)
*/
public
class
SmsUtils
{
private
final
static
Logger
logger
=
LoggerFactory
.
getLogger
(
SmsUtils
.
class
);
private
final
static
PropertiesUtils
props
=
PropertiesUtils
.
getInstance
();
private
final
static
String
url
=
props
.
getProperty
(
"msg.sms.url"
,
"http://lehuo520.cn/a/sms/api"
);
private
final
static
String
data
=
props
.
getProperty
(
"msg.sms.data"
,
"username=jeesite&password=jeesite.com"
);
private
final
static
String
prefix
=
props
.
getProperty
(
"msg.sms.prefix"
,
"【JeeSite】"
);
private
final
static
String
suffix
=
props
.
getProperty
(
"msg.sms.suffix"
,
""
);
// public static void main(String[] args) {
// String phone = "18500000000"; // 收短信人手机号码;例如:18500000000 支持多号码,号码之间用英文逗号隔开,最多100个
// String content = "您好,您的验证码是:123456(请勿透露给其他人)感谢您的使用。"; // 输入需要发送内容;例如:你好这是一条测试短信
// String smsid = ""; // 短信id,查询短信状态报告时需要,可为空
// System.out.println(send(content, phone)); // 发短信
// System.out.println(status(smsid, phone)); // 取状态
// System.out.println(reply()); //取上行 回复短信
// }
/**
* 发送短信
* @param content 接受内容
* @param phone 接受手机号码
* @return {"result":"0","describing":"提交成功","sms":[{"phone":"18073110001,18073110002","smsid":"83bd18f1d48b4cc9b9fe7810c768ac43","status":"3"}]}
*/
public
static
String
send
(
String
content
,
String
phone
)
{
return
send
(
content
,
phone
,
null
);
}
/**
* 发送短信
* @param content 接受内容
* @param phone 接受手机号码
* @param sendtime 发送时间为空立即发送
* @return {"result":"0","describing":"提交成功","sms":[{"phone":"18073110001,18073110002","smsid":"83bd18f1d48b4cc9b9fe7810c768ac43","status":"3"}]}
*/
public
static
String
send
(
String
content
,
String
phone
,
Date
sendTime
)
{
String
res
=
""
;
try
{
String
param
=
data
+
"&phone="
+
phone
+
"&content="
+
URLEncoder
.
encode
(
prefix
+
content
+
suffix
,
"UTF-8"
)
+
"&sendTime="
+
(
sendTime
!=
null
?
DateUtils
.
formatDate
(
sendTime
,
"yyyyMMddHHmm"
)
:
""
);
res
=
connectURL
(
url
+
"/send"
,
param
);
}
catch
(
Exception
ex
)
{
logger
.
error
(
ex
.
getMessage
(),
ex
);
}
return
res
;
}
/**
* 获取状态
* @param smsid,phone可为空,为空取最近两天未获取状态报告,沦询间隔时间不能低于5分钟
* @return 请求错误返回页面示例: {"result":"-1","describing":"帐号不存在,请检查用户名或者密码是否正确","sms":[]} 请求成功返回页面示例:
* {"result":"0","describing":"提交成功","sms":[{"phone":"18073110001","smsid":"83bd18f1d48b4cc9b9fe7810c768ac43","status":"7"},{"phone":"18073110001","smsid":"83bd18f1d48b4cc9b9fe7810c768ac43","status":"8"}]}
* 模拟发送短信
* @param content 短信内容
* @param mobile 接受手机号码
*/
public
static
String
status
(
String
smsid
,
String
phone
)
{
String
res
=
""
;
try
{
String
param
=
data
+
"&smsid="
+
smsid
;
res
=
connectURL
(
url
+
"/status"
,
param
);
}
catch
(
Exception
ex
)
{
logger
.
error
(
ex
.
getMessage
(),
ex
);
}
return
res
;
public
static
String
send
(
String
content
,
String
mobile
)
{
// PropertiesUtils props = PropertiesUtils.getInstance();
// String url = props.getProperty("msg.sms.url");
// String data = props.getProperty("msg.sms.data");
// String prefix = props.getProperty("msg.sms.prefix", "");
// String suffix = props.getProperty("msg.sms.suffix", "");
// Connection conn = Jsoup.connect(url);
// conn.postDataCharset("UTF-8");
// conn.method(Method.POST);
// for (String param : StringUtils.split(data, "&")){
// String[] ss = StringUtils.split(param, "=");
// if (ss.length == 1){
// conn.data(ss[0], "");
// }else if (ss.length == 2){
// conn.data(ss[0], ss[1]);
// }
// }
// // 手机号码
// conn.data("mobile", mobile);
// // 短信内容
// conn.data("content", prefix + content + suffix);
logger
.
warn
(
"模拟发送短信成功!请实现 "
+
SmsUtils
.
class
+
" 的 send 方法。"
);
return
"{result:0,message:\"模拟发送短信成功!\"}"
;
}
/**
* 获取回复
* @param smsid:下发短信对应短信ID,taskId同一批任务ID
* @return {"result":"0","sms":[{"phone":"18073110001","neirong":"已收到","taskId":"83bd18f1d48b4cc9b9fe7810c768ac43"},"smsId":"83bd18f1d48b48j9b9fe7810c768ac43"}]}
*/
public
static
String
reply
()
{
String
res
=
""
;
try
{
String
param
=
data
;
res
=
connectURL
(
url
+
"/query"
,
param
);
}
catch
(
Exception
ex
)
{
logger
.
error
(
ex
.
getMessage
(),
ex
);
}
return
res
;
}
/**
* 进行http提交
* @param
* @return
* @throws IOException
* @throws Exception
*/
private
static
String
connectURL
(
String
url
,
String
param
)
throws
IOException
{
String
res
=
""
;
HttpURLConnection
urlConn
=
null
;
URL
url1
=
new
URL
(
url
);
urlConn
=
(
HttpURLConnection
)
url1
.
openConnection
();
urlConn
.
setRequestMethod
(
"POST"
);
urlConn
.
setDoOutput
(
true
);
OutputStream
out
=
null
;
BufferedReader
rd
=
null
;
try
{
out
=
urlConn
.
getOutputStream
();
out
.
write
(
param
.
getBytes
(
"UTF-8"
));
out
.
flush
();
rd
=
new
BufferedReader
(
new
InputStreamReader
(
urlConn
.
getInputStream
(),
"UTF-8"
));
StringBuffer
sb
=
new
StringBuffer
();
int
ch
;
while
((
ch
=
rd
.
read
())
>
-
1
)
{
sb
.
append
((
char
)
ch
);
}
res
=
sb
.
toString
().
trim
();
}
finally
{
if
(
out
!=
null
){
out
.
close
();
}
if
(
rd
!=
null
){
rd
.
close
();
}
}
return
res
;
}
}
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help