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
0840cd65
Commit
0840cd65
authored
Mar 23, 2020
by
renjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
本地ip
parent
f542b14e
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
251 additions
and
53 deletions
+251
-53
IpControlloer.java
...dgec/browserbackend/browser/controller/IpControlloer.java
+35
-1
ShopController.java
...gec/browserbackend/browser/controller/ShopController.java
+2
-2
IpResource.java
...a/com/edgec/browserbackend/browser/domain/IpResource.java
+1
-1
Vendor.java
.../java/com/edgec/browserbackend/browser/domain/Vendor.java
+1
-1
IpResourceDto.java
...a/com/edgec/browserbackend/browser/dto/IpResourceDto.java
+1
-0
IpResourceRequestDto.java
...dgec/browserbackend/browser/dto/IpResourceRequestDto.java
+10
-0
IpResourceUpdateDto.java
...edgec/browserbackend/browser/dto/IpResourceUpdateDto.java
+34
-0
ShopRequestDto.java
.../com/edgec/browserbackend/browser/dto/ShopRequestDto.java
+10
-0
IpResourceRepository.java
...owserbackend/browser/repository/IpResourceRepository.java
+3
-0
IpResourceServiceImpl.java
...erbackend/browser/service/Impl/IpResourceServiceImpl.java
+119
-37
ShopServiceImpl.java
.../browserbackend/browser/service/Impl/ShopServiceImpl.java
+27
-8
IpResourceService.java
...gec/browserbackend/browser/service/IpResourceService.java
+5
-1
ShopService.java
...com/edgec/browserbackend/browser/service/ShopService.java
+3
-2
No files found.
src/main/java/com/edgec/browserbackend/browser/controller/IpControlloer.java
View file @
0840cd65
...
...
@@ -71,7 +71,7 @@ public class IpControlloer {
public
ResultDto
deleteIp
(
Principal
principal
,
@RequestBody
IpResourceRequestDto
ipResourceRequestDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
try
{
resultDto
.
setData
(
ipResourceService
.
deleteIp
(
principal
.
getName
(),
ipResourceRequestDto
.
getAddr
()
));
resultDto
.
setData
(
ipResourceService
.
deleteIp
(
principal
.
getName
(),
ipResourceRequestDto
));
resultDto
.
setStatus
(
0
);
}
catch
(
Exception
e
)
{
resultDto
.
setStatus
(-
1
);
...
...
@@ -118,4 +118,38 @@ public class IpControlloer {
}
return
resultDto
;
}
@RequestMapping
(
value
=
"/update"
,
method
=
RequestMethod
.
POST
)
public
ResultDto
updateIp
(
Principal
principal
,
@RequestBody
IpResourceUpdateDto
ipResourceUpdateDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
try
{
ipResourceService
.
updateIp
(
principal
.
getName
(),
ipResourceUpdateDto
);
resultDto
.
setStatus
(
0
);
}
catch
(
Exception
e
)
{
resultDto
.
setStatus
(-
1
);
Map
<
String
,
Object
>
statusInfo
=
new
HashMap
<>();
statusInfo
.
put
(
"code"
,
80001
);
statusInfo
.
put
(
"message"
,
e
.
getMessage
());
resultDto
.
setStatusInfo
(
statusInfo
);
}
return
resultDto
;
}
@RequestMapping
(
value
=
"/query"
,
method
=
RequestMethod
.
POST
)
public
ResultDto
queryIp
(
Principal
principal
,
@RequestBody
IpResourceUpdateDto
ipResourceUpdateDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
try
{
HashMap
<
String
,
Boolean
>
map
=
new
HashMap
<>();
map
.
put
(
"found"
,
ipResourceService
.
queryIpExist
(
principal
.
getName
(),
ipResourceUpdateDto
));
resultDto
.
setData
(
map
);
resultDto
.
setStatus
(
0
);
}
catch
(
Exception
e
)
{
resultDto
.
setStatus
(-
1
);
Map
<
String
,
Object
>
statusInfo
=
new
HashMap
<>();
statusInfo
.
put
(
"code"
,
80001
);
statusInfo
.
put
(
"message"
,
e
.
getMessage
());
resultDto
.
setStatusInfo
(
statusInfo
);
}
return
resultDto
;
}
}
src/main/java/com/edgec/browserbackend/browser/controller/ShopController.java
View file @
0840cd65
...
...
@@ -115,7 +115,7 @@ public class ShopController {
public
ResultDto
bindShop
(
Principal
principal
,
@RequestBody
ShopRequestDto
shopRequestDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
try
{
shopService
.
bindShop
(
principal
.
getName
(),
shopRequestDto
.
getShopId
(),
shopRequestDto
.
getIpAddr
()
);
shopService
.
bindShop
(
principal
.
getName
(),
shopRequestDto
);
resultDto
.
setStatus
(
0
);
}
catch
(
ClientRequestException
e
)
{
resultDto
.
setStatus
(-
1
);
...
...
@@ -131,7 +131,7 @@ public class ShopController {
public
ResultDto
unBindShop
(
Principal
principal
,
@RequestBody
ShopRequestDto
shopRequestDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
try
{
shopService
.
unBindShop
(
principal
.
getName
(),
shopRequestDto
.
getShopId
(),
shopRequestDto
.
getIpAddr
()
);
shopService
.
unBindShop
(
principal
.
getName
(),
shopRequestDto
);
resultDto
.
setStatus
(
0
);
}
catch
(
ClientRequestException
e
)
{
resultDto
.
setStatus
(-
1
);
...
...
src/main/java/com/edgec/browserbackend/browser/domain/IpResource.java
View file @
0840cd65
...
...
@@ -19,7 +19,7 @@ public class IpResource {
private
Vendor
vendor
;
private
String
region
;
private
String
regionCn
;
//0:正常, 1:已过期, 2:即将过期, 3:正在分配
//0:正常, 1:已过期, 2:即将过期, 3:正在分配
, 4:未使用, 5:已失效;
private
int
status
;
private
List
<
String
>
port
;
private
long
purchasedTime
;
...
...
src/main/java/com/edgec/browserbackend/browser/domain/Vendor.java
View file @
0840cd65
...
...
@@ -6,7 +6,7 @@ package com.edgec.browserbackend.browser.domain;
* @CreateTime 2020/3/12 4:01 下午
**/
public
enum
Vendor
{
aliyun
(
"阿里云"
),
JDCLOUD
(
"京东云"
),
aws
(
"亚马逊云"
),
awscn
(
"亚马逊中国"
),
tencent
(
"腾讯云"
);
aliyun
(
"阿里云"
),
JDCLOUD
(
"京东云"
),
aws
(
"亚马逊云"
),
awscn
(
"亚马逊中国"
),
tencent
(
"腾讯云"
)
,
local
(
"本地"
)
;
private
String
value
;
...
...
src/main/java/com/edgec/browserbackend/browser/dto/IpResourceDto.java
View file @
0840cd65
...
...
@@ -11,6 +11,7 @@ public class IpResourceDto {
private
String
addr
;
private
Vendor
vendor
;
private
String
region
;
//0:正常, 1:已过期, 2:即将过期, 3:正在分配, 4:未使用
private
int
status
;
private
List
<
String
>
port
;
private
long
purchasedTIme
;
...
...
src/main/java/com/edgec/browserbackend/browser/dto/IpResourceRequestDto.java
View file @
0840cd65
...
...
@@ -34,6 +34,8 @@ public class IpResourceRequestDto {
private
List
<
String
>
addr
=
new
ArrayList
<>();
private
List
<
String
>
ipId
=
new
ArrayList
<>();
public
String
getName
()
{
return
name
;
}
...
...
@@ -165,4 +167,12 @@ public class IpResourceRequestDto {
public
void
setRegionCn
(
String
regionCn
)
{
this
.
regionCn
=
regionCn
;
}
public
List
<
String
>
getIpId
()
{
return
ipId
;
}
public
void
setIpId
(
List
<
String
>
ipId
)
{
this
.
ipId
=
ipId
;
}
}
src/main/java/com/edgec/browserbackend/browser/dto/IpResourceUpdateDto.java
0 → 100644
View file @
0840cd65
package
com
.
edgec
.
browserbackend
.
browser
.
dto
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
IpResourceUpdateDto
{
private
String
ipId
;
private
String
addr
;
private
int
status
;
public
String
getAddr
()
{
return
addr
;
}
public
void
setIpId
(
String
ipId
)
{
this
.
ipId
=
ipId
;
}
public
String
getIpId
()
{
return
ipId
;
}
public
void
setAddr
(
String
addr
)
{
this
.
addr
=
addr
;
}
public
int
getStatus
()
{
return
status
;
}
public
void
setStatus
(
int
status
)
{
this
.
status
=
status
;
}
}
src/main/java/com/edgec/browserbackend/browser/dto/ShopRequestDto.java
View file @
0840cd65
...
...
@@ -15,6 +15,8 @@ public class ShopRequestDto {
private
String
ipAddr
;
private
String
ipId
;
private
String
group
;
private
String
toGroup
;
...
...
@@ -116,4 +118,12 @@ public class ShopRequestDto {
public
void
setShopId
(
String
shopId
)
{
this
.
shopId
=
shopId
;
}
public
String
getIpId
()
{
return
ipId
;
}
public
void
setIpId
(
String
ipId
)
{
this
.
ipId
=
ipId
;
}
}
src/main/java/com/edgec/browserbackend/browser/repository/IpResourceRepository.java
View file @
0840cd65
...
...
@@ -9,8 +9,11 @@ import org.springframework.data.mongodb.repository.MongoRepository;
import
java.util.List
;
public
interface
IpResourceRepository
extends
MongoRepository
<
IpResource
,
String
>
{
IpResource
findByAddr
(
String
addr
);
IpResource
findByAddrAndIsDeleted
(
String
addr
,
boolean
isDeleted
);
IpResource
findByIdAndIsDeleted
(
String
id
,
boolean
isDeleted
);
List
<
IpResource
>
findByIdInAndIsDeleted
(
List
<
String
>
ipIds
,
boolean
isDeleted
);
Page
<
IpResource
>
findByIdInAndIsDeleted
(
List
<
String
>
ipIds
,
boolean
isDeleted
,
Pageable
pageable
);
List
<
IpResource
>
findByOwnerAndIsDeletedAndShopIdIsNull
(
String
owner
,
boolean
isDeleted
);
List
<
IpResource
>
findByOwnerAndStatusAndIsDeletedAndShopIdIsNull
(
String
owner
,
int
status
,
boolean
isDeleted
);
List
<
IpResource
>
findByStatusAndIdInAndIsDeleted
(
int
status
,
List
<
String
>
ipIds
,
boolean
isDeleted
);
...
...
src/main/java/com/edgec/browserbackend/browser/service/Impl/IpResourceServiceImpl.java
View file @
0840cd65
...
...
@@ -31,6 +31,7 @@ import org.springframework.web.client.RestTemplate;
import
java.io.File
;
import
java.time.Instant
;
import
java.time.ZoneOffset
;
import
java.util.*
;
import
java.util.concurrent.CompletableFuture
;
import
java.util.concurrent.atomic.AtomicInteger
;
...
...
@@ -192,13 +193,20 @@ public class IpResourceServiceImpl implements IpResourceService {
for
(
int
i
=
0
;
i
<
ipResourceRequestDto
.
getAmount
();
i
++)
{
IpResource
ipResource
=
new
IpResource
();
if
(!
ipResourceRequestDto
.
getVendor
().
equals
(
"local"
))
{
ipResource
.
setAddr
(
""
);
ipResource
.
setIpType
(
IpType
.
VENDOR
);
ipResource
.
setVendor
(
Vendor
.
valueOf
(
ipResourceRequestDto
.
getVendor
()));
ipResource
.
setStatus
(
3
);
}
else
{
ipResource
.
setAddr
(
"本地Ip未使用"
);
ipResource
.
setIpType
(
IpType
.
LOCAL
);
ipResource
.
setVendor
(
Vendor
.
valueOf
(
ipResourceRequestDto
.
getVendor
()));
ipResource
.
setStatus
(
4
);
}
ipResource
.
setPurchasedTime
(
Instant
.
now
().
toEpochMilli
());
ipResource
.
setValidTime
(
Instant
.
now
().
plusSeconds
(
3600
*
24
*
30
).
toEpochMilli
());
ipResource
.
setPort
(
port
);
ipResource
.
setVendor
(
Vendor
.
valueOf
(
ipResourceRequestDto
.
getVendor
()));
ipResource
.
setStatus
(
3
);
ipResource
.
setUsername
(
USERNAME
);
if
(
account
.
getParent
()
!=
null
)
ipResource
.
setUserParent
(
account
.
getParent
());
...
...
@@ -218,6 +226,7 @@ public class IpResourceServiceImpl implements IpResourceService {
IpTransactionDto
ipTransactionDto
=
new
IpTransactionDto
(
ipTransaction
);
ipTransactionDto
.
setIpResourceDtos
(
ipResourceDtos
);
if
(!
ipResourceRequestDto
.
getVendor
().
equals
(
"local"
))
{
CompletableFuture
.
runAsync
(()
->
{
try
{
Thread
.
sleep
(
2000
);
...
...
@@ -285,6 +294,10 @@ public class IpResourceServiceImpl implements IpResourceService {
logger
.
error
(
e
.
getMessage
());
}
},
ThreadPoolUtils
.
taskExecutorPool
);
}
else
{
ipTransaction
.
setStatus
(
1
);
ipTransactionRepository
.
save
(
ipTransaction
);
}
IpChargeRequestDto
ipChargeRequestDto
=
buildIpChargeRequestDto
(
ipResourceRequestDto
,
1
);
accountService
.
chargeByMoney
(
username
,
newprice
*
ipChargeRequestDto
.
getAmount
(),
ipChargeRequestDto
);
...
...
@@ -318,6 +331,9 @@ public class IpResourceServiceImpl implements IpResourceService {
throw
new
ClientRequestException
(
AccountErrorCode
.
NOTENOUGHBALANCE
);
}
IpOperationResultDto
ipOperationResultDto
=
new
IpOperationResultDto
();
if
(
ipResourceRequestDto
.
getAddr
()
!=
null
&&
ipResourceRequestDto
.
getAddr
().
size
()
>
0
)
{
RestTemplate
restTemplate
=
new
RestTemplate
();
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"iplist"
,
ipResourceRequestDto
.
getAddr
());
...
...
@@ -335,7 +351,6 @@ public class IpResourceServiceImpl implements IpResourceService {
logger
.
error
(
renewIpResultDto
.
getErrorCode
());
throw
new
ClientRequestException
(
BrowserErrorCode
.
UNKNOWN
);
}
IpOperationResultDto
ipOperationResultDto
=
new
IpOperationResultDto
();
renewIpResultDto
.
getIplist
().
forEach
(
x
->
{
IpResource
ipResource
=
ipResourceRepository
.
findByAddrAndIsDeleted
(
x
.
getIp
(),
false
);
...
...
@@ -356,18 +371,42 @@ public class IpResourceServiceImpl implements IpResourceService {
});
ipOperationResultDto
.
setFailList
(
failedList
);
}
if
(
ipResourceRequestDto
.
getIpId
()
!=
null
&&
ipResourceRequestDto
.
getIpId
().
size
()
>
0
)
{
ipResourceRequestDto
.
getIpId
().
forEach
(
x
->
{
IpResource
ipResource
=
ipResourceRepository
.
findByIdAndIsDeleted
(
x
,
false
);
List
<
String
>
vendorPrices
=
priceList
.
get
(
ipResource
.
getRegionCn
());
String
price
=
vendorPrices
.
stream
()
.
filter
(
vendorprice
->
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
.
map
(
vendorprice
->
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
)).
collect
(
Collectors
.
joining
());
double
newprice1
=
ipResourceRequestDto
.
getUnit
().
equals
(
"week"
)
?
(
Integer
.
valueOf
(
price
)
/
3
)
:
Integer
.
valueOf
(
price
);
IpChargeRequestDto
ipChargeRequestDto
=
buildIpChargeRequestDto
(
ipResourceRequestDto
,
2
);
accountService
.
chargeByMoney
(
username
,
newprice1
,
ipChargeRequestDto
);
ipResource
.
setValidTime
(
Instant
.
ofEpochMilli
(
ipResource
.
getValidTime
()).
atZone
(
ZoneOffset
.
UTC
)
.
plusMonths
(
ipResourceRequestDto
.
getPeriod
()).
toInstant
().
toEpochMilli
());
ipResourceRepository
.
save
(
ipResource
);
ipOperationResultDto
.
getSuccessList
().
add
(
x
);
failedList
.
remove
(
x
);
});
}
else
{
throw
new
ClientRequestException
(
BrowserErrorCode
.
INFORMATIONNOTCOMPELETE
);
}
return
ipOperationResultDto
;
}
@Override
public
IpOperationResultDto
deleteIp
(
String
username
,
List
<
String
>
ipAddrs
)
{
public
IpOperationResultDto
deleteIp
(
String
username
,
IpResourceRequestDto
ipResourceRequestDto
)
{
String
URL
=
(
profiles
.
equals
(
"dev"
)
||
profiles
.
equals
(
"staging"
))?
TESTURL
:
CLOUDAMURL
;
Account
account
=
accountRepository
.
findByName
(
username
);
if
(
account
==
null
)
throw
new
ClientRequestException
(
AccountErrorCode
.
NAMENOTEXIST
);
IpOperationResultDto
ipOperationResultDto
=
new
IpOperationResultDto
();
ipAddrs
.
forEach
(
ipAddr
->
{
if
(
ipResourceRequestDto
.
getAddr
()
!=
null
&&
ipResourceRequestDto
.
getAddr
().
size
()
>
0
)
{
ipResourceRequestDto
.
getAddr
().
forEach
(
ipAddr
->
{
IpResource
ipResource
=
ipResourceRepository
.
findByAddrAndIsDeleted
(
ipAddr
,
false
);
if
(
ipResource
==
null
)
{
ipOperationResultDto
.
getFailList
().
add
(
ipAddr
);
...
...
@@ -411,6 +450,42 @@ public class IpResourceServiceImpl implements IpResourceService {
return
;
}
});
}
if
(
ipResourceRequestDto
.
getIpId
()
!=
null
&&
ipResourceRequestDto
.
getIpId
().
size
()
>
0
)
{
ipResourceRequestDto
.
getIpId
().
forEach
(
ipId
->
{
IpResource
ipResource
=
ipResourceRepository
.
findByIdAndIsDeleted
(
ipId
,
false
);
if
(
ipResource
==
null
)
{
ipOperationResultDto
.
getFailList
().
add
(
ipId
);
return
;
}
UserShop
userShop
=
null
;
if
(
ipResource
.
getShopId
()
!=
null
)
{
userShop
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
ipResource
.
getShopId
());
if
(
userShop
==
null
)
{
ipOperationResultDto
.
getFailList
().
add
(
ipId
);
return
;
}
}
else
if
(!
ipResource
.
getOwner
().
equals
(
username
))
{
ipOperationResultDto
.
getFailList
().
add
(
ipId
);
return
;
}
ipResource
.
setDeleted
(
true
);
ipResourceRepository
.
save
(
ipResource
);
if
(
userShop
!=
null
){
Shop
shop
=
shopRepository
.
findById
(
ipResource
.
getShopId
()).
orElse
(
null
);
if
(
shop
!=
null
)
{
shop
.
setIp
(
null
);
shop
.
setIpId
(
null
);
shop
.
setIpRegion
(
null
);
shopRepository
.
save
(
shop
);
}
userShop
.
setIpId
(
null
);
userShopRepository
.
save
(
userShop
);
}
ipOperationResultDto
.
getSuccessList
().
add
(
ipId
);
});
}
return
ipOperationResultDto
;
}
...
...
@@ -459,37 +534,7 @@ public class IpResourceServiceImpl implements IpResourceService {
else
if
(
ipFilterDto
!=
null
&&
StringUtils
.
isNotBlank
(
ipFilterDto
.
getVendor
()))
{
ipResources1
=
ipResourceRepository
.
findByVendorLikeAndIdInAndIsDeletedOrderByPurchasedTimeDesc
(
ipFilterDto
.
getVendor
(),
allIpIds
,
false
,
pageable
);
}
else
{
ipResources
.
forEach
(
x
->
{
ShopDto
shopDto
;
if
(
x
.
getShopId
()
==
null
)
{
shopDto
=
new
ShopDto
();
}
else
{
Shop
shop
=
shopRepository
.
findById
(
x
.
getShopId
()).
orElse
(
null
);
if
(
shop
!=
null
)
shopDto
=
new
ShopDto
(
shop
);
else
shopDto
=
new
ShopDto
();
}
if
(
StringUtils
.
isNotBlank
(
x
.
getAddr
()))
{
if
(
x
.
getValidTime
()
<=
Instant
.
now
().
plusSeconds
(
60
*
60
*
24
*
7
).
toEpochMilli
()
&&
x
.
getValidTime
()
>
Instant
.
now
().
toEpochMilli
())
{
x
.
setStatus
(
2
);
ipResourceRepository
.
save
(
x
);
}
else
if
(
x
.
getValidTime
()
<=
Instant
.
now
().
minusSeconds
(
60
*
60
*
24
*
7
).
toEpochMilli
())
{
deleteIp
(
username
,
Arrays
.
asList
(
x
.
getAddr
()));
return
;
}
else
if
(
x
.
getValidTime
()
<=
Instant
.
now
().
toEpochMilli
())
{
x
.
setStatus
(
1
);
ipResourceRepository
.
save
(
x
);
}
else
{
x
.
setStatus
(
0
);
ipResourceRepository
.
save
(
x
);
}
}
ipResourceDtos
.
add
(
new
IpResourceDto
(
x
,
shopDto
));
});
ipResources1
=
ipResourceRepository
.
findByIdInAndIsDeleted
(
allIpIds
,
false
,
pageable
);
}
if
(
ipResources1
!=
null
)
{
ipResources1
.
getContent
().
forEach
(
x
->
{
...
...
@@ -509,7 +554,15 @@ public class IpResourceServiceImpl implements IpResourceService {
ipResourceRepository
.
save
(
x
);
}
else
if
(
x
.
getValidTime
()
<=
Instant
.
now
().
minusSeconds
(
60
*
60
*
24
*
7
).
toEpochMilli
())
{
deleteIp
(
username
,
Arrays
.
asList
(
x
.
getAddr
()));
if
(
x
.
getIpType
()
==
IpType
.
VENDOR
)
{
IpResourceRequestDto
ipResourceRequestDto
=
new
IpResourceRequestDto
();
ipResourceRequestDto
.
setAddr
(
Arrays
.
asList
(
x
.
getAddr
()));
deleteIp
(
username
,
ipResourceRequestDto
);
}
else
{
IpResourceRequestDto
ipResourceRequestDto
=
new
IpResourceRequestDto
();
ipResourceRequestDto
.
setIpId
(
Arrays
.
asList
(
x
.
getId
()));
deleteIp
(
username
,
ipResourceRequestDto
);
}
return
;
}
else
if
(
x
.
getValidTime
()
<=
Instant
.
now
().
toEpochMilli
())
{
...
...
@@ -615,4 +668,33 @@ public class IpResourceServiceImpl implements IpResourceService {
ipSummary
.
setTotal
(
unbind
.
size
());
return
ipSummary
;
}
@Override
public
void
updateIp
(
String
username
,
IpResourceUpdateDto
ipResourceUpdateDto
)
{
Account
account
=
accountRepository
.
findByName
(
username
);
if
(
account
==
null
)
throw
new
ClientRequestException
(
AccountErrorCode
.
NAMENOTEXIST
);
if
(
account
.
getPermission
()
<
8
)
throw
new
ClientRequestException
(
AccountErrorCode
.
NOPERMISSION
);
IpResource
ipResource
=
ipResourceRepository
.
findByIdAndIsDeleted
(
ipResourceUpdateDto
.
getIpId
(),
false
);
if
(
ipResource
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
IPNOTEXIST
);
if
(
StringUtils
.
isNotBlank
(
ipResourceUpdateDto
.
getAddr
()))
{
ipResource
.
setAddr
(
ipResourceUpdateDto
.
getAddr
());
}
ipResource
.
setStatus
(
ipResourceUpdateDto
.
getStatus
());
ipResourceRepository
.
save
(
ipResource
);
}
@Override
public
boolean
queryIpExist
(
String
username
,
IpResourceUpdateDto
ipResourceUpdateDto
)
{
Account
account
=
accountRepository
.
findByName
(
username
);
if
(
account
==
null
)
throw
new
ClientRequestException
(
AccountErrorCode
.
NAMENOTEXIST
);
IpResource
ipResource
=
ipResourceRepository
.
findByAddr
(
ipResourceUpdateDto
.
getAddr
());
if
(
ipResource
!=
null
)
{
return
true
;
}
return
false
;
}
}
src/main/java/com/edgec/browserbackend/browser/service/Impl/ShopServiceImpl.java
View file @
0840cd65
...
...
@@ -201,7 +201,10 @@ public class ShopServiceImpl implements ShopService {
if
(
shop
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
SHOPNOTEXIST
);
if
(
shop
.
getIpId
()
!=
null
&&
shop
.
getIp
()
!=
null
)
{
unBindShop
(
username
,
shopId
,
shop
.
getIp
());
ShopRequestDto
shopRequestDto
=
new
ShopRequestDto
();
shopRequestDto
.
setShopId
(
shopId
);
shopRequestDto
.
setIpId
(
shop
.
getIpId
());
unBindShop
(
username
,
shopRequestDto
);
}
boolean
result
=
userShopRepository
.
deleteByUsernameAndShopId
(
username
,
shopId
);
if
(
result
)
{
...
...
@@ -212,7 +215,8 @@ public class ShopServiceImpl implements ShopService {
}
@Override
public
void
bindShop
(
String
username
,
String
shopId
,
String
ipAddr
)
{
public
void
bindShop
(
String
username
,
ShopRequestDto
shopRequestDto
)
{
String
shopId
=
shopRequestDto
.
getShopId
();
Account
account
=
accountRepository
.
findByName
(
username
);
if
(
account
==
null
)
{
throw
new
ClientRequestException
(
AccountErrorCode
.
NAMENOTEXIST
);
...
...
@@ -224,14 +228,21 @@ public class ShopServiceImpl implements ShopService {
Shop
shop
=
shopRepository
.
findById
(
shopId
).
orElse
(
null
);
if
(
shop
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
SHOPNOTEXIST
);
IpResource
ipResource
=
null
;
if
(
StringUtils
.
isNotBlank
(
shopRequestDto
.
getIpAddr
()))
{
ipResource
=
ipResourceRepository
.
findByAddrAndIsDeleted
(
shopRequestDto
.
getIpAddr
(),
false
);
}
else
if
(
StringUtils
.
isNotBlank
(
shopRequestDto
.
getIpId
()))
{
ipResource
=
ipResourceRepository
.
findByIdAndIsDeleted
(
shopRequestDto
.
getIpId
(),
false
);
}
if
(
shop
.
getIpId
()
!=
null
&&
shop
.
getIp
()
!=
null
)
{
unBindShop
(
username
,
shop
Id
,
shop
.
getIp
()
);
unBindShop
(
username
,
shop
RequestDto
);
}
IpResource
ipResource
=
ipResourceRepository
.
findByAddrAndIsDeleted
(
ipAddr
,
false
);
if
(
ipResource
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
IPNOTEXIST
);
try
{
shop
.
setIp
(
ip
Addr
);
shop
.
setIp
(
ip
Resource
.
getAddr
()
);
shop
.
setIpId
(
ipResource
.
getId
());
shop
.
setIpRegion
(
ipResource
.
getRegion
());
shopRepository
.
save
(
shop
);
...
...
@@ -250,7 +261,10 @@ public class ShopServiceImpl implements ShopService {
}
@Override
public
void
unBindShop
(
String
username
,
String
shopId
,
String
ipAddr
)
{
public
void
unBindShop
(
String
username
,
ShopRequestDto
shopRequestDto
)
{
String
shopId
=
null
;
if
(
StringUtils
.
isNotBlank
(
shopRequestDto
.
getShopId
()))
shopId
=
shopRequestDto
.
getShopId
();
Account
account
=
accountRepository
.
findByName
(
username
);
if
(
account
==
null
)
{
throw
new
ClientRequestException
(
AccountErrorCode
.
NAMENOTEXIST
);
...
...
@@ -262,10 +276,15 @@ public class ShopServiceImpl implements ShopService {
Shop
shop
=
shopRepository
.
findById
(
shopId
).
orElse
(
null
);
if
(
shop
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
SHOPNOTEXIST
);
IpResource
ipResource
=
ipResourceRepository
.
findByAddrAndIsDeleted
(
ipAddr
,
false
);
IpResource
ipResource
=
null
;
if
(
StringUtils
.
isNotBlank
(
shopRequestDto
.
getIpAddr
()))
{
ipResource
=
ipResourceRepository
.
findByAddrAndIsDeleted
(
shopRequestDto
.
getIpAddr
(),
false
);
}
else
if
(
StringUtils
.
isNotBlank
(
shopRequestDto
.
getIpId
()))
{
ipResource
=
ipResourceRepository
.
findByIdAndIsDeleted
(
shopRequestDto
.
getIpId
(),
false
);
}
if
(
ipResource
==
null
)
throw
new
ClientRequestException
(
BrowserErrorCode
.
IPNOTEXIST
);
if
(!
ip
Addr
.
equals
(
shop
.
getIp
()))
if
(!
ip
Resource
.
getId
().
equals
(
shop
.
getIpId
()))
throw
new
ClientRequestException
(
BrowserErrorCode
.
IPNOTBINDTOSHOP
);
try
{
shop
.
setIp
(
null
);
...
...
src/main/java/com/edgec/browserbackend/browser/service/IpResourceService.java
View file @
0840cd65
...
...
@@ -11,7 +11,7 @@ public interface IpResourceService {
IpOperationResultDto
renewIp
(
String
username
,
IpResourceRequestDto
ipResourceRequestDto
)
throws
Exception
;
IpOperationResultDto
deleteIp
(
String
username
,
List
<
String
>
ipAddrs
)
throws
Exception
;
IpOperationResultDto
deleteIp
(
String
username
,
IpResourceRequestDto
ipResourceRequestDto
)
throws
Exception
;
IpPageResultDto
getIpList
(
String
username
,
int
groupType
,
int
page
,
int
amount
,
IpFilterDto
ipFilterDto
);
...
...
@@ -24,4 +24,8 @@ public interface IpResourceService {
IpTransactionDto
queryTransaction
(
String
username
,
String
transactionId
);
IpSummary
getIpSummary
(
String
username
);
void
updateIp
(
String
username
,
IpResourceUpdateDto
ipResourceUpdateDto
);
boolean
queryIpExist
(
String
username
,
IpResourceUpdateDto
ipResourceUpdateDto
);
}
src/main/java/com/edgec/browserbackend/browser/service/ShopService.java
View file @
0840cd65
...
...
@@ -4,6 +4,7 @@ import com.edgec.browserbackend.browser.domain.Shop;
import
com.edgec.browserbackend.browser.domain.ShopSummary
;
import
com.edgec.browserbackend.browser.dto.ShopFilterDto
;
import
com.edgec.browserbackend.browser.dto.ShopPageResultDto
;
import
com.edgec.browserbackend.browser.dto.ShopRequestDto
;
import
com.edgec.browserbackend.browser.dto.ShopResultDto
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -20,9 +21,9 @@ public interface ShopService {
void
deleteShop
(
String
username
,
String
shopId
);
void
bindShop
(
String
username
,
S
tring
shopId
,
String
ipAddr
);
void
bindShop
(
String
username
,
S
hopRequestDto
shopRequestDto
);
void
unBindShop
(
String
username
,
S
tring
shopId
,
String
ipAddr
);
void
unBindShop
(
String
username
,
S
hopRequestDto
shopRequestDto
);
void
transferShop
(
String
username
,
String
shopId
,
String
groupId
);
...
...
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