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
b0bfce0e
Commit
b0bfce0e
authored
May 06, 2020
by
renjie
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev-zrj' into 'staging'
返回店铺接口修改 See merge request
!42
parents
0d3fd1a6
76d2b89a
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
80 additions
and
18 deletions
+80
-18
IpResourceDto.java
...a/com/edgec/browserbackend/browser/dto/IpResourceDto.java
+2
-1
ShopResultDto.java
...a/com/edgec/browserbackend/browser/dto/ShopResultDto.java
+4
-4
IpResourceRepository.java
...owserbackend/browser/repository/IpResourceRepository.java
+2
-0
ShopServiceImpl.java
.../browserbackend/browser/service/Impl/ShopServiceImpl.java
+20
-6
Set3proxyTask.java
.../com/edgec/browserbackend/browser/task/Set3proxyTask.java
+52
-7
No files found.
src/main/java/com/edgec/browserbackend/browser/dto/IpResourceDto.java
View file @
b0bfce0e
...
@@ -50,7 +50,8 @@ public class IpResourceDto {
...
@@ -50,7 +50,8 @@ public class IpResourceDto {
this
.
password
=
ipResource
.
getPassword
();
this
.
password
=
ipResource
.
getPassword
();
this
.
protocol
=
ipResource
.
getProtocol
();
this
.
protocol
=
ipResource
.
getProtocol
();
this
.
specialLine
=
ipResource
.
isSpecialLine
();
this
.
specialLine
=
ipResource
.
isSpecialLine
();
this
.
bindShop
=
shopDto
;
if
(
shopDto
!=
null
)
this
.
bindShop
=
shopDto
;
if
(
useHistory
)
if
(
useHistory
)
this
.
bindHistories
=
ipResource
.
getBindHistory
();
this
.
bindHistories
=
ipResource
.
getBindHistory
();
else
else
...
...
src/main/java/com/edgec/browserbackend/browser/dto/ShopResultDto.java
View file @
b0bfce0e
...
@@ -32,11 +32,11 @@ public class ShopResultDto {
...
@@ -32,11 +32,11 @@ public class ShopResultDto {
private
String
shopCookie
;
private
String
shopCookie
;
private
IpResource
bindIp
;
private
IpResource
Dto
bindIp
;
private
long
createTime
;
private
long
createTime
;
public
static
ShopResultDto
of
(
Shop
shop
,
String
group
,
IpResource
ipResources
)
{
public
static
ShopResultDto
of
(
Shop
shop
,
String
group
,
IpResource
Dto
ipResources
)
{
ShopResultDto
shopResultDto
=
new
ShopResultDto
();
ShopResultDto
shopResultDto
=
new
ShopResultDto
();
shopResultDto
.
setShopId
(
shop
.
getShopId
());
shopResultDto
.
setShopId
(
shop
.
getShopId
());
if
(
shop
.
getShopName
()
!=
null
)
if
(
shop
.
getShopName
()
!=
null
)
...
@@ -135,11 +135,11 @@ public class ShopResultDto {
...
@@ -135,11 +135,11 @@ public class ShopResultDto {
this
.
shopUrl
=
shopUrl
;
this
.
shopUrl
=
shopUrl
;
}
}
public
IpResource
getBindIp
()
{
public
IpResource
Dto
getBindIp
()
{
return
bindIp
;
return
bindIp
;
}
}
public
void
setBindIp
(
IpResource
bindIp
)
{
public
void
setBindIp
(
IpResource
Dto
bindIp
)
{
this
.
bindIp
=
bindIp
;
this
.
bindIp
=
bindIp
;
}
}
...
...
src/main/java/com/edgec/browserbackend/browser/repository/IpResourceRepository.java
View file @
b0bfce0e
...
@@ -28,6 +28,8 @@ public interface IpResourceRepository extends MongoRepository<IpResource, String
...
@@ -28,6 +28,8 @@ public interface IpResourceRepository extends MongoRepository<IpResource, String
Page
<
IpResource
>
findByIsDeletedAndIdInAndRegionCnLikeOrderByPurchasedTimeDesc
(
boolean
isDeleted
,
List
<
String
>
ipIds
,
String
region
,
Pageable
pageable
);
Page
<
IpResource
>
findByIsDeletedAndIdInAndRegionCnLikeOrderByPurchasedTimeDesc
(
boolean
isDeleted
,
List
<
String
>
ipIds
,
String
region
,
Pageable
pageable
);
List
<
IpResource
>
findByIsDeletedAndShopIdInAndRegionCnLike
(
boolean
isDeleted
,
List
<
String
>
shopIds
,
String
regionCn
);
List
<
IpResource
>
findByIsDeletedAndShopIdInAndRegionCnLike
(
boolean
isDeleted
,
List
<
String
>
shopIds
,
String
regionCn
);
List
<
IpResource
>
findByOwnerInAndSpecialLine
(
List
<
String
>
owners
,
boolean
specialLine
);
List
<
IpResource
>
findByStatusAndLockedAndLockTimestampLessThan
(
int
status
,
boolean
locked
,
long
timestamp
);
List
<
IpResource
>
findByStatusAndLockedAndLockTimestampLessThan
(
int
status
,
boolean
locked
,
long
timestamp
);
List
<
IpResource
>
findByValidTimeBetweenAndIsDeleted
(
long
beginTime
,
long
endTime
,
boolean
isDeleted
);
List
<
IpResource
>
findByValidTimeBetweenAndIsDeleted
(
long
beginTime
,
long
endTime
,
boolean
isDeleted
);
...
...
src/main/java/com/edgec/browserbackend/browser/service/Impl/ShopServiceImpl.java
View file @
b0bfce0e
...
@@ -7,10 +7,7 @@ import com.edgec.browserbackend.account.repository.AccountRepository;
...
@@ -7,10 +7,7 @@ import com.edgec.browserbackend.account.repository.AccountRepository;
import
com.edgec.browserbackend.browser.ErrorCode.BrowserErrorCode
;
import
com.edgec.browserbackend.browser.ErrorCode.BrowserErrorCode
;
import
com.edgec.browserbackend.browser.domain.*
;
import
com.edgec.browserbackend.browser.domain.*
;
import
com.edgec.browserbackend.browser.dto.*
;
import
com.edgec.browserbackend.browser.dto.*
;
import
com.edgec.browserbackend.browser.repository.GroupRepository
;
import
com.edgec.browserbackend.browser.repository.*
;
import
com.edgec.browserbackend.browser.repository.IpResourceRepository
;
import
com.edgec.browserbackend.browser.repository.ShopRepository
;
import
com.edgec.browserbackend.browser.repository.UserShopRepository
;
import
com.edgec.browserbackend.browser.service.IpAndShopService
;
import
com.edgec.browserbackend.browser.service.IpAndShopService
;
import
com.edgec.browserbackend.browser.service.ShopService
;
import
com.edgec.browserbackend.browser.service.ShopService
;
import
com.edgec.browserbackend.common.commons.error.ClientRequestException
;
import
com.edgec.browserbackend.common.commons.error.ClientRequestException
;
...
@@ -25,6 +22,7 @@ import org.springframework.data.domain.PageImpl;
...
@@ -25,6 +22,7 @@ import org.springframework.data.domain.PageImpl;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.security.core.parameters.P
;
import
org.springframework.security.core.parameters.P
;
import
org.springframework.security.task.DelegatingSecurityContextAsyncTaskExecutor
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
...
@@ -63,6 +61,9 @@ public class ShopServiceImpl implements ShopService {
...
@@ -63,6 +61,9 @@ public class ShopServiceImpl implements ShopService {
@Autowired
@Autowired
IpAndShopService
ipAndShopService
;
IpAndShopService
ipAndShopService
;
@Autowired
SpecialLineRepository
specialLineRepository
;
@Override
@Override
public
String
addShop
(
String
username
,
ShopResultDto
shopResultDto
)
{
public
String
addShop
(
String
username
,
ShopResultDto
shopResultDto
)
{
Account
account
=
accountRepository
.
findByName
(
username
);
Account
account
=
accountRepository
.
findByName
(
username
);
...
@@ -319,7 +320,13 @@ public class ShopServiceImpl implements ShopService {
...
@@ -319,7 +320,13 @@ public class ShopServiceImpl implements ShopService {
if
(
ipResource
==
null
)
if
(
ipResource
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
IPNOTEXIST
);
throw
new
ClientRequestException
(
BrowserErrorCode
.
IPNOTEXIST
);
String
group
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
shop
.
getShopId
()).
getGroupId
();
String
group
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
shop
.
getShopId
()).
getGroupId
();
ShopResultDto
shopResultDto
=
ShopResultDto
.
of
(
shop
,
group
,
ipResource
);
ShopResultDto
shopResultDto
=
null
;
if
(
ipResource
.
isSpecialLine
())
{
SpecialLine
specialLine
=
specialLineRepository
.
findAll
().
get
(
0
);
shopResultDto
=
ShopResultDto
.
of
(
shop
,
group
,
new
IpResourceDto
(
ipResource
,
null
,
false
,
specialLine
));
}
else
shopResultDto
=
ShopResultDto
.
of
(
shop
,
group
,
new
IpResourceDto
(
ipResource
,
null
,
false
));
return
shopResultDto
;
return
shopResultDto
;
}
}
...
@@ -400,7 +407,14 @@ public class ShopServiceImpl implements ShopService {
...
@@ -400,7 +407,14 @@ public class ShopServiceImpl implements ShopService {
if
(
ipResource
==
null
)
if
(
ipResource
==
null
)
ipResource
=
new
IpResource
();
ipResource
=
new
IpResource
();
String
group1
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
x
.
getShopId
()).
getGroupId
();
String
group1
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
x
.
getShopId
()).
getGroupId
();
shopResultDtos
.
add
(
ShopResultDto
.
of
(
x
,
group1
,
ipResource
));
ShopResultDto
shopResultDto
=
null
;
if
(
ipResource
.
isSpecialLine
())
{
SpecialLine
specialLine
=
specialLineRepository
.
findAll
().
get
(
0
);
shopResultDto
=
ShopResultDto
.
of
(
x
,
group1
,
new
IpResourceDto
(
ipResource
,
null
,
false
,
specialLine
));
}
else
shopResultDto
=
ShopResultDto
.
of
(
x
,
group1
,
new
IpResourceDto
(
ipResource
,
null
,
false
));
shopResultDtos
.
add
(
shopResultDto
);
});
});
Page
<
ShopResultDto
>
shopDtoPage
=
new
PageImpl
<>(
shopResultDtos
,
pageable
,
shopIds
.
size
());
Page
<
ShopResultDto
>
shopDtoPage
=
new
PageImpl
<>(
shopResultDtos
,
pageable
,
shopIds
.
size
());
ShopPageResultDto
shopPageResultDto
=
new
ShopPageResultDto
();
ShopPageResultDto
shopPageResultDto
=
new
ShopPageResultDto
();
...
...
src/main/java/com/edgec/browserbackend/browser/task/Set3proxyTask.java
View file @
b0bfce0e
...
@@ -3,13 +3,19 @@ package com.edgec.browserbackend.browser.task;
...
@@ -3,13 +3,19 @@ package com.edgec.browserbackend.browser.task;
import
com.edgec.browserbackend.account.repository.AccountRepository
;
import
com.edgec.browserbackend.account.repository.AccountRepository
;
import
com.edgec.browserbackend.auth.domain.mongo.MongoOAuth2AccessToken
;
import
com.edgec.browserbackend.auth.domain.mongo.MongoOAuth2AccessToken
;
import
com.edgec.browserbackend.auth.repository.mongo.MongoOAuth2AccessTokenRepository
;
import
com.edgec.browserbackend.auth.repository.mongo.MongoOAuth2AccessTokenRepository
;
import
com.edgec.browserbackend.browser.domain.IpResource
;
import
com.edgec.browserbackend.browser.domain.SpecialLine
;
import
com.edgec.browserbackend.browser.repository.IpResourceRepository
;
import
com.edgec.browserbackend.browser.repository.SpecialLineRepository
;
import
com.edgec.browserbackend.browser.service.Impl.IpResourceServiceImpl
;
import
com.edgec.browserbackend.common.commons.utils.RemoteShellExecutor
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.io.
FileInputStream
;
import
java.io.
*
;
import
java.time.Instant
;
import
java.time.Instant
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -25,12 +31,51 @@ public class Set3proxyTask {
...
@@ -25,12 +31,51 @@ public class Set3proxyTask {
@Autowired
@Autowired
private
MongoOAuth2AccessTokenRepository
mongoOAuth2AccessTokenRepository
;
private
MongoOAuth2AccessTokenRepository
mongoOAuth2AccessTokenRepository
;
@Autowired
private
IpResourceRepository
ipResourceRepository
;
@Autowired
private
SpecialLineRepository
specialLineRepository
;
// @Scheduled(cron = "0 0/1 * * * ?")
// @Scheduled(cron = "0 0/1 * * * ?")
// public void set3proxy() {
public
void
set3proxy
()
{
// long validTime = Instant.now().minusSeconds(43200).toEpochMilli();
long
validTime
=
Instant
.
now
().
minusSeconds
(
43200
).
toEpochMilli
();
// List<String> tokenUsernames = mongoOAuth2AccessTokenRepository.findByCreatedAtGreaterThan(validTime).stream().map(MongoOAuth2AccessToken::getUsername).collect(Collectors.toList());
List
<
String
>
tokenUsernames
=
mongoOAuth2AccessTokenRepository
.
findByCreatedAtGreaterThan
(
validTime
).
stream
().
map
(
MongoOAuth2AccessToken:
:
getUsername
).
collect
(
Collectors
.
toList
());
// List<String> accountParentDtos = accountRepository.findByNameIn(tokenUsernames).stream().map(x -> x.getParent() == null ? x.getName() : x.getParent()).distinct().collect(Collectors.toList());
List
<
String
>
accountParents
=
accountRepository
.
findByNameIn
(
tokenUsernames
).
stream
().
map
(
x
->
x
.
getParent
()
==
null
?
x
.
getName
()
:
x
.
getParent
()).
distinct
().
collect
(
Collectors
.
toList
());
//// FileInputStream fileInputStream = new FileInputStream();
log
.
error
(
accountParents
.
size
()
+
""
);
// }
List
<
IpResource
>
ipResources
=
ipResourceRepository
.
findByOwnerInAndSpecialLine
(
accountParents
,
true
);
log
.
error
(
ipResources
.
size
()
+
""
);
File
file
=
new
File
(
"3proxy.cfg"
);
SpecialLine
specialLine
=
specialLineRepository
.
findAll
().
get
(
0
);
StringBuilder
stringBuilder
=
new
StringBuilder
();
try
{
file
.
delete
();
file
.
createNewFile
();
FileWriter
fileWriter
=
new
FileWriter
(
file
,
true
);
BufferedWriter
bw
=
new
BufferedWriter
(
fileWriter
);
stringBuilder
.
append
(
"daemon\nlog /var/log/3proxy.log D\nrotate 30\n"
);
for
(
IpResource
ipResource
:
ipResources
)
{
stringBuilder
.
append
(
"users \""
+
ipResource
.
getProxyUsername
()
+
":CL:"
+
ipResource
.
getProxyPassword
()
+
"\"\n"
);
}
stringBuilder
.
append
(
"\nauth strong\n"
);
for
(
IpResource
ipResource
:
ipResources
)
{
stringBuilder
.
append
(
"allow "
+
ipResource
.
getProxyUsername
()
+
"\n"
);
stringBuilder
.
append
(
"parent 1000 "
+
specialLine
.
getProxyProtocol
().
get
(
0
)
+
" "
+
ipResource
.
getAddr
()
+
" "
+
ipResource
.
getPort
().
get
(
1
)
+
" fangguanlianbrowser "
+
ipResource
.
getPassword
()
+
"\n"
);
}
stringBuilder
.
append
(
"\nallow none\nproxy -p20004\nsocks-p20005"
);
bw
.
write
(
stringBuilder
.
toString
());
bw
.
flush
();
bw
.
close
();
log
.
info
(
"成功写入文件"
);
}
catch
(
Exception
e
)
{
log
.
error
(
"出错了"
);
log
.
error
(
e
.
getMessage
());
}
}
}
}
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