Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
0e26f79a
Commit
0e26f79a
authored
Aug 25, 2020
by
vega
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:orderSdk:queryRelatedOrderByCode方法改为手动反序列号
parent
cdab2f73
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
22 additions
and
3 deletions
+22
-3
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/service/OrderSdkService.java
+22
-3
No files found.
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/service/OrderSdkService.java
View file @
0e26f79a
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
service
;
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
service
;
import
com.alibaba.fastjson.JSON
;
import
com.freemud.application.sdk.api.base.BaseRequest
;
import
com.freemud.application.sdk.api.base.BaseRequest
;
import
com.freemud.application.sdk.api.ordercenter.config.OrderCenterProperties
;
import
com.freemud.application.sdk.api.ordercenter.config.OrderCenterProperties
;
import
com.freemud.application.sdk.api.ordercenter.constant.InterfaceAddressConstant
;
import
com.freemud.application.sdk.api.ordercenter.constant.InterfaceAddressConstant
;
import
com.freemud.application.sdk.api.ordercenter.constant.ResponseConstant
;
import
com.freemud.application.sdk.api.ordercenter.enums.ResponseResultEnum
;
import
com.freemud.application.sdk.api.ordercenter.enums.ResponseResultEnum
;
import
com.freemud.application.sdk.api.ordercenter.request.*
;
import
com.freemud.application.sdk.api.ordercenter.request.*
;
import
com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderAffirmReq
;
import
com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderAffirmReq
;
...
@@ -20,12 +22,14 @@ import com.freemud.application.sdk.api.ordercenter.util.ResponseUtil;
...
@@ -20,12 +22,14 @@ import com.freemud.application.sdk.api.ordercenter.util.ResponseUtil;
import
com.freemud.application.sdk.api.util.RequestThirdPartyUtils
;
import
com.freemud.application.sdk.api.util.RequestThirdPartyUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.core.ParameterizedTypeReference
;
import
org.springframework.core.ParameterizedTypeReference
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Objects
;
...
@@ -604,9 +608,24 @@ public class OrderSdkService {
...
@@ -604,9 +608,24 @@ public class OrderSdkService {
return
ResponseUtil
.
error
(
ResponseResultEnum
.
ORDER_TRANS_ID_IS_NULL
);
return
ResponseUtil
.
error
(
ResponseResultEnum
.
ORDER_TRANS_ID_IS_NULL
);
}
}
String
urlString
=
InterfaceAddressConstant
.
QUERY_RELATED_ORDER_BY_CODE
+
"?orderCode="
+
request
.
getOrderCode
();
String
urlString
=
InterfaceAddressConstant
.
QUERY_RELATED_ORDER_BY_CODE
+
"?orderCode="
+
request
.
getOrderCode
();
OrderBaseResp
<
List
<
OrderInfoReqs
>>
responseDTO
=
RequestThirdPartyUtils
.
httpGetReqComplex
(
restTemplate
,
urlString
,
OrderBaseResp
responseDTO
=
RequestThirdPartyUtils
.
httpGetReqComplex
(
restTemplate
,
urlString
,
createBaseRequest
(
null
,
trackingNo
),
new
ParameterizedTypeReference
<
OrderBaseResp
<
List
<
OrderInfoReqs
>>>()
{});
createBaseRequest
(
null
,
trackingNo
),
new
ParameterizedTypeReference
<
OrderBaseResp
>()
{});
return
responseHandle
(
responseDTO
);
// 1.9.37 fix 原本使用自带序列化成list时如果基础服务查询失败返回object会抛异常,所以改成手动操作
OrderBaseResp
<
List
<
OrderInfoReqs
>>
resp
;
if
(
Objects
.
isNull
(
responseDTO
))
{
resp
=
null
;
}
else
{
List
<
OrderInfoReqs
>
result
;
if
(
Objects
.
equals
(
ResponseConstant
.
SUCCESS_RESPONSE_CODE
,
responseDTO
.
getCode
()))
{
result
=
JSON
.
parseArray
(
Objects
.
toString
(
responseDTO
.
getResult
(),
"[]"
),
OrderInfoReqs
.
class
);
}
else
{
result
=
Collections
.
emptyList
();
}
resp
=
new
OrderBaseResp
<>();
BeanUtils
.
copyProperties
(
responseDTO
,
resp
,
"result"
);
resp
.
setResult
(
result
);
}
return
responseHandle
(
resp
);
}
}
private
<
T
>
BaseRequest
<
T
>
createBaseRequest
(
T
req
,
String
trackingNo
)
{
private
<
T
>
BaseRequest
<
T
>
createBaseRequest
(
T
req
,
String
trackingNo
)
{
...
...
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