Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
youjj
cloud-platform
Commits
10925dc8
Commit
10925dc8
authored
Jun 22, 2019
by
周健威
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加队列代码
parent
2ba0282e
Changes
21
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
368 additions
and
36 deletions
+368
-36
pom.xml
ace-auth/ace-auth-server/pom.xml
+2
-2
bootstrap.yml
ace-auth/ace-auth-server/src/main/resources/bootstrap.yml
+1
-1
pom.xml
ace-common/pom.xml
+2
-2
BaseBiz.java
.../java/com/github/wxiaoqi/security/common/biz/BaseBiz.java
+4
-5
VersionMapper.java
.../github/wxiaoqi/security/common/mapper/VersionMapper.java
+23
-0
ResultCode.java
...thub/wxiaoqi/security/common/util/process/ResultCode.java
+2
-0
resultcod.properties
...common/src/main/resources/properties/resultcod.properties
+5
-0
UserFeign.java
...va/com/github/wxiaoqi/security/admin/feign/UserFeign.java
+7
-2
pom.xml
ace-modules/ace-admin/pom.xml
+6
-6
bootstrap.yml
ace-modules/ace-admin/src/main/resources/bootstrap.yml
+1
-1
pom.xml
xx-common/xx-common-platform/pom.xml
+6
-6
BaseOrder.java
...c/main/java/com/xxfc/platform/order/entity/BaseOrder.java
+6
-0
pom.xml
xx-order/xx-order-server/pom.xml
+5
-0
BaseOrderBiz.java
...c/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
+37
-11
RabbitUserConfig.java
...java/com/xxfc/platform/order/config/RabbitUserConfig.java
+52
-0
OrderRentVehicleService.java
.../xxfc/platform/order/service/OrderRentVehicleService.java
+14
-0
OrderTest.java
...rver/src/test/java/com/xxfc/platform/order/OrderTest.java
+37
-0
RabbitmqTest.java
...r/src/test/java/com/xxfc/platform/order/RabbitmqTest.java
+63
-0
RabbitmqTest2.java
.../src/test/java/com/xxfc/platform/order/RabbitmqTest2.java
+52
-0
RabbitmqTest3.java
.../src/test/java/com/xxfc/platform/order/RabbitmqTest3.java
+36
-0
RegionTest.java
...ver/src/test/java/com/xxfc/platform/order/RegionTest.java
+7
-0
No files found.
ace-auth/ace-auth-server/pom.xml
View file @
10925dc8
...
@@ -91,13 +91,13 @@
...
@@ -91,13 +91,13 @@
<dependency>
<dependency>
<groupId>
tk.mybatis
</groupId>
<groupId>
tk.mybatis
</groupId>
<artifactId>
mapper-spring-boot-starter
</artifactId>
<artifactId>
mapper-spring-boot-starter
</artifactId>
<version>
1.1.2
</version>
<version>
2.1.5
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.github.pagehelper
</groupId>
<groupId>
com.github.pagehelper
</groupId>
<artifactId>
pagehelper-spring-boot-starter
</artifactId>
<artifactId>
pagehelper-spring-boot-starter
</artifactId>
<version>
1.2.
3
</version>
<version>
1.2.
10
</version>
</dependency>
</dependency>
<dependency>
<dependency>
...
...
ace-auth/ace-auth-server/src/main/resources/bootstrap.yml
View file @
10925dc8
...
@@ -15,7 +15,7 @@ spring:
...
@@ -15,7 +15,7 @@ spring:
config
:
config
:
server-addr
:
127.0.0.1:8848
server-addr
:
127.0.0.1:8848
#共用配置,暂定一个
#共用配置,暂定一个
#
shared-dataids: common-dev.yaml
shared-dataids
:
common-dev.yaml
---
---
spring
:
spring
:
profiles
:
pro
profiles
:
pro
...
...
ace-common/pom.xml
View file @
10925dc8
...
@@ -51,7 +51,7 @@
...
@@ -51,7 +51,7 @@
<dependency>
<dependency>
<groupId>
tk.mybatis
</groupId>
<groupId>
tk.mybatis
</groupId>
<artifactId>
mapper
</artifactId>
<artifactId>
mapper
</artifactId>
<version>
3.4.0
</version>
<version>
4.1.5
</version>
</dependency>
</dependency>
<!-- <dependency>
<!-- <dependency>
<groupId>org.springframework</groupId>
<groupId>org.springframework</groupId>
...
@@ -61,7 +61,7 @@
...
@@ -61,7 +61,7 @@
<dependency>
<dependency>
<groupId>
com.github.pagehelper
</groupId>
<groupId>
com.github.pagehelper
</groupId>
<artifactId>
pagehelper
</artifactId>
<artifactId>
pagehelper
</artifactId>
<version>
5.
0.3
</version>
<version>
5.
1.8
</version>
</dependency>
</dependency>
<!-- <dependency>
<!-- <dependency>
...
...
ace-common/src/main/java/com/github/wxiaoqi/security/common/biz/BaseBiz.java
View file @
10925dc8
...
@@ -74,16 +74,15 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
...
@@ -74,16 +74,15 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
}
}
public
void
updateById
(
T
entity
)
{
public
int
updateById
(
T
entity
)
{
EntityUtils
.
setUpdatedInfo
(
entity
);
EntityUtils
.
setUpdatedInfo
(
entity
);
mapper
.
updateByPrimaryKey
(
entity
);
return
mapper
.
updateByPrimaryKey
(
entity
);
}
}
public
void
updateSelectiveById
(
T
entity
)
{
public
int
updateSelectiveById
(
T
entity
)
{
EntityUtils
.
setUpdatedInfo
(
entity
);
EntityUtils
.
setUpdatedInfo
(
entity
);
mapper
.
updateByPrimaryKeySelective
(
entity
);
return
mapper
.
updateByPrimaryKeySelective
(
entity
);
}
}
public
List
<
T
>
selectByExample
(
Object
example
)
{
public
List
<
T
>
selectByExample
(
Object
example
)
{
...
...
ace-common/src/main/java/com/github/wxiaoqi/security/common/mapper/VersionMapper.java
0 → 100644
View file @
10925dc8
package
com
.
github
.
wxiaoqi
.
security
.
common
.
mapper
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
tk.mybatis.mapper.common.Mapper
;
public
interface
VersionMapper
<
T
>
extends
Mapper
<
T
>
{
default
int
deleteWithVersion
(
T
t
)
{
int
result
=
delete
(
t
);
if
(
result
==
0
)
{
throw
new
BaseException
(
ResultCode
.
DB_OPERATION_FAIL_CODE
);
}
return
result
;
}
default
int
updateByPrimaryKeyWithVersion
(
T
t
){
int
result
=
updateByPrimaryKey
(
t
);
if
(
result
==
0
)
{
throw
new
BaseException
(
ResultCode
.
DB_OPERATION_FAIL_CODE
);
}
return
result
;
}
}
ace-common/src/main/java/com/github/wxiaoqi/security/common/util/process/ResultCode.java
View file @
10925dc8
...
@@ -21,6 +21,8 @@ public class ResultCode {
...
@@ -21,6 +21,8 @@ public class ResultCode {
public
static
int
RSTOKEN_EXPIRED_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"RSTOKEN_EXPIRED_CODE"
));
public
static
int
RSTOKEN_EXPIRED_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"RSTOKEN_EXPIRED_CODE"
));
// rstoken不合法
// rstoken不合法
public
static
int
RSTOKEN_NULL_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"RSTOKEN_NULL_CODE"
));
public
static
int
RSTOKEN_NULL_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"RSTOKEN_NULL_CODE"
));
// 数据库操作失败
public
static
int
DB_OPERATION_FAIL_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"DB_OPERATION_FAIL_CODE"
));
// 请求微信接口错误
// 请求微信接口错误
public
static
int
WXAPI_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"WXAPI_CODE"
));
public
static
int
WXAPI_CODE
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"WXAPI_CODE"
));
// 微信用户不存在
// 微信用户不存在
...
...
ace-common/src/main/resources/properties/resultcod.properties
View file @
10925dc8
...
@@ -27,6 +27,11 @@ RSTOKEN_EXPIRED_CODE=1006
...
@@ -27,6 +27,11 @@ RSTOKEN_EXPIRED_CODE=1006
#rstoken为空
#rstoken为空
RSTOKEN_NULL_CODE
=
1007
RSTOKEN_NULL_CODE
=
1007
1007
=
rstoken为空
1007
=
rstoken为空
#数据库操作失败
DB_OPERATION_FAIL_CODE
=
1008
1008
=
数据库操作失败
#请求微信接口失败
#请求微信接口失败
WXAPI_CODE
=
2001
WXAPI_CODE
=
2001
#微信用不不存在
#微信用不不存在
...
...
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/feign/UserFeign.java
View file @
10925dc8
...
@@ -19,6 +19,11 @@ import java.util.List;
...
@@ -19,6 +19,11 @@ import java.util.List;
*/
*/
@FeignClient
(
value
=
"ace-admin"
)
@FeignClient
(
value
=
"ace-admin"
)
public
interface
UserFeign
{
public
interface
UserFeign
{
public
static
final
int
MEMBER_DAYS_LOCK
=
1
;
public
static
final
int
MEMBER_DAYS_CONFIRM
=
2
;
public
static
final
int
MEMBER_DAYS_WITHDRAW
=
3
;
@RequestMapping
(
value
=
"/public/userinfo-by-token"
)
@RequestMapping
(
value
=
"/public/userinfo-by-token"
)
public
ObjectRestResponse
<
UserDTO
>
userinfoByToken
(
@RequestParam
(
"token"
)
String
token
);
public
ObjectRestResponse
<
UserDTO
>
userinfoByToken
(
@RequestParam
(
"token"
)
String
token
);
...
@@ -71,7 +76,7 @@ public interface UserFeign {
...
@@ -71,7 +76,7 @@ public interface UserFeign {
* @throws Exception
* @throws Exception
*/
*/
@RequestMapping
(
value
=
"/member/user/buyMember"
,
method
=
RequestMethod
.
POST
)
@RequestMapping
(
value
=
"/member/user/buyMember"
,
method
=
RequestMethod
.
POST
)
public
ObjectRestResponse
buyMember
(
@RequestBody
UserMemberDTO
userMemberDTO
)
throws
Exception
;
public
ObjectRestResponse
buyMember
(
@RequestBody
UserMemberDTO
userMemberDTO
);
/**
/**
* 订单更改会员
* 订单更改会员
...
@@ -86,7 +91,7 @@ public interface UserFeign {
...
@@ -86,7 +91,7 @@ public interface UserFeign {
@RequestParam
(
value
=
"userId"
,
defaultValue
=
"0"
)
Integer
userId
,
@RequestParam
(
value
=
"userId"
,
defaultValue
=
"0"
)
Integer
userId
,
@RequestParam
(
value
=
"days"
,
defaultValue
=
"0"
)
Integer
days
,
@RequestParam
(
value
=
"days"
,
defaultValue
=
"0"
)
Integer
days
,
@RequestParam
(
value
=
"type"
,
defaultValue
=
"1"
)
Integer
type
@RequestParam
(
value
=
"type"
,
defaultValue
=
"1"
)
Integer
type
)
throws
Exception
;
);
}
}
ace-modules/ace-admin/pom.xml
View file @
10925dc8
...
@@ -24,10 +24,10 @@
...
@@ -24,10 +24,10 @@
</targetResourcesProject>
</targetResourcesProject>
<targetXMLPackage>
mapper
</targetXMLPackage>
<targetXMLPackage>
mapper
</targetXMLPackage>
<!-- 依赖版本 -->
<!-- 依赖版本 -->
<mapper.version>
3.4.0
</mapper.version>
<mapper.version>
4.1.5
</mapper.version>
<mybatis.version>
3.
3.1
</mybatis.version>
<mybatis.version>
3.
4.6
</mybatis.version>
<mybatis.spring.version>
1.
2.4
</mybatis.spring.version>
<mybatis.spring.version>
1.
3.2
</mybatis.spring.version>
<pagehelper.version>
4.1.1
</pagehelper.version>
<pagehelper.version>
5.1.8
</pagehelper.version>
</properties>
</properties>
<dependencies>
<dependencies>
<dependency>
<dependency>
...
@@ -139,13 +139,13 @@
...
@@ -139,13 +139,13 @@
<dependency>
<dependency>
<groupId>
tk.mybatis
</groupId>
<groupId>
tk.mybatis
</groupId>
<artifactId>
mapper-spring-boot-starter
</artifactId>
<artifactId>
mapper-spring-boot-starter
</artifactId>
<version>
1.1.2
</version>
<version>
2.1.5
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.github.pagehelper
</groupId>
<groupId>
com.github.pagehelper
</groupId>
<artifactId>
pagehelper-spring-boot-starter
</artifactId>
<artifactId>
pagehelper-spring-boot-starter
</artifactId>
<version>
1.2.
3
</version>
<version>
1.2.
10
</version>
</dependency>
</dependency>
<!-- swagger -->
<!-- swagger -->
...
...
ace-modules/ace-admin/src/main/resources/bootstrap.yml
View file @
10925dc8
...
@@ -17,7 +17,7 @@ spring:
...
@@ -17,7 +17,7 @@ spring:
config
:
config
:
server-addr
:
127.0.0.1:8848
server-addr
:
127.0.0.1:8848
#共用配置,暂定一个
#共用配置,暂定一个
#
shared-dataids: common-dev.yaml
shared-dataids
:
common-dev.yaml
---
---
spring
:
spring
:
...
...
xx-common/xx-common-platform/pom.xml
View file @
10925dc8
...
@@ -25,12 +25,12 @@
...
@@ -25,12 +25,12 @@
<groupId>
com.github.wxiaoqi
</groupId>
<groupId>
com.github.wxiaoqi
</groupId>
<artifactId>
ace-common
</artifactId>
<artifactId>
ace-common
</artifactId>
<version>
2.0-SNAPSHOT
</version>
<version>
2.0-SNAPSHOT
</version>
<exclusions
>
<!-- <exclusions>--
>
<exclusion
>
<!-- <exclusion>--
>
<groupId>
tk.mybatis
</groupId
>
<!-- <groupId>tk.mybatis</groupId>--
>
<artifactId>
mapper
</artifactId
>
<!-- <artifactId>mapper</artifactId>--
>
</exclusion
>
<!-- </exclusion>--
>
</exclusions
>
<!-- </exclusions>--
>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
javax.persistence
</groupId>
<groupId>
javax.persistence
</groupId>
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/BaseOrder.java
View file @
10925dc8
...
@@ -203,4 +203,10 @@ public class BaseOrder implements Serializable {
...
@@ -203,4 +203,10 @@ public class BaseOrder implements Serializable {
@ApiModelProperty
(
value
=
"是否已支付"
)
@ApiModelProperty
(
value
=
"是否已支付"
)
private
Integer
hasPay
;
private
Integer
hasPay
;
/**
* 乐观锁,修改版本号
*/
@Version
@ApiModelProperty
(
value
=
"乐观锁,修改版本号"
)
private
Integer
version
;
}
}
xx-order/xx-order-server/pom.xml
View file @
10925dc8
...
@@ -33,6 +33,11 @@
...
@@ -33,6 +33,11 @@
<version>
2.0.2
</version>
<version>
2.0.2
</version>
</dependency>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-amqp
</artifactId>
</dependency>
</dependencies>
</dependencies>
<build>
<build>
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
View file @
10925dc8
...
@@ -87,6 +87,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
...
@@ -87,6 +87,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
}});
}});
}
}
/**
* 取消订单
* @param baseOrder
*/
public
void
cancel
(
BaseOrder
baseOrder
)
{
public
void
cancel
(
BaseOrder
baseOrder
)
{
if
(
cancelAble
.
get
(
baseOrder
.
getType
()).
contains
(
baseOrder
.
getStatus
()))
{
if
(
cancelAble
.
get
(
baseOrder
.
getType
()).
contains
(
baseOrder
.
getStatus
()))
{
this
.
updateSelectiveById
(
new
BaseOrder
(){{
this
.
updateSelectiveById
(
new
BaseOrder
(){{
...
@@ -138,7 +142,18 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
...
@@ -138,7 +142,18 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
//处理取消流程
//处理取消流程
if
(
OrderTypeEnum
.
RentVehicle
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
if
(
OrderTypeEnum
.
RentVehicle
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
OrderRentVehicleDetail
orvd
=
orderRentVehicleBiz
.
selectOne
(
new
OrderRentVehicleDetail
(){{
setOrderId
(
baseOrder
.
getId
());
}});
//取消租车预定
//取消租车预定
//取消租车免费天数使用
if
(
null
!=
orvd
.
getFreeDays
()
&&
orvd
.
getFreeDays
()
>
0
)
{
int
result
=
userFeign
.
memberDays
(
baseOrder
.
getUserId
(),
orvd
.
getFreeDays
(),
UserFeign
.
MEMBER_DAYS_WITHDRAW
);
if
(
result
<
0
)
{
throw
new
BaseException
(
ResultCode
.
FAILED_CODE
);
}
}
}
else
if
(
OrderTypeEnum
.
TOUR
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
}
else
if
(
OrderTypeEnum
.
TOUR
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
OrderTourDetail
otd
=
orderTourDetailBiz
.
selectOne
(
new
OrderTourDetail
(){{
OrderTourDetail
otd
=
orderTourDetailBiz
.
selectOne
(
new
OrderTourDetail
(){{
...
@@ -153,6 +168,11 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
...
@@ -153,6 +168,11 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
}
}
}
}
/**
* 支付回调处理
* @param orderNo
* @param tradeNo
*/
public
void
payNotifyHandle
(
String
orderNo
,
String
tradeNo
)
{
public
void
payNotifyHandle
(
String
orderNo
,
String
tradeNo
)
{
BaseOrder
baseOrder
=
this
.
selectOne
(
new
BaseOrder
()
{{
BaseOrder
baseOrder
=
this
.
selectOne
(
new
BaseOrder
()
{{
setNo
(
orderNo
);
setNo
(
orderNo
);
...
@@ -173,21 +193,27 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
...
@@ -173,21 +193,27 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
OrderMemberDetail
omd
=
orderMemberDetailBiz
.
selectOne
(
new
OrderMemberDetail
(){{
OrderMemberDetail
omd
=
orderMemberDetailBiz
.
selectOne
(
new
OrderMemberDetail
(){{
setOrderId
(
baseOrder
.
getId
());
setOrderId
(
baseOrder
.
getId
());
}});
}});
try
{
userFeign
.
buyMember
(
new
UserMemberDTO
()
{{
//触发会员效益
setUserId
(
baseOrder
.
getUserId
());
userFeign
.
buyMember
(
new
UserMemberDTO
()
{{
setDiscount
(
omd
.
getRebate
());
setUserId
(
baseOrder
.
getUserId
());
setIsBind
(
ISBIND_BIND
);
setDiscount
(
omd
.
getRebate
());
setMemberLevel
(
omd
.
getMemberLevel
());
setIsBind
(
ISBIND_BIND
);
setRentFreeDays
(
omd
.
getRentFreeNum
());
setMemberLevel
(
omd
.
getMemberLevel
());
}});
setRentFreeDays
(
omd
.
getRentFreeNum
());
}
catch
(
Exception
e
){
}});
log
.
error
(
e
.
getMessage
(),
e
);
}
}
else
if
(
OrderTypeEnum
.
RentVehicle
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
}
else
if
(
OrderTypeEnum
.
RentVehicle
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
updateOrder
.
setStatus
(
OrderStatusEnum
.
ORDER_TOSTART
.
getCode
());
updateOrder
.
setStatus
(
OrderStatusEnum
.
ORDER_TOSTART
.
getCode
());
OrderRentVehicleDetail
orvd
=
orderRentVehicleBiz
.
selectOne
(
new
OrderRentVehicleDetail
(){{
setOrderId
(
baseOrder
.
getId
());
}});
//车辆预定审核通过
//车辆预定审核通过
//确认免费天数
if
(
orvd
.
getFreeDays
()
>
0
)
{
userFeign
.
memberDays
(
baseOrder
.
getUserId
(),
orvd
.
getFreeDays
(),
UserFeign
.
MEMBER_DAYS_CONFIRM
);
}
}
else
if
(
OrderTypeEnum
.
TOUR
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
}
else
if
(
OrderTypeEnum
.
TOUR
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
updateOrder
.
setStatus
(
OrderStatusEnum
.
ORDER_TOSTART
.
getCode
());
updateOrder
.
setStatus
(
OrderStatusEnum
.
ORDER_TOSTART
.
getCode
());
//暂无处理
//暂无处理
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/config/RabbitUserConfig.java
0 → 100644
View file @
10925dc8
package
com
.
xxfc
.
platform
.
order
.
config
;
import
org.springframework.amqp.core.Binding
;
import
org.springframework.amqp.core.BindingBuilder
;
import
org.springframework.amqp.core.CustomExchange
;
import
org.springframework.amqp.core.Queue
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* rabbitmq配置类
* 过期订单取消延时队列
* @author zhanghang
* @date 2019/1/7
*/
@Configuration
public
class
RabbitUserConfig
{
/**
* 延时队列交换机
* 注意这里的交换机类型:CustomExchange
* @return
*/
@Bean
public
CustomExchange
delayExchange
(){
Map
<
String
,
Object
>
args
=
new
HashMap
<>();
args
.
put
(
"x-delayed-type"
,
"direct"
);
return
new
CustomExchange
(
"delay_exchange"
,
"x-delayed-message"
,
true
,
false
,
args
);
}
/**
* 延时队列
* @return
*/
@Bean
public
Queue
delayQueue
(){
return
new
Queue
(
"delay_queue"
,
true
);
}
/**
* 给延时队列绑定交换机
* @return
*/
@Bean
public
Binding
cfgDelayBinding
(
Queue
cfgDelayQueue
,
CustomExchange
cfgUserDelayExchange
){
return
BindingBuilder
.
bind
(
cfgDelayQueue
).
to
(
cfgUserDelayExchange
).
with
(
"delay_key"
).
noargs
();
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderRentVehicleService.java
View file @
10925dc8
...
@@ -3,9 +3,12 @@ package com.xxfc.platform.order.service;
...
@@ -3,9 +3,12 @@ package com.xxfc.platform.order.service;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.lang.Dict
;
import
cn.hutool.core.lang.Dict
;
import
com.github.wxiaoqi.security.admin.constant.enumerate.MemberEnum
;
import
com.github.wxiaoqi.security.admin.constant.enumerate.MemberEnum
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.common.context.BaseContextHandler
;
import
com.github.wxiaoqi.security.common.context.BaseContextHandler
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderRentVehicleBiz
;
import
com.xxfc.platform.order.biz.OrderRentVehicleBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
...
@@ -51,6 +54,9 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
...
@@ -51,6 +54,9 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
@Autowired
@Autowired
OrderTemplateBiz
orderTemplateBiz
;
OrderTemplateBiz
orderTemplateBiz
;
@Autowired
UserFeign
userFeign
;
@PostConstruct
@PostConstruct
public
void
init
(){
public
void
init
(){
this
.
orderTypeEnum
=
OrderTypeEnum
.
RentVehicle
;
this
.
orderTypeEnum
=
OrderTypeEnum
.
RentVehicle
;
...
@@ -75,6 +81,14 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
...
@@ -75,6 +81,14 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
//设置订单名称
//设置订单名称
bo
.
getOrder
().
setName
(
bo
.
getVehicleModel
().
getName
());
bo
.
getOrder
().
setName
(
bo
.
getVehicleModel
().
getName
());
//扣减免费天数
if
(
null
!=
bo
.
getFreeDays
()
&&
bo
.
getFreeDays
()
>
0
)
{
int
result
=
userFeign
.
memberDays
(
bo
.
getAppUserDTO
().
getUserid
(),
bo
.
getFreeDays
(),
UserFeign
.
MEMBER_DAYS_LOCK
);
if
(
result
<
0
)
{
throw
new
BaseException
(
ResultCode
.
FAILED_CODE
);
}
}
super
.
handleDetail
(
bo
);
super
.
handleDetail
(
bo
);
}
}
...
...
xx-order/xx-order-server/src/test/java/com/xxfc/platform/order/OrderTest.java
0 → 100644
View file @
10925dc8
package
com
.
xxfc
.
platform
.
order
;
import
cn.hutool.extra.template.Template
;
import
cn.hutool.extra.template.TemplateConfig
;
import
cn.hutool.extra.template.TemplateEngine
;
import
cn.hutool.extra.template.TemplateUtil
;
import
com.xxfc.platform.order.biz.BaseOrderBiz
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
java.util.HashMap
;
@Slf4j
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
@SpringBootTest
(
classes
={
OrderApplication
.
class
})
public
class
OrderTest
{
@Autowired
BaseOrderBiz
baseOrderBiz
;
@Test
public
void
test
()
{
BaseOrder
baseOrder
=
baseOrderBiz
.
selectById
(
93
);
baseOrder
.
setRefundTime
(
System
.
currentTimeMillis
());
baseOrder
.
setVersion
(
baseOrder
.
getVersion
()
-
1
);
baseOrderBiz
.
updateSelectiveById
(
baseOrder
);
log
.
info
(
"success"
);
}
}
xx-order/xx-order-server/src/test/java/com/xxfc/platform/order/RabbitmqTest.java
0 → 100644
View file @
10925dc8
package
com
.
xxfc
.
platform
.
order
;
import
com.rabbitmq.client.Channel
;
import
com.rabbitmq.client.Connection
;
import
com.rabbitmq.client.ConnectionFactory
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
java.io.IOException
;
import
java.time.LocalDateTime
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.concurrent.TimeoutException
;
@Slf4j
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
@SpringBootTest
(
classes
={
OrderApplication
.
class
})
public
class
RabbitmqTest
{
static
final
String
exchangeName
=
"test_exchange"
;
static
final
String
queueName
=
"test_queue"
;
static
final
String
routingKey
=
"test_queue"
;
@Test
public
void
test
()
throws
IOException
,
TimeoutException
{
//建立连接,创建通道
ConnectionFactory
fc
=
new
ConnectionFactory
();
fc
.
setHost
(
"10.5.52.3"
);
fc
.
setPort
(
5672
);
fc
.
setUsername
(
"guest"
);
fc
.
setPassword
(
"guest"
);
fc
.
setVirtualHost
(
"my_vhost"
);
Connection
conn
=
fc
.
newConnection
();
Channel
channel
=
conn
.
createChannel
();
channel
.
exchangeDelete
(
exchangeName
);
//删除路由
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"x-delayed-type"
,
"direct"
);
channel
.
exchangeDeclare
(
exchangeName
,
"x-delayed-message"
,
false
,
false
,
map
);
//创建路由
channel
.
queueDelete
(
queueName
);
//删除队列
channel
.
queueDeclare
(
queueName
,
true
,
false
,
false
,
null
);
//创建队列
channel
.
queueBind
(
queueName
,
exchangeName
,
routingKey
);
//绑定路由、队列
channel
.
close
();
conn
.
close
();
// String msg = "测试延时de消息|"+ LocalDateTime.now();
//
// rabbitTemplate.convertAndSend(exchangeName, routingKey, msg, (message) ->{
// message.getMessageProperties().setHeader("x-delay", 9000); //延迟9秒
// return message;
// });
}
}
xx-order/xx-order-server/src/test/java/com/xxfc/platform/order/RabbitmqTest2.java
0 → 100644
View file @
10925dc8
package
com
.
xxfc
.
platform
.
order
;
import
com.rabbitmq.client.Channel
;
import
com.rabbitmq.client.Connection
;
import
com.rabbitmq.client.ConnectionFactory
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.amqp.support.converter.Jackson2JsonMessageConverter
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
java.io.IOException
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.TimeoutException
;
@Slf4j
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
@SpringBootTest
(
classes
={
OrderApplication
.
class
})
public
class
RabbitmqTest2
{
@Autowired
private
RabbitTemplate
rabbitTemplate
;
@Test
public
void
test
()
throws
IOException
,
TimeoutException
{
List
<
Integer
>
list
=
new
ArrayList
<
Integer
>(){{
add
(
1
);
add
(
2
);
add
(
3
);
add
(
4
);
add
(
5
);
add
(
6
);
}};
//这里的消息可以是任意对象,无需额外配置,直接传即可
log
.
info
(
"===============延时队列生产消息===================="
);
log
.
info
(
"发送时间:{},发送内容:{}"
,
LocalDateTime
.
now
(),
list
.
toString
());
rabbitTemplate
.
setMessageConverter
(
new
Jackson2JsonMessageConverter
());
rabbitTemplate
.
convertAndSend
(
"test_exchange"
,
"test_queue"
,
list
,
message
->
{
//注意这里时间可以使long,而且是设置header
message
.
getMessageProperties
().
setHeader
(
"x-delay"
,
60000
);
return
message
;
}
);
log
.
info
(
"{}ms后执行"
,
60000
);
}
}
xx-order/xx-order-server/src/test/java/com/xxfc/platform/order/RabbitmqTest3.java
0 → 100644
View file @
10925dc8
package
com
.
xxfc
.
platform
.
order
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.amqp.support.converter.Jackson2JsonMessageConverter
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
java.io.IOException
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.concurrent.TimeoutException
;
@Slf4j
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
@SpringBootTest
(
classes
={
OrderApplication
.
class
})
public
class
RabbitmqTest3
{
@Autowired
private
RabbitTemplate
rabbitTemplate
;
// @Bean
// @RabbitListener(queues = "delay_queue")
// public
@Test
public
void
test
()
throws
IOException
,
TimeoutException
{
;
}
}
xx-order/xx-order-server/src/test/java/com/xxfc/platform/order/RegionTest.java
View file @
10925dc8
...
@@ -4,9 +4,11 @@ import cn.hutool.extra.template.Template;
...
@@ -4,9 +4,11 @@ import cn.hutool.extra.template.Template;
import
cn.hutool.extra.template.TemplateConfig
;
import
cn.hutool.extra.template.TemplateConfig
;
import
cn.hutool.extra.template.TemplateEngine
;
import
cn.hutool.extra.template.TemplateEngine
;
import
cn.hutool.extra.template.TemplateUtil
;
import
cn.hutool.extra.template.TemplateUtil
;
import
com.xxfc.platform.order.biz.BaseOrderBiz
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Test
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.junit.runner.RunWith
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
...
@@ -18,6 +20,8 @@ import java.util.HashMap;
...
@@ -18,6 +20,8 @@ import java.util.HashMap;
public
class
RegionTest
{
public
class
RegionTest
{
// @Autowired
// BaseOrderBiz baseOrderBiz;
@Test
@Test
public
void
test
()
{
public
void
test
()
{
...
@@ -49,6 +53,9 @@ public class RegionTest {
...
@@ -49,6 +53,9 @@ public class RegionTest {
// .driverAmount(new BigDecimal("1800"))
// .driverAmount(new BigDecimal("1800"))
// .deposit(new BigDecimal("20000")).build()
// .deposit(new BigDecimal("20000")).build()
//输出:Hello Hutool
//输出:Hello Hutool
log
.
info
(
result
);
log
.
info
(
result
);
}
}
}
}
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