Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Z
zhny
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王夏晖
zhny
Commits
56a572f3
Commit
56a572f3
authored
Jan 07, 2019
by
jichao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
改bug
parent
2348e964
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
8 additions
and
1226 deletions
+8
-1226
ZhnyLineRunner.java
src/main/java/org/rcisoft/ZhnyLineRunner.java
+0
-56
ProjectEvaluateServiceImpl.java
...uate/project/service/impl/ProjectEvaluateServiceImpl.java
+7
-1
AddressUtils.java
...va/org/rcisoft/business/mainte/adaptive/AddressUtils.java
+0
-294
AdaptiveServiceImpl.java
...ess/mainte/adaptive/service/impl/AdaptiveServiceImpl.java
+0
-88
OverViewServiceImpl.java
...t/business/overview/service/impl/OverViewServiceImpl.java
+0
-8
DecryptDBPasswordUtility.java
.../java/org/rcisoft/core/util/DecryptDBPasswordUtility.java
+0
-10
QRCodeUtils.java
src/main/java/org/rcisoft/core/util/QRCodeUtils.java
+0
-2
RegexValidateUtil.java
src/main/java/org/rcisoft/core/util/RegexValidateUtil.java
+1
-4
ZipCompress.java
src/main/java/org/rcisoft/core/util/ZipCompress.java
+0
-19
ClientMQTT.java
src/main/java/org/rcisoft/mqttclient/ClientMQTT.java
+0
-63
MqttClient.java
src/main/java/org/rcisoft/mqttclient/MqttClient.java
+0
-419
PushCallback.java
src/main/java/org/rcisoft/mqttclient/PushCallback.java
+0
-42
ReceiveDataHandle.java
src/main/java/org/rcisoft/mqttclient/ReceiveDataHandle.java
+0
-130
Test.java
src/main/java/org/rcisoft/mqttclient/Test.java
+0
-26
CityCodeTest.java
src/main/java/org/rcisoft/test/CityCodeTest.java
+0
-61
WechatRedirectController.java
...ain/java/org/rcisoft/wechat/WechatRedirectController.java
+0
-2
WxPortalService.java
...main/java/org/rcisoft/wechat/service/WxPortalService.java
+0
-1
No files found.
src/main/java/org/rcisoft/ZhnyLineRunner.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
;
import
org.rcisoft.business.device.assets.service.BusDeviceService
;
import
org.rcisoft.business.mainte.fault.service.BusDeviceFaultService
;
import
org.rcisoft.business.manage.dao.BusDevicetpParamRepository
;
import
org.rcisoft.business.manage.dao.ProjectRepository
;
import
org.rcisoft.business.manage.entity.BusProject
;
import
org.rcisoft.business.totaloriginal.service.TotalOriginalService
;
import
org.rcisoft.core.service.RcRedisService
;
import
org.rcisoft.mqttclient.MqttClient
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.CommandLineRunner
;
import
org.springframework.stereotype.Component
;
import
tk.mybatis.mapper.entity.Example
;
import
java.util.List
;
@Component
public
class
ZhnyLineRunner
implements
CommandLineRunner
{
@Autowired
private
RcRedisService
rcRedisService
;
@Autowired
private
TotalOriginalService
totalOriginalServiceImpl
;
@Autowired
private
ProjectRepository
projectRepository
;
@Autowired
private
BusDevicetpParamRepository
busDevicetpParamRepository
;
@Autowired
BusDeviceFaultService
busdeviceFaultServiceImpl
;
@Autowired
BusDeviceService
busDeviceServiceImpl
;
@Override
public
void
run
(
String
...
var1
)
throws
Exception
{
// 查出所有项目的开关状态,放入redis
// this.searchProject();
System
.
out
.
println
(
"MQTT 客户端启动++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
);
MqttClient
client
=
new
MqttClient
(
rcRedisService
,
totalOriginalServiceImpl
,
busDevicetpParamRepository
,
busdeviceFaultServiceImpl
,
busDeviceServiceImpl
);
// client.start();
}
private
void
searchProject
()
{
Example
example
=
new
Example
(
BusProject
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andEqualTo
(
"receiveData"
,
1
);
List
<
BusProject
>
list
=
projectRepository
.
selectByExample
(
example
);
list
.
forEach
(
busProject
->
{
rcRedisService
.
set
(
"proId-"
+
busProject
.
getProId
(),
busProject
.
getReceiveData
().
toString
());
// list中放入需要接收数据的proId
// rcRedisService.setList("proIds", busProject.getProId());
});
}
}
src/main/java/org/rcisoft/business/evaluate/project/service/impl/ProjectEvaluateServiceImpl.java
View file @
56a572f3
package
org
.
rcisoft
.
business
.
evaluate
.
project
.
service
.
impl
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.rcisoft.business.evaluate.project.dao.ProjectEvaluateRepository
;
import
org.rcisoft.business.evaluate.project.service.ProjectEvaluateService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -33,8 +34,13 @@ public class ProjectEvaluateServiceImpl implements ProjectEvaluateService {
*/
@Override
public
List
<
Map
<
String
,
Object
>>
listProjectInformationByYear
(
String
year
,
Integer
pageNum
,
Integer
pageSize
)
{
Calendar
calendar
=
Calendar
.
getInstance
();
int
now
=
calendar
.
get
(
Calendar
.
YEAR
);
// 当前月份
int
month
=
Calendar
.
getInstance
().
get
(
Calendar
.
MONTH
)
+
1
;
int
month
=
calendar
.
get
(
Calendar
.
MONTH
)
+
1
;
if
(
now
>
Integer
.
parseInt
(
year
))
{
month
=
13
;
}
BigDecimal
zero
=
new
BigDecimal
(
0
);
Integer
start
=
pageSize
*
(
pageNum
-
1
);
Integer
end
=
pageSize
*
pageNum
;
...
...
src/main/java/org/rcisoft/business/mainte/adaptive/AddressUtils.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
.
business
.
mainte
.
adaptive
;
import
java.io.BufferedReader
;
import
java.io.DataOutputStream
;
import
java.io.InputStreamReader
;
import
java.net.HttpURLConnection
;
import
java.net.URL
;
import
org.json.JSONObject
;
public
class
AddressUtils
{
/**
* @param args
*/
public
static
void
main
(
String
[]
args
)
{
AddressUtils
addressUtils
=
new
AddressUtils
();
String
ip
=
"125.36.118.195"
;
String
address
=
""
;
try
{
address
=
addressUtils
.
getAddress
(
"ip="
+
ip
,
"utf-8"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
System
.
out
.
println
(
address
);
}
/**
* 获取地址
* @param params
* @param encoding
* @return
* @throws Exception
*/
public
static
String
getAddress
(
String
params
,
String
encoding
)
throws
Exception
{
String
path
=
"http://ip.taobao.com/service/getIpInfo.php"
;
String
returnStr
=
getRs
(
path
,
params
,
encoding
);
JSONObject
json
=
null
;
if
(
returnStr
!=
null
){
json
=
new
JSONObject
(
returnStr
);
if
(
"0"
.
equals
(
json
.
get
(
"code"
).
toString
())){
StringBuffer
buffer
=
new
StringBuffer
();
//buffer.append(decodeUnicode(json.optJSONObject("data").getString("country")));//国家
//buffer.append(decodeUnicode(json.optJSONObject("data").getString("area")));//地区
// buffer.append(decodeUnicode(json.optJSONObject("data").getString("region")));//省份
buffer
.
append
(
decodeUnicode
(
json
.
optJSONObject
(
"data"
).
getString
(
"city"
)));
//市区
// buffer.append(decodeUnicode(json.optJSONObject("data").getString("county")));//地区
// buffer.append(decodeUnicode(json.optJSONObject("data").getString("isp")));//ISP公司
System
.
out
.
println
(
buffer
.
toString
());
return
buffer
.
toString
();
}
else
{
return
"获取地址失败"
;
}
}
return
null
;
}
/**
* 从url获取结果
* @param path
* @param params
* @param encoding
* @return
*/
public
static
String
getRs
(
String
path
,
String
params
,
String
encoding
){
URL
url
=
null
;
HttpURLConnection
connection
=
null
;
try
{
url
=
new
URL
(
path
);
connection
=
(
HttpURLConnection
)
url
.
openConnection
();
// 新建连接实例
connection
.
setConnectTimeout
(
2000
);
// 设置连接超时时间,单位毫�?
connection
.
setReadTimeout
(
2000
);
// 设置读取数据超时时间,单位毫�?
connection
.
setDoInput
(
true
);
// 是否打开输出�? true|false
connection
.
setDoOutput
(
true
);
// 是否打开输入流true|false
connection
.
setRequestMethod
(
"POST"
);
// 提交方法POST|GET
connection
.
setUseCaches
(
false
);
// 是否缓存true|false
connection
.
connect
();
// 打开连接端口
DataOutputStream
out
=
new
DataOutputStream
(
connection
.
getOutputStream
());
out
.
writeBytes
(
params
);
out
.
flush
();
out
.
close
();
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
connection
.
getInputStream
(),
encoding
));
StringBuffer
buffer
=
new
StringBuffer
();
String
line
=
""
;
while
((
line
=
reader
.
readLine
())!=
null
)
{
buffer
.
append
(
line
);
}
reader
.
close
();
return
buffer
.
toString
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
finally
{
connection
.
disconnect
();
// 关闭连接
}
return
null
;
}
/**
* 字符转码
* @param theString
* @return
*/
public
static
String
decodeUnicode
(
String
theString
){
char
aChar
;
int
len
=
theString
.
length
();
StringBuffer
buffer
=
new
StringBuffer
(
len
);
for
(
int
i
=
0
;
i
<
len
;)
{
aChar
=
theString
.
charAt
(
i
++);
if
(
aChar
==
'\\'
){
aChar
=
theString
.
charAt
(
i
++);
if
(
aChar
==
'u'
){
int
val
=
0
;
for
(
int
j
=
0
;
j
<
4
;
j
++){
aChar
=
theString
.
charAt
(
i
++);
switch
(
aChar
)
{
case
'0'
:
case
'1'
:
case
'2'
:
case
'3'
:
case
'4'
:
case
'5'
:
case
'6'
:
case
'7'
:
case
'8'
:
case
'9'
:
val
=
(
val
<<
4
)
+
aChar
-
'0'
;
break
;
case
'a'
:
case
'b'
:
case
'c'
:
case
'd'
:
case
'e'
:
case
'f'
:
val
=
(
val
<<
4
)
+
10
+
aChar
-
'a'
;
break
;
case
'A'
:
case
'B'
:
case
'C'
:
case
'D'
:
case
'E'
:
case
'F'
:
val
=
(
val
<<
4
)
+
10
+
aChar
-
'A'
;
break
;
default
:
throw
new
IllegalArgumentException
(
"Malformed encoding."
);
}
}
buffer
.
append
((
char
)
val
);
}
else
{
if
(
aChar
==
't'
){
aChar
=
'\t'
;
}
if
(
aChar
==
'r'
){
aChar
=
'\r'
;
}
if
(
aChar
==
'n'
){
aChar
=
'\n'
;
}
if
(
aChar
==
'f'
){
aChar
=
'\f'
;
}
buffer
.
append
(
aChar
);
}
}
else
{
buffer
.
append
(
aChar
);
}
}
return
buffer
.
toString
();
}
}
\ No newline at end of file
src/main/java/org/rcisoft/business/mainte/adaptive/service/impl/AdaptiveServiceImpl.java
View file @
56a572f3
...
...
@@ -6,13 +6,6 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.time.DateUtils
;
import
org.apache.http.HttpResponse
;
import
org.apache.http.client.config.RequestConfig
;
import
org.apache.http.client.methods.HttpGet
;
import
org.apache.http.impl.client.CloseableHttpClient
;
import
org.apache.http.impl.client.HttpClients
;
import
org.apache.http.util.EntityUtils
;
import
org.rcisoft.business.mainte.adaptive.AddressUtils
;
import
org.rcisoft.business.mainte.adaptive.dao.BusParamReferRepository
;
import
org.rcisoft.business.mainte.adaptive.dao.BusTemperatureRepository
;
import
org.rcisoft.business.mainte.adaptive.dao.TotalSensorRepository
;
...
...
@@ -37,7 +30,6 @@ import javax.servlet.http.HttpServletRequest;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.math.BigDecimal
;
import
java.net.HttpURLConnection
;
import
java.net.URL
;
import
java.net.URLConnection
;
import
java.text.SimpleDateFormat
;
...
...
@@ -223,11 +215,9 @@ public class AdaptiveServiceImpl implements AdaptiveService {
resultMap
.
put
(
"fs"
,
""
);
//获得ip
// String ip = IPUtils.getIpFromRequest(request);
// System.out.println("&&&&&&&&&&&&&&&&&&&&&&&" + ip + "&&&&&&&&&&&&&&&&&&&&&&&&&&&&&");
try
{
//获得城市
String
cityName
=
StringUtils
.
isEmpty
(
city
)
?
null
:
StringUtils
.
substring
(
city
,
0
,
city
.
length
()
-
1
);
//AddressUtils.getAddress(ip, "utf-8");
System
.
out
.
println
(
"&&&&&&&&&&&&&&&&&&&&&&&"
+
cityName
+
"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&"
);
//根据城市名称查找城市code
//如果城市为空,返回空值
if
(
cityName
==
null
)
return
resultMap
;
...
...
@@ -314,46 +304,6 @@ public class AdaptiveServiceImpl implements AdaptiveService {
* @return
*/
private
BusTemperature
fromWeatherMi
(
String
code
)
{
// log.info("---------------进入方法---------------");
// BusTemperature busTemp = new BusTemperature();
// CloseableHttpClient httpCilent2 = HttpClients.createDefault();
// RequestConfig requestConfig = RequestConfig.custom()
// .setConnectTimeout(5000) //设置连接超时时间
// .setConnectionRequestTimeout(5000) // 设置请求超时时间
// .setSocketTimeout(5000)
// .setRedirectsEnabled(true)//默认允许自动重定向
// .build();
// HttpGet httpGet2 = new HttpGet(String.format("http://weatherapi.market.xiaomi.com/wtr-v2/temp/realtime?cityId=%s", code));
// httpGet2.setConfig(requestConfig);
// try {
// HttpResponse httpResponse = httpCilent2.execute(httpGet2);
// log.info("---------------获得数据---------------");
// if(httpResponse.getStatusLine().getStatusCode() == 200){
// String srtResult = EntityUtils.toString(httpResponse.getEntity());//获得返回的结果
// System.out.println(srtResult);
// JSONObject jsonResult = JSONObject.parseObject(srtResult);
// JSONObject weather = (JSONObject) jsonResult.get("weatherinfo");
// //温度
// BigDecimal temp = new BigDecimal((String) weather.get("temp"));
// //时间
// Integer hour = Integer.parseInt(((String) weather.get("time")).split(":")[0]);
// Date time = DateUtils.setHours(new Date(), hour);
// time = DateUtils.setMinutes(time, 0);
// time = DateUtils.setSeconds(time, 0);
// //赋值对象
// busTemp.setCode(code);
// busTemp.setTm(time);
// busTemp.setTemperature(temp);
// }
// } catch (IOException e) {
// e.printStackTrace();
// }finally {
// try {
// httpCilent2.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
BusTemperature
busTemp
=
new
BusTemperature
();
//得到小米天气信息
JSONObject
weather
=
this
.
getWeatherMessage
(
code
);
...
...
@@ -455,42 +405,4 @@ public class AdaptiveServiceImpl implements AdaptiveService {
return
ip
;
}
public
static
void
main
(
String
[]
args
)
{
String
aaa
=
"abcd"
;
System
.
out
.
println
(
StringUtils
.
substring
(
aaa
,
0
,
aaa
.
length
()
-
1
));
//
// List<BusTemperature> resultList = new ArrayList<>();
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// String apiUrl = String.format("http://weatherapi.market.xiaomi.com/wtr-v2/temp/realtime?cityId=%s", "101030100");
// URL url = null;
// URLConnection open = null;
// InputStream input = null;
// try {
// //开始请求
// url = new URL(apiUrl);
// open = url.openConnection();
// input = open.getInputStream();
// //变成string
// String result = IOUtils.toString(input);
// System.out.println(result);
// JSONObject jsonResult = JSONObject.parseObject(result);
// JSONObject weather = (JSONObject) jsonResult.get("weatherinfo");
// String time = (String) weather.get("time");
// Integer hour = Integer.parseInt(time.split(":")[0]);
// Date date = DateUtils.setHours(new Date(), hour);
// date = DateUtils.setMinutes(date, 0);
// date = DateUtils.setSeconds(date, 0);
// System.out.println(sdf.format(date));
// System.out.println(weather.get("temp"));
// } catch (Exception e) {
// e.printStackTrace();
// } finally {
// try {
// input.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
}
}
src/main/java/org/rcisoft/business/overview/service/impl/OverViewServiceImpl.java
View file @
56a572f3
...
...
@@ -124,12 +124,6 @@ public class OverViewServiceImpl implements OverViewService {
}
}
public
static
void
main
(
String
[]
args
){
OverViewServiceImpl
o
=
new
OverViewServiceImpl
();
Map
<
String
,
String
>
time
=
o
.
getTime
(
2018
,
null
,
null
,
-
1
,
0
,
0
);
System
.
out
.
println
(
time
.
get
(
"year"
)
+
"-"
+
time
.
get
(
"month"
)
+
"-"
+
time
.
get
(
"day"
));
}
private
String
getType
(
String
type
)
{
switch
(
type
)
{
case
"1"
:
//水
...
...
@@ -531,7 +525,6 @@ public class OverViewServiceImpl implements OverViewService {
@Transactional
(
propagation
=
Propagation
.
REQUIRED
,
isolation
=
Isolation
.
DEFAULT
)
@Override
public
PersistModel
statEnergyMonthly
()
{
System
.
out
.
println
(
"---------------------start--------------------"
);
int
result
=
0
;
//需要更新或保存的list
List
<
BusProjectAreaStat
>
resultList
=
new
ArrayList
<
BusProjectAreaStat
>();
...
...
@@ -593,7 +586,6 @@ public class OverViewServiceImpl implements OverViewService {
}
result
+=
i
;
}
System
.
out
.
println
(
"---------------------end--------------------"
);
return
new
PersistModel
(
result
);
}
...
...
src/main/java/org/rcisoft/core/util/DecryptDBPasswordUtility.java
View file @
56a572f3
...
...
@@ -31,16 +31,6 @@ public class DecryptDBPasswordUtility {
private
static
final
String
DEFAULT_PRIVATE_KEY_STRING
=
"MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAocbCrurZGbC5GArEHKlAfDSZi7gFBnd4yxOt0rwTqKBFzGyhtQLu5PRKjEiOXVa95aeIIBJ6OhC2f8FjqFUpawIDAQABAkAPejKaBYHrwUqUEEOe8lpnB6lBAsQIUFnQI/vXU4MV+MhIzW0BLVZCiarIQqUXeOhThVWXKFt8GxCykrrUsQ6BAiEA4vMVxEHBovz1di3aozzFvSMdsjTcYRRo82hS5Ru2/OECIQC2fAPoXixVTVY7bNMeuxCP4954ZkXp7fEPDINCjcQDywIgcc8XLkkPcs3Jxk7uYofaXaPbg39wuJpEmzPIxi3k0OECIGubmdpOnin3HuCP/bbjbJLNNoUdGiEmFL5hDI4UdwAdAiEAtcAwbm08bKN7pwwvyqaCBC//VnEWaq39DCzxr+Z2EIk="
;
public
static
final
String
DEFAULT_PUBLIC_KEY_STRING
=
"MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKHGwq7q2RmwuRgKxBypQHw0mYu4BQZ3eMsTrdK8E6igRcxsobUC7uT0SoxIjl1WveWniCASejoQtn/BY6hVKWsCAwEAAQ=="
;
public
static
void
main
(
String
[]
args
)
throws
Exception
{
String
password
=
"root"
;
String
decryptPassword
=
"P0yOB2GZpjo3ufAFp6K0eiJhoe2HJdenIV7ostZaSklUBpD9DN5Ffm/GZcsjc2GPnzYn2y/oHUKcqrMglgEf9Q=="
;
// String[] arr = genKeyPair(512);
// System.out.println("privateKey:" + arr[0]);
// System.out.println("publicKey:" + arr[1]);
System
.
out
.
println
(
"encrypt-password:"
+
encrypt
(
DEFAULT_PRIVATE_KEY_STRING
,
password
));
System
.
out
.
println
(
"decrypt-password:"
+
decrypt
(
DEFAULT_PUBLIC_KEY_STRING
,
decryptPassword
));
}
public
static
String
decrypt
(
String
cipherText
)
throws
Exception
{
return
decrypt
((
String
)
null
,
cipherText
);
}
...
...
src/main/java/org/rcisoft/core/util/QRCodeUtils.java
View file @
56a572f3
...
...
@@ -133,7 +133,6 @@ public class QRCodeUtils {
String
filepathStr
=
filePath
+
"/"
+
fileNameList
.
get
(
i
)+
"."
+
FORMAT_NAME
;
//开始写文件啦
ImageIO
.
write
(
QRCodeImage
,
FORMAT_NAME
,
new
File
(
filepathStr
));
System
.
out
.
println
(
"当前输出第"
+(
i
+
1
)+
"个,共计:"
+
dataList
.
size
()+
"个"
);
}
return
"SUCCESS"
;
}
else
{
...
...
@@ -190,7 +189,6 @@ public class QRCodeUtils {
String
filepathStr
=
filePath
+
"/"
+
fileNameList
.
get
(
i
)+
"."
+
FORMAT_NAME
;
//开始写文件啦
ImageIO
.
write
(
backGroundImage
,
FORMAT_NAME
,
new
File
(
filepathStr
));
System
.
out
.
println
(
"当前输出第"
+(
i
+
1
)+
"个,共计:"
+
dataList
.
size
()+
"个"
);
}
return
"SUCCESS"
;
}
else
{
...
...
src/main/java/org/rcisoft/core/util/RegexValidateUtil.java
View file @
56a572f3
...
...
@@ -12,10 +12,7 @@ import java.util.regex.Pattern;
*
*/
public
class
RegexValidateUtil
{
// public static void main(String[] args) {
// System.out.println(checkEmail("14_8@qw.df"));
// System.out.println(checkMobileNumber("071-3534452"));
// }
/**
* 验证邮箱
* @param email
...
...
src/main/java/org/rcisoft/core/util/ZipCompress.java
View file @
56a572f3
...
...
@@ -41,23 +41,4 @@ public class ZipCompress implements Serializable {
zip
.
execute
();
}
/**
* @param args
*/
public
static
void
main
(
String
[]
args
)
{
// TODO Auto-generated method stub
ZipCompress
book
=
new
ZipCompress
();
try
{
book
.
compressExe
(
"/working/virtualDirectory/projectFiles/family/upload/codegenerate/0d76004eccb54b03ab9a07de145f520e/20170706224325/"
,
"/working/ZipTestCompressing.zip"
);
}
catch
(
Exception
e
)
{
// TODO Auto-generated catch block
e
.
printStackTrace
();
}
}
}
src/main/java/org/rcisoft/mqttclient/ClientMQTT.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
.
mqttclient
;
import
java.util.concurrent.ScheduledExecutorService
;
import
org.eclipse.paho.client.mqttv3.MqttClient
;
import
org.eclipse.paho.client.mqttv3.MqttConnectOptions
;
import
org.eclipse.paho.client.mqttv3.MqttException
;
import
org.eclipse.paho.client.mqttv3.MqttTopic
;
import
org.eclipse.paho.client.mqttv3.persist.MemoryPersistence
;
/**
* 模拟一个客户端接收消息
* @author rao
*
*/
public
class
ClientMQTT
{
public
static
final
String
HOST
=
"tcp://106.2.4.91:61613"
;
public
static
final
String
TOPIC1
=
"UPDATA"
;
private
static
final
String
clientid
=
"mqttjs_c3567e038c"
;
private
MqttClient
client
;
private
MqttConnectOptions
options
;
private
String
userName
=
"admin"
;
//非必须
private
String
passWord
=
"password"
;
//非必须
@SuppressWarnings
(
"unused"
)
private
ScheduledExecutorService
scheduler
;
public
void
start
()
{
try
{
// host为主机名,clientid即连接MQTT的客户端ID,一般以唯一标识符表示,MemoryPersistence设置clientid的保存形式,默认为以内存保存
client
=
new
MqttClient
(
HOST
,
clientid
,
new
MemoryPersistence
());
// MQTT的连接设置
options
=
new
MqttConnectOptions
();
// 设置是否清空session,这里如果设置为false表示服务器会保留客户端的连接记录,设置为true表示每次连接到服务器都以新的身份连接
options
.
setCleanSession
(
false
);
// 设置连接的用户名
options
.
setUserName
(
userName
);
// 设置连接的密码
options
.
setPassword
(
passWord
.
toCharArray
());
// 设置超时时间 单位为秒
options
.
setConnectionTimeout
(
10
);
// 设置会话心跳时间 单位为秒 服务器会每隔1.5*20秒的时间向客户端发送个消息判断客户端是否在线,但这个方法并没有重连的机制
options
.
setKeepAliveInterval
(
60
);
// 设置回调
client
.
setCallback
(
new
PushCallback
());
MqttTopic
topic
=
client
.
getTopic
(
TOPIC1
);
//setWill方法,如果项目中需要知道客户端是否掉线可以调用该方法。设置最终端口的通知消息
//遗嘱 options.setWill(topic, "close".getBytes(), 2, true);
client
.
connect
(
options
);
//订阅消息
int
[]
Qos
=
{
1
};
String
[]
topic1
=
{
TOPIC1
};
client
.
subscribe
(
topic1
,
Qos
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
public
static
void
main
(
String
[]
args
)
throws
MqttException
{
ClientMQTT
client
=
new
ClientMQTT
();
client
.
start
();
}
}
src/main/java/org/rcisoft/mqttclient/MqttClient.java
deleted
100644 → 0
View file @
2348e964
This diff is collapsed.
Click to expand it.
src/main/java/org/rcisoft/mqttclient/PushCallback.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
.
mqttclient
;
import
org.eclipse.paho.client.mqttv3.IMqttDeliveryToken
;
import
org.eclipse.paho.client.mqttv3.MqttCallback
;
import
org.eclipse.paho.client.mqttv3.MqttMessage
;
/**
* 发布消息的回调类
*
* 必须实现MqttCallback的接口并实现对应的相关接口方法CallBack 类将实现 MqttCallBack。
* 每个客户机标识都需要一个回调实例。在此示例中,构造函数传递客户机标识以另存为实例数据。
* 在回调中,将它用来标识已经启动了该回调的哪个实例。
* 必须在回调类中实现三个方法:
*
* public void messageArrived(MqttTopic topic, MqttMessage message)接收已经预订的发布。
*
* public void connectionLost(Throwable cause)在断开连接时调用。
*
* public void deliveryComplete(MqttDeliveryToken token))
* 接收到已经发布的 QoS 1 或 QoS 2 消息的传递令牌时调用。
* 由 MqttClient.connect 激活此回调。
*
*/
public
class
PushCallback
implements
MqttCallback
{
public
void
connectionLost
(
Throwable
cause
)
{
//mqtt.connect();
// 连接丢失后,一般在这里面进行重连
System
.
out
.
println
(
"连接断开,可以做重连"
);
}
public
void
deliveryComplete
(
IMqttDeliveryToken
token
)
{
System
.
out
.
println
(
"deliveryComplete---------"
+
token
.
isComplete
());
}
public
void
messageArrived
(
String
topic
,
MqttMessage
message
)
throws
Exception
{
// subscribe后得到的消息会执行到这里面
System
.
out
.
println
(
"接收消息主题 : "
+
topic
);
System
.
out
.
println
(
"接收消息Qos : "
+
message
.
getQos
());
System
.
out
.
println
(
"接收消息内容 : "
+
new
String
(
message
.
getPayload
()));
}
}
src/main/java/org/rcisoft/mqttclient/ReceiveDataHandle.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
.
mqttclient
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
org.rcisoft.business.totaloriginal.entity.TotalOriginal
;
import
org.rcisoft.business.totaloriginal.entity.TotalSensor
;
import
org.rcisoft.business.totaloriginal.service.TotalOriginalService
;
import
org.rcisoft.core.service.RcRedisService
;
import
org.rcisoft.core.util.DateUtil
;
import
org.rcisoft.core.util.ZhnyUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.*
;
@Component
public
class
ReceiveDataHandle
{
@Autowired
private
RcRedisService
rcRedisService
;
@Autowired
private
TotalOriginalService
totalOriginalServiceImpl
;
/*public void HandleReceive(String content){
Map<String,Object> referMap = totalOriginalServiceImpl.queryBusParamRefer(null);
String devStr = "";
try {
JSONObject jb = JSONArray.parseObject(content.substring(1,content.length()-1));
String jwnum = jb.getString("PHONE");//网关编号
devStr = totalOriginalServiceImpl.queryDevByPro(jwnum);
//String time = jb.getString("TIME");//时间
String time = DateUtil.getSimepleDate("yyyyMMddHHmmss",new Date());
if(DateUtil.getParseDate("yyyyMMddhhmmss",time)!=null){//时间格式正常
String minute = time.substring(10,12);
String sec = time.substring(12,14);
*//* 10秒级的数据,存储缓存
* 缓存中始终保持最新两条网关数据
* 用作拓扑图点击设备查看实时参数及10秒级的能耗
*//*
if(Integer.parseInt(sec)%10==0){
//rcRedisService.set("old","old"+new Date() + rcRedisService.get("new"));
//rcRedisService.set("new","new"+new Date() + content);
}
System.out.println("++++++++++++++++++++++++++++++++++"+minute+"-----"+sec);
if(Integer.parseInt(minute)%2==0 && sec.equalsIgnoreCase("00")){//10分钟级的数据,进行存储
List<String> list = new ArrayList<String>();
JSONObject jbody = jb.getJSONObject("body");//数据体
List<TotalOriginal> originalList = new ArrayList<>();
List<TotalSensor> sensorList = new ArrayList<>();
//遍历数据体内对象
for (Map.Entry<String, Object> entry : jbody.entrySet()) {
String key = entry.getKey();
JSONObject body = (JSONObject)entry.getValue();
String dev_num = jwnum+"_"+key;
//(【已配置的表具】/【设备】)
if(referMap.get(dev_num)!=null || devStr.contains(dev_num)){
TotalOriginal original = new TotalOriginal();
original.setProId(jwnum);
original.setTm(DateUtil.getParseDate("yyyy-MM-dd HH:mm:ss",time));
original.setDevNum(dev_num);
*//**
* 摘选水电气能耗,对于设备来说,都为null
*//*
if(devStr.contains(dev_num)){//设备
original.setElecV(null);
original.setWaterV(null);
original.setGasV(null);
}else{//表具
String own_param = referMap.get(dev_num).toString().split(",")[0];
String other_param = referMap.get(dev_num).toString().split(",")[1];
if(own_param.equalsIgnoreCase("power")){
original.setElecV(ZhnyUtil.parseFloat(body.get(other_param)));
original.setWaterV(0f);
original.setGasV(0f);
}else if(own_param.equalsIgnoreCase("water")){
original.setElecV(0f);
original.setWaterV(ZhnyUtil.parseFloat(body.get(other_param)));
original.setGasV(0f);
}else if(own_param.equalsIgnoreCase("gas")){
original.setElecV(0f);
original.setWaterV(0f);
original.setGasV(ZhnyUtil.parseFloat(body.get(other_param)));
}
}
int i=4;
for (Map.Entry<String, Object> bt : body.entrySet()) {
if(i==4){ original.setP4(bt.getKey());original.setP4V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==5){ original.setP5(bt.getKey());original.setP5V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==6){ original.setP6(bt.getKey());original.setP6V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==7){ original.setP7(bt.getKey());original.setP7V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==8){ original.setP8(bt.getKey());original.setP8V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==9){ original.setP9(bt.getKey());original.setP9V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==10){ original.setP10(bt.getKey());original.setP10V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==11){ original.setP11(bt.getKey());original.setP11V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==12){ original.setP12(bt.getKey());original.setP12V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==13){ original.setP13(bt.getKey());original.setP13V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==14){ original.setP14(bt.getKey());original.setP14V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==15){ original.setP15(bt.getKey());original.setP15V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==16){ original.setP16(bt.getKey());original.setP16V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==17){ original.setP17(bt.getKey());original.setP17V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==18){ original.setP18(bt.getKey());original.setP18V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==19){ original.setP19(bt.getKey());original.setP19V(ZhnyUtil.parseFloat(bt.getValue())); }
if(i==20){ original.setP20(bt.getKey());original.setP20V(ZhnyUtil.parseFloat(bt.getValue())); }
i++;
}
originalList.add(original);
}else{//【传感器】
TotalSensor sensor = new TotalSensor();
sensor.setTm(DateUtil.getParseDate("yyyy-MM-dd HH:mm:ss",time));
sensor.setSensorJson(body.toJSONString());
sensorList.add(sensor);
}
for(TotalOriginal t : originalList){
totalOriginalServiceImpl.save(t);
}
for(TotalSensor s : sensorList){
totalOriginalServiceImpl.saveSensor(s);
}
}
}
}
//System.out.println(jb);
}catch(Exception e){
e.printStackTrace();
}
}*/
}
src/main/java/org/rcisoft/mqttclient/Test.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
.
mqttclient
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
org.rcisoft.business.totaloriginal.entity.TotalOriginal
;
import
org.rcisoft.core.util.DateUtil
;
import
org.rcisoft.core.util.ZhnyUtil
;
import
java.lang.*
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
public
class
Test
{
public
static
void
main
(
String
[]
args
)
throws
Exception
{
/* SimpleDateFormat simple = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(simple.format(new Date()).substring(0,4));
System.out.println(ZhnyUtil.isNumeric("3.6"));
String param = "sensor_01";
System.out.println(param.substring(param.indexOf("_"),param.length()));*/
System
.
out
.
println
(
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
));
System
.
out
.
println
(
"2018-06-01 10:20:00"
.
substring
(
11
));
}
}
src/main/java/org/rcisoft/test/CityCodeTest.java
deleted
100644 → 0
View file @
2348e964
package
org
.
rcisoft
.
test
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
org.apache.commons.io.FileUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.junit.runner.RunWith
;
import
org.rcisoft.business.manage.dao.SysCityRepository
;
import
org.rcisoft.business.manage.entity.SysCity
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.annotation.Rollback
;
import
org.springframework.test.context.junit4.SpringRunner
;
import
org.springframework.transaction.annotation.Transactional
;
import
tk.mybatis.mapper.entity.Example
;
import
java.io.*
;
import
java.util.List
;
/**
* Created by JiChao on 2018/5/7.
*/
@SpringBootTest
@RunWith
(
SpringRunner
.
class
)
public
class
CityCodeTest
{
@Autowired
private
SysCityRepository
sysCityRepository
;
@org
.
junit
.
Test
@Transactional
// @Rollback(false)
public
void
importCityCode
()
throws
IOException
{
int
[]
result
=
{
0
};
System
.
out
.
println
(
"-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*"
);
//读取txt文件
String
sb
=
FileUtils
.
readFileToString
(
new
File
(
"C:\\Users\\JiChao\\Desktop\\城市代码.txt"
),
"GB2312"
);
//json对象
JSONArray
codeJsonArray
=
JSON
.
parseArray
(
sb
);
//所有城市
List
<
SysCity
>
cityList
=
sysCityRepository
.
selectAll
();
cityList
.
forEach
(
sysCity
->
{
String
cityName
=
sysCity
.
getName
();
codeJsonArray
.
forEach
(
object
->
{
JSONObject
codeJsonObject
=
(
JSONObject
)
object
;
String
codeName
=
(
String
)
codeJsonObject
.
get
(
"townName"
);
if
(
StringUtils
.
equals
(
cityName
,
codeName
))
{
String
code
=
(
String
)
codeJsonObject
.
get
(
"townID"
);
sysCity
.
setCode
(
code
);
Example
e
=
new
Example
(
SysCity
.
class
);
e
.
createCriteria
().
andEqualTo
(
"id"
,
sysCity
.
getId
());
result
[
0
]
+=
sysCityRepository
.
updateByExample
(
sysCity
,
e
);
return
;
}
});
});
System
.
out
.
println
(
"最终更新结果:"
+
result
[
0
]
+
"条记录"
);
}
}
src/main/java/org/rcisoft/wechat/WechatRedirectController.java
View file @
56a572f3
...
...
@@ -61,8 +61,6 @@ public class WechatRedirectController {
try
{
WxMpUser
wxUser
=
this
.
service
.
oauth2UserInfo
(
code
);
System
.
out
.
println
(
"微信返回的code: "
+
code
);
System
.
out
.
println
(
"WxPortalController授权完毕后获取到的OpenId是:"
+
wxUser
.
getOpenId
());
return
"redirect:http://www.renew-cloud.com/wechat/login.html?openId="
+
wxUser
.
getOpenId
();
}
catch
(
Exception
exception
)
{
exception
.
printStackTrace
();
...
...
src/main/java/org/rcisoft/wechat/service/WxPortalService.java
View file @
56a572f3
...
...
@@ -47,7 +47,6 @@ public class WxPortalService extends WxMpServiceImpl {
}
public
WxMpOAuth2AccessToken
oauth2AccessToken
(
String
code
)
throws
WxErrorException
{
WxMpOAuth2AccessToken
token
=
this
.
oauth2getAccessToken
(
code
);
System
.
out
.
println
(
"token:"
+
token
.
getAccessToken
()
+
"; code: "
+
code
);
return
token
;
}
public
WxMpUser
oauth2UserInfo
(
String
code
)
throws
WxErrorException
{
...
...
Write
Preview
Markdown
is supported
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