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
8cce065b
Commit
8cce065b
authored
Jan 08, 2020
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
下单获取用户信息修改
parent
d9011769
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
285 additions
and
307 deletions
+285
-307
order-application-service/pom.xml
+1
-1
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
+0
-0
order-application-service/src/main/java/cn/freemud/adapter/UserAdapter.java
+42
-42
order-application-service/src/main/java/cn/freemud/entities/dto/UserLoginInfoDto.java
+51
-27
order-application-service/src/main/java/cn/freemud/entities/dto/user/UserInfoDto.java
+35
-35
order-application-service/src/main/java/cn/freemud/service/UserService.java
+25
-25
order-application-service/src/main/java/cn/freemud/service/impl/BuriedPointServiceImpl.java
+0
-5
order-application-service/src/main/java/cn/freemud/service/impl/CheckOrder.java
+14
-8
order-application-service/src/main/java/cn/freemud/service/impl/OrderCommonService.java
+0
-14
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+11
-9
order-application-service/src/main/java/cn/freemud/service/impl/UserServiceImpl.java
+81
-117
order-application-service/src/main/java/cn/freemud/service/process/WechatPush/WechatPushProcessor.java
+15
-13
order-application-service/src/test/java/cn.freemud/service/WechatPushProcessorTest.java
+10
-11
No files found.
order-application-service/pom.xml
View file @
8cce065b
...
...
@@ -109,7 +109,7 @@
<dependency>
<artifactId>
assortment-data-manager
</artifactId>
<groupId>
com.freemud.sdk.api.assortment
</groupId>
<version>
3.5
.RELEASE
</version>
<version>
4.1.3
.RELEASE
</version>
</dependency>
<dependency>
<groupId>
cn.freemud.commons
</groupId>
...
...
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
View file @
8cce065b
This diff is collapsed.
Click to expand it.
order-application-service/src/main/java/cn/freemud/adapter/UserAdapter.java
View file @
8cce065b
package
cn
.
freemud
.
adapter
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.vo.AddDeliveryAddressVo
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.QueryReceiveAddressResponseVo
;
import
cn.freemud.entities.vo.UserLoginVo
;
import
cn.freemud.enums.ReceiveAddressLabelType
;
import
cn.freemud.enums.SexType
;
import
cn.freemud.manager.OpenPlatformPartnerStoreDeliveryConfigManager
;
import
cn.freemud.service.impl.StoreServiceImpl
;
import
cn.freemud.utils.UnicodeUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.google.gson.Gson
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.*
;
import
java.util.stream.Collectors
;
@Component
public
class
UserAdapter
{
public
UserLoginInfoDto
getUserLoginInfoDto
(
Map
<
String
,
Object
>
map
)
{
UserLoginInfoDto
userLoginInfoDto
=
new
UserLoginInfoDto
();
userLoginInfoDto
.
setOpenId
(
String
.
valueOf
(
map
.
get
(
"openid"
)));
userLoginInfoDto
.
setWxAppid
(
String
.
valueOf
(
map
.
get
(
"wxAppi
d"
)));
userLoginInfoDto
.
setSessionKey
(
String
.
valueOf
(
map
.
get
(
"session_key"
)));
userLoginInfoDto
.
setMobile
(
String
.
valueOf
(
map
.
get
(
"mobile"
)));
userLoginInfoDto
.
setApps
ecret
(
String
.
valueOf
(
map
.
get
(
"appsecret"
)));
userLoginInfoDto
.
setMemberId
(
String
.
valueOf
(
map
.
get
(
"memberId"
)));
userLoginInfoDto
.
setPartnerId
(
String
.
valueOf
(
map
.
get
(
"partnerId"
)));
userLoginInfoDto
.
setUnionId
(
String
.
valueOf
(
map
.
get
(
"unionId"
)));
userLoginInfoDto
.
setNewMeme
ber
(
Boolean
.
valueOf
(
map
.
get
(
"newMember"
).
toString
()));
userLoginInfoDto
.
setNickName
(
String
.
valueOf
(
map
.
get
(
"nickName"
)));
return
userLoginInfoDto
;
}
}
//
package cn.freemud.adapter;
//
//
import cn.freemud.entities.dto.*;
//
import cn.freemud.entities.vo.AddDeliveryAddressVo;
//
import cn.freemud.entities.vo.CreateOrderVo;
//
import cn.freemud.entities.vo.QueryReceiveAddressResponseVo;
//
import cn.freemud.entities.vo.UserLoginVo;
//
import cn.freemud.enums.ReceiveAddressLabelType;
//
import cn.freemud.enums.SexType;
//
import cn.freemud.manager.OpenPlatformPartnerStoreDeliveryConfigManager;
//
import cn.freemud.service.impl.StoreServiceImpl;
//
import cn.freemud.utils.UnicodeUtil;
//
import com.alibaba.fastjson.JSONObject;
//
import com.google.common.collect.Lists;
//
import com.google.common.collect.Maps;
//
import com.google.gson.Gson;
//
import org.apache.commons.collections4.CollectionUtils;
//
import org.apache.commons.lang.StringUtils;
//
import org.springframework.beans.factory.annotation.Autowired;
//
import org.springframework.stereotype.Component;
//
//
import java.util.*;
//
import java.util.stream.Collectors;
//
//
@Component
//
public class UserAdapter {
//
//
public UserLoginInfoDto getUserLoginInfoDto(Map<String, Object> map) {
//
UserLoginInfoDto userLoginInfoDto = new UserLoginInfoDto();
//
userLoginInfoDto.setOpenId(String.valueOf(map.get("openid")));
// userLoginInfoDto.setWxAppId(String.valueOf(map.get("wxAppI
d")));
//
userLoginInfoDto.setSessionKey(String.valueOf(map.get("session_key")));
//
userLoginInfoDto.setMobile(String.valueOf(map.get("mobile")));
// userLoginInfoDto.setAppS
ecret(String.valueOf(map.get("appsecret")));
//
userLoginInfoDto.setMemberId(String.valueOf(map.get("memberId")));
//
userLoginInfoDto.setPartnerId(String.valueOf(map.get("partnerId")));
//
userLoginInfoDto.setUnionId(String.valueOf(map.get("unionId")));
// userLoginInfoDto.setNewMem
ber(Boolean.valueOf(map.get("newMember").toString()));
//
userLoginInfoDto.setNickName(String.valueOf(map.get("nickName")));
//
return userLoginInfoDto;
//
}
//
}
order-application-service/src/main/java/cn/freemud/entities/dto/UserLoginInfoDto.java
View file @
8cce065b
package
cn
.
freemud
.
entities
.
dto
;
import
lombok.Data
;
@Data
public
class
UserLoginInfoDto
{
private
String
openId
;
private
String
wxAppid
;
private
String
sessionKey
;
private
String
mobile
;
private
String
appsecret
;
private
String
memberId
;
private
String
partnerId
;
private
boolean
newMemeber
;
private
String
unionId
;
private
String
nickName
;
}
//package cn.freemud.entities.dto;
//
//import lombok.Data;
//
//@Data
//public class UserLoginInfoDto {
//
//// private String openId;
////
//// private String wxAppid;
////
//// private String sessionKey;
////
//// private String mobile;
////
//// private String appsecret;
////
//// private String memberId;
////
//// private String partnerId;
////
//// private boolean newMemeber;
////
//// private String unionId;
////
//// private String nickName;
//
//
// private String openId;
// private String unionId;
// private String wxAppId;
// private String sessionKey;
// private String mobile;
// private String appSecret;
// private String memberId;
// private String partnerId;
// private Boolean newMember;
// private String devBrand;
// private String devModel;
// private String channel;
// private String nickName;
// private String photoUrl;
// private String sessionId;
// private String tableNumber;
// private String iappId;
// private String storeId;
// private String userId;
// private String accessToken;
// private String alipayUserId;
// private String alipayAppId;
//}
order-application-service/src/main/java/cn/freemud/entities/dto/user/UserInfoDto.java
View file @
8cce065b
package
cn
.
freemud
.
entities
.
dto
.
user
;
import
lombok.Builder
;
import
lombok.Data
;
@Data
@Builder
public
class
UserInfoDto
{
private
String
openId
;
private
String
unionId
;
private
String
wxAppid
;
private
String
sessionKey
;
private
String
mobile
;
private
String
appsecret
;
private
String
memberId
;
private
String
partnerId
;
private
Boolean
newMemeber
;
private
String
devBrand
;
private
String
devModel
;
private
String
channel
;
}
//
package cn.freemud.entities.dto.user;
//
//
import lombok.Builder;
//
import lombok.Data;
//
//
@Data
//
@Builder
//
public class UserInfoDto {
//
//
private String openId;
//
//
private String unionId;
//
//
private String wxAppid;
//
//
private String sessionKey;
//
//
private String mobile;
//
//
private String appsecret;
//
//
private String memberId;
//
//
private String partnerId;
//
//
private Boolean newMemeber;
//
//
private String devBrand;
//
//
private String devModel;
//
//
private String channel;
//
//
//
}
order-application-service/src/main/java/cn/freemud/service/UserService.java
View file @
8cce065b
package
cn
.
freemud
.
service
;
import
cn.freemud.entities.dto.UserLoginInfoDto
;
import
java.util.Map
;
/**
* 用户服务
*
* @author liming.guo
* @date 2018/05/08
*/
public
interface
UserService
{
Map
<
String
,
Object
>
getUserInfoMapBySessionId
(
String
sessionId
);
/**
* 获取缓存用户信息
*
* @param sessionId
* @return
*/
UserLoginInfoDto
getUserLoginInfoBySessionId
(
String
sessionId
);
}
//
package cn.freemud.service;
//
//
import cn.freemud.entities.dto.UserLoginInfoDto;
//
//
import java.util.Map;
//
/
//
**
//
* 用户服务
//
*
//
* @author liming.guo
//
* @date 2018/05/08
//
*/
//
public interface UserService {
//
//
Map<String, Object> getUserInfoMapBySessionId(String sessionId);
//
//
/**
//
* 获取缓存用户信息
//
*
//
* @param sessionId
//
* @return
//
*/
//
UserLoginInfoDto getUserLoginInfoBySessionId(String sessionId);
//
//
}
order-application-service/src/main/java/cn/freemud/service/impl/BuriedPointServiceImpl.java
View file @
8cce065b
...
...
@@ -5,20 +5,16 @@ import cn.freemud.base.util.DateUtil;
import
cn.freemud.constant.RedisKeyConstant
;
import
cn.freemud.entities.db.OpenPlatformIappWxappConfig
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.vo.ShoppingCartSkuAddRequestVo
;
import
cn.freemud.enums.BuriedPointEnum
;
import
cn.freemud.enums.GuessLikeStatus
;
import
cn.freemud.manager.OpenPlatformIappWxappConfigManager
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.service.BuriedPointService
;
import
cn.freemud.service.UserService
;
import
cn.freemud.service.thirdparty.SyncTxProductClient
;
import
cn.freemud.utils.LogUtil
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformWxapp
;
import
com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformWxappManager
;
import
com.google.gson.Gson
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
...
...
@@ -33,7 +29,6 @@ import java.util.ArrayList;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* All rights Reserved, Designed By www.freemud.cn
...
...
order-application-service/src/main/java/cn/freemud/service/impl/CheckOrder.java
View file @
8cce065b
...
...
@@ -19,12 +19,10 @@ import cn.freemud.entities.db.OpenPlatformIappWxappConfig;
import
cn.freemud.entities.db.OpenPlatformPartnerStoreDeliveryConfig
;
import
cn.freemud.entities.db.StoreTableNumber
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.order.CreateOrderDto
;
import
cn.freemud.entities.dto.shoppingCart.GetShoppingCartGoodsApportionDto
;
import
cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.GetMemberCouponRequestVo
;
import
cn.freemud.entities.vo.GetProductsVo
;
import
cn.freemud.entities.vo.ShoppingCartInfoRequestVo
;
import
cn.freemud.enums.CouponFlag
;
import
cn.freemud.enums.CreateOrderType
;
...
...
@@ -38,6 +36,8 @@ import cn.freemud.service.thirdparty.ShoppingCartClient;
import
cn.freemud.service.thirdparty.StockClient
;
import
cn.freemud.utils.LogUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo
;
import
com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager
;
import
com.freemud.application.sdk.api.base.BaseResponse
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.membercenter.request.QueryReceiveAddressRequest
;
...
...
@@ -73,8 +73,10 @@ public class CheckOrder {
@Autowired
private
OpenPlatformPartnerStoreDeliveryConfigManager
deliveryConfigManager
;
// 缓存取用户数据用
// @Autowired
// private UserServiceImpl userService;
@Autowired
private
UserServiceImpl
userService
;
private
AssortmentCustomerInfoManager
customerInfoManager
;
//门店SDK
@Autowired
private
StoreCenterService
storeCenterService
;
...
...
@@ -100,9 +102,13 @@ public class CheckOrder {
/**
* 下单会员相关校验
*/
public
UserLoginInfoDt
o
checkOrderByMember
(
CreateOrderVo
createOrderVo
,
String
trackingNo
)
{
public
AssortmentCustomerInfoV
o
checkOrderByMember
(
CreateOrderVo
createOrderVo
,
String
trackingNo
)
{
// 通过sessionId查询缓存中会员id
UserLoginInfoDto
userLoginInfoDto
=
userService
.
getUserLoginInfoBySessionId
(
createOrderVo
.
getSessionId
());
String
sessionId
=
createOrderVo
.
getSessionId
();
AssortmentCustomerInfoVo
userLoginInfoDto
=
customerInfoManager
.
getCustomerInfoByObject
(
sessionId
);
if
(
userLoginInfoDto
==
null
||
StringUtils
.
isEmpty
(
userLoginInfoDto
.
getMemberId
()))
{
throw
new
ServiceException
(
ResponseResult
.
NOT_LOGIN
);
}
//校验会员svc卡信息
checkCardCode
(
createOrderVo
.
getPartnerId
(),
userLoginInfoDto
.
getMemberId
(),
createOrderVo
.
getCardCode
(),
trackingNo
);
...
...
@@ -179,7 +185,7 @@ public class CheckOrder {
/**
* 下单订单类型校验
*/
public
Integer
checkOrderByOrderType
(
CreateOrderVo
createOrderVo
,
UserLoginInfoDt
o
userLoginInfoDto
,
public
Integer
checkOrderByOrderType
(
CreateOrderVo
createOrderVo
,
AssortmentCustomerInfoV
o
userLoginInfoDto
,
StoreResponse
.
BizVO
storeResponseDto
,
Long
totalAmount
,
String
trackingNo
)
{
Integer
pushOrderTime
=
0
;
//TODO 设置预约时间
...
...
@@ -191,7 +197,7 @@ public class CheckOrder {
.
append
(
" "
).
append
(
createOrderVo
.
getTakeMealTime
()).
append
(
":00"
);
takeMealDateTime
=
DateUtil
.
convert2Date
(
takeMealTime
.
toString
(),
"yyyy-MM-dd HH:mm:ss"
);
}
String
wxAppId
=
userLoginInfoDto
.
getWxApp
i
d
();
String
wxAppId
=
userLoginInfoDto
.
getWxApp
I
d
();
// 校验小程序是否支持到店或者外卖
OpenPlatformIappWxappConfig
config
=
openPlatformIappWxappConfigManager
.
selectIappWxappConfigByWxAppId
(
wxAppId
);
// 自提校验
...
...
@@ -223,7 +229,7 @@ public class CheckOrder {
throw
new
ServiceException
(
ResponseResult
.
STORE_ITEM_NOT_DELIVERY
);
}
//获取门店配送信息
StoreDeliveryInfoDto
storeDeliveryInfoDto
=
getStoreDeliveryInfo
(
storeResponseDto
,
config
,
userLoginInfoDto
.
getWxAppid
()
);
StoreDeliveryInfoDto
storeDeliveryInfoDto
=
getStoreDeliveryInfo
(
storeResponseDto
,
config
,
wxAppId
);
//订单金额小于起送费提示
if
(
storeDeliveryInfoDto
.
getDeliveryLimitAmount
()
>
totalAmount
)
{
throw
new
ServiceException
(
ResponseResult
.
STORE_DISCONTENT_DELIVERY_FEE
);
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderCommonService.java
View file @
8cce065b
...
...
@@ -2,28 +2,22 @@ package cn.freemud.service.impl;
import
cn.freemud.adapter.MessageNoticeAdapter
;
import
cn.freemud.adapter.OrderAdapter
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.log.LogTreadLocal
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.constant.ResponseCodeConstant
;
import
cn.freemud.entities.dto.OrderExtInfoDto
;
import
cn.freemud.entities.dto.ShoppingCartBaseResponse
;
import
cn.freemud.entities.dto.StoreBaseResponseDto
;
import
cn.freemud.entities.dto.UserLoginInfoDto
;
import
cn.freemud.entities.dto.shoppingCart.NewShoppingCartClearDto
;
import
cn.freemud.entities.vo.CreateOrderResponseVo
;
import
cn.freemud.entities.vo.PaysuccessNoticeMessage
;
import
cn.freemud.enums.PayStatus
;
import
cn.freemud.enums.RedisCacheEnum
;
import
cn.freemud.enums.ResponseResult
;
import
cn.freemud.enums.TransTypeEnum
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.service.thirdparty.ShoppingCartClient
;
import
cn.freemud.service.thirdparty.StoreClient
;
import
cn.freemud.utils.DateTimeUtil
;
import
cn.freemud.utils.LogUtil
;
import
cn.freemud.utils.ResponseUtil
;
import
cn.freemud.utils.ValidationCode
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
...
...
@@ -34,12 +28,9 @@ import com.freemud.api.assortment.datamanager.meal.MealCacheManager;
import
com.freemud.application.sdk.api.base.SDKCommonBaseContextWare
;
import
com.freemud.application.sdk.api.log.ApiLog
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum
;
import
com.freemud.application.sdk.api.storecenter.request.ChangeTableActiveFlagRequest
;
import
com.freemud.application.sdk.api.storecenter.request.ChangeTableOrderStateRequest
;
import
com.freemud.application.sdk.api.storecenter.response.StoreBaseResponse
;
import
com.freemud.application.sdk.api.storecenter.service.StoreCenterService
;
import
com.freemud.application.sdk.api.structure.request.PushMessageNoticeDto
;
import
com.freemud.application.sdk.api.structure.service.MessageCenterClient
;
...
...
@@ -54,22 +45,17 @@ import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import
com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse
;
import
com.freemud.sdk.api.assortment.payment.service.StandardPaymentService
;
import
com.google.common.collect.Maps
;
import
com.sun.org.apache.regexp.internal.RE
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.text.MessageFormat
;
import
java.util.Arrays
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.Map
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
/**
* All rights Reserved, Designed By www.freemud.cn
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
8cce065b
...
...
@@ -260,7 +260,7 @@ public class OrderServiceImpl implements Orderservice {
public
BaseResponse
createOrderNew
(
CreateOrderVo
createOrderVo
)
{
String
trackingNo
=
LogThreadLocal
.
getTrackingNo
();
// 查询用户信息、校验svc卡,余额购物车校验
UserLoginInfoDt
o
userLoginInfoDto
=
checkOrder
.
checkOrderByMember
(
createOrderVo
,
trackingNo
);
AssortmentCustomerInfoV
o
userLoginInfoDto
=
checkOrder
.
checkOrderByMember
(
createOrderVo
,
trackingNo
);
// 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号
StoreResponse
.
BizVO
storeResponseDto
=
checkOrder
.
checkOrderByStore
(
createOrderVo
,
trackingNo
);
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
...
...
@@ -282,7 +282,7 @@ public class OrderServiceImpl implements Orderservice {
public
BaseResponse
scanFaceCreateOrder
(
CreateOrderVo
createOrderVo
)
{
String
trackingNo
=
LogThreadLocal
.
getTrackingNo
();
// 查询用户信息、校验svc卡,余额购物车校验
UserLoginInfoDt
o
userLoginInfoDto
=
checkOrder
.
checkOrderByMember
(
createOrderVo
,
trackingNo
);
AssortmentCustomerInfoV
o
userLoginInfoDto
=
checkOrder
.
checkOrderByMember
(
createOrderVo
,
trackingNo
);
// 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号
StoreResponse
.
BizVO
storeResponseDto
=
checkOrder
.
checkOrderByStore
(
createOrderVo
,
trackingNo
);
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
...
...
@@ -1707,7 +1707,8 @@ public class OrderServiceImpl implements Orderservice {
*
* @return
*/
private
BaseResponse
sdkCreateOrder
(
CreateOrderVo
createOrderVo
,
StoreResponse
.
BizVO
storeResponseDto
,
ShoppingCartGoodsDto
shoppingCartGoodsDto
,
UserLoginInfoDto
userLoginInfoDto
,
OrderExtInfoDTO
orderExtInfoDTO
)
{
private
BaseResponse
sdkCreateOrder
(
CreateOrderVo
createOrderVo
,
StoreResponse
.
BizVO
storeResponseDto
,
ShoppingCartGoodsDto
shoppingCartGoodsDto
,
AssortmentCustomerInfoVo
userLoginInfoDto
,
OrderExtInfoDTO
orderExtInfoDTO
)
{
OrderExtendedReq
orderExtendedReq
=
orderAdapter
.
saveStoreInfo
(
storeResponseDto
);
String
orderWarnTime
=
storeResponseDto
.
getOrderWarnTime
();
//创建普通订单
...
...
@@ -1916,8 +1917,8 @@ public class OrderServiceImpl implements Orderservice {
return
orderPayResponse
;
}
private
PaymentRequest
orderBodyConvertToPaymentBody
(
UserLoginInfoDt
o
userLoginInfoDto
,
String
partnerId
)
{
String
wxAppId
=
userLoginInfoDto
.
getWxApp
i
d
();
private
PaymentRequest
orderBodyConvertToPaymentBody
(
AssortmentCustomerInfoV
o
userLoginInfoDto
,
String
partnerId
)
{
String
wxAppId
=
userLoginInfoDto
.
getWxApp
I
d
();
//设置支付信息
PaymentRequest
paymentRequest
=
new
PaymentRequest
();
paymentRequest
.
setOpenId
(
userLoginInfoDto
.
getOpenId
());
...
...
@@ -1928,7 +1929,7 @@ public class OrderServiceImpl implements Orderservice {
return
paymentRequest
;
}
public
OrderExtInfoDTO
getExtInfo
(
UserLoginInfoDt
o
userLoginInfoDto
,
StoreResponse
.
BizVO
storeResponseDto
,
public
OrderExtInfoDTO
getExtInfo
(
AssortmentCustomerInfoV
o
userLoginInfoDto
,
StoreResponse
.
BizVO
storeResponseDto
,
Integer
pushOrderTime
,
CreateOrderVo
createOrderVo
)
{
Integer
serviceTime
=
storeResponseDto
.
getServiceTime
();
...
...
@@ -1950,7 +1951,7 @@ public class OrderServiceImpl implements Orderservice {
orderExtInfoDto
.
setDeliveryHoursDayStart
(
deliveryHoursDayStart
);
orderExtInfoDto
.
setDeliveryHoursDayEnd
(
deliveryHoursDayEnd
);
orderExtInfoDto
.
setOpenid
(
userLoginInfoDto
.
getOpenId
());
orderExtInfoDto
.
setAppid
(
userLoginInfoDto
.
getWxApp
i
d
());
orderExtInfoDto
.
setAppid
(
userLoginInfoDto
.
getWxApp
I
d
());
orderExtInfoDto
.
setSessionId
(
sessionId
);
if
(
Objects
.
equals
(
serviceTime
,
null
))
{
serviceTime
=
50
;
...
...
@@ -2153,7 +2154,8 @@ public class OrderServiceImpl implements Orderservice {
/**
* 下单支付
*/
private
BaseResponse
createOrderAndPay
(
CreateOrderVo
createOrderVo
,
StoreResponse
.
BizVO
storeResponseDto
,
ShoppingCartGoodsDto
shoppingCartGoodsDto
,
UserLoginInfoDto
userLoginInfoDto
,
OrderExtInfoDTO
orderExtInfoDTO
)
{
private
BaseResponse
createOrderAndPay
(
CreateOrderVo
createOrderVo
,
StoreResponse
.
BizVO
storeResponseDto
,
ShoppingCartGoodsDto
shoppingCartGoodsDto
,
AssortmentCustomerInfoVo
userLoginInfoDto
,
OrderExtInfoDTO
orderExtInfoDTO
)
{
//创建订单--包括下单购买会员卡创建父子订单
CreateOrderOperateDto
operateDto
=
createOrder
(
createOrderVo
,
storeResponseDto
,
shoppingCartGoodsDto
);
long
totalAmount
=
operateDto
.
getTotalAmount
();
...
...
@@ -2279,7 +2281,7 @@ public class OrderServiceImpl implements Orderservice {
* 支付
* 包含唤起微信支付、储值卡支付直接支付、扫脸支付、商品券无需支付
*/
private
OrderPayResponse
pay
(
UserLoginInfoDt
o
userLoginInfoDto
,
CreateOrderVo
createOrderVo
,
long
totalAmount
,
int
cardAmount
,
private
OrderPayResponse
pay
(
AssortmentCustomerInfoV
o
userLoginInfoDto
,
CreateOrderVo
createOrderVo
,
long
totalAmount
,
int
cardAmount
,
QueryOrdersResponse
.
DataBean
.
OrderBean
fatherBeanListOne
){
//<!---创建订单公共方法执行逻辑--->
OrderPayResponse
orderPayResponse
=
null
;
...
...
order-application-service/src/main/java/cn/freemud/service/impl/UserServiceImpl.java
View file @
8cce065b
package
cn
.
freemud
.
service
.
impl
;
import
cn.freemud.adapter.BigDataAdapter
;
import
cn.freemud.adapter.MemberAdapter
;
import
cn.freemud.adapter.MessageNoticeAdapter
;
import
cn.freemud.adapter.UserAdapter
;
import
cn.freemud.base.constant.Version
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.util.MD5Util
;
import
cn.freemud.constant.ApplicationConstant
;
import
cn.freemud.constant.RedisKeyConstant
;
import
cn.freemud.constant.ResponseCodeConstant
;
import
cn.freemud.constant.UserInfoKeyConstant
;
import
cn.freemud.entities.db.Partner
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.user.UserInfoDto
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.enums.*
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.manager.OpenPlatformWxappPluginBindManager
;
import
cn.freemud.manager.PartnerManager
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.service.UserService
;
import
cn.freemud.service.thirdparty.*
;
import
cn.freemud.utils.*
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerMerchant
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformWxapp
;
import
com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerMerchantManager
;
import
com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformWxappManager
;
import
com.google.common.collect.Maps
;
import
com.google.gson.Gson
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.bouncycastle.jce.provider.BouncyCastleProvider
;
import
org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
javax.crypto.BadPaddingException
;
import
javax.crypto.Cipher
;
import
javax.crypto.spec.IvParameterSpec
;
import
javax.crypto.spec.SecretKeySpec
;
import
java.net.URLEncoder
;
import
java.security.Security
;
import
java.security.spec.AlgorithmParameterSpec
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
/**
* @author liming.guo
* @date 2018/05/11
*/
@Service
@Slf4j
public
class
UserServiceImpl
implements
UserService
{
private
static
Gson
gson
=
new
Gson
();
@Autowired
private
UserAdapter
userAdapter
;
@Autowired
private
RedisCache
redisCache
;
/**
* 校验用户是否登录
*/
public
void
checkUserLogin
(
String
sessionId
)
{
Map
<
String
,
Object
>
userInfoMap
=
this
.
getUserInfoMapBySessionId
(
sessionId
);
if
(
userInfoMap
==
null
||
userInfoMap
.
size
()
<=
0
||
userInfoMap
.
get
(
UserInfoKeyConstant
.
MEMBER_ID
)
==
null
)
{
throw
new
ServiceException
(
ResponseResult
.
NOT_LOGIN
);
}
}
/**
* 校验用户是否登录
*/
public
boolean
checkUserLoginFlag
(
String
sessionId
)
{
Map
<
String
,
Object
>
userInfoMap
=
this
.
getUserInfoMapBySessionId
(
sessionId
);
log
.
info
(
"submit userInfoMap:{}"
,
gson
.
toJson
(
userInfoMap
));
if
(
userInfoMap
==
null
||
userInfoMap
.
size
()
<=
0
||
userInfoMap
.
get
(
UserInfoKeyConstant
.
MEMBER_ID
)
==
null
)
{
return
false
;
}
return
true
;
}
/**
* 获取缓存用户信息
*/
@Override
public
Map
<
String
,
Object
>
getUserInfoMapBySessionId
(
String
sessionId
)
{
String
redisKey
=
RedisKeyConstant
.
SAAS_USER_INFO_SESSIONID_KEY_PREFIX
+
sessionId
;
Map
<
String
,
Object
>
map
;
try
{
map
=
redisCache
.
getValue
(
redisKey
);
}
catch
(
Exception
e
){
map
=
redisCache
.
getValue
(
redisKey
);
}
return
map
;
}
/**
* 获取缓存用户信息
*
* @param sessionId
* @return
*/
@Override
public
UserLoginInfoDto
getUserLoginInfoBySessionId
(
String
sessionId
)
{
checkUserLogin
(
sessionId
);
String
redisKey
=
RedisKeyConstant
.
SAAS_USER_INFO_SESSIONID_KEY_PREFIX
+
sessionId
;
Map
<
String
,
Object
>
map
=
redisCache
.
getValue
(
redisKey
);
return
userAdapter
.
getUserLoginInfoDto
(
map
);
}
}
//package cn.freemud.service.impl;
//
//import cn.freemud.adapter.UserAdapter;
//import cn.freemud.constant.RedisKeyConstant;
//import cn.freemud.constant.UserInfoKeyConstant;
//import cn.freemud.entities.dto.UserLoginInfoDto;
//import cn.freemud.enums.ResponseResult;
//import cn.freemud.interceptor.ServiceException;
//import cn.freemud.redis.RedisCache;
//import cn.freemud.service.UserService;
//import com.google.gson.Gson;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//
//import java.util.Map;
//
///**
// * @author liming.guo
// * @date 2018/05/11
// */
//@Service
//@Slf4j
//public class UserServiceImpl implements UserService {
// private static Gson gson = new Gson();
// @Autowired
// private UserAdapter userAdapter;
// @Autowired
// private RedisCache redisCache;
//
// /**
// * 校验用户是否登录
// */
// public void checkUserLogin(String sessionId) {
// Map<String, Object> userInfoMap = this.getUserInfoMapBySessionId(sessionId);
// if (userInfoMap == null || userInfoMap.size() <= 0 || userInfoMap.get(UserInfoKeyConstant.MEMBER_ID) == null) {
// throw new ServiceException(ResponseResult.NOT_LOGIN);
// }
// }
// /**
// * 校验用户是否登录
// */
// public boolean checkUserLoginFlag(String sessionId) {
// Map<String, Object> userInfoMap = this.getUserInfoMapBySessionId(sessionId);
// log.info("submit userInfoMap:{}", gson.toJson(userInfoMap));
// if (userInfoMap == null || userInfoMap.size() <= 0 || userInfoMap.get(UserInfoKeyConstant.MEMBER_ID) == null) {
// return false;
// }
// return true;
// }
//
// /**
// * 获取缓存用户信息
// */
// @Override
// public Map<String, Object> getUserInfoMapBySessionId(String sessionId) {
// String redisKey = RedisKeyConstant.SAAS_USER_INFO_SESSIONID_KEY_PREFIX + sessionId;
// Map<String, Object> map;
// try {
// map = redisCache.getValue(redisKey);
// }catch (Exception e){
// map = redisCache.getValue(redisKey);
// }
// return map;
// }
//
// /**
// * 获取缓存用户信息
// *
// * @param sessionId
// * @return
// */
// @Override
// public UserLoginInfoDto getUserLoginInfoBySessionId(String sessionId) {
// checkUserLogin(sessionId);
//
// String redisKey = RedisKeyConstant.SAAS_USER_INFO_SESSIONID_KEY_PREFIX + sessionId;
// Map<String, Object> map = redisCache.getValue(redisKey);
// return userAdapter.getUserLoginInfoDto(map);
// }
//}
order-application-service/src/main/java/cn/freemud/service/process/WechatPush/WechatPushProcessor.java
View file @
8cce065b
...
...
@@ -3,18 +3,18 @@ package cn.freemud.service.process.WechatPush;
import
cn.freemud.amp.body.OrderBody
;
import
cn.freemud.entities.dto.QueryOrdersResponseDto
;
import
cn.freemud.entities.dto.UserLoginInfoDto
;
import
cn.freemud.entities.vo.WxappPluginVo
;
import
cn.freemud.enums.PluginAuditStatusEnum
;
import
cn.freemud.enums.YesOrNoEnum
;
import
cn.freemud.manager.OpenPlatformWxappPluginBindManager
;
import
cn.freemud.service.OrderDistributeMQService
;
import
cn.freemud.service.impl.UserServiceImpl
;
import
cn.freemud.utils.LogUtil
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerConfig
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformWxapp
;
import
com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo
;
import
com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerConfigManager
;
import
com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformWxappManager
;
import
com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager
;
import
com.freemud.sdk.api.assortment.order.enums.OrderSdkType
;
import
com.freemud.sdk.api.assortment.order.request.order.BaseQueryOrderRequest
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrderByIdResponse
;
...
...
@@ -66,8 +66,10 @@ public class WechatPushProcessor {
@Autowired
private
AssortmentOpenPlatformWxappManager
openPlatformWxappManager
;
// @Autowired
// private UserServiceImpl userService;
@Autowired
private
UserServiceImpl
userService
;
private
AssortmentCustomerInfoManager
customerInfoManager
;
/**
* 订单创建上送微信
...
...
@@ -76,7 +78,7 @@ public class WechatPushProcessor {
* @param oId 订单ID
* @param companyId 商户号
*/
public
boolean
statusOrderCreate
(
UserLoginInfoDt
o
userLoginInfoDto
,
String
oId
,
String
companyId
)
{
public
boolean
statusOrderCreate
(
AssortmentCustomerInfoV
o
userLoginInfoDto
,
String
oId
,
String
companyId
)
{
DisRequest
disRequest
=
null
;
try
{
// 判断当前小程序是否开通推荐优惠插件并启用
...
...
@@ -93,7 +95,7 @@ public class WechatPushProcessor {
}
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
=
queryOrderByIdResponse
.
getData
();
// 获取当前商户微信支付mchId
AssortmentOpenPlatformWxapp
wxApp
=
openPlatformWxappManager
.
findByPartnerIdAndWxappId
(
userLoginInfoDto
.
getPartnerId
(),
userLoginInfoDto
.
getWxApp
i
d
());
AssortmentOpenPlatformWxapp
wxApp
=
openPlatformWxappManager
.
findByPartnerIdAndWxappId
(
userLoginInfoDto
.
getPartnerId
(),
userLoginInfoDto
.
getWxApp
I
d
());
if
(
wxApp
==
null
||
wxApp
.
getMchId
()
==
null
)
{
LogUtil
.
error
(
"syncStatusOrderCreate 订单上送信息 未查询到商户号"
,
gson
.
toJson
(
wxApp
),
""
);
return
false
;
...
...
@@ -129,7 +131,7 @@ public class WechatPushProcessor {
return
;
}
try
{
UserLoginInfoDto
userLoginInfoDto
=
userService
.
getUserLoginInfoBySessionId
(
sessionId
);
AssortmentCustomerInfoVo
userLoginInfoDto
=
customerInfoManager
.
getCustomerInfoByObject
(
sessionId
);
if
(
null
==
userLoginInfoDto
)
{
LogUtil
.
error
(
"syncStatusOrderPay 订单上送信息不全 终止上送"
,
gson
.
toJson
(
userLoginInfoDto
),
""
);
return
;
...
...
@@ -138,7 +140,7 @@ public class WechatPushProcessor {
String
mchId
=
null
;
if
(
StringUtils
.
isBlank
(
platformMchId
))
{
// 获取当前商户微信支付mchId
AssortmentOpenPlatformWxapp
wxApp
=
openPlatformWxappManager
.
findByPartnerIdAndWxappId
(
userLoginInfoDto
.
getPartnerId
(),
userLoginInfoDto
.
getWxApp
i
d
());
AssortmentOpenPlatformWxapp
wxApp
=
openPlatformWxappManager
.
findByPartnerIdAndWxappId
(
userLoginInfoDto
.
getPartnerId
(),
userLoginInfoDto
.
getWxApp
I
d
());
if
(
wxApp
==
null
||
wxApp
.
getMchId
()
==
null
)
{
LogUtil
.
error
(
"syncStatusOrderCreate 订单上送信息 未查询到商户号"
,
gson
.
toJson
(
wxApp
),
""
);
return
;
...
...
@@ -182,11 +184,11 @@ public class WechatPushProcessor {
* @param userLoginInfoDto
* @return
*/
private
OrderBody
.
SyncStatusInfo
getSyncStatusInfo
(
String
mchId
,
UserLoginInfoDt
o
userLoginInfoDto
)
{
private
OrderBody
.
SyncStatusInfo
getSyncStatusInfo
(
String
mchId
,
AssortmentCustomerInfoV
o
userLoginInfoDto
)
{
OrderBody
.
SyncStatusInfo
syncStatusInfo
=
new
OrderBody
.
SyncStatusInfo
();
syncStatusInfo
.
setMchId
(
mchId
);
syncStatusInfo
.
setWxAppid
(
userLoginInfoDto
.
getWxApp
i
d
());
syncStatusInfo
.
setWxAppid
(
userLoginInfoDto
.
getWxApp
I
d
());
syncStatusInfo
.
setOpenId
(
userLoginInfoDto
.
getOpenId
());
syncStatusInfo
.
setSessionKey
(
userLoginInfoDto
.
getSessionKey
());
return
syncStatusInfo
;
...
...
@@ -200,12 +202,12 @@ public class WechatPushProcessor {
* @param userLoginInfoDto
* @return
*/
private
OrderBody
.
SyncStatusInfo
getSyncStatusInfo
(
String
mchId
,
UserLoginInfoDt
o
userLoginInfoDto
,
String
paidNo
,
String
outTradeNo
private
OrderBody
.
SyncStatusInfo
getSyncStatusInfo
(
String
mchId
,
AssortmentCustomerInfoV
o
userLoginInfoDto
,
String
paidNo
,
String
outTradeNo
,
String
endTransId
,
String
terminalId
)
{
OrderBody
.
SyncStatusInfo
syncStatusInfo
=
new
OrderBody
.
SyncStatusInfo
();
syncStatusInfo
.
setMchId
(
mchId
);
syncStatusInfo
.
setWxAppid
(
userLoginInfoDto
.
getWxApp
i
d
());
syncStatusInfo
.
setWxAppid
(
userLoginInfoDto
.
getWxApp
I
d
());
syncStatusInfo
.
setOpenId
(
userLoginInfoDto
.
getOpenId
());
syncStatusInfo
.
setSessionKey
(
userLoginInfoDto
.
getSessionKey
());
syncStatusInfo
.
setTransactionId
(
paidNo
);
...
...
@@ -222,8 +224,8 @@ public class WechatPushProcessor {
* @param userLoginInfoDto
* @return true 未开启 false 已开启插件
*/
private
boolean
checkWechatOpenPlugin
(
UserLoginInfoDt
o
userLoginInfoDto
)
{
List
<
WxappPluginVo
>
openPlatformWxappPluginBinds
=
openPlatformWxappPluginBindManager
.
queryByWxAppid
(
userLoginInfoDto
.
getWxApp
i
d
());
private
boolean
checkWechatOpenPlugin
(
AssortmentCustomerInfoV
o
userLoginInfoDto
)
{
List
<
WxappPluginVo
>
openPlatformWxappPluginBinds
=
openPlatformWxappPluginBindManager
.
queryByWxAppid
(
userLoginInfoDto
.
getWxApp
I
d
());
List
<
WxappPluginVo
>
pluginVoList
=
openPlatformWxappPluginBinds
.
stream
().
filter
(
wxappPluginVo
->
wxappPluginVo
.
getPluginAppid
().
equals
(
COUPON_PLUGINS
)).
filter
(
wxappPluginVo
->
wxappPluginVo
.
getOperateStatus
()
==
1
).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isEmpty
(
pluginVoList
)
||
pluginVoList
.
size
()
!=
1
)
{
LogUtil
.
error
(
"checkWechatOpenPlugin 订单上送信息 未开启优惠插件"
,
gson
.
toJson
(
pluginVoList
),
""
);
...
...
order-application-service/src/test/java/cn.freemud/service/WechatPushProcessorTest.java
View file @
8cce065b
...
...
@@ -12,7 +12,6 @@
*/
package
cn
.
freemud
.
service
;
import
cn.freemud.entities.dto.UserLoginInfoDto
;
import
cn.freemud.service.process.WechatPush.WechatPushProcessor
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
...
...
@@ -34,16 +33,16 @@ public class WechatPushProcessorTest {
@Test
public
void
syncStatusOrderCreateTest
()
{
UserLoginInfoDto
userLoginInfoDto
=
new
UserLoginInfoDto
();
userLoginInfoDto
.
setWxAppi
d
(
"wxb78fb7c6218cb52c"
);
userLoginInfoDto
.
setSessionKey
(
"G9m9zqlrTeNAqtmclsqkPg\u003d\u003d"
);
userLoginInfoDto
.
setMobile
(
"15956904546"
);
userLoginInfoDto
.
setPartnerId
(
"1864"
);
userLoginInfoDto
.
setNewMeme
ber
(
false
);
userLoginInfoDto
.
setUnionId
(
"okRmn1I4WUvHfcBNkPQ15ydnSJDA"
);
userLoginInfoDto
.
setOpenId
(
"oORZK5JfpU-MkOV_tDFff8rz8ook"
);
String
oId
=
"142674066768146957"
;
String
companyId
=
"1864"
;
//
UserLoginInfoDto userLoginInfoDto = new UserLoginInfoDto();
// userLoginInfoDto.setWxAppI
d("wxb78fb7c6218cb52c");
//
userLoginInfoDto.setSessionKey("G9m9zqlrTeNAqtmclsqkPg\u003d\u003d");
//
userLoginInfoDto.setMobile("15956904546");
//
userLoginInfoDto.setPartnerId("1864");
// userLoginInfoDto.setNewMem
ber(false);
//
userLoginInfoDto.setUnionId("okRmn1I4WUvHfcBNkPQ15ydnSJDA");
//
userLoginInfoDto.setOpenId("oORZK5JfpU-MkOV_tDFff8rz8ook");
//
String oId = "142674066768146957";
//
String companyId = "1864";
// Assert.assertTrue( wechatPushProcessor.statusOrderCreate(userLoginInfoDto, oId,companyId) );
}
...
...
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