记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
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
董敬伟
liquidnet-bus-v1
Commits
b512594f
Commit
b512594f
authored
May 20, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
a76b88ac
92e6f59b
Changes
28
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
591 additions
and
202 deletions
+591
-202
AdamMemberOrderCodeParam.java
.../liquidnet/service/adam/dto/AdamMemberOrderCodeParam.java
+5
-2
AdamMemberOrderVo.java
.../com/liquidnet/service/adam/dto/vo/AdamMemberOrderVo.java
+1
-1
IAdamMemberOrderService.java
...quidnet/service/adam/service/IAdamMemberOrderService.java
+11
-2
IAdamMemberPriceService.java
...t/service/adam/service/admin/IAdamMemberPriceService.java
+2
-1
AdamMemberConst.java
.../com/liquidnet/service/adam/constant/AdamMemberConst.java
+9
-1
AdamMemberOrderController.java
...et/service/adam/controller/AdamMemberOrderController.java
+40
-4
AdamMemberPriceController.java
...vice/adam/controller/admin/AdamMemberPriceController.java
+4
-8
AdamMemberOrderServiceImpl.java
...service/adam/service/impl/AdamMemberOrderServiceImpl.java
+135
-33
AdamMemberServiceImpl.java
...dnet/service/adam/service/impl/AdamMemberServiceImpl.java
+8
-18
AdamUserMemberServiceImpl.java
.../service/adam/service/impl/AdamUserMemberServiceImpl.java
+1
-1
AdamMemberPriceServiceImpl.java
...e/adam/service/impl/admin/AdamMemberPriceServiceImpl.java
+6
-2
AdamMemberServiceAdminImpl.java
...e/adam/service/impl/admin/AdamMemberServiceAdminImpl.java
+2
-2
KylinRedisConst.java
...com/liquidnet/service/kylin/constant/KylinRedisConst.java
+1
-1
PerformanceStep2Param.java
...uidnet/service/kylin/dto/param/PerformanceStep2Param.java
+3
-0
PerformanceVo.java
...ava/com/liquidnet/service/kylin/dto/vo/PerformanceVo.java
+4
-2
TicketVo.java
...ain/java/com/liquidnet/service/kylin/dto/vo/TicketVo.java
+8
-1
PerformanceIgnoreVo.java
...dnet/service/kylin/dto/vo/ignore/PerformanceIgnoreVo.java
+4
-4
IKylinPerformancesAdminService.java
...e/kylin/service/admin/IKylinPerformancesAdminService.java
+31
-9
KylinTicketStatus.java
...com/liquidnet/service/kylin/entity/KylinTicketStatus.java
+5
-0
db_kylin_structure.sql
.../liquidnet-service-kylin-impl/docu/db_kylin_structure.sql
+1
-0
pom.xml
...uidnet-service-kylin/liquidnet-service-kylin-impl/pom.xml
+0
-5
KylinPerformancesAdminController.java
...in/controller/admin/KylinPerformancesAdminController.java
+34
-22
KylinPerformancesServiceImpl.java
...vice/kylin/service/impl/KylinPerformancesServiceImpl.java
+24
-6
KylinPerformancesAdminServiceImpl.java
...service/impl/admin/KylinPerformancesAdminServiceImpl.java
+33
-2
KylinPerformancesPartnerServiceImpl.java
...ice/impl/partner/KylinPerformancesPartnerServiceImpl.java
+7
-20
KylinTicketsPartnerServiceImpl.java
.../service/impl/partner/KylinTicketsPartnerServiceImpl.java
+20
-4
PerformanceVoTask.java
.../liquidnet/service/kylin/timerTask/PerformanceVoTask.java
+116
-48
DataUtils.java
...ain/java/com/liquidnet/service/kylin/utils/DataUtils.java
+76
-3
No files found.
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/AdamMemberOrderCodeParam.java
View file @
b512594f
...
...
@@ -5,15 +5,18 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
@ApiModel
(
value
=
"AdamMemberOrderCodeParam"
,
description
=
"使用兑换码"
)
@Data
public
class
AdamMemberOrderCodeParam
implements
Serializable
{
private
static
final
long
serialVersionUID
=
5940725094369061032L
;
@ApiModelProperty
(
position
=
0
,
required
=
false
,
example
=
"0
"
)
private
String
uid
;
@ApiModelProperty
(
position
=
0
,
required
=
true
,
value
=
"类型2-会员码 3-礼包码"
,
example
=
"2
"
)
private
int
type
;
@ApiModelProperty
(
position
=
1
,
required
=
true
,
example
=
"0"
)
private
String
memberCode
;
@ApiModelProperty
(
position
=
2
,
required
=
true
,
example
=
"0"
)
private
LocalDateTime
birthday
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamMemberOrderVo.java
View file @
b512594f
...
...
@@ -42,7 +42,7 @@ public class AdamMemberOrderVo implements Serializable {
private
String
createdAt
;
@ApiModelProperty
(
position
=
14
,
value
=
"兑换码"
)
private
String
memberCode
;
@ApiModelProperty
(
position
=
15
,
value
=
"
兑换码
"
)
@ApiModelProperty
(
position
=
15
,
value
=
"
价格
"
)
private
BigDecimal
price
;
public
static
final
AdamMemberOrderVo
obj
=
new
AdamMemberOrderVo
();
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamMemberOrderService.java
View file @
b512594f
...
...
@@ -8,6 +8,8 @@ import com.liquidnet.service.adam.dto.AdamMemberOrderResult;
import
com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo
;
import
com.liquidnet.service.adam.entity.AdamMemberOrder
;
import
java.util.List
;
/**
* 对客户端API接口
*/
...
...
@@ -24,7 +26,14 @@ public interface IAdamMemberOrderService extends IService<AdamMemberOrder> {
* @param param
* @return
*/
Object
useMemberCode
(
AdamMemberOrderCodeParam
param
);
boolean
useMemberCode
(
AdamMemberOrderCodeParam
param
);
/**
* 获取订单列表
* @param uid
* @return
*/
List
<
AdamMemberOrderVo
>
getMemberOrderList
(
String
uid
);
/**
* 获取订单详情信息
...
...
@@ -32,7 +41,7 @@ public interface IAdamMemberOrderService extends IService<AdamMemberOrder> {
* @param orderNo 订单号
* @return
*/
AdamMemberOrderVo
getMemberOrderInfo
(
String
orderNo
);
AdamMemberOrderVo
getMemberOrderInfo
(
String
uid
,
String
orderNo
);
/**
* 支付回调
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/admin/IAdamMemberPriceService.java
View file @
b512594f
package
com
.
liquidnet
.
service
.
adam
.
service
.
admin
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberPriceVo
;
import
com.liquidnet.service.adam.entity.AdamMemberPrice
;
import
java.util.List
;
...
...
@@ -10,7 +11,7 @@ public interface IAdamMemberPriceService extends IService<AdamMemberPrice> {
void
add
(
AdamMemberPrice
info
);
AdamMemberPrice
query
(
String
memberPriceId
);
AdamMemberPrice
Vo
query
(
String
memberId
,
String
memberPriceId
);
boolean
edit
(
AdamMemberPrice
info
);
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/constant/AdamMember
Order
Const.java
→
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/constant/AdamMemberConst.java
View file @
b512594f
...
...
@@ -3,7 +3,7 @@ package com.liquidnet.service.adam.constant;
/**
* 订单
*/
public
class
AdamMember
Order
Const
{
public
class
AdamMemberConst
{
// 订单状态
public
static
final
Integer
STATUS_UNPAID
=
0
;
// 待支付
public
static
final
Integer
STATUS_PAID
=
1
;
// 已支付
...
...
@@ -30,5 +30,13 @@ public class AdamMemberOrderConst {
public
static
final
Integer
STATE_VALID
=
1
;
// 正常
public
static
final
Integer
STATE_EXPIRED
=
2
;
// 已失效
// 会员码状态
public
static
final
Integer
STATUS_UNUSED
=
0
;
// 未使用
public
static
final
Integer
STATUS_USED
=
1
;
// 已使用
public
static
final
Integer
STATUS_INVALID
=
2
;
// 已失效
public
static
final
String
VIP_CODE
=
"VIP_CODE"
;
public
static
final
String
GIFT_CODE
=
"GIFT_CODE"
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamMemberOrderController.java
View file @
b512594f
...
...
@@ -2,19 +2,23 @@ package com.liquidnet.service.adam.controller;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.service.adam.dto.AdamMemberOrderCallbackResult
;
import
com.liquidnet.service.adam.dto.AdamMemberOrderCodeParam
;
import
com.liquidnet.service.adam.dto.AdamMemberOrderParam
;
import
com.liquidnet.service.adam.dto.AdamMemberOrderResult
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo
;
import
com.liquidnet.service.adam.entity.AdamMemberOrder
;
import
com.liquidnet.service.adam.service.IAdamMemberOrderService
;
import
com.liquidnet.service.base.ErrorMapping
;
import
com.liquidnet.service.base.ResponseDto
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.
PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.
*
;
import
java.util.List
;
@Api
(
tags
=
"购买会员"
)
@Slf4j
...
...
@@ -44,7 +48,10 @@ public class AdamMemberOrderController {
@PostMapping
(
"/use/memberCode"
)
public
ResponseDto
<
AdamMemberOrder
>
useMemberCode
(
AdamMemberOrderCodeParam
param
)
{
try
{
adamMemberOrderService
.
useMemberCode
(
param
);
boolean
result
=
adamMemberOrderService
.
useMemberCode
(
param
);
if
(!
result
)
{
return
ResponseDto
.
failure
(
"兑换失败"
);
}
return
ResponseDto
.
success
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
@@ -52,4 +59,33 @@ public class AdamMemberOrderController {
}
}
@ApiOperationSupport
(
order
=
2
)
@ApiOperation
(
value
=
"会员订单列表"
)
@GetMapping
(
"/member/order/list"
)
public
ResponseDto
<
List
<
AdamMemberOrderVo
>>
getMemberOrderList
()
{
String
currentUid
=
CurrentUtil
.
getCurrentUid
();
List
<
AdamMemberOrderVo
>
memberOrderList
=
adamMemberOrderService
.
getMemberOrderList
(
currentUid
);
return
ResponseDto
.
success
(
memberOrderList
);
}
@ApiOperationSupport
(
order
=
3
)
@ApiOperation
(
value
=
"会员订单详情"
)
@GetMapping
(
"/member/order/info/{orderNo}"
)
public
ResponseDto
<
AdamMemberOrderVo
>
getMemberOrderList
(
@PathVariable
String
orderNo
)
{
String
currentUid
=
CurrentUtil
.
getCurrentUid
();
AdamMemberOrderVo
memberOrderInfo
=
adamMemberOrderService
.
getMemberOrderInfo
(
currentUid
,
orderNo
);
return
ResponseDto
.
success
(
memberOrderInfo
);
}
@ApiOperationSupport
(
order
=
4
)
@ApiOperation
(
value
=
"会员支付回调"
)
@PostMapping
(
"/member/order/callback"
)
public
ResponseDto
<
Object
>
memberOrderCallBack
(
AdamMemberOrderCallbackResult
result
){
boolean
b
=
adamMemberOrderService
.
memberNotifyCallBack
(
result
);
if
(
b
)
{
return
ResponseDto
.
success
();
}
else
{
return
ResponseDto
.
failure
();
}
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/admin/AdamMemberPriceController.java
View file @
b512594f
...
...
@@ -44,14 +44,10 @@ public class AdamMemberPriceController {
@ApiOperationSupport
(
order
=
1
)
@ApiOperation
(
value
=
"会员价格详情"
)
@GetMapping
(
"info/{memberPriceId}"
)
public
ResponseDto
<
Object
>
query
(
@PathVariable
(
name
=
"memberPriceId"
)
String
memberPriceId
){
AdamMemberPrice
adamMemberPrice
=
adamMemberPriceService
.
query
(
memberPriceId
);
AdamMemberPriceVo
adamMemberPriceVo
=
new
AdamMemberPriceVo
();
BeanUtils
.
copyProperties
(
adamMemberPrice
,
adamMemberPriceVo
);
adamMemberPriceVo
.
setCreatedAt
(
DateUtil
.
format
(
adamMemberPrice
.
getCreatedAt
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
adamMemberPriceVo
.
setUpdatedAt
(
DateUtil
.
format
(
adamMemberPrice
.
getUpdatedAt
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
return
ResponseDto
.
success
(
adamMemberPriceVo
);
@GetMapping
(
"info/{memberId}/{memberPriceId}"
)
public
ResponseDto
<
AdamMemberPriceVo
>
query
(
@PathVariable
(
name
=
"memberId"
)
String
memberId
,
@PathVariable
(
name
=
"memberPriceId"
)
String
memberPriceId
){
AdamMemberPriceVo
adamMemberPrice
=
adamMemberPriceService
.
query
(
memberId
,
memberPriceId
);
return
ResponseDto
.
success
(
adamMemberPrice
);
}
@ApiOperationSupport
(
order
=
2
)
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamMemberOrderServiceImpl.java
View file @
b512594f
...
...
@@ -4,11 +4,8 @@ import com.alibaba.fastjson.JSON;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.HttpUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.adam.constant.AdamMemberOrderConst
;
import
com.liquidnet.commons.lang.util.*
;
import
com.liquidnet.service.adam.constant.AdamMemberConst
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.AdamMemberOrderCallbackResult
;
import
com.liquidnet.service.adam.dto.AdamMemberOrderCodeParam
;
...
...
@@ -34,10 +31,7 @@ import org.springframework.data.mongodb.core.query.Criteria;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.LinkedMultiValueMap
;
import
org.springframework.util.MultiValueMap
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.util.*
;
...
...
@@ -64,6 +58,44 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
@Autowired
IAdamMemberService
adamMemberService
;
@Override
public
List
<
AdamMemberOrderVo
>
getMemberOrderList
(
String
uid
)
{
String
redisKey
=
AdamRedisConst
.
INFO_MEMBERS_ORDER_INFO
.
concat
(
uid
);
List
<
AdamMemberOrderVo
>
voList
=
new
ArrayList
<>();
LinkedHashSet
<
String
>
hkeys
=
(
LinkedHashSet
<
String
>)
redisUtil
.
hkeys
(
redisKey
);
if
(
hkeys
.
size
()
>
0
)
{
Iterator
<
String
>
iterator
=
hkeys
.
iterator
();
while
(
iterator
.
hasNext
())
{
String
key
=
iterator
.
next
();
AdamMemberOrderVo
tempOrderVo
=
(
AdamMemberOrderVo
)
redisUtil
.
hget
(
redisKey
,
key
);
if
(
null
==
tempOrderVo
)
{
tempOrderVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderNo"
).
is
(
key
)),
AdamMemberOrderVo
.
class
,
AdamMemberOrderVo
.
class
.
getSimpleName
());
}
if
(
null
!=
tempOrderVo
)
{
voList
.
add
(
tempOrderVo
);
}
}
}
else
{
voList
=
mongoTemplate
.
find
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
)),
AdamMemberOrderVo
.
class
,
AdamMemberOrderVo
.
class
.
getSimpleName
());
for
(
int
i
=
0
;
i
<
voList
.
size
();
i
++)
{
AdamMemberOrderVo
vo
=
voList
.
get
(
i
);
redisUtil
.
hset
(
redisKey
,
vo
.
getOrderNo
(),
vo
);
}
}
return
voList
;
}
@Override
public
AdamMemberOrderVo
getMemberOrderInfo
(
String
uid
,
String
orderNo
)
{
AdamMemberOrderVo
orderVo
=
null
;
orderVo
=
(
AdamMemberOrderVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_ORDER_INFO
.
concat
(
uid
),
orderNo
);
if
(
null
==
orderVo
)
{
orderVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderNo"
).
is
(
orderNo
)),
AdamMemberOrderVo
.
class
,
AdamMemberOrderVo
.
class
.
getSimpleName
());
}
return
orderVo
;
}
@Override
public
AdamMemberOrderResult
buyMemberOrMemberCode
(
AdamMemberOrderParam
param
)
throws
Exception
{
String
memberId
=
param
.
getMemberId
();
...
...
@@ -114,7 +146,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
orderVo
.
setMemberName
(
adamMemberVo
.
getName
());
orderVo
.
setMode
(
param
.
getMode
());
orderVo
.
setPayChannel
(
param
.
getPayChannel
());
orderVo
.
setState
(
AdamMember
Order
Const
.
STATUS_UNPAID
);
orderVo
.
setState
(
AdamMemberConst
.
STATUS_UNPAID
);
orderVo
.
setUid
(
param
.
getUid
());
orderVo
.
setPrice
(
param
.
getPrice
());
...
...
@@ -130,14 +162,14 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
// 判断购买情况
// 调取对应支付接口
LinkedMultiValueMap
<
String
,
String
>
payParam
=
new
LinkedMultiValueMap
<>();
payParam
.
add
(
"type"
,
AdamMember
Order
Const
.
TYPE_VIP
);
payParam
.
add
(
"type"
,
AdamMemberConst
.
TYPE_VIP
);
payParam
.
add
(
"price"
,
String
.
valueOf
(
priceVo
.
getPrice
()));
payParam
.
add
(
"name"
,
orderVo
.
getMemberName
());
payParam
.
add
(
"order_code"
,
orderVo
.
getOrderNo
());
payParam
.
add
(
"client_ip"
,
param
.
getClientIp
());
payParam
.
add
(
"notify_url"
,
"回调地址"
);
payParam
.
add
(
"create_date"
,
createdAt
);
payParam
.
add
(
"expire_time"
,
AdamMember
Order
Const
.
TIME_LIMIT
.
toString
());
payParam
.
add
(
"expire_time"
,
AdamMemberConst
.
TIME_LIMIT
.
toString
());
if
(
null
!=
param
.
getAuthCode
())
{
payParam
.
add
(
"auth_code"
,
param
.
getAuthCode
());
}
...
...
@@ -171,10 +203,80 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
* @return
*/
@Override
public
Object
useMemberCode
(
AdamMemberOrderCodeParam
param
)
{
String
uid
=
param
.
ge
tUid
();
public
boolean
useMemberCode
(
AdamMemberOrderCodeParam
param
)
{
String
uid
=
CurrentUtil
.
getCurren
tUid
();
String
code
=
param
.
getMemberCode
();
return
null
;
int
type
=
param
.
getType
();
AdamUserMemberVo
userMemberVo
=
(
AdamUserMemberVo
)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
uid
));
if
(
null
==
userMemberVo
)
{
userMemberVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
)),
AdamUserMemberVo
.
class
,
AdamUserMemberVo
.
class
.
getSimpleName
());
}
if
(
null
!=
userMemberVo
)
{
return
false
;
}
AdamMemberCodeVo
memberCodeVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"memberCode"
).
is
(
code
)),
AdamMemberCodeVo
.
class
,
AdamMemberCodeVo
.
class
.
getSimpleName
());
if
(
memberCodeVo
.
getState
()
!=
AdamMemberConst
.
STATUS_UNPAID
)
{
return
false
;
}
// 获取会员价格对应的天数
AdamMemberPriceVo
priceVo
=
(
AdamMemberPriceVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_PRICE_INFO
.
concat
(
memberCodeVo
.
getMemberId
()),
memberCodeVo
.
getMemberPriceId
());
if
(
null
==
priceVo
)
{
priceVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"memberPriceId"
).
is
(
memberCodeVo
.
getMemberPriceId
())),
AdamMemberPriceVo
.
class
,
AdamMemberPriceVo
.
class
.
getSimpleName
());
}
if
(
null
==
priceVo
)
{
return
false
;
}
String
currentDateTime
=
DateUtil
.
getNowTime
();
AdamMemberOrderVo
orderVo
=
new
AdamMemberOrderVo
();
orderVo
.
setMemberCode
(
code
);
orderVo
.
setMemberNo
(
memberCodeVo
.
getMemberNo
());
orderVo
.
setMemberId
(
IDGenerator
.
nextSnowId
().
toString
());
orderVo
.
setMode
(
type
);
orderVo
.
setMemberId
(
memberCodeVo
.
getMemberId
());
orderVo
.
setMemberPriceId
(
memberCodeVo
.
getMemberPriceId
());
orderVo
.
setState
(
AdamMemberConst
.
STATUS_UNPAID
);
orderVo
.
setCreatedAt
(
currentDateTime
);
orderVo
.
setDays
(
priceVo
.
getDays
());
orderVo
.
setBirthday
(
DateUtil
.
format
(
param
.
getBirthday
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
if
(
AdamMemberConst
.
SUB_TYPE_USE_VIP_CODE
==
type
)
{
//使用购买的会员码
orderVo
.
setPayChannel
(
AdamMemberConst
.
VIP_CODE
);
}
else
if
(
AdamMemberConst
.
SUB_TYPE_USE_GIFT_CODE
==
type
)
{
// 使用礼包码
orderVo
.
setPayChannel
(
AdamMemberConst
.
GIFT_CODE
);
}
// 创建用户使用兑换码的订单
mongoTemplate
.
insert
(
orderVo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_ORDER_INFO
.
concat
(
uid
),
orderVo
.
getOrderNo
(),
orderVo
);
// 组装用户会员数据
AdamUserMemberVo
memberVo
=
new
AdamUserMemberVo
();
memberVo
.
setMemberNo
(
orderVo
.
getMemberNo
());
memberVo
.
setMemberId
(
orderVo
.
getMemberId
());
memberVo
.
setState
(
AdamMemberConst
.
STATE_VALID
);
memberVo
.
setUid
(
uid
);
memberVo
.
setMemberUserId
(
IDGenerator
.
nextSnowId
().
toString
());
memberVo
.
setCreatedAt
(
currentDateTime
);
memberVo
.
setUpdatedAt
(
currentDateTime
);
Date
expiryAt
=
DateUtil
.
getBeforeDayEnd
(
Calendar
.
getInstance
(),
orderVo
.
getDays
());
String
expiryAtStr
=
DateUtil
.
format
(
expiryAt
,
DateUtil
.
Formatter
.
yyyyMMddHHmmss
);
memberVo
.
setExpiryAt
(
expiryAtStr
);
// 创建用户会员相关信息
mongoTemplate
.
insert
(
memberVo
);
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
uid
),
memberVo
);
// 更新旧数据
memberCodeVo
.
setState
(
AdamMemberConst
.
STATUS_USED
);
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
memberCodeVo
)));
mongoTemplate
.
getCollection
(
AdamMemberCodeVo
.
class
.
getSimpleName
())
.
updateOne
(
Query
.
query
(
Criteria
.
where
(
"code"
).
is
(
memberCodeVo
.
getCode
())).
getQueryObject
(),
object
);
// todo MQ 统一通知队列插入数据库
return
true
;
}
/**
...
...
@@ -211,15 +313,10 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
return
result
;
}
@Override
public
AdamMemberOrderVo
getMemberOrderInfo
(
String
orderNo
)
{
return
null
;
}
@Override
public
boolean
memberNotifyCallBack
(
AdamMemberOrderCallbackResult
result
)
{
if
(
1
!=
result
.
getStatus
()
||
result
.
getType
()
!=
AdamMember
Order
Const
.
TYPE_VIP
||
result
.
getType
()
!=
AdamMemberConst
.
TYPE_VIP
||
null
==
result
.
getOrderCode
()
||
null
==
result
.
getCode
())
{
return
false
;
...
...
@@ -227,7 +324,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
AdamMemberOrderVo
orderVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderNo"
).
is
(
result
.
getOrderCode
())),
AdamMemberOrderVo
.
class
,
AdamMemberOrderVo
.
class
.
getSimpleName
());
int
state
=
orderVo
.
getState
();
if
(
AdamMember
OrderConst
.
STATUS_PAID
==
state
||
AdamMemberOrd
erConst
.
STATUS_LATE
==
state
)
{
if
(
AdamMember
Const
.
STATUS_PAID
==
state
||
AdamMemb
erConst
.
STATUS_LATE
==
state
)
{
// 订单已经处理过
return
false
;
}
...
...
@@ -237,12 +334,12 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
}
String
currentDateTime
=
DateUtil
.
getNowTime
();
// 获取购买天数
AdamMemberPrice
priceVo
=
adamMemberPriceService
.
query
(
orderVo
.
getMemberPriceId
());
AdamMemberPrice
Vo
priceVo
=
adamMemberPriceService
.
query
(
orderVo
.
getMemberId
(),
orderVo
.
getMemberPriceId
());
String
cardNumber
=
""
;
AdamMemberCodeVo
codeVo
=
null
;
int
day
=
priceVo
.
getDays
();
try
{
if
(
AdamMemberOrderConst
.
SUB_TYPE_BUY_VIP
==
orderVo
.
getMode
())
{
// 购买会员
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
""
).
is
(
""
)),
null
,
null
);
if
(
AdamMemberConst
.
SUB_TYPE_BUY_VIP
==
orderVo
.
getMode
())
{
// 购买会员
AdamUserMemberVo
userMemberInfo
=
adamUserMemberService
.
getUserMemberInfo
(
orderVo
.
getUid
());
if
(
null
==
userMemberInfo
)
{
// 创建会员
cardNumber
=
adamUserMemberService
.
getMaxMemberNo
(
orderVo
.
getMemberId
());
...
...
@@ -250,7 +347,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
createMemberUser
.
setMemberUserId
(
IDGenerator
.
nextSnowId
().
toString
());
createMemberUser
.
setMemberId
(
orderVo
.
getMemberId
());
createMemberUser
.
setMemberNo
(
orderVo
.
getMemberNo
());
createMemberUser
.
setState
(
AdamMember
Order
Const
.
STATE_VALID
);
createMemberUser
.
setState
(
AdamMemberConst
.
STATE_VALID
);
createMemberUser
.
setUid
(
orderVo
.
getUid
());
createMemberUser
.
setCreatedAt
(
currentDateTime
);
createMemberUser
.
setUpdatedAt
(
currentDateTime
);
...
...
@@ -261,7 +358,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
createMemberUser
.
setExpiryAt
(
expiryAtStr
);
// todo vip card code 记录 自动创建并使用
AdamMemberCodeVo
codeVo
=
this
.
getAdamMemberCodeVo
(
orderVo
,
result
.
getCode
(),
0
,
currentDateTime
);
codeVo
=
this
.
getAdamMemberCodeVo
(
orderVo
,
result
.
getCode
(),
0
,
currentDateTime
);
codeVo
.
setState
(
1
);
codeVo
.
setUseUid
(
orderVo
.
getUid
());
codeVo
.
setUseOrderNo
(
orderVo
.
getMemberCode
());
...
...
@@ -274,7 +371,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
orderVo
.
getUid
()),
createMemberUser
);
// 会员码使用记录
mongoTemplate
.
insert
(
codeVo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_CODE_INFO
.
concat
(
codeVo
.
getBuyUid
()),
codeVo
.
get
MemberCodeId
(),
codeVo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_CODE_INFO
.
concat
(
codeVo
.
getBuyUid
()),
codeVo
.
get
BuyOrderNo
(),
codeVo
);
// todo mq 发送数据到队列中
}
else
{
// 续费
...
...
@@ -294,27 +391,32 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
orderVo
.
getUid
()),
userMemberInfo
);
}
}
if
(
AdamMember
Order
Const
.
SUB_TYPE_BUY_VIP_CODE
==
orderVo
.
getMode
())
{
// 购买会员码
if
(
AdamMemberConst
.
SUB_TYPE_BUY_VIP_CODE
==
orderVo
.
getMode
())
{
// 购买会员码
cardNumber
=
adamUserMemberService
.
getMaxMemberNo
(
orderVo
.
getMemberId
());
AdamMemberCodeVo
codeVo
=
this
.
getAdamMemberCodeVo
(
orderVo
,
result
.
getCode
(),
0
,
currentDateTime
);
codeVo
=
this
.
getAdamMemberCodeVo
(
orderVo
,
result
.
getCode
(),
0
,
currentDateTime
);
codeVo
.
setState
(
0
);
codeVo
.
setMemberNo
(
cardNumber
);
mongoTemplate
.
insert
(
codeVo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_CODE_INFO
.
concat
(
codeVo
.
getBuyUid
()),
codeVo
.
get
MemberCodeId
(),
codeVo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_CODE_INFO
.
concat
(
codeVo
.
getBuyUid
()),
codeVo
.
get
BuyOrderNo
(),
codeVo
);
}
// 更新订单信息
orderVo
.
setPayChannel
(
result
.
getPaymentType
());
orderVo
.
setPaymentAt
(
DateUtil
.
format
(
result
.
getPaymentAt
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
orderVo
.
setState
(
AdamMember
Order
Const
.
STATUS_PAID
);
orderVo
.
setState
(
AdamMemberConst
.
STATUS_PAID
);
orderVo
.
setPayNo
(
result
.
getCode
());
orderVo
.
setMemberNo
(
cardNumber
);
// 回调中给会员卡号 or 下单时给
orderVo
.
setMemberNo
(
cardNumber
);
if
(
null
!=
codeVo
)
{
orderVo
.
setMemberCode
(
codeVo
.
getCode
());
// 兑换码数据
}
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
orderVo
)));
mongoTemplate
.
getCollection
(
AdamMemberOrderVo
.
class
.
getSimpleName
())
.
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderNo"
).
is
(
orderVo
.
getOrderNo
())).
getQueryObject
(),
object
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_ORDER_INFO
.
concat
(
orderVo
.
getUid
()),
orderVo
.
getOrderNo
(),
orderVo
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
false
;
...
...
@@ -337,7 +439,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
codeVo
.
setMemberPriceId
(
orderVo
.
getMemberPriceId
());
codeVo
.
setBuyAt
(
currentDateTime
);
codeVo
.
setBuyOrderNo
(
orderCode
);
codeVo
.
setType
(
AdamMember
Order
Const
.
TYPE_BUY
);
codeVo
.
setType
(
AdamMemberConst
.
TYPE_BUY
);
codeVo
.
setMemberNo
(
orderVo
.
getMemberNo
());
codeVo
.
setCode
(
MemberUtil
.
getMemberCode
(
type
));
codeVo
.
setCreatedAt
(
currentDateTime
);
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamMemberServiceImpl.java
View file @
b512594f
...
...
@@ -42,29 +42,19 @@ public class AdamMemberServiceImpl extends ServiceImpl<AdamMemberMapper, AdamMem
@Override
public
AdamMemberVo
queryMemberInfo
()
{
AdamMember
firstMember
=
adamMemberMapper
.
getFirstMember
();
String
memberId
=
firstMember
.
getMemberId
();
AdamMemberVo
info
=
null
;
List
<
AdamMemberVo
>
adamMemberVoList
=
mongoTemplate
.
findAll
(
AdamMemberVo
.
class
);
if
(
adamMemberVoList
.
size
()
>
0
){
info
=
adamMemberVoList
.
get
(
0
);
}
List
<
AdamMemberPriceVo
>
memberPrice
=
new
ArrayList
<>();
info
=
(
AdamMemberVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
memberId
),
memberId
);
Map
<
Object
,
Object
>
tempMemberPrice
=
redisUtil
.
hmget
(
AdamRedisConst
.
INFO_MEMBERS_PRICE_INFO
.
concat
(
memberId
));
Map
<
Object
,
Object
>
tempMemberPrice
=
redisUtil
.
hmget
(
AdamRedisConst
.
INFO_MEMBERS_PRICE_INFO
.
concat
(
info
.
getMemberId
()));
Iterator
<
Object
>
iterator
=
tempMemberPrice
.
keySet
().
iterator
();
while
(
iterator
.
hasNext
())
{
AdamMemberPriceVo
tempAmp
=
(
AdamMemberPriceVo
)
tempMemberPrice
.
get
(
iterator
.
next
());
while
(
iterator
.
hasNext
())
{
AdamMemberPriceVo
tempAmp
=
(
AdamMemberPriceVo
)
tempMemberPrice
.
get
(
iterator
.
next
());
memberPrice
.
add
(
tempAmp
);
}
if
(
null
==
info
)
{
info
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"memberId"
).
is
(
memberId
)),
AdamMemberVo
.
class
,
AdamMemberVo
.
class
.
getSimpleName
());
}
if
(
null
==
tempMemberPrice
)
{
memberPrice
=
mongoTemplate
.
find
(
Query
.
query
(
Criteria
.
where
(
"memberId"
).
is
(
memberId
)),
AdamMemberPriceVo
.
class
,
AdamMemberPriceVo
.
class
.
getSimpleName
());
}
if
(
null
!=
info
&&
memberPrice
.
size
()
>
0
)
{
info
.
setAdamMemberPrice
(
memberPrice
);
}
info
.
setAdamMemberPrice
(
memberPrice
);
return
info
;
}
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserMemberServiceImpl.java
View file @
b512594f
...
...
@@ -81,7 +81,7 @@ public class AdamUserMemberServiceImpl extends ServiceImpl<AdamUserMemberMapper,
@Override
public
boolean
getOneFromRepertory
(
String
memberId
)
{
AdamMemberVo
adamMemberVo
=
(
AdamMemberVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
memberId
),
memberId
);
AdamMemberVo
adamMemberVo
=
(
AdamMemberVo
)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
memberId
)
);
if
(
null
==
adamMemberVo
)
{
adamMemberVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"memberId"
).
is
(
memberId
)),
AdamMemberVo
.
class
,
AdamMemberVo
.
class
.
getSimpleName
());
}
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/admin/AdamMemberPriceServiceImpl.java
View file @
b512594f
...
...
@@ -72,8 +72,12 @@ public class AdamMemberPriceServiceImpl extends ServiceImpl<AdamMemberPriceMappe
}
@Override
public
AdamMemberPrice
query
(
String
memberPriceId
)
{
return
adamMemberPriceMapper
.
misMemberPriceInfo
(
memberPriceId
);
public
AdamMemberPriceVo
query
(
String
memberId
,
String
memberPriceId
)
{
AdamMemberPriceVo
priceVo
=
(
AdamMemberPriceVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_PRICE_INFO
.
concat
(
memberId
),
memberPriceId
);
if
(
null
==
priceVo
)
{
priceVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"memberPriceId"
).
is
(
memberPriceId
)),
AdamMemberPriceVo
.
class
,
AdamMemberPriceVo
.
class
.
getSimpleName
());
}
return
priceVo
;
}
@Override
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/admin/AdamMemberServiceAdminImpl.java
View file @
b512594f
...
...
@@ -83,7 +83,7 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_member.add", (new AdamMemberVo()).getMqList(adamMember).toArray()));
// todo 同步redis
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
info
.
getMemberId
()),
info
.
getMemberId
(
),
amv
);
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
info
.
getMemberId
()
),
amv
);
}
@Override
...
...
@@ -94,6 +94,6 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
.
updateOne
(
Query
.
query
(
Criteria
.
where
(
"mId"
).
is
(
info
.
getMid
())).
getQueryObject
(),
object
);
// todo 放入MQ
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
info
.
getMid
().
toString
()),
info
.
getMid
().
toString
(
),
info
);
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_INFO
.
concat
(
info
.
getMid
().
toString
()
),
info
);
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/constant/KylinRedisConst.java
View file @
b512594f
...
...
@@ -7,7 +7,7 @@ public class KylinRedisConst {
public
static
final
String
PERFORMANCES_INVENTORY
=
"kylin:performances_inventory:ticket:"
;
public
static
final
String
SURPLUS_GENERAL
=
"surplusGeneral"
;
public
static
final
String
SURPLUS_EXCHANGE
=
"surplusExchange"
;
public
static
final
String
TICKET
=
"kylin:ticket:i
d
"
;
public
static
final
String
TICKET
=
"kylin:ticket:i
nfo
"
;
public
static
final
String
TIMES
=
"kylin:times:id"
;
public
static
final
String
BANNERS
=
"kylin:banners"
;
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/param/PerformanceStep2Param.java
View file @
b512594f
...
...
@@ -28,6 +28,9 @@ public class PerformanceStep2Param implements Serializable {
@NotNull
(
message
=
"不能为空"
)
private
Integer
isSubmit
;
@ApiModelProperty
(
hidden
=
true
)
private
Integer
auditStatus
;
@ApiModelProperty
(
value
=
"场次数据"
,
hidden
=
true
)
private
List
<
TicketTimesTicketCreatePartnerVo
>
ticketTimes
;
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/vo/PerformanceVo.java
View file @
b512594f
...
...
@@ -55,8 +55,8 @@ public class PerformanceVo {
private
String
roadShowId
;
// OSS
//
@ApiModelProperty(value = "演出详情")
//
private String details;
@ApiModelProperty
(
value
=
"演出详情"
)
private
String
details
;
// OSS
@ApiModelProperty
(
value
=
"购票须知"
)
private
String
noticeImage
;
...
...
@@ -94,6 +94,8 @@ public class PerformanceVo {
this
.
timeStart
=
performance
.
getTimeStart
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
timeEnd
=
performance
.
getTimeEnd
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
type
=
performance
.
getType
();
this
.
details
=
performance
.
getDetails
();
this
.
noticeImage
=
performance
.
getNoticeImage
();
}
public
void
setTimePriceVipAndLack
(
int
isLackRegister
,
int
isMember
,
int
isExclusive
,
BigDecimal
price
,
LocalDateTime
stopSellTime
,
LocalDateTime
sellTime
,
int
isAdvance
,
int
isDiscount
)
{
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/vo/TicketVo.java
View file @
b512594f
...
...
@@ -76,6 +76,8 @@ public class TicketVo {
private
Integer
isExclusive
;
@ApiModelProperty
(
value
=
"是否会员"
)
private
Integer
isMember
;
@ApiModelProperty
(
value
=
"会员购买状态"
)
private
Integer
isMemberStatus
;
@ApiModelProperty
(
value
=
"是否分销"
)
private
Integer
isAgent
;
...
...
@@ -93,7 +95,11 @@ public class TicketVo {
this
.
timeStart
=
ticket
.
getTimeStart
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
timeEnd
=
ticket
.
getTimeEnd
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
memberTimeStart
=
ticket
.
getTimeStart
().
plusMinutes
(-
ticket
.
getAdvanceMinuteMember
()).
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
timeEndExpress
=
ticket
.
getTimeEndExpress
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
if
(
ticket
.
getTimeEndExpress
()!=
null
)
{
this
.
timeEndExpress
=
ticket
.
getTimeEndExpress
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
}
else
{
this
.
timeEndExpress
=
null
;
}
this
.
useStart
=
ticket
.
getUseStart
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
useEnd
=
ticket
.
getUseEnd
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
this
.
saleRemindMinute
=
ticket
.
getSaleRemindMinute
();
...
...
@@ -101,6 +107,7 @@ public class TicketVo {
public
void
setTicketStatus
(
KylinTicketStatus
ticketStatus
)
{
this
.
isMember
=
ticketStatus
.
getIsMember
();
this
.
isAgent
=
ticketStatus
.
getIsAgent
();
this
.
isExclusive
=
ticketStatus
.
getIsExclusive
();
this
.
isTrueName
=
ticketStatus
.
getIsTrueName
();
this
.
expressType
=
ticketStatus
.
getExpressType
();
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/vo/ignore/PerformanceIgnoreVo.java
View file @
b512594f
...
...
@@ -49,11 +49,11 @@ public class PerformanceIgnoreVo {
private
String
roadShowId
;
// OSS
//
@ApiModelProperty(value = "演出详情")
//
private String details;
@ApiModelProperty
(
value
=
"演出详情"
)
private
String
details
;
// OSS
//
@ApiModelProperty(value = "购票须知")
//
private String noticeImage;
@ApiModelProperty
(
value
=
"购票须知"
)
private
String
noticeImage
;
@ApiModelProperty
(
value
=
"推荐顺序 0为不推荐"
)
private
Integer
isRecommend
;
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/service/admin/IKylinPerformancesAdminService.java
View file @
b512594f
...
...
@@ -26,6 +26,7 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 获取演出详情
*
* @param performancesId 演出id
* @return PerformanceMisVo
*/
...
...
@@ -33,15 +34,17 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 演出审核
*
* @param performancesId 演出id
* @param status 审核状态 3通过 4拒绝
* @param rejectTxt 拒绝理由 如果 status == 4 必填
* @param status
审核状态 3通过 4拒绝
* @param rejectTxt
拒绝理由 如果 status == 4 必填
* @return boolean
*/
boolean
performanceAudit
(
String
performancesId
,
int
status
,
String
rejectTxt
);
boolean
performanceAudit
(
String
performancesId
,
int
status
,
String
rejectTxt
);
/**
* 获取 演出列表 (全量)
*
* @param performanceAdminListParam 列表搜索参数
* @return 分页 sql 数据
*/
...
...
@@ -49,6 +52,7 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 根据巡演id 查询演出列表 简易
*
* @param roadShowId 巡演id
* @return 20个 sql 数据
*/
...
...
@@ -56,6 +60,7 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 根据演出状态 查询演出列表 简易
*
* @param status 演出状态
* @return 20个 sql 数据
*/
...
...
@@ -63,14 +68,16 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 修改演出的巡演关联
*
* @param performancesId 演出id
* @param roadShowId 巡演id
* @param roadShowId
巡演id
* @return boolean
*/
boolean
changeRoadShowId
(
String
performancesId
,
String
roadShowId
);
boolean
changeRoadShowId
(
String
performancesId
,
String
roadShowId
);
/**
* 设置 演出推荐 关联
*
* @param performancesId 相关参数
* @return boolean
*/
...
...
@@ -78,12 +85,14 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 查询 推荐演出列表
*
* @return 分页 sql 数据
*/
PageInfo
<
PerformanceRecommendAdminDao
>
listRecommend
();
/**
* 获取 演出会员信息(包含场次票)
*
* @param performanceId 演出id
* @return sql 数据
*/
...
...
@@ -91,6 +100,7 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 修改 演出会员信息(包含场次票)
*
* @param performanceMemberAuditParam 相关参数
* @return boolean
*/
...
...
@@ -98,32 +108,44 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
/**
* 列表 待审核 演出会员信息
*
* @param title 标题
* @return 演出名称 id
*/
PageInfo
<
PerformanceTitleDao
>
performanceMemberList
(
String
title
,
int
page
,
int
size
);
PageInfo
<
PerformanceTitleDao
>
performanceMemberList
(
String
title
,
int
page
,
int
size
);
/**
* 详情 待审核 演出会员信息
*
* @param performanceId 演出id
* @param status 状态
* @param status
状态
* @return sql 数据
*/
PerformanceMemberAuditDao
performanceMemberAuditInfo
(
String
performanceId
,
int
status
);
PerformanceMemberAuditDao
performanceMemberAuditInfo
(
String
performanceId
,
int
status
);
//审核 会员信息
/**
* 审核演出会员相关信息
*
* @param performanceId 演出id
* @return boolean
*/
boolean
performanceMemberAudit
(
String
performanceId
,
int
status
,
String
rejectTxt
);
boolean
performanceMemberAudit
(
String
performanceId
,
int
status
,
String
rejectTxt
);
/**
* 列表 演出会员审核记录
*
* @param performanceId 演出id
* @return 分页 vo 数据
*/
PageInfo
<
PerformanceMemberAuditParam
>
performanceAuditHistory
(
String
performanceId
);
/**
* 修改 当前票种是否关联分销
* @param ticketId 票务id
* @param status 0 否 1 是
* @return
*/
boolean
changeTicketAgent
(
String
ticketId
,
Integer
status
);
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/entity/KylinTicketStatus.java
View file @
b512594f
...
...
@@ -134,6 +134,11 @@ public class KylinTicketStatus implements Serializable {
*/
private
Integer
isMember
;
/**
* 是否关联代理 0不是 1是
*/
private
Integer
isAgent
;
/**
* 创建时间
*/
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/docu/db_kylin_structure.sql
View file @
b512594f
...
...
@@ -298,6 +298,7 @@ CREATE TABLE `kylin_ticket_status`
`is_transfer`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'是否开启转赠 0关闭 1开启'
,
`is_exclusive`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'是否会员专属 0不是 1是'
,
`is_member`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'是否关联会员 0不是 1是'
,
`is_agent`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'是否关联代理 0不是 1是'
,
`created_at`
datetime
NULL
DEFAULT
NULL
COMMENT
'创建时间'
,
`updated_at`
datetime
NULL
DEFAULT
NULL
COMMENT
'修改时间'
,
KEY
`kylin_ticket_status_uid_index`
(
`ticket_status_id`
),
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/pom.xml
View file @
b512594f
...
...
@@ -37,11 +37,6 @@
<artifactId>
spring-boot-starter-data-mongodb
</artifactId>
</dependency>
<dependency>
<groupId>
org.gavaghan
</groupId>
<artifactId>
geodesy
</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/controller/admin/KylinPerformancesAdminController.java
View file @
b512594f
...
...
@@ -30,7 +30,7 @@ import java.util.List;
* @author liquidnet
* @since 2021-05-05
*/
@Api
(
tags
=
"后端-演出"
,
position
=
2001
)
@Api
(
tags
=
"后端-演出"
,
position
=
2001
)
@RestController
@RequestMapping
(
"admin/performance"
)
public
class
KylinPerformancesAdminController
{
...
...
@@ -39,7 +39,7 @@ public class KylinPerformancesAdminController {
private
KylinPerformancesAdminServiceImpl
performancesAdminService
;
@PostMapping
(
value
=
"list"
)
@ApiOperation
(
value
=
"获取列表"
,
position
=
1
)
@ApiOperation
(
value
=
"获取列表"
,
position
=
1
)
@ApiResponse
(
response
=
PerformanceAdminListDao
.
class
,
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PageInfo
<
PerformanceAdminListDao
>>
getList
(
@RequestBody
@Valid
PerformanceAdminListParam
performanceAdminListParam
)
{
PageInfo
<
PerformanceAdminListDao
>
result
=
null
;
...
...
@@ -52,7 +52,7 @@ public class KylinPerformancesAdminController {
}
@GetMapping
(
value
=
"details"
)
@ApiOperation
(
value
=
"获取演出详情"
,
position
=
2
)
@ApiOperation
(
value
=
"获取演出详情"
,
position
=
2
)
@ApiResponse
(
response
=
PerformanceMisVo
.
class
,
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PerformanceMisVo
>
performanceDetails
(
@RequestParam
(
"performancesId"
)
String
performancesId
)
{
PerformanceMisVo
result
=
null
;
...
...
@@ -65,7 +65,7 @@ public class KylinPerformancesAdminController {
}
@PostMapping
(
value
=
"audit"
)
@ApiOperation
(
value
=
"演出审核"
,
position
=
3
)
@ApiOperation
(
value
=
"演出审核"
,
position
=
3
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
String
>
performanceAudit
(
@RequestParam
(
"performancesId"
)
String
performancesId
,
@RequestParam
(
"status"
)
int
status
,
@RequestParam
(
value
=
"rejectTxt"
,
required
=
false
)
String
rejectTxt
)
{
boolean
result
=
performancesAdminService
.
performanceAudit
(
performancesId
,
status
,
rejectTxt
);
...
...
@@ -77,7 +77,7 @@ public class KylinPerformancesAdminController {
}
@GetMapping
(
value
=
"list/roadshow"
)
@ApiOperation
(
value
=
"列表根据巡演id"
,
position
=
4
)
@ApiOperation
(
value
=
"列表根据巡演id"
,
position
=
4
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
List
<
PerformanceTitleDao
>>
getListByRoadShowId
(
@RequestParam
(
"roadShowId"
)
String
roadShowId
)
{
List
<
PerformanceTitleDao
>
result
=
performancesAdminService
.
getListByRoadShowId
(
roadShowId
);
...
...
@@ -89,7 +89,7 @@ public class KylinPerformancesAdminController {
}
@GetMapping
(
value
=
"list/status"
)
@ApiOperation
(
value
=
"列表根据演出状态"
,
position
=
5
)
@ApiOperation
(
value
=
"列表根据演出状态"
,
position
=
5
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
List
<
PerformanceTitleDao
>>
getListByStatus
(
@RequestParam
(
"status"
)
String
status
)
{
List
<
PerformanceTitleDao
>
result
=
performancesAdminService
.
getListByStatus
(
status
);
...
...
@@ -101,7 +101,7 @@ public class KylinPerformancesAdminController {
}
@GetMapping
(
value
=
"roadShow/relation"
)
@ApiOperation
(
value
=
"修改演出巡演关联"
,
position
=
6
)
@ApiOperation
(
value
=
"修改演出巡演关联"
,
position
=
6
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
String
>
changeRoadShowId
(
@RequestParam
(
"performanceId"
)
String
performanceId
,
@RequestParam
(
"roadShowId"
)
String
roadShowId
)
{
boolean
result
=
performancesAdminService
.
changeRoadShowId
(
performanceId
,
roadShowId
);
...
...
@@ -112,8 +112,8 @@ public class KylinPerformancesAdminController {
}
}
@PutMapping
(
value
=
"
performance/
recommend"
)
@ApiOperation
(
value
=
"演出推荐编辑"
,
position
=
7
)
@PutMapping
(
value
=
"recommend"
)
@ApiOperation
(
value
=
"演出推荐编辑"
,
position
=
7
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
String
>
setRecommend
(
@RequestBody
@Valid
List
<
PerformanceRecommendAdminParam
>
performanceRecommendAdminParam
)
{
boolean
result
=
performancesAdminService
.
setRecommend
(
performanceRecommendAdminParam
);
...
...
@@ -124,8 +124,8 @@ public class KylinPerformancesAdminController {
}
}
@GetMapping
(
value
=
"
performance/
recommend/list"
)
@ApiOperation
(
value
=
"演出推荐列表"
,
position
=
8
)
@GetMapping
(
value
=
"recommend/list"
)
@ApiOperation
(
value
=
"演出推荐列表"
,
position
=
8
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PageInfo
<
PerformanceRecommendAdminDao
>>
listRecommend
()
{
PageInfo
<
PerformanceRecommendAdminDao
>
result
=
performancesAdminService
.
listRecommend
();
...
...
@@ -136,8 +136,8 @@ public class KylinPerformancesAdminController {
}
}
@GetMapping
(
value
=
"
performance/
member/details"
)
@ApiOperation
(
value
=
"演出会员信息"
,
position
=
9
)
@GetMapping
(
value
=
"member/details"
)
@ApiOperation
(
value
=
"演出会员信息"
,
position
=
9
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PerformanceMemberAuditDao
>
performanceMemberInfo
(
@RequestParam
(
"performanceId"
)
@NotNull
String
performanceId
)
{
PerformanceMemberAuditDao
result
=
performancesAdminService
.
performanceMemberInfo
(
performanceId
);
...
...
@@ -148,8 +148,8 @@ public class KylinPerformancesAdminController {
}
}
@PutMapping
(
value
=
"
performance/
member/change"
)
@ApiOperation
(
value
=
"修改演出会员数据"
,
position
=
10
)
@PutMapping
(
value
=
"member/change"
)
@ApiOperation
(
value
=
"修改演出会员数据"
,
position
=
10
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
String
>
performanceMemberChange
(
@RequestBody
PerformanceMemberAuditParam
performanceMemberAuditParam
)
{
boolean
result
=
performancesAdminService
.
performanceMemberChange
(
performanceMemberAuditParam
);
...
...
@@ -160,8 +160,8 @@ public class KylinPerformancesAdminController {
}
}
@GetMapping
(
value
=
"
performance/
member/list"
)
@ApiOperation
(
value
=
"待审核会员演出列表"
,
position
=
11
)
@GetMapping
(
value
=
"member/list"
)
@ApiOperation
(
value
=
"待审核会员演出列表"
,
position
=
11
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PageInfo
<
PerformanceTitleDao
>>
performanceMemberList
(
@RequestParam
(
"title"
)
@NotNull
String
title
,
@RequestParam
(
"page"
)
@NotNull
int
page
,
...
...
@@ -174,8 +174,8 @@ public class KylinPerformancesAdminController {
}
}
@GetMapping
(
value
=
"
performance/
member/details/audit"
)
@ApiOperation
(
value
=
"演出会员信息(根据status 1待审核 2已拒绝 3已通过)"
,
position
=
12
)
@GetMapping
(
value
=
"member/details/audit"
)
@ApiOperation
(
value
=
"演出会员信息(根据status 1待审核 2已拒绝 3已通过)"
,
position
=
12
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PerformanceMemberAuditDao
>
performanceMemberAuditInfo
(
@RequestParam
(
"performanceId"
)
@NotNull
String
performanceId
,
@RequestParam
(
value
=
"status"
)
@NotNull
int
status
)
{
...
...
@@ -187,8 +187,8 @@ public class KylinPerformancesAdminController {
}
}
@PostMapping
(
value
=
"
performance/
member/audit"
)
@ApiOperation
(
value
=
"审核演出会员信息"
,
position
=
13
)
@PostMapping
(
value
=
"member/audit"
)
@ApiOperation
(
value
=
"审核演出会员信息"
,
position
=
13
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
String
>
performanceMemberAudit
(
@RequestParam
(
"performanceId"
)
@NotNull
String
performanceId
,
@RequestParam
(
"status"
)
@NotNull
int
status
,
...
...
@@ -201,7 +201,7 @@ public class KylinPerformancesAdminController {
}
}
@PostMapping
(
value
=
"
performance/
member/history"
)
@PostMapping
(
value
=
"member/history"
)
@ApiOperation
(
value
=
"会员审核记录"
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
PageInfo
<
PerformanceMemberAuditParam
>>
performanceAuditHistory
(
@RequestParam
(
"performanceId"
)
@NotNull
String
performanceId
)
{
...
...
@@ -212,4 +212,16 @@ public class KylinPerformancesAdminController {
return
ResponseDto
.
failure
(
"操作失败"
);
}
}
@PostMapping
(
value
=
"ticket/agent"
)
@ApiOperation
(
value
=
"修改票分销状态"
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
ResponseDto
<
String
>
changeTicketAgent
(
@RequestParam
(
"ticketId"
)
@NotNull
String
ticketId
,
@RequestParam
(
"status"
)
@NotNull
Integer
status
)
{
boolean
result
=
performancesAdminService
.
changeTicketAgent
(
ticketId
,
status
);
if
(
result
)
{
return
ResponseDto
.
success
(
"修改完成"
);
}
else
{
return
ResponseDto
.
failure
(
"操作失败"
);
}
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/service/impl/KylinPerformancesServiceImpl.java
View file @
b512594f
...
...
@@ -109,9 +109,8 @@ public class KylinPerformancesServiceImpl extends ServiceImpl<KylinPerformancesM
query
.
addCriteria
(
Criteria
.
where
(
"timeEnd"
).
gte
(
nowTimeStr
));
// 要查询的字段
/*Document fieldsObject = new Document();
Query query = new BasicQuery(queryObject, fieldsObject);
fieldsObject.put("performancesId", true);*/
// query.fields().include();//包含该字段
// query.fields().exclude();//不包含该字段
// 查询总数
long
count
=
mongoTemplate
.
count
(
query
,
PerformanceVo
.
class
,
PerformanceVo
.
class
.
getSimpleName
());
...
...
@@ -255,9 +254,9 @@ public class KylinPerformancesServiceImpl extends ServiceImpl<KylinPerformancesM
query
.
addCriteria
(
Criteria
.
where
(
"isAgent"
).
is
(
isAgent
));
}
List
<
TicketVo
>
ticketList
=
mongoTemplate
.
find
(
query
,
TicketVo
.
class
,
TicketVo
.
class
.
getSimpleName
()
query
,
TicketVo
.
class
,
TicketVo
.
class
.
getSimpleName
()
);
for
(
TicketVo
ticket
:
ticketList
)
{
...
...
@@ -284,6 +283,25 @@ public class KylinPerformancesServiceImpl extends ServiceImpl<KylinPerformancesM
ticket
.
setStatus
(
6
);
}
}
// 会员状态
Integer
isMemberStatus
=
0
;
if
(
1
==
ticket
.
getIsMember
())
{
// 有会员
String
memberTimeStart
=
ticket
.
getMemberTimeStart
();
DateTimeFormatter
df
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
);
LocalDateTime
memberTimeStartL
=
LocalDateTime
.
parse
(
memberTimeStart
,
df
);
LocalDateTime
nowTimeTicket
=
LocalDateTime
.
now
();
String
nowTimeTicketStr
=
nowTimeTicket
.
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
LocalDateTime
nowTimeTicketStrL
=
LocalDateTime
.
parse
(
nowTimeTicketStr
,
df
);
if
(
memberTimeStartL
.
isBefore
(
nowTimeTicketStrL
))
{
// 可以购买
isMemberStatus
=
1
;
}
else
{
// 还没到会员购买时间
isMemberStatus
=
0
;
}
}
else
{
isMemberStatus
=
0
;
}
ticket
.
setIsMemberStatus
(
isMemberStatus
);
}
partner
.
setTicketList
(
ticketList
);
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/service/impl/admin/KylinPerformancesAdminServiceImpl.java
View file @
b512594f
...
...
@@ -23,6 +23,7 @@ import com.mongodb.BasicDBObject;
import
com.mongodb.client.model.FindOneAndUpdateOptions
;
import
com.mongodb.client.model.ReturnDocument
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.pool2.BaseObject
;
import
org.bson.Document
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.PageRequest
;
...
...
@@ -163,7 +164,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
performanceVoTask
.
performanceVoStatus
(
performancesId
);
}
}
redisUtil
.
hdel
(
KylinRedisConst
.
PERFORMANCES
,
performancesId
);
}
else
if
(
status
==
4
)
{
log
.
info
(
" PERFORMANCE 演出审核 拒绝"
);
auditStatus
=
2
;
...
...
@@ -251,6 +252,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
Query
.
query
(
Criteria
.
where
(
"performancesId"
).
is
(
performancesId
)).
getQueryObject
(),
object
);
redisUtil
.
hdel
(
KylinRedisConst
.
PERFORMANCES
,
performancesId
);
return
true
;
}
catch
(
Exception
e
)
{
return
false
;
...
...
@@ -443,7 +445,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
}
performanceVoTask
.
performanceVoStatus
(
performanceId
);
redisUtil
.
hdel
(
KylinRedisConst
.
PERFORMANCES
,
performanceId
);
HashMap
<
String
,
Object
>
map2
=
new
HashMap
<>();
map2
.
put
(
"status"
,
3
);
map2
.
put
(
"updatedAt"
,
updatedAt
);
...
...
@@ -495,4 +497,33 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
return
pageInfoTmp
;
}
@Override
public
boolean
changeTicketAgent
(
String
ticketId
,
Integer
status
)
{
try
{
LocalDateTime
updatedAt
=
LocalDateTime
.
now
();
if
(
status
!=
0
&&
status
!=
1
)
{
return
false
;
}
//修改 mysql
KylinTicketStatus
ticketStatus
=
new
KylinTicketStatus
();
ticketStatus
.
setUpdatedAt
(
updatedAt
);
ticketStatus
.
setIsAgent
(
status
);
ticketStatusMapper
.
update
(
ticketStatus
,
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketId
));
//修改 mongo
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"updatedAt"
,
updatedAt
.
format
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
)));
map
.
put
(
"isAgent"
,
status
);
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
map
));
mongoTemplate
.
getCollection
(
TicketVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketId
)).
getQueryObject
(),
object
);
redisUtil
.
hdel
(
KylinRedisConst
.
TICKET
,
ticketId
);
return
true
;
}
catch
(
Exception
e
)
{
return
false
;
}
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/service/impl/partner/KylinPerformancesPartnerServiceImpl.java
View file @
b512594f
...
...
@@ -377,8 +377,8 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
KylinTicketStatus
ticketStatus
=
ticketStatusMapper
.
selectOne
(
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketItem
.
getTicketsId
()));
int
changeGeneral
=
ticketStatus
.
getTotalGeneral
()
-
ticketItem
.
getTotalGeneral
();
int
changeExchange
=
ticketStatus
.
getTotalGeneral
()
-
ticketItem
.
getTotalExchange
();
redisUtil
.
hincr
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketItem
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_GENERAL
,
changeGeneral
);
redisUtil
.
hincr
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketItem
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_EXCHANGE
,
changeExchange
);
dataUtils
.
changeSurplusGeneral
(
ticketItem
.
getTicketsId
(),
changeGeneral
);
dataUtils
.
changeSurplusExchange
(
ticketItem
.
getTicketsId
(),
changeExchange
);
}
//修改 mysql 库存
KylinTicketStatus
inventory
=
new
KylinTicketStatus
();
...
...
@@ -418,7 +418,6 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
@Override
public
ResponseDto
<
PerformanceStep2Param
>
getStep2
(
String
performancesId
)
{
PerformanceStep2Param
performanceCreatePartnerVo
=
null
;
PerformancePartnerVo
data
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"performancesId"
).
is
(
performancesId
)),
PerformancePartnerVo
.
class
,
PerformancePartnerVo
.
class
.
getSimpleName
()
);
...
...
@@ -439,9 +438,9 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
PerformanceStep2Param
performanceStep2Param
=
new
PerformanceStep2Param
();
BeanUtils
.
copyProperties
(
data
,
performanceStep2Param
);
performanceStep2Param
.
setTicketTimes
(
ticketTimesTicketCreatePartnerVoList
);
performanceCreatePartnerVo
=
performanceStep2Param
;
// performanceStep2Param.setAuditStatus()
;
log
.
info
(
" PERFORMANCE 演出第二步 获取"
);
return
ResponseDto
.
success
(
performance
CreatePartnerVo
);
return
ResponseDto
.
success
(
performance
Step2Param
);
}
@Override
...
...
@@ -522,22 +521,10 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
);
}
//票种 库存redis TODO 库存可能会丢
TicketInventoryDto
ticketInventoryDto
=
new
TicketInventoryDto
();
//票种 库存redis
if
(!
redisUtil
.
hHasKey
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_GENERAL
))
{
ticketInventoryDto
.
setSurplusExchange
(
ticketStatus
.
getSurplusExchange
());
ticketInventoryDto
.
setSurplusGeneral
(
ticketStatus
.
getTotalGeneral
());
ticketInventoryDto
.
setTicketsId
(
ticketVo
.
getTicketsId
());
redisUtil
.
hset
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_GENERAL
,
ticketInventoryDto
.
getSurplusGeneral
());
redisUtil
.
hset
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_EXCHANGE
,
ticketInventoryDto
.
getSurplusExchange
());
}
else
{
int
surplusGeneral
=
(
int
)
redisUtil
.
hget
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_GENERAL
);
int
surplusExchange
=
(
int
)
redisUtil
.
hget
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_EXCHANGE
);
ticketInventoryDto
.
setSurplusExchange
(
ticketStatus
.
getSurplusExchange
()
-
surplusGeneral
);
ticketInventoryDto
.
setSurplusGeneral
(
ticketStatus
.
getTotalGeneral
()
-
surplusExchange
);
ticketInventoryDto
.
setTicketsId
(
ticketVo
.
getTicketsId
());
redisUtil
.
hset
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_GENERAL
,
ticketInventoryDto
.
getSurplusGeneral
());
redisUtil
.
hset
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVo
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_EXCHANGE
,
ticketInventoryDto
.
getSurplusExchange
());
dataUtils
.
setSurplusGeneral
(
ticketVo
.
getTicketsId
(),
ticketStatus
.
getTotalGeneral
());
dataUtils
.
setSurplusExchange
(
ticketVo
.
getTicketsId
(),
ticketStatus
.
getSurplusExchange
());
}
if
(
ticketVo
.
getIsMember
()
==
1
)
{
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/service/impl/partner/KylinTicketsPartnerServiceImpl.java
View file @
b512594f
...
...
@@ -326,17 +326,24 @@ public class KylinTicketsPartnerServiceImpl extends ServiceImpl<KylinTicketsMapp
ticketStatusMapper
.
update
(
changeStatus
,
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketsId
));
// mongo 操作
KylinTicketStatus
ticketStatusM
ongo
=
ticketStatusMapper
.
selectOne
(
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketsId
).
between
(
"status"
,
1
,
10
).
ne
(
"status"
,
7
));
KylinTicketStatus
ticketStatusM
ySql
=
ticketStatusMapper
.
selectOne
(
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketsId
).
between
(
"status"
,
1
,
10
).
ne
(
"status"
,
7
));
KylinTicketRelations
ticketRelation
=
ticketRelationsMapper
.
selectOne
(
new
UpdateWrapper
<
KylinTicketRelations
>().
eq
(
"ticket_id"
,
ticketsId
));
KylinTickets
tickets
=
ticketsMapper
.
selectOne
(
new
UpdateWrapper
<
KylinTickets
>().
eq
(
"tickets_id"
,
ticketsId
)
new
UpdateWrapper
<
KylinTickets
>().
eq
(
"tickets_id"
,
ticketsId
)
);
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"status"
,
6
);
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
map
));
mongoTemplate
.
getCollection
(
TicketPartnerVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketsId
)).
getQueryObject
(),
object
);
TicketVo
ticketVo
=
new
TicketVo
();
ticketVo
.
setTimeId
(
ticketRelation
.
getTimesId
());
ticketVo
.
setTicket
(
tickets
);
ticketVo
.
setTicketStatus
(
ticketStatusM
ongo
);
ticketVo
.
setTicketStatus
(
ticketStatusM
ySql
);
boolean
ticketExists
=
mongoTemplate
.
exists
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketVo
.
getTicketsId
())),
TicketVo
.
class
,
TicketVo
.
class
.
getSimpleName
());
...
...
@@ -366,6 +373,15 @@ public class KylinTicketsPartnerServiceImpl extends ServiceImpl<KylinTicketsMapp
changeStatus
.
setStatus
(
7
);
ticketStatusMapper
.
update
(
changeStatus
,
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketsId
));
// mongo 操作
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"status"
,
7
);
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
map
));
mongoTemplate
.
getCollection
(
TicketPartnerVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketsId
)).
getQueryObject
(),
object
);
TicketVo
ticketVoItem
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketsId
)),
TicketVo
.
class
,
TicketVo
.
class
.
getSimpleName
());
TicketIgnoreVo
ticketIgnoreVo
=
new
TicketIgnoreVo
();
BeanUtils
.
copyProperties
(
ticketVoItem
,
ticketIgnoreVo
);
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/timerTask/PerformanceVoTask.java
View file @
b512594f
...
...
@@ -15,6 +15,7 @@ import com.liquidnet.service.kylin.entity.*;
import
com.liquidnet.service.kylin.mapper.*
;
import
com.liquidnet.service.kylin.service.impl.partner.KylinTicketTimesPartnerServiceImpl
;
import
com.liquidnet.service.kylin.service.impl.partner.KylinTicketsPartnerServiceImpl
;
import
com.liquidnet.service.kylin.utils.DataUtils
;
import
com.mongodb.BasicDBObject
;
import
com.mongodb.client.model.FindOneAndUpdateOptions
;
import
com.mongodb.client.model.ReturnDocument
;
...
...
@@ -48,6 +49,9 @@ public class PerformanceVoTask {
@Autowired
private
RedisUtil
redisUtil
;
@Autowired
private
DataUtils
dataUtils
;
@Autowired
private
KylinPerformancesMapper
performancesMapper
;
...
...
@@ -148,7 +152,7 @@ public class PerformanceVoTask {
status10Count
+=
1
;
}
else
{
//库存判断
int
surplusGeneral
=
(
int
)
redisUtil
.
hget
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketVoItem
.
getTicketsId
(),
KylinRedisConst
.
SURPLUS_GENERAL
);
int
surplusGeneral
=
dataUtils
.
getSurplusGeneral
(
ticketVoItem
.
getTicketsId
()
);
if
(
surplusGeneral
>
0
)
{
status
=
6
;
...
...
@@ -257,9 +261,9 @@ public class PerformanceVoTask {
// performanceMisVo.setStatusSell(null);
// performanceMisVo.setRejectTxt("");
// performanceMisVo.setIsShow(1);
performanceMisVo
.
setIsDistribution
(
0
);
performanceMisVo
.
setSyncAgent
(
0
);
performanceMisVo
.
setAuditStatus
(
0
);
performanceMisVo
.
setIsDistribution
(
0
);
performanceMisVo
.
setSyncAgent
(
0
);
performanceMisVo
.
setAuditStatus
(
0
);
// }
// boolean exists = mongoTemplate.exists(Query.query(Criteria.where("performancesId").is(performancesId)), PerformanceMisVo.class, PerformanceMisVo.class.getSimpleName());
...
...
@@ -312,11 +316,11 @@ public class PerformanceVoTask {
performanceRelations
.
setCreatedAt
(
performances
.
getCreatedAt
());
performanceRelations
.
setUpdatedAt
(
updatedAt
);
performancesMapper
.
delete
(
new
UpdateWrapper
<
KylinPerformances
>().
eq
(
"performances_id"
,
performances
.
getPerformancesId
()));
performancesMapper
.
delete
(
new
UpdateWrapper
<
KylinPerformances
>().
eq
(
"performances_id"
,
performances
.
getPerformancesId
()));
performancesMapper
.
insert
(
performances
);
performanceStatusMapper
.
delete
(
new
UpdateWrapper
<
KylinPerformanceStatus
>().
eq
(
"performance_id"
,
performanceStatus
.
getPerformanceId
()));
performanceStatusMapper
.
delete
(
new
UpdateWrapper
<
KylinPerformanceStatus
>().
eq
(
"performance_id"
,
performanceStatus
.
getPerformanceId
()));
performanceStatusMapper
.
insert
(
performanceStatus
);
performanceRelationsMapper
.
delete
(
new
UpdateWrapper
<
KylinPerformanceRelations
>().
eq
(
"performance_id"
,
performanceRelations
.
getPerformanceId
()));
performanceRelationsMapper
.
delete
(
new
UpdateWrapper
<
KylinPerformanceRelations
>().
eq
(
"performance_id"
,
performanceRelations
.
getPerformanceId
()));
performanceRelationsMapper
.
insert
(
performanceRelations
);
...
...
@@ -340,9 +344,9 @@ public class PerformanceVoTask {
ticketTimeRelation
.
setCreatedAt
(
ticketTimes
.
getCreatedAt
());
ticketTimeRelation
.
setUpdatedAt
(
updatedAt
);
ticketTimesMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketTimes
>().
eq
(
"ticket_times_id"
,
ticketTimes
.
getTicketTimesId
()));
ticketTimesMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketTimes
>().
eq
(
"ticket_times_id"
,
ticketTimes
.
getTicketTimesId
()));
ticketTimesMapper
.
insert
(
ticketTimes
);
ticketTimeRelationMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketTimeRelation
>().
eq
(
"ticket_time_relation_id"
,
ticketTimeRelation
.
getTimesId
()));
ticketTimeRelationMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketTimeRelation
>().
eq
(
"ticket_time_relation_id"
,
ticketTimeRelation
.
getTimesId
()));
ticketTimeRelationMapper
.
insert
(
ticketTimeRelation
);
//修改票
...
...
@@ -397,11 +401,11 @@ public class PerformanceVoTask {
ticketRelations
.
setCreatedAt
(
tickets
.
getCreatedAt
());
ticketRelations
.
setUpdatedAt
(
updatedAt
);
ticketsMapper
.
delete
(
new
UpdateWrapper
<
KylinTickets
>().
eq
(
"tickets_id"
,
tickets
.
getTicketsId
()));
ticketsMapper
.
delete
(
new
UpdateWrapper
<
KylinTickets
>().
eq
(
"tickets_id"
,
tickets
.
getTicketsId
()));
ticketsMapper
.
insert
(
tickets
);
ticketStatusMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketStatus
.
getTicketId
()));
ticketStatusMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
ticketStatus
.
getTicketId
()));
ticketStatusMapper
.
insert
(
ticketStatus
);
ticketRelationsMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketRelations
>().
eq
(
"ticket_id"
,
ticketRelations
.
getTicketId
()));
ticketRelationsMapper
.
delete
(
new
UpdateWrapper
<
KylinTicketRelations
>().
eq
(
"ticket_id"
,
ticketRelations
.
getTicketId
()));
ticketRelationsMapper
.
insert
(
ticketRelations
);
}
}
...
...
@@ -418,7 +422,7 @@ public class PerformanceVoTask {
* @param performanceUpdateMisVo
* @param updatedAt
*/
public
void
updatePerformanceMySql
(
String
performancesId
,
HashMap
<
String
,
Object
>
map
,
PerformanceMisVo
performanceUpdateMisVo
,
LocalDateTime
updatedAt
,
Integer
auditStatus
)
{
public
void
updatePerformanceMySql
(
String
performancesId
,
HashMap
<
String
,
Object
>
map
,
PerformanceMisVo
performanceUpdateMisVo
,
LocalDateTime
updatedAt
,
Integer
auditStatus
)
{
try
{
//创建演出
KylinPerformances
performances
=
new
KylinPerformances
();
...
...
@@ -471,27 +475,45 @@ public class PerformanceVoTask {
ticketTimeRelation
.
setCreatedAt
(
null
);
ticketTimeRelation
.
setUpdatedAt
(
updatedAt
);
ticketTimesMapper
.
update
(
ticketTimes
,
new
UpdateWrapper
<
KylinTicketTimes
>().
eq
(
"ticket_times_id"
,
ticketTimes
.
getTicketTimesId
()));
ticketTimeRelationMapper
.
update
(
ticketTimeRelation
,
new
UpdateWrapper
<
KylinTicketTimeRelation
>().
eq
(
"ticket_time_id"
,
ticketTimes
.
getTicketTimesId
()));
if
(
ticketTimeItem
.
getStatus
()
==
-
1
)
{
ticketTimes
.
setStatus
(
1
);
ticketTimesMapper
.
insert
(
ticketTimes
);
ticketTimeRelationMapper
.
insert
(
ticketTimeRelation
);
TicketTimesVo
ticketTimesVo
=
new
TicketTimesVo
();
ticketTimesVo
.
setTicketTimes
(
ticketTimes
);
ticketTimesVo
.
setPerformanceId
(
ticketTimeRelation
.
getPerformanceId
());
ticketTimesVo
.
setTimeId
(
ticketTimeRelation
.
getTimesId
());
// HashMap<String ,Object> map2 = new HashMap<>();
// map2.put("status",1);
// BasicDBObject obj = new BasicDBObject("$set", mongoConverter.convertToMongoType(map2));
// mongoTemplate.getCollection(TicketTimesPartnerVo.class.getSimpleName()).updateOne(
// Query.query(Criteria.where("ticketTimesId").is(ticketTimes.getTicketTimesId())).getQueryObject(),
// obj
// );
boolean
ticketTimesExists
=
mongoTemplate
.
exists
(
Query
.
query
(
Criteria
.
where
(
"ticketTimesId"
).
is
(
ticketTimesVo
.
getTicketTimesId
())),
TicketTimesVo
.
class
,
TicketTimesVo
.
class
.
getSimpleName
());
if
(!
ticketTimesExists
)
{
mongoTemplate
.
insert
(
ticketTimesVo
,
TicketTimesVo
.
class
.
getSimpleName
()
);
}
}
else
{
ticketTimesMapper
.
update
(
ticketTimes
,
new
UpdateWrapper
<
KylinTicketTimes
>().
eq
(
"ticket_times_id"
,
ticketTimes
.
getTicketTimesId
()));
ticketTimeRelationMapper
.
update
(
ticketTimeRelation
,
new
UpdateWrapper
<
KylinTicketTimeRelation
>().
eq
(
"times_id"
,
ticketTimes
.
getTicketTimesId
()));
}
//修改票
for
(
TicketPartnerVo
ticketItem
:
ticketsPartnerService
.
getTicketMongoList
(
ticketTimeItem
.
getTicketTimesId
()))
{
TicketPartnerVo
ticketPartnerVo
;
if
(
ticketItem
.
getStatus
()
!=
7
)
{
BasicDBObject
objectTicketVo
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
map
));
Document
docTicket
=
mongoTemplate
.
getCollection
(
TicketPartnerVo
.
class
.
getSimpleName
()).
findOneAndUpdate
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketItem
.
getTicketsId
())).
getQueryObject
(),
objectTicketVo
,
new
FindOneAndUpdateOptions
().
returnDocument
(
ReturnDocument
.
AFTER
)
);
ticketPartnerVo
=
JsonUtils
.
fromJson
(
docTicket
.
toJson
(),
TicketPartnerVo
.
class
);
}
else
{
ticketPartnerVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketItem
.
getTicketsId
())),
TicketPartnerVo
.
class
,
TicketPartnerVo
.
class
.
getSimpleName
()
);
}
ticketPartnerVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketItem
.
getTicketsId
())),
TicketPartnerVo
.
class
,
TicketPartnerVo
.
class
.
getSimpleName
()
);
//创建演出
KylinTickets
tickets
=
new
KylinTickets
();
...
...
@@ -506,41 +528,87 @@ public class PerformanceVoTask {
tickets
.
setPriceDiscount
(
new
BigDecimal
(
"0.00"
));
tickets
.
setTimeStart
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketItem
.
getTimeStart
())));
tickets
.
setTimeEnd
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketItem
.
getTimeEnd
())));
tickets
.
setTimeEndExpress
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketItem
.
getTimeEndExpress
())));
if
(
ticketItem
.
getIsExpress
()
==
1
)
{
tickets
.
setTimeEndExpress
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketItem
.
getTimeEndExpress
())));
}
tickets
.
setUseStart
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketTimeItem
.
getUseStart
())));
tickets
.
setUseEnd
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketTimeItem
.
getUseEnd
())));
tickets
.
setSaleRemindMinute
(
60
);
tickets
.
setCreatedAt
(
null
);
tickets
.
setUpdatedAt
(
updatedAt
);
ticketStatus
.
setTicketStatusId
(
IDGenerator
.
nextSnowId
().
toString
());
ticketStatus
.
setTicketId
(
tickets
.
getTicketsId
());
ticketStatus
.
setCounts
(
null
);
ticketStatus
.
setIsMember
(
null
);
ticketStatus
.
setStatusExchange
(
7
);
ticketStatus
.
setQrCodeShowTime
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketItem
.
getQrCodeShowTime
())));
//不改动数据 价格 限购 购票时间
ticketStatus
.
setLimitCount
(
null
);
ticketStatus
.
setTotalGeneral
(
null
);
ticketStatus
.
setTotalExchange
(
null
);
tickets
.
setTimeStart
(
null
);
tickets
.
setTimeEnd
(
null
);
ticketRelations
.
setCreatedAt
(
null
);
if
(
ticketItem
.
getIsShowCode
()
==
1
)
{
ticketStatus
.
setQrCodeShowTime
(
DateUtil
.
asLocalDateTime
(
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
parse
(
ticketItem
.
getQrCodeShowTime
())));
}
ticketRelations
.
setUpdatedAt
(
updatedAt
);
ticketRelations
.
setTicketRelationsId
(
IDGenerator
.
nextSnowId
().
toString
());
ticketRelations
.
setTicketId
(
tickets
.
getTicketsId
());
ticketRelations
.
setCreatedAt
(
null
);
ticketRelations
.
setUpdatedAt
(
updatedAt
);
ticketsMapper
.
update
(
tickets
,
new
UpdateWrapper
<
KylinTickets
>().
eq
(
"tickets_id"
,
tickets
.
getTicketsId
()));
ticketStatusMapper
.
update
(
ticketStatus
,
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"tickets_id"
,
tickets
.
getTicketsId
()));
ticketRelationsMapper
.
update
(
ticketRelations
,
new
UpdateWrapper
<
KylinTicketRelations
>().
eq
(
"tickets_id"
,
tickets
.
getTicketsId
()));
if
(
ticketItem
.
getStatus
()
==
-
2
)
{
// ticketStatus.setLimitCount(null);
// ticketStatus.setTotalGeneral(null);
// ticketStatus.setTotalExchange(null);
// tickets.setTimeStart(null);
// tickets.setTimeEnd(null);
tickets
.
setAdvanceMinuteMember
(
5
);
ticketStatus
.
setIsMember
(
1
);
ticketRelations
.
setCreatedAt
(
LocalDateTime
.
now
());
tickets
.
setCreatedAt
(
LocalDateTime
.
now
());
ticketsMapper
.
insert
(
tickets
);
ticketStatus
.
setStatus
(
9
);
ticketStatusMapper
.
insert
(
ticketStatus
);
ticketRelationsMapper
.
insert
(
ticketRelations
);
TicketVo
ticketVo
=
new
TicketVo
();
ticketVo
.
setTimeId
(
ticketRelations
.
getTimesId
());
ticketVo
.
setTicket
(
tickets
);
ticketVo
.
setTicketStatus
(
ticketStatus
);
dataUtils
.
setSurplusExchange
(
ticketVo
.
getTicketsId
(),
ticketStatus
.
getSurplusExchange
());
dataUtils
.
setSurplusGeneral
(
ticketVo
.
getTicketsId
(),
ticketStatus
.
getSurplusGeneral
());
BasicDBObject
objectTicketVo
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
map
));
mongoTemplate
.
getCollection
(
TicketPartnerVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketItem
.
getTicketsId
())).
getQueryObject
(),
objectTicketVo
);
boolean
ticketExists
=
mongoTemplate
.
exists
(
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
is
(
ticketVo
.
getTicketsId
())),
TicketVo
.
class
,
TicketVo
.
class
.
getSimpleName
());
if
(!
ticketExists
)
{
mongoTemplate
.
insert
(
ticketVo
,
TicketVo
.
class
.
getSimpleName
()
);
}
}
else
{
//不改动数据 价格 限购 购票时间
ticketStatus
.
setLimitCount
(
null
);
ticketStatus
.
setTotalGeneral
(
null
);
ticketStatus
.
setTotalExchange
(
null
);
tickets
.
setTimeStart
(
null
);
tickets
.
setTimeEnd
(
null
);
ticketStatus
.
setCounts
(
null
);
ticketStatus
.
setIsMember
(
null
);
ticketRelations
.
setCreatedAt
(
null
);
tickets
.
setCreatedAt
(
null
);
ticketsMapper
.
update
(
tickets
,
new
UpdateWrapper
<
KylinTickets
>().
eq
(
"tickets_id"
,
tickets
.
getTicketsId
()));
ticketStatusMapper
.
update
(
ticketStatus
,
new
UpdateWrapper
<
KylinTicketStatus
>().
eq
(
"ticket_id"
,
tickets
.
getTicketsId
()));
ticketRelationsMapper
.
update
(
ticketRelations
,
new
UpdateWrapper
<
KylinTicketRelations
>().
eq
(
"ticket_id"
,
tickets
.
getTicketsId
()));
}
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/utils/DataUtils.java
View file @
b512594f
package
com
.
liquidnet
.
service
.
kylin
.
utils
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.kylin.constant.KylinRedisConst
;
import
com.liquidnet.service.kylin.entity.KylinBuyNotice
;
import
com.liquidnet.service.kylin.mapper.KylinBuyNoticeMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -15,9 +17,80 @@ public class DataUtils {
@Autowired
private
KylinBuyNoticeMapper
buyNoticeMapper
;
public
String
getBuyNoticeJsonString
(
List
<
String
>
buyNoticeIds
){
List
<
KylinBuyNotice
>
data
=
buyNoticeMapper
.
selectList
(
new
UpdateWrapper
<
KylinBuyNotice
>().
in
(
"buy_notice_id"
,
buyNoticeIds
));
return
JsonUtils
.
toJson
(
data
);
@Autowired
private
RedisUtil
redisUtil
;
/**
* 根据 购票须知 id 获取 购票须知文案
*
* @param buyNoticeIds 购票须知 数组
* @return 购票须知 json串
*/
public
String
getBuyNoticeJsonString
(
List
<
String
>
buyNoticeIds
)
{
List
<
KylinBuyNotice
>
data
=
buyNoticeMapper
.
selectList
(
new
UpdateWrapper
<
KylinBuyNotice
>().
in
(
"buy_notice_id"
,
buyNoticeIds
));
return
JsonUtils
.
toJson
(
data
);
}
/**
* 初始化普通库存
*
* @param ticketId 票id
* @param totalGeneral 普通库存
*/
public
void
setSurplusGeneral
(
String
ticketId
,
int
totalGeneral
)
{
redisUtil
.
hset
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketId
,
KylinRedisConst
.
SURPLUS_GENERAL
,
totalGeneral
);
}
/**
* 获取普通剩余库存
*
* @param ticketId 票id
* @return 普通剩余库存
*/
public
int
getSurplusGeneral
(
String
ticketId
)
{
return
(
int
)
redisUtil
.
hget
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketId
,
KylinRedisConst
.
SURPLUS_GENERAL
);
}
/**
* 修改普通库存 并 返回修改后的数量
*
* @param ticketId 票id
* @param surplusGeneral 普通库存
* @return 普通剩余库存
*/
public
int
changeSurplusGeneral
(
String
ticketId
,
int
surplusGeneral
)
{
return
(
int
)
redisUtil
.
hincr
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketId
,
KylinRedisConst
.
SURPLUS_GENERAL
,
surplusGeneral
);
}
/**
* 初始化兑换库存
*
* @param ticketId 票id
* @param totalExchange 兑换库存
*/
public
void
setSurplusExchange
(
String
ticketId
,
int
totalExchange
)
{
redisUtil
.
hset
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketId
,
KylinRedisConst
.
SURPLUS_EXCHANGE
,
totalExchange
);
}
/**
* 获取兑换剩余库存
*
* @param ticketId 票id
* @return 兑换剩余库存
*/
public
int
getSurplusExchange
(
String
ticketId
)
{
return
(
int
)
redisUtil
.
hget
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketId
,
KylinRedisConst
.
SURPLUS_EXCHANGE
);
}
/**
* 变更兑换库存 并 返回 修改后的数量
*
* @param ticketId 票id
* @param surplusExchange 普通库存
* @return 兑换剩余库存
*/
public
int
changeSurplusExchange
(
String
ticketId
,
int
surplusExchange
)
{
return
(
int
)
redisUtil
.
hincr
(
KylinRedisConst
.
PERFORMANCES_INVENTORY
+
ticketId
,
KylinRedisConst
.
SURPLUS_GENERAL
,
surplusExchange
);
}
}
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