Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
browser-backend
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
browser-backend
Commits
aa8e8c32
Commit
aa8e8c32
authored
Sep 18, 2020
by
Administrator
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'staging' into 'master'
提供前端查询ip See merge request
!174
parents
752513f1
7d3e1115
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
38 additions
and
12 deletions
+38
-12
AccountRepository.java
.../browserbackend/account/repository/AccountRepository.java
+2
-0
UserPrePaidBillingRepository.java
...kend/account/repository/UserPrePaidBillingRepository.java
+2
-2
AdministratorServiceImpl.java
...ackend/account/service/impl/AdministratorServiceImpl.java
+26
-3
TempController.java
...gec/browserbackend/browser/controller/TempController.java
+2
-2
IpResourceRepository.java
...owserbackend/browser/repository/IpResourceRepository.java
+1
-0
TempServiceImpl.java
.../browserbackend/browser/service/Impl/TempServiceImpl.java
+4
-4
TempService.java
...com/edgec/browserbackend/browser/service/TempService.java
+1
-1
No files found.
src/main/java/com/edgec/browserbackend/account/repository/AccountRepository.java
View file @
aa8e8c32
...
@@ -23,6 +23,8 @@ public interface AccountRepository extends MongoRepository<Account, String>, Acc
...
@@ -23,6 +23,8 @@ public interface AccountRepository extends MongoRepository<Account, String>, Acc
List
<
Account
>
findByParent
(
String
parent
);
List
<
Account
>
findByParent
(
String
parent
);
List
<
Account
>
findByParentIn
(
List
<
String
>
list
);
List
<
Account
>
findByParentIsNull
();
List
<
Account
>
findByParentIsNull
();
Page
<
Account
>
findByParent
(
String
parent
,
Pageable
pageable
);
Page
<
Account
>
findByParent
(
String
parent
,
Pageable
pageable
);
...
...
src/main/java/com/edgec/browserbackend/account/repository/UserPrePaidBillingRepository.java
View file @
aa8e8c32
...
@@ -2,13 +2,11 @@ package com.edgec.browserbackend.account.repository;
...
@@ -2,13 +2,11 @@ package com.edgec.browserbackend.account.repository;
import
com.edgec.browserbackend.account.domain.BillStatus
;
import
com.edgec.browserbackend.account.domain.BillStatus
;
import
com.edgec.browserbackend.account.domain.UserPrePaidBilling
;
import
com.edgec.browserbackend.account.domain.UserPrePaidBilling
;
import
org.omg.PortableServer.LIFESPAN_POLICY_ID
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.mongodb.repository.MongoRepository
;
import
org.springframework.data.mongodb.repository.MongoRepository
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.stereotype.Repository
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.List
;
@Repository
@Repository
...
@@ -38,6 +36,8 @@ public interface UserPrePaidBillingRepository extends MongoRepository<UserPrePai
...
@@ -38,6 +36,8 @@ public interface UserPrePaidBillingRepository extends MongoRepository<UserPrePai
List
<
UserPrePaidBilling
>
findByAdministratorAndPayMethodInAndTimestampBetween
(
String
username
,
List
<
Integer
>
payMehtods
,
long
time1
,
long
time2
);
List
<
UserPrePaidBilling
>
findByAdministratorAndPayMethodInAndTimestampBetween
(
String
username
,
List
<
Integer
>
payMehtods
,
long
time1
,
long
time2
);
List
<
UserPrePaidBilling
>
findByAdministratorInAndPayMethodInAndTimestampBetween
(
List
<
String
>
usernames
,
List
<
Integer
>
payMehtods
,
long
time1
,
long
time2
);
List
<
UserPrePaidBilling
>
findByAdministratorAndChargeTypeAndTimestampBetween
(
String
username
,
int
chargeType
,
long
time1
,
long
time2
);
List
<
UserPrePaidBilling
>
findByAdministratorAndChargeTypeAndTimestampBetween
(
String
username
,
int
chargeType
,
long
time1
,
long
time2
);
Page
<
UserPrePaidBilling
>
findByUsernameAndTimestampGreaterThanOrderByTimestampDesc
(
String
username
,
long
time
,
Pageable
pageable
);
Page
<
UserPrePaidBilling
>
findByUsernameAndTimestampGreaterThanOrderByTimestampDesc
(
String
username
,
long
time
,
Pageable
pageable
);
...
...
src/main/java/com/edgec/browserbackend/account/service/impl/AdministratorServiceImpl.java
View file @
aa8e8c32
...
@@ -548,14 +548,19 @@ public class AdministratorServiceImpl implements AdministratorService {
...
@@ -548,14 +548,19 @@ public class AdministratorServiceImpl implements AdministratorService {
// 获取当前账户的下级账户
// 获取当前账户的下级账户
List
<
Account
>
secondPromotes
=
accountRepository
.
findByPromotionCodeAndParentIsNull
(
x
.
getPromotion
().
getCode
());
List
<
Account
>
secondPromotes
=
accountRepository
.
findByPromotionCodeAndParentIsNull
(
x
.
getPromotion
().
getCode
());
if
(
secondPromotes
!=
null
&&
secondPromotes
.
size
()
>
0
)
{
if
(
secondPromotes
!=
null
&&
secondPromotes
.
size
()
>
0
)
{
for
(
Account
secondPromote
:
secondPromotes
)
{
/*
for (Account secondPromote : secondPromotes) {
// 将下级账户及下级账户的子账户中未过期的ip统计到 ipCount中
// 将下级账户及下级账户的子账户中未过期的ip统计到 ipCount中
long start3 = System.currentTimeMillis();
long start3 = System.currentTimeMillis();
int[] arr2 = getCommissionAndIps(beginTime, endTime, secondPromote);
int[] arr2 = getCommissionAndIps(beginTime, endTime, secondPromote);
log.info("===>countPromotionInfos step-3-{}-{} consume time {}", accounts.indexOf(x) + 1, secondPromotes.indexOf(secondPromote) + 1, (System.currentTimeMillis() - start3));
log.info("===>countPromotionInfos step-3-{}-{} consume time {}", accounts.indexOf(x) + 1, secondPromotes.indexOf(secondPromote) + 1, (System.currentTimeMillis() - start3));
promotionInfoDto.setSecondLevelCommission(promotionInfoDto.getSecondLevelCommission() + arr2[0]);
promotionInfoDto.setSecondLevelCommission(promotionInfoDto.getSecondLevelCommission() + arr2[0]);
promotionInfoDto.setSecondLevelIps(promotionInfoDto.getSecondLevelIps() + arr2[1]);
promotionInfoDto.setSecondLevelIps(promotionInfoDto.getSecondLevelIps() + arr2[1]);
}
}*/
long
start3
=
System
.
currentTimeMillis
();
int
[]
arr2
=
getCommissionAndIps
(
beginTime
,
endTime
,
secondPromotes
.
stream
().
map
(
Account:
:
getName
).
collect
(
Collectors
.
toList
()));
log
.
info
(
"===>countPromotionInfos step-3-{}-{} consume time {}"
,
accounts
.
indexOf
(
x
)
+
1
,
"1"
,
(
System
.
currentTimeMillis
()
-
start3
));
promotionInfoDto
.
setSecondLevelCommission
(
promotionInfoDto
.
getSecondLevelCommission
()
+
arr2
[
0
]);
promotionInfoDto
.
setSecondLevelIps
(
promotionInfoDto
.
getSecondLevelIps
()
+
arr2
[
1
]);
}
}
}
}
});
});
...
@@ -587,7 +592,6 @@ public class AdministratorServiceImpl implements AdministratorService {
...
@@ -587,7 +592,6 @@ public class AdministratorServiceImpl implements AdministratorService {
Date
beginTime
=
formatter
.
parse
(
beginDate
);
Date
beginTime
=
formatter
.
parse
(
beginDate
);
Date
endTime
=
formatter
.
parse
(
endDate
);
Date
endTime
=
formatter
.
parse
(
endDate
);
Page
<
Account
>
accountPage
=
accountRepository
.
findAllByPromotionCodeAndParentIsNull
(
pageable
,
account
.
getPromotion
().
getCode
());
Page
<
Account
>
accountPage
=
accountRepository
.
findAllByPromotionCodeAndParentIsNull
(
pageable
,
account
.
getPromotion
().
getCode
());
List
<
AccountPromotionDto
>
list
=
new
ArrayList
<>();
List
<
AccountPromotionDto
>
list
=
new
ArrayList
<>();
if
(
accountPage
.
getNumberOfElements
()
>
0
)
{
if
(
accountPage
.
getNumberOfElements
()
>
0
)
{
...
@@ -661,6 +665,25 @@ public class AdministratorServiceImpl implements AdministratorService {
...
@@ -661,6 +665,25 @@ public class AdministratorServiceImpl implements AdministratorService {
return
arr
;
return
arr
;
}
}
// 计算当前用户的所有下级用户的消费 countAllByOwnerInAndIsDeletedAndValidTimeGreaterThan
private
int
[]
getCommissionAndIps
(
Date
beginTime
,
Date
endTime
,
List
<
String
>
nameList
)
{
Integer
ownIps
=
(
int
)
ipResourceRepository
.
countAllByOwnerInAndIsDeletedAndValidTimeGreaterThan
(
nameList
,
false
,
Instant
.
now
().
toEpochMilli
());
List
<
Account
>
children
=
accountRepository
.
findByParentIn
(
nameList
);
if
(
children
!=
null
&&
children
.
size
()
>
0
)
{
ownIps
+=
(
int
)
ipResourceRepository
.
countAllByOwnerInAndIsDeletedAndValidTimeGreaterThan
(
children
.
stream
().
map
(
Account:
:
getName
).
collect
(
Collectors
.
toList
()),
false
,
Instant
.
now
().
toEpochMilli
());
}
// 计算出账户的所有消费
double
commission
=
0
;
List
<
UserPrePaidBilling
>
userPrePaidBillings1
=
userPrePaidBillingRepository
.
findByAdministratorInAndPayMethodInAndTimestampBetween
(
nameList
,
Arrays
.
asList
(
1
,
2
,
3
),
beginTime
.
getTime
(),
endTime
.
getTime
());
if
(
userPrePaidBillings1
!=
null
&&
userPrePaidBillings1
.
size
()
>
0
)
{
commission
=
userPrePaidBillings1
.
stream
().
mapToDouble
(
UserPrePaidBilling:
:
getTotal
).
sum
();
}
int
[]
arr
=
{(
int
)
commission
,
ownIps
};
return
arr
;
}
@Override
@Override
public
void
addWhiteList
(
String
website
)
{
public
void
addWhiteList
(
String
website
)
{
WhiteSite
whiteSite
=
new
WhiteSite
();
WhiteSite
whiteSite
=
new
WhiteSite
();
...
...
src/main/java/com/edgec/browserbackend/browser/controller/TempController.java
View file @
aa8e8c32
...
@@ -24,8 +24,8 @@ public class TempController {
...
@@ -24,8 +24,8 @@ public class TempController {
}
}
@GetMapping
(
"/{ip}"
)
@GetMapping
(
"/{ip}"
)
public
String
getPa
a
sword
(
@PathVariable
(
"ip"
)
String
ip
)
{
public
String
getPa
s
sword
(
@PathVariable
(
"ip"
)
String
ip
)
{
return
tempService
.
getPa
a
sword
(
ip
);
return
tempService
.
getPa
s
sword
(
ip
);
}
}
}
}
src/main/java/com/edgec/browserbackend/browser/repository/IpResourceRepository.java
View file @
aa8e8c32
...
@@ -68,5 +68,6 @@ public interface IpResourceRepository extends MongoRepository<IpResource, String
...
@@ -68,5 +68,6 @@ public interface IpResourceRepository extends MongoRepository<IpResource, String
long
countAllByOwner
(
String
username
);
long
countAllByOwner
(
String
username
);
IpResource
findFirstByAddrOrderByPurchasedTimeDesc
(
String
addr
);
IpResource
findFirstByAddrOrderByPurchasedTimeDesc
(
String
addr
);
}
}
src/main/java/com/edgec/browserbackend/browser/service/Impl/TempServiceImpl.java
View file @
aa8e8c32
...
@@ -43,13 +43,13 @@ public class TempServiceImpl implements TempService {
...
@@ -43,13 +43,13 @@ public class TempServiceImpl implements TempService {
}
}
@Override
@Override
public
String
getPa
a
sword
(
String
ip
)
{
public
String
getPa
s
sword
(
String
ip
)
{
IpResource
ipResource
=
ipResourceRepository
.
findFirstByAddrOrderByPurchasedTimeDesc
(
ip
);
IpResource
ipResource
=
ipResourceRepository
.
findFirstByAddrOrderByPurchasedTimeDesc
(
ip
);
String
password
;
String
password
;
if
(
"mainland"
.
equals
(
ipResource
.
getRegion
())
)
{
if
(
ipResource
.
getProxyPassword
()
==
null
)
{
password
=
ipResource
.
getPassword
();
password
=
ipResource
.
get
Username
()
+
"\n"
+
ipResource
.
get
Password
();
}
else
{
}
else
{
password
=
ipResource
.
getProxyPassword
();
password
=
ipResource
.
getProxy
Username
()
+
"\n"
+
ipResource
.
get
Password
();
}
}
return
password
;
return
password
;
}
}
...
...
src/main/java/com/edgec/browserbackend/browser/service/TempService.java
View file @
aa8e8c32
...
@@ -10,5 +10,5 @@ public interface TempService {
...
@@ -10,5 +10,5 @@ public interface TempService {
void
saveIpResource
(
String
addr
,
String
flag
);
void
saveIpResource
(
String
addr
,
String
flag
);
String
getPa
a
sword
(
String
ip
);
String
getPa
s
sword
(
String
ip
);
}
}
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