Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Eladmin
Commits
40852235
"vscode:/vscode.git/clone" did not exist on "bc49df9d72d6fec8ea488c2597e62773cb502974"
Commit
40852235
authored
Nov 24, 2019
by
dqjdda
Browse files
Merge branch '2.4dev' into 2.3opt
parents
4681ca6e
776cee4b
Changes
89
Show whitespace changes
Inline
Side-by-side
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
repository/VerificationCodeRepository.java
→
eladmin-tools/src/main/java/me/zhengjie/repository/VerificationCodeRepository.java
View file @
40852235
package
me.zhengjie.
modules.tools.
repository
;
package
me.zhengjie.repository
;
import
me.zhengjie.
modules.tools.
domain.VerificationCode
;
import
me.zhengjie.domain.VerificationCode
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
/**
/**
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
rest/AliPayController.java
→
eladmin-tools/src/main/java/me/zhengjie/rest/AliPayController.java
View file @
40852235
package
me.zhengjie.
modules.tools.
rest
;
package
me.zhengjie.rest
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
me.zhengjie.annotation.AnonymousAccess
;
import
me.zhengjie.annotation.AnonymousAccess
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.
modules.tools.domain.AlipayConfig
;
import
me.zhengjie.
domain.vo.TradeVo
;
import
me.zhengjie.
modules.tools.domain.vo.TradeVo
;
import
me.zhengjie.
domain.AlipayConfig
;
import
me.zhengjie.
modules.tools.
utils.AliPayStatusEnum
;
import
me.zhengjie.utils.AliPayStatusEnum
;
import
me.zhengjie.
modules.tools.
utils.AlipayUtils
;
import
me.zhengjie.utils.AlipayUtils
;
import
me.zhengjie.
modules.tools.
service.AlipayService
;
import
me.zhengjie.service.AlipayService
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
rest/EmailController.java
→
eladmin-tools/src/main/java/me/zhengjie/rest/EmailController.java
View file @
40852235
package
me.zhengjie.
modules.tools.
rest
;
package
me.zhengjie.rest
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.
modules.tools.
domain.Email
Config
;
import
me.zhengjie.domain.
vo.
Email
Vo
;
import
me.zhengjie.
modules.tools.
domain.
vo.
Email
Vo
;
import
me.zhengjie.domain.Email
Config
;
import
me.zhengjie.
modules.tools.
service.EmailService
;
import
me.zhengjie.service.EmailService
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
rest/LocalStorageController.java
→
eladmin-tools/src/main/java/me/zhengjie/rest/LocalStorageController.java
View file @
40852235
package
me.zhengjie.
modules.tools.
rest
;
package
me.zhengjie.rest
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.
modules.tools.
domain.LocalStorage
;
import
me.zhengjie.domain.LocalStorage
;
import
me.zhengjie.
modules.tools.
service.LocalStorageService
;
import
me.zhengjie.service.LocalStorageService
;
import
me.zhengjie.
modules.tools.
service.dto.LocalStorageQueryCriteria
;
import
me.zhengjie.service.dto.LocalStorageQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
rest/PictureController.java
→
eladmin-tools/src/main/java/me/zhengjie/rest/PictureController.java
View file @
40852235
package
me.zhengjie.
modules.tools.
rest
;
package
me.zhengjie.rest
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.
modules.tools.
domain.Picture
;
import
me.zhengjie.domain.Picture
;
import
me.zhengjie.
modules.tools.
service.PictureService
;
import
me.zhengjie.service.PictureService
;
import
me.zhengjie.
modules.tools.
service.dto.PictureQueryCriteria
;
import
me.zhengjie.service.dto.PictureQueryCriteria
;
import
me.zhengjie.utils.SecurityUtils
;
import
me.zhengjie.utils.SecurityUtils
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
rest/QiniuController.java
→
eladmin-tools/src/main/java/me/zhengjie/rest/QiniuController.java
View file @
40852235
package
me.zhengjie.
modules.tools.
rest
;
package
me.zhengjie.rest
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.aop.log.Log
;
import
me.zhengjie.
modules.tools.
domain.QiniuConfig
;
import
me.zhengjie.domain.QiniuConfig
;
import
me.zhengjie.
modules.tools.service.dto.QiniuQueryCriteria
;
import
me.zhengjie.
domain.QiniuContent
;
import
me.zhengjie.
modules.tools.domain.QiniuContent
;
import
me.zhengjie.
service.dto.QiniuQueryCriteria
;
import
me.zhengjie.
modules.tools.
service.QiNiuService
;
import
me.zhengjie.service.QiNiuService
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
...
@@ -52,7 +52,7 @@ public class QiniuController {
...
@@ -52,7 +52,7 @@ public class QiniuController {
@Log
(
"导出数据"
)
@Log
(
"导出数据"
)
@ApiOperation
(
"导出数据"
)
@ApiOperation
(
"导出数据"
)
@GetMapping
(
value
=
"/download
/list
"
)
@GetMapping
(
value
=
"/download"
)
public
void
download
(
HttpServletResponse
response
,
QiniuQueryCriteria
criteria
)
throws
IOException
{
public
void
download
(
HttpServletResponse
response
,
QiniuQueryCriteria
criteria
)
throws
IOException
{
qiNiuService
.
downloadList
(
qiNiuService
.
queryAll
(
criteria
),
response
);
qiNiuService
.
downloadList
(
qiNiuService
.
queryAll
(
criteria
),
response
);
}
}
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
rest/VerificationCodeController.java
→
eladmin-tools/src/main/java/me/zhengjie/rest/VerificationCodeController.java
View file @
40852235
package
me.zhengjie.
modules.tools.
rest
;
package
me.zhengjie.rest
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
me.zhengjie.
modules.tools.
domain.VerificationCode
;
import
me.zhengjie.domain.VerificationCode
;
import
me.zhengjie.
modules.tools.
domain.vo.EmailVo
;
import
me.zhengjie.domain.vo.EmailVo
;
import
me.zhengjie.
modules.tools.
service.EmailService
;
import
me.zhengjie.service.EmailService
;
import
me.zhengjie.
modules.tools.
service.VerificationCodeService
;
import
me.zhengjie.service.VerificationCodeService
;
import
me.zhengjie.utils.ElAdminConstant
;
import
me.zhengjie.utils.ElAdminConstant
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/AlipayService.java
→
eladmin-tools/src/main/java/me/zhengjie/service/AlipayService.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service
;
package
me.zhengjie.service
;
import
me.zhengjie.
modules.tools.domain.AlipayConfig
;
import
me.zhengjie.
domain.vo.TradeVo
;
import
me.zhengjie.
modules.tools.domain.vo.TradeVo
;
import
me.zhengjie.
domain.AlipayConfig
;
/**
/**
* @author Zheng Jie
* @author Zheng Jie
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/EmailService.java
→
eladmin-tools/src/main/java/me/zhengjie/service/EmailService.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service
;
package
me.zhengjie.service
;
import
me.zhengjie.
modules.tools.
domain.Email
Config
;
import
me.zhengjie.domain.
vo.
Email
Vo
;
import
me.zhengjie.
modules.tools.
domain.
vo.
Email
Vo
;
import
me.zhengjie.domain.Email
Config
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.scheduling.annotation.Async
;
/**
/**
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/LocalStorageService.java
→
eladmin-tools/src/main/java/me/zhengjie/service/LocalStorageService.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service
;
package
me.zhengjie.service
;
import
me.zhengjie.
modules.tools.
domain.LocalStorage
;
import
me.zhengjie.domain.LocalStorage
;
import
me.zhengjie.
modules.tools.
service.dto.LocalStorageDTO
;
import
me.zhengjie.service.dto.LocalStorageDTO
;
import
me.zhengjie.
modules.tools.
service.dto.LocalStorageQueryCriteria
;
import
me.zhengjie.service.dto.LocalStorageQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/PictureService.java
→
eladmin-tools/src/main/java/me/zhengjie/service/PictureService.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service
;
package
me.zhengjie.service
;
import
me.zhengjie.
modules.tools.
domain.Picture
;
import
me.zhengjie.domain.Picture
;
import
me.zhengjie.
modules.tools.
service.dto.PictureQueryCriteria
;
import
me.zhengjie.service.dto.PictureQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/QiNiuService.java
→
eladmin-tools/src/main/java/me/zhengjie/service/QiNiuService.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service
;
package
me.zhengjie.service
;
import
me.zhengjie.
modules.tools.
domain.QiniuConfig
;
import
me.zhengjie.domain.QiniuConfig
;
import
me.zhengjie.
modules.tools.
domain.QiniuContent
;
import
me.zhengjie.domain.QiniuContent
;
import
me.zhengjie.
modules.tools.
service.dto.QiniuQueryCriteria
;
import
me.zhengjie.service.dto.QiniuQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/VerificationCodeService.java
→
eladmin-tools/src/main/java/me/zhengjie/service/VerificationCodeService.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service
;
package
me.zhengjie.service
;
import
me.zhengjie.
modules.tools.
domain.VerificationCode
;
import
me.zhengjie.domain.VerificationCode
;
import
me.zhengjie.
modules.tools.
domain.vo.EmailVo
;
import
me.zhengjie.domain.vo.EmailVo
;
/**
/**
* @author Zheng Jie
* @author Zheng Jie
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/dto/LocalStorageDTO.java
→
eladmin-tools/src/main/java/me/zhengjie/service/dto/LocalStorageDTO.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.dto
;
package
me.zhengjie.service.dto
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/dto/LocalStorageQueryCriteria.java
→
eladmin-tools/src/main/java/me/zhengjie/service/dto/LocalStorageQueryCriteria.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.dto
;
package
me.zhengjie.service.dto
;
import
lombok.Data
;
import
lombok.Data
;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.util.List
;
import
me.zhengjie.annotation.Query
;
import
me.zhengjie.annotation.Query
;
/**
/**
...
@@ -15,9 +17,6 @@ public class LocalStorageQueryCriteria{
...
@@ -15,9 +17,6 @@ public class LocalStorageQueryCriteria{
@Query
(
blurry
=
"name,suffix,type,operate,size"
)
@Query
(
blurry
=
"name,suffix,type,operate,size"
)
private
String
blurry
;
private
String
blurry
;
@Query
(
type
=
Query
.
Type
.
GREATER_THAN
,
propName
=
"createTime"
)
@Query
(
type
=
Query
.
Type
.
BETWEEN
)
private
Timestamp
startTime
;
private
List
<
Timestamp
>
createTime
;
@Query
(
type
=
Query
.
Type
.
LESS_THAN
,
propName
=
"createTime"
)
private
Timestamp
endTime
;
}
}
\ No newline at end of file
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/dto/PictureQueryCriteria.java
→
eladmin-tools/src/main/java/me/zhengjie/service/dto/PictureQueryCriteria.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.dto
;
package
me.zhengjie.service.dto
;
import
lombok.Data
;
import
lombok.Data
;
import
me.zhengjie.annotation.Query
;
import
me.zhengjie.annotation.Query
;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.util.List
;
/**
/**
* sm.ms图床
* sm.ms图床
...
@@ -20,9 +21,6 @@ public class PictureQueryCriteria{
...
@@ -20,9 +21,6 @@ public class PictureQueryCriteria{
@Query
(
type
=
Query
.
Type
.
INNER_LIKE
)
@Query
(
type
=
Query
.
Type
.
INNER_LIKE
)
private
String
username
;
private
String
username
;
@Query
(
type
=
Query
.
Type
.
GREATER_THAN
,
propName
=
"createTime"
)
@Query
(
type
=
Query
.
Type
.
BETWEEN
)
private
Timestamp
startTime
;
private
List
<
Timestamp
>
createTime
;
@Query
(
type
=
Query
.
Type
.
LESS_THAN
,
propName
=
"createTime"
)
private
Timestamp
endTime
;
}
}
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/dto/QiniuQueryCriteria.java
→
eladmin-tools/src/main/java/me/zhengjie/service/dto/QiniuQueryCriteria.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.dto
;
package
me.zhengjie.service.dto
;
import
lombok.Data
;
import
lombok.Data
;
import
me.zhengjie.annotation.Query
;
import
me.zhengjie.annotation.Query
;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.util.List
;
/**
/**
* @author Zheng Jie
* @author Zheng Jie
...
@@ -15,9 +16,6 @@ public class QiniuQueryCriteria{
...
@@ -15,9 +16,6 @@ public class QiniuQueryCriteria{
@Query
(
type
=
Query
.
Type
.
INNER_LIKE
)
@Query
(
type
=
Query
.
Type
.
INNER_LIKE
)
private
String
key
;
private
String
key
;
@Query
(
type
=
Query
.
Type
.
GREATER_THAN
,
propName
=
"updateTime"
)
@Query
(
type
=
Query
.
Type
.
BETWEEN
)
private
Timestamp
startTime
;
private
List
<
Timestamp
>
createTime
;
@Query
(
type
=
Query
.
Type
.
LESS_THAN
,
propName
=
"updateTime"
)
private
Timestamp
endTime
;
}
}
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/impl/AlipayServiceImpl.java
→
eladmin-tools/src/main/java/me/zhengjie/service/impl/AlipayServiceImpl.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.impl
;
package
me.zhengjie.service.impl
;
import
com.alipay.api.AlipayClient
;
import
com.alipay.api.AlipayClient
;
import
com.alipay.api.DefaultAlipayClient
;
import
com.alipay.api.DefaultAlipayClient
;
import
com.alipay.api.request.AlipayTradePagePayRequest
;
import
com.alipay.api.request.AlipayTradePagePayRequest
;
import
com.alipay.api.request.AlipayTradeWapPayRequest
;
import
com.alipay.api.request.AlipayTradeWapPayRequest
;
import
me.zhengjie.
modules.tools.domain.AlipayConfig
;
import
me.zhengjie.
domain.vo.TradeVo
;
import
me.zhengjie.
modules.tools.domain.vo.TradeVo
;
import
me.zhengjie.
domain.AlipayConfig
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.
modules.tools.
repository.AlipayRepository
;
import
me.zhengjie.repository.AlipayRepository
;
import
me.zhengjie.
modules.tools.
service.AlipayService
;
import
me.zhengjie.service.AlipayService
;
import
org.springframework.cache.annotation.CacheConfig
;
import
org.springframework.cache.annotation.CacheConfig
;
import
org.springframework.cache.annotation.CachePut
;
import
org.springframework.cache.annotation.CachePut
;
import
org.springframework.cache.annotation.Cacheable
;
import
org.springframework.cache.annotation.Cacheable
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/impl/EmailServiceImpl.java
→
eladmin-tools/src/main/java/me/zhengjie/service/impl/EmailServiceImpl.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.impl
;
package
me.zhengjie.service.impl
;
import
cn.hutool.extra.mail.Mail
;
import
cn.hutool.extra.mail.Mail
;
import
cn.hutool.extra.mail.MailAccount
;
import
cn.hutool.extra.mail.MailAccount
;
import
me.zhengjie.
modules.tools.
domain.EmailConfig
;
import
me.zhengjie.domain.EmailConfig
;
import
me.zhengjie.
modules.tools.
domain.vo.EmailVo
;
import
me.zhengjie.domain.vo.EmailVo
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.
modules.tools.
repository.EmailRepository
;
import
me.zhengjie.repository.EmailRepository
;
import
me.zhengjie.
modules.tools.
service.EmailService
;
import
me.zhengjie.service.EmailService
;
import
me.zhengjie.utils.EncryptUtils
;
import
me.zhengjie.utils.EncryptUtils
;
import
org.springframework.cache.annotation.CacheConfig
;
import
org.springframework.cache.annotation.CacheConfig
;
import
org.springframework.cache.annotation.CachePut
;
import
org.springframework.cache.annotation.CachePut
;
...
...
eladmin-tools/src/main/java/me/zhengjie/
modules/tools/
service/impl/LocalStorageServiceImpl.java
→
eladmin-tools/src/main/java/me/zhengjie/service/impl/LocalStorageServiceImpl.java
View file @
40852235
package
me.zhengjie.
modules.tools.
service.impl
;
package
me.zhengjie.service.impl
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
me.zhengjie.
modules.tools.
domain.LocalStorage
;
import
me.zhengjie.domain.LocalStorage
;
import
me.zhengjie.
modules.tools.
service.dto.LocalStorageDTO
;
import
me.zhengjie.service.dto.LocalStorageDTO
;
import
me.zhengjie.
modules.tools.
service.dto.LocalStorageQueryCriteria
;
import
me.zhengjie.service.dto.LocalStorageQueryCriteria
;
import
me.zhengjie.
modules.tools.
service.mapper.LocalStorageMapper
;
import
me.zhengjie.service.mapper.LocalStorageMapper
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.utils.*
;
import
me.zhengjie.utils.*
;
import
me.zhengjie.
modules.tools.
repository.LocalStorageRepository
;
import
me.zhengjie.repository.LocalStorageRepository
;
import
me.zhengjie.
modules.tools.
service.LocalStorageService
;
import
me.zhengjie.service.LocalStorageService
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.cache.annotation.CacheConfig
;
import
org.springframework.cache.annotation.CacheConfig
;
import
org.springframework.cache.annotation.CacheEvict
;
import
org.springframework.cache.annotation.CacheEvict
;
...
...
Prev
1
2
3
4
5
Next
Write
Preview
Supports
Markdown
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