Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fzm-joying
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
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
lei
fzm-joying
Commits
913a5e9e
Commit
913a5e9e
authored
Mar 04, 2022
by
33
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
代码规范,短信、实名认证增加测试配置
parent
232fed80
Hide whitespace changes
Inline
Side-by-side
Showing
106 changed files
with
995 additions
and
1150 deletions
+995
-1150
README.md
README.md
+2
-5
mvnw
joying-admin/mvnw
+131
-119
pom.xml
joying-admin/pom.xml
+1
-1
JoyingAdminApplication.java
...n/src/main/java/com/fzm/admin/JoyingAdminApplication.java
+0
-1
AdminController.java
...c/main/java/com/fzm/admin/controller/AdminController.java
+7
-4
EntrustShelfController.java
...java/com/fzm/admin/controller/EntrustShelfController.java
+4
-4
NftController.java
...src/main/java/com/fzm/admin/controller/NftController.java
+0
-1
RefundController.java
.../main/java/com/fzm/admin/controller/RefundController.java
+8
-8
UserController.java
...rc/main/java/com/fzm/admin/controller/UserController.java
+4
-1
application-dev.yml
joying-admin/src/main/resources/application-dev.yml
+0
-121
application-local.yml
joying-admin/src/main/resources/application-local.yml
+0
-122
application-nj.yml
joying-admin/src/main/resources/application-nj.yml
+17
-2
application-prod.yml
joying-admin/src/main/resources/application-prod.yml
+17
-2
application.yml
joying-admin/src/main/resources/application.yml
+122
-6
logback-spring.xml
joying-admin/src/main/resources/logback-spring.xml
+87
-45
LyAdminApplicationTests.java
.../src/test/java/com/fzm/admin/LyAdminApplicationTests.java
+0
-1
pom.xml
joying-common/pom.xml
+7
-1
InterceptorConfig.java
...rc/main/java/com/fzm/common/config/InterceptorConfig.java
+1
-0
MyMetaObjectHandler.java
.../main/java/com/fzm/common/config/MyMetaObjectHandler.java
+8
-6
RabbitMQConfig.java
...n/src/main/java/com/fzm/common/config/RabbitMQConfig.java
+0
-1
RedissonConfig.java
...n/src/main/java/com/fzm/common/config/RedissonConfig.java
+0
-1
SecurityConfig.java
...n/src/main/java/com/fzm/common/config/SecurityConfig.java
+1
-1
SystemConstant.java
...src/main/java/com/fzm/common/constant/SystemConstant.java
+1
-1
AuthPerson.java
...ommon/src/main/java/com/fzm/common/entity/AuthPerson.java
+0
-2
Category.java
...-common/src/main/java/com/fzm/common/entity/Category.java
+1
-1
Charge.java
...ng-common/src/main/java/com/fzm/common/entity/Charge.java
+0
-2
CopyrightApplyOwnerRelation.java
...va/com/fzm/common/entity/CopyrightApplyOwnerRelation.java
+1
-1
CopyrightAuthorityRelation.java
...ava/com/fzm/common/entity/CopyrightAuthorityRelation.java
+0
-1
Nft.java
joying-common/src/main/java/com/fzm/common/entity/Nft.java
+0
-1
NftChainInfo.java
...mon/src/main/java/com/fzm/common/entity/NftChainInfo.java
+0
-3
NftTransferRecord.java
...rc/main/java/com/fzm/common/entity/NftTransferRecord.java
+0
-3
Order.java
joying-common/src/main/java/com/fzm/common/entity/Order.java
+0
-1
CopyrightQueryRequest.java
...java/com/fzm/common/entity/dto/CopyrightQueryRequest.java
+0
-1
CommemorateNftVo.java
.../main/java/com/fzm/common/entity/vo/CommemorateNftVo.java
+0
-2
CopyrightApplyVo.java
.../main/java/com/fzm/common/entity/vo/CopyrightApplyVo.java
+0
-3
NftCertificateVo.java
.../main/java/com/fzm/common/entity/vo/NftCertificateVo.java
+0
-1
NftTransferVo.java
...src/main/java/com/fzm/common/entity/vo/NftTransferVo.java
+1
-2
OrderVo.java
...ommon/src/main/java/com/fzm/common/entity/vo/OrderVo.java
+0
-1
UserListVo.java
...on/src/main/java/com/fzm/common/entity/vo/UserListVo.java
+0
-1
AuthType.java
...g-common/src/main/java/com/fzm/common/enums/AuthType.java
+2
-3
IdCardVerificationResponse.java
...java/com/fzm/common/enums/IdCardVerificationResponse.java
+6
-6
OpusProperty.java
...mmon/src/main/java/com/fzm/common/enums/OpusProperty.java
+0
-1
GlobalExceptionHandler.java
.../fzm/common/exception/handler/GlobalExceptionHandler.java
+0
-3
AuthenticationInterceptor.java
...com/fzm/common/interceptor/AuthenticationInterceptor.java
+0
-1
AdminMapper.java
...mmon/src/main/java/com/fzm/common/mapper/AdminMapper.java
+0
-1
CollectionMapper.java
...src/main/java/com/fzm/common/mapper/CollectionMapper.java
+1
-0
CommemorateNftMapper.java
...main/java/com/fzm/common/mapper/CommemorateNftMapper.java
+0
-7
NftTransferRecordMapper.java
...n/java/com/fzm/common/mapper/NftTransferRecordMapper.java
+0
-1
OpusCategoryMapper.java
...c/main/java/com/fzm/common/mapper/OpusCategoryMapper.java
+0
-1
BufferedImageLuminanceSource.java
...va/com/fzm/common/model/BufferedImageLuminanceSource.java
+87
-85
ResponseModel.java
...mon/src/main/java/com/fzm/common/model/ResponseModel.java
+1
-1
LoginParam.java
...ommon/src/main/java/com/fzm/common/params/LoginParam.java
+0
-2
NftTransferParam.java
...src/main/java/com/fzm/common/params/NftTransferParam.java
+0
-1
DebugProperties.java
.../main/java/com/fzm/common/properties/DebugProperties.java
+17
-0
ObsProperties.java
...rc/main/java/com/fzm/common/properties/ObsProperties.java
+0
-1
WxPayProperties.java
.../main/java/com/fzm/common/properties/WxPayProperties.java
+0
-1
CommemorateNftService.java
...in/java/com/fzm/common/service/CommemorateNftService.java
+0
-1
EntrustShelfService.java
...main/java/com/fzm/common/service/EntrustShelfService.java
+0
-1
NftService.java
...mmon/src/main/java/com/fzm/common/service/NftService.java
+3
-2
NftTransferRecordService.java
...java/com/fzm/common/service/NftTransferRecordService.java
+0
-1
OpusCategoryService.java
...main/java/com/fzm/common/service/OpusCategoryService.java
+0
-1
WxPayService.java
...on/src/main/java/com/fzm/common/service/WxPayService.java
+0
-1
AuthPersonServiceImpl.java
...va/com/fzm/common/service/impl/AuthPersonServiceImpl.java
+0
-3
CommemorateNftServiceImpl.java
...om/fzm/common/service/impl/CommemorateNftServiceImpl.java
+0
-2
CopyrightAuthorServiceImpl.java
...m/fzm/common/service/impl/CopyrightAuthorServiceImpl.java
+0
-1
CopyrightAuthorityRelationServiceImpl.java
...n/service/impl/CopyrightAuthorityRelationServiceImpl.java
+0
-1
DraftServiceImpl.java
...in/java/com/fzm/common/service/impl/DraftServiceImpl.java
+0
-2
NftServiceImpl.java
...main/java/com/fzm/common/service/impl/NftServiceImpl.java
+2
-2
NftTransferRecordServiceImpl.java
...fzm/common/service/impl/NftTransferRecordServiceImpl.java
+0
-3
OrderServiceImpl.java
...in/java/com/fzm/common/service/impl/OrderServiceImpl.java
+4
-1
RefundServiceImpl.java
...n/java/com/fzm/common/service/impl/RefundServiceImpl.java
+0
-1
UserServiceImpl.java
...ain/java/com/fzm/common/service/impl/UserServiceImpl.java
+19
-5
WxPayServiceImpl.java
...in/java/com/fzm/common/service/impl/WxPayServiceImpl.java
+0
-3
CopyrightSignUtil.java
...src/main/java/com/fzm/common/utils/CopyrightSignUtil.java
+0
-6
PasswordUtil.java
...mmon/src/main/java/com/fzm/common/utils/PasswordUtil.java
+1
-9
QRCodeUtil.java
...common/src/main/java/com/fzm/common/utils/QRCodeUtil.java
+10
-20
SmsUtil.java
...ng-common/src/main/java/com/fzm/common/utils/SmsUtil.java
+18
-2
TencentApi.java
...common/src/main/java/com/fzm/common/utils/TencentApi.java
+0
-1
NftMapper.xml
joying-common/src/main/resources/mapper/NftMapper.xml
+6
-3
mvnw
joying-portal/mvnw
+131
-119
pom.xml
joying-portal/pom.xml
+1
-1
ChargeController.java
...main/java/com/fzm/portal/controller/ChargeController.java
+4
-1
CopyrightApplyController.java
...a/com/fzm/portal/controller/CopyrightApplyController.java
+1
-1
DraftController.java
.../main/java/com/fzm/portal/controller/DraftController.java
+0
-1
EntrustShelfController.java
...ava/com/fzm/portal/controller/EntrustShelfController.java
+0
-1
FileTemplateController.java
...ava/com/fzm/portal/controller/FileTemplateController.java
+0
-1
NftController.java
...rc/main/java/com/fzm/portal/controller/NftController.java
+0
-1
NftTransferRecordController.java
...om/fzm/portal/controller/NftTransferRecordController.java
+5
-3
UserController.java
...c/main/java/com/fzm/portal/controller/UserController.java
+1
-1
WxPayController.java
.../main/java/com/fzm/portal/controller/WxPayController.java
+0
-1
NftListener.java
...al/src/main/java/com/fzm/portal/listener/NftListener.java
+0
-2
OrderListener.java
.../src/main/java/com/fzm/portal/listener/OrderListener.java
+0
-1
application-dev.yml
joying-portal/src/main/resources/application-dev.yml
+0
-118
application-local.yml
joying-portal/src/main/resources/application-local.yml
+0
-119
application-nj.yml
joying-portal/src/main/resources/application-nj.yml
+21
-2
application-prod.yml
joying-portal/src/main/resources/application-prod.yml
+21
-2
application.yml
joying-portal/src/main/resources/application.yml
+119
-6
logback-spring.xml
joying-portal/src/main/resources/logback-spring.xml
+87
-45
FileTest.java
joying-portal/src/test/java/com/fzm/portal/FileTest.java
+0
-5
LyPortalApplicationTests.java
...rc/test/java/com/fzm/portal/LyPortalApplicationTests.java
+0
-16
NftEvm.java
joying-portal/src/test/java/com/fzm/portal/NftEvm.java
+1
-14
RabbitTestDemo.java
...g-portal/src/test/java/com/fzm/portal/RabbitTestDemo.java
+0
-1
TestDemo.java
joying-portal/src/test/java/com/fzm/portal/TestDemo.java
+2
-7
WxPayTest.java
joying-portal/src/test/java/com/fzm/portal/WxPayTest.java
+0
-4
pom.xml
pom.xml
+3
-10
joying.sql
sql/joying.sql
+0
-0
No files found.
README.md
View file @
913a5e9e
**乐映影视:**
项目主要采用的框架是spring-boot mybatis-plus sa-token 等, 数据库采用的是mysql,缓存用的是redis
项目主要分为三个模块:
----joying-admin 后台管理系统
----joying-portal 门户系统
----joying-common 公共模块
项目主要采用的框架是spring-boot mybatis-plus sa-token 等, 数据库采用的是mysql,缓存用的是redis 项目主要分为三个模块: ----joying-admin 后台管理系统
----joying-portal 门户系统 ----joying-common 公共模块
1、变成规范
...
...
joying-admin/mvnw
View file @
913a5e9e
...
...
@@ -34,128 +34,135 @@
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------
if
[
-z
"
$MAVEN_SKIP_RC
"
]
;
then
if
[
-z
"
$MAVEN_SKIP_RC
"
]
;
then
if
[
-f
/etc/mavenrc
]
;
then
if
[
-f
/etc/mavenrc
]
;
then
.
/etc/mavenrc
fi
if
[
-f
"
$HOME
/.mavenrc"
]
;
then
if
[
-f
"
$HOME
/.mavenrc"
]
;
then
.
"
$HOME
/.mavenrc"
fi
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin
=
false
;
darwin
=
false
;
cygwin
=
false
darwin
=
false
mingw
=
false
case
"
`
uname
`
"
in
CYGWIN
*
)
cygwin
=
true
;;
MINGW
*
)
mingw
=
true
;;
Darwin
*
)
darwin
=
true
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Hom
e
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-x
"/usr/libexec/java_home
"
]
;
then
export
JAVA_HOME
=
"
`
/usr/libexec/java_home
`
"
e
lse
export
JAVA_HOME
=
"/Library/Java/Home"
fi
case
"
$(
uname
)
"
in
CYGWIN
*
)
cygwin
=
true
;;
MINGW
*
)
mingw
=
true
;;
Darwin
*
)
darwin
=
tru
e
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-x
"/usr/libexec/java_home"
]
;
then
e
xport
JAVA_HOME
=
"
$(
/usr/libexec/java_home
)
"
else
export
JAVA_HOME
=
"/Library/Java/Home"
fi
;;
fi
;;
esac
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-r
/etc/gentoo-release
]
;
then
JAVA_HOME
=
`
java-config
--jre-home
`
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-r
/etc/gentoo-release
]
;
then
JAVA_HOME
=
$(
java-config
--jre-home
)
fi
fi
if
[
-z
"
$M2_HOME
"
]
;
then
if
[
-z
"
$M2_HOME
"
]
;
then
## resolve links - $0 may be a link to maven's home
PRG
=
"
$0
"
# need this for relative symlinks
while
[
-h
"
$PRG
"
]
;
do
ls
=
`
ls
-ld
"
$PRG
"
`
link
=
`
expr
"
$ls
"
:
'.*-> \(.*\)$'
`
if
expr
"
$link
"
:
'/.*'
>
/dev/null
;
then
while
[
-h
"
$PRG
"
]
;
do
ls
=
$(
ls
-ld
"
$PRG
"
)
link
=
$(
expr
"
$ls
"
:
'.*-> \(.*\)$'
)
if
expr
"
$link
"
:
'/.*'
>
/dev/null
;
then
PRG
=
"
$link
"
else
PRG
=
"
`
dirname
"
$PRG
"
`
/
$link
"
PRG
=
"
$(
dirname
"
$PRG
"
)
/
$link
"
fi
done
saveddir
=
`
pwd
`
saveddir
=
$(
pwd
)
M2_HOME
=
`
dirname
"
$PRG
"
`
/..
M2_HOME
=
$(
dirname
"
$PRG
"
)
/..
# make it fully qualified
M2_HOME
=
`
cd
"
$M2_HOME
"
&&
pwd
`
M2_HOME
=
$(
cd
"
$M2_HOME
"
&&
pwd
)
cd
"
$saveddir
"
# echo Using m2 at $M2_HOME
fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if
$cygwin
;
then
if
$cygwin
;
then
[
-n
"
$M2_HOME
"
]
&&
M2_HOME
=
`
cygpath
--unix
"
$M2_HOME
"
`
M2_HOME
=
$(
cygpath
--unix
"
$M2_HOME
"
)
[
-n
"
$JAVA_HOME
"
]
&&
JAVA_HOME
=
`
cygpath
--unix
"
$JAVA_HOME
"
`
JAVA_HOME
=
$(
cygpath
--unix
"
$JAVA_HOME
"
)
[
-n
"
$CLASSPATH
"
]
&&
CLASSPATH
=
`
cygpath
--path
--unix
"
$CLASSPATH
"
`
CLASSPATH
=
$(
cygpath
--path
--unix
"
$CLASSPATH
"
)
fi
# For Mingw, ensure paths are in UNIX format before anything is touched
if
$mingw
;
then
if
$mingw
;
then
[
-n
"
$M2_HOME
"
]
&&
M2_HOME
=
"
`
(
cd
"
$M2_HOME
"
;
pwd
)
`
"
M2_HOME
=
"
$(
(
cd
"
$M2_HOME
"
pwd
)
)"
[
-n
"
$JAVA_HOME
"
]
&&
JAVA_HOME
=
"
`
(
cd
"
$JAVA_HOME
"
;
pwd
)
`
"
JAVA_HOME
=
"
$(
(
cd
"
$JAVA_HOME
"
pwd
)
)"
fi
if
[
-z
"
$JAVA_HOME
"
]
;
then
javaExecutable
=
"
`
which javac
`
"
if
[
-n
"
$javaExecutable
"
]
&&
!
[
"
`
expr
\"
$javaExecutable
\"
:
'\([^ ]*\)'
`
"
=
"no"
]
;
then
javaExecutable
=
"
$(
which javac
)
"
if
[
-n
"
$javaExecutable
"
]
&&
!
[
"
$(
expr
\"
$javaExecutable
\"
:
'\([^ ]*\)'
)
"
=
"no"
]
;
then
# readlink(1) is not available as standard on Solaris 10.
readLink
=
`
which
readlink
`
if
[
!
`
expr
"
$readLink
"
:
'\([^ ]*\)'
`
=
"no"
]
;
then
if
$darwin
;
then
javaHome
=
"
`
dirname
\"
$javaExecutable
\"
`
"
javaExecutable
=
"
`
cd
\"
$javaHome
\"
&&
pwd
-P
`
/javac"
readLink
=
$(
which
readlink
)
if
[
!
$(
expr
"
$readLink
"
:
'\([^ ]*\)'
)
=
"no"
]
;
then
if
$darwin
;
then
javaHome
=
"
$(
dirname
\"
$javaExecutable
\"
)
"
javaExecutable
=
"
$(
cd
\"
$javaHome
\"
&&
pwd
-P
)
/javac"
else
javaExecutable
=
"
`
readlink
-f
\"
$javaExecutable
\"
`
"
javaExecutable
=
"
$(
readlink
-f
\"
$javaExecutable
\"
)
"
fi
javaHome
=
"
`
dirname
\"
$javaExecutable
\"
`
"
javaHome
=
`
expr
"
$javaHome
"
:
'\(.*\)/bin'
`
javaHome
=
"
$(
dirname
\"
$javaExecutable
\"
)
"
javaHome
=
$(
expr
"
$javaHome
"
:
'\(.*\)/bin'
)
JAVA_HOME
=
"
$javaHome
"
export
JAVA_HOME
fi
fi
fi
if
[
-z
"
$JAVACMD
"
]
;
then
if
[
-n
"
$JAVA_HOME
"
]
;
then
if
[
-x
"
$JAVA_HOME
/jre/sh/java"
]
;
then
if
[
-z
"
$JAVACMD
"
]
;
then
if
[
-n
"
$JAVA_HOME
"
]
;
then
if
[
-x
"
$JAVA_HOME
/jre/sh/java"
]
;
then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD
=
"
$JAVA_HOME
/jre/sh/java"
else
JAVACMD
=
"
$JAVA_HOME
/bin/java"
fi
else
JAVACMD
=
"
`
which java
`
"
JAVACMD
=
"
$(
which java
)
"
fi
fi
if
[
!
-x
"
$JAVACMD
"
]
;
then
if
[
!
-x
"
$JAVACMD
"
]
;
then
echo
"Error: JAVA_HOME is not defined correctly."
>
&2
echo
" We cannot execute
$JAVACMD
"
>
&2
exit
1
fi
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-z
"
$JAVA_HOME
"
]
;
then
echo
"Warning: JAVA_HOME environment variable is not set."
fi
...
...
@@ -165,22 +172,24 @@ CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir
()
{
if
[
-z
"
$1
"
]
then
if
[
-z
"
$1
"
]
;
then
echo
"Path not specified to find_maven_basedir"
return
1
fi
basedir
=
"
$1
"
wdir
=
"
$1
"
while
[
"
$wdir
"
!=
'/'
]
;
do
if
[
-d
"
$wdir
"
/.mvn
]
;
then
while
[
"
$wdir
"
!=
'/'
]
;
do
if
[
-d
"
$wdir
"
/.mvn
]
;
then
basedir
=
$wdir
break
fi
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
if
[
-d
"
${
wdir
}
"
]
;
then
wdir
=
`
cd
"
$wdir
/.."
;
pwd
`
wdir
=
$(
cd
"
$wdir
/.."
pwd
)
fi
# end of workaround
done
...
...
@@ -190,13 +199,13 @@ find_maven_basedir() {
# concatenates all lines of a file
concat_lines
()
{
if
[
-f
"
$1
"
]
;
then
echo
"
$(
tr
-s
'\n'
' '
<
"
$1
"
)
"
echo
"
$(
tr
-s
'\n'
' '
<
"
$1
"
)
"
fi
}
BASE_DIR
=
`
find_maven_basedir
"
$(
pwd
)
"
`
BASE_DIR
=
$(
find_maven_basedir
"
$(
pwd
)
"
)
if
[
-z
"
$BASE_DIR
"
]
;
then
exit
1
;
exit
1
fi
##########################################################################################
...
...
@@ -204,75 +213,78 @@ fi
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if
[
-r
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.jar"
]
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Found .mvn/wrapper/maven-wrapper.jar"
fi
else
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
fi
if
[
-n
"
$MVNW_REPOURL
"
]
;
then
jarUrl
=
"
$MVNW_REPOURL
/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
else
jarUrl
=
"https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
fi
while
IFS
=
"="
read
key value
;
do
case
"
$key
"
in
wrapperUrl
)
jarUrl
=
"
$value
"
break
;;
esac
done
<
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.properties"
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Downloading from:
$jarUrl
"
fi
wrapperJarPath
=
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.jar"
if
$cygwin
;
then
wrapperJarPath
=
$(
cygpath
--path
--windows
"
$wrapperJarPath
"
)
fi
if
command
-v
wget
>
/dev/null
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Found
.mvn/wrapper/maven-wrapper.jar
"
echo
"Found
wget ... using wget
"
fi
else
if
[
-z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
wget
"
$jarUrl
"
-O
"
$wrapperJarPath
"
else
wget
--http-user
=
$MVNW_USERNAME
--http-password
=
$MVNW_PASSWORD
"
$jarUrl
"
-O
"
$wrapperJarPath
"
fi
elif
command
-v
curl
>
/dev/null
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"
Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ...
"
echo
"
Found curl ... using curl
"
fi
if
[
-
n
"
$MVNW_REPOURL
"
]
;
then
jarUrl
=
"
$MVNW_REPOURL
/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
if
[
-
z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
curl
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
else
jarUrl
=
"https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
curl
--user
$MVNW_USERNAME
:
$MVNW_PASSWORD
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
fi
while
IFS
=
"="
read
key value
;
do
case
"
$key
"
in
(
wrapperUrl
)
jarUrl
=
"
$value
"
;
break
;;
esac
done
<
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.properties"
else
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"
Downloading from:
$jarUrl
"
echo
"
Falling back to using Java to download
"
fi
wrapperJarPath
=
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.jar"
javaClass
=
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if
$cygwin
;
then
wrapperJarPath
=
`
cygpath
--path
--windows
"
$wrapperJarPath
"
`
javaClass
=
$(
cygpath
--path
--windows
"
$javaClass
"
)
fi
if
command
-v
wget
>
/dev/null
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Found wget ... using wget"
fi
if
[
-z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
wget
"
$jarUrl
"
-O
"
$wrapperJarPath
"
else
wget
--http-user
=
$MVNW_USERNAME
--http-password
=
$MVNW_PASSWORD
"
$jarUrl
"
-O
"
$wrapperJarPath
"
fi
elif
command
-v
curl
>
/dev/null
;
then
if
[
-e
"
$javaClass
"
]
;
then
if
[
!
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"
Found curl ... using curl
"
echo
"
- Compiling MavenWrapperDownloader.java ...
"
fi
if
[
-z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
curl
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
else
curl
--user
$MVNW_USERNAME
:
$MVNW_PASSWORD
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
fi
else
# Compiling the Java class
(
"
$JAVA_HOME
/bin/javac"
"
$javaClass
"
)
fi
if
[
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
# Running the downloader
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Falling back to using Java to download"
fi
javaClass
=
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if
$cygwin
;
then
javaClass
=
`
cygpath
--path
--windows
"
$javaClass
"
`
fi
if
[
-e
"
$javaClass
"
]
;
then
if
[
!
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
" - Compiling MavenWrapperDownloader.java ..."
fi
# Compiling the Java class
(
"
$JAVA_HOME
/bin/javac"
"
$javaClass
"
)
fi
if
[
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
# Running the downloader
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
" - Running MavenWrapperDownloader.java ..."
fi
(
"
$JAVA_HOME
/bin/java"
-cp
.mvn/wrapper MavenWrapperDownloader
"
$MAVEN_PROJECTBASEDIR
"
)
fi
echo
" - Running MavenWrapperDownloader.java ..."
fi
(
"
$JAVA_HOME
/bin/java"
-cp
.mvn/wrapper MavenWrapperDownloader
"
$MAVEN_PROJECTBASEDIR
"
)
fi
fi
fi
fi
##########################################################################################
# End of extension
...
...
@@ -287,13 +299,13 @@ MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
# For Cygwin, switch paths to Windows format before running java
if
$cygwin
;
then
[
-n
"
$M2_HOME
"
]
&&
M2_HOME
=
`
cygpath
--path
--windows
"
$M2_HOME
"
`
M2_HOME
=
$(
cygpath
--path
--windows
"
$M2_HOME
"
)
[
-n
"
$JAVA_HOME
"
]
&&
JAVA_HOME
=
`
cygpath
--path
--windows
"
$JAVA_HOME
"
`
JAVA_HOME
=
$(
cygpath
--path
--windows
"
$JAVA_HOME
"
)
[
-n
"
$CLASSPATH
"
]
&&
CLASSPATH
=
`
cygpath
--path
--windows
"
$CLASSPATH
"
`
CLASSPATH
=
$(
cygpath
--path
--windows
"
$CLASSPATH
"
)
[
-n
"
$MAVEN_PROJECTBASEDIR
"
]
&&
MAVEN_PROJECTBASEDIR
=
`
cygpath
--path
--windows
"
$MAVEN_PROJECTBASEDIR
"
`
MAVEN_PROJECTBASEDIR
=
$(
cygpath
--path
--windows
"
$MAVEN_PROJECTBASEDIR
"
)
fi
# Provide a "standardized" way to retrieve the CLI args that will
...
...
joying-admin/pom.xml
View file @
913a5e9e
...
...
@@ -29,7 +29,7 @@
<dependency>
<groupId>
com.fzm
</groupId>
<artifactId>
joying-common
</artifactId>
<version>
1.
0
.0
</version>
<version>
1.
1
.0
</version>
</dependency>
<dependency>
<groupId>
mysql
</groupId>
...
...
joying-admin/src/main/java/com/fzm/admin/JoyingAdminApplication.java
View file @
913a5e9e
package
com
.
fzm
.
admin
;
import
com.fzm.common.config.WxPayConfig
;
import
com.spring4all.swagger.EnableSwagger2Doc
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.boot.SpringApplication
;
...
...
joying-admin/src/main/java/com/fzm/admin/controller/AdminController.java
View file @
913a5e9e
package
com
.
fzm
.
admin
.
controller
;
import
com.fzm.common.constant.RedisConstant
;
import
com.fzm.common.utils.JwtUtil
;
import
com.fzm.common.utils.RedisUtil
;
import
com.fzm.admin.params.LoginParam
;
import
com.fzm.common.constant.RedisConstant
;
import
com.fzm.common.constant.TokenConstant
;
import
com.fzm.common.entity.Admin
;
import
com.fzm.common.model.ResponseModel
;
import
com.fzm.common.service.AdminService
;
import
com.fzm.common.utils.JwtUtil
;
import
com.fzm.common.utils.RedisUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
java.util.HashMap
;
...
...
joying-admin/src/main/java/com/fzm/admin/controller/EntrustShelfController.java
View file @
913a5e9e
...
...
@@ -4,14 +4,14 @@ import com.fzm.common.annotation.Authentication;
import
com.fzm.common.entity.EntrustShelf
;
import
com.fzm.common.model.ResponseModel
;
import
com.fzm.common.service.EntrustShelfService
;
import
com.fzm.common.valid.InsertGroup
;
import
com.fzm.common.valid.UpdateGroup
;
import
com.github.pagehelper.PageInfo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
...
...
joying-admin/src/main/java/com/fzm/admin/controller/NftController.java
View file @
913a5e9e
...
...
@@ -13,7 +13,6 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
...
...
joying-admin/src/main/java/com/fzm/admin/controller/RefundController.java
View file @
913a5e9e
...
...
@@ -32,14 +32,14 @@ public class RefundController {
@GetMapping
(
"/pages"
)
@ApiOperation
(
value
=
"退款分页列表"
)
public
ResponseModel
<
PageInfo
<
PaymentVo
>>
pages
(
@ApiParam
(
value
=
"页码"
,
required
=
true
)
@RequestParam
Integer
pageNum
,
@ApiParam
(
value
=
"每页记录数"
,
required
=
true
)
@RequestParam
Integer
pageSize
,
@ApiParam
(
value
=
"姓名"
)
@RequestParam
(
required
=
false
)
String
name
,
@ApiParam
(
value
=
"注册手机号"
)
@RequestParam
(
required
=
false
)
String
telephone
,
@ApiParam
(
value
=
"订单名"
)
@RequestParam
(
required
=
false
)
String
orderName
,
@ApiParam
(
value
=
"交易类型"
)
@RequestParam
(
required
=
false
)
String
type
,
@ApiParam
(
value
=
"支付场景 1-nft发行 2-版权申请"
)
@RequestParam
(
required
=
false
)
Integer
payScene
,
@ApiParam
(
value
=
"创建开始日期,yyyy-MM-dd格式"
)
@RequestParam
(
required
=
false
)
String
start
,
@ApiParam
(
value
=
"创建截止日期,yyyy-MM-dd格式"
)
@RequestParam
(
required
=
false
)
String
end
)
{
@ApiParam
(
value
=
"每页记录数"
,
required
=
true
)
@RequestParam
Integer
pageSize
,
@ApiParam
(
value
=
"姓名"
)
@RequestParam
(
required
=
false
)
String
name
,
@ApiParam
(
value
=
"注册手机号"
)
@RequestParam
(
required
=
false
)
String
telephone
,
@ApiParam
(
value
=
"订单名"
)
@RequestParam
(
required
=
false
)
String
orderName
,
@ApiParam
(
value
=
"交易类型"
)
@RequestParam
(
required
=
false
)
String
type
,
@ApiParam
(
value
=
"支付场景 1-nft发行 2-版权申请"
)
@RequestParam
(
required
=
false
)
Integer
payScene
,
@ApiParam
(
value
=
"创建开始日期,yyyy-MM-dd格式"
)
@RequestParam
(
required
=
false
)
String
start
,
@ApiParam
(
value
=
"创建截止日期,yyyy-MM-dd格式"
)
@RequestParam
(
required
=
false
)
String
end
)
{
PageInfo
<
PaymentVo
>
pages
=
refundService
.
pages
(
pageNum
,
pageSize
,
name
,
telephone
,
orderName
,
type
,
payScene
,
start
,
end
);
return
ResponseModel
.
success
(
pages
);
}
...
...
joying-admin/src/main/java/com/fzm/admin/controller/UserController.java
View file @
913a5e9e
...
...
@@ -11,7 +11,10 @@ import com.github.pagehelper.PageInfo;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
java.util.List
;
...
...
joying-admin/src/main/resources/application-dev.yml
deleted
100644 → 0
View file @
232fed80
server
:
port
:
8002
spring
:
main
:
allow-bean-definition-overriding
:
true
datasource
:
url
:
jdbc:mysql://172.16.101.135:3306/joying_dev?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
username
:
root
password
:
Joying@123456
platform
:
mysql
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
druid
:
initial-size
:
5
min-idle
:
5
max-active
:
20
max-wait
:
60000
time-between-eviction-runs-millis
:
60000
min-evictable-idle-time-millis
:
300000
validation-query
:
SELECT 1 FROM DUAL
test-while-idle
:
true
test-on-borrow
:
false
test-on-return
:
false
pool-prepared-statements
:
false
max-pool-prepared-statement-per-connection-size
:
20
filters
:
stat ,wall
connection-properties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
useGlobalDataSourceStat
:
true
redis
:
host
:
172.16.101.135
port
:
6379
password
:
123456
lettuce
:
pool
:
# 连接池最大连接数(使用负值表示没有限制) 默认 8
max-active
:
100
# 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-wait
:
-1
# 连接池中的最大空闲连接 默认 8
max-idle
:
8
# 连接池中的最小空闲连接 默认 0
min-idle
:
0
cache
:
# 整合SpringCache,redis作为缓存类型
type
:
redis
redis
:
# 缓存失效时间
time-to-live
:
86400000
rabbitmq
:
host
:
172.16.101.135
port
:
5672
username
:
admin
password
:
admin
listener
:
simple
:
acknowledge-mode
:
manual
#acknowledge-mode: none,关闭ack; manual,手动ack; auto:自动ack
swagger
:
title
:
乐映影视后台管理系统
description
:
乐映影视后台管理系统RESTFUL API
version
:
1.0.0
base-package
:
com.fzm.admin.controller
base-path
:
/**
enabled
:
true
globalOperationParameters
:
-
description
:
Authorization
modelRef
:
string
name
:
Authorization
parameterType
:
header
required
:
false
contact
:
name
:
tangtuo
email
:
ttuo@33.com
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
withhold
:
withhold-key
:
a4c49dcb35e0032dc8db5891dc81481943b68fc558ce93ce74d0382c1d104934
token-manager
:
token-manager-key
:
4e92bda2477ded0e7c07a9e3acd2370de8d7401c68cc83ee8376806db3121e77
title
:
user.p.FILMCHAIN.
cName
:
user.evm.0xa038a372ab27d9038328932c98454e52390b94555a69ab9559e8ab14ff2e540f
cAddr
:
1Nhju8CgSUmkQQwc7ECk4bFxnv48iRLNRX
copyright
:
apply-url
:
https://p.yareiot.com/ccct/api/copyright/create
query-url
:
https://p.yareiot.com/ccct/api/copyright/query
app-id
:
289391457858
app-secret
:
xExjKUCYH1nrze6Hpxf8s1dYWdxEggo2FiwKlZKygCItOV7E8bFhkyr4C192uhK
huaweiyun
:
obs
:
app-key
:
HIULSHJZJOTWB72Z38ZB
app-secret
:
GI0oWEGRJuMKmPXJq2fCmuMpFPIITLmjeCQxo2tA
end-point
:
obs.cn-east-3.myhuaweicloud.com
bucket
:
filmchain-file
wx-pay
:
app-id
:
wxbdddd81913c795e9
app-secret
:
aa201717c46a0e07c4c143b1ee73229a
mch-id
:
1604477044
api-v3-key
:
D864DA53FEF8ACD41519064967DC10D2
mch-serial-num
:
72A62544B0A08A214FAEC780108692EDC6E7D5FA
private-key-path
:
apiclient_key.pem
pay-notify-url
:
https://test.inmvo.com/proxyApi/wx-pay/notify/jsapi
refund-notify-url
:
https://test.inmvo.com/proxyApi/wx-pay/notify/refund
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
login-message-codetype
:
quick
login-email-codetype
:
quick
login-voice-codetype
:
quick
send-sms-url
:
http://118.31.52.32/send/sms2
validate-code-url
:
http://118.31.52.32/validate/code
transfer-nft-message-codetype
:
notice_transfer
transfer-nft-email-codetype
:
notice_transfer
transfer-nft-voice-codetype
:
notice_transfer
refund-message-codetype
:
notice_refund
\ No newline at end of file
joying-admin/src/main/resources/application-local.yml
deleted
100644 → 0
View file @
232fed80
server
:
port
:
8002
spring
:
main
:
allow-bean-definition-overriding
:
true
datasource
:
url
:
jdbc:mysql://146.56.197.42:3306/joying?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&tinyInt1isBit=false
username
:
root
password
:
fzm_db_01@TEST
platform
:
mysql
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
druid
:
initial-size
:
5
min-idle
:
5
max-active
:
20
max-wait
:
60000
time-between-eviction-runs-millis
:
60000
min-evictable-idle-time-millis
:
300000
validation-query
:
SELECT 1 FROM DUAL
test-while-idle
:
true
test-on-borrow
:
false
test-on-return
:
false
pool-prepared-statements
:
false
max-pool-prepared-statement-per-connection-size
:
20
filters
:
stat ,wall
connection-properties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
useGlobalDataSourceStat
:
true
redis
:
host
:
localhost
port
:
6379
password
:
123456
lettuce
:
pool
:
# 连接池最大连接数(使用负值表示没有限制) 默认 8
max-active
:
100
# 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-wait
:
-1
# 连接池中的最大空闲连接 默认 8
max-idle
:
8
# 连接池中的最小空闲连接 默认 0
min-idle
:
0
cache
:
# 整合SpringCache,redis作为缓存类型
type
:
redis
redis
:
# 缓存失效时间
time-to-live
:
86400000
rabbitmq
:
host
:
10.0.0.81
port
:
5672
username
:
admin
password
:
admin
listener
:
simple
:
acknowledge-mode
:
manual
#acknowledge-mode: none,关闭ack;manual,手动ack;auto:自动ack
swagger
:
title
:
乐映影视乐映影视后台管理系统
description
:
乐映影视后台管理系统RESTFUL API
version
:
1.0.0
base-package
:
com.fzm.admin.controller
base-path
:
/**
enabled
:
true
globalOperationParameters
:
-
description
:
Authorization
modelRef
:
string
name
:
Authorization
parameterType
:
header
required
:
false
contact
:
name
:
tangtuo
email
:
ttuo@33.com
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
withhold
:
withhold-key
:
a4c49dcb35e0032dc8db5891dc81481943b68fc558ce93ce74d0382c1d104934
token-manager
:
token-manager-key
:
4e92bda2477ded0e7c07a9e3acd2370de8d7401c68cc83ee8376806db3121e77
title
:
user.p.FILMCHAIN.
cName
:
user.evm.0xa038a372ab27d9038328932c98454e52390b94555a69ab9559e8ab14ff2e540f
cAddr
:
1Nhju8CgSUmkQQwc7ECk4bFxnv48iRLNRX
copyright
:
apply-url
:
https://p.yareiot.com/ccct/api/copyright/create
query-url
:
https://p.yareiot.com/ccct/api/copyright/query
app-id
:
289391457858
app-secret
:
xExjKUCYH1nrze6Hpxf8s1dYWdxEggo2FiwKlZKygCItOV7E8bFhkyr4C192uhK
huaweiyun
:
obs
:
app-key
:
HIULSHJZJOTWB72Z38ZB
app-secret
:
GI0oWEGRJuMKmPXJq2fCmuMpFPIITLmjeCQxo2tA
end-point
:
obs.cn-east-3.myhuaweicloud.com
bucket
:
filmchain-file
wx-pay
:
app-id
:
wxbdddd81913c795e9
app-secret
:
aa201717c46a0e07c4c143b1ee73229a
mch-id
:
1604477044
api-v3-key
:
D864DA53FEF8ACD41519064967DC10D2
mch-serial-num
:
72A62544B0A08A214FAEC780108692EDC6E7D5FA
private-key-path
:
apiclient_key.pem
pay-notify-url
:
https://test.inmvo.com/proxyApi/wx-pay/notify/jsapi
refund-notify-url
:
https://test.inmvo.com/proxyApi/wx-pay/notify/refund
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
login-message-codetype
:
quick
login-email-codetype
:
quick
login-voice-codetype
:
quick
send-sms-url
:
http://118.31.52.32/send/sms2
validate-code-url
:
http://118.31.52.32/validate/code
transfer-nft-message-codetype
:
notice_transfer
transfer-nft-email-codetype
:
notice_transfer
transfer-nft-voice-codetype
:
notice_transfer
refund-message-codetype
:
notice_refund
\ No newline at end of file
joying-admin/src/main/resources/application-nj.yml
View file @
913a5e9e
server
:
port
:
8002
spring
:
application
:
name
:
ly-admin
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
main
:
allow-bean-definition-overriding
:
true
datasource
:
...
...
@@ -56,8 +61,8 @@ spring:
simple
:
acknowledge-mode
:
manual
#acknowledge-mode: none,关闭ack;manual,手动ack;auto:自动ack
swagger
:
title
:
乐映影视后台管理系统
description
:
乐映影视后台管理系统RESTFUL API
title
:
'
乐映影视后台管理系统'
description
:
'
乐映影视后台管理系统RESTFUL
API'
version
:
1.0.0
base-package
:
com.fzm.admin.controller
base-path
:
/**
...
...
@@ -72,6 +77,16 @@ swagger:
name
:
tangtuo
email
:
ttuo@33.com
mybatis-plus
:
type-aliases-package
:
com.fzm.common.entity
mapper-locations
:
classpath:mapper/*.xml
configuration
:
map-underscore-to-camel-case
:
true
debug
:
sms
:
true
auth
:
true
chain
:
para
:
rpcUrl
:
http://146.56.197.42:12021
...
...
joying-admin/src/main/resources/application-prod.yml
View file @
913a5e9e
server
:
port
:
8002
spring
:
application
:
name
:
ly-admin
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
main
:
allow-bean-definition-overriding
:
true
datasource
:
...
...
@@ -56,8 +61,8 @@ spring:
simple
:
acknowledge-mode
:
manual
#acknowledge-mode: none,关闭ack;manual,手动ack;auto:自动ack
swagger
:
title
:
乐映影视后台管理系统
description
:
乐映影视后台管理系统RESTFUL API
title
:
'
乐映影视后台管理系统'
description
:
'
乐映影视后台管理系统RESTFUL
API'
version
:
1.0.0
base-package
:
com.fzm.admin.controller
base-path
:
/**
...
...
@@ -72,6 +77,16 @@ swagger:
name
:
tangtuo
email
:
ttuo@33.com
mybatis-plus
:
type-aliases-package
:
com.fzm.common.entity
mapper-locations
:
classpath:mapper/*.xml
configuration
:
map-underscore-to-camel-case
:
true
debug
:
sms
:
true
auth
:
true
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
...
...
joying-admin/src/main/resources/application.yml
View file @
913a5e9e
server
:
port
:
8002
spring
:
profiles
:
active
:
nj
application
:
name
:
ly-admin
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
main
:
allow-bean-definition-overriding
:
true
datasource
:
url
:
jdbc:mysql://172.16.101.135:3306/joying_dev?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
username
:
root
password
:
Joying@123456
platform
:
mysql
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
druid
:
initial-size
:
5
min-idle
:
5
max-active
:
20
max-wait
:
60000
time-between-eviction-runs-millis
:
60000
min-evictable-idle-time-millis
:
300000
validation-query
:
SELECT 1 FROM DUAL
test-while-idle
:
true
test-on-borrow
:
false
test-on-return
:
false
pool-prepared-statements
:
false
max-pool-prepared-statement-per-connection-size
:
20
filters
:
stat ,wall
connection-properties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
useGlobalDataSourceStat
:
true
redis
:
host
:
172.16.101.135
port
:
6379
password
:
123456
lettuce
:
pool
:
# 连接池最大连接数(使用负值表示没有限制) 默认 8
max-active
:
100
# 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-wait
:
-1
# 连接池中的最大空闲连接 默认 8
max-idle
:
8
# 连接池中的最小空闲连接 默认 0
min-idle
:
0
cache
:
# 整合SpringCache,redis作为缓存类型
type
:
redis
redis
:
# 缓存失效时间
time-to-live
:
86400000
rabbitmq
:
host
:
172.16.101.135
port
:
5672
username
:
admin
password
:
admin
listener
:
simple
:
acknowledge-mode
:
manual
#acknowledge-mode: none,关闭ack; manual,手动ack; auto:自动ack
swagger
:
title
:
'
乐映影视后台管理系统'
description
:
'
乐映影视后台管理系统RESTFUL
API'
version
:
1.0.0
base-package
:
com.fzm.admin.controller
base-path
:
/**
enabled
:
true
globalOperationParameters
:
-
description
:
Authorization
modelRef
:
string
name
:
Authorization
parameterType
:
header
required
:
false
contact
:
name
:
tangtuo
email
:
ttuo@33.com
mybatis-plus
:
type-aliases-package
:
com.fzm.common.entity
...
...
@@ -14,7 +82,54 @@ mybatis-plus:
configuration
:
map-underscore-to-camel-case
:
true
logging
:
level
:
com.fzm.common.mapper
:
debug
debug
:
sms
:
true
auth
:
true
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
withhold
:
withhold-key
:
a4c49dcb35e0032dc8db5891dc81481943b68fc558ce93ce74d0382c1d104934
token-manager
:
token-manager-key
:
4e92bda2477ded0e7c07a9e3acd2370de8d7401c68cc83ee8376806db3121e77
title
:
user.p.FILMCHAIN.
cName
:
user.evm.0xa038a372ab27d9038328932c98454e52390b94555a69ab9559e8ab14ff2e540f
cAddr
:
1Nhju8CgSUmkQQwc7ECk4bFxnv48iRLNRX
copyright
:
apply-url
:
https://p.yareiot.com/ccct/api/copyright/create
query-url
:
https://p.yareiot.com/ccct/api/copyright/query
app-id
:
289391457858
app-secret
:
xExjKUCYH1nrze6Hpxf8s1dYWdxEggo2FiwKlZKygCItOV7E8bFhkyr4C192uhK
huaweiyun
:
obs
:
app-key
:
HIULSHJZJOTWB72Z38ZB
app-secret
:
GI0oWEGRJuMKmPXJq2fCmuMpFPIITLmjeCQxo2tA
end-point
:
obs.cn-east-3.myhuaweicloud.com
bucket
:
filmchain-file
wx-pay
:
app-id
:
wxbdddd81913c795e9
app-secret
:
aa201717c46a0e07c4c143b1ee73229a
mch-id
:
1604477044
api-v3-key
:
D864DA53FEF8ACD41519064967DC10D2
mch-serial-num
:
72A62544B0A08A214FAEC780108692EDC6E7D5FA
private-key-path
:
apiclient_key.pem
pay-notify-url
:
https://test.inmvo.com/proxyApi/wx-pay/notify/jsapi
refund-notify-url
:
https://test.inmvo.com/proxyApi/wx-pay/notify/refund
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
login-message-codetype
:
quick
login-email-codetype
:
quick
login-voice-codetype
:
quick
send-sms-url
:
http://118.31.52.32/send/sms2
validate-code-url
:
http://118.31.52.32/validate/code
transfer-nft-message-codetype
:
notice_transfer
transfer-nft-email-codetype
:
notice_transfer
transfer-nft-voice-codetype
:
notice_transfer
refund-message-codetype
:
notice_refund
\ No newline at end of file
joying-admin/src/main/resources/logback-spring.xml
View file @
913a5e9e
<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->
<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration
scan=
"true"
scanPeriod=
"60 seconds"
debug=
"false"
>
<contextName>
logback
</contextName>
<!--日志路径--
>
<property
name=
"
LOG_HOME"
value=
"logs
"
/>
<
!--日志格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %logger{50}:表示logger名字最长50个字符,否则按照句点分割 %msg:日志消息,%n是换行符 --
>
<property
name=
"
LOG_PATTERN"
value=
"%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}-%msg%
n"
/>
<configuration
debug=
"false"
>
<property
name=
"
log.pattern"
value=
"%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger{12} - %msg%n
"
/>
<
property
name=
"log.path"
value=
"/app/logs/fuzamei/hz"
/
>
<property
name=
"
log.name"
value=
"joying-admi
n"
/>
<!-- 控制台 -->
<appender
name=
"CONSOLE"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<!-- 日志格式 -->
<appender
name=
"STDOUT"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<encoder>
<pattern>
${
LOG_PATTERN
}
</pattern>
<pattern>
${
log.pattern
}
</pattern>
<charset>
UTF-8
</charset>
</encoder>
<!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
<filter
class=
"ch.qos.logback.classic.filter.ThresholdFilter"
>
<level>
DEBUG
</level>
</filter>
</appender>
<!--输出到文件-->
<!-- 时间滚动输出 level为 INFO 日志 -->
<appender
name=
"INFO"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 正在记录的日志文件的路径及文件名 -->
<file>
${log.path}/${log.name}/info.log
</file>
<!--日志文件输出格式-->
<encoder>
<pattern>
${log.pattern}
</pattern>
<charset>
UTF-8
</charset>
</encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<!-- 每天日志归档路径以及格式 -->
<fileNamePattern>
${log.path}/${log.name}/info-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<maxFileSize>
100MB
</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!--日志文件保留天数-->
<maxHistory>
15
</maxHistory>
</rollingPolicy>
<!-- 此日志文件只记录info级别的 -->
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
info
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<!-- 2、全部日志时间滚动输出 -->
<appender
name=
"INFO_FILE"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 循环政策:基于时间创建日志文件 -->
<!-- 时间滚动输出 level为 WARN 日志 -->
<appender
name=
"WARN"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 正在记录的日志文件的路径及文件名 -->
<file>
${log.path}/${log.name}/warn.log
</file>
<!--日志文件输出格式-->
<encoder>
<pattern>
${log.pattern}
</pattern>
<charset>
UTF-8
</charset>
<!-- 此处设置字符集 -->
</encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<!-- 日志命名:单个文件大于50MB 按照时间+自增i 生成log文件 -->
<fileNamePattern>
${LOG_HOME}/logback.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<fileNamePattern>
${log.path}/${log.name}/warn-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<maxFileSize>
100MB
</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>
180
</maxHistory>
<!--日志文件保留天数-->
<maxHistory>
15
</maxHistory>
</rollingPolicy>
<append>
true
</append>
<!-- 此日志文件只记录warn级别的 -->
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
warn
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<!-- 时间滚动输出 level为 ERROR 日志 -->
<appender
name=
"ERROR"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 正在记录的日志文件的路径及文件名 -->
<file>
${log.path}/${log.name}/error.log
</file>
<!--日志文件输出格式-->
<encoder>
<pattern>
${
LOG_PATTERN
}
</pattern>
<charset>
UTF-8
</charset>
<pattern>
${
log.pattern
}
</pattern>
<charset>
UTF-8
</charset>
<!-- 此处设置字符集 -->
</encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<fileNamePattern>
${log.path}/${log.name}/error-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<maxFileSize>
100MB
</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!--日志文件保留天数-->
<maxHistory>
15
</maxHistory>
</rollingPolicy>
<!-- 此日志文件只记录ERROR级别的 -->
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
ERROR
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<logger
name=
"org.apache.coyote.http11.Http11Processor"
level=
"warn"
/>
<logger
name=
"org.apache.tomcat.util.http.parser.Cookie"
level=
"warn"
/>
<logger
name=
"org.apache.http.client.protocol.ResponseProcessCookies"
level=
"error"
/>
<logger
name=
"org.springframework.data.convert.CustomConversions"
level=
"error"
/>
<root
level=
"INFO"
>
<!--开发环境和本地:-->
<springProfile
name=
"local"
>
<appender-ref
ref=
"CONSOLE"
/>
</springProfile>
<springProfile
name=
"dev"
>
<appender-ref
ref=
"CONSOLE"
/>
<appender-ref
ref=
"INFO_FILE"
/>
</springProfile>
<springProfile
name=
"prod"
>
<appender-ref
ref=
"CONSOLE"
/>
<appender-ref
ref=
"INFO_FILE"
/>
</springProfile>
<springProfile
name=
"nj"
>
<appender-ref
ref=
"CONSOLE"
/>
<appender-ref
ref=
"INFO_FILE"
/>
</springProfile>
<!-- 控制台输出 -->
<appender-ref
ref=
"STDOUT"
/>
<!-- 文件输出 -->
<appender-ref
ref=
"INFO"
/>
<appender-ref
ref=
"WARN"
/>
<appender-ref
ref=
"ERROR"
/>
</root>
</configuration>
\ No newline at end of file
joying-admin/src/test/java/com/fzm/admin/LyAdminApplicationTests.java
View file @
913a5e9e
...
...
@@ -6,5 +6,4 @@ import org.springframework.boot.test.context.SpringBootTest;
class
LyAdminApplicationTests
{
}
joying-common/pom.xml
View file @
913a5e9e
...
...
@@ -5,7 +5,7 @@
<parent>
<artifactId>
fzm-joying
</artifactId>
<groupId>
com.fzm
</groupId>
<version>
1.
0
.0
</version>
<version>
1.
1
.0
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
joying-common
</artifactId>
...
...
@@ -111,6 +111,12 @@
<artifactId>
wechatpay-apache-httpclient
</artifactId>
<version>
0.4.0
</version>
</dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
1.2.79
</version>
</dependency>
</dependencies>
<properties>
...
...
joying-common/src/main/java/com/fzm/common/config/InterceptorConfig.java
View file @
913a5e9e
...
...
@@ -15,6 +15,7 @@ public class InterceptorConfig implements WebMvcConfigurer {
.
excludePathPatterns
(
"/user/login"
,
"/admin/login"
,
"/verificationCode/send/sms"
)
.
addPathPatterns
(
"/**"
);
}
@Bean
public
AuthenticationInterceptor
authenticationInterceptor
()
{
return
new
AuthenticationInterceptor
();
...
...
joying-common/src/main/java/com/fzm/common/config/MyMetaObjectHandler.java
View file @
913a5e9e
...
...
@@ -6,10 +6,6 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.ibatis.reflection.MetaObject
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.util.Date
;
import
java.util.function.Supplier
;
/**
* 新增,更新时,自动更新字段
*/
...
...
@@ -19,7 +15,10 @@ public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public
void
insertFill
(
MetaObject
metaObject
)
{
log
.
debug
(
"start insert fill ...."
);
if
(
log
.
isDebugEnabled
())
{
log
.
debug
(
"start insert fill ...."
);
}
Long
currentTime
=
SystemClock
.
now
();
this
.
setFieldValByName
(
"createTime"
,
currentTime
,
metaObject
);
this
.
setFieldValByName
(
"updateTime"
,
currentTime
,
metaObject
);
...
...
@@ -27,7 +26,10 @@ public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public
void
updateFill
(
MetaObject
metaObject
)
{
log
.
debug
(
"start update fill ...."
);
if
(
log
.
isDebugEnabled
())
{
log
.
debug
(
"start update fill ...."
);
}
Long
currentTime
=
SystemClock
.
now
();
this
.
setFieldValByName
(
"updateTime"
,
currentTime
,
metaObject
);
}
...
...
joying-common/src/main/java/com/fzm/common/config/RabbitMQConfig.java
View file @
913a5e9e
...
...
@@ -48,7 +48,6 @@ public class RabbitMQConfig {
}
/**
* 用户追加tokenInfo时,通过evmSetTokenInfo()方法得到交易hash,然后通过getRealTxHashFromGrp()得到真实哈希,
* 但是需要阻塞3秒左右才能查到真实哈希,所以这里使用死信加延时队列
...
...
joying-common/src/main/java/com/fzm/common/config/RedissonConfig.java
View file @
913a5e9e
...
...
@@ -6,7 +6,6 @@ import org.redisson.config.Config;
import
org.springframework.boot.autoconfigure.data.redis.RedisProperties
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Profile
;
import
javax.annotation.Resource
;
...
...
joying-common/src/main/java/com/fzm/common/config/SecurityConfig.java
View file @
913a5e9e
...
...
@@ -13,7 +13,7 @@ import org.springframework.security.crypto.password.PasswordEncoder;
public
class
SecurityConfig
{
@Bean
public
PasswordEncoder
passwordEncoder
(){
public
PasswordEncoder
passwordEncoder
()
{
return
new
BCryptPasswordEncoder
();
}
}
joying-common/src/main/java/com/fzm/common/constant/SystemConstant.java
View file @
913a5e9e
...
...
@@ -5,7 +5,7 @@ package com.fzm.common.constant;
* @date 2021/6/30 16:31
*
* <p>
*
系统全局常量
* 系统全局常量
* </p>
*/
public
class
SystemConstant
{
...
...
joying-common/src/main/java/com/fzm/common/entity/AuthPerson.java
View file @
913a5e9e
...
...
@@ -9,8 +9,6 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.Pattern
;
import
java.util.Date
;
/**
...
...
joying-common/src/main/java/com/fzm/common/entity/Category.java
View file @
913a5e9e
...
...
@@ -12,7 +12,7 @@ import lombok.experimental.Accessors;
@Data
@TableName
(
"tb_category"
)
@Accessors
(
chain
=
true
)
public
class
Category
extends
BaseEntity
{
public
class
Category
extends
BaseEntity
{
@ApiModelProperty
(
"类目名称"
)
private
String
categoryName
;
...
...
joying-common/src/main/java/com/fzm/common/entity/Charge.java
View file @
913a5e9e
...
...
@@ -9,8 +9,6 @@ import lombok.Data;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Comparator
;
import
java.util.stream.Stream
;
...
...
joying-common/src/main/java/com/fzm/common/entity/CopyrightApplyOwnerRelation.java
View file @
913a5e9e
...
...
@@ -94,7 +94,7 @@ public class CopyrightApplyOwnerRelation {
private
Date
updateDate
;
public
CopyrightApplyOwnerRelation
(
Integer
copyrightId
,
CopyrightOwner
copyrightOwner
)
{
public
CopyrightApplyOwnerRelation
(
Integer
copyrightId
,
CopyrightOwner
copyrightOwner
)
{
this
.
copyrightId
=
copyrightId
;
this
.
ownerId
=
copyrightOwner
.
getId
();
BeanUtil
.
copyProperties
(
copyrightOwner
,
this
,
true
);
...
...
joying-common/src/main/java/com/fzm/common/entity/CopyrightAuthorityRelation.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
entity
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
joying-common/src/main/java/com/fzm/common/entity/Nft.java
View file @
913a5e9e
...
...
@@ -3,7 +3,6 @@ package com.fzm.common.entity;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
org.hibernate.validator.constraints.Length
;
...
...
joying-common/src/main/java/com/fzm/common/entity/NftChainInfo.java
View file @
913a5e9e
...
...
@@ -7,10 +7,7 @@ import io.swagger.annotations.ApiModel;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.util.Date
;
/**
...
...
joying-common/src/main/java/com/fzm/common/entity/NftTransferRecord.java
View file @
913a5e9e
...
...
@@ -7,10 +7,7 @@ import io.swagger.annotations.ApiModel;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.util.Date
;
/**
...
...
joying-common/src/main/java/com/fzm/common/entity/Order.java
View file @
913a5e9e
...
...
@@ -2,7 +2,6 @@ package com.fzm.common.entity;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.Data
;
import
java.util.Date
;
...
...
joying-common/src/main/java/com/fzm/common/entity/dto/CopyrightQueryRequest.java
View file @
913a5e9e
...
...
@@ -4,7 +4,6 @@ import cn.hutool.core.date.DateUtil;
import
cn.hutool.json.JSONUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.Date
;
...
...
joying-common/src/main/java/com/fzm/common/entity/vo/CommemorateNftVo.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
entity
.
vo
;
import
cn.hutool.core.date.DateUtil
;
import
com.fzm.common.entity.CommemorateNft
;
import
com.fzm.common.entity.Nft
;
import
com.fzm.common.entity.User
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
joying-common/src/main/java/com/fzm/common/entity/vo/CopyrightApplyVo.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
entity
.
vo
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.fzm.common.entity.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author tangtuo
...
...
joying-common/src/main/java/com/fzm/common/entity/vo/NftCertificateVo.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
entity
.
vo
;
import
cn.hutool.core.date.DateUtil
;
import
com.fzm.common.entity.Nft
;
import
com.fzm.common.entity.User
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
joying-common/src/main/java/com/fzm/common/entity/vo/NftTransferVo.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
entity
.
vo
;
import
cn.hutool.core.date.DateUtil
;
import
com.fzm.common.entity.Nft
;
import
com.fzm.common.entity.User
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -41,6 +40,6 @@ public class NftTransferVo {
this
.
avatar
=
user
.
getAvatar
();
this
.
wallet
=
user
.
getWallet
();
this
.
nickname
=
user
.
getNickname
();
this
.
nftId
=
nft
.
getNftId
();
this
.
nftId
=
nft
.
getNftId
();
}
}
joying-common/src/main/java/com/fzm/common/entity/vo/OrderVo.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
entity
.
vo
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fzm.common.entity.Order
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
joying-common/src/main/java/com/fzm/common/entity/vo/UserListVo.java
View file @
913a5e9e
...
...
@@ -3,7 +3,6 @@ package com.fzm.common.entity.vo;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.util.Date
;
...
...
joying-common/src/main/java/com/fzm/common/enums/AuthType.java
View file @
913a5e9e
...
...
@@ -9,9 +9,8 @@ import lombok.Getter;
@Getter
public
enum
AuthType
{
PERSON
(
0
,
"个人认证"
),
ENTERPRISE
(
1
,
"企业认证"
)
;
PERSON
(
0
,
"个人认证"
),
ENTERPRISE
(
1
,
"企业认证"
);
private
Integer
type
;
private
String
desc
;
...
...
joying-common/src/main/java/com/fzm/common/enums/IdCardVerificationResponse.java
View file @
913a5e9e
...
...
@@ -10,12 +10,12 @@ import lombok.Getter;
@Getter
@AllArgsConstructor
public
enum
IdCardVerificationResponse
{
SUCCESS
(
"0"
,
"姓名和身份证号一致"
),
FAILED1
(
"-1"
,
"姓名和身份证号不一致"
),
FAILED2
(
"-2"
,
"非法身份证号(长度、校验位等不正确)"
),
FAILED3
(
"-3"
,
"非法姓名(长度、格式等不正确)"
),
FAILED4
(
"-4"
,
"证件库服务异常"
),
FAILED5
(
"-5"
,
"证件库中无此身份证记录"
),
SUCCESS
(
"0"
,
"姓名和身份证号一致"
),
FAILED1
(
"-1"
,
"姓名和身份证号不一致"
),
FAILED2
(
"-2"
,
"非法身份证号(长度、校验位等不正确)"
),
FAILED3
(
"-3"
,
"非法姓名(长度、格式等不正确)"
),
FAILED4
(
"-4"
,
"证件库服务异常"
),
FAILED5
(
"-5"
,
"证件库中无此身份证记录"
),
;
private
String
code
;
private
String
desc
;
...
...
joying-common/src/main/java/com/fzm/common/enums/OpusProperty.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.Getter
;
import
java.util.Arrays
;
...
...
joying-common/src/main/java/com/fzm/common/exception/handler/GlobalExceptionHandler.java
View file @
913a5e9e
...
...
@@ -11,9 +11,6 @@ import org.springframework.web.bind.MethodArgumentNotValidException;
import
org.springframework.web.bind.annotation.ExceptionHandler
;
import
org.springframework.web.bind.annotation.RestControllerAdvice
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
import
java.util.stream.Collectors
;
...
...
joying-common/src/main/java/com/fzm/common/interceptor/AuthenticationInterceptor.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
interceptor
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.ArrayUtil
;
import
com.fzm.common.annotation.Authentication
;
import
com.fzm.common.constant.RedisConstant
;
import
com.fzm.common.constant.TokenConstant
;
...
...
joying-common/src/main/java/com/fzm/common/mapper/AdminMapper.java
View file @
913a5e9e
...
...
@@ -2,7 +2,6 @@ package com.fzm.common.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.fzm.common.entity.Admin
;
import
com.fzm.common.entity.Category
;
import
org.apache.ibatis.annotations.Mapper
;
/**
...
...
joying-common/src/main/java/com/fzm/common/mapper/CollectionMapper.java
View file @
913a5e9e
...
...
@@ -15,6 +15,7 @@ public interface CollectionMapper extends BaseMapper<TbCollection> {
/**
* 根据用户id查询所有收藏的nftId
*
* @param userId
* @return
*/
...
...
joying-common/src/main/java/com/fzm/common/mapper/CommemorateNftMapper.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
mapper
;
import
cn.hutool.core.date.DateTime
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.fzm.common.entity.CommemorateNft
;
import
com.fzm.common.entity.Nft
;
import
com.fzm.common.entity.vo.CollectionNftVo
;
import
com.fzm.common.entity.vo.NftListVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @author tangtuo
...
...
joying-common/src/main/java/com/fzm/common/mapper/NftTransferRecordMapper.java
View file @
913a5e9e
...
...
@@ -2,7 +2,6 @@ package com.fzm.common.mapper;
import
cn.hutool.core.date.DateTime
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.fzm.common.entity.AuthPerson
;
import
com.fzm.common.entity.NftTransferRecord
;
import
com.fzm.common.entity.vo.NftTransferDetailVo
;
import
com.fzm.common.entity.vo.NftTransferRecordVo
;
...
...
joying-common/src/main/java/com/fzm/common/mapper/OpusCategoryMapper.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.fzm.common.entity.Admin
;
import
com.fzm.common.entity.OpusCategory
;
import
org.apache.ibatis.annotations.Mapper
;
...
...
joying-common/src/main/java/com/fzm/common/model/BufferedImageLuminanceSource.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
model
;
import
java.awt.Graphics2D
;
import
com.google.zxing.LuminanceSource
;
import
java.awt.*
;
import
java.awt.geom.AffineTransform
;
import
java.awt.image.BufferedImage
;
import
com.google.zxing.LuminanceSource
;
public
class
BufferedImageLuminanceSource
extends
LuminanceSource
{
private
final
BufferedImage
image
;
private
final
int
left
;
private
final
int
top
;
public
BufferedImageLuminanceSource
(
BufferedImage
image
)
{
this
(
image
,
0
,
0
,
image
.
getWidth
(),
image
.
getHeight
());
}
public
BufferedImageLuminanceSource
(
BufferedImage
image
,
int
left
,
int
top
,
int
width
,
int
height
)
{
super
(
width
,
height
);
int
sourceWidth
=
image
.
getWidth
();
int
sourceHeight
=
image
.
getHeight
();
if
(
left
+
width
>
sourceWidth
||
top
+
height
>
sourceHeight
)
{
throw
new
IllegalArgumentException
(
"Crop rectangle does not fit within image data."
);
}
for
(
int
y
=
top
;
y
<
top
+
height
;
y
++)
{
for
(
int
x
=
left
;
x
<
left
+
width
;
x
++)
{
if
((
image
.
getRGB
(
x
,
y
)
&
0xFF000000
)
==
0
)
{
image
.
setRGB
(
x
,
y
,
0xFFFFFFFF
);
// = white
}
}
}
this
.
image
=
new
BufferedImage
(
sourceWidth
,
sourceHeight
,
BufferedImage
.
TYPE_BYTE_GRAY
);
this
.
image
.
getGraphics
().
drawImage
(
image
,
0
,
0
,
null
);
this
.
left
=
left
;
this
.
top
=
top
;
}
public
byte
[]
getRow
(
int
y
,
byte
[]
row
)
{
if
(
y
<
0
||
y
>=
getHeight
())
{
throw
new
IllegalArgumentException
(
"Requested row is outside the image: "
+
y
);
}
int
width
=
getWidth
();
if
(
row
==
null
||
row
.
length
<
width
)
{
row
=
new
byte
[
width
];
}
image
.
getRaster
().
getDataElements
(
left
,
top
+
y
,
width
,
1
,
row
);
return
row
;
}
public
byte
[]
getMatrix
()
{
int
width
=
getWidth
();
int
height
=
getHeight
();
int
area
=
width
*
height
;
byte
[]
matrix
=
new
byte
[
area
];
image
.
getRaster
().
getDataElements
(
left
,
top
,
width
,
height
,
matrix
);
return
matrix
;
}
@Override
public
boolean
isCropSupported
()
{
return
true
;
}
@Override
public
LuminanceSource
crop
(
int
left
,
int
top
,
int
width
,
int
height
)
{
return
new
BufferedImageLuminanceSource
(
image
,
this
.
left
+
left
,
this
.
top
+
top
,
width
,
height
);
}
@Override
public
boolean
isRotateSupported
()
{
return
true
;
}
@Override
public
LuminanceSource
rotateCounterClockwise
()
{
int
sourceWidth
=
image
.
getWidth
();
int
sourceHeight
=
image
.
getHeight
();
AffineTransform
transform
=
new
AffineTransform
(
0.0
,
-
1.0
,
1.0
,
0.0
,
0.0
,
sourceWidth
);
BufferedImage
rotatedImage
=
new
BufferedImage
(
sourceHeight
,
sourceWidth
,
BufferedImage
.
TYPE_BYTE_GRAY
);
Graphics2D
g
=
rotatedImage
.
createGraphics
();
g
.
drawImage
(
image
,
transform
,
null
);
g
.
dispose
();
int
width
=
getWidth
();
return
new
BufferedImageLuminanceSource
(
rotatedImage
,
top
,
sourceWidth
-
(
left
+
width
),
getHeight
(),
width
);
}
private
final
BufferedImage
image
;
private
final
int
left
;
private
final
int
top
;
public
BufferedImageLuminanceSource
(
BufferedImage
image
)
{
this
(
image
,
0
,
0
,
image
.
getWidth
(),
image
.
getHeight
());
}
public
BufferedImageLuminanceSource
(
BufferedImage
image
,
int
left
,
int
top
,
int
width
,
int
height
)
{
super
(
width
,
height
);
int
sourceWidth
=
image
.
getWidth
();
int
sourceHeight
=
image
.
getHeight
();
if
(
left
+
width
>
sourceWidth
||
top
+
height
>
sourceHeight
)
{
throw
new
IllegalArgumentException
(
"Crop rectangle does not fit within image data."
);
}
for
(
int
y
=
top
;
y
<
top
+
height
;
y
++)
{
for
(
int
x
=
left
;
x
<
left
+
width
;
x
++)
{
if
((
image
.
getRGB
(
x
,
y
)
&
0xFF000000
)
==
0
)
{
image
.
setRGB
(
x
,
y
,
0xFFFFFFFF
);
// = white
}
}
}
this
.
image
=
new
BufferedImage
(
sourceWidth
,
sourceHeight
,
BufferedImage
.
TYPE_BYTE_GRAY
);
this
.
image
.
getGraphics
().
drawImage
(
image
,
0
,
0
,
null
);
this
.
left
=
left
;
this
.
top
=
top
;
}
public
byte
[]
getRow
(
int
y
,
byte
[]
row
)
{
if
(
y
<
0
||
y
>=
getHeight
())
{
throw
new
IllegalArgumentException
(
"Requested row is outside the image: "
+
y
);
}
int
width
=
getWidth
();
if
(
row
==
null
||
row
.
length
<
width
)
{
row
=
new
byte
[
width
];
}
image
.
getRaster
().
getDataElements
(
left
,
top
+
y
,
width
,
1
,
row
);
return
row
;
}
public
byte
[]
getMatrix
()
{
int
width
=
getWidth
();
int
height
=
getHeight
();
int
area
=
width
*
height
;
byte
[]
matrix
=
new
byte
[
area
];
image
.
getRaster
().
getDataElements
(
left
,
top
,
width
,
height
,
matrix
);
return
matrix
;
}
@Override
public
boolean
isCropSupported
()
{
return
true
;
}
@Override
public
LuminanceSource
crop
(
int
left
,
int
top
,
int
width
,
int
height
)
{
return
new
BufferedImageLuminanceSource
(
image
,
this
.
left
+
left
,
this
.
top
+
top
,
width
,
height
);
}
@Override
public
boolean
isRotateSupported
()
{
return
true
;
}
@Override
public
LuminanceSource
rotateCounterClockwise
()
{
int
sourceWidth
=
image
.
getWidth
();
int
sourceHeight
=
image
.
getHeight
();
AffineTransform
transform
=
new
AffineTransform
(
0.0
,
-
1.0
,
1.0
,
0.0
,
0.0
,
sourceWidth
);
BufferedImage
rotatedImage
=
new
BufferedImage
(
sourceHeight
,
sourceWidth
,
BufferedImage
.
TYPE_BYTE_GRAY
);
Graphics2D
g
=
rotatedImage
.
createGraphics
();
g
.
drawImage
(
image
,
transform
,
null
);
g
.
dispose
();
int
width
=
getWidth
();
return
new
BufferedImageLuminanceSource
(
rotatedImage
,
top
,
sourceWidth
-
(
left
+
width
),
getHeight
(),
width
);
}
}
\ No newline at end of file
joying-common/src/main/java/com/fzm/common/model/ResponseModel.java
View file @
913a5e9e
...
...
@@ -29,7 +29,7 @@ public class ResponseModel<T> {
return
new
ResponseModel
<>(
ResultCode
.
SUCCESS
,
data
);
}
public
static
<
T
>
ResponseModel
<
T
>
success
()
{
public
static
<
T
>
ResponseModel
<
T
>
success
()
{
return
new
ResponseModel
<>(
ResultCode
.
SUCCESS
,
null
);
}
...
...
joying-common/src/main/java/com/fzm/common/params/LoginParam.java
View file @
913a5e9e
...
...
@@ -3,8 +3,6 @@ package com.fzm.common.params;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
/**
* @author tangtuo
* @date 2021/6/23 15:33
...
...
joying-common/src/main/java/com/fzm/common/params/NftTransferParam.java
View file @
913a5e9e
...
...
@@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
/**
...
...
joying-common/src/main/java/com/fzm/common/properties/DebugProperties.java
0 → 100644
View file @
913a5e9e
package
com
.
fzm
.
common
.
properties
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.stereotype.Component
;
/**
* @author wt
* @date 2022/3/4
*/
@Data
@Component
@ConfigurationProperties
(
prefix
=
"debug"
)
public
class
DebugProperties
{
private
Boolean
sms
;
private
Boolean
auth
;
}
joying-common/src/main/java/com/fzm/common/properties/ObsProperties.java
View file @
913a5e9e
...
...
@@ -2,7 +2,6 @@ package com.fzm.common.properties;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.stereotype.Component
;
/**
* @author tangtuo
...
...
joying-common/src/main/java/com/fzm/common/properties/WxPayProperties.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
properties
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.stereotype.Component
;
...
...
joying-common/src/main/java/com/fzm/common/service/CommemorateNftService.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.fzm.common.entity.Admin
;
import
com.fzm.common.entity.CommemorateNft
;
/**
...
...
joying-common/src/main/java/com/fzm/common/service/EntrustShelfService.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.fzm.common.entity.AuthPerson
;
import
com.fzm.common.entity.EntrustShelf
;
import
com.github.pagehelper.PageInfo
;
...
...
joying-common/src/main/java/com/fzm/common/service/NftService.java
View file @
913a5e9e
...
...
@@ -178,19 +178,20 @@ public interface NftService extends IService<Nft> {
/**
* 删除
*
* @param id
*/
void
delete
(
Integer
id
);
/**
* 获取当前用户正在发行中的nft列表
*
@return
*
* @param status
* @return
*/
List
<
Nft
>
getPublishingList
(
Integer
status
);
// void republish();
}
joying-common/src/main/java/com/fzm/common/service/NftTransferRecordService.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.fzm.common.entity.NftChainInfo
;
import
com.fzm.common.entity.NftTransferRecord
;
import
com.fzm.common.entity.vo.NftTransferDetailVo
;
import
com.fzm.common.entity.vo.NftTransferRecordVo
;
...
...
joying-common/src/main/java/com/fzm/common/service/OpusCategoryService.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.fzm.common.entity.Admin
;
import
com.fzm.common.entity.OpusCategory
;
import
java.util.List
;
...
...
joying-common/src/main/java/com/fzm/common/service/WxPayService.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
service
;
import
cn.hutool.json.JSONObject
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fzm.common.entity.dto.JsapiPayDto
;
import
javax.servlet.http.HttpServletRequest
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/AuthPersonServiceImpl.java
View file @
913a5e9e
...
...
@@ -5,11 +5,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import
com.fzm.common.entity.AuthPerson
;
import
com.fzm.common.mapper.AuthPersonMapper
;
import
com.fzm.common.service.AuthPersonService
;
import
jdk.nashorn.internal.ir.annotations.Reference
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
/**
* @author tangtuo
* @date 2021/6/28 11:29
...
...
joying-common/src/main/java/com/fzm/common/service/impl/CommemorateNftServiceImpl.java
View file @
913a5e9e
...
...
@@ -5,10 +5,8 @@ import cn.fzm.chain.simplesdk.constant.EvmTokenEnum;
import
cn.fzm.chain.simplesdk.constant.TxStatusEnum
;
import
cn.fzm.chain.simplesdk.model.TxResult
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.lang.Snowflake
;
import
cn.hutool.core.util.CharsetUtil
;
import
cn.hutool.core.util.HexUtil
;
import
cn.hutool.core.util.IdUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.fzm.common.constant.RedisConstant
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/CopyrightAuthorServiceImpl.java
View file @
913a5e9e
...
...
@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.fzm.common.entity.CopyrightAuthor
;
import
com.fzm.common.entity.CopyrightFile
;
import
com.fzm.common.mapper.CopyrightAuthorMapper
;
import
com.fzm.common.service.CopyrightAuthorService
;
import
org.springframework.stereotype.Service
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/CopyrightAuthorityRelationServiceImpl.java
View file @
913a5e9e
...
...
@@ -6,7 +6,6 @@ import com.fzm.common.entity.CopyrightAuthorityRelation;
import
com.fzm.common.mapper.CopyrightAuthorityRelationMapper
;
import
com.fzm.common.service.CopyrightAuthorityRelationService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/DraftServiceImpl.java
View file @
913a5e9e
...
...
@@ -5,11 +5,9 @@ import cn.hutool.core.collection.CollectionUtil;
import
cn.hutool.json.JSONUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.fzm.common.entity.CopyrightApply
;
import
com.fzm.common.entity.Draft
;
import
com.fzm.common.entity.dto.CopyrightDTO
;
import
com.fzm.common.entity.dto.DraftDTO
;
import
com.fzm.common.enums.CopyrightApplyState
;
import
com.fzm.common.enums.ResultCode
;
import
com.fzm.common.exception.GlobalException
;
import
com.fzm.common.mapper.DraftMapper
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/NftServiceImpl.java
View file @
913a5e9e
...
...
@@ -138,7 +138,7 @@ public class NftServiceImpl extends ServiceImpl<NftMapper, Nft> implements NftSe
throw
GlobalException
.
newException
(
ResultCode
.
FAILED
,
"nft发行失败"
);
}
String
tradeHash
=
paraChainClient
.
evmSetTokenInfo
(
abi
,
contractAddr
,
0L
,
tokenId
,
tokenInfo
,
wallet
,
privkey
,
true
);
System
.
out
.
println
(
"tradeHash = "
+
tradeHash
);
if
(
StringUtils
.
isBlank
(
tradeHash
))
{
throw
GlobalException
.
newException
(
ResultCode
.
PUBLISH_ERROR
,
"nft发行失败"
);
}
...
...
@@ -342,7 +342,7 @@ public class NftServiceImpl extends ServiceImpl<NftMapper, Nft> implements NftSe
throw
GlobalException
.
newException
(
ResultCode
.
FAILED
,
"nft发行失败"
);
}
String
tradeHash
=
paraChainClient
.
evmSetTokenInfo
(
abi
,
contractAddr
,
0L
,
tokenId
,
tokenInfo
,
wallet
,
privkey
,
true
);
System
.
out
.
println
(
"tradeHash = "
+
tradeHash
);
if
(
StringUtils
.
isBlank
(
tradeHash
))
{
throw
GlobalException
.
newException
(
ResultCode
.
PUBLISH_ERROR
,
"nft发行失败"
);
}
...
...
joying-common/src/main/java/com/fzm/common/service/impl/NftTransferRecordServiceImpl.java
View file @
913a5e9e
...
...
@@ -4,14 +4,11 @@ import cn.hutool.core.date.DateTime;
import
cn.hutool.core.date.DateUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.fzm.common.entity.AuthPerson
;
import
com.fzm.common.entity.NftTransferRecord
;
import
com.fzm.common.entity.User
;
import
com.fzm.common.entity.vo.NftTransferDetailVo
;
import
com.fzm.common.entity.vo.NftTransferRecordVo
;
import
com.fzm.common.mapper.AuthPersonMapper
;
import
com.fzm.common.mapper.NftTransferRecordMapper
;
import
com.fzm.common.service.AuthPersonService
;
import
com.fzm.common.service.NftTransferRecordService
;
import
com.fzm.common.service.UserService
;
import
org.apache.commons.lang3.StringUtils
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/OrderServiceImpl.java
View file @
913a5e9e
...
...
@@ -7,7 +7,10 @@ import com.fzm.common.entity.Order;
import
com.fzm.common.entity.dto.OrderDto
;
import
com.fzm.common.entity.dto.OrderProcessMsg
;
import
com.fzm.common.entity.vo.OrderVo
;
import
com.fzm.common.enums.*
;
import
com.fzm.common.enums.OrderStatus
;
import
com.fzm.common.enums.PayScene
;
import
com.fzm.common.enums.PayType
;
import
com.fzm.common.enums.ResultCode
;
import
com.fzm.common.exception.GlobalException
;
import
com.fzm.common.mapper.OrderMapper
;
import
com.fzm.common.service.*
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/RefundServiceImpl.java
View file @
913a5e9e
...
...
@@ -8,7 +8,6 @@ import com.fzm.common.entity.Refund;
import
com.fzm.common.entity.vo.PaymentVo
;
import
com.fzm.common.enums.RefundLaunchChannel
;
import
com.fzm.common.mapper.RefundMapper
;
import
com.fzm.common.service.OrderService
;
import
com.fzm.common.service.RefundService
;
import
com.fzm.common.service.WxPayService
;
import
com.github.pagehelper.PageHelper
;
...
...
joying-common/src/main/java/com/fzm/common/service/impl/UserServiceImpl.java
View file @
913a5e9e
...
...
@@ -22,6 +22,7 @@ import com.fzm.common.enums.ResultCode;
import
com.fzm.common.exception.GlobalException
;
import
com.fzm.common.mapper.UserMapper
;
import
com.fzm.common.params.LoginParam
;
import
com.fzm.common.properties.DebugProperties
;
import
com.fzm.common.properties.SmsProperties
;
import
com.fzm.common.service.AuthPersonService
;
import
com.fzm.common.service.UserService
;
...
...
@@ -83,6 +84,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
@Resource
private
ObsUtil
obsUtil
;
@Resource
private
DebugProperties
debugProperties
;
@Override
public
User
loadUserByUsername
(
String
username
)
{
...
...
@@ -227,12 +231,22 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
if
(
AuthStatus
.
SUCCESS
.
getStatus
().
equals
(
user
.
getAuthStatus
()))
{
throw
GlobalException
.
newException
(
ResultCode
.
ID_CARD_VERIFICATION_ERROR
,
"您已认证成功,无法再次认证"
);
}
Integer
userId
=
user
.
getId
();
BASE64Encoder
base64Encoder
=
new
BASE64Encoder
();
String
encode
=
"data:image/jpg;base64,"
+
base64Encoder
.
encode
(
cardPictureFront
.
getBytes
());
IdCardOCRVerificationResponse
response
=
TencentApi
.
idCardOCRVerification
(
encode
);
log
.
info
(
"实名认证结果:{}"
,
JSONUtil
.
toJsonStr
(
response
));
Integer
status
;
Integer
userId
=
user
.
getId
();
IdCardOCRVerificationResponse
response
;
if
(
debugProperties
.
getAuth
())
{
response
=
new
IdCardOCRVerificationResponse
();
response
.
setResult
(
IdCardVerificationResponse
.
SUCCESS
.
getCode
());
response
.
setIdCard
(
"000000000000000000"
);
response
.
setName
(
"个人认证"
);
}
else
{
BASE64Encoder
base64Encoder
=
new
BASE64Encoder
();
String
encode
=
"data:image/jpg;base64,"
+
base64Encoder
.
encode
(
cardPictureFront
.
getBytes
());
response
=
TencentApi
.
idCardOCRVerification
(
encode
);
log
.
info
(
"实名认证结果:{}"
,
JSONUtil
.
toJsonStr
(
response
));
}
if
(
IdCardVerificationResponse
.
SUCCESS
.
getCode
().
equals
(
response
.
getResult
()))
{
// 验证成功上传身份证证件
String
frontUrl
=
obsUtil
.
putObject
(
cardPictureFront
);
...
...
joying-common/src/main/java/com/fzm/common/service/impl/WxPayServiceImpl.java
View file @
913a5e9e
...
...
@@ -9,14 +9,12 @@ import com.fzm.common.constant.SystemConstant;
import
com.fzm.common.entity.Order
;
import
com.fzm.common.entity.Payment
;
import
com.fzm.common.entity.Refund
;
import
com.fzm.common.entity.User
;
import
com.fzm.common.entity.dto.JsapiPayDto
;
import
com.fzm.common.entity.dto.OrderProcessMsg
;
import
com.fzm.common.enums.*
;
import
com.fzm.common.exception.GlobalException
;
import
com.fzm.common.properties.WxPayProperties
;
import
com.fzm.common.service.*
;
import
com.fzm.common.utils.SmsUtil
;
import
com.fzm.common.utils.SnowflakeUtil
;
import
com.wechat.pay.contrib.apache.httpclient.util.AesUtil
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -39,7 +37,6 @@ import javax.servlet.http.HttpServletRequest;
import
java.io.BufferedReader
;
import
java.io.ByteArrayOutputStream
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.nio.charset.StandardCharsets
;
import
java.security.GeneralSecurityException
;
import
java.security.PrivateKey
;
...
...
joying-common/src/main/java/com/fzm/common/utils/CopyrightSignUtil.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
utils
;
import
cn.hutool.crypto.SecureUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.fzm.common.entity.dto.CopyrightRequest
;
import
com.fzm.common.properties.CopyrightProperties
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.boot.autoconfigure.codec.CodecProperties
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.Resource
;
import
java.util.Map
;
import
java.util.TreeMap
;
...
...
joying-common/src/main/java/com/fzm/common/utils/PasswordUtil.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
utils
;
import
cn.hutool.crypto.SecureUtil
;
import
cn.hutool.crypto.asymmetric.Sign
;
import
cn.hutool.crypto.asymmetric.SignAlgorithm
;
import
cn.hutool.crypto.symmetric.SymmetricAlgorithm
;
import
cn.hutool.crypto.symmetric.SymmetricCrypto
;
import
sun.misc.BASE64Encoder
;
import
sun.security.krb5.internal.crypto.HmacSha1Aes256CksumType
;
import
java.nio.charset.StandardCharsets
;
import
java.util.Arrays
;
/**
* @author tangtuo
...
...
@@ -33,7 +25,7 @@ public class PasswordUtil {
public
static
void
main
(
String
[]
args
)
{
String
password
=
"12rehkkkfbhksskkhbssrktbsr3456gbibvbybkfnriowernolwgrojgbrqg"
;
String
password
=
"12rehkkkfbhksskkhbssrktbsr3456gbibvbybkfnriowernolwgrojgbrqg"
;
String
encrypt
=
encrypt
(
password
);
System
.
out
.
println
(
encrypt
);
System
.
out
.
println
(
match
(
encrypt
,
password
));
...
...
joying-common/src/main/java/com/fzm/common/utils/QRCodeUtil.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
utils
;
import
java.awt.BasicStroke
;
import
java.awt.Graphics
;
import
java.awt.Graphics2D
;
import
java.awt.Image
;
import
java.awt.Shape
;
import
com.fzm.common.model.BufferedImageLuminanceSource
;
import
com.google.zxing.*
;
import
com.google.zxing.common.BitMatrix
;
import
com.google.zxing.common.HybridBinarizer
;
import
com.google.zxing.qrcode.decoder.ErrorCorrectionLevel
;
import
sun.misc.BASE64Encoder
;
import
javax.imageio.ImageIO
;
import
java.awt.*
;
import
java.awt.geom.RoundRectangle2D
;
import
java.awt.image.BufferedImage
;
import
java.io.ByteArrayOutputStream
;
...
...
@@ -12,20 +16,6 @@ import java.io.File;
import
java.io.IOException
;
import
java.io.OutputStream
;
import
java.util.Hashtable
;
import
javax.imageio.ImageIO
;
import
com.fzm.common.model.BufferedImageLuminanceSource
;
import
com.google.zxing.BarcodeFormat
;
import
com.google.zxing.BinaryBitmap
;
import
com.google.zxing.DecodeHintType
;
import
com.google.zxing.EncodeHintType
;
import
com.google.zxing.MultiFormatReader
;
import
com.google.zxing.MultiFormatWriter
;
import
com.google.zxing.Result
;
import
com.google.zxing.common.BitMatrix
;
import
com.google.zxing.common.HybridBinarizer
;
import
com.google.zxing.qrcode.decoder.ErrorCorrectionLevel
;
import
sun.misc.BASE64Encoder
;
public
class
QRCodeUtil
{
private
static
final
String
CHARSET
=
"utf-8"
;
...
...
@@ -113,7 +103,7 @@ public class QRCodeUtil {
BASE64Encoder
encoder
=
new
BASE64Encoder
();
String
png_base64
=
encoder
.
encodeBuffer
(
bytes
).
trim
();
//转换成base64串
png_base64
=
png_base64
.
replaceAll
(
"\n"
,
""
).
replaceAll
(
"\r"
,
""
);
//删除 \r\n
System
.
out
.
println
(
"值为:"
+
"data:image/jpg;base64,"
+
png_base64
);
return
"data:image/jpg;base64,"
+
png_base64
;
}
...
...
joying-common/src/main/java/com/fzm/common/utils/SmsUtil.java
View file @
913a5e9e
...
...
@@ -9,6 +9,7 @@ import cn.hutool.json.JSONObject;
import
cn.hutool.json.JSONUtil
;
import
com.fzm.common.enums.ResultCode
;
import
com.fzm.common.exception.GlobalException
;
import
com.fzm.common.properties.DebugProperties
;
import
com.fzm.common.properties.SmsProperties
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Component
;
...
...
@@ -26,6 +27,9 @@ public class SmsUtil {
@Resource
private
SmsProperties
smsProperties
;
@Resource
private
DebugProperties
debugProperties
;
public
static
String
getStringToSignOfStr
(
Map
<
String
,
Object
>
map
)
{
TreeMap
<
String
,
String
>
treeMap
=
new
TreeMap
<>();
...
...
@@ -63,13 +67,17 @@ public class SmsUtil {
* @return
*/
public
Boolean
sendSms
(
String
codetype
,
String
mobile
)
{
if
(
debugProperties
.
getSms
())
{
return
true
;
}
String
timestamp
=
getTimestamp
();
HashMap
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"mobile"
,
mobile
);
params
.
put
(
"codetype"
,
codetype
);
params
.
put
(
"param"
,
"FzmRandom4"
);
String
paramStr
=
getStringToSignOfStr
(
params
);
System
.
out
.
println
(
paramStr
);
String
sign
=
getSign
(
smsProperties
.
getAppKey
(),
smsProperties
.
getAppSecret
(),
paramStr
,
timestamp
);
HttpResponse
response
=
HttpRequest
.
post
(
smsProperties
.
getSendSmsUrl
()).
header
(
"FZM-Ca-Timestamp"
,
timestamp
).
...
...
@@ -94,13 +102,17 @@ public class SmsUtil {
* @return
*/
public
Boolean
sendRefundSms
(
String
mobile
,
String
fee
)
{
if
(
debugProperties
.
getSms
())
{
return
true
;
}
String
timestamp
=
getTimestamp
();
HashMap
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"mobile"
,
mobile
);
params
.
put
(
"codetype"
,
smsProperties
.
getRefundMessageCodetype
());
params
.
put
(
"param"
,
fee
);
String
paramStr
=
getStringToSignOfStr
(
params
);
System
.
out
.
println
(
paramStr
);
String
sign
=
getSign
(
smsProperties
.
getAppKey
(),
smsProperties
.
getAppSecret
(),
paramStr
,
timestamp
);
HttpResponse
response
=
HttpRequest
.
post
(
smsProperties
.
getSendSmsUrl
()).
header
(
"FZM-Ca-Timestamp"
,
timestamp
).
...
...
@@ -124,6 +136,10 @@ public class SmsUtil {
* @return
*/
public
Boolean
validateCode
(
String
codetype
,
String
mobile
,
String
code
,
String
type
)
{
if
(
debugProperties
.
getSms
())
{
return
true
;
}
String
timestamp
=
getTimestamp
();
HashMap
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"t"
,
type
);
...
...
joying-common/src/main/java/com/fzm/common/utils/TencentApi.java
View file @
913a5e9e
package
com
.
fzm
.
common
.
utils
;
import
com.fzm.common.enums.IdCardVerificationResponse
;
import
com.fzm.common.enums.ResultCode
;
import
com.fzm.common.exception.GlobalException
;
import
com.tencentcloudapi.common.Credential
;
...
...
joying-common/src/main/resources/mapper/NftMapper.xml
View file @
913a5e9e
...
...
@@ -102,11 +102,13 @@
a.is_commemorate
FROM tb_nft a
WHERE a.user_id = #{userId}
AND publish_status = 2
AND nft_hash NOT IN (
SELECT nft_hash FROM tb_copyright_apply)
AND publish_status = 2
AND nft_hash NOT IN (
SELECT nft_hash FROM tb_copyright_apply)
</select>
<select
id=
"get"
resultType=
"com.fzm.common.entity.Nft"
>
select * from tb_nft where nft_hash != ''
select *
from tb_nft
where nft_hash != ''
</select>
</mapper>
\ No newline at end of file
joying-portal/mvnw
View file @
913a5e9e
...
...
@@ -34,128 +34,135 @@
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------
if
[
-z
"
$MAVEN_SKIP_RC
"
]
;
then
if
[
-z
"
$MAVEN_SKIP_RC
"
]
;
then
if
[
-f
/etc/mavenrc
]
;
then
if
[
-f
/etc/mavenrc
]
;
then
.
/etc/mavenrc
fi
if
[
-f
"
$HOME
/.mavenrc"
]
;
then
if
[
-f
"
$HOME
/.mavenrc"
]
;
then
.
"
$HOME
/.mavenrc"
fi
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin
=
false
;
darwin
=
false
;
cygwin
=
false
darwin
=
false
mingw
=
false
case
"
`
uname
`
"
in
CYGWIN
*
)
cygwin
=
true
;;
MINGW
*
)
mingw
=
true
;;
Darwin
*
)
darwin
=
true
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Hom
e
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-x
"/usr/libexec/java_home
"
]
;
then
export
JAVA_HOME
=
"
`
/usr/libexec/java_home
`
"
e
lse
export
JAVA_HOME
=
"/Library/Java/Home"
fi
case
"
$(
uname
)
"
in
CYGWIN
*
)
cygwin
=
true
;;
MINGW
*
)
mingw
=
true
;;
Darwin
*
)
darwin
=
tru
e
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-x
"/usr/libexec/java_home"
]
;
then
e
xport
JAVA_HOME
=
"
$(
/usr/libexec/java_home
)
"
else
export
JAVA_HOME
=
"/Library/Java/Home"
fi
;;
fi
;;
esac
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-r
/etc/gentoo-release
]
;
then
JAVA_HOME
=
`
java-config
--jre-home
`
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-r
/etc/gentoo-release
]
;
then
JAVA_HOME
=
$(
java-config
--jre-home
)
fi
fi
if
[
-z
"
$M2_HOME
"
]
;
then
if
[
-z
"
$M2_HOME
"
]
;
then
## resolve links - $0 may be a link to maven's home
PRG
=
"
$0
"
# need this for relative symlinks
while
[
-h
"
$PRG
"
]
;
do
ls
=
`
ls
-ld
"
$PRG
"
`
link
=
`
expr
"
$ls
"
:
'.*-> \(.*\)$'
`
if
expr
"
$link
"
:
'/.*'
>
/dev/null
;
then
while
[
-h
"
$PRG
"
]
;
do
ls
=
$(
ls
-ld
"
$PRG
"
)
link
=
$(
expr
"
$ls
"
:
'.*-> \(.*\)$'
)
if
expr
"
$link
"
:
'/.*'
>
/dev/null
;
then
PRG
=
"
$link
"
else
PRG
=
"
`
dirname
"
$PRG
"
`
/
$link
"
PRG
=
"
$(
dirname
"
$PRG
"
)
/
$link
"
fi
done
saveddir
=
`
pwd
`
saveddir
=
$(
pwd
)
M2_HOME
=
`
dirname
"
$PRG
"
`
/..
M2_HOME
=
$(
dirname
"
$PRG
"
)
/..
# make it fully qualified
M2_HOME
=
`
cd
"
$M2_HOME
"
&&
pwd
`
M2_HOME
=
$(
cd
"
$M2_HOME
"
&&
pwd
)
cd
"
$saveddir
"
# echo Using m2 at $M2_HOME
fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if
$cygwin
;
then
if
$cygwin
;
then
[
-n
"
$M2_HOME
"
]
&&
M2_HOME
=
`
cygpath
--unix
"
$M2_HOME
"
`
M2_HOME
=
$(
cygpath
--unix
"
$M2_HOME
"
)
[
-n
"
$JAVA_HOME
"
]
&&
JAVA_HOME
=
`
cygpath
--unix
"
$JAVA_HOME
"
`
JAVA_HOME
=
$(
cygpath
--unix
"
$JAVA_HOME
"
)
[
-n
"
$CLASSPATH
"
]
&&
CLASSPATH
=
`
cygpath
--path
--unix
"
$CLASSPATH
"
`
CLASSPATH
=
$(
cygpath
--path
--unix
"
$CLASSPATH
"
)
fi
# For Mingw, ensure paths are in UNIX format before anything is touched
if
$mingw
;
then
if
$mingw
;
then
[
-n
"
$M2_HOME
"
]
&&
M2_HOME
=
"
`
(
cd
"
$M2_HOME
"
;
pwd
)
`
"
M2_HOME
=
"
$(
(
cd
"
$M2_HOME
"
pwd
)
)"
[
-n
"
$JAVA_HOME
"
]
&&
JAVA_HOME
=
"
`
(
cd
"
$JAVA_HOME
"
;
pwd
)
`
"
JAVA_HOME
=
"
$(
(
cd
"
$JAVA_HOME
"
pwd
)
)"
fi
if
[
-z
"
$JAVA_HOME
"
]
;
then
javaExecutable
=
"
`
which javac
`
"
if
[
-n
"
$javaExecutable
"
]
&&
!
[
"
`
expr
\"
$javaExecutable
\"
:
'\([^ ]*\)'
`
"
=
"no"
]
;
then
javaExecutable
=
"
$(
which javac
)
"
if
[
-n
"
$javaExecutable
"
]
&&
!
[
"
$(
expr
\"
$javaExecutable
\"
:
'\([^ ]*\)'
)
"
=
"no"
]
;
then
# readlink(1) is not available as standard on Solaris 10.
readLink
=
`
which
readlink
`
if
[
!
`
expr
"
$readLink
"
:
'\([^ ]*\)'
`
=
"no"
]
;
then
if
$darwin
;
then
javaHome
=
"
`
dirname
\"
$javaExecutable
\"
`
"
javaExecutable
=
"
`
cd
\"
$javaHome
\"
&&
pwd
-P
`
/javac"
readLink
=
$(
which
readlink
)
if
[
!
$(
expr
"
$readLink
"
:
'\([^ ]*\)'
)
=
"no"
]
;
then
if
$darwin
;
then
javaHome
=
"
$(
dirname
\"
$javaExecutable
\"
)
"
javaExecutable
=
"
$(
cd
\"
$javaHome
\"
&&
pwd
-P
)
/javac"
else
javaExecutable
=
"
`
readlink
-f
\"
$javaExecutable
\"
`
"
javaExecutable
=
"
$(
readlink
-f
\"
$javaExecutable
\"
)
"
fi
javaHome
=
"
`
dirname
\"
$javaExecutable
\"
`
"
javaHome
=
`
expr
"
$javaHome
"
:
'\(.*\)/bin'
`
javaHome
=
"
$(
dirname
\"
$javaExecutable
\"
)
"
javaHome
=
$(
expr
"
$javaHome
"
:
'\(.*\)/bin'
)
JAVA_HOME
=
"
$javaHome
"
export
JAVA_HOME
fi
fi
fi
if
[
-z
"
$JAVACMD
"
]
;
then
if
[
-n
"
$JAVA_HOME
"
]
;
then
if
[
-x
"
$JAVA_HOME
/jre/sh/java"
]
;
then
if
[
-z
"
$JAVACMD
"
]
;
then
if
[
-n
"
$JAVA_HOME
"
]
;
then
if
[
-x
"
$JAVA_HOME
/jre/sh/java"
]
;
then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD
=
"
$JAVA_HOME
/jre/sh/java"
else
JAVACMD
=
"
$JAVA_HOME
/bin/java"
fi
else
JAVACMD
=
"
`
which java
`
"
JAVACMD
=
"
$(
which java
)
"
fi
fi
if
[
!
-x
"
$JAVACMD
"
]
;
then
if
[
!
-x
"
$JAVACMD
"
]
;
then
echo
"Error: JAVA_HOME is not defined correctly."
>
&2
echo
" We cannot execute
$JAVACMD
"
>
&2
exit
1
fi
if
[
-z
"
$JAVA_HOME
"
]
;
then
if
[
-z
"
$JAVA_HOME
"
]
;
then
echo
"Warning: JAVA_HOME environment variable is not set."
fi
...
...
@@ -165,22 +172,24 @@ CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir
()
{
if
[
-z
"
$1
"
]
then
if
[
-z
"
$1
"
]
;
then
echo
"Path not specified to find_maven_basedir"
return
1
fi
basedir
=
"
$1
"
wdir
=
"
$1
"
while
[
"
$wdir
"
!=
'/'
]
;
do
if
[
-d
"
$wdir
"
/.mvn
]
;
then
while
[
"
$wdir
"
!=
'/'
]
;
do
if
[
-d
"
$wdir
"
/.mvn
]
;
then
basedir
=
$wdir
break
fi
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
if
[
-d
"
${
wdir
}
"
]
;
then
wdir
=
`
cd
"
$wdir
/.."
;
pwd
`
wdir
=
$(
cd
"
$wdir
/.."
pwd
)
fi
# end of workaround
done
...
...
@@ -190,13 +199,13 @@ find_maven_basedir() {
# concatenates all lines of a file
concat_lines
()
{
if
[
-f
"
$1
"
]
;
then
echo
"
$(
tr
-s
'\n'
' '
<
"
$1
"
)
"
echo
"
$(
tr
-s
'\n'
' '
<
"
$1
"
)
"
fi
}
BASE_DIR
=
`
find_maven_basedir
"
$(
pwd
)
"
`
BASE_DIR
=
$(
find_maven_basedir
"
$(
pwd
)
"
)
if
[
-z
"
$BASE_DIR
"
]
;
then
exit
1
;
exit
1
fi
##########################################################################################
...
...
@@ -204,75 +213,78 @@ fi
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if
[
-r
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.jar"
]
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Found .mvn/wrapper/maven-wrapper.jar"
fi
else
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
fi
if
[
-n
"
$MVNW_REPOURL
"
]
;
then
jarUrl
=
"
$MVNW_REPOURL
/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
else
jarUrl
=
"https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
fi
while
IFS
=
"="
read
key value
;
do
case
"
$key
"
in
wrapperUrl
)
jarUrl
=
"
$value
"
break
;;
esac
done
<
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.properties"
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Downloading from:
$jarUrl
"
fi
wrapperJarPath
=
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.jar"
if
$cygwin
;
then
wrapperJarPath
=
$(
cygpath
--path
--windows
"
$wrapperJarPath
"
)
fi
if
command
-v
wget
>
/dev/null
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Found
.mvn/wrapper/maven-wrapper.jar
"
echo
"Found
wget ... using wget
"
fi
else
if
[
-z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
wget
"
$jarUrl
"
-O
"
$wrapperJarPath
"
else
wget
--http-user
=
$MVNW_USERNAME
--http-password
=
$MVNW_PASSWORD
"
$jarUrl
"
-O
"
$wrapperJarPath
"
fi
elif
command
-v
curl
>
/dev/null
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"
Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ...
"
echo
"
Found curl ... using curl
"
fi
if
[
-
n
"
$MVNW_REPOURL
"
]
;
then
jarUrl
=
"
$MVNW_REPOURL
/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
if
[
-
z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
curl
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
else
jarUrl
=
"https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
curl
--user
$MVNW_USERNAME
:
$MVNW_PASSWORD
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
fi
while
IFS
=
"="
read
key value
;
do
case
"
$key
"
in
(
wrapperUrl
)
jarUrl
=
"
$value
"
;
break
;;
esac
done
<
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.properties"
else
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"
Downloading from:
$jarUrl
"
echo
"
Falling back to using Java to download
"
fi
wrapperJarPath
=
"
$BASE_DIR
/.mvn/wrapper/maven-wrapper.jar"
javaClass
=
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if
$cygwin
;
then
wrapperJarPath
=
`
cygpath
--path
--windows
"
$wrapperJarPath
"
`
javaClass
=
$(
cygpath
--path
--windows
"
$javaClass
"
)
fi
if
command
-v
wget
>
/dev/null
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Found wget ... using wget"
fi
if
[
-z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
wget
"
$jarUrl
"
-O
"
$wrapperJarPath
"
else
wget
--http-user
=
$MVNW_USERNAME
--http-password
=
$MVNW_PASSWORD
"
$jarUrl
"
-O
"
$wrapperJarPath
"
fi
elif
command
-v
curl
>
/dev/null
;
then
if
[
-e
"
$javaClass
"
]
;
then
if
[
!
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"
Found curl ... using curl
"
echo
"
- Compiling MavenWrapperDownloader.java ...
"
fi
if
[
-z
"
$MVNW_USERNAME
"
]
||
[
-z
"
$MVNW_PASSWORD
"
]
;
then
curl
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
else
curl
--user
$MVNW_USERNAME
:
$MVNW_PASSWORD
-o
"
$wrapperJarPath
"
"
$jarUrl
"
-f
fi
else
# Compiling the Java class
(
"
$JAVA_HOME
/bin/javac"
"
$javaClass
"
)
fi
if
[
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
# Running the downloader
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
"Falling back to using Java to download"
fi
javaClass
=
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if
$cygwin
;
then
javaClass
=
`
cygpath
--path
--windows
"
$javaClass
"
`
fi
if
[
-e
"
$javaClass
"
]
;
then
if
[
!
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
" - Compiling MavenWrapperDownloader.java ..."
fi
# Compiling the Java class
(
"
$JAVA_HOME
/bin/javac"
"
$javaClass
"
)
fi
if
[
-e
"
$BASE_DIR
/.mvn/wrapper/MavenWrapperDownloader.class"
]
;
then
# Running the downloader
if
[
"
$MVNW_VERBOSE
"
=
true
]
;
then
echo
" - Running MavenWrapperDownloader.java ..."
fi
(
"
$JAVA_HOME
/bin/java"
-cp
.mvn/wrapper MavenWrapperDownloader
"
$MAVEN_PROJECTBASEDIR
"
)
fi
echo
" - Running MavenWrapperDownloader.java ..."
fi
(
"
$JAVA_HOME
/bin/java"
-cp
.mvn/wrapper MavenWrapperDownloader
"
$MAVEN_PROJECTBASEDIR
"
)
fi
fi
fi
fi
##########################################################################################
# End of extension
...
...
@@ -287,13 +299,13 @@ MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
# For Cygwin, switch paths to Windows format before running java
if
$cygwin
;
then
[
-n
"
$M2_HOME
"
]
&&
M2_HOME
=
`
cygpath
--path
--windows
"
$M2_HOME
"
`
M2_HOME
=
$(
cygpath
--path
--windows
"
$M2_HOME
"
)
[
-n
"
$JAVA_HOME
"
]
&&
JAVA_HOME
=
`
cygpath
--path
--windows
"
$JAVA_HOME
"
`
JAVA_HOME
=
$(
cygpath
--path
--windows
"
$JAVA_HOME
"
)
[
-n
"
$CLASSPATH
"
]
&&
CLASSPATH
=
`
cygpath
--path
--windows
"
$CLASSPATH
"
`
CLASSPATH
=
$(
cygpath
--path
--windows
"
$CLASSPATH
"
)
[
-n
"
$MAVEN_PROJECTBASEDIR
"
]
&&
MAVEN_PROJECTBASEDIR
=
`
cygpath
--path
--windows
"
$MAVEN_PROJECTBASEDIR
"
`
MAVEN_PROJECTBASEDIR
=
$(
cygpath
--path
--windows
"
$MAVEN_PROJECTBASEDIR
"
)
fi
# Provide a "standardized" way to retrieve the CLI args that will
...
...
joying-portal/pom.xml
View file @
913a5e9e
...
...
@@ -34,7 +34,7 @@
<dependency>
<groupId>
com.fzm
</groupId>
<artifactId>
joying-common
</artifactId>
<version>
1.
0
.0
</version>
<version>
1.
1
.0
</version>
</dependency>
<dependency>
...
...
joying-portal/src/main/java/com/fzm/portal/controller/ChargeController.java
View file @
913a5e9e
...
...
@@ -7,7 +7,10 @@ import com.fzm.common.service.ChargeService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
...
...
joying-portal/src/main/java/com/fzm/portal/controller/CopyrightApplyController.java
View file @
913a5e9e
...
...
@@ -112,7 +112,7 @@ public class CopyrightApplyController {
@GetMapping
(
"/certificate/{id}"
)
@ApiOperation
(
value
=
"查看版权存证证书"
)
public
ResponseModel
<
CopyrightCertificateVo
>
getCertificate
(
@PathVariable
Integer
id
){
public
ResponseModel
<
CopyrightCertificateVo
>
getCertificate
(
@PathVariable
Integer
id
)
{
CopyrightCertificateVo
copyrightCertificateVo
=
copyrightApplyService
.
getCertificate
(
id
);
return
ResponseModel
.
success
(
copyrightCertificateVo
);
}
...
...
joying-portal/src/main/java/com/fzm/portal/controller/DraftController.java
View file @
913a5e9e
...
...
@@ -3,7 +3,6 @@ package com.fzm.portal.controller;
import
com.fzm.common.annotation.Authentication
;
import
com.fzm.common.entity.Draft
;
import
com.fzm.common.entity.dto.DraftDTO
;
import
com.fzm.common.entity.vo.CopyrightVo
;
import
com.fzm.common.model.ResponseModel
;
import
com.fzm.common.service.DraftService
;
import
com.fzm.common.utils.JwtUtil
;
...
...
joying-portal/src/main/java/com/fzm/portal/controller/EntrustShelfController.java
View file @
913a5e9e
...
...
@@ -12,7 +12,6 @@ import org.springframework.validation.annotation.Validated;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
/**
* @author tangtuo
...
...
joying-portal/src/main/java/com/fzm/portal/controller/FileTemplateController.java
View file @
913a5e9e
...
...
@@ -6,7 +6,6 @@ import com.fzm.common.service.FileTemplateService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
joying-portal/src/main/java/com/fzm/portal/controller/NftController.java
View file @
913a5e9e
...
...
@@ -3,7 +3,6 @@ package com.fzm.portal.controller;
import
cn.hutool.crypto.SecureUtil
;
import
com.fzm.common.annotation.Authentication
;
import
com.fzm.common.entity.Nft
;
import
com.fzm.common.entity.NftDto
;
import
com.fzm.common.entity.User
;
import
com.fzm.common.entity.vo.CollectionNftVo
;
import
com.fzm.common.entity.vo.NftCertificateVo
;
...
...
joying-portal/src/main/java/com/fzm/portal/controller/NftTransferRecordController.java
View file @
913a5e9e
...
...
@@ -4,12 +4,14 @@ import com.fzm.common.annotation.Authentication;
import
com.fzm.common.entity.vo.NftTransferDetailVo
;
import
com.fzm.common.model.ResponseModel
;
import
com.fzm.common.service.NftTransferRecordService
;
import
com.fzm.common.utils.JwtUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
java.util.List
;
...
...
@@ -37,7 +39,7 @@ public class NftTransferRecordController {
@GetMapping
(
"/detail/{id}"
)
@ApiOperation
(
value
=
"获取流转详情"
)
public
ResponseModel
<
NftTransferDetailVo
>
getDetail
(
@PathVariable
Integer
id
){
public
ResponseModel
<
NftTransferDetailVo
>
getDetail
(
@PathVariable
Integer
id
)
{
NftTransferDetailVo
nftTransferDetailVo
=
nftTransferRecordService
.
getDetail
(
id
);
return
ResponseModel
.
success
(
nftTransferDetailVo
);
}
...
...
joying-portal/src/main/java/com/fzm/portal/controller/UserController.java
View file @
913a5e9e
...
...
@@ -128,7 +128,7 @@ public class UserController {
@ApiOperation
(
value
=
"个人认证"
)
public
ResponseModel
<
IdCardOCRVerificationResponse
>
personAuth
(
@ApiParam
(
"身份证正面照"
)
@RequestParam
MultipartFile
front
,
@ApiParam
(
"身份证反面照"
)
@RequestParam
MultipartFile
back
)
throws
IOException
{
return
ResponseModel
.
success
(
userService
.
personAuth
(
front
,
back
));
return
ResponseModel
.
success
(
userService
.
personAuth
(
front
,
back
));
}
...
...
joying-portal/src/main/java/com/fzm/portal/controller/WxPayController.java
View file @
913a5e9e
...
...
@@ -3,7 +3,6 @@ package com.fzm.portal.controller;
import
cn.hutool.http.HttpStatus
;
import
com.fzm.common.annotation.Authentication
;
import
com.fzm.common.entity.dto.JsapiPayDto
;
import
com.fzm.common.entity.dto.OrderDto
;
import
com.fzm.common.enums.RefundLaunchChannel
;
import
com.fzm.common.model.ResponseModel
;
import
com.fzm.common.service.WxPayService
;
...
...
joying-portal/src/main/java/com/fzm/portal/listener/NftListener.java
View file @
913a5e9e
...
...
@@ -21,8 +21,6 @@ import org.springframework.amqp.rabbit.annotation.RabbitListener;
import
org.springframework.stereotype.Component
;
import
javax.annotation.Resource
;
import
java.io.IOException
;
import
java.util.Date
;
/**
* @author tangtuo
...
...
joying-portal/src/main/java/com/fzm/portal/listener/OrderListener.java
View file @
913a5e9e
...
...
@@ -14,7 +14,6 @@ import org.springframework.amqp.rabbit.annotation.RabbitListener;
import
org.springframework.stereotype.Component
;
import
javax.annotation.Resource
;
import
java.io.IOException
;
/**
* @author tangtuo
...
...
joying-portal/src/main/resources/application-dev.yml
deleted
100644 → 0
View file @
232fed80
server
:
port
:
8001
spring
:
main
:
allow-bean-definition-overriding
:
true
datasource
:
url
:
jdbc:mysql://172.16.101.135:3306/joying_dev?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
username
:
root
password
:
Joying@123456
platform
:
mysql
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
druid
:
initial-size
:
5
min-idle
:
5
max-active
:
20
max-wait
:
60000
time-between-eviction-runs-millis
:
60000
min-evictable-idle-time-millis
:
300000
validation-query
:
SELECT 1 FROM DUAL
test-while-idle
:
true
test-on-borrow
:
false
test-on-return
:
false
pool-prepared-statements
:
false
max-pool-prepared-statement-per-connection-size
:
20
filters
:
stat ,wall
connection-properties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
useGlobalDataSourceStat
:
true
redis
:
host
:
172.16.101.135
port
:
6379
password
:
123456
lettuce
:
pool
:
# 连接池最大连接数(使用负值表示没有限制) 默认 8
max-active
:
100
# 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-wait
:
-1
# 连接池中的最大空闲连接 默认 8
max-idle
:
8
# 连接池中的最小空闲连接 默认 0
min-idle
:
0
cache
:
# 整合SpringCache,redis作为缓存类型
type
:
redis
redis
:
time-to-live
:
86400000
rabbitmq
:
host
:
172.16.101.135
port
:
5672
username
:
admin
password
:
admin
listener
:
simple
:
retry
:
enabled
:
true
max-attempts
:
5
# 最大重试次数
initial-interval
:
1000
# 初始的失败等待时长为1秒
multiplier
:
2
# 下次失败的等待时长倍数,下次等待时长 = multiplier * last-interval
stateless
:
true
# true无状态;false有状态。如果业务中包含事务,这里改为false
swagger
:
title
:
乐映影视门户系统
description
:
乐映影视门户系统RESTFUL API
version
:
1.0.0
base-package
:
com.fzm.portal.controller
base-path
:
/**
enabled
:
true
globalOperationParameters
:
-
description
:
Authorization
modelRef
:
string
name
:
Authorization
parameterType
:
header
required
:
false
contact
:
name
:
tangtuo
email
:
ttuo@33.com
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
login-message-codetype
:
quick
login-email-codetype
:
quick
login-voice-codetype
:
quick
send-sms-url
:
http://118.31.52.32/send/sms2
validate-code-url
:
http://118.31.52.32/validate/code
transfer-nft-message-codetype
:
notice_transfer
transfer-nft-email-codetype
:
notice_transfer
transfer-nft-voice-codetype
:
notice_transfer
refund-message-codetype
:
notice_refund
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
withhold
:
withhold-key
:
a4c49dcb35e0032dc8db5891dc81481943b68fc558ce93ce74d0382c1d104934
token-manager
:
token-manager-key
:
4e92bda2477ded0e7c07a9e3acd2370de8d7401c68cc83ee8376806db3121e77
title
:
user.p.FILMCHAIN.
cName
:
user.evm.0xa038a372ab27d9038328932c98454e52390b94555a69ab9559e8ab14ff2e540f
cAddr
:
1Nhju8CgSUmkQQwc7ECk4bFxnv48iRLNRX
huaweiyun
:
obs
:
app-key
:
HIULSHJZJOTWB72Z38ZB
app-secret
:
GI0oWEGRJuMKmPXJq2fCmuMpFPIITLmjeCQxo2tA
end-point
:
obs.cn-east-3.myhuaweicloud.com
bucket
:
filmchain-file
wx-pay
:
app-id
:
wxbdddd81913c795e9
app-secret
:
aa201717c46a0e07c4c143b1ee73229a
mch-id
:
1604477044
api-v3-key
:
D864DA53FEF8ACD41519064967DC10D2
mch-serial-num
:
72A62544B0A08A214FAEC780108692EDC6E7D5FA
private-key-path
:
apiclient_key.pem
pay-notify-url
:
https://146.56.218.121:12100/wx-pay/notify/jsapi
refund-notify-url
:
https://146.56.218.121:12100/wx-pay/notify/refund
joying-portal/src/main/resources/application-local.yml
deleted
100644 → 0
View file @
232fed80
server
:
port
:
8001
spring
:
main
:
allow-bean-definition-overriding
:
true
datasource
:
url
:
jdbc:mysql://172.16.101.135:3306/joying_dev?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
username
:
root
password
:
Joying@123456
platform
:
mysql
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
druid
:
initial-size
:
5
min-idle
:
5
max-active
:
20
max-wait
:
60000
time-between-eviction-runs-millis
:
60000
min-evictable-idle-time-millis
:
300000
validation-query
:
SELECT 1 FROM DUAL
test-while-idle
:
true
test-on-borrow
:
false
test-on-return
:
false
pool-prepared-statements
:
false
max-pool-prepared-statement-per-connection-size
:
20
filters
:
stat ,wall
connection-properties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
useGlobalDataSourceStat
:
true
redis
:
host
:
172.16.101.135
port
:
6379
password
:
123456
lettuce
:
pool
:
# 连接池最大连接数(使用负值表示没有限制) 默认 8
max-active
:
100
# 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-wait
:
-1
# 连接池中的最大空闲连接 默认 8
max-idle
:
8
# 连接池中的最小空闲连接 默认 0
min-idle
:
0
cache
:
# 整合SpringCache,redis作为缓存类型
type
:
redis
redis
:
time-to-live
:
86400000
rabbitmq
:
host
:
10.0.0.81
port
:
5672
username
:
admin
password
:
admin
listener
:
simple
:
retry
:
enabled
:
true
max-attempts
:
5
# 最大重试次数
initial-interval
:
1000
# 初始的失败等待时长为1秒
multiplier
:
2
# 下次失败的等待时长倍数,下次等待时长 = multiplier * last-interval
stateless
:
true
# true无状态;false有状态。如果业务中包含事务,这里改为false
swagger
:
title
:
乐映影视门户系统
description
:
乐映影视门户系统RESTFUL API
version
:
1.0.0
base-package
:
com.fzm.portal.controller
base-path
:
/**
enabled
:
true
globalOperationParameters
:
-
description
:
Authorization
modelRef
:
string
name
:
Authorization
parameterType
:
header
required
:
false
contact
:
name
:
tangtuo
email
:
ttuo@33.com
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
login-message-codetype
:
quick
login-email-codetype
:
quick
login-voice-codetype
:
quick
send-sms-url
:
http://118.31.52.32/send/sms2
validate-code-url
:
http://118.31.52.32/validate/code
transfer-nft-message-codetype
:
notice_transfer
transfer-nft-email-codetype
:
notice_transfer
transfer-nft-voice-codetype
:
notice_transfer
refund-message-codetype
:
notice_refund
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
withhold
:
withhold-key
:
a4c49dcb35e0032dc8db5891dc81481943b68fc558ce93ce74d0382c1d104934
token-manager
:
token-manager-key
:
4e92bda2477ded0e7c07a9e3acd2370de8d7401c68cc83ee8376806db3121e77
title
:
user.p.FILMCHAIN.
cName
:
user.evm.0xa038a372ab27d9038328932c98454e52390b94555a69ab9559e8ab14ff2e540f
cAddr
:
1Nhju8CgSUmkQQwc7ECk4bFxnv48iRLNRX
huaweiyun
:
obs
:
app-key
:
HIULSHJZJOTWB72Z38ZB
app-secret
:
GI0oWEGRJuMKmPXJq2fCmuMpFPIITLmjeCQxo2tA
end-point
:
obs.cn-east-3.myhuaweicloud.com
bucket
:
filmchain-file
wx-pay
:
app-id
:
wxbdddd81913c795e9
app-secret
:
aa201717c46a0e07c4c143b1ee73229a
mch-id
:
1604477044
api-v3-key
:
D864DA53FEF8ACD41519064967DC10D2
mch-serial-num
:
72A62544B0A08A214FAEC780108692EDC6E7D5FA
private-key-path
:
apiclient_key.pem
pay-notify-url
:
https://146.56.218.121:12100/wx-pay/notify/jsapi
refund-notify-url
:
https://146.56.218.121:12100/wx-pay/notify/refund
\ No newline at end of file
joying-portal/src/main/resources/application-nj.yml
View file @
913a5e9e
server
:
port
:
8001
spring
:
application
:
name
:
joying-portal
servlet
:
multipart
:
max-file-size
:
1GB
max-request-size
:
10GB
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
main
:
allow-bean-definition-overriding
:
true
datasource
:
...
...
@@ -60,8 +69,8 @@ spring:
multiplier
:
2
# 下次失败的等待时长倍数,下次等待时长 = multiplier * last-interval
stateless
:
true
# true无状态;false有状态。如果业务中包含事务,这里改为false
swagger
:
title
:
乐映影视门户系统
description
:
乐映影视门户系统RESTFUL API
title
:
'
乐映影视门户系统'
description
:
'
乐映影视门户系统RESTFUL
API'
version
:
1.0.0
base-package
:
com.fzm.portal.controller
base-path
:
/**
...
...
@@ -76,6 +85,16 @@ swagger:
name
:
tangtuo
email
:
ttuo@33.com
mybatis-plus
:
type-aliases-package
:
com.fzm.common.entity
mapper-locations
:
classpath:mapper/*.xml
configuration
:
map-underscore-to-camel-case
:
true
debug
:
sms
:
false
auth
:
false
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
...
...
joying-portal/src/main/resources/application-prod.yml
View file @
913a5e9e
server
:
port
:
8001
spring
:
application
:
name
:
joying-portal
servlet
:
multipart
:
max-file-size
:
1GB
max-request-size
:
10GB
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
main
:
allow-bean-definition-overriding
:
true
datasource
:
...
...
@@ -61,8 +70,8 @@ spring:
stateless
:
true
# true无状态;false有状态。如果业务中包含事务,这里改为false
swagger
:
title
:
乐映影视门户系统
description
:
乐映影视门户系统RESTFUL API
title
:
'
乐映影视门户系统'
description
:
'
乐映影视门户系统RESTFUL
API'
version
:
1.0.0
base-package
:
com.fzm.portal.controller
base-path
:
/**
...
...
@@ -77,6 +86,16 @@ swagger:
name
:
tangtuo
email
:
ttuo@33.com
mybatis-plus
:
type-aliases-package
:
com.fzm.common.entity
mapper-locations
:
classpath:mapper/*.xml
configuration
:
map-underscore-to-camel-case
:
true
debug
:
sms
:
false
auth
:
false
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
...
...
joying-portal/src/main/resources/application.yml
View file @
913a5e9e
server
:
port
:
8001
spring
:
profiles
:
active
:
dev
application
:
name
:
joying-portal
servlet
:
...
...
@@ -10,15 +10,128 @@ spring:
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
main
:
allow-bean-definition-overriding
:
true
datasource
:
url
:
jdbc:mysql://172.16.101.135:3306/joying_dev?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
username
:
root
password
:
Joying@123456
platform
:
mysql
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
druid
:
initial-size
:
5
min-idle
:
5
max-active
:
20
max-wait
:
60000
time-between-eviction-runs-millis
:
60000
min-evictable-idle-time-millis
:
300000
validation-query
:
SELECT 1 FROM DUAL
test-while-idle
:
true
test-on-borrow
:
false
test-on-return
:
false
pool-prepared-statements
:
false
max-pool-prepared-statement-per-connection-size
:
20
filters
:
stat ,wall
connection-properties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
useGlobalDataSourceStat
:
true
redis
:
host
:
172.16.101.135
port
:
6379
password
:
123456
lettuce
:
pool
:
# 连接池最大连接数(使用负值表示没有限制) 默认 8
max-active
:
100
# 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-wait
:
-1
# 连接池中的最大空闲连接 默认 8
max-idle
:
8
# 连接池中的最小空闲连接 默认 0
min-idle
:
0
cache
:
# 整合SpringCache,redis作为缓存类型
type
:
redis
redis
:
time-to-live
:
86400000
rabbitmq
:
host
:
172.16.101.135
port
:
5672
username
:
admin
password
:
admin
listener
:
simple
:
retry
:
enabled
:
true
max-attempts
:
5
# 最大重试次数
initial-interval
:
1000
# 初始的失败等待时长为1秒
multiplier
:
2
# 下次失败的等待时长倍数,下次等待时长 = multiplier * last-interval
stateless
:
true
# true无状态;false有状态。如果业务中包含事务,这里改为false
swagger
:
title
:
'
乐映影视门户系统'
description
:
'
乐映影视门户系统RESTFUL
API'
version
:
1.0.0
base-package
:
com.fzm.portal.controller
base-path
:
/**
enabled
:
true
globalOperationParameters
:
-
description
:
Authorization
modelRef
:
string
name
:
Authorization
parameterType
:
header
required
:
false
contact
:
name
:
tangtuo
email
:
ttuo@33.com
mybatis-plus
:
type-aliases-package
:
com.fzm.common.entity
mapper-locations
:
classpath:mapper/*.xml
configuration
:
#log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
map-underscore-to-camel-case
:
true
loggin
g
:
level
:
com.fzm.common.mapper
:
debug
debu
g
:
sms
:
true
auth
:
true
sms
:
app-key
:
Yiru
app-secret
:
mx5oaR^RY8!(ziHn
login-message-codetype
:
quick
login-email-codetype
:
quick
login-voice-codetype
:
quick
send-sms-url
:
http://118.31.52.32/send/sms2
validate-code-url
:
http://118.31.52.32/validate/code
transfer-nft-message-codetype
:
notice_transfer
transfer-nft-email-codetype
:
notice_transfer
transfer-nft-voice-codetype
:
notice_transfer
refund-message-codetype
:
notice_refund
chain
:
para
:
rpc-url
:
http://119.8.39.159:8901
withhold
:
withhold-key
:
a4c49dcb35e0032dc8db5891dc81481943b68fc558ce93ce74d0382c1d104934
token-manager
:
token-manager-key
:
4e92bda2477ded0e7c07a9e3acd2370de8d7401c68cc83ee8376806db3121e77
title
:
user.p.FILMCHAIN.
cName
:
user.evm.0xa038a372ab27d9038328932c98454e52390b94555a69ab9559e8ab14ff2e540f
cAddr
:
1Nhju8CgSUmkQQwc7ECk4bFxnv48iRLNRX
huaweiyun
:
obs
:
app-key
:
HIULSHJZJOTWB72Z38ZB
app-secret
:
GI0oWEGRJuMKmPXJq2fCmuMpFPIITLmjeCQxo2tA
end-point
:
obs.cn-east-3.myhuaweicloud.com
bucket
:
filmchain-file
wx-pay
:
app-id
:
wxbdddd81913c795e9
app-secret
:
aa201717c46a0e07c4c143b1ee73229a
mch-id
:
1604477044
api-v3-key
:
D864DA53FEF8ACD41519064967DC10D2
mch-serial-num
:
72A62544B0A08A214FAEC780108692EDC6E7D5FA
private-key-path
:
apiclient_key.pem
pay-notify-url
:
https://146.56.218.121:12100/wx-pay/notify/jsapi
refund-notify-url
:
https://146.56.218.121:12100/wx-pay/notify/refund
joying-portal/src/main/resources/logback-spring.xml
View file @
913a5e9e
<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->
<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration
scan=
"true"
scanPeriod=
"60 seconds"
debug=
"false"
>
<contextName>
logback
</contextName>
<!--日志路径--
>
<property
name=
"
LOG_HOME"
value=
"logs
"
/>
<
!--日志格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %logger{50}:表示logger名字最长50个字符,否则按照句点分割 %msg:日志消息,%n是换行符 --
>
<property
name=
"
LOG_PATTERN"
value=
"%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}-%msg%n
"
/>
<configuration
debug=
"false"
>
<property
name=
"
log.pattern"
value=
"%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger{12} - %msg%n
"
/>
<
property
name=
"log.path"
value=
"/app/logs/fuzamei/hz"
/
>
<property
name=
"
log.name"
value=
"joying
"
/>
<!-- 控制台 -->
<appender
name=
"CONSOLE"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<!-- 日志格式 -->
<appender
name=
"STDOUT"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<encoder>
<pattern>
${
LOG_PATTERN
}
</pattern>
<pattern>
${
log.pattern
}
</pattern>
<charset>
UTF-8
</charset>
</encoder>
<!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
<filter
class=
"ch.qos.logback.classic.filter.ThresholdFilter"
>
<level>
DEBUG
</level>
</filter>
</appender>
<!--输出到文件-->
<!-- 时间滚动输出 level为 INFO 日志 -->
<appender
name=
"INFO"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 正在记录的日志文件的路径及文件名 -->
<file>
${log.path}/${log.name}/info.log
</file>
<!--日志文件输出格式-->
<encoder>
<pattern>
${log.pattern}
</pattern>
<charset>
UTF-8
</charset>
</encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<!-- 每天日志归档路径以及格式 -->
<fileNamePattern>
${log.path}/${log.name}/info-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<maxFileSize>
100MB
</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!--日志文件保留天数-->
<maxHistory>
15
</maxHistory>
</rollingPolicy>
<!-- 此日志文件只记录info级别的 -->
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
info
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<!-- 2、全部日志时间滚动输出 -->
<appender
name=
"INFO_FILE"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 循环政策:基于时间创建日志文件 -->
<!-- 时间滚动输出 level为 WARN 日志 -->
<appender
name=
"WARN"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 正在记录的日志文件的路径及文件名 -->
<file>
${log.path}/${log.name}/warn.log
</file>
<!--日志文件输出格式-->
<encoder>
<pattern>
${log.pattern}
</pattern>
<charset>
UTF-8
</charset>
<!-- 此处设置字符集 -->
</encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<!-- 日志命名:单个文件大于50MB 按照时间+自增i 生成log文件 -->
<fileNamePattern>
${LOG_HOME}/logback.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<fileNamePattern>
${log.path}/${log.name}/warn-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<maxFileSize>
100MB
</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>
180
</maxHistory>
<!--日志文件保留天数-->
<maxHistory>
15
</maxHistory>
</rollingPolicy>
<append>
true
</append>
<!-- 此日志文件只记录warn级别的 -->
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
warn
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<!-- 时间滚动输出 level为 ERROR 日志 -->
<appender
name=
"ERROR"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<!-- 正在记录的日志文件的路径及文件名 -->
<file>
${log.path}/${log.name}/error.log
</file>
<!--日志文件输出格式-->
<encoder>
<pattern>
${
LOG_PATTERN
}
</pattern>
<charset>
UTF-8
</charset>
<pattern>
${
log.pattern
}
</pattern>
<charset>
UTF-8
</charset>
<!-- 此处设置字符集 -->
</encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<fileNamePattern>
${log.path}/${log.name}/error-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<maxFileSize>
100MB
</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!--日志文件保留天数-->
<maxHistory>
15
</maxHistory>
</rollingPolicy>
<!-- 此日志文件只记录ERROR级别的 -->
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
ERROR
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<logger
name=
"org.apache.coyote.http11.Http11Processor"
level=
"warn"
/>
<logger
name=
"org.apache.tomcat.util.http.parser.Cookie"
level=
"warn"
/>
<logger
name=
"org.apache.http.client.protocol.ResponseProcessCookies"
level=
"error"
/>
<logger
name=
"org.springframework.data.convert.CustomConversions"
level=
"error"
/>
<root
level=
"INFO"
>
<!--开发环境和本地:-->
<springProfile
name=
"local"
>
<appender-ref
ref=
"CONSOLE"
/>
</springProfile>
<springProfile
name=
"dev"
>
<appender-ref
ref=
"CONSOLE"
/>
<appender-ref
ref=
"INFO_FILE"
/>
</springProfile>
<springProfile
name=
"prod"
>
<appender-ref
ref=
"CONSOLE"
/>
<appender-ref
ref=
"INFO_FILE"
/>
</springProfile>
<springProfile
name=
"nj"
>
<appender-ref
ref=
"CONSOLE"
/>
<appender-ref
ref=
"INFO_FILE"
/>
</springProfile>
<!-- 控制台输出 -->
<appender-ref
ref=
"STDOUT"
/>
<!-- 文件输出 -->
<appender-ref
ref=
"INFO"
/>
<appender-ref
ref=
"WARN"
/>
<appender-ref
ref=
"ERROR"
/>
</root>
</configuration>
\ No newline at end of file
joying-portal/src/test/java/com/fzm/portal/FileTest.java
View file @
913a5e9e
package
com
.
fzm
.
portal
;
import
cn.hutool.crypto.SecureUtil
;
import
java.io.File
;
import
java.util.TreeMap
;
import
java.util.concurrent.CountDownLatch
;
import
java.util.concurrent.Semaphore
;
/**
* @author tangtuo
...
...
joying-portal/src/test/java/com/fzm/portal/LyPortalApplicationTests.java
View file @
913a5e9e
package
com
.
fzm
.
portal
;
import
cn.fzm.chain.simplesdk.client.ParaChainClient
;
import
cn.hutool.crypto.SecureUtil
;
import
cn.hutool.json.JSON
;
import
cn.hutool.json.JSONUtil
;
import
com.fzm.common.constant.RedisConstant
;
import
com.fzm.common.entity.CopyrightAuthorityRelation
;
import
com.fzm.common.entity.OpusCategory
;
import
com.fzm.common.entity.dto.CopyrightRequest
;
import
com.fzm.common.entity.vo.CopyrightVo
;
import
com.fzm.common.enums.ResultCode
;
import
com.fzm.common.exception.GlobalException
;
import
com.fzm.common.properties.CopyrightProperties
;
import
com.fzm.common.service.CopyrightApplyService
;
import
com.fzm.common.service.CopyrightAuthorityRelationService
;
import
com.fzm.common.service.OpusCategoryService
;
import
com.fzm.common.service.impl.CopyrightAuthorityRelationServiceImpl
;
import
com.fzm.common.utils.JsonUtil
;
import
com.fzm.common.utils.RedisUtil
;
import
org.junit.jupiter.api.Test
;
import
org.redisson.Redisson
;
import
org.redisson.api.RSemaphore
;
import
org.redisson.api.RedissonClient
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
import
javax.annotation.Resource
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.TreeMap
;
import
java.util.concurrent.ExecutionException
;
@SpringBootTest
...
...
joying-portal/src/test/java/com/fzm/portal/NftEvm.java
View file @
913a5e9e
...
...
@@ -2,20 +2,6 @@ package com.fzm.portal;
import
cn.fzm.chain.simplesdk.base.RpcApi
;
import
cn.fzm.chain.simplesdk.constant.EvmTokenEnum
;
import
cn.fzm.chain.simplesdk.constant.RpcConfig
;
import
cn.fzm.chain.simplesdk.constant.TxStatusEnum
;
import
cn.fzm.chain.simplesdk.model.TxResult
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
org.springframework.stereotype.Component
;
import
org.w3c.dom.stylesheets.LinkStyle
;
import
java.math.BigDecimal
;
import
java.time.Instant
;
import
java.util.Arrays
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.concurrent.TimeUnit
;
/**
* @author lyz
...
...
@@ -39,6 +25,7 @@ public class NftEvm {
private
static
String
code
=
"60806040523480156200001157600080fd5b506040805160208101909152600081526200002c8162000033565b506200012f565b8051620000489060029060208401906200004c565b5050565b8280546200005a90620000f2565b90600052602060002090601f0160209004810192826200007e5760008555620000c9565b82601f106200009957805160ff1916838001178555620000c9565b82800160010185558215620000c9579182015b82811115620000c9578251825591602001919060010190620000ac565b50620000d7929150620000db565b5090565b5b80821115620000d75760008155600101620000dc565b600181811c908216806200010757607f821691505b602082108114156200012957634e487b7160e01b600052602260045260246000fd5b50919050565b61203a806200013f6000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c80638c7a63ae11610097578063e985e9c511610066578063e985e9c514610227578063ed8c593814610263578063f240ec3614610276578063f242432a1461028957600080fd5b80638c7a63ae146101db578063a08fad67146101ee578063a22cb46514610201578063aba7e0fd1461021457600080fd5b806323a36d2b116100d357806323a36d2b146101825780632eb2c2d6146101955780634e1273f4146101a8578063519dc8d2146101c857600080fd5b8062fdd58e1461010457806301ffc9a71461012a578063036ebef91461014d5780630e89341c14610162575b600080fd5b610117610112366004611553565b61029c565b6040519081526020015b60405180910390f35b61013d610138366004611596565b610336565b6040519015158152602001610121565b61016061015b3660046115ba565b610386565b005b6101756101703660046115fc565b6103e3565b6040516101219190611662565b610160610190366004611675565b610477565b6101606101a33660046117f4565b6104d2565b6101bb6101b636600461189e565b610569565b60405161012191906119a4565b6101bb6101d63660046119b7565b610693565b6101756101e93660046115fc565b6106fe565b6101606101fc366004611a1e565b61071b565b61016061020f366004611a9f565b610830565b610160610222366004611adb565b61083f565b61013d610235366004611b57565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b610160610271366004611675565b610858565b610160610284366004611a1e565b610863565b610160610297366004611b8a565b6108d1565b60006001600160a01b03831661030d5760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b506000818152602081815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061036757506001600160e01b031982166303a24d0760e21b145b8061033057506301ffc9a760e01b6001600160e01b0319831614610330565b6103a284848484604051806020016040528060008152506108d1565b6103ac8383610958565b156103dd576001600160a01b0383166000908152600460209081526040822080546001810182559083529120018290555b50505050565b6060600280546103f290611bef565b80601f016020809104026020016040519081016040528092919081815260200182805461041e90611bef565b801561046b5780601f106104405761010080835404028352916020019161046b565b820191906000526020600020905b81548152906001019060200180831161044e57829003601f168201915b50505050509050919050565b61049283838360405180602001604052806000815250610a11565b61049c8383610958565b156104cd576001600160a01b0383166000908152600460209081526040822080546001810182559083529120018290555b505050565b6001600160a01b0385163314806104ee57506104ee8533610235565b6105555760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b6064820152608401610304565b6105628585858585610ae1565b5050505050565b606081518351146105ce5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610304565b6000835167ffffffffffffffff8111156105ea576105ea6116a8565b604051908082528060200260200182016040528015610613578160200160208202803683370190505b50905060005b845181101561068b5761065e85828151811061063757610637611c2a565b602002602001015185838151811061065157610651611c2a565b602002602001015161029c565b82828151811061067057610670611c2a565b602090810291909101015261068481611c56565b9050610619565b509392505050565b6001600160a01b03811660009081526004602090815260409182902080548351818402810184019094528084526060939283018282801561046b57602002820191906000526020600020905b8154815260200190600101908083116106df5750505050509050919050565b60008181526003602052604090208054606091906103f290611bef565b6107978585858080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808902828101820190935288825290935088925087918291850190849080828437600092018290525060408051602081019091529081529250610c75915050565b60005b83811015610828576107c4868686848181106107b8576107b8611c2a565b90506020020135610958565b15610816576001600160a01b03861660009081526004602052604090208585838181106107f3576107f3611c2a565b835460018101855560009485526020948590209190940292909201359190920155505b8061082081611c56565b91505061079a565b505050505050565b61083b338383610dc0565b5050565b60008381526003602052604090206103dd90838361149e565b6104cd838383610ea1565b6105628585858080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808902828101820190935288825290935088925087918291850190849080828437600092019190915250610fa392505050565b6001600160a01b0385163314806108ed57506108ed8533610235565b61094b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b6064820152608401610304565b610562858585858561111f565b6001600160a01b0382166000908152600460209081526040808320805482518185028101850190935280835284938301828280156109b557602002820191906000526020600020905b8154815260200190600101908083116109a1575b5050505050905060005b8151811015610a0657838282815181106109db576109db611c2a565b602002602001015114156109f457600092505050610330565b806109fe81611c56565b9150506109bf565b506001949350505050565b6001600160a01b038416610a375760405162461bcd60e51b815260040161030490611c71565b33610a5181600087610a488861123c565b6105628861123c565b6000848152602081815260408083206001600160a01b038916845290915281208054859290610a81908490611cb2565b909155505060408051858152602081018590526001600160a01b0380881692600092918516917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461056281600087878787611287565b8151835114610b025760405162461bcd60e51b815260040161030490611cca565b6001600160a01b038416610b285760405162461bcd60e51b815260040161030490611d12565b3360005b8451811015610c0f576000858281518110610b4957610b49611c2a565b602002602001015190506000858381518110610b6757610b67611c2a565b602090810291909101810151600084815280835260408082206001600160a01b038e168352909352919091205490915081811015610bb75760405162461bcd60e51b815260040161030490611d57565b6000838152602081815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610bf4908490611cb2565b9250508190555050505080610c0890611c56565b9050610b2c565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610c5f929190611da1565b60405180910390a46108288187878787876113e3565b6001600160a01b038416610c9b5760405162461bcd60e51b815260040161030490611c71565b8151835114610cbc5760405162461bcd60e51b815260040161030490611cca565b3360005b8451811015610d5857838181518110610cdb57610cdb611c2a565b6020026020010151600080878481518110610cf857610cf8611c2a565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d409190611cb2565b90915550819050610d5081611c56565b915050610cc0565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610da9929190611da1565b60405180910390a4610562816000878787876113e3565b816001600160a01b0316836001600160a01b03161415610e345760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610304565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b038316610ec75760405162461bcd60e51b815260040161030490611dcf565b33610ef781856000610ed88761123c565b610ee18761123c565b5050604080516020810190915260009052505050565b6000838152602081815260408083206001600160a01b038816845290915290205482811015610f385760405162461bcd60e51b815260040161030490611e12565b6000848152602081815260408083206001600160a01b03898116808652918452828520888703905582518981529384018890529092908616917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a45050505050565b6001600160a01b038316610fc95760405162461bcd60e51b815260040161030490611dcf565b8051825114610fea5760405162461bcd60e51b815260040161030490611cca565b604080516020810190915260009081905233905b83518110156110c057600084828151811061101b5761101b611c2a565b60200260200101519050600084838151811061103957611039611c2a565b602090810291909101810151600084815280835260408082206001600160a01b038c1683529093529190912054909150818110156110895760405162461bcd60e51b815260040161030490611e12565b6000928352602083815260408085206001600160a01b038b16865290915290922091039055806110b881611c56565b915050610ffe565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611111929190611da1565b60405180910390a450505050565b6001600160a01b0384166111455760405162461bcd60e51b815260040161030490611d12565b33611155818787610a488861123c565b6000848152602081815260408083206001600160a01b038a168452909152902054838110156111965760405162461bcd60e51b815260040161030490611d57565b6000858152602081815260408083206001600160a01b038b81168552925280832087850390559088168252812080548692906111d3908490611cb2565b909155505060408051868152602081018690526001600160a01b03808916928a821692918616917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611233828888888888611287565b50505050505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061127657611276611c2a565b602090810291909101015292915050565b6001600160a01b0384163b156108285760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906112cb9089908990889088908890600401611e56565b6020604051808303816000875af1925050508015611306575060408051601f3d908101601f1916820190925261130391810190611e9b565b60015b6113b357611312611eb8565b806308c379a0141561134c5750611327611ed4565b80611332575061134e565b8060405162461bcd60e51b81526004016103049190611662565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610304565b6001600160e01b0319811663f23a6e6160e01b146112335760405162461bcd60e51b815260040161030490611f5e565b6001600160a01b0384163b156108285760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906114279089908990889088908890600401611fa6565b6020604051808303816000875af1925050508015611462575060408051601f3d908101601f1916820190925261145f91810190611e9b565b60015b61146e57611312611eb8565b6001600160e01b0319811663bc197c8160e01b146112335760405162461bcd60e51b815260040161030490611f5e565b8280546114aa90611bef565b90600052602060002090601f0160209004810192826114cc5760008555611512565b82601f106114e55782800160ff19823516178555611512565b82800160010185558215611512579182015b828111156115125782358255916020019190600101906114f7565b5061151e929150611522565b5090565b5b8082111561151e5760008155600101611523565b80356001600160a01b038116811461154e57600080fd5b919050565b6000806040838503121561156657600080fd5b61156f83611537565b946020939093013593505050565b6001600160e01b03198116811461159357600080fd5b50565b6000602082840312156115a857600080fd5b81356115b38161157d565b9392505050565b600080600080608085870312156115d057600080fd5b6115d985611537565b93506115e760208601611537565b93969395505050506040820135916060013590565b60006020828403121561160e57600080fd5b5035919050565b6000815180845260005b8181101561163b5760208185018101518683018201520161161f565b8181111561164d576000602083870101525b50601f01601f19169290920160200192915050565b6020815260006115b36020830184611615565b60008060006060848603121561168a57600080fd5b61169384611537565b95602085013595506040909401359392505050565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff811182821017156116e4576116e46116a8565b6040525050565b600067ffffffffffffffff821115611705576117056116a8565b5060051b60200190565b600082601f83011261172057600080fd5b8135602061172d826116eb565b60405161173a82826116be565b83815260059390931b850182019282810191508684111561175a57600080fd5b8286015b84811015611775578035835291830191830161175e565b509695505050505050565b600082601f83011261179157600080fd5b813567ffffffffffffffff8111156117ab576117ab6116a8565b6040516117c2601f8301601f1916602001826116be565b8181528460208386010111156117d757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561180c57600080fd5b61181586611537565b945061182360208701611537565b9350604086013567ffffffffffffffff8082111561184057600080fd5b61184c89838a0161170f565b9450606088013591508082111561186257600080fd5b61186e89838a0161170f565b9350608088013591508082111561188457600080fd5b5061189188828901611780565b9150509295509295909350565b600080604083850312156118b157600080fd5b823567ffffffffffffffff808211156118c957600080fd5b818501915085601f8301126118dd57600080fd5b813560206118ea826116eb565b6040516118f782826116be565b83815260059390931b850182019282810191508984111561191757600080fd5b948201945b8386101561193c5761192d86611537565b8252948201949082019061191c565b9650508601359250508082111561195257600080fd5b5061195f8582860161170f565b9150509250929050565b600081518084526020808501945080840160005b838110156119995781518752958201959082019060010161197d565b509495945050505050565b6020815260006115b36020830184611969565b6000602082840312156119c957600080fd5b6115b382611537565b60008083601f8401126119e457600080fd5b50813567ffffffffffffffff8111156119fc57600080fd5b6020830191508360208260051b8501011115611a1757600080fd5b9250929050565b600080600080600060608688031215611a3657600080fd5b611a3f86611537565b9450602086013567ffffffffffffffff80821115611a5c57600080fd5b611a6889838a016119d2565b90965094506040880135915080821115611a8157600080fd5b50611a8e888289016119d2565b969995985093965092949392505050565b60008060408385031215611ab257600080fd5b611abb83611537565b915060208301358015158114611ad057600080fd5b809150509250929050565b600080600060408486031215611af057600080fd5b83359250602084013567ffffffffffffffff80821115611b0f57600080fd5b818601915086601f830112611b2357600080fd5b813581811115611b3257600080fd5b876020828501011115611b4457600080fd5b6020830194508093505050509250925092565b60008060408385031215611b6a57600080fd5b611b7383611537565b9150611b8160208401611537565b90509250929050565b600080600080600060a08688031215611ba257600080fd5b611bab86611537565b9450611bb960208701611537565b93506040860135925060608601359150608086013567ffffffffffffffff811115611be357600080fd5b61189188828901611780565b600181811c90821680611c0357607f821691505b60208210811415611c2457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415611c6a57611c6a611c40565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60008219821115611cc557611cc5611c40565b500190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081526000611db46040830185611969565b8281036020840152611dc68185611969565b95945050505050565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090611e9090830184611615565b979650505050505050565b600060208284031215611ead57600080fd5b81516115b38161157d565b600060033d1115611ed15760046000803e5060005160e01c5b90565b600060443d1015611ee25790565b6040516003193d81016004833e81513d67ffffffffffffffff8160248401118184111715611f1257505050505090565b8285019150815181811115611f2a5750505050505090565b843d8701016020828501011115611f445750505050505090565b611f53602082860101876116be565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b0386811682528516602082015260a060408201819052600090611fd290830186611969565b8281036060840152611fe48186611969565b90508281036080840152611ff88185611615565b9897505050505050505056fea2646970667358221220df77f45404bbc21d49cd14e361e1a97dba87e98ae5c61aa4f7c14cad9666448d64736f6c634300080a0033"
;
//private static String abi = "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"burnTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getTokenInfo\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"getUserTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mintToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"mintTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenInfo\",\"type\":\"string\"}],\"name\":\"setTokenInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]";
static
String
abi
=
"[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"burnTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getTokenInfo\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mintToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"mintTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenInfo\",\"type\":\"string\"}],\"name\":\"setTokenInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
;
public
static
void
main
(
String
[]
args
)
throws
Exception
{
long
l
=
ra
.
evmBalance
(
abi
,
cAddr
,
EvmTokenEnum
.
ERC1155
,
"182mR7y2EEnHG9cDpc6ik8xRtkamzeHMHr"
,
1641296392
);
...
...
joying-portal/src/test/java/com/fzm/portal/RabbitTestDemo.java
View file @
913a5e9e
...
...
@@ -4,7 +4,6 @@ import lombok.extern.slf4j.Slf4j;
import
org.junit.jupiter.api.Test
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
javax.annotation.Resource
;
...
...
joying-portal/src/test/java/com/fzm/portal/TestDemo.java
View file @
913a5e9e
package
com
.
fzm
.
portal
;
import
cn.fzm.chain.simplesdk.base.RpcApi
;
import
cn.fzm.chain.simplesdk.constant.EvmTokenEnum
;
import
java.time.Instant
;
/**
* @author lyz
* @mail lyz@disanbo.com
...
...
@@ -49,7 +44,7 @@ public class TestDemo {
//String cName = "user.evm.0xedf89f9273befe83c16acde1172f6c81476a2f14ebac6df958cd4aa6ad29d98d";
//String addr = ra.evmQueryAddrByName(cName);
// System.out.println("addr = " + addr);
// System.out.println("addr = " + addr);
//String s = ra.evmGetTokenInfoNew(abi, cAddr, 1468781664640569344L, "16oJi1AwsZqtfP74N6nUhVKW1GwshRPQyY");
//System.out.println(s);
//String cAddr = "1CQDaNN28ysjgH2fyZgB1fpuUwktdJzft1";
...
...
@@ -94,7 +89,7 @@ public class TestDemo {
}*/
String
abi1
=
"[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"burnTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getTokenInfo\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"getUserTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mintToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"mintTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenInfo\",\"type\":\"string\"}],\"name\":\"setTokenInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
;
String
abi2
=
"[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"burnTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getTokenInfo\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"getUserTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mintToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"mintTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenInfo\",\"type\":\"string\"}],\"name\":\"setTokenInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
;
String
abi2
=
"[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"burnTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getTokenInfo\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"getUserTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mintToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"tokenIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"mintTokenBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenInfo\",\"type\":\"string\"}],\"name\":\"setTokenInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
;
System
.
out
.
println
(
abi1
.
equals
(
abi2
));
}
...
...
joying-portal/src/test/java/com/fzm/portal/WxPayTest.java
View file @
913a5e9e
...
...
@@ -2,16 +2,12 @@ package com.fzm.portal;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
com.fzm.common.entity.dto.OrderProcessMsg
;
import
com.fzm.common.properties.WxPayProperties
;
import
com.fzm.common.service.WxPayService
;
import
com.fzm.common.utils.SnowflakeUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.http.client.methods.CloseableHttpResponse
;
import
org.apache.http.client.methods.HttpPost
;
import
org.apache.http.entity.StringEntity
;
import
org.apache.http.impl.client.CloseableHttpClient
;
import
org.apache.http.util.EntityUtils
;
import
org.junit.jupiter.api.Test
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.boot.test.context.SpringBootTest
;
...
...
pom.xml
View file @
913a5e9e
...
...
@@ -94,13 +94,7 @@
<dependency>
<groupId>
org.apache.shardingsphere
</groupId>
<artifactId>
sharding-jdbc-spring-boot-starter
</artifactId>
<version>
4.0.0-RC1
</version>
<exclusions>
<exclusion>
<groupId>
com.google.guava
</groupId>
<artifactId>
guava
</artifactId>
</exclusion>
</exclusions>
<version>
4.1.1
</version>
</dependency>
<dependency>
...
...
@@ -115,9 +109,8 @@
<repositories>
<repository>
<id>
fzm
</id>
<name>
fzm repositories
</name>
<layout>
default
</layout>
<url>
http://146.56.197.85:12100/repository/maven-public/
</url>
<name>
fzm repository
</name>
<url>
http://116.63.133.8:12100/repository/maven-public
</url>
</repository>
</repositories>
...
...
sql/joying.sql
View file @
913a5e9e
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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