记得上下班打卡 | 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
f3c5843a
Commit
f3c5843a
authored
Jan 06, 2022
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
演出列表增加速度
parent
66939aad
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
4 deletions
+16
-4
MongoSlimeUtils.java
...ava/com/liquidnet/service/slime/util/MongoSlimeUtils.java
+16
-4
No files found.
liquidnet-bus-service/liquidnet-service-slime/liquidnet-service-slime-impl/src/main/java/com/liquidnet/service/slime/util/MongoSlimeUtils.java
View file @
f3c5843a
...
...
@@ -19,6 +19,7 @@ import com.liquidnet.service.slime.service.SlimeRdmService;
import
com.mongodb.BasicDBObject
;
import
com.mongodb.client.model.FindOneAndUpdateOptions
;
import
com.mongodb.client.model.ReturnDocument
;
import
lombok.extern.slf4j.Slf4j
;
import
org.bson.Document
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Sort
;
...
...
@@ -37,6 +38,7 @@ import java.util.List;
import
java.util.stream.Collectors
;
@Component
@Slf4j
public
class
MongoSlimeUtils
{
@Autowired
private
MongoTemplate
mongoTemplate
;
...
...
@@ -263,7 +265,7 @@ public class MongoSlimeUtils {
if
(
performancePartnerListParam
.
getOrderSc
().
equals
(
"asc"
))
{
orderBy
=
Sort
.
Direction
.
ASC
;
}
long
currentTime
=
System
.
currentTimeMillis
();
List
<
String
>
performanceIdList
=
null
;
List
<
SlimeAuthorizationPerformanceVo
>
permissionVoList
=
ObjectUtil
.
getPermissionVoList
();
if
(!
redisSlimeUtils
.
superAccount
(
performancePartnerListParam
.
getMerchantId
()))
{
...
...
@@ -280,6 +282,8 @@ public class MongoSlimeUtils {
SlimeAuthorizationPerformanceVo
.
class
,
SlimeAuthorizationPerformanceVo
.
class
.
getSimpleName
());
performanceIdList
=
permissionVoList
.
stream
().
map
(
SlimeAuthorizationPerformanceVo:
:
getPerformanceId
).
collect
(
Collectors
.
toList
());
}
log
.
debug
(
"TIME 1= "
+
(
System
.
currentTimeMillis
()-
currentTime
));
currentTime
=
System
.
currentTimeMillis
();
//查询演出
Criteria
criteriaPerformanceId
=
performanceIdList
==
null
?
Criteria
.
where
(
"performancesId"
).
ne
(
null
)
:
Criteria
.
where
(
"performancesId"
).
in
(
performanceIdList
);
Criteria
criteria
=
Criteria
.
where
(
"performancesId"
).
ne
(
null
);
...
...
@@ -304,11 +308,14 @@ public class MongoSlimeUtils {
.
skip
(((
performancePartnerListParam
.
getPage
()
-
1
)
*
performancePartnerListParam
.
getSize
()))
.
limit
(
performancePartnerListParam
.
getSize
()),
KylinPerformanceVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
log
.
debug
(
"TIME 2= "
+
(
System
.
currentTimeMillis
()-
currentTime
));
currentTime
=
System
.
currentTimeMillis
();
long
total
=
mongoTemplate
.
count
(
Query
.
query
(
new
Criteria
().
andOperator
(
criteria
).
orOperator
(
criteriaPerformanceId
,
Criteria
.
where
(
"merchantId"
).
is
(
performancePartnerListParam
.
getMerchantId
())))
.
with
(
Sort
.
by
(
orderBy
,
performancePartnerListParam
.
getOrderItem
())),
KylinPerformanceVo
.
class
,
KylinPerformanceVo
.
class
.
getSimpleName
());
log
.
debug
(
"TIME 3= "
+
(
System
.
currentTimeMillis
()-
currentTime
));
currentTime
=
System
.
currentTimeMillis
();
//查询销量
Aggregation
aggregation
=
Aggregation
.
newAggregation
(
Aggregation
.
match
(
Criteria
.
where
(
"status"
).
in
(
0
,
1
,
3
,
6
).
and
(
"couponType"
).
is
(
"no"
).
and
(
"transferStatus"
).
in
(
0
,
1
,
2
,
5
).
and
(
"performanceId"
).
in
(
performanceIdList
)),
...
...
@@ -321,8 +328,12 @@ public class MongoSlimeUtils {
);
AggregationResults
<
PerformancePartnerListDao
>
outputType
=
mongoTemplate
.
aggregate
(
aggregation
,
KylinOrderTicketVo
.
class
.
getSimpleName
(),
PerformancePartnerListDao
.
class
);
log
.
debug
(
"TIME 4= "
+
(
System
.
currentTimeMillis
()-
currentTime
));
currentTime
=
System
.
currentTimeMillis
();
List
<
PerformancePartnerListDao
>
dataList
=
new
ArrayList
(
outputType
.
getMappedResults
());
List
<
PerformancePartnerListDao
>
list
=
ObjectUtil
.
getPerformancePartnerListDaoArrayList
();
boolean
isSuperAccount
=
redisSlimeUtils
.
superAccount
(
performancePartnerListParam
.
getMerchantId
());
for
(
KylinPerformanceVo
item
:
performanceVos
)
{
boolean
findData
=
false
;
PerformancePartnerListDao
dao
=
PerformancePartnerListDao
.
getNew
();
...
...
@@ -359,7 +370,7 @@ public class MongoSlimeUtils {
dao
.
setTimeSell
(
timeSell
);
dao
.
setTimeStop
(
timeStop
);
if
(
item
.
getMerchantId
().
equals
(
performancePartnerListParam
.
getMerchantId
())
||
redisSlimeUtils
.
superAccount
(
performancePartnerListParam
.
getMerchantId
())
)
{
if
(
item
.
getMerchantId
().
equals
(
performancePartnerListParam
.
getMerchantId
())
||
isSuperAccount
)
{
dao
.
setPermissionId
(
new
ArrayList
<
String
>()
{{
add
(
SlimeAuthorizationConst
.
PerformancePermission
.
READ
.
getId
());
add
(
SlimeAuthorizationConst
.
PerformancePermission
.
EDIT
.
getId
());
...
...
@@ -371,7 +382,7 @@ public class MongoSlimeUtils {
}
for
(
SlimeAuthorizationPerformanceVo
permission
:
permissionVoList
)
{
if
(
item
.
getMerchantId
().
equals
(
performancePartnerListParam
.
getMerchantId
())
||
redisSlimeUtils
.
superAccount
(
performancePartnerListParam
.
getMerchantId
())
)
{
if
(
item
.
getMerchantId
().
equals
(
performancePartnerListParam
.
getMerchantId
())
||
isSuperAccount
)
{
dao
.
setPermissionId
(
new
ArrayList
<
String
>()
{{
add
(
SlimeAuthorizationConst
.
PerformancePermission
.
READ
.
getId
());
add
(
SlimeAuthorizationConst
.
PerformancePermission
.
EDIT
.
getId
());
...
...
@@ -410,6 +421,7 @@ public class MongoSlimeUtils {
}
list
.
add
(
dao
);
}
log
.
debug
(
"TIME 5= "
+
(
System
.
currentTimeMillis
()-
currentTime
));
HashMap
<
String
,
Object
>
map
=
CollectionUtil
.
mapStringObject
();
map
.
put
(
"data"
,
list
);
map
.
put
(
"total"
,
total
);
...
...
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