Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gdtel-gztel-school-center
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
吴学德
gdtel-gztel-school-center
Commits
0b824a7b
Commit
0b824a7b
authored
Oct 22, 2021
by
伍思炜
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新智能平台对接开发
parent
37a678cf
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
402 additions
and
91 deletions
+402
-91
apply-net/src/main/java/com/winsun/controller/TestController.java
+23
-0
common/src/main/java/com/winsun/bean/AttributeList.java
+13
-0
common/src/main/java/com/winsun/mapper/OrderMapper.java
+3
-0
common/src/main/java/com/winsun/outSideSystem/IntelligenceSendOrders.java
+361
-89
common/src/main/java/com/winsun/utils/ZnptSignUtils.java
+1
-1
core-service/src/main/resources/application-local.yml
+1
-1
No files found.
apply-net/src/main/java/com/winsun/controller/TestController.java
0 → 100644
View file @
0b824a7b
package
com
.
winsun
.
controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.winsun.bean.AttributeList
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
public
class
TestController
{
@RequestMapping
(
value
=
"testPost"
,
method
=
RequestMethod
.
POST
)
public
AttributeList
testPost
(
@RequestBody
JSONObject
requestBean
)
{
System
.
out
.
println
(
requestBean
);
AttributeList
responseBean
=
new
AttributeList
();
responseBean
.
setName
(
"123"
);
responseBean
.
setValue
(
"succ"
);
return
responseBean
;
}
}
\ No newline at end of file
common/src/main/java/com/winsun/bean/AttributeList.java
0 → 100644
View file @
0b824a7b
package
com
.
winsun
.
bean
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
lombok.Data
;
@Data
public
class
AttributeList
{
@JSONField
(
name
=
"属性名"
)
private
String
name
;
@JSONField
(
name
=
"属性值"
)
private
String
value
;
}
common/src/main/java/com/winsun/mapper/OrderMapper.java
View file @
0b824a7b
...
@@ -169,6 +169,9 @@ public interface OrderMapper extends BaseMapper<Order> {
...
@@ -169,6 +169,9 @@ public interface OrderMapper extends BaseMapper<Order> {
@Select
(
"SELECT * FROM hhr_order WHERE user_type = '5' and order_status = '未下单'"
)
@Select
(
"SELECT * FROM hhr_order WHERE user_type = '5' and order_status = '未下单'"
)
List
<
Map
<
String
,
Object
>>
selectDKList
();
List
<
Map
<
String
,
Object
>>
selectDKList
();
@Select
(
"SELECT * FROM hhr_order WHERE user_type = '5' and kd_order_id = 'vpsg0u4l4y8tkp1aimlh'"
)
Map
<
String
,
Object
>
selectDKList2
();
/**
/**
* 一人一码订单通报 -- 移动订单(学校)
* 一人一码订单通报 -- 移动订单(学校)
...
...
common/src/main/java/com/winsun/outSideSystem/IntelligenceSendOrder
2
.java
→
common/src/main/java/com/winsun/outSideSystem/IntelligenceSendOrder
s
.java
View file @
0b824a7b
...
@@ -7,14 +7,12 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
...
@@ -7,14 +7,12 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
import
com.baomidou.mybatisplus.mapper.Wrapper
;
import
com.baomidou.mybatisplus.mapper.Wrapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.winsun.auth.core.util.DateUtil
;
import
com.winsun.auth.core.util.DateUtil
;
import
com.winsun.bean.Order
;
import
com.winsun.bean.*
;
import
com.winsun.bean.OrderHistory
;
import
com.winsun.bean.OrderView
;
import
com.winsun.bean.UniversityInfo
;
import
com.winsun.constant.Constant
;
import
com.winsun.constant.Constant
;
import
com.winsun.mapper.*
;
import
com.winsun.mapper.*
;
import
com.winsun.utils.BeanUtil
;
import
com.winsun.utils.BeanUtil
;
import
com.winsun.utils.SignUtil
;
import
com.winsun.utils.SignUtil
;
import
com.winsun.utils.ZnptSignUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.http.HttpEntity
;
import
org.apache.http.HttpEntity
;
...
@@ -28,7 +26,10 @@ import org.apache.http.impl.client.HttpClients;
...
@@ -28,7 +26,10 @@ import org.apache.http.impl.client.HttpClients;
import
org.apache.http.message.BasicNameValuePair
;
import
org.apache.http.message.BasicNameValuePair
;
import
org.apache.http.util.EntityUtils
;
import
org.apache.http.util.EntityUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.MediaType
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.client.RestTemplate
;
import
javax.net.ssl.SSLHandshakeException
;
import
javax.net.ssl.SSLHandshakeException
;
import
java.io.UnsupportedEncodingException
;
import
java.io.UnsupportedEncodingException
;
...
@@ -43,7 +44,7 @@ import java.util.*;
...
@@ -43,7 +44,7 @@ import java.util.*;
*/
*/
@Slf4j
@Slf4j
@Component
@Component
public
class
IntelligenceSendOrder
2
{
public
class
IntelligenceSendOrder
s
{
@Autowired
@Autowired
private
UniversityInfoMapper
universityInfoMapper
;
private
UniversityInfoMapper
universityInfoMapper
;
...
@@ -60,12 +61,17 @@ public class IntelligenceSendOrder2 {
...
@@ -60,12 +61,17 @@ public class IntelligenceSendOrder2 {
@Autowired
@Autowired
private
OrderHistoryMapper
orderHistoryMapper
;
private
OrderHistoryMapper
orderHistoryMapper
;
@Autowired
//private ZnptSignUtils znptSignUtils;
/**
/**
* 单宽下单公共类
* 单宽下单公共类
*
* @param order hhr_order map类型
* @param order hhr_order map类型
*/
*/
public
void
singleBroadSendOrder
(
Map
<
String
,
Object
>
order
)
{
public
void
singleBroadSendOrder
(
Map
<
String
,
Object
>
order
)
{
try
{
try
{
// 初始化下单支付参数
// 初始化下单支付参数
String
ORDERSEQ
=
""
,
ORDERAMOUNT
=
""
,
ORDERREQTRANSEQ
=
""
,
UPTRANSEQ
=
""
;
String
ORDERSEQ
=
""
,
ORDERAMOUNT
=
""
,
ORDERREQTRANSEQ
=
""
,
UPTRANSEQ
=
""
;
...
@@ -91,6 +97,7 @@ public class IntelligenceSendOrder2 {
...
@@ -91,6 +97,7 @@ public class IntelligenceSendOrder2 {
log
.
info
(
"订单号:"
+
ORDERSEQ
+
",在order_view表中无记录,无法进行智能平台下单"
);
log
.
info
(
"订单号:"
+
ORDERSEQ
+
",在order_view表中无记录,无法进行智能平台下单"
);
return
;
return
;
}
}
//产品价格
//产品价格
ORDERAMOUNT
=
orderMap
.
get
(
"webOrderAmount"
)
!=
null
?
orderMap
.
get
(
"webOrderAmount"
).
toString
()
:
"0"
;
ORDERAMOUNT
=
orderMap
.
get
(
"webOrderAmount"
)
!=
null
?
orderMap
.
get
(
"webOrderAmount"
).
toString
()
:
"0"
;
//穗易付订单号
//穗易付订单号
...
@@ -107,60 +114,30 @@ public class IntelligenceSendOrder2 {
...
@@ -107,60 +114,30 @@ public class IntelligenceSendOrder2 {
List
<
Map
<
String
,
Object
>>
findUniversityById
=
universityInfoMapper
.
selectMaps
(
universityInfoWrapper
);
List
<
Map
<
String
,
Object
>>
findUniversityById
=
universityInfoMapper
.
selectMaps
(
universityInfoWrapper
);
schoolMap
=
findUniversityById
.
get
(
0
);
schoolMap
=
findUniversityById
.
get
(
0
);
}
else
{
}
else
{
Wrapper
<
UniversityInfo
>
universityInfoWrapper
=
new
EntityWrapper
<>();
Wrapper
<
UniversityInfo
>
universityInfoWrapper
=
new
EntityWrapper
<>();
universityInfoWrapper
.
eq
(
"university_name"
,
orderMap
.
get
(
"orderUniversityName"
));
universityInfoWrapper
.
eq
(
"university_name"
,
orderMap
.
get
(
"orderUniversityName"
));
universityInfoWrapper
.
eq
(
"university_region"
,
orderMap
.
get
(
"orderRegion"
));
universityInfoWrapper
.
eq
(
"university_region"
,
orderMap
.
get
(
"orderRegion"
));
list1
=
universityInfoMapper
.
selectMaps
(
universityInfoWrapper
);
list1
=
universityInfoMapper
.
selectMaps
(
universityInfoWrapper
);
schoolMap
=
list1
.
get
(
0
);
schoolMap
=
list1
.
get
(
0
);
}
}
if
(
orderMap
.
get
(
"orderSeqThd"
)
==
null
||
""
.
equals
(
orderMap
.
get
(
"orderSeqThd"
)))
{
if
(
orderMap
.
get
(
"orderSeqThd"
)
==
null
||
""
.
equals
(
orderMap
.
get
(
"orderSeqThd"
)))
{
// 1、获取产品ID
JSONObject
productJsonObject
=
getProductId
(
currentTimeStr
,
0
);
log
.
info
(
"----------调用智能平台的产品接口返回参数:"
+
productJsonObject
);
// 2、获取销售品ID
if
(
productJsonObject
.
toString
().
indexOf
(
"list"
)
==
-
1
)
{
return
;
}
JSONArray
list
=
productJsonObject
.
getJSONArray
(
"list"
);
String
productId
=
null
;
// 产品id
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
".00"
,
""
);
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
".00"
,
""
);
String
productName
=
"校园宽带"
+
ORDERAMOUNT
+
"元"
;
String
productName
=
"校园宽带"
+
ORDERAMOUNT
+
"元"
;
if
(
ORDERAMOUNT
.
contains
(
"0.01"
))
{
if
(
ORDERAMOUNT
.
contains
(
"0.01"
))
{
productName
=
"校园宽带30元"
;
productName
=
"校园宽带30元"
;
}
else
if
(
ORDERAMOUNT
.
contains
(
"0.02"
))
{
}
else
if
(
ORDERAMOUNT
.
contains
(
"0.02"
))
{
productName
=
"校园宽带300元"
;
productName
=
"校园宽带300元"
;
}
}
if
(
productName
.
equals
(
"校园宽带0元"
))
{
if
(
productName
.
equals
(
"校园宽带0元"
)){
productName
=
"校园宽带(免月租)"
;
productName
=
"校园宽带(免月租)"
;
ORDERAMOUNT
=
"0"
;
ORDERAMOUNT
=
"0"
;
ORDERREQTRANSEQ
=
"00000"
;
ORDERREQTRANSEQ
=
"00000"
;
UPTRANSEQ
=
"00000"
;
UPTRANSEQ
=
"00000"
;
}
}
//例: productName = "校园宽带30元";
System
.
out
.
println
(
"------"
+
productName
);
System
.
out
.
println
(
"------"
+
productName
);
// productName = "校园宽带30元";
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
net
.
sf
.
json
.
JSONObject
itmeJson
=
net
.
sf
.
json
.
JSONObject
.
fromObject
(
list
.
get
(
i
));
// 判断获取的全部产品与订单产品符合的拿取对应的ID
if
(
itmeJson
.
getString
(
"name"
).
indexOf
(
productName
)
!=
-
1
)
{
productId
=
itmeJson
.
getString
(
"id"
);
// 获取对应产品ID
break
;
}
}
log
.
info
(
"----------根据返回参数获取产品ID:"
+
productId
);
String
saleId
=
null
;
// 销售id
JSONObject
saleJsonObject
=
getSaleId
(
productId
,
currentTimeStr
,
0
);
// 获取销售ID
log
.
info
(
"----------调用智能平台的获取销售品接口返回值:"
+
saleJsonObject
);
JSONArray
saleList
=
saleJsonObject
.
getJSONArray
(
"list"
);
net
.
sf
.
json
.
JSONObject
itmeJson
=
net
.
sf
.
json
.
JSONObject
.
fromObject
(
saleList
.
get
(
0
));
saleId
=
itmeJson
.
getString
(
"saleId"
);
setPriceIndex
(
schoolMap
,
orderMap
,
ORDERAMOUNT
);
setPriceIndex
(
schoolMap
,
orderMap
,
ORDERAMOUNT
);
...
@@ -170,28 +147,27 @@ public class IntelligenceSendOrder2 {
...
@@ -170,28 +147,27 @@ public class IntelligenceSendOrder2 {
schoolMap
,
//宽带订单对应的学校信息
schoolMap
,
//宽带订单对应的学校信息
orderMap
,
//宽带订单信息
orderMap
,
//宽带订单信息
currentTimeStr
,
//当前时间
currentTimeStr
,
//当前时间
productId
,
//产品ID
productName
,
//产品名称
saleId
,
//销售员ID
ORDERSEQ
,
//kd_order_id 宽带ID
ORDERSEQ
,
//kd_order_id 宽带ID
UPTRANSEQ
,
//支付平台流水号
UPTRANSEQ
,
//支付平台流水号
ORDERAMOUNT
,
//产品价格
ORDERAMOUNT
,
//产品价格
ORDERREQTRANSEQ
,
//穗易付订单号
ORDERREQTRANSEQ
,
//穗易付订单号
0
);
0
);
log
.
info
(
/*
log.info(
"----------调用单宽带接口(提交订单至智能平台)并返回参数信息---status:"
"----------调用单宽带接口(提交订单至智能平台)并返回参数信息---status:"
+ submitOrderJsonObject.get("status")
+ submitOrderJsonObject.get("status")
+ " msg:"
+ " msg:"
+ submitOrderJsonObject.get("msg")
+ submitOrderJsonObject.get("msg")
+ " orderNum:"
+ " orderNum:"
+
submitOrderJsonObject
.
get
(
"orderNumber"
));
+ submitOrderJsonObject.get("orderNumber"));
*/
// 4、查询智能订单是否存在
// 4、查询智能订单是否存在
String
orderNum
=
(
String
)
submitOrderJsonObject
.
get
(
"orderNumber"
);
/*
String orderNum = (String) submitOrderJsonObject.get("orderNumber");
JSONObject queryOrderJsonObject = null;
JSONObject queryOrderJsonObject = null;
if (StringUtils.isNotBlank(orderNum)) {
if (StringUtils.isNotBlank(orderNum)) {
queryOrderJsonObject = getQueryOrderInfo(orderNum, currentTimeStr, 0);
queryOrderJsonObject = getQueryOrderInfo(orderNum, currentTimeStr, 0);
log.info("----------调用查询智能订单接口并返回参数信息:" + queryOrderJsonObject);
log.info("----------调用查询智能订单接口并返回参数信息:" + queryOrderJsonObject);
/* 5、更新数据库 */
*//*5、更新数据库 *//*
String state = queryOrderJsonObject.getString("state");
String state = queryOrderJsonObject.getString("state");
// 更新hhr_order
// 更新hhr_order
Wrapper<Order> orderWrapper = new EntityWrapper<>();
Wrapper<Order> orderWrapper = new EntityWrapper<>();
...
@@ -209,14 +185,14 @@ public class IntelligenceSendOrder2 {
...
@@ -209,14 +185,14 @@ public class IntelligenceSendOrder2 {
wrapperOrderView.eq("orderSeq", order.get("kd_order_id").toString());
wrapperOrderView.eq("orderSeq", order.get("kd_order_id").toString());
orderViewMapper.update(updateOrderView, wrapperOrderView);
orderViewMapper.update(updateOrderView, wrapperOrderView);
log.info("----------将智能订单状态更新至数据库success:" + state);
log.info("----------将智能订单状态更新至数据库success:" + state);
}
else
{
}
else
{
// 报错更新提示
// 报错更新提示
Wrapper<Order> orderWrapper = new EntityWrapper<>();
Wrapper<Order> orderWrapper = new EntityWrapper<>();
orderWrapper.eq("kd_order_id", order.get("kd_order_id"));
orderWrapper.eq("kd_order_id", order.get("kd_order_id"));
Order updateOrder = new Order();
Order updateOrder = new Order();
updateOrder.setMsg(submitOrderJsonObject.getString("msg"));
updateOrder.setMsg(submitOrderJsonObject.getString("msg"));
orderMapper.update(updateOrder, orderWrapper);
orderMapper.update(updateOrder, orderWrapper);
}
}
*/
}
else
{
}
else
{
log
.
info
(
log
.
info
(
"---单宽支付接口推送---"
"---单宽支付接口推送---"
...
@@ -229,12 +205,306 @@ public class IntelligenceSendOrder2 {
...
@@ -229,12 +205,306 @@ public class IntelligenceSendOrder2 {
+
ORDERREQTRANSEQ
);
+
ORDERREQTRANSEQ
);
log
.
info
(
"重复订单"
);
log
.
info
(
"重复订单"
);
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
info
(
"单宽下单失败"
);
log
.
info
(
"单宽下单失败"
);
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
}
}
/**
* @param schoolMap
* @param orderMap
* @param currentTimeStr
* @param ORDERSEQ
* @param UPTRANSEQ
* @param ORDERAMOUNT
* @param ORDERREQTRANSEQ
* @param count
* @return 新单宽下单接口调用
* @throws Exception
*/
private
JSONObject
getOrderInfo
(
Map
<
String
,
Object
>
schoolMap
,
//宽带订单对应的学校信息
Map
<
String
,
Object
>
orderMap
,
//宽带订单信息
String
currentTimeStr
,
//当前时间
String
productName
,
//产品名称
String
ORDERSEQ
,
//kd_order_id 宽带ID
String
UPTRANSEQ
,
//支付平台流水号
String
ORDERAMOUNT
,
//产品价格
String
ORDERREQTRANSEQ
,
//穗易付订单号
int
count
)
//0
throws
Exception
{
log
.
info
(
"前置提交参数:schoolMap:"
+
schoolMap
+
",orderMap:"
+
orderMap
);
/*RequestConfig defaultRequestConfig =
RequestConfig.custom()
.setSocketTimeout(50000)
.setConnectTimeout(50000)
.setConnectionRequestTimeout(50000)
.build();
CloseableHttpClient httpclient =
HttpClients.custom().setDefaultRequestConfig(defaultRequestConfig).build();
HttpEntity entity = null;
HttpPost httpPost = new HttpPost(Constant.ZHANGSHIURL + "create-order.action");
RequestConfig requestConfig = RequestConfig.copy(defaultRequestConfig).build();
httpPost.setConfig(requestConfig);*/
String
addressDistrict
=
null
;
//所在区域
String
address
=
null
;
//装机地址
String
addressID
=
null
;
//地址ID
String
landId
=
null
;
//揽装工号
String
universityTerminalType
=
null
;
//允许上网终端类型
String
universityUserCategory
=
null
;
//用户类别
String
universityUserType
=
null
;
//用户类型
String
universityMonthlyRentType
=
null
;
//月租类型
String
universityChargingAttribute
=
null
;
//计费属性
String
universityOnlineNumber
=
null
;
//最大在线数
String
universityOneManTerminal
=
null
;
//一人一号多终端:0否 1是
String
universityIsFtthHub
=
null
;
//是否FTTH+HUB:0否 1是
String
universityExteriorLines
=
null
;
//外线方式
String
universityChargeMode
=
null
;
//收费模式
if
(
BeanUtil
.
isNotBlank
(
schoolMap
))
{
addressDistrict
=
(
String
)
schoolMap
.
get
(
"universityRegion"
);
address
=
(
String
)
schoolMap
.
get
(
"universityInstalledAddress"
);
addressID
=
(
String
)
schoolMap
.
get
(
"universityInstalledAddressId"
);
landId
=
(
String
)
schoolMap
.
get
(
"universityPackageNumber"
);
universityTerminalType
=
(
String
)
schoolMap
.
get
(
"universityTerminalType"
);
universityUserCategory
=
(
String
)
schoolMap
.
get
(
"universityUserCategory"
);
universityUserType
=
(
String
)
schoolMap
.
get
(
"universityUserType"
);
universityMonthlyRentType
=
(
String
)
schoolMap
.
get
(
"universityMonthlyRentType"
);
universityChargingAttribute
=
(
String
)
schoolMap
.
get
(
"universityChargingAttribute"
);
universityOnlineNumber
=
(
String
)
schoolMap
.
get
(
"universityOnlineNumber"
);
universityOneManTerminal
=
(
String
)
schoolMap
.
get
(
"universityOneManTerminal"
);
universityIsFtthHub
=
(
String
)
schoolMap
.
get
(
"universityIsFtthHub"
);
universityExteriorLines
=
(
String
)
schoolMap
.
get
(
"universityExteriorLines"
);
universityChargeMode
=
(
String
)
schoolMap
.
get
(
"universityChargeMode"
);
}
else
{
addressDistrict
=
"测试区"
;
address
=
"广东省广州市测试区测试街道1号"
;
addressID
=
"00000"
;
landId
=
"20180621"
;
universityTerminalType
=
"测试"
;
universityUserCategory
=
"测试"
;
universityUserType
=
"测试"
;
universityMonthlyRentType
=
"测试"
;
universityChargingAttribute
=
"测试"
;
universityOnlineNumber
=
"0"
;
universityOneManTerminal
=
"否"
;
universityIsFtthHub
=
"否"
;
universityExteriorLines
=
"测试"
;
universityChargeMode
=
"测试"
;
}
Map
<
String
,
Map
<
String
,
String
>>
map
=
new
HashMap
<>();
Map
<
String
,
String
>
return_data
=
new
HashMap
<>();
return_data
.
put
(
"code"
,
""
);
return_data
.
put
(
"route"
,
"提交订单"
);
//[提交下单] [订单保存] [提交审核] 默认为提交下单
return_data
.
put
(
"微信openId"
,
""
);
return_data
.
put
(
"微信appId"
,
""
);
map
.
put
(
"return_data"
,
return_data
);
Map
<
String
,
Object
>
order_data
=
new
HashMap
<>();
Map
<
String
,
Object
>
attachment
=
new
HashMap
<>();
// 附件
attachment
.
put
(
"订单底单"
,
""
);
order_data
.
put
(
"附件"
,
attachment
);
Map
<
String
,
Object
>
customerInformation
=
new
HashMap
<>();
//客户信息
customerInformation
.
put
(
"联系人"
,
(
String
)
orderMap
.
get
(
"customerName"
));
customerInformation
.
put
(
"客户证件号码"
,
(
String
)
orderMap
.
get
(
"idCard"
));
customerInformation
.
put
(
"客户证件姓名"
,
(
String
)
orderMap
.
get
(
"customerName"
));
customerInformation
.
put
(
"联系电话"
,
(
String
)
orderMap
.
get
(
"contactNumber"
));
customerInformation
.
put
(
"客户证件地址"
,
""
);
customerInformation
.
put
(
"装机联系电话"
,
(
String
)
orderMap
.
get
(
"contactNumber"
));
customerInformation
.
put
(
"装机联系人"
,
(
String
)
orderMap
.
get
(
"customerName"
));
customerInformation
.
put
(
"客户证件类型"
,
"身份证"
);
customerInformation
.
put
(
"通讯地址"
,
address
);
order_data
.
put
(
"客户信息"
,
customerInformation
);
order_data
.
put
(
"装机详细地址"
,
address
);
order_data
.
put
(
"订单来源单号"
,
(
String
)
orderMap
.
get
(
"orderSeq"
));
// 订单来源单号,必填; 与订单来源对应,用于业务上记录订单的来源订单编号
order_data
.
put
(
"订单备注"
,
""
);
order_data
.
put
(
"办理类型"
,
"新宽新移"
);
//新宽新移 ,新宽旧移,旧宽新移,旧宽旧移
order_data
.
put
(
"付费类型"
,
""
);
//预付费、后付费、其他 选填
Map
<
String
,
Object
>
packageInformation
=
new
HashMap
<>();
//揽装信息
packageInformation
.
put
(
"揽装姓名"
,
""
);
packageInformation
.
put
(
"三级机构"
,
""
);
packageInformation
.
put
(
"一级机构"
,
""
);
packageInformation
.
put
(
"企微号码"
,
""
);
packageInformation
.
put
(
"揽装人联系电话"
,
""
);
packageInformation
.
put
(
"机构ID"
,
addressID
);
packageInformation
.
put
(
"四级机构"
,
""
);
packageInformation
.
put
(
"二级机构"
,
""
);
packageInformation
.
put
(
"揽装工号"
,
landId
);
packageInformation
.
put
(
"协销工号"
,
""
);
packageInformation
.
put
(
"五级机构"
,
""
);
order_data
.
put
(
"揽装信息"
,
packageInformation
);
HashMap
<
String
,
Object
>
invoiceInformation
=
new
HashMap
<>();
//发票信息
invoiceInformation
.
put
(
"发票抬头"
,
""
);
//若发票投递方式为不需要,可以不填值,但必须有参数
invoiceInformation
.
put
(
"发票投递方式"
,
""
);
// 必填 一次性发票,分月发票,不需要
invoiceInformation
.
put
(
"电子邮箱"
,
""
);
//若发票投递方式为不需要,可以不填值,但必须有参数
order_data
.
put
(
"发票信息"
,
invoiceInformation
);
order_data
.
put
(
"接口下单账号"
,
Constant
.
ZHENGSHIAUCCON
);
//接口下单账号
HashMap
<
String
,
Object
>
orderingProducts
=
new
HashMap
<>();
//订购产品
orderingProducts
.
put
(
"产品SKU"
,
""
);
orderingProducts
.
put
(
"产品名称"
,
productName
);
orderingProducts
.
put
(
"受理内容"
,
""
);
orderingProducts
.
put
(
"付费类型"
,
""
);
// 属性列表
AttributeList
roadbandRate
=
new
AttributeList
();
roadbandRate
.
setName
(
"宽带速率"
);
String
setMeal
=
(
String
)
orderMap
.
get
(
"orderSetMeal"
);
if
(
StringUtils
.
isNotBlank
(
setMeal
))
{
setMeal
=
setMeal
.
replace
(
"包月"
,
""
);
setMeal
=
setMeal
.
replace
(
"包年"
,
""
);
}
if
(
setMeal
.
equals
(
"20M"
))
{
roadbandRate
.
setValue
(
"20M下行速率/4M上行速率"
);
}
else
if
(
setMeal
.
equals
(
"2M"
))
{
roadbandRate
.
setValue
(
"2M下行速率/512K上行速率"
);
}
else
if
(
setMeal
.
equals
(
"50M"
))
{
roadbandRate
.
setValue
(
"50M下行速率/10M上行速率"
);
}
AttributeList
AddressID
=
new
AttributeList
();
AddressID
.
setName
(
"地址ID"
);
AddressID
.
setValue
(
addressID
);
AttributeList
internetType
=
new
AttributeList
();
internetType
.
setName
(
"允许上网终端类型"
);
internetType
.
setValue
(
universityTerminalType
);
AttributeList
userCategory
=
new
AttributeList
();
userCategory
.
setName
(
"用户类别"
);
userCategory
.
setValue
(
universityUserCategory
);
AttributeList
schoolName
=
new
AttributeList
();
schoolName
.
setName
(
"学校名称"
);
schoolName
.
setValue
((
String
)
orderMap
.
get
(
"orderUniversityName"
));
AttributeList
studentID
=
new
AttributeList
();
studentID
.
setName
(
"学生证号"
);
studentID
.
setValue
((
String
)
orderMap
.
get
(
"orderCustomerStudentId"
));
AttributeList
userType
=
new
AttributeList
();
userType
.
setName
(
"用户类型"
);
userType
.
setValue
(
universityUserType
);
AttributeList
monthlyRentType
=
new
AttributeList
();
monthlyRentType
.
setName
(
"月租类型"
);
monthlyRentType
.
setValue
(
universityMonthlyRentType
);
AttributeList
billingAttributes
=
new
AttributeList
();
billingAttributes
.
setName
(
"计费属性"
);
billingAttributes
.
setValue
(
universityChargingAttribute
);
AttributeList
customerAccount
=
new
AttributeList
();
customerAccount
.
setName
(
"多媒体账号"
);
customerAccount
.
setValue
((
String
)
orderMap
.
get
(
"orderCustomerAccount"
));
AttributeList
customerPwd
=
new
AttributeList
();
customerPwd
.
setName
(
"多媒体账号密码"
);
customerPwd
.
setValue
((
String
)
orderMap
.
get
(
"orderCustomerPwd"
));
AttributeList
onlineNumber
=
new
AttributeList
();
onlineNumber
.
setName
(
"最大在线数"
);
onlineNumber
.
setValue
(
universityOnlineNumber
);
AttributeList
oneManTerminal
=
new
AttributeList
();
oneManTerminal
.
setName
(
"一人一号多终端"
);
oneManTerminal
.
setValue
(
universityOneManTerminal
);
AttributeList
isFtthHub
=
new
AttributeList
();
isFtthHub
.
setName
(
"是否FTTH+HUB"
);
isFtthHub
.
setValue
(
universityIsFtthHub
);
AttributeList
exteriorLines
=
new
AttributeList
();
exteriorLines
.
setName
(
"外线方式"
);
exteriorLines
.
setValue
(
universityExteriorLines
);
AttributeList
chargeMode
=
new
AttributeList
();
chargeMode
.
setName
(
"宽带首月费用类型"
);
chargeMode
.
setValue
(
universityChargeMode
);
AttributeList
[]
attributeList
=
new
AttributeList
[]{
roadbandRate
,
AddressID
,
internetType
,
userCategory
,
schoolName
,
studentID
,
userType
,
monthlyRentType
,
billingAttributes
,
customerAccount
,
customerPwd
,
onlineNumber
,
oneManTerminal
,
isFtthHub
,
exteriorLines
,
chargeMode
};
//属性列表
orderingProducts
.
put
(
"属性列表"
,
attributeList
);
order_data
.
put
(
"业务类型"
,
"单宽业务"
);
//业务类型
HashMap
<
String
,
Object
>
broadbandInstalledCapacity
=
new
HashMap
<>();
//宽带装机
broadbandInstalledCapacity
.
put
(
"装机详细地址"
,
address
);
broadbandInstalledCapacity
.
put
(
"省"
,
"广东省"
);
broadbandInstalledCapacity
.
put
(
"市"
,
"广州市"
);
broadbandInstalledCapacity
.
put
(
"区"
,
address
);
broadbandInstalledCapacity
.
put
(
"装机地址ID"
,
addressDistrict
);
order_data
.
put
(
"宽带装机"
,
broadbandInstalledCapacity
);
HashMap
<
Object
,
Object
>
monthlyFeeItems
=
new
HashMap
<>();
//月租费用项
List
<
HashMap
<
String
,
Object
>>
expenseItemsList
=
new
ArrayList
<>();
//费用项列表
HashMap
<
String
,
Object
>
expenseItemsMap
=
new
HashMap
<>();
expenseItemsMap
.
put
(
"费用项名称"
,
productName
);
expenseItemsMap
.
put
(
"费用项金额"
,
ORDERAMOUNT
+
".0000"
);
if
(
universityMonthlyRentType
.
contains
(
"包月"
)){
expenseItemsMap
.
put
(
"费用项类型"
,
"月租"
);
}
else
if
(
universityMonthlyRentType
.
contains
(
"包年"
)){
expenseItemsMap
.
put
(
"费用项类型"
,
"年租"
);
}
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
if
(
ORDERAMOUNT
.
equals
(
"0.01"
)
||
ORDERAMOUNT
.
equals
(
"0.02"
))
{
monthlyFeeItems
.
put
(
"缴费方式"
,
"现金支付"
);
// 缴费方式,必填(例:payType:1);1:银行划账2:现金支付3:代理商打款4:穗易付5:原套餐缴费方式6:支付宝划扣8:装维上门收取
}
else
if
(
"xjzf"
.
equals
(
orderMap
.
get
(
"customerId"
)))
{
monthlyFeeItems
.
put
(
"缴费方式"
,
"现金支付"
);
}
else
{
monthlyFeeItems
.
put
(
"缴费方式"
,
"穗易付"
);
expenseItemsMap
.
put
(
"穗易付订单号"
,
ORDERREQTRANSEQ
);
String
payPlatform
=
(
String
)
orderMap
.
get
(
"ipay"
);
if
(
StringUtils
.
isNotBlank
(
payPlatform
))
{
if
(
"1"
.
equals
(
payPlatform
))
{
expenseItemsMap
.
put
(
"穗易付支付平台"
,
"支付宝"
);
// 支付平台,缴费方式为“穗易付”时必填
}
else
{
expenseItemsMap
.
put
(
"穗易付支付平台"
,
"微信"
);
// 支付平台,缴费方式为“穗易付”时必填
}
}
else
{
expenseItemsMap
.
put
(
"穗易付支付平台"
,
"穗易付"
);
// 支付平台,缴费方式为“穗易付”时必填
}
expenseItemsMap
.
put
(
"穗易付支付金额"
,
ORDERAMOUNT
);
expenseItemsMap
.
put
(
"穗易付支付流水号"
,
UPTRANSEQ
);
expenseItemsList
.
add
(
expenseItemsMap
);
}
order_data
.
put
(
"月租费用项"
,
monthlyFeeItems
);
String
order_dataJSON
=
JSONObject
.
toJSONString
(
order_data
);
JSONObject
resultDataJson
=
null
;
try
{
HttpHeaders
headers
=
new
HttpHeaders
();
headers
.
setContentType
(
MediaType
.
APPLICATION_JSON
);
headers
.
add
(
"Content-Type"
,
"application/json;charset=utf-8"
);
//签名
/*
headers.add("Hmac", znptSignUtils.macSHA1(order_dataJSON));*/
RestTemplate
restTemplate
=
new
RestTemplate
();
log
.
info
(
"提交参数:"
+
order_dataJSON
);
Constant
.
trustEveryone
();
resultDataJson
=
restTemplate
.
postForObject
(
"http://localhost:11092/testPost"
,
order_dataJSON
,
JSONObject
.
class
,
headers
);
//log.info("单宽带下单接口,返回信息:" + resultDataJson);
System
.
out
.
println
(
resultDataJson
);
}
catch
(
Exception
e
)
{
log
.
info
(
"单宽带下单接口异常"
);
e
.
printStackTrace
();
}
return
resultDataJson
;
}
private
void
setPriceIndex
(
Map
<
String
,
Object
>
schoolMap
,
Map
<
String
,
Object
>
orderMap
,
String
ORDERAMOUNT
)
{
private
void
setPriceIndex
(
Map
<
String
,
Object
>
schoolMap
,
Map
<
String
,
Object
>
orderMap
,
String
ORDERAMOUNT
)
{
try
{
try
{
// 获取金额下标
// 获取金额下标
...
@@ -242,24 +512,24 @@ public class IntelligenceSendOrder2 {
...
@@ -242,24 +512,24 @@ public class IntelligenceSendOrder2 {
Integer
index
=
0
;
Integer
index
=
0
;
String
setMealIndex
=
orderMap
.
get
(
"setMealIndex"
).
toString
();
String
setMealIndex
=
orderMap
.
get
(
"setMealIndex"
).
toString
();
if
(
""
.
equals
(
setMealIndex
)
||
!
setMealIndex
.
matches
(
"[0-9]*"
))
{
if
(
""
.
equals
(
setMealIndex
)
||
!
setMealIndex
.
matches
(
"[0-9]*"
))
{
if
(
ORDERAMOUNT
.
equals
(
"50元"
)&&
orderMap
.
get
(
"orderSetMeal"
).
equals
(
"20M包月"
))
{
if
(
ORDERAMOUNT
.
equals
(
"50元"
)
&&
orderMap
.
get
(
"orderSetMeal"
).
equals
(
"20M包月"
))
{
schoolMap
.
put
(
"universityMonthlyRentType"
,
"包月50元"
);
schoolMap
.
put
(
"universityMonthlyRentType"
,
"包月50元"
);
}
}
}
else
{
}
else
{
index
=
Integer
.
parseInt
(
setMealIndex
);
index
=
Integer
.
parseInt
(
setMealIndex
);
String
[]
university_monthly_rent_type
=
schoolMap
.
get
(
"universityMonthlyRentType"
).
toString
().
split
(
","
);
String
[]
university_monthly_rent_type
=
schoolMap
.
get
(
"universityMonthlyRentType"
).
toString
().
split
(
","
);
if
(
university_monthly_rent_type
.
length
>
index
)
{
if
(
university_monthly_rent_type
.
length
>
index
)
{
schoolMap
.
put
(
"universityMonthlyRentType"
,
university_monthly_rent_type
[
index
]);
schoolMap
.
put
(
"universityMonthlyRentType"
,
university_monthly_rent_type
[
index
]);
}
else
{
}
else
{
schoolMap
.
put
(
"universityMonthlyRentType"
,
university_monthly_rent_type
[
0
]);
schoolMap
.
put
(
"universityMonthlyRentType"
,
university_monthly_rent_type
[
0
]);
}
}
}
}
}
else
{
}
else
{
if
(
ORDERAMOUNT
.
equals
(
"50元"
)&&
orderMap
.
get
(
"order_set_meal"
).
equals
(
"20M包月"
))
{
if
(
ORDERAMOUNT
.
equals
(
"50元"
)
&&
orderMap
.
get
(
"order_set_meal"
).
equals
(
"20M包月"
))
{
schoolMap
.
put
(
"universityMonthlyRentType"
,
"包月50元"
);
schoolMap
.
put
(
"universityMonthlyRentType"
,
"包月50元"
);
}
}
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
info
(
e
.
toString
());
log
.
info
(
e
.
toString
());
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
...
@@ -334,7 +604,8 @@ public class IntelligenceSendOrder2 {
...
@@ -334,7 +604,8 @@ public class IntelligenceSendOrder2 {
}
}
/**
/**
* 获取订单信息
* 获取订单信息
*
* @param schoolMap
* @param schoolMap
* @param orderMap
* @param orderMap
* @param currentTimeStr
* @param currentTimeStr
...
@@ -360,7 +631,7 @@ public class IntelligenceSendOrder2 {
...
@@ -360,7 +631,7 @@ public class IntelligenceSendOrder2 {
String
ORDERREQTRANSEQ
,
//穗易付订单号
String
ORDERREQTRANSEQ
,
//穗易付订单号
int
count
)
//0
int
count
)
//0
throws
Exception
{
throws
Exception
{
log
.
info
(
"前置提交参数:schoolMap:"
+
schoolMap
+
",orderMap:"
+
orderMap
);
log
.
info
(
"前置提交参数:schoolMap:"
+
schoolMap
+
",orderMap:"
+
orderMap
);
List
<
NameValuePair
>
qParams
=
new
ArrayList
<
NameValuePair
>();
List
<
NameValuePair
>
qParams
=
new
ArrayList
<
NameValuePair
>();
// HttpHost proxy = new HttpHost("172.18.101.170", 3128);
// HttpHost proxy = new HttpHost("172.18.101.170", 3128);
RequestConfig
defaultRequestConfig
=
RequestConfig
defaultRequestConfig
=
...
@@ -523,14 +794,14 @@ public class IntelligenceSendOrder2 {
...
@@ -523,14 +794,14 @@ public class IntelligenceSendOrder2 {
Map
<
String
,
String
>
paymentMap
=
new
HashMap
<
String
,
String
>();
Map
<
String
,
String
>
paymentMap
=
new
HashMap
<
String
,
String
>();
paymentMap
.
put
(
"id"
,
saleId
);
// 收费项ID,必填;请通过销售品列表接口获取
paymentMap
.
put
(
"id"
,
saleId
);
// 收费项ID,必填;请通过销售品列表接口获取
paymentMap
.
put
(
"payAmount"
,
ORDERAMOUNT
);
// 缴费金额(打款金额),缴费方式为“代理商打款”或“穗易付”时必填
paymentMap
.
put
(
"payAmount"
,
ORDERAMOUNT
);
// 缴费金额(打款金额),缴费方式为“代理商打款”或“穗易付”时必填
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
if
(
ORDERAMOUNT
.
equals
(
"0.01"
)
||
ORDERAMOUNT
.
equals
(
"0.02"
))
{
if
(
ORDERAMOUNT
.
equals
(
"0.01"
)
||
ORDERAMOUNT
.
equals
(
"0.02"
))
{
paymentMap
.
put
(
"payType"
,
"2"
);
paymentMap
.
put
(
"payType"
,
"2"
);
}
else
{
}
else
{
paymentMap
.
put
(
"payType"
,
"4"
);
// 缴费方式,必填(例:payType:1);1:银行划账2:现金支付3:代理商打款4:穗易付5:原套餐缴费方式6:支付宝划扣8:装维上门收取
paymentMap
.
put
(
"payType"
,
"4"
);
// 缴费方式,必填(例:payType:1);1:银行划账2:现金支付3:代理商打款4:穗易付5:原套餐缴费方式6:支付宝划扣8:装维上门收取
}
}
if
(
"xjzf"
.
equals
(
orderMap
.
get
(
"customerId"
)))
{
if
(
"xjzf"
.
equals
(
orderMap
.
get
(
"customerId"
)))
{
paymentMap
.
put
(
"payType"
,
"2"
);
paymentMap
.
put
(
"payType"
,
"2"
);
}
}
...
@@ -857,7 +1128,8 @@ public class IntelligenceSendOrder2 {
...
@@ -857,7 +1128,8 @@ public class IntelligenceSendOrder2 {
/**
/**
* 融合下单公共方法
* 融合下单公共方法
* @param order hhr_order 表的map数据
*
* @param order hhr_order 表的map数据
* @param rightNowSend 是否马上下单,是则无视融合时间,不是则判断融合时间是否当天
* @param rightNowSend 是否马上下单,是则无视融合时间,不是则判断融合时间是否当天
*/
*/
public
void
integrateSendOrder
(
Order
order
,
boolean
rightNowSend
)
throws
Exception
{
public
void
integrateSendOrder
(
Order
order
,
boolean
rightNowSend
)
throws
Exception
{
...
@@ -884,12 +1156,12 @@ public class IntelligenceSendOrder2 {
...
@@ -884,12 +1156,12 @@ public class IntelligenceSendOrder2 {
}
}
try
{
try
{
rhTime
=
order
.
getRhTime
();
rhTime
=
order
.
getRhTime
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"融合日期转换错误"
+
JSONObject
.
toJSONString
(
order
));
log
.
error
(
"融合日期转换错误"
+
JSONObject
.
toJSONString
(
order
));
return
;
return
;
}
}
// 融合时间小于当前时间
// 融合时间小于当前时间
if
(
today
.
getTime
()
>
rhTime
.
getTime
())
{
if
(
today
.
getTime
()
>
rhTime
.
getTime
())
{
log
.
info
(
"融合日期小于当前日期,改为待受理状态"
+
JSONObject
.
toJSONString
(
order
));
log
.
info
(
"融合日期小于当前日期,改为待受理状态"
+
JSONObject
.
toJSONString
(
order
));
Wrapper
<
Order
>
wrapper
=
new
EntityWrapper
<>();
Wrapper
<
Order
>
wrapper
=
new
EntityWrapper
<>();
wrapper
.
eq
(
"id"
,
order
.
getId
());
wrapper
.
eq
(
"id"
,
order
.
getId
());
...
@@ -1283,7 +1555,7 @@ public class IntelligenceSendOrder2 {
...
@@ -1283,7 +1555,7 @@ public class IntelligenceSendOrder2 {
Map
<
String
,
Object
>
paymentListMap2
=
new
HashMap
<
String
,
Object
>();
Map
<
String
,
Object
>
paymentListMap2
=
new
HashMap
<
String
,
Object
>();
paymentListMap2
.
put
(
"id"
,
saleId1
);
// 收费项ID,选填;请通过销售品列表接口获取,若不填表示终端补收款
paymentListMap2
.
put
(
"id"
,
saleId1
);
// 收费项ID,选填;请通过销售品列表接口获取,若不填表示终端补收款
paymentListMap2
.
put
(
"saleName"
,
""
);
// 销售品名称,选填,若id不填写此项必填写,且只能为终端补收款
paymentListMap2
.
put
(
"saleName"
,
""
);
// 销售品名称,选填,若id不填写此项必填写,且只能为终端补收款
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
ORDERAMOUNT
=
ORDERAMOUNT
.
replace
(
"元"
,
""
);
paymentListMap2
.
put
(
"payAmount"
,
ORDERAMOUNT
);
// 打款金额(支付金额),若选择代理商打款、者穗易付、货到付款,此项必填
paymentListMap2
.
put
(
"payAmount"
,
ORDERAMOUNT
);
// 打款金额(支付金额),若选择代理商打款、者穗易付、货到付款,此项必填
if
(
orderMap
.
get
(
"webOrderAmount"
).
toString
().
equals
(
"0"
)
if
(
orderMap
.
get
(
"webOrderAmount"
).
toString
().
equals
(
"0"
)
...
@@ -1319,7 +1591,7 @@ public class IntelligenceSendOrder2 {
...
@@ -1319,7 +1591,7 @@ public class IntelligenceSendOrder2 {
paymentList
.
add
(
paymentListMap
);
paymentList
.
add
(
paymentListMap
);
paymentList
.
add
(
paymentListMap2
);
paymentList
.
add
(
paymentListMap2
);
if
(
StringUtils
.
isNotBlank
(
saleId2
))
{
if
(
StringUtils
.
isNotBlank
(
saleId2
))
{
paymentList
.
add
(
paymentListMap3
);
paymentList
.
add
(
paymentListMap3
);
}
}
productMap
.
put
(
"payment"
,
paymentList
);
productMap
.
put
(
"payment"
,
paymentList
);
...
@@ -1442,7 +1714,7 @@ public class IntelligenceSendOrder2 {
...
@@ -1442,7 +1714,7 @@ public class IntelligenceSendOrder2 {
productMap
.
put
(
"addProperties"
,
addPropertyList
);
productMap
.
put
(
"addProperties"
,
addPropertyList
);
productList
.
add
(
productMap
);
productList
.
add
(
productMap
);
log
.
info
(
"productList.toString():"
+
productList
.
toString
());
log
.
info
(
"productList.toString():"
+
productList
.
toString
());
// 将对象装换为json字符串
// 将对象装换为json字符串
String
productJson
=
net
.
sf
.
json
.
JSONArray
.
fromObject
(
productList
).
toString
();
String
productJson
=
net
.
sf
.
json
.
JSONArray
.
fromObject
(
productList
).
toString
();
...
@@ -1483,13 +1755,13 @@ public class IntelligenceSendOrder2 {
...
@@ -1483,13 +1755,13 @@ public class IntelligenceSendOrder2 {
entity
=
response
.
getEntity
();
entity
=
response
.
getEntity
();
String
httpResult
=
EntityUtils
.
toString
(
entity
,
"UTF-8"
);
String
httpResult
=
EntityUtils
.
toString
(
entity
,
"UTF-8"
);
log
.
info
(
"订单编号:"
+
order
.
getKdOrderId
()
+
";融合下单接口,返回信息:"
+
httpResult
);
log
.
info
(
"订单编号:"
+
order
.
getKdOrderId
()
+
";融合下单接口,返回信息:"
+
httpResult
);
resultDataJson
=
net
.
sf
.
json
.
JSONObject
.
fromObject
(
httpResult
);
resultDataJson
=
net
.
sf
.
json
.
JSONObject
.
fromObject
(
httpResult
);
}
catch
(
SSLHandshakeException
s
)
{
}
catch
(
SSLHandshakeException
s
)
{
HttpResponse
response
=
httpclient
.
execute
(
httpPost
);
HttpResponse
response
=
httpclient
.
execute
(
httpPost
);
entity
=
response
.
getEntity
();
entity
=
response
.
getEntity
();
String
httpResult
=
EntityUtils
.
toString
(
entity
,
"UTF-8"
);
String
httpResult
=
EntityUtils
.
toString
(
entity
,
"UTF-8"
);
log
.
info
(
"订单编号:"
+
order
.
getKdOrderId
()
+
";融合下单接口,返回信息:"
+
httpResult
);
log
.
info
(
"订单编号:"
+
order
.
getKdOrderId
()
+
";融合下单接口,返回信息:"
+
httpResult
);
resultDataJson
=
net
.
sf
.
json
.
JSONObject
.
fromObject
(
httpResult
);
resultDataJson
=
net
.
sf
.
json
.
JSONObject
.
fromObject
(
httpResult
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
"融合下单接口接口异常"
);
System
.
out
.
println
(
"融合下单接口接口异常"
);
...
@@ -1844,7 +2116,7 @@ public class IntelligenceSendOrder2 {
...
@@ -1844,7 +2116,7 @@ public class IntelligenceSendOrder2 {
orderHistoryMapper
.
insert
(
orderHistory
);
orderHistoryMapper
.
insert
(
orderHistory
);
}
else
{
}
else
{
String
msg
=
(
String
)
resultDataJson
.
get
(
"msg"
);
String
msg
=
(
String
)
resultDataJson
.
get
(
"msg"
);
if
(
StringUtils
.
isNotBlank
(
msg
)&&
!
msg
.
equals
(
"订单来源单号已存在,请勿重复下单"
))
{
if
(
StringUtils
.
isNotBlank
(
msg
)
&&
!
msg
.
equals
(
"订单来源单号已存在,请勿重复下单"
))
{
Wrapper
<
Order
>
wrapper
=
new
EntityWrapper
<>();
Wrapper
<
Order
>
wrapper
=
new
EntityWrapper
<>();
wrapper
.
eq
(
"id"
,
order
.
getId
());
wrapper
.
eq
(
"id"
,
order
.
getId
());
Order
updateOrder
=
new
Order
();
Order
updateOrder
=
new
Order
();
...
@@ -1866,20 +2138,20 @@ public class IntelligenceSendOrder2 {
...
@@ -1866,20 +2138,20 @@ public class IntelligenceSendOrder2 {
* 查询智能平台状态(两个参数只要填写一个,默认填写系统订单号即可)
* 查询智能平台状态(两个参数只要填写一个,默认填写系统订单号即可)
*
*
* @param systemOrderNum 系统订单号
* @param systemOrderNum 系统订单号
* @param orderNum 智能平台订单号
* @param orderNum
智能平台订单号
* @return 返回结果为json字符串,若错误则返回空字符串
* @return 返回结果为json字符串,若错误则返回空字符串
* {
* {
*
msg=订单查询成功,
* msg=订单查询成功,
*
wayBillNumber=,
* wayBillNumber=,
*
sourceBizEntity=1eue64bp0d5xl1jdkgms,
* sourceBizEntity=1eue64bp0d5xl1jdkgms,
*
stateName=收费【人工处理】,
* stateName=收费【人工处理】,
*
outBizEntity=1eue64bp0d5xl1jdkgms,
* outBizEntity=1eue64bp0d5xl1jdkgms,
*
orderStatus=受理成功【待收费】,
* orderStatus=受理成功【待收费】,
*
remark=,
* remark=,
*
state=48,
* state=48,
*
bizEntity=THD20210110004759,
* bizEntity=THD20210110004759,
*
deliveryNumber=,
* deliveryNumber=,
*
status=000001
* status=000001
* }
* }
*/
*/
public
String
queryStatus
(
String
systemOrderNum
,
String
orderNum
)
{
public
String
queryStatus
(
String
systemOrderNum
,
String
orderNum
)
{
...
@@ -1895,28 +2167,28 @@ public class IntelligenceSendOrder2 {
...
@@ -1895,28 +2167,28 @@ public class IntelligenceSendOrder2 {
RequestConfig
requestConfig
=
RequestConfig
.
copy
(
defaultRequestConfig
).
build
();
RequestConfig
requestConfig
=
RequestConfig
.
copy
(
defaultRequestConfig
).
build
();
httpPost
.
setConfig
(
requestConfig
);
httpPost
.
setConfig
(
requestConfig
);
qParams
.
add
(
new
BasicNameValuePair
(
"service"
,
"query.order.status"
));
//api标识,必填
qParams
.
add
(
new
BasicNameValuePair
(
"service"
,
"query.order.status"
));
//api标识,必填
signMap
.
put
(
"service"
,
"query.order.status"
);
signMap
.
put
(
"service"
,
"query.order.status"
);
qParams
.
add
(
new
BasicNameValuePair
(
"userName"
,
Constant
.
ZHENGSHIAUCCON
));
//用户名,必填
qParams
.
add
(
new
BasicNameValuePair
(
"userName"
,
Constant
.
ZHENGSHIAUCCON
));
//用户名,必填
signMap
.
put
(
"userName"
,
Constant
.
ZHENGSHIAUCCON
);
signMap
.
put
(
"userName"
,
Constant
.
ZHENGSHIAUCCON
);
String
timeStamp
=
DateUtil
.
format
(
new
Date
(),
DateUtil
.
yyyyMMddHHmmss
);
String
timeStamp
=
DateUtil
.
format
(
new
Date
(),
DateUtil
.
yyyyMMddHHmmss
);
qParams
.
add
(
new
BasicNameValuePair
(
"timeStamp"
,
timeStamp
));
qParams
.
add
(
new
BasicNameValuePair
(
"timeStamp"
,
timeStamp
));
signMap
.
put
(
"timeStamp"
,
timeStamp
);
signMap
.
put
(
"timeStamp"
,
timeStamp
);
if
(
StringUtils
.
isNotBlank
(
orderNum
))
{
if
(
StringUtils
.
isNotBlank
(
orderNum
))
{
qParams
.
add
(
new
BasicNameValuePair
(
"orderNumber"
,
orderNum
));
//智能平台订单编号,非必填
qParams
.
add
(
new
BasicNameValuePair
(
"orderNumber"
,
orderNum
));
//智能平台订单编号,非必填
signMap
.
put
(
"orderNumber"
,
orderNum
);
signMap
.
put
(
"orderNumber"
,
orderNum
);
}
}
if
(
StringUtils
.
isNotBlank
(
systemOrderNum
))
{
if
(
StringUtils
.
isNotBlank
(
systemOrderNum
))
{
qParams
.
add
(
new
BasicNameValuePair
(
"outOrderNum"
,
systemOrderNum
));
//外部订单编号,非必填
qParams
.
add
(
new
BasicNameValuePair
(
"outOrderNum"
,
systemOrderNum
));
//外部订单编号,非必填
signMap
.
put
(
"outOrderNum"
,
systemOrderNum
);
signMap
.
put
(
"outOrderNum"
,
systemOrderNum
);
}
}
try
{
try
{
List
<
String
>
keys
=
new
ArrayList
<>();
List
<
String
>
keys
=
new
ArrayList
<>();
keys
.
addAll
(
signMap
.
keySet
());
keys
.
addAll
(
signMap
.
keySet
());
Collections
.
sort
(
keys
);
//key按字符串升序
Collections
.
sort
(
keys
);
//key按字符串升序
String
value
,
plaintext
=
""
;
String
value
,
plaintext
=
""
;
for
(
String
key
:
keys
)
{
for
(
String
key
:
keys
)
{
value
=
signMap
.
get
(
key
).
toString
();
value
=
signMap
.
get
(
key
).
toString
();
plaintext
=
plaintext
.
concat
(
value
);
plaintext
=
plaintext
.
concat
(
value
);
}
}
...
@@ -1925,7 +2197,7 @@ public class IntelligenceSendOrder2 {
...
@@ -1925,7 +2197,7 @@ public class IntelligenceSendOrder2 {
System
.
out
.
println
(
plaintext
);
System
.
out
.
println
(
plaintext
);
// plaintext = plaintext.concat("ef6f0b823b5cecc9972dee2bf9fb9936");
// plaintext = plaintext.concat("ef6f0b823b5cecc9972dee2bf9fb9936");
String
sign
=
DigestUtil
.
md5Hex
(
plaintext
).
toUpperCase
();
String
sign
=
DigestUtil
.
md5Hex
(
plaintext
).
toUpperCase
();
qParams
.
add
(
new
BasicNameValuePair
(
"sign"
,
sign
));
//签名,必填
qParams
.
add
(
new
BasicNameValuePair
(
"sign"
,
sign
));
//签名,必填
httpPost
.
setHeader
(
"Content-Type"
,
"application/x-www-form-urlencoded;charset=utf-8"
);
httpPost
.
setHeader
(
"Content-Type"
,
"application/x-www-form-urlencoded;charset=utf-8"
);
httpPost
.
setEntity
(
new
UrlEncodedFormEntity
(
qParams
,
"UTF-8"
));
httpPost
.
setEntity
(
new
UrlEncodedFormEntity
(
qParams
,
"UTF-8"
));
HttpResponse
response
=
httpclient
.
execute
(
httpPost
);
HttpResponse
response
=
httpclient
.
execute
(
httpPost
);
...
...
common/src/main/java/com/winsun/utils/ZnptSignUtils.java
View file @
0b824a7b
...
@@ -16,7 +16,7 @@ public class ZnptSignUtils {
...
@@ -16,7 +16,7 @@ public class ZnptSignUtils {
private
final
SecretKeySpec
secretKey
;
private
final
SecretKeySpec
secretKey
;
public
ZnptSignUtils
()
{
public
ZnptSignUtils
()
{
try
{
try
{
byte
[]
data
=
macKey
.
getBytes
(
ENCODING
);
byte
[]
data
=
macKey
.
getBytes
(
ENCODING
);
this
.
secretKey
=
new
SecretKeySpec
(
data
,
MAC_NAME
);
this
.
secretKey
=
new
SecretKeySpec
(
data
,
MAC_NAME
);
...
...
core-service/src/main/resources/application-local.yml
View file @
0b824a7b
...
@@ -10,7 +10,7 @@ eureka:
...
@@ -10,7 +10,7 @@ eureka:
serviceUrl
:
serviceUrl
:
defaultZone
:
http://localhost:20000/eureka/
defaultZone
:
http://localhost:20000/eureka/
server
:
server
:
port
:
1000
2
port
:
1000
3
servlet
:
servlet
:
context-path
:
/ciop
context-path
:
/ciop
tomcat
:
tomcat
:
...
...
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