记得上下班打卡 | 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
4d3d1fdb
Commit
4d3d1fdb
authored
Jun 25, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
验票调整:查取演出票种由原票种VO改为从演出VO提取;
parent
8c24faa2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
120 additions
and
95 deletions
+120
-95
KylinStationPerformanceVo.java
...rvice/kylin/dto/vo/returns/KylinStationPerformanceVo.java
+3
-11
KylinStationController.java
...dnet/service/kylin/controller/KylinStationController.java
+117
-84
No files found.
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/vo/returns/KylinStationPerformanceVo.java
View file @
4d3d1fdb
package
com
.
liquidnet
.
service
.
kylin
.
dto
.
vo
.
returns
;
package
com
.
liquidnet
.
service
.
kylin
.
dto
.
vo
.
returns
;
import
com.liquidnet.service.kylin.dto.vo.m
ongo.KylinPerformance
Vo
;
import
com.liquidnet.service.kylin.dto.vo.m
iddle.KylinTicketTimes
Vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -39,6 +39,8 @@ public class KylinStationPerformanceVo implements Serializable, Cloneable {
...
@@ -39,6 +39,8 @@ public class KylinStationPerformanceVo implements Serializable, Cloneable {
private
Integer
checkedNum
;
private
Integer
checkedNum
;
@ApiModelProperty
(
position
=
23
,
value
=
"余量[9]"
)
@ApiModelProperty
(
position
=
23
,
value
=
"余量[9]"
)
private
Integer
remainderNum
;
private
Integer
remainderNum
;
@ApiModelProperty
(
position
=
30
,
value
=
"#过程数据,前端无需关注"
)
private
List
<
KylinTicketTimesVo
>
ticketTimeList
;
private
static
final
KylinStationPerformanceVo
obj
=
new
KylinStationPerformanceVo
();
private
static
final
KylinStationPerformanceVo
obj
=
new
KylinStationPerformanceVo
();
...
@@ -49,14 +51,4 @@ public class KylinStationPerformanceVo implements Serializable, Cloneable {
...
@@ -49,14 +51,4 @@ public class KylinStationPerformanceVo implements Serializable, Cloneable {
return
new
KylinStationPerformanceVo
();
return
new
KylinStationPerformanceVo
();
}
}
}
}
public
KylinStationPerformanceVo
copy
(
KylinPerformanceVo
source
)
{
if
(
null
==
source
)
return
this
;
this
.
performancesId
=
source
.
getPerformancesId
();
this
.
type
=
source
.
getType
();
this
.
title
=
source
.
getTitle
();
this
.
timeStart
=
source
.
getTimeStart
();
this
.
timeEnd
=
source
.
getTimeEnd
();
return
this
;
}
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/controller/KylinStationController.java
View file @
4d3d1fdb
...
@@ -10,6 +10,7 @@ import com.liquidnet.service.base.ResponseDto;
...
@@ -10,6 +10,7 @@ import com.liquidnet.service.base.ResponseDto;
import
com.liquidnet.service.kylin.dto.param.CheckPerformanceRelationParam
;
import
com.liquidnet.service.kylin.dto.param.CheckPerformanceRelationParam
;
import
com.liquidnet.service.kylin.dto.param.KylinStationCheckOrderParam
;
import
com.liquidnet.service.kylin.dto.param.KylinStationCheckOrderParam
;
import
com.liquidnet.service.kylin.dto.param.KylinStationUploadParam
;
import
com.liquidnet.service.kylin.dto.param.KylinStationUploadParam
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo
;
import
com.liquidnet.service.kylin.dto.vo.mongo.*
;
import
com.liquidnet.service.kylin.dto.vo.mongo.*
;
import
com.liquidnet.service.kylin.dto.vo.returns.*
;
import
com.liquidnet.service.kylin.dto.vo.returns.*
;
...
@@ -186,73 +187,89 @@ public class KylinStationController {
...
@@ -186,73 +187,89 @@ public class KylinStationController {
// 转换订单票明细结构为Map<performanceId, List<KylinOrderTicketEntitiesVo>>
// 转换订单票明细结构为Map<performanceId, List<KylinOrderTicketEntitiesVo>>
Map
<
String
,
List
<
KylinOrderTicketEntitiesVo
>>
oteVoMap
=
oteVoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
KylinOrderTicketEntitiesVo:
:
getPerformanceId
));
Map
<
String
,
List
<
KylinOrderTicketEntitiesVo
>>
oteVoMap
=
oteVoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
KylinOrderTicketEntitiesVo:
:
getPerformanceId
));
// 查取订单对应票种
// // 查取订单对应票种
Query
performanceTicketVoQuery
=
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
in
(
// Query performanceTicketVoQuery = Query.query(Criteria.where("ticketsId").in(
oteVoList
.
stream
().
filter
(
distinctByKey
(
KylinOrderTicketEntitiesVo:
:
getTicketId
)).
map
(
KylinOrderTicketEntitiesVo:
:
getTicketId
).
toArray
()
// oteVoList.stream().filter(distinctByKey(KylinOrderTicketEntitiesVo::getTicketId)).map(KylinOrderTicketEntitiesVo::getTicketId).toArray()
));
// ));
List
<
KylinTicketVo
>
performanceTicketVoList
=
mongoTemplate
.
find
(
performanceTicketVoQuery
,
KylinTicketVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
// List<KylinTicketVo> performanceTicketVoList = mongoTemplate.find(performanceTicketVoQuery, KylinTicketVo.class, KylinPerformanceVo.class.getSimpleName());
log
.
debug
(
"performanceTicketVoList:{}"
,
JsonUtils
.
toJson
(
performanceTicketVoList
));
// log.debug("performanceTicketVoList:{}", JsonUtils.toJson(performanceTicketVoList));
// 转换票种信息结构为Map<ticketsId, ticketVo>
// // 转换票种信息结构为Map<ticketsId, ticketVo>
Map
<
String
,
KylinTicketVo
>
performanceTicketMap
=
performanceTicketVoList
.
stream
().
collect
(
Collectors
.
toMap
(
KylinTicketVo:
:
getTicketsId
,
Function
.
identity
(),
(
k1
,
k2
)
->
k2
));
// Map<String, KylinTicketVo> performanceTicketMap = performanceTicketVoList.stream().collect(Collectors.toMap(KylinTicketVo::getTicketsId, Function.identity(), (k1, k2) -> k2));
log
.
debug
(
"performanceTicketMap:{}"
,
JsonUtils
.
toJson
(
performanceTicketMap
));
// log.debug("performanceTicketMap:{}", JsonUtils.toJson(performanceTicketMap));
// 转换Map<performanceId, canDownTime>
// 转换Map<performanceId, canDownTime>
Map
<
String
,
String
>
performanceRelationMap
=
performanceRelationList
.
stream
().
collect
(
Collectors
.
toMap
(
CheckPerformanceRelationParam:
:
getPerformanceId
,
CheckPerformanceRelationParam:
:
getCanDownTime
));
Map
<
String
,
String
>
performanceRelationMap
=
performanceRelationList
.
stream
().
collect
(
Collectors
.
toMap
(
CheckPerformanceRelationParam:
:
getPerformanceId
,
CheckPerformanceRelationParam:
:
getCanDownTime
));
log
.
debug
(
"performanceRelationMap:{}"
,
JsonUtils
.
toJson
(
performanceRelationMap
));
log
.
debug
(
"performanceRelationMap:{}"
,
JsonUtils
.
toJson
(
performanceRelationMap
));
//
补充
演出列表票种统计
//
整合
演出列表票种统计
for
(
KylinStationPerformanceVo
r
:
voList
)
{
for
(
KylinStationPerformanceVo
r
:
voList
)
{
// 演出的所有订单票明细
r
.
setCanDownTime
(
performanceRelationMap
.
get
(
r
.
getPerformancesId
()));
List
<
KylinOrderTicketEntitiesVo
>
performanceTicketEntitiesVoList
=
oteVoMap
.
get
(
r
.
getPerformancesId
());
try
{
// 演出的所有订单票明细
if
(!
CollectionUtils
.
isEmpty
(
performanceTicketEntitiesVoList
))
{
List
<
KylinOrderTicketEntitiesVo
>
performanceTicketEntitiesVoList
=
oteVoMap
.
get
(
r
.
getPerformancesId
());
// 订单票明细按票种分组
Map
<
String
,
List
<
KylinOrderTicketEntitiesVo
>>
performanceTicketEntitiesVoMap
=
if
(!
CollectionUtils
.
isEmpty
(
performanceTicketEntitiesVoList
))
{
performanceTicketEntitiesVoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
KylinOrderTicketEntitiesVo:
:
getTicketId
));
// 提取演出对应票种信息
List
<
KylinTicketVo
>
performanceTicketVoList
=
new
ArrayList
<>();
List
<
KylinStationTicketVo
>
ticketVoList
=
new
ArrayList
<>();
List
<
KylinTicketTimesVo
>
ticketTimeList
=
r
.
getTicketTimeList
();
ticketTimeList
.
forEach
(
tt
->
{
BigDecimal
priceSum
=
BigDecimal
.
ZERO
;
performanceTicketVoList
.
addAll
(
tt
.
getTicketList
());
int
number
=
0
,
checkedNum
=
0
,
remainderNum
=
0
;
});
for
(
Map
.
Entry
<
String
,
List
<
KylinOrderTicketEntitiesVo
>>
entry
:
performanceTicketEntitiesVoMap
.
entrySet
())
{
// 转换票种信息结构为Map<ticketsId, ticketVo>
KylinTicketVo
ticketVo
=
performanceTicketMap
.
get
(
entry
.
getKey
());
Map
<
String
,
KylinTicketVo
>
performanceTicketMap
=
performanceTicketVoList
.
stream
().
collect
(
Collectors
.
toMap
(
KylinTicketVo:
:
getTicketsId
,
Function
.
identity
(),
(
k1
,
k2
)
->
k2
));
log
.
debug
(
"performanceTicketMap:{}"
,
JsonUtils
.
toJson
(
performanceTicketMap
));
KylinStationTicketVo
stationTicketVo
=
KylinStationTicketVo
.
getNew
();
stationTicketVo
.
setTicketId
(
ticketVo
.
getTicketsId
());
// 订单票明细按票种分组
stationTicketVo
.
setTitle
(
ticketVo
.
getTitle
());
Map
<
String
,
List
<
KylinOrderTicketEntitiesVo
>>
performanceTicketEntitiesVoMap
=
stationTicketVo
.
setPrice
(
ticketVo
.
getPrice
());
performanceTicketEntitiesVoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
KylinOrderTicketEntitiesVo:
:
getTicketId
));
stationTicketVo
.
setUseStart
(
ticketVo
.
getUseStart
());
stationTicketVo
.
setUseEnd
(
ticketVo
.
getUseEnd
());
List
<
KylinStationTicketVo
>
ticketVoList
=
new
ArrayList
<>();
List
<
KylinOrderTicketEntitiesVo
>
subPerformanceTicketEntitiesVoList
=
entry
.
getValue
();
BigDecimal
priceSum
=
BigDecimal
.
ZERO
;
// 订单票明细按出票状态分组
int
number
=
0
,
checkedNum
=
0
,
remainderNum
=
0
;
Map
<
Integer
,
List
<
KylinOrderTicketEntitiesVo
>>
subStatusPerformanceTicketEntitiesVoMap
for
(
Map
.
Entry
<
String
,
List
<
KylinOrderTicketEntitiesVo
>>
entry
:
performanceTicketEntitiesVoMap
.
entrySet
())
{
=
subPerformanceTicketEntitiesVoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
KylinOrderTicketEntitiesVo:
:
getStatus
));
KylinTicketVo
ticketVo
=
performanceTicketMap
.
get
(
entry
.
getKey
());
stationTicketVo
.
setNumber
(
subPerformanceTicketEntitiesVoList
.
size
());
KylinStationTicketVo
stationTicketVo
=
KylinStationTicketVo
.
getNew
();
stationTicketVo
.
setPriceSum
(
stationTicketVo
.
getPrice
().
multiply
(
BigDecimal
.
valueOf
(
stationTicketVo
.
getNumber
())));
stationTicketVo
.
setTicketId
(
ticketVo
.
getTicketsId
());
List
<
KylinOrderTicketEntitiesVo
>
checkedEntitiesVoList
=
subStatusPerformanceTicketEntitiesVoMap
.
get
(
1
);
stationTicketVo
.
setTitle
(
ticketVo
.
getTitle
());
stationTicketVo
.
setCheckedNum
(
CollectionUtils
.
isEmpty
(
checkedEntitiesVoList
)
?
0
:
checkedEntitiesVoList
.
size
());
stationTicketVo
.
setPrice
(
ticketVo
.
getPrice
());
List
<
KylinOrderTicketEntitiesVo
>
remainderEntitiesVoList
=
subStatusPerformanceTicketEntitiesVoMap
.
get
(
0
);
stationTicketVo
.
setUseStart
(
ticketVo
.
getUseStart
());
stationTicketVo
.
setRemainderNum
(
CollectionUtils
.
isEmpty
(
remainderEntitiesVoList
)
?
0
:
remainderEntitiesVoList
.
size
());
stationTicketVo
.
setUseEnd
(
ticketVo
.
getUseEnd
());
number
+=
stationTicketVo
.
getNumber
();
List
<
KylinOrderTicketEntitiesVo
>
subPerformanceTicketEntitiesVoList
=
entry
.
getValue
();
checkedNum
+=
stationTicketVo
.
getCheckedNum
();
// 订单票明细按出票状态分组
remainderNum
+=
stationTicketVo
.
getRemainderNum
();
Map
<
Integer
,
List
<
KylinOrderTicketEntitiesVo
>>
subStatusPerformanceTicketEntitiesVoMap
priceSum
=
priceSum
.
add
(
stationTicketVo
.
getPriceSum
());
=
subPerformanceTicketEntitiesVoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
KylinOrderTicketEntitiesVo:
:
getStatus
));
ticketVoList
.
add
(
stationTicketVo
);
stationTicketVo
.
setNumber
(
subPerformanceTicketEntitiesVoList
.
size
());
stationTicketVo
.
setPriceSum
(
stationTicketVo
.
getPrice
().
multiply
(
BigDecimal
.
valueOf
(
stationTicketVo
.
getNumber
())));
List
<
KylinOrderTicketEntitiesVo
>
checkedEntitiesVoList
=
subStatusPerformanceTicketEntitiesVoMap
.
get
(
1
);
stationTicketVo
.
setCheckedNum
(
CollectionUtils
.
isEmpty
(
checkedEntitiesVoList
)
?
0
:
checkedEntitiesVoList
.
size
());
List
<
KylinOrderTicketEntitiesVo
>
remainderEntitiesVoList
=
subStatusPerformanceTicketEntitiesVoMap
.
get
(
0
);
stationTicketVo
.
setRemainderNum
(
CollectionUtils
.
isEmpty
(
remainderEntitiesVoList
)
?
0
:
remainderEntitiesVoList
.
size
());
number
+=
stationTicketVo
.
getNumber
();
checkedNum
+=
stationTicketVo
.
getCheckedNum
();
remainderNum
+=
stationTicketVo
.
getRemainderNum
();
priceSum
=
priceSum
.
add
(
stationTicketVo
.
getPriceSum
());
ticketVoList
.
add
(
stationTicketVo
);
}
r
.
setPriceSum
(
priceSum
);
r
.
setNumber
(
number
);
r
.
setCheckedNum
(
checkedNum
);
r
.
setRemainderNum
(
remainderNum
);
r
.
setTicketVoList
(
ticketVoList
);
}
}
r
.
setPriceSum
(
priceSum
);
}
catch
(
Exception
e
)
{
r
.
setNumber
(
number
);
log
.
error
(
"验票:整合票种统计异常[station/performances],performancesId:{}"
,
r
.
getPerformancesId
(),
e
);
r
.
setCheckedNum
(
checkedNum
);
r
.
setRemainderNum
(
remainderNum
);
r
.
setTicketVoList
(
ticketVoList
);
r
.
setCanDownTime
(
performanceRelationMap
.
get
(
r
.
getPerformancesId
()));
}
}
r
.
setTicketTimeList
(
null
);
}
}
}
}
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"验票:查取演出列表异常
:/station/performances/?
"
,
e
);
log
.
error
(
"验票:查取演出列表异常
[station/performances]
"
,
e
);
}
}
PageInfo
<
KylinStationPerformanceVo
>
voPageInfo
=
PageInfo
.
of
(
voList
);
PageInfo
<
KylinStationPerformanceVo
>
voPageInfo
=
PageInfo
.
of
(
voList
);
voPageInfo
.
setTotal
(
count
);
voPageInfo
.
setTotal
(
count
);
...
@@ -286,15 +303,13 @@ public class KylinStationController {
...
@@ -286,15 +303,13 @@ public class KylinStationController {
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20608"
));
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20608"
));
}
}
List
<
KylinStationCheckOrderVo
>
checkOrderVos
;
// 查取演出对应的订单票明细
// 查取演出对应的订单票明细
Query
orderTicketEntitiesVoQuery
=
Query
.
query
(
Criteria
.
where
(
"performanceId"
).
is
(
performanceId
).
and
(
"isPayment"
).
is
(
1
));
Query
orderTicketEntitiesVoQuery
=
Query
.
query
(
Criteria
.
where
(
"performanceId"
).
is
(
performanceId
).
and
(
"isPayment"
).
is
(
1
));
checkOrderVos
=
mongoTemplate
.
find
(
orderTicketEntitiesVoQuery
,
KylinStationCheckOrderVo
.
class
,
KylinOrderTicketEntitiesVo
.
class
.
getSimpleName
());
List
<
KylinStationCheckOrderVo
>
checkOrderVos
=
mongoTemplate
.
find
(
orderTicketEntitiesVoQuery
,
KylinStationCheckOrderVo
.
class
,
KylinOrderTicketEntitiesVo
.
class
.
getSimpleName
());
Query
query
=
Query
.
query
(
Criteria
.
where
(
"orderTicketsId"
).
in
(
// 查取订单信息(orderTicketsId,userMobile,userName,qrCode)
checkOrderVos
.
stream
().
map
(
KylinStationCheckOrderVo:
:
getOrderId
).
toArray
()
Query
query
=
Query
.
query
(
Criteria
.
where
(
"orderTicketsId"
).
in
(
checkOrderVos
.
stream
().
map
(
KylinStationCheckOrderVo:
:
getOrderId
).
toArray
()));
));
query
.
fields
().
include
(
"orderTicketsId"
).
include
(
"userMobile"
).
include
(
"userName"
).
include
(
"qrCode"
);
query
.
fields
().
include
(
"orderTicketsId"
).
include
(
"qrCode"
);
List
<
KylinOrderTicketVo
>
orderTicketVoList
=
mongoTemplate
.
find
(
query
,
KylinOrderTicketVo
.
class
,
KylinOrderTicketVo
.
class
.
getSimpleName
());
List
<
KylinOrderTicketVo
>
orderTicketVoList
=
mongoTemplate
.
find
(
query
,
KylinOrderTicketVo
.
class
,
KylinOrderTicketVo
.
class
.
getSimpleName
());
for
(
KylinOrderTicketVo
t
:
orderTicketVoList
)
{
for
(
KylinOrderTicketVo
t
:
orderTicketVoList
)
{
...
@@ -312,11 +327,19 @@ public class KylinStationController {
...
@@ -312,11 +327,19 @@ public class KylinStationController {
// 查取演出信息
// 查取演出信息
KylinStationPerformanceVo
performanceVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"performancesId"
).
is
(
performanceId
)),
KylinStationPerformanceVo
performanceVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"performancesId"
).
is
(
performanceId
)),
KylinStationPerformanceVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
KylinStationPerformanceVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
// 查取订单对应票种
Query
performanceTicketVoQuery
=
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
in
(
// // 查取订单对应票种
checkOrderVos
.
stream
().
filter
(
distinctByKey
(
KylinStationCheckOrderVo:
:
getTicketId
)).
map
(
KylinStationCheckOrderVo:
:
getTicketId
).
toArray
()
// Query performanceTicketVoQuery = Query.query(Criteria.where("ticketsId").in(
));
// checkOrderVos.stream().filter(distinctByKey(KylinStationCheckOrderVo::getTicketId)).map(KylinStationCheckOrderVo::getTicketId).toArray()
List
<
KylinTicketVo
>
performanceTicketVoList
=
mongoTemplate
.
find
(
performanceTicketVoQuery
,
KylinTicketVo
.
class
,
KylinTicketVo
.
class
.
getSimpleName
());
// ));
// List<KylinTicketVo> performanceTicketVoList = mongoTemplate.find(performanceTicketVoQuery, KylinTicketVo.class, KylinTicketVo.class.getSimpleName());
// 提取演出对应票种信息
List
<
KylinTicketVo
>
performanceTicketVoList
=
new
ArrayList
<>();
List
<
KylinTicketTimesVo
>
ticketTimeList
=
performanceVo
.
getTicketTimeList
();
ticketTimeList
.
forEach
(
tt
->
{
performanceTicketVoList
.
addAll
(
tt
.
getTicketList
());
});
List
<
KylinStationTicketVo
>
ticketVoList
=
new
ArrayList
<>();
List
<
KylinStationTicketVo
>
ticketVoList
=
new
ArrayList
<>();
for
(
KylinTicketVo
r
:
performanceTicketVoList
)
{
for
(
KylinTicketVo
r
:
performanceTicketVoList
)
{
KylinStationTicketVo
stationTicketVo
=
KylinStationTicketVo
.
getNew
();
KylinStationTicketVo
stationTicketVo
=
KylinStationTicketVo
.
getNew
();
...
@@ -328,6 +351,7 @@ public class KylinStationController {
...
@@ -328,6 +351,7 @@ public class KylinStationController {
ticketVoList
.
add
(
stationTicketVo
);
ticketVoList
.
add
(
stationTicketVo
);
}
}
performanceVo
.
setTicketTimeList
(
null
);
performanceVo
.
setTicketVoList
(
ticketVoList
);
performanceVo
.
setTicketVoList
(
ticketVoList
);
vo
.
setPerformanceVo
(
performanceVo
);
vo
.
setPerformanceVo
(
performanceVo
);
}
}
...
@@ -376,22 +400,22 @@ public class KylinStationController {
...
@@ -376,22 +400,22 @@ public class KylinStationController {
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20608"
));
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20608"
));
}
}
List
<
KylinStationCheckOrderVo
>
checkOrderVos
;
// 查取演出对应的订单票明细
// 查取演出对应的订单票明细
Query
orderTicketEntitiesVoQuery
=
Query
.
query
(
Query
orderTicketEntitiesVoQuery
=
Query
.
query
(
Criteria
.
where
(
"performanceId"
).
is
(
performanceId
).
and
(
"updatedAt"
).
gte
(
latestUpdateAt
));
Criteria
.
where
(
"performanceId"
).
is
(
performanceId
).
and
(
"updatedAt"
).
gte
(
latestUpdateAt
)
List
<
KylinStationCheckOrderVo
>
checkOrderVos
=
mongoTemplate
.
find
(
orderTicketEntitiesVoQuery
,
KylinStationCheckOrderVo
.
class
,
KylinOrderTicketEntitiesVo
.
class
.
getSimpleName
());
);
checkOrderVos
=
mongoTemplate
.
find
(
orderTicketEntitiesVoQuery
,
KylinStationCheckOrderVo
.
class
,
KylinOrderTicketEntitiesVo
.
class
.
getSimpleName
());
// 查取订单信息(orderTicketsId,userMobile,userName,qrCode)
Query
query
=
Query
.
query
(
Criteria
.
where
(
"orderTicketsId"
).
in
(
checkOrderVos
.
stream
().
map
(
KylinStationCheckOrderVo:
:
getOrderId
).
toArray
()));
Query
query
=
Query
.
query
(
Criteria
.
where
(
"orderTicketsId"
).
in
(
query
.
fields
().
include
(
"orderTicketsId"
).
include
(
"userMobile"
).
include
(
"userName"
).
include
(
"qrCode"
);
checkOrderVos
.
stream
().
map
(
KylinStationCheckOrderVo:
:
getOrderId
).
toArray
()
));
query
.
fields
().
include
(
"orderTicketsId"
).
include
(
"qrCode"
);
List
<
KylinOrderTicketVo
>
orderTicketVoList
=
mongoTemplate
.
find
(
query
,
KylinOrderTicketVo
.
class
,
KylinOrderTicketVo
.
class
.
getSimpleName
());
List
<
KylinOrderTicketVo
>
orderTicketVoList
=
mongoTemplate
.
find
(
query
,
KylinOrderTicketVo
.
class
,
KylinOrderTicketVo
.
class
.
getSimpleName
());
for
(
KylinOrderTicketVo
t
:
orderTicketVoList
)
{
for
(
KylinOrderTicketVo
t
:
orderTicketVoList
)
{
for
(
KylinStationCheckOrderVo
r
:
checkOrderVos
)
{
for
(
KylinStationCheckOrderVo
r
:
checkOrderVos
)
{
if
(
r
.
getOrderId
().
equals
(
t
.
getOrderTicketsId
()))
r
.
setQrCode
(
t
.
getQrCode
());
if
(
r
.
getOrderId
().
equals
(
t
.
getOrderTicketsId
()))
{
r
.
setQrCode
(
t
.
getQrCode
());
r
.
setUserMobile
(
t
.
getUserMobile
());
r
.
setUserName
(
t
.
getUserName
());
}
}
}
}
}
KylinStationCheckRefreshVo
vo
=
KylinStationCheckRefreshVo
.
getNew
();
KylinStationCheckRefreshVo
vo
=
KylinStationCheckRefreshVo
.
getNew
();
...
@@ -400,11 +424,19 @@ public class KylinStationController {
...
@@ -400,11 +424,19 @@ public class KylinStationController {
// 查取演出信息
// 查取演出信息
KylinStationPerformanceVo
performanceVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"performancesId"
).
is
(
performanceId
)),
KylinStationPerformanceVo
performanceVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"performancesId"
).
is
(
performanceId
)),
KylinStationPerformanceVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
KylinStationPerformanceVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
// 查取订单对应票种
Query
performanceTicketVoQuery
=
Query
.
query
(
Criteria
.
where
(
"ticketsId"
).
in
(
// // 查取订单对应票种
checkOrderVos
.
stream
().
filter
(
distinctByKey
(
KylinStationCheckOrderVo:
:
getTicketId
)).
map
(
KylinStationCheckOrderVo:
:
getTicketId
).
toArray
()
// Query performanceTicketVoQuery = Query.query(Criteria.where("ticketsId").in(
));
// checkOrderVos.stream().filter(distinctByKey(KylinStationCheckOrderVo::getTicketId)).map(KylinStationCheckOrderVo::getTicketId).toArray()
List
<
KylinTicketVo
>
performanceTicketVoList
=
mongoTemplate
.
find
(
performanceTicketVoQuery
,
KylinTicketVo
.
class
,
KylinTicketVo
.
class
.
getSimpleName
());
// ));
// List<KylinTicketVo> performanceTicketVoList = mongoTemplate.find(performanceTicketVoQuery, KylinTicketVo.class, KylinTicketVo.class.getSimpleName());
// 提取演出对应票种信息
List
<
KylinTicketVo
>
performanceTicketVoList
=
new
ArrayList
<>();
List
<
KylinTicketTimesVo
>
ticketTimeList
=
performanceVo
.
getTicketTimeList
();
ticketTimeList
.
forEach
(
tt
->
{
performanceTicketVoList
.
addAll
(
tt
.
getTicketList
());
});
List
<
KylinStationTicketVo
>
ticketVoList
=
new
ArrayList
<>();
List
<
KylinStationTicketVo
>
ticketVoList
=
new
ArrayList
<>();
for
(
KylinTicketVo
r
:
performanceTicketVoList
)
{
for
(
KylinTicketVo
r
:
performanceTicketVoList
)
{
KylinStationTicketVo
stationTicketVo
=
KylinStationTicketVo
.
getNew
();
KylinStationTicketVo
stationTicketVo
=
KylinStationTicketVo
.
getNew
();
...
@@ -416,6 +448,7 @@ public class KylinStationController {
...
@@ -416,6 +448,7 @@ public class KylinStationController {
ticketVoList
.
add
(
stationTicketVo
);
ticketVoList
.
add
(
stationTicketVo
);
}
}
performanceVo
.
setTicketTimeList
(
null
);
performanceVo
.
setTicketVoList
(
ticketVoList
);
performanceVo
.
setTicketVoList
(
ticketVoList
);
vo
.
setPerformanceVo
(
performanceVo
);
vo
.
setPerformanceVo
(
performanceVo
);
}
}
...
...
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