Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
8f770e79
提交
8f770e79
authored
10月 12, 2023
作者:
liuhaiquan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
提交全量运单监控部分代码
上级
d7a39aa6
全部展开
显示空白字符变更
内嵌
并排
正在显示
18 个修改的文件
包含
416 行增加
和
8 行删除
+416
-8
PageMonitorOrderChildQCParam.java
...lx/performance/param/pc/PageMonitorOrderChildQCParam.java
+31
-0
OutputMonitorOrderChildVO.java
.../com/clx/performance/vo/pc/OutputMonitorOrderChildVO.java
+79
-0
RedisConstants.java
...ain/java/com/clx/performance/constant/RedisConstants.java
+3
-0
CarrierOrderChildController.java
...erformance/controller/pc/CarrierOrderChildController.java
+11
-4
GoodsOrderMapController.java
...lx/performance/controller/pc/GoodsOrderMapController.java
+6
-0
OrderChildDao.java
.../src/main/java/com/clx/performance/dao/OrderChildDao.java
+8
-0
OrderChildDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
+34
-0
OrderChildExpectDTO.java
...ain/java/com/clx/performance/dto/OrderChildExpectDTO.java
+26
-0
GdPosDTO.java
...eb/src/main/java/com/clx/performance/dto/gd/GdPosDTO.java
+24
-0
GdRouteDTO.java
.../src/main/java/com/clx/performance/dto/gd/GdRouteDTO.java
+33
-0
OrderChildExpectTimeJob.java
...java/com/clx/performance/job/OrderChildExpectTimeJob.java
+35
-0
OrderChild.java
...b/src/main/java/com/clx/performance/model/OrderChild.java
+4
-0
GoodsOrderMapService.java
...ava/com/clx/performance/service/GoodsOrderMapService.java
+2
-0
OrderChildService.java
...n/java/com/clx/performance/service/OrderChildService.java
+7
-0
GoodsOrderMapServiceImpl.java
...lx/performance/service/impl/GoodsOrderMapServiceImpl.java
+9
-0
OrderChildServiceImpl.java
...m/clx/performance/service/impl/OrderChildServiceImpl.java
+0
-0
HttpUtils.java
...eb/src/main/java/com/clx/performance/utils/HttpUtils.java
+104
-4
GdService.java
...src/main/java/com/clx/performance/utils/gd/GdService.java
+0
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/param/pc/PageMonitorOrderChildQCParam.java
0 → 100644
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.base.PageParam
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
javax.validation.constraints.NotNull
;
import
java.util.List
;
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
PageMonitorOrderChildQCParam
extends
PageParam
{
@ApiModelProperty
(
value
=
"发货地址"
)
private
Integer
sendAddressId
;
@ApiModelProperty
(
value
=
"车牌号"
)
private
String
truckNo
;
@NotNull
(
message
=
"运单状态不能为空"
)
@ApiModelProperty
(
value
=
"运单状态 10:已接单 20:支付 30:前往货源地 40:到达货源地 50:装货成功 60:前往目的地 70:到达目的地 80:收货待确认 90:待结算 100:完成 110:司机取消 111:承运取消 112:货主取消 "
)
private
List
<
Integer
>
status
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/OutputMonitorOrderChildVO.java
0 → 100644
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
vo
.
pc
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.math.BigDecimal
;
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
OutputMonitorOrderChildVO
{
@ApiModelProperty
(
value
=
"发货地址"
)
private
String
sendAddress
;
@ApiModelProperty
(
value
=
"发货地址Id"
)
private
Integer
sendAddressId
;
@ApiModelProperty
(
value
=
"状态 运单状态 10:已接单 20:支付 30:前往货源地 40:到达货源地 50:装货成功 60:前往目的地 70:到达目的地 80:收货待确认 90:待结算 100:完成 110:司机取消 111:承运取消 112:货主取消 "
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"预计到货源地时间"
)
private
String
expectArriveTime
;
@ApiModelProperty
(
value
=
"预计到货源地时间-实时"
)
private
String
expectArriveTimeRealTime
;
@ApiModelProperty
(
value
=
"预计到货源地趋势 0 前进 1 后退"
)
private
Integer
arriveTrend
;
@ApiModelProperty
(
value
=
"预计到收货地时间"
)
private
String
expectReceiveTime
;
@ApiModelProperty
(
value
=
"预计到收货地时间-实时"
)
private
String
expectReceiveTimeRealTime
;
@ApiModelProperty
(
value
=
"预计到收货地趋势 0 前进 1 后退"
)
private
Integer
receiveTrend
;
@ApiModelProperty
(
value
=
"预计运输时间"
)
private
String
expectTransportTime
;
@ApiModelProperty
(
value
=
"装车预警 0 不预警 1 预警"
)
private
Integer
loadWarning
;
@ApiModelProperty
(
value
=
"货源地预警 0 不预警 1 预警"
)
private
Integer
arriveWarning
;
@ApiModelProperty
(
value
=
"收货地预警 0 不预警 1 预警"
)
private
Integer
receiveWarning
;
@ApiModelProperty
(
value
=
"车牌号"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"司机姓名"
)
private
String
driverName
;
@ApiModelProperty
(
value
=
"司机手机号"
)
private
String
driverMobile
;
@ApiModelProperty
(
value
=
"装车吨数"
)
private
BigDecimal
loadNet
;
@ApiModelProperty
(
value
=
"接单时间"
)
private
String
payTime
;
@ApiModelProperty
(
value
=
"装车时间"
)
private
String
loadTime
;
@ApiModelProperty
(
value
=
"运单号"
)
private
String
childNo
;
}
performance-web/src/main/java/com/clx/performance/constant/RedisConstants.java
浏览文件 @
8f770e79
...
...
@@ -8,6 +8,9 @@ public class RedisConstants {
public
static
final
String
ORDER_GOODS_ID_GENERATE
=
"clx-performance:orderGoodsId:generate"
;
public
static
final
String
ZJXL_TRUCK_TRACE_LIST
=
"clx-performance:zjxl_truck_trace_list:"
;
public
static
final
String
ORDER_CHILD_EXPECT_TIME_DATA
=
"clx-performance:order_child_expect_time_data:"
;
public
static
final
String
ORDER_CHILD_EXPECT_TIME_DATA_KEY_MAP
=
"clx-performance:order_child_expect_time_data_key_map:"
;
public
static
final
String
ZJXL_LAST_PULL_TRUCK
=
"clx-performance:zjxl_last_time_pull_truck:"
;
...
...
performance-web/src/main/java/com/clx/performance/controller/pc/CarrierOrderChildController.java
浏览文件 @
8f770e79
...
...
@@ -2,14 +2,12 @@ package com.clx.performance.controller.pc;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.param.pc.PageMonitorOrderChildQCParam
;
import
com.clx.performance.param.pc.OrderChildCarrierCancelParam
;
import
com.clx.performance.param.pc.PageCarrierOrderChildParam
;
import
com.clx.performance.service.OrderChildPoundAuditService
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.vo.pc.CarrierOrderChildDetailVO
;
import
com.clx.performance.vo.pc.OrderChildBussInfoVO
;
import
com.clx.performance.vo.pc.OrderChildStatusVO
;
import
com.clx.performance.vo.pc.PageCarrierOrderChildVO
;
import
com.clx.performance.vo.pc.*
;
import
com.msl.common.base.PageData
;
import
com.msl.common.convertor.aspect.UnitCovert
;
import
com.msl.common.result.Result
;
...
...
@@ -87,4 +85,13 @@ public class CarrierOrderChildController {
return
Result
.
ok
(
orderChildService
.
getOrderChildBussInfo
(
truckNo
));
}
@ApiOperation
(
value
=
"全量运单监控预警列表"
,
notes
=
"<br>By:刘海泉"
)
@RequestMapping
(
value
=
"/getMonitorOrerChildListsByParam"
,
method
=
RequestMethod
.
POST
)
public
Result
<
PageData
<
OutputMonitorOrderChildVO
>>
getMonitorOrerChildListsByParam
(
@RequestBody
PageMonitorOrderChildQCParam
param
)
{
IPage
<
OutputMonitorOrderChildVO
>
page
=
orderChildService
.
getMonitorOrerChildListsByParam
(
param
);
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/GoodsOrderMapController.java
浏览文件 @
8f770e79
...
...
@@ -47,6 +47,12 @@ public class GoodsOrderMapController {
}
@ApiOperation
(
value
=
"获取货单车辆"
,
notes
=
"<br>By:刘海泉"
)
@GetMapping
(
"/getPlatformTruckCoordinate"
)
public
Result
<
List
<
String
>>
getOrderChildTruckByOrderNo
(
String
orderNo
)
{
return
Result
.
ok
(
goodsOrderMapService
.
getOrderChildTruckByOrderNo
(
orderNo
));
}
...
...
performance-web/src/main/java/com/clx/performance/dao/OrderChildDao.java
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
dao
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.mapper.OrderChildMapper
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.param.app.PageOrderChildOfDriverParam
;
import
com.clx.performance.param.app.PageOrderChildOfDriverSearchParam
;
import
com.clx.performance.param.pc.PageCarrierOrderChildParam
;
import
com.clx.performance.param.pc.PageMonitorOrderChildQCParam
;
import
com.clx.performance.param.pc.PagePoundAuditParam
;
import
com.clx.performance.vo.app.OrderChildVO
;
import
com.clx.performance.vo.pc.PageCarrierOrderChildVO
;
...
...
@@ -56,4 +58,10 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
Integer
getOrderChildTotalByUserNo
(
Long
userNo
);
List
<
OrderChild
>
getOrderChildBussInfo
(
String
truckNo
);
Page
<
OrderChild
>
pageOrderChild
(
PageMonitorOrderChildQCParam
param
);
List
<
OrderChild
>
listOrderChild
(
List
<
Integer
>
status
);
List
<
OrderChild
>
getOrderChildByOrderNo
(
String
orderNo
);
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
浏览文件 @
8f770e79
...
...
@@ -10,16 +10,19 @@ import com.clx.performance.model.OrderChild;
import
com.clx.performance.param.app.PageOrderChildOfDriverParam
;
import
com.clx.performance.param.app.PageOrderChildOfDriverSearchParam
;
import
com.clx.performance.param.pc.PageCarrierOrderChildParam
;
import
com.clx.performance.param.pc.PageMonitorOrderChildQCParam
;
import
com.clx.performance.param.pc.PagePoundAuditParam
;
import
com.clx.performance.vo.app.OrderChildVO
;
import
com.clx.performance.vo.pc.PageCarrierOrderChildVO
;
import
com.clx.performance.vo.pc.PageOrderChildPoundAuditVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Repository
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.Objects
;
/**
* @Author: aiqinguo
...
...
@@ -198,6 +201,37 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
return
baseMapper
.
selectCount
(
query
).
intValue
();
}
@Override
public
Page
<
OrderChild
>
pageOrderChild
(
PageMonitorOrderChildQCParam
param
)
{
LambdaQueryWrapper
<
OrderChild
>
query
=
new
LambdaQueryWrapper
();
if
(
StringUtils
.
isNotBlank
(
param
.
getTruckNo
())){
query
.
eq
(
OrderChild
::
getTruckNo
,
param
.
getTruckNo
());
}
if
(
Objects
.
nonNull
(
param
.
getSendAddressId
())){
query
.
eq
(
OrderChild
::
getSendAddressId
,
param
.
getSendAddressId
());
}
query
.
in
(
OrderChild
::
getStatus
,
param
.
getStatus
());
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
}
@Override
public
List
<
OrderChild
>
getOrderChildByOrderNo
(
String
orderNo
)
{
LambdaQueryWrapper
<
OrderChild
>
query
=
new
LambdaQueryWrapper
();
query
.
in
(
OrderChild
::
getOrderNo
,
orderNo
);
return
baseMapper
.
selectList
(
query
);
}
@Override
public
List
<
OrderChild
>
listOrderChild
(
List
<
Integer
>
status
)
{
LambdaQueryWrapper
<
OrderChild
>
query
=
new
LambdaQueryWrapper
();
query
.
in
(
OrderChild
::
getStatus
,
status
);
return
baseMapper
.
selectList
(
query
);
}
@Override
public
List
<
OrderChild
>
getOrderChildBussInfo
(
String
truckNo
)
{
LambdaQueryWrapper
<
OrderChild
>
query
=
new
LambdaQueryWrapper
();
...
...
performance-web/src/main/java/com/clx/performance/dto/OrderChildExpectDTO.java
0 → 100644
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
dto
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
OrderChildExpectDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
String
childNo
;
//子订单编号
private
LocalDateTime
expectArriveTime
;
//预计到达货源地时间
private
Integer
expectArriveTimeSecond
;
//预计到达货源地时间
private
LocalDateTime
expectReceiveTime
;
//预计到达目的地时间
private
Integer
expectReceiveTimeSecond
;
//预计到达目的地时间
private
Integer
expectTransportTimeSecond
;
//预计运输时间
}
performance-web/src/main/java/com/clx/performance/dto/gd/GdPosDTO.java
0 → 100644
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
dto
.
gd
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @Author: aiqingguo
* @Description:
* @Date: 2023/2/28 12:00
* @Version: 1.0
*/
@Data
public
class
GdPosDTO
{
@ApiModelProperty
(
value
=
"经度"
,
example
=
"116.0000000000"
)
private
BigDecimal
longitude
;
@ApiModelProperty
(
value
=
"纬度"
,
example
=
"39.0000000000"
)
private
BigDecimal
latitude
;
@ApiModelProperty
(
value
=
"耗时(秒)"
,
example
=
"278"
)
private
Integer
duration
;
}
performance-web/src/main/java/com/clx/performance/dto/gd/GdRouteDTO.java
0 → 100644
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
dto
.
gd
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.util.List
;
/**
* @Author: aiqingguo
* @Description: 收发货地址线路
* @Date: 2023/2/28 11:02
* @Version: 1.0
*/
@Getter
@Setter
@ToString
@NoArgsConstructor
@ApiModel
(
description
=
"高德线路规划"
)
public
class
GdRouteDTO
{
@ApiModelProperty
(
value
=
"距离(m)"
,
example
=
"1"
)
private
Integer
distance
;
@ApiModelProperty
(
value
=
"时间s"
,
example
=
"1"
)
private
Integer
duration
;
@ApiModelProperty
(
value
=
"线路轨迹"
)
private
List
<
GdPosDTO
>
posList
;
}
performance-web/src/main/java/com/clx/performance/job/OrderChildExpectTimeJob.java
0 → 100644
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
job
;
import
com.clx.performance.service.OrderChildService
;
import
com.msl.common.job.JobLog
;
import
com.xxl.job.core.handler.annotation.XxlJob
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.exception.ExceptionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
@Slf4j
@Component
public
class
OrderChildExpectTimeJob
{
@Autowired
OrderChildService
orderChildService
;
/**
* 定时任务计算运单实时位置耗时信息
*/
@XxlJob
(
"orderChildExpect"
)
public
void
orderChildExpect
()
{
try
{
log
.
info
(
"开始实时计算进行中的运单的实时位置计算任务================================================"
);
orderChildService
.
orderChildExpect
();
log
.
info
(
"结束实时计算进行中的运单的实时位置计算任务================================================"
);
}
catch
(
Exception
e
)
{
log
.
warn
(
"定时任务计算进行中的运单的实时位置失败,异常原因:{}"
,
ExceptionUtils
.
getStackTrace
(
e
));
JobLog
.
error
(
"定时任务计算进行中的运单的实时位置失败,异常原因====================="
,
e
);
}
}
}
performance-web/src/main/java/com/clx/performance/model/OrderChild.java
浏览文件 @
8f770e79
...
...
@@ -77,6 +77,10 @@ public class OrderChild implements HasKey<Integer> {
private
LocalDateTime
settleTime
;
//结算时间
private
LocalDateTime
cancelTime
;
//取消时间
private
LocalDateTime
finishTime
;
//完成时间
private
LocalDateTime
expectSendTime
;
//预计到达货源地时间
private
LocalDateTime
expectReceiveTime
;
//预计到达目的地时间
private
LocalDateTime
createTime
;
//创建时间
private
LocalDateTime
modifiedTime
;
//修改时间
...
...
performance-web/src/main/java/com/clx/performance/service/GoodsOrderMapService.java
浏览文件 @
8f770e79
...
...
@@ -11,4 +11,6 @@ public interface GoodsOrderMapService {
List
<
GoodsOrderSendAddressSelect
>
getSendAddressSelect
(
GoodsOrderMapParam
param
);
List
<
TruckCoordinateVO
>
getPlatformTruckCoordinate
();
List
<
String
>
getOrderChildTruckByOrderNo
(
String
orderNo
);
}
performance-web/src/main/java/com/clx/performance/service/OrderChildService.java
浏览文件 @
8f770e79
...
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.clx.performance.param.app.*
;
import
com.clx.performance.param.pc.OrderChildCarrierCancelParam
;
import
com.clx.performance.param.pc.PageCarrierOrderChildParam
;
import
com.clx.performance.param.pc.PageMonitorOrderChildQCParam
;
import
com.clx.performance.param.pc.PagePoundAuditParam
;
import
com.clx.performance.vo.app.*
;
import
com.clx.performance.vo.pc.*
;
...
...
@@ -61,4 +62,10 @@ public interface OrderChildService {
Integer
getOrderChildTotalByUserNo
(
Long
userNo
);
OrderChildBussInfoVO
getOrderChildBussInfo
(
String
truckNo
);
IPage
<
OutputMonitorOrderChildVO
>
getMonitorOrerChildListsByParam
(
PageMonitorOrderChildQCParam
param
);
List
<
String
>
getOrderChildTruckByOrderNo
(
String
orderNo
);
void
orderChildExpect
();
}
performance-web/src/main/java/com/clx/performance/service/impl/GoodsOrderMapServiceImpl.java
浏览文件 @
8f770e79
...
...
@@ -7,6 +7,7 @@ import com.clx.performance.dto.zjxl.TruckCoordinateDTO;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.param.pc.GoodsOrderMapParam
;
import
com.clx.performance.service.GoodsOrderMapService
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.TruckService
;
import
com.clx.performance.vo.pc.Freight
;
import
com.clx.performance.vo.pc.GoodsOrderSendAddressSelect
;
...
...
@@ -40,6 +41,9 @@ public class GoodsOrderMapServiceImpl implements GoodsOrderMapService {
@Autowired
TruckService
truckService
;
@Autowired
OrderChildService
orderChildService
;
@Autowired
(
required
=
false
)
UserClxFeign
userClxFeign
;
...
...
@@ -75,6 +79,11 @@ public class GoodsOrderMapServiceImpl implements GoodsOrderMapService {
return
values
;
}
@Override
public
List
<
String
>
getOrderChildTruckByOrderNo
(
String
orderNo
)
{
return
orderChildService
.
getOrderChildTruckByOrderNo
(
orderNo
);
}
@Override
public
List
<
TruckCoordinateVO
>
getPlatformTruckCoordinate
()
{
List
<
TruckCoordinateVO
>
result
=
new
ArrayList
<>();
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderChildServiceImpl.java
浏览文件 @
8f770e79
差异被折叠。
点击展开。
performance-web/src/main/java/com/clx/performance/utils/HttpUtils.java
浏览文件 @
8f770e79
package
com
.
clx
.
performance
.
utils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.http.HttpEntity
;
import
org.apache.http.HttpResponse
;
import
org.apache.http.NameValuePair
;
import
org.apache.http.ParseException
;
import
org.apache.http.client.ClientProtocolException
;
import
org.apache.http.client.HttpClient
;
import
org.apache.http.client.config.RequestConfig
;
import
org.apache.http.client.entity.UrlEncodedFormEntity
;
import
org.apache.http.client.methods.HttpDelete
;
import
org.apache.http.client.methods.HttpGet
;
import
org.apache.http.client.methods.HttpPost
;
import
org.apache.http.client.methods.HttpPut
;
import
org.apache.http.client.methods.*
;
import
org.apache.http.conn.ClientConnectionManager
;
import
org.apache.http.conn.ConnectTimeoutException
;
import
org.apache.http.conn.scheme.Scheme
;
import
org.apache.http.conn.scheme.SchemeRegistry
;
import
org.apache.http.conn.ssl.SSLSocketFactory
;
import
org.apache.http.entity.ByteArrayEntity
;
import
org.apache.http.entity.StringEntity
;
import
org.apache.http.impl.client.CloseableHttpClient
;
import
org.apache.http.impl.client.DefaultHttpClient
;
import
org.apache.http.impl.client.HttpClients
;
import
org.apache.http.impl.conn.PoolingHttpClientConnectionManager
;
import
org.apache.http.message.BasicNameValuePair
;
import
org.apache.http.util.EntityUtils
;
import
javax.net.ssl.SSLContext
;
import
javax.net.ssl.TrustManager
;
import
javax.net.ssl.X509TrustManager
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.UnsupportedEncodingException
;
import
java.net.SocketTimeoutException
;
import
java.net.URLEncoder
;
import
java.nio.charset.Charset
;
import
java.security.KeyManagementException
;
import
java.security.NoSuchAlgorithmException
;
import
java.security.cert.X509Certificate
;
...
...
@@ -30,8 +41,17 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Map
;
@Slf4j
public
class
HttpUtils
{
private
static
PoolingHttpClientConnectionManager
connectionManager
;
private
static
String
DEFAULT_STR
=
""
;
private
static
String
UTF_8
=
"UTF-8"
;
private
static
final
int
CONNECT_TIMEOUT
=
10000
;
private
static
final
int
SOCKET_TIMEOUT
=
100000
;
private
static
final
int
REQUESTCONNECT_TIMEOUT
=
2000
;
private
static
final
int
MAX_TOTAL
=
50
;
private
static
final
int
CONNECT_DEFAULT_ROUTE
=
5
;
/**
...
...
@@ -307,4 +327,84 @@ public class HttpUtils {
throw
new
RuntimeException
(
ex
);
}
}
public
static
String
httpGetRequest
(
String
url
)
throws
Exception
{
HttpGet
httpGet
=
new
HttpGet
(
url
);
return
getResult
(
httpGet
);
}
private
static
void
init
()
{
if
(
connectionManager
==
null
)
{
connectionManager
=
new
PoolingHttpClientConnectionManager
();
connectionManager
.
setMaxTotal
(
50
);
connectionManager
.
setDefaultMaxPerRoute
(
5
);
}
}
private
static
CloseableHttpClient
getHttpClient
()
{
init
();
RequestConfig
.
Builder
builder
=
RequestConfig
.
custom
();
RequestConfig
config
=
builder
.
setSocketTimeout
(
100000
).
setConnectTimeout
(
10000
).
setConnectionRequestTimeout
(
2000
).
build
();
CloseableHttpClient
client
=
HttpClients
.
custom
().
setMaxConnPerRoute
(
5
).
disableConnectionState
().
setDefaultRequestConfig
(
config
).
setConnectionManager
(
connectionManager
).
build
();
return
client
;
}
private
static
String
getResult
(
HttpRequestBase
request
)
throws
IOException
{
CloseableHttpClient
httpClient
=
getHttpClient
();
CloseableHttpResponse
response
=
null
;
InputStream
in
=
null
;
String
var6
;
try
{
response
=
httpClient
.
execute
(
request
);
HttpEntity
entity
=
response
.
getEntity
();
in
=
response
.
getEntity
().
getContent
();
if
(
entity
==
null
)
{
return
DEFAULT_STR
;
}
String
result
=
EntityUtils
.
toString
(
entity
,
Charset
.
forName
(
UTF_8
));
response
.
close
();
var6
=
result
;
}
catch
(
ConnectTimeoutException
var37
)
{
log
.
error
(
"connect timeout {}"
,
var37
);
return
DEFAULT_STR
;
}
catch
(
SocketTimeoutException
var38
)
{
log
.
error
(
"read timeout {}"
,
var38
);
return
DEFAULT_STR
;
}
catch
(
ClientProtocolException
var39
)
{
log
.
error
(
"protocol exception {}"
,
var39
);
return
DEFAULT_STR
;
}
catch
(
ParseException
var40
)
{
log
.
error
(
"parse exception {}"
,
var40
);
return
DEFAULT_STR
;
}
catch
(
IOException
var41
)
{
log
.
error
(
"network exception {}"
,
var41
);
return
DEFAULT_STR
;
}
catch
(
Exception
var42
)
{
log
.
error
(
"other exception {}"
,
var42
);
return
DEFAULT_STR
;
}
finally
{
if
(
response
!=
null
)
{
try
{
response
.
close
();
}
catch
(
IOException
var36
)
{
var36
.
printStackTrace
();
}
}
if
(
in
!=
null
)
{
try
{
in
.
close
();
}
catch
(
IOException
var35
)
{
var35
.
printStackTrace
();
}
}
}
return
var6
;
}
}
performance-web/src/main/java/com/clx/performance/utils/gd/GdService.java
0 → 100644
浏览文件 @
8f770e79
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论