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
9c5d3cbf
Commit
9c5d3cbf
authored
Apr 27, 2021
by
周晓航
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
根据商户号微信数据上报, 首次提交 还有xxl-job没配置
parent
bb06dc67
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
438 additions
and
22 deletions
+438
-22
order-application-service/pom.xml
+7
-0
order-application-service/src/main/java/cn/freemud/config/XxlJobConfig.java
+55
-0
order-application-service/src/main/java/cn/freemud/entities/dto/delivery/GetFilterPartnerResponse.java
+21
-0
order-application-service/src/main/java/cn/freemud/entities/dto/delivery/PartnerFilterResponse.java
+30
-0
order-application-service/src/main/java/cn/freemud/entities/vo/OrderCountRequestVo.java
+20
-0
order-application-service/src/main/java/cn/freemud/service/Orderservice.java
+17
-4
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+37
-18
order-application-service/src/main/java/cn/freemud/service/thirdparty/MicroOpenplatformClient.java
+43
-0
order-application-service/src/main/java/cn/freemud/xxljob/OrderCountJobHandler.java
+111
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/constant/InterfaceAddressConstant.java
+5
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/request/OrderCountReqs.java
+27
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/response/OrderCountResp.java
+42
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/response/OrderGetPartnerRequest.java
+17
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/service/OrderSdkService.java
+6
-0
No files found.
order-application-service/pom.xml
View file @
9c5d3cbf
...
@@ -17,6 +17,13 @@
...
@@ -17,6 +17,13 @@
<artifactId>
order-application-service
</artifactId>
<artifactId>
order-application-service
</artifactId>
<dependencies>
<dependencies>
<dependency>
<groupId>
com.xuxueli
</groupId>
<artifactId>
xxl-job-core
</artifactId>
<version>
2.0.1
</version>
</dependency>
<dependency>
<dependency>
<groupId>
com.freemud.application.service.sdk
</groupId>
<groupId>
com.freemud.application.service.sdk
</groupId>
<artifactId>
sdk-common-base
</artifactId>
<artifactId>
sdk-common-base
</artifactId>
...
...
order-application-service/src/main/java/cn/freemud/config/XxlJobConfig.java
0 → 100644
View file @
9c5d3cbf
package
cn
.
freemud
.
config
;
import
com.xxl.job.core.executor.impl.XxlJobSpringExecutor
;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午6:21
* @description : xxl-job 配置
*/
@Configuration
@Log4j2
public
class
XxlJobConfig
{
@Value
(
"${xxl.job.admin.addresses:http://111.231.99.41:7788/xxl-job-admin}"
)
private
String
adminAddresses
;
@Value
(
"${xxl.job.executor.appname:xxl-job-executor-report-orders-wechat}"
)
private
String
appName
;
@Value
(
"${xxl.job.executor.ip}"
)
private
String
ip
;
@Value
(
"${xxl.job.executor.port}"
)
private
int
port
;
@Value
(
"${xxl.job.accessToken}"
)
private
String
accessToken
;
@Value
(
"${xxl.job.executor.logpath:/data/applogs/xxl-job/jobhandler}"
)
private
String
logPath
;
@Value
(
"${xxl.job.executor.logretentiondays:-1}"
)
private
int
logRetentionDays
;
@Bean
(
initMethod
=
"start"
,
destroyMethod
=
"destroy"
)
public
XxlJobSpringExecutor
xxlJobExecutor
()
{
log
.
info
(
">>>>>>>>>>> xxl-job config init."
);
XxlJobSpringExecutor
xxlJobSpringExecutor
=
new
XxlJobSpringExecutor
();
xxlJobSpringExecutor
.
setAdminAddresses
(
adminAddresses
);
xxlJobSpringExecutor
.
setAppName
(
appName
);
xxlJobSpringExecutor
.
setIp
(
ip
);
xxlJobSpringExecutor
.
setPort
(
port
);
xxlJobSpringExecutor
.
setAccessToken
(
accessToken
);
xxlJobSpringExecutor
.
setLogPath
(
logPath
);
xxlJobSpringExecutor
.
setLogRetentionDays
(
logRetentionDays
);
return
xxlJobSpringExecutor
;
}
}
order-application-service/src/main/java/cn/freemud/entities/dto/delivery/GetFilterPartnerResponse.java
0 → 100644
View file @
9c5d3cbf
package
cn
.
freemud
.
entities
.
dto
.
delivery
;
import
java.util.List
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:53
* @description :
*/
public
class
GetFilterPartnerResponse
{
private
List
<
PartnerFilterResponse
>
partnerFilterVos
;
public
List
<
PartnerFilterResponse
>
getPartnerFilterVos
()
{
return
partnerFilterVos
;
}
public
void
setPartnerFilterVos
(
List
<
PartnerFilterResponse
>
partnerFilterVos
)
{
this
.
partnerFilterVos
=
partnerFilterVos
;
}
}
order-application-service/src/main/java/cn/freemud/entities/dto/delivery/PartnerFilterResponse.java
0 → 100644
View file @
9c5d3cbf
package
cn
.
freemud
.
entities
.
dto
.
delivery
;
import
java.util.Set
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:53
* @description :
*/
public
class
PartnerFilterResponse
{
private
String
partnerId
;
private
Set
<
String
>
miniAppIds
;
public
String
getPartnerId
()
{
return
partnerId
;
}
public
void
setPartnerId
(
String
partnerId
)
{
this
.
partnerId
=
partnerId
;
}
public
Set
<
String
>
getMiniAppIds
()
{
return
miniAppIds
;
}
public
void
setMiniAppIds
(
Set
<
String
>
miniAppIds
)
{
this
.
miniAppIds
=
miniAppIds
;
}
}
order-application-service/src/main/java/cn/freemud/entities/vo/OrderCountRequestVo.java
0 → 100644
View file @
9c5d3cbf
package
cn
.
freemud
.
entities
.
vo
;
import
lombok.Data
;
import
java.util.*
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午8:38
* @description :
*/
@Data
public
class
OrderCountRequestVo
{
Set
<
String
>
partnerIds
;
private
Date
beginTime
;
private
Date
endTmie
;
}
order-application-service/src/main/java/cn/freemud/service/Orderservice.java
View file @
9c5d3cbf
...
@@ -4,8 +4,10 @@ import cn.freemud.base.entity.BaseResponse;
...
@@ -4,8 +4,10 @@ import cn.freemud.base.entity.BaseResponse;
import
cn.freemud.entities.dto.ConfirmOrderDto
;
import
cn.freemud.entities.dto.ConfirmOrderDto
;
import
cn.freemud.entities.dto.QueryOrdersResponseDto
;
import
cn.freemud.entities.dto.QueryOrdersResponseDto
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.entities.vo.*
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderCountResp
;
import
com.freemud.sdk.api.assortment.order.enums.OrderSdkType
;
import
com.freemud.sdk.api.assortment.order.enums.OrderSdkType
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
/**
/**
...
@@ -113,14 +115,16 @@ public interface Orderservice {
...
@@ -113,14 +115,16 @@ public interface Orderservice {
/**
/**
* 创建积分订单
* 创建积分订单
*
* @param vo
* @param vo
* @return
* @return
*/
*/
BaseResponse
createIntegralOrder
(
IntegralOrderVo
vo
);
BaseResponse
createIntegralOrder
(
IntegralOrderVo
vo
);
/**
* @用户积分订单列表
/**
* @param queryOrderByConditionsRequestVo
* @param queryOrderByConditionsRequestVo
* @return
* @return
* @用户积分订单列表
*/
*/
BaseResponse
queryOrderByConditions
(
QueryOrderByConditionsRequestVo
queryOrderByConditionsRequestVo
);
BaseResponse
queryOrderByConditions
(
QueryOrderByConditionsRequestVo
queryOrderByConditionsRequestVo
);
...
@@ -132,7 +136,7 @@ public interface Orderservice {
...
@@ -132,7 +136,7 @@ public interface Orderservice {
BaseResponse
mcCafeQueryOrders
(
McCafeQueryOrderVo
queryOrderVo
);
BaseResponse
mcCafeQueryOrders
(
McCafeQueryOrderVo
queryOrderVo
);
BaseResponse
mcCafePollingPickUpCode
(
MaCafeQueryOrderVo
vo
);
BaseResponse
mcCafePollingPickUpCode
(
MaCafeQueryOrderVo
vo
);
/**
/**
* 通过订单号查询订单详情
* 通过订单号查询订单详情
...
@@ -141,7 +145,7 @@ public interface Orderservice {
...
@@ -141,7 +145,7 @@ public interface Orderservice {
* @param oid 订单ID
* @param oid 订单ID
* @return
* @return
*/
*/
BaseResponse
queryCollageOrderById
(
Integer
operation
,
String
sessionId
,
String
oid
,
String
partnerId
,
String
channel
);
BaseResponse
queryCollageOrderById
(
Integer
operation
,
String
sessionId
,
String
oid
,
String
partnerId
,
String
channel
);
BaseResponse
timeOutOrderRefund
(
TimeOutOrderVo
timeOutOrderVo
);
BaseResponse
timeOutOrderRefund
(
TimeOutOrderVo
timeOutOrderVo
);
...
@@ -149,6 +153,7 @@ public interface Orderservice {
...
@@ -149,6 +153,7 @@ public interface Orderservice {
/**
/**
* 统计当日订单数
* 统计当日订单数
*
* @param queryOrderByConditionsRequestVo
* @param queryOrderByConditionsRequestVo
* @return
* @return
*/
*/
...
@@ -156,4 +161,12 @@ public interface Orderservice {
...
@@ -156,4 +161,12 @@ public interface Orderservice {
BaseResponse
scoreRecord
(
QueryOrderVo
queryOrderVo
);
BaseResponse
scoreRecord
(
QueryOrderVo
queryOrderVo
);
/**
* 【ID1028455】 【订单】非码-腾讯有数数据上报V1.0.0
* 每天6点前上报昨天数据
*
* @param orderCountRequestVo
* @return
*/
BaseResponse
<
List
<
OrderCountResp
>>
selectCountOrdersByPartnerIds
(
OrderCountRequestVo
orderCountRequestVo
,
String
trackingNo
);
}
}
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
9c5d3cbf
...
@@ -81,6 +81,7 @@ import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
...
@@ -81,6 +81,7 @@ import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
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.ParkingOrderCreateReq
;
import
com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq
;
import
com.freemud.application.sdk.api.ordercenter.response.BaseDownLoadResponse
;
import
com.freemud.application.sdk.api.ordercenter.response.BaseDownLoadResponse
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderCountResp
;
import
com.freemud.application.sdk.api.ordercenter.response.carpark.OrderResp
;
import
com.freemud.application.sdk.api.ordercenter.response.carpark.OrderResp
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp
;
...
@@ -1329,11 +1330,11 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1329,11 +1330,11 @@ public class OrderServiceImpl implements Orderservice {
responseVo
.
setRiderPhone
(
deliveryBaseResponse
.
getData
().
getRiderPhone
());
responseVo
.
setRiderPhone
(
deliveryBaseResponse
.
getData
().
getRiderPhone
());
// responseVo.setExpressType(orderBean.getExpressType());
// responseVo.setExpressType(orderBean.getExpressType());
if
(
orderBean
.
getAddInfo
()
!=
null
&&
orderBean
.
getAddInfo
().
getDeliveryType
()
!=
null
&&
QueryDeliveryType
.
THIRD
.
getCode
().
equals
(
orderBean
.
getAddInfo
().
getDeliveryType
())
if
(
orderBean
.
getAddInfo
()
!=
null
&&
orderBean
.
getAddInfo
().
getDeliveryType
()
!=
null
&&
QueryDeliveryType
.
THIRD
.
getCode
().
equals
(
orderBean
.
getAddInfo
().
getDeliveryType
())
&&
(
DeliveryStatus
.
DELIVERYERROR
.
getCode
()
==
orderBean
.
getAddInfo
().
getDeliverStatus
()
||
DeliveryStatus
.
DELIVERYCANCEL
.
getCode
()
==
orderBean
.
getAddInfo
().
getDeliverStatus
())
&&
(
DeliveryStatus
.
DELIVERYERROR
.
getCode
()
==
orderBean
.
getAddInfo
().
getDeliverStatus
()
||
DeliveryStatus
.
DELIVERYCANCEL
.
getCode
()
==
orderBean
.
getAddInfo
().
getDeliverStatus
())
){
)
{
responseVo
.
setDeliveryType
(
QueryDeliveryType
.
SELF
.
getCode
());
responseVo
.
setDeliveryType
(
QueryDeliveryType
.
SELF
.
getCode
());
}
else
{
}
else
{
responseVo
.
setDeliveryType
(
orderBean
.
getAddInfo
()
==
null
?
""
:
orderBean
.
getAddInfo
().
getDeliveryType
());
responseVo
.
setDeliveryType
(
orderBean
.
getAddInfo
()
==
null
?
""
:
orderBean
.
getAddInfo
().
getDeliveryType
());
}
}
...
@@ -1412,13 +1413,13 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1412,13 +1413,13 @@ public class OrderServiceImpl implements Orderservice {
List
<
String
>
skuIds
=
queryOrderResponseVo
.
getProducts
().
stream
().
map
(
p
->
p
.
getPid
()).
collect
(
Collectors
.
toList
());
List
<
String
>
skuIds
=
queryOrderResponseVo
.
getProducts
().
stream
().
map
(
p
->
p
.
getPid
()).
collect
(
Collectors
.
toList
());
if
(
hlsPartnerId
!=
null
&&
hlsPartnerId
.
contains
(
partnerId
))
{
if
(
hlsPartnerId
!=
null
&&
hlsPartnerId
.
contains
(
partnerId
))
{
// 华莱士获取支付有理促销数据时须将套餐商品内固定搭配、可选搭配商品的skuId一同传入
// 华莱士获取支付有理促销数据时须将套餐商品内固定搭配、可选搭配商品的skuId一同传入
queryOrderResponseVo
.
getProducts
().
forEach
(
productVo
->
{
queryOrderResponseVo
.
getProducts
().
forEach
(
productVo
->
{
if
(
CollectionUtils
.
isNotEmpty
(
productVo
.
getSetMealProducts
()))
{
if
(
CollectionUtils
.
isNotEmpty
(
productVo
.
getSetMealProducts
()))
{
productVo
.
getSetMealProducts
().
forEach
(
setMealProduct
->
{
productVo
.
getSetMealProducts
().
forEach
(
setMealProduct
->
{
skuIds
.
add
(
setMealProduct
.
getPid
());
skuIds
.
add
(
setMealProduct
.
getPid
());
});
});
}
}
});
});
}
}
payGitRequestDto
.
setSkuIds
(
skuIds
);
payGitRequestDto
.
setSkuIds
(
skuIds
);
...
@@ -3240,7 +3241,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -3240,7 +3241,7 @@ public class OrderServiceImpl implements Orderservice {
//混合支付项
//混合支付项
if
(
CollectionUtils
.
isNotEmpty
(
orderPayResponse
.
getPayItem
()))
{
if
(
CollectionUtils
.
isNotEmpty
(
orderPayResponse
.
getPayItem
()))
{
orderEditRequest
.
setOrderPayItem
(
orderPayResponse
.
getPayItem
());
orderEditRequest
.
setOrderPayItem
(
orderPayResponse
.
getPayItem
());
if
(
orderPayResponse
.
getPayItem
().
size
()==
2
)
{
if
(
orderPayResponse
.
getPayItem
().
size
()
==
2
)
{
orderEditRequest
.
setPayChannel
(
PayChannelType
.
COMB
.
getEbcode
());
orderEditRequest
.
setPayChannel
(
PayChannelType
.
COMB
.
getEbcode
());
orderEditRequest
.
setPayChannelName
(
PayChannelType
.
COMB
.
getName
());
orderEditRequest
.
setPayChannelName
(
PayChannelType
.
COMB
.
getName
());
orderEditRequest
.
setPayChannelType
(
PayChannelType
.
COMB
.
getIndex
());
orderEditRequest
.
setPayChannelType
(
PayChannelType
.
COMB
.
getIndex
());
...
@@ -4076,7 +4077,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -4076,7 +4077,7 @@ public class OrderServiceImpl implements Orderservice {
}
}
@Override
@Override
public
BaseResponse
scoreRecord
(
QueryOrderVo
queryOrderVo
){
public
BaseResponse
scoreRecord
(
QueryOrderVo
queryOrderVo
)
{
AssortmentCustomerInfoVo
userLoginInfoDto
=
customerInfoManager
.
getCustomerInfoByObject
(
queryOrderVo
.
getSessionId
());
AssortmentCustomerInfoVo
userLoginInfoDto
=
customerInfoManager
.
getCustomerInfoByObject
(
queryOrderVo
.
getSessionId
());
if
(
userLoginInfoDto
==
null
||
StringUtils
.
isBlank
(
userLoginInfoDto
.
getMemberId
()))
{
if
(
userLoginInfoDto
==
null
||
StringUtils
.
isBlank
(
userLoginInfoDto
.
getMemberId
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
NOT_LOGIN
);
return
ResponseUtil
.
error
(
ResponseResult
.
NOT_LOGIN
);
...
@@ -4087,7 +4088,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -4087,7 +4088,7 @@ public class OrderServiceImpl implements Orderservice {
Date
now
=
new
Date
();
Date
now
=
new
Date
();
startDate
=
DateUtil
.
addMonths
(
now
,
-
6
);
startDate
=
DateUtil
.
addMonths
(
now
,
-
6
);
endDate
=
DateUtil
.
addDays
(
now
,
1
);
endDate
=
DateUtil
.
addDays
(
now
,
1
);
}
else
{
}
else
{
String
startDateStr
=
queryOrderVo
.
getStartDate
()
+
" 00:00:00"
;
String
startDateStr
=
queryOrderVo
.
getStartDate
()
+
" 00:00:00"
;
String
endDateStr
=
queryOrderVo
.
getEndDate
()
+
" 23:59:59"
;
String
endDateStr
=
queryOrderVo
.
getEndDate
()
+
" 23:59:59"
;
startDate
=
DateUtil
.
convert2Date
(
startDateStr
,
"yyyy-MM-dd HH:mm:ss"
);
startDate
=
DateUtil
.
convert2Date
(
startDateStr
,
"yyyy-MM-dd HH:mm:ss"
);
...
@@ -4115,21 +4116,39 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -4115,21 +4116,39 @@ public class OrderServiceImpl implements Orderservice {
List
<
ScoreRecordVo
>
result
=
new
ArrayList
<>();
List
<
ScoreRecordVo
>
result
=
new
ArrayList
<>();
if
(
null
==
response
||
null
==
response
.
getResult
())
{
if
(
null
==
response
||
null
==
response
.
getResult
())
{
return
ResponseUtil
.
success
(
result
);
return
ResponseUtil
.
success
(
result
);
}
}
List
<
OrderInfoReqs
>
list
=
response
.
getResult
();
List
<
OrderInfoReqs
>
list
=
response
.
getResult
();
list
.
forEach
(
order
->
{
list
.
forEach
(
order
->
{
ScoreRecordVo
responseVo
=
new
ScoreRecordVo
();
ScoreRecordVo
responseVo
=
new
ScoreRecordVo
();
responseVo
.
setOrderCode
(
order
.
getOrderCode
());
responseVo
.
setOrderCode
(
order
.
getOrderCode
());
if
(
order
.
getCreateTime
()
!=
null
)
{
if
(
order
.
getCreateTime
()
!=
null
)
{
responseVo
.
setCreateTime
(
Long
.
parseLong
(
order
.
getCreateTime
()));
responseVo
.
setCreateTime
(
Long
.
parseLong
(
order
.
getCreateTime
()));
}
}
if
(
CollectionUtils
.
isNotEmpty
(
order
.
getOrderItemList
()))
{
if
(
CollectionUtils
.
isNotEmpty
(
order
.
getOrderItemList
()))
{
responseVo
.
setProductName
(
order
.
getOrderItemList
().
get
(
0
).
getProductName
());
responseVo
.
setProductName
(
order
.
getOrderItemList
().
get
(
0
).
getProductName
());
responseVo
.
setProductQuantity
(
order
.
getOrderItemList
().
get
(
0
).
getProductQuantity
());
responseVo
.
setProductQuantity
(
order
.
getOrderItemList
().
get
(
0
).
getProductQuantity
());
}
}
result
.
add
(
responseVo
);
result
.
add
(
responseVo
);
});
});
return
ResponseUtil
.
success
(
result
);
return
ResponseUtil
.
success
(
result
);
}
@Override
public
BaseResponse
<
List
<
OrderCountResp
>>
selectCountOrdersByPartnerIds
(
OrderCountRequestVo
orderCountRequestVo
,
String
trackingNo
)
{
OrderCountReqs
orderCountReqs
=
new
OrderCountReqs
();
BeanUtil
.
convertBean
(
orderCountRequestVo
,
orderCountReqs
);
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
response
.
BaseResponse
<
List
<
OrderCountResp
>>
result
=
orderSdkService
.
countOrdersByPartnerIds
(
orderCountReqs
,
trackingNo
);
if
(
Objects
.
isNull
(
result
))
{
return
new
BaseResponse
(
ResponseResultEnum
.
SYSTEM_ERROR
.
getCode
(),
ResponseResultEnum
.
SYSTEM_ERROR
.
getMessage
(),
""
,
null
);
}
if
(!
ResponseResultEnum
.
SUCCESS
.
getCode
().
equalsIgnoreCase
(
result
.
getCode
())
||
Objects
.
isNull
(
result
.
getResult
()))
{
return
new
BaseResponse
(
result
.
getCode
(),
result
.
getMessage
(),
""
,
null
);
}
return
ResponseUtil
.
success
(
result
.
getResult
());
}
}
}
}
order-application-service/src/main/java/cn/freemud/service/thirdparty/MicroOpenplatformClient.java
0 → 100644
View file @
9c5d3cbf
package
cn
.
freemud
.
service
.
thirdparty
;
import
cn.freemud.entities.dto.delivery.GetFilterPartnerResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderCountResp
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderGetPartnerRequest
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.http.MediaType
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
java.util.List
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:03
* @description :
*/
@FeignClient
(
name
=
"MICRO-OPENPLATFORM"
)
@RequestMapping
(
consumes
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
interface
MicroOpenplatformClient
{
/**
* 上报微信 有数 统计数据
*
* @param orderCounts
* @return
*/
@PostMapping
(
"/thirdApp/order/addOrderSum"
)
BaseResponse
addOrderSum
(
@RequestBody
List
<
OrderCountResp
>
orderCounts
);
/**
* 获取需要 上报腾讯有数的 商户号
*
* @return
*/
@PostMapping
(
"/thirdApp/getFilterPartner"
)
BaseResponse
<
GetFilterPartnerResponse
>
getFilterPartner
(
@RequestBody
OrderGetPartnerRequest
request
);
}
order-application-service/src/main/java/cn/freemud/xxljob/OrderCountJobHandler.java
0 → 100644
View file @
9c5d3cbf
package
cn
.
freemud
.
xxljob
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.entities.dto.delivery.GetFilterPartnerResponse
;
import
cn.freemud.entities.dto.delivery.PartnerFilterResponse
;
import
cn.freemud.entities.vo.OrderCountRequestVo
;
import
cn.freemud.service.Orderservice
;
import
cn.freemud.service.thirdparty.MicroOpenplatformClient
;
import
com.freemud.application.sdk.api.constant.ResponseResultEnum
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderCountReqs
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderCountResp
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderGetPartnerRequest
;
import
com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant
;
import
com.xxl.job.core.biz.model.ReturnT
;
import
com.xxl.job.core.handler.IJobHandler
;
import
com.xxl.job.core.handler.annotation.JobHandler
;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.text.SimpleDateFormat
;
import
java.util.Calendar
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午8:27
* @description :
*/
@Component
@JobHandler
(
"orderCountJobHandler"
)
@Log4j2
public
class
OrderCountJobHandler
extends
IJobHandler
{
@Autowired
private
Orderservice
orderservice
;
@Autowired
private
MicroOpenplatformClient
microOpenplatformClient
;
/**
* 【ID1028455】 【订单】非码-腾讯有数数据上报V1.0.0
* 每天6点前上报昨天数据
*
* @param param
* @return
* @throws Exception
*/
@Override
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
// 获取需要 上报的商户号
BaseResponse
<
GetFilterPartnerResponse
>
filterPartner
=
microOpenplatformClient
.
getFilterPartner
(
OrderGetPartnerRequest
.
builder
().
type
(
2
).
build
());
String
trackingNo
=
LogThreadLocal
.
getTrackingNo
();
log
.
info
(
"orderCountJobHandler getFilterPartner filterPartner: {} , trackingNo:{}"
,
filterPartner
,
trackingNo
);
if
(
filterPartner
==
null
||
filterPartner
.
getResult
()
==
null
)
{
return
ReturnT
.
SUCCESS
;
}
OrderCountRequestVo
orderCountRequestVo
=
new
OrderCountRequestVo
();
Set
<
String
>
partnerFilter
=
getPartnerFilter
(
filterPartner
.
getResult
());
orderCountRequestVo
.
setPartnerIds
(
partnerFilter
);
// 时间设置 前一天
setBeginAndEndTime
(
orderCountRequestVo
);
BaseResponse
<
List
<
OrderCountResp
>>
result
=
orderservice
.
selectCountOrdersByPartnerIds
(
orderCountRequestVo
,
trackingNo
);
log
.
info
(
"orderCountJobHandler send report order count msg request:{} response:{} , trackingNo:{} "
,
orderCountRequestVo
,
result
,
trackingNo
);
if
(!
ResponseResultEnum
.
SUCCESS
.
getCode
().
equalsIgnoreCase
(
result
.
getCode
())
||
Objects
.
isNull
(
result
.
getResult
()))
{
return
ReturnT
.
SUCCESS
;
}
// 每次推送 只能 50条 让生态端处理
List
<
OrderCountResp
>
orderCounts
=
result
.
getResult
();
BaseResponse
baseResponse
=
microOpenplatformClient
.
addOrderSum
(
orderCounts
);
log
.
info
(
"orderCountJobHandler send report order end result :{} , trackingNo:{}"
,
baseResponse
,
trackingNo
);
return
ReturnT
.
SUCCESS
;
}
private
void
setBeginAndEndTime
(
OrderCountRequestVo
request
)
{
Calendar
start
=
Calendar
.
getInstance
();
// 取昨天时间 的 00:00:00
start
.
add
(
5
,
-
1
);
start
.
set
(
Calendar
.
HOUR_OF_DAY
,
00
);
start
.
set
(
Calendar
.
MINUTE
,
0
);
start
.
set
(
Calendar
.
SECOND
,
0
);
// 取昨天时间 的 23:59:59
Calendar
end
=
Calendar
.
getInstance
();
end
.
add
(
5
,
-
1
);
end
.
set
(
Calendar
.
HOUR_OF_DAY
,
23
);
end
.
set
(
Calendar
.
MINUTE
,
59
);
end
.
set
(
Calendar
.
SECOND
,
59
);
SimpleDateFormat
sm
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
request
.
setBeginTime
(
start
.
getTime
());
request
.
setEndTmie
(
end
.
getTime
());
}
private
Set
<
String
>
getPartnerFilter
(
GetFilterPartnerResponse
data
)
{
if
(
data
.
getPartnerFilterVos
().
isEmpty
())
{
return
null
;
}
return
data
.
getPartnerFilterVos
().
stream
().
map
(
PartnerFilterResponse:
:
getPartnerId
).
collect
(
Collectors
.
toSet
());
}
}
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/constant/InterfaceAddressConstant.java
View file @
9c5d3cbf
...
@@ -246,4 +246,9 @@ public class InterfaceAddressConstant {
...
@@ -246,4 +246,9 @@ public class InterfaceAddressConstant {
*/
*/
public
static
final
String
QUERY_LINEUP_ORDER
=
"order/v2/queryLineUpOrder"
;
public
static
final
String
QUERY_LINEUP_ORDER
=
"order/v2/queryLineUpOrder"
;
/**
* 查询 指定日期对应 商户号 的订单汇总数据
*/
public
static
final
String
QUERY_ORDER_COUNT_REPORT
=
"order/v2/orderCount"
;
}
}
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/request/OrderCountReqs.java
0 → 100644
View file @
9c5d3cbf
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
request
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Set
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午8:48
* @description :
*/
@Data
public
class
OrderCountReqs
{
@ApiModelProperty
(
value
=
"查询的商户集合"
,
required
=
true
)
Set
<
String
>
partnerIds
;
@ApiModelProperty
(
value
=
"开始时间,如 2021-04-21 00:00:00"
,
required
=
true
)
private
Date
beginTime
;
@ApiModelProperty
(
value
=
"结束时间,如 2021-04-21 23:59:59"
,
required
=
true
)
private
Date
endTmie
;
}
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/response/OrderCountResp.java
0 → 100644
View file @
9c5d3cbf
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
response
;
import
lombok.Builder
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午9:04
* @description :
* ref_date string Y 日期,unix时间戳,字段长度为13字节
*
* give_order_amount_sum float Y 该日期的下单金额之和
* give_order_num_sum integer Y 该日期的下单数量之和
* payment_amount_sum float Y 该日期的支付金额之和
* payed_num_sum integer Y 该日期的支付数量之和
*/
@Data
@Builder
public
class
OrderCountResp
{
// 商户号 用于内存剔除 不需要的商户号统计
private
String
partnerId
;
// 日期,unix时间戳,字段长度为13字节
private
Date
ref_date
;
// 该日期的下单金额之和
private
Float
give_order_amount_sum
;
// 该日期的下单数量之和
private
Integer
give_order_num_sum
;
// 该日期的支付金额之和
private
Float
payment_amount_sum
;
// 该日期的支付数量之和
private
Integer
payed_num_sum
;
}
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/response/OrderGetPartnerRequest.java
0 → 100644
View file @
9c5d3cbf
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
response
;
import
lombok.Builder
;
import
lombok.Data
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:49
* @description :
*/
@Data
@Builder
public
class
OrderGetPartnerRequest
{
//1,活动招商;2,腾讯有数
private
Integer
type
;
}
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/service/OrderSdkService.java
View file @
9c5d3cbf
...
@@ -937,4 +937,10 @@ public class OrderSdkService {
...
@@ -937,4 +937,10 @@ public class OrderSdkService {
return
responseHandle
(
responseDTO
);
return
responseHandle
(
responseDTO
);
}
}
public
BaseResponse
<
List
<
OrderCountResp
>>
countOrdersByPartnerIds
(
OrderCountReqs
orderCountReqs
,
String
trackingNo
)
{
OrderBaseResp
<
List
<
OrderCountResp
>>
responseDTO
=
RequestThirdPartyUtils
.
httpJsonReqComplexNew
(
restTemplate
,
QUERY_ORDER_COUNT_REPORT
,
createBaseRequest
(
orderCountReqs
,
trackingNo
),
new
ParameterizedTypeReference
<
OrderBaseResp
<
List
<
OrderCountResp
>>>()
{
});
return
responseHandle
(
responseDTO
);
}
}
}
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