diff --git a/.gitignore b/.gitignore index 9154f4c..549e00a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,26 +1,33 @@ -# ---> Java -# Compiled class file -*.class +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ -# Log file -*.log +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache -# BlueJ files -*.ctxt +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr -# Mobile Tools for Java (J2ME) -.mtj.tmp/ - -# Package Files # -*.jar -*.war -*.nar -*.ear -*.zip -*.tar.gz -*.rar - -# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml -hs_err_pid* -replay_pid* +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ +### VS Code ### +.vscode/ diff --git a/.mvn/wrapper/maven-wrapper.jar b/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000..cb28b0e Binary files /dev/null and b/.mvn/wrapper/maven-wrapper.jar differ diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..462686e --- /dev/null +++ b/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.3/apache-maven-3.9.3-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar diff --git a/mvnw b/mvnw new file mode 100644 index 0000000..66df285 --- /dev/null +++ b/mvnw @@ -0,0 +1,308 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.2.0 +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /usr/local/etc/mavenrc ] ; then + . /usr/local/etc/mavenrc + fi + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + 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; +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/Home + # See https://developer.apple.com/library/mac/qa/qa1170/_index.html + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + JAVA_HOME="$(/usr/libexec/java_home)"; export JAVA_HOME + else + JAVA_HOME="/Library/Java/Home"; export JAVA_HOME + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=$(java-config --jre-home) + fi +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$JAVA_HOME" ] && + JAVA_HOME=$(cygpath --unix "$JAVA_HOME") + [ -n "$CLASSPATH" ] && + CLASSPATH=$(cygpath --path --unix "$CLASSPATH") +fi + +# For Mingw, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$JAVA_HOME" ] && [ -d "$JAVA_HOME" ] && + JAVA_HOME="$(cd "$JAVA_HOME" || (echo "cannot cd into $JAVA_HOME."; exit 1); pwd)" +fi + +if [ -z "$JAVA_HOME" ]; 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" + else + javaExecutable="$(readlink -f "\"$javaExecutable\"")" + fi + 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 + # 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="$(\unset -f command 2>/dev/null; \command -v java)" + fi +fi + +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 + echo "Warning: JAVA_HOME environment variable is not set." +fi + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + 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 + basedir=$wdir + break + fi + # workaround for JBEAP-8937 (on Solaris 10/Sparc) + if [ -d "${wdir}" ]; then + wdir=$(cd "$wdir/.." || exit 1; pwd) + fi + # end of workaround + done + printf '%s' "$(cd "$basedir" || exit 1; pwd)" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + # Remove \r in case we run on Windows within Git Bash + # and check out the repository with auto CRLF management + # enabled. Otherwise, we may read lines that are delimited with + # \r\n and produce $'-Xarg\r' rather than -Xarg due to word + # splitting rules. + tr -s '\r\n' ' ' < "$1" + fi +} + +log() { + if [ "$MVNW_VERBOSE" = true ]; then + printf '%s\n' "$1" + fi +} + +BASE_DIR=$(find_maven_basedir "$(dirname "$0")") +if [ -z "$BASE_DIR" ]; then + exit 1; +fi + +MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR +log "$MAVEN_PROJECTBASEDIR" + +########################################################################################## +# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +# This allows using the maven wrapper in projects that prohibit checking in binary data. +########################################################################################## +wrapperJarPath="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" +if [ -r "$wrapperJarPath" ]; then + log "Found $wrapperJarPath" +else + log "Couldn't find $wrapperJarPath, downloading it ..." + + if [ -n "$MVNW_REPOURL" ]; then + wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + else + wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + fi + while IFS="=" read -r key value; do + # Remove '\r' from value to allow usage on windows as IFS does not consider '\r' as a separator ( considers space, tab, new line ('\n'), and custom '=' ) + safeValue=$(echo "$value" | tr -d '\r') + case "$key" in (wrapperUrl) wrapperUrl="$safeValue"; break ;; + esac + done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" + log "Downloading from: $wrapperUrl" + + if $cygwin; then + wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath") + fi + + if command -v wget > /dev/null; then + log "Found wget ... using wget" + [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet" + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + else + wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + fi + elif command -v curl > /dev/null; then + log "Found curl ... using curl" + [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent" + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" + else + curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" + fi + else + log "Falling back to using Java to download" + javaSource="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.java" + javaClass="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.class" + # For Cygwin, switch paths to Windows format before running javac + if $cygwin; then + javaSource=$(cygpath --path --windows "$javaSource") + javaClass=$(cygpath --path --windows "$javaClass") + fi + if [ -e "$javaSource" ]; then + if [ ! -e "$javaClass" ]; then + log " - Compiling MavenWrapperDownloader.java ..." + ("$JAVA_HOME/bin/javac" "$javaSource") + fi + if [ -e "$javaClass" ]; then + log " - Running MavenWrapperDownloader.java ..." + ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$wrapperUrl" "$wrapperJarPath") || rm -f "$wrapperJarPath" + fi + fi + fi +fi +########################################################################################## +# End of extension +########################################################################################## + +# If specified, validate the SHA-256 sum of the Maven wrapper jar file +wrapperSha256Sum="" +while IFS="=" read -r key value; do + case "$key" in (wrapperSha256Sum) wrapperSha256Sum=$value; break ;; + esac +done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" +if [ -n "$wrapperSha256Sum" ]; then + wrapperSha256Result=false + if command -v sha256sum > /dev/null; then + if echo "$wrapperSha256Sum $wrapperJarPath" | sha256sum -c > /dev/null 2>&1; then + wrapperSha256Result=true + fi + elif command -v shasum > /dev/null; then + if echo "$wrapperSha256Sum $wrapperJarPath" | shasum -a 256 -c > /dev/null 2>&1; then + wrapperSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." + echo "Please install either command, or disable validation by removing 'wrapperSha256Sum' from your maven-wrapper.properties." + exit 1 + fi + if [ $wrapperSha256Result = false ]; then + echo "Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised." >&2 + echo "Investigate or delete $wrapperJarPath to attempt a clean download." >&2 + echo "If you updated your Maven version, you need to update the specified wrapperSha256Sum property." >&2 + exit 1 + fi +fi + +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 "$JAVA_HOME" ] && + JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME") + [ -n "$CLASSPATH" ] && + CLASSPATH=$(cygpath --path --windows "$CLASSPATH") + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR") +fi + +# Provide a "standardized" way to retrieve the CLI args that will +# work with both Windows and non-Windows executions. +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $*" +export MAVEN_CMD_LINE_ARGS + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +# shellcheck disable=SC2086 # safe args +exec "$JAVACMD" \ + $MAVEN_OPTS \ + $MAVEN_DEBUG_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..95ba6f5 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,205 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.2.0 +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* +if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + if "%MVNW_VERBOSE%" == "true" ( + echo Found %WRAPPER_JAR% + ) +) else ( + if not "%MVNW_REPOURL%" == "" ( + SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + ) + if "%MVNW_VERBOSE%" == "true" ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %WRAPPER_URL% + ) + + powershell -Command "&{"^ + "$webclient = new-object System.Net.WebClient;"^ + "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ + "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ + "}"^ + "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ + "}" + if "%MVNW_VERBOSE%" == "true" ( + echo Finished downloading %WRAPPER_JAR% + ) +) +@REM End of extension + +@REM If specified, validate the SHA-256 sum of the Maven wrapper jar file +SET WRAPPER_SHA_256_SUM="" +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperSha256Sum" SET WRAPPER_SHA_256_SUM=%%B +) +IF NOT %WRAPPER_SHA_256_SUM%=="" ( + powershell -Command "&{"^ + "$hash = (Get-FileHash \"%WRAPPER_JAR%\" -Algorithm SHA256).Hash.ToLower();"^ + "If('%WRAPPER_SHA_256_SUM%' -ne $hash){"^ + " Write-Output 'Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised.';"^ + " Write-Output 'Investigate or delete %WRAPPER_JAR% to attempt a clean download.';"^ + " Write-Output 'If you updated your Maven version, you need to update the specified wrapperSha256Sum property.';"^ + " exit 1;"^ + "}"^ + "}" + if ERRORLEVEL 1 goto error +) + +@REM Provide a "standardized" way to retrieve the CLI args that will +@REM work with both Windows and non-Windows executions. +set MAVEN_CMD_LINE_ARGS=%* + +%MAVEN_JAVA_EXE% ^ + %JVM_CONFIG_MAVEN_PROPS% ^ + %MAVEN_OPTS% ^ + %MAVEN_DEBUG_OPTS% ^ + -classpath %WRAPPER_JAR% ^ + "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ + %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" +if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%"=="on" pause + +if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% + +cmd /C exit /B %ERROR_CODE% diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..c5cfa62 --- /dev/null +++ b/pom.xml @@ -0,0 +1,140 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.1.3.RELEASE + + com.jwl.driver.server + driver-server + 0.0.1-SNAPSHOT + driver-server + driver-server + + 1.8 + 3.3.0 + 5.7.20 + 2.0.9 + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + org.springframework.boot + spring-boot-starter-security + + + + mysql + mysql-connector-java + runtime + + + + com.baomidou + mybatis-plus-boot-starter + ${mybatis-plus-boot-starter.version} + + + + com.baomidou + mybatis-plus-generator + ${mybatis-plus-boot-starter.version} + + + + com.baomidou + mybatis-plus-annotation + ${mybatis-plus-boot-starter.version} + + + + com.baomidou + mybatis-plus-core + ${mybatis-plus-boot-starter.version} + + + + com.baomidou + mybatis-plus-extension + ${mybatis-plus-boot-starter.version} + + + + + cn.hutool + hutool-all + ${hutool.version} + + + + + com.alibaba + fastjson + 2.0.12 + + + + org.springframework.plugin + spring-plugin-core + 2.0.0.RELEASE + + + + com.github.xiaoymin + knife4j-micro-spring-boot-starter + ${knife4j-micro-spring-boot-starter.version} + + + javax.validation + validation-api + + + + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.security + spring-security-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + + diff --git a/src/main/java/com/jwl/driver/server/DriverServerApplication.java b/src/main/java/com/jwl/driver/server/DriverServerApplication.java new file mode 100644 index 0000000..b603dba --- /dev/null +++ b/src/main/java/com/jwl/driver/server/DriverServerApplication.java @@ -0,0 +1,15 @@ +package com.jwl.driver.server; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.ComponentScan; + +@ComponentScan(basePackages = {"com.jwl.driver.server.*"}) +@SpringBootApplication +public class DriverServerApplication { + + public static void main(String[] args) { + SpringApplication.run(DriverServerApplication.class, args); + } + +} diff --git a/src/main/java/com/jwl/driver/server/config/MybatisPlusConfig.java b/src/main/java/com/jwl/driver/server/config/MybatisPlusConfig.java new file mode 100644 index 0000000..4831381 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/config/MybatisPlusConfig.java @@ -0,0 +1,25 @@ +package com.jwl.driver.server.config; + + +import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +@EnableTransactionManagement +@Configuration +@MapperScan({"com.jwl.driver.server.mapper"}) +public class MybatisPlusConfig { + + + @Bean + public PaginationInterceptor paginationInterceptor() { + PaginationInterceptor paginationInterceptor = new PaginationInterceptor(); + return paginationInterceptor; + } + + + + +} diff --git a/src/main/java/com/jwl/driver/server/config/RedisConfig.java b/src/main/java/com/jwl/driver/server/config/RedisConfig.java new file mode 100644 index 0000000..e6da94c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/config/RedisConfig.java @@ -0,0 +1,41 @@ +package com.jwl.driver.server.config; + +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; +import org.springframework.data.redis.serializer.StringRedisSerializer; + +/** + * Created on 2020/6/23 + */ +@Configuration +public class RedisConfig { + + @Bean + public RedisTemplate redisTemplate(RedisConnectionFactory connectionFactory) { + RedisTemplate redisTemplate = new RedisTemplate<>(); + redisTemplate.setConnectionFactory(connectionFactory); + + //使用Jackson2JsonRedisSerializer来序列化和反序列化redis的value值(默认使用JDK的序列化方式) + Jackson2JsonRedisSerializer serializer = new Jackson2JsonRedisSerializer(Object.class); + + ObjectMapper mapper = new ObjectMapper(); + mapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); + mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL); + serializer.setObjectMapper(mapper); + + redisTemplate.setValueSerializer(serializer); + //使用StringRedisSerializer来序列化和反序列化redis的key值 + redisTemplate.setKeySerializer(new StringRedisSerializer()); + redisTemplate.afterPropertiesSet(); + return redisTemplate; + } + + + +} diff --git a/src/main/java/com/jwl/driver/server/config/SnowflakeConfig.java b/src/main/java/com/jwl/driver/server/config/SnowflakeConfig.java new file mode 100644 index 0000000..db65526 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/config/SnowflakeConfig.java @@ -0,0 +1,15 @@ +package com.jwl.driver.server.config; + +import cn.hutool.core.lang.Snowflake; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class SnowflakeConfig { + + @Bean + public Snowflake snowflake() { + return new Snowflake(1L, 2L); + } + +} diff --git a/src/main/java/com/jwl/driver/server/config/SwaggerConfig.java b/src/main/java/com/jwl/driver/server/config/SwaggerConfig.java new file mode 100644 index 0000000..ccad151 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/config/SwaggerConfig.java @@ -0,0 +1,56 @@ +package com.jwl.driver.server.config; + +import com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver; +import io.swagger.annotations.ApiOperation; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.annotation.Order; +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.service.Contact; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc; + +/** + * @Descript Swagger 配置 + * @Version 0.0.1 + **/ + +@Configuration +@EnableSwagger2WebMvc +public class SwaggerConfig { + + private final OpenApiExtensionResolver openApiExtensionResolver; + public SwaggerConfig(OpenApiExtensionResolver openApiExtensionResolver){ + this.openApiExtensionResolver = openApiExtensionResolver; + } + + @Bean + @Order(value = 1) + public Docket adminDocket(){ + return new Docket(DocumentationType.SWAGGER_2) + .pathMapping("/driver-api") + .enable(true) + .apiInfo(groupApiInfo()) + .select() + .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) + .paths(PathSelectors.any()) + .build() + .extensions(openApiExtensionResolver.buildExtensions("接口中心")); + } + + private ApiInfo groupApiInfo(){ + return new ApiInfoBuilder() + .title("管理中心") + .description("管理中心接口文档") + .termsOfServiceUrl("http://127.0.0.1") + .contact(new Contact("jslx", + "http://www.jslx.com", + "jslx@equ-tech.com")) + .version("1.0") + .build(); + } +} diff --git a/src/main/java/com/jwl/driver/server/constant/Constants.java b/src/main/java/com/jwl/driver/server/constant/Constants.java new file mode 100644 index 0000000..3177d8c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/constant/Constants.java @@ -0,0 +1,10 @@ +package com.jwl.driver.server.constant; + +/** + * 一些常用的常量 + */ + +public class Constants { + + +} diff --git a/src/main/java/com/jwl/driver/server/constant/ErrorCode.java b/src/main/java/com/jwl/driver/server/constant/ErrorCode.java new file mode 100644 index 0000000..9e25272 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/constant/ErrorCode.java @@ -0,0 +1,39 @@ +package com.jwl.driver.server.constant; + +public class ErrorCode { + + // 未定义错误编码 + public static final String UNDEFINED = "E001"; + // JSON 解析出错,请求格式不正确 + public static final String INCORRECT_JSON_FORMAT = "E002"; + // 缺少必要请求头 + public static final String MISSING_REQUIRED_HEADER = "E003"; + // 非法参数 + public static final String INVALID_PARAM = "E004"; + // 用户配置错误 + public static final String ERROR_USER_CONFIG = "E005"; + // 用户请求时间戳错误 + public static final String INVALID_REQUEST_TIME = "E006"; + // 用户签名错误 + public static final String SIGN_MISMATCH = "E007"; + // 系统内部错误 + public static final String INTERNAL_ERROR = "E500"; + // 错误/无效请求 + public static final String BAD_REQUEST = "E400"; + // 鉴权错误 + public static final String AUTH_ERROR = "E403"; + // + public static final String CODE_ERROR = "E502"; + + // 上游系统错误 + public static final String UPSTREAM_SYS_ERROR = "E501"; + + // 业务异常编码,异常原因已知 + public static final String BUSINESS = "E008"; + + public static final String NOT_SHOW = "NOO1"; + + private ErrorCode() { + } + +} diff --git a/src/main/java/com/jwl/driver/server/controller/OrderPayInfoController.java b/src/main/java/com/jwl/driver/server/controller/OrderPayInfoController.java new file mode 100644 index 0000000..66c2381 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/OrderPayInfoController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 支付表 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//orderPayInfo") +public class OrderPayInfoController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/PayNoticeLogController.java b/src/main/java/com/jwl/driver/server/controller/PayNoticeLogController.java new file mode 100644 index 0000000..8ecb86c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/PayNoticeLogController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 支付回调日志表 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//payNoticeLog") +public class PayNoticeLogController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/PayPrepayController.java b/src/main/java/com/jwl/driver/server/controller/PayPrepayController.java new file mode 100644 index 0000000..a91116f --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/PayPrepayController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 预支付表 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//payPrepay") +public class PayPrepayController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/PayPrepayResultController.java b/src/main/java/com/jwl/driver/server/controller/PayPrepayResultController.java new file mode 100644 index 0000000..ad107e4 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/PayPrepayResultController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 支付结果表 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//payPrepayResult") +public class PayPrepayResultController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/PayRefundController.java b/src/main/java/com/jwl/driver/server/controller/PayRefundController.java new file mode 100644 index 0000000..a50d8e2 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/PayRefundController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 申请退款表 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//payRefund") +public class PayRefundController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/PayRefundResultController.java b/src/main/java/com/jwl/driver/server/controller/PayRefundResultController.java new file mode 100644 index 0000000..005fced --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/PayRefundResultController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 退款结果表 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//payRefundResult") +public class PayRefundResultController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdCarController.java b/src/main/java/com/jwl/driver/server/controller/TdCarController.java new file mode 100644 index 0000000..32b6718 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdCarController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 车型分类; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdCar") +public class TdCarController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdCategoryQuestionController.java b/src/main/java/com/jwl/driver/server/controller/TdCategoryQuestionController.java new file mode 100644 index 0000000..9ece1a3 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdCategoryQuestionController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 题型题目表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdCategoryQuestion") +public class TdCategoryQuestionController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdExaminationRoomController.java b/src/main/java/com/jwl/driver/server/controller/TdExaminationRoomController.java new file mode 100644 index 0000000..a911552 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdExaminationRoomController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 考场信息表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdExaminationRoom") +public class TdExaminationRoomController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdExaminationRoomRoadController.java b/src/main/java/com/jwl/driver/server/controller/TdExaminationRoomRoadController.java new file mode 100644 index 0000000..3045451 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdExaminationRoomRoadController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 考场线路表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdExaminationRoomRoad") +public class TdExaminationRoomRoadController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdMemberController.java b/src/main/java/com/jwl/driver/server/controller/TdMemberController.java new file mode 100644 index 0000000..1063c99 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdMemberController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 会员类型表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdMember") +public class TdMemberController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdModuleQuestionController.java b/src/main/java/com/jwl/driver/server/controller/TdModuleQuestionController.java new file mode 100644 index 0000000..c5ac7fd --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdModuleQuestionController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 模块题目表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdModuleQuestion") +public class TdModuleQuestionController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdPointQuestionController.java b/src/main/java/com/jwl/driver/server/controller/TdPointQuestionController.java new file mode 100644 index 0000000..37d748a --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdPointQuestionController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 考点题目表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdPointQuestion") +public class TdPointQuestionController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdQuestionController.java b/src/main/java/com/jwl/driver/server/controller/TdQuestionController.java new file mode 100644 index 0000000..d969647 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdQuestionController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 题库; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdQuestion") +public class TdQuestionController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdQuestionTestController.java b/src/main/java/com/jwl/driver/server/controller/TdQuestionTestController.java new file mode 100644 index 0000000..0e4e2f7 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdQuestionTestController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 模拟考试成绩表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdQuestionTest") +public class TdQuestionTestController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdSysConfigController.java b/src/main/java/com/jwl/driver/server/controller/TdSysConfigController.java new file mode 100644 index 0000000..5612929 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdSysConfigController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 系统配置表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdSysConfig") +public class TdSysConfigController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdSysConfigListController.java b/src/main/java/com/jwl/driver/server/controller/TdSysConfigListController.java new file mode 100644 index 0000000..e0c72d4 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdSysConfigListController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 系统配置列表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdSysConfigList") +public class TdSysConfigListController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdSysUserController.java b/src/main/java/com/jwl/driver/server/controller/TdSysUserController.java new file mode 100644 index 0000000..87b43aa --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdSysUserController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 用户表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdSysUser") +public class TdSysUserController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdSysUserMemberController.java b/src/main/java/com/jwl/driver/server/controller/TdSysUserMemberController.java new file mode 100644 index 0000000..466b5d8 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdSysUserMemberController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 用户会员表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdSysUserMember") +public class TdSysUserMemberController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdTestProjectController.java b/src/main/java/com/jwl/driver/server/controller/TdTestProjectController.java new file mode 100644 index 0000000..7d74518 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdTestProjectController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 考试项目表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdTestProject") +public class TdTestProjectController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdTestProjectVideosController.java b/src/main/java/com/jwl/driver/server/controller/TdTestProjectVideosController.java new file mode 100644 index 0000000..bb0ff82 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdTestProjectVideosController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 视频标识表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdTestProjectVideos") +public class TdTestProjectVideosController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdTrafficSignCategoryController.java b/src/main/java/com/jwl/driver/server/controller/TdTrafficSignCategoryController.java new file mode 100644 index 0000000..eb6dbb9 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdTrafficSignCategoryController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 图标分类表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdTrafficSignCategory") +public class TdTrafficSignCategoryController { + +} diff --git a/src/main/java/com/jwl/driver/server/controller/TdTrafficSignQuestionController.java b/src/main/java/com/jwl/driver/server/controller/TdTrafficSignQuestionController.java new file mode 100644 index 0000000..e6e682b --- /dev/null +++ b/src/main/java/com/jwl/driver/server/controller/TdTrafficSignQuestionController.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 图标分类相关题目表; 前端控制器 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Controller +@RequestMapping("//tdTrafficSignQuestion") +public class TdTrafficSignQuestionController { + +} diff --git a/src/main/java/com/jwl/driver/server/entity/OrderPayInfo.java b/src/main/java/com/jwl/driver/server/entity/OrderPayInfo.java new file mode 100644 index 0000000..70e69f0 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/OrderPayInfo.java @@ -0,0 +1,100 @@ +package com.jwl.driver.server.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 支付表 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class OrderPayInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 支付流水号 + */ + @TableId("PAY_ID") + private Long payId; + + /** + * 会员标识 + */ + @TableField("MEMBER_ID") + private Integer memberId; + + /** + * 支付金额,单位元 + */ + @TableField("MONEY") + private BigDecimal money; + + /** + * 备注说明 + */ + @TableField("DESCRIPTION") + private String description; + + /** + * 支付类型(weCharPay,aLiPay) + */ + @TableField("PAYMENT_TYPE") + private String paymentType; + + /** + * 具体的支付方式,例如微信的JSAPI,h5 + */ + @TableField("PAY_TYPE") + private String payType; + + /** + * 支付状态: 1:未支付 2:支付成功 3:支付失败 + */ + @TableField("PAY_STATUS") + private Integer payStatus; + + /** + * 预支付ID + */ + @TableField("PREPAT_ID") + private String prepatId; + + /** + * 0:正常,1:已删除 + */ + @TableField("DELETE_STATUS") + private Integer deleteStatus; + + /** + * 支付的账号 + */ + @TableField("USER_ID") + private Long userId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 最近的更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/PayNoticeLog.java b/src/main/java/com/jwl/driver/server/entity/PayNoticeLog.java new file mode 100644 index 0000000..8ed73c8 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/PayNoticeLog.java @@ -0,0 +1,85 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 支付回调日志表 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class PayNoticeLog implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "NOTICE_ID", type = IdType.AUTO) + private Long noticeId; + + /** + * 回调内容json + */ + @TableField("CONTENR") + private String contenr; + + /** + * 回调类型 + */ + @TableField("TYPE") + private String type; + + /** + * 本平台支付单号 + */ + @TableField("PAY_PREPAY_ID") + private Long payPrepayId; + + /** + * 第三方支付平台回调编号 + */ + @TableField("NOTICE_NO") + private String noticeNo; + + /** + * 第三方支付平台回调状态 + */ + @TableField("NOTICE_STATUS") + private String noticeStatus; + + /** + * 备注 + */ + @TableField("REMARKS") + private String remarks; + + /** + * 0:正常,1:已删除 + */ + @TableField("DELETE_STATUS") + private Integer deleteStatus; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 最近的更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/PayPrepay.java b/src/main/java/com/jwl/driver/server/entity/PayPrepay.java new file mode 100644 index 0000000..9be25f4 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/PayPrepay.java @@ -0,0 +1,130 @@ +package com.jwl.driver.server.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 预支付表 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class PayPrepay implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 本平台预支付单号 + */ + @TableId("PAY_PREPAY_ID") + private Long payPrepayId; + + /** + * 支付流水号 + */ + @TableField("PAY_ID") + private Long payId; + + /** + * 支付金额,单位元 + */ + @TableField("MONEY") + private BigDecimal money; + + /** + * 备注说明 + */ + @TableField("DESCRIPTION") + private String description; + + /** + * 支付类型(weCharPay,aLiPay) + */ + @TableField("PAYMENT_TYPE") + private String paymentType; + + /** + * 具体的支付方式,例如微信的JSAPI,h5 + */ + @TableField("PAY_TYPE") + private String payType; + + /** + * 支付状态: 1:未支付 2:支付成功 3:支付失败 + */ + @TableField("PAY_STATUS") + private Integer payStatus; + + /** + * 预支付ID + */ + @TableField("PREPAT_ID") + private String prepatId; + + /** + * 微信openid + */ + @TableField("OPEN_ID") + private String openId; + + /** + * 第三方支付平台配置信息;例如微信支付的appid,apiV3Key等 + */ + @TableField("THIRD_CONFIG_JSON") + private String thirdConfigJson; + + /** + * 本支付平台接收回调的https url + */ + @TableField("NOTIFY_URL") + private String notifyUrl; + + /** + * 接收回调的微服务名称 + */ + @TableField("NOTIFY_MICRO_SERVICE_NAME") + private String notifyMicroServiceName; + + /** + * 微服务接收回调的具体url + */ + @TableField("NOTIFY_MICRO_SERVICE_URL") + private String notifyMicroServiceUrl; + + /** + * 0:正常,1:已删除 + */ + @TableField("DELETE_STATUS") + private Integer deleteStatus; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 最近的更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + /** + * 系统名称 + */ + @TableField("SERVER_NAME") + private String serverName; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/PayPrepayResult.java b/src/main/java/com/jwl/driver/server/entity/PayPrepayResult.java new file mode 100644 index 0000000..0367303 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/PayPrepayResult.java @@ -0,0 +1,124 @@ +package com.jwl.driver.server.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 支付结果表 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class PayPrepayResult implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 本平台支付单号 + */ + @TableId("PAY_PREPAY_ID") + private Long payPrepayId; + + /** + * 第三方支付单号 + */ + @TableField("THIRD_PAY_ID") + private String thirdPayId; + + /** + * 业务系统订单支付流水号 + */ + @TableField("PAY_ID") + private Long payId; + + /** + * 支付金额,单位元 + */ + @TableField("MONEY") + private BigDecimal money; + + /** + * 已退款金额,单位元 + */ + @TableField("REFUND_MONEY") + private BigDecimal refundMoney; + + /** + * 备注说明 + */ + @TableField("DESCRIPTION") + private String description; + + /** + * 支付完成时间 + */ + @TableField("PAY_TIME") + private LocalDateTime payTime; + + /** + * 银行类型,采用字符串类型的银行标识。银行标识请参考《银行类型对照表》 + */ + @TableField("BANK_TYPE") + private String bankType; + + /** + * 交易类型(weCharPay,aLiPay) + */ + @TableField("PAYMENT_TYPE") + private String paymentType; + + /** + * 具体的支付方式,例如微信的JSAPI,h5 + */ + @TableField("PAY_TYPE") + private String payType; + + /** + * 支付状态: 1:未支付 2:支付成功 3:支付失败 + */ + @TableField("PAY_STATUS") + private Integer payStatus; + + /** + * 微信openid + */ + @TableField("OPEN_ID") + private String openId; + + /** + * 0:正常,1:已删除 + */ + @TableField("DELETE_STATUS") + private Integer deleteStatus; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 最近的更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + /** + * 第三方支付平台支付状态 + */ + @TableField("THIRD_PAY_STATUS") + private String thirdPayStatus; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/PayRefund.java b/src/main/java/com/jwl/driver/server/entity/PayRefund.java new file mode 100644 index 0000000..994a9e0 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/PayRefund.java @@ -0,0 +1,118 @@ +package com.jwl.driver.server.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 申请退款表 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class PayRefund implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 本平台支付退款单号 + */ + @TableId("PAY_REFUND_ID") + private Long payRefundId; + + /** + * 业务系统支付退款流水号 + */ + @TableField("REFUND_ID") + private String refundId; + + /** + * 本平台支付单号 + */ + @TableField("PAY_PREPAY_ID") + private Long payPrepayId; + + /** + * 退款金额,单位元 + */ + @TableField("MONEY") + private BigDecimal money; + + /** + * 备注说明 + */ + @TableField("DESCRIPTION") + private String description; + + /** + * 交易类型(weCharPay,aLiPay) + */ + @TableField("PAYMENT_TYPE") + private String paymentType; + + /** + * 具体的支付方式,例如微信的JSAPI,h5 + */ + @TableField("PAY_TYPE") + private String payType; + + /** + * 退款状态: 1:未退款 2:退款成功 3:退款关闭 4:退款处理中 5:退款异常 + */ + @TableField("REFUND_STATUS") + private Integer refundStatus; + + /** + * 第三方支付平台配置信息;例如微信支付的appid,apiV3Key等 + */ + @TableField("THIRD_CONFIG_JSON") + private String thirdConfigJson; + + /** + * 本支付平台接收回调的https url + */ + @TableField("NOTIFY_URL") + private String notifyUrl; + + /** + * 接收回调的微服务名称 + */ + @TableField("NOTIFY_MICRO_SERVICE_NAME") + private String notifyMicroServiceName; + + /** + * 微服务接收回调的具体url + */ + @TableField("NOTIFY_MICRO_SERVICE_URL") + private String notifyMicroServiceUrl; + + /** + * 0:正常,1:已删除 + */ + @TableField("DELETE_STATUS") + private Integer deleteStatus; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 最近的更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/PayRefundResult.java b/src/main/java/com/jwl/driver/server/entity/PayRefundResult.java new file mode 100644 index 0000000..5f9c466 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/PayRefundResult.java @@ -0,0 +1,106 @@ +package com.jwl.driver.server.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 退款结果表 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class PayRefundResult implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 本平台支付退款单号 + */ + @TableId("PAY_REFUND_ID") + private Long payRefundId; + + /** + * 第三方支付退款单号 + */ + @TableField("THIRD_PAY_REFUND_NO") + private String thirdPayRefundNo; + + /** + * 业务系统订单支付退款流水号 + */ + @TableField("REFUND_ID") + private String refundId; + + /** + * 本平台支付单号 + */ + @TableField("PAY_PREPAY_ID") + private Long payPrepayId; + + /** + * 退款金额,单位元 + */ + @TableField("MONEY") + private BigDecimal money; + + /** + * 备注说明 + */ + @TableField("DESCRIPTION") + private String description; + + /** + * 交易类型(weCharPay,aLiPay) + */ + @TableField("PAYMENT_TYPE") + private String paymentType; + + /** + * 具体的支付方式,例如微信的JSAPI,h5 + */ + @TableField("PAY_TYPE") + private String payType; + + /** + * 退款完成时间 + */ + @TableField("REFUND_TIME") + private LocalDateTime refundTime; + + /** + * 退款状态: 1:退款中 2:退款成功 3:退款关闭 4:退款处理中 5:退款异常 + */ + @TableField("REFUND_STATUS") + private Integer refundStatus; + + /** + * 0:正常,1:已删除 + */ + @TableField("DELETE_STATUS") + private Integer deleteStatus; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 最近的更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdCar.java b/src/main/java/com/jwl/driver/server/entity/TdCar.java new file mode 100644 index 0000000..e0c3952 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdCar.java @@ -0,0 +1,71 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 车型分类; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdCar implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 车型标识 + */ + @TableId(value = "CAR_TYPE_ID", type = IdType.AUTO) + private Integer carTypeId; + + /** + * 车型名称 + */ + @TableField("CAR_NAME") + private String carName; + + /** + * 描述 + */ + @TableField("REMARK") + private String remark; + + + /** + * 车型图片url + */ + @TableField("IMAGE_URL") + private String imageUrl; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + /** + * 显示序号 + */ + @TableField("SHOW_ORDER") + private Integer showOrder; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdCategoryQuestion.java b/src/main/java/com/jwl/driver/server/entity/TdCategoryQuestion.java new file mode 100644 index 0000000..a0d81d2 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdCategoryQuestion.java @@ -0,0 +1,57 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 题型题目表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdCategoryQuestion implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 题型分类 + */ + @TableId("CATEGORY") + private String category; + + /** + * 车型 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 题目标识 + */ + @TableField("QUESTION_ID") + private Long questionId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdExaminationRoom.java b/src/main/java/com/jwl/driver/server/entity/TdExaminationRoom.java new file mode 100644 index 0000000..df1cd1c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdExaminationRoom.java @@ -0,0 +1,70 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 考场信息表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdExaminationRoom implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 考场标识 + */ + @TableId(value = "EXAMINATION_ROOM_ID", type = IdType.AUTO) + private Integer examinationRoomId; + + /** + * 考场名称 + */ + @TableField("EXAMINATION_ROOM_NAME") + private String examinationRoomName; + + /** + * 区/县 + */ + @TableField("DISTRICT") + private String district; + + /** + * 区/县名称 + */ + @TableField("DISTRICT_NAME") + private String districtName; + + /** + * 显示序号 + */ + @TableField("SHOW_ORDER") + private Integer showOrder; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdExaminationRoomRoad.java b/src/main/java/com/jwl/driver/server/entity/TdExaminationRoomRoad.java new file mode 100644 index 0000000..75bae74 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdExaminationRoomRoad.java @@ -0,0 +1,76 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 考场线路表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdExaminationRoomRoad implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 考场线路标识 + */ + @TableId(value = "RODE_ID", type = IdType.AUTO) + private Integer rodeId; + + /** + * 考场标识 + */ + @TableField("EXAMINATION_ROOM_ID") + private Integer examinationRoomId; + + /** + * 线路名称 + */ + @TableField("RODE_NAME") + private String rodeName; + + /** + * 车型标识 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 线路图片 + */ + @TableField("RODE_IMG") + private String rodeImg; + + /** + * 线路视频链接 + */ + @TableField("RODE_VIDEO_URL") + private String rodeVideoUrl; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdMember.java b/src/main/java/com/jwl/driver/server/entity/TdMember.java new file mode 100644 index 0000000..d5551c0 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdMember.java @@ -0,0 +1,95 @@ +package com.jwl.driver.server.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 会员类型表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdMember implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 会员标识 + */ + @TableId(value = "MEMBER_ID", type = IdType.AUTO) + private Integer memberId; + + /** + * 会员名称 + */ + @TableField("MEMBER_NAME") + private String memberName; + + /** + * 车型标识 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 会员价格,单位元 + */ + @TableField("PRICE") + private BigDecimal price; + + /** + * 会员折扣,单位元 + */ + @TableField("DISCOUNT") + private BigDecimal discount; + + /** + * 会员时间 + */ + @TableField("DURATION") + private Integer duration; + + /** + * 时长单位,1:天,2:月 3:年 + */ + @TableField("UNIT") + private String unit; + + /** + * 会员描述 + */ + @TableField("DESC") + private String desc; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + /** + * 显示序号 + */ + @TableField("SHOW_ORDER") + private Integer showOrder; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdModuleQuestion.java b/src/main/java/com/jwl/driver/server/entity/TdModuleQuestion.java new file mode 100644 index 0000000..bdd035e --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdModuleQuestion.java @@ -0,0 +1,58 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 模块题目表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdModuleQuestion implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * ,’模块标识 + */ + @TableId(value = "MODULE", type = IdType.AUTO) + private Integer module; + + /** + * 车型 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 题目标识 + */ + @TableField("QUESTION_ID") + private Long questionId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdPointQuestion.java b/src/main/java/com/jwl/driver/server/entity/TdPointQuestion.java new file mode 100644 index 0000000..1c5f96a --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdPointQuestion.java @@ -0,0 +1,58 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 考点题目表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdPointQuestion implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 考点标识 + */ + @TableId(value = "POINT", type = IdType.AUTO) + private Integer point; + + /** + * 车型 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 题目标识 + */ + @TableField("QUESTION_ID") + private Long questionId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdQuestion.java b/src/main/java/com/jwl/driver/server/entity/TdQuestion.java new file mode 100644 index 0000000..06b56f8 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdQuestion.java @@ -0,0 +1,153 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 题库; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdQuestion implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 题目标识 + */ + @TableId(value = "QUESTION_ID", type = IdType.AUTO) + private Long questionId; + + /** + * 题目内容 + */ + @TableField("QUESTION") + private String question; + + /** + * 选项A + */ + @TableField("CHOOSE_A") + private String chooseA; + + /** + * 选项B + */ + @TableField("CHOOSE_B") + private String chooseB; + + /** + * 选项C + */ + @TableField("CHOOSE_C") + private String chooseC; + + /** + * 选项D + */ + @TableField("CHOOSE_D") + private String chooseD; + + /** + * 选项E + */ + @TableField("CHOOSE_E") + private String chooseE; + + /** + * 选项F + */ + @TableField("CHOOSE_F") + private String chooseF; + + /** + * 选项G + */ + @TableField("CHOOSE_G") + private String chooseG; + + /** + * 正确答案 + */ + @TableField("TRUE_ANSWER") + private String trueAnswer; + + /** + * 未知 + */ + @TableField("CID") + private String cid; + + /** + * 题型分类 + */ + @TableField("CATEGORY") + private String category; + + /** + * 题目图片url + */ + @TableField("IMAGE_URL") + private String imageUrl; + + /** + * 未知 + */ + @TableField("SOHU_IMG") + private String sohuImg; + + /** + * 最佳回答 + */ + @TableField("BEST_ANSWER") + private String bestAnswer; + + /** + * 章节标识 + */ + @TableField("CHAPTER") + private String chapter; + + /** + * 所属科目,1:科目1,2:科目4 + */ + @TableField("SUBJECT") + private String subject; + + /** + * 选择 + */ + @TableField("OPTIONS") + private String options; + + /** + * 题目类型,1:选择题 2:判断题,3:多选题 + */ + @TableField("TYPE") + private String type; + + /** + * 车型 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdQuestionTest.java b/src/main/java/com/jwl/driver/server/entity/TdQuestionTest.java new file mode 100644 index 0000000..4421327 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdQuestionTest.java @@ -0,0 +1,64 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 模拟考试成绩表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdQuestionTest implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 模拟考试成绩标识 + */ + @TableId(value = "TEST_ID", type = IdType.AUTO) + private Long testId; + + /** + * 车型标识 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 用户标识 + */ + @TableField("USER_ID") + private Long userId; + + /** + * 考试得分 + */ + @TableField("SCORE") + private Integer score; + + /** + * 考试时长,单位为秒 + */ + @TableField("TEST_TIME") + private Integer testTime; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdSysConfig.java b/src/main/java/com/jwl/driver/server/entity/TdSysConfig.java new file mode 100644 index 0000000..e1e5dc0 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdSysConfig.java @@ -0,0 +1,83 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 系统配置表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdSysConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 车型标识,-1为与车型无关 + */ + @TableId("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 配置项KEY + */ + @TableField("CONFIG_KEY") + private String configKey; + + /** + * 配置项值 + */ + @TableField("CONFIG_VALUE") + private String configValue; + + /** + * 配置项名称 + */ + @TableField("CONFIG_NAME") + private String configName; + + /** + * 配置项说明 + */ + @TableField("CONFIG_DESC") + private String configDesc; + + /** + * 配置项类型;0: key-value模式 + 1: 普通 list 模式 + A-Z:特殊模式 + */ + @TableField("CONFIG_TYPE") + private String configType; + + /** + * 配置项JSON值 + */ + @TableField("CONFIG_JSON") + private String configJson; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdSysConfigList.java b/src/main/java/com/jwl/driver/server/entity/TdSysConfigList.java new file mode 100644 index 0000000..8d1eb51 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdSysConfigList.java @@ -0,0 +1,69 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 系统配置列表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdSysConfigList implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 车型标识,-1为与车型无关 + */ + @TableId("CAR_TYPE_ID") + private Integer carTypeId; + + @TableField("CONFIG_KEY") + private String configKey; + + @TableField("CONFIG_ITEM_CODE") + private String configItemCode; + + @TableField("CONFIG_ITEM_NAME") + private String configItemName; + + @TableField("CONFIG_ITEM_JSON") + private String configItemJson; + + @TableField("CONFIG_ITEM_DESC") + private String configItemDesc; + + /** + * 显示序号 + */ + @TableField("SHOW_ORDER") + private Integer showOrder; + + @TableField("PARENT_ITEM_CODE") + private String parentItemCode; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdSysUser.java b/src/main/java/com/jwl/driver/server/entity/TdSysUser.java new file mode 100644 index 0000000..5347619 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdSysUser.java @@ -0,0 +1,70 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 用户表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdSysUser implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 用户标识 + */ + @TableId(value = "USER_ID", type = IdType.AUTO) + private Long userId; + + /** + * 用户名 + */ + @TableField("USER_NAME") + private String userName; + + /** + * 手机号码 + */ + @TableField("PHONE") + private String phone; + + /** + * 备注 + */ + @TableField("REMARK") + private String remark; + + /** + * 头像 + */ + @TableField("AVATAR") + private String avatar; + + /** + * 驾校标识 + */ + @TableField("SCHOOL_ID") + private Long schoolId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdSysUserMember.java b/src/main/java/com/jwl/driver/server/entity/TdSysUserMember.java new file mode 100644 index 0000000..bd63765 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdSysUserMember.java @@ -0,0 +1,63 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 用户会员表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdSysUserMember implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 用户标识 + */ + @TableId("USER_ID") + private Long userId; + + /** + * 会员标识 + */ + @TableField("MEMBER_ID") + private Integer memberId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 更新时间 + */ + @TableField("UPDATE_TIME") + private LocalDateTime updateTime; + + /** + * 会员开始时间 + */ + @TableField("START_DATE") + private LocalDateTime startDate; + + /** + * 会员结束时间 + */ + @TableField("END_DATE") + private LocalDateTime endDate; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdTestProject.java b/src/main/java/com/jwl/driver/server/entity/TdTestProject.java new file mode 100644 index 0000000..570a824 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdTestProject.java @@ -0,0 +1,69 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 考试项目表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdTestProject implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 考试项目 + */ + @TableId("TEST_PROJECT_ID") + private Integer testProjectId; + + /** + * 所属科目 + */ + @TableField("SUBJECT") + private String subject; + + /** + * 车型标识 + */ + @TableField("CAR_TYPE_ID") + private Integer carTypeId; + + /** + * 驾驶类型,手动挡,自动挡,A2:B2等(在字典表里配置) + */ + @TableField("DRIVE_TYPE") + private String driveType; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + /** + * 显示序号 + */ + @TableField("SHOW_ORDER") + private Integer showOrder; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdTestProjectVideos.java b/src/main/java/com/jwl/driver/server/entity/TdTestProjectVideos.java new file mode 100644 index 0000000..cf66a9f --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdTestProjectVideos.java @@ -0,0 +1,62 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 视频标识表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdTestProjectVideos implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 视频标识 + */ + @TableId(value = "VIDEO_ID", type = IdType.AUTO) + private Integer videoId; + + /** + * 考试项目 + */ + @TableField("TEST_PROJECT_ID") + private Integer testProjectId; + + /** + * 视频图片 + */ + private String videoImage; + + /** + * 视频链接 + */ + private String videoUrl; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdTrafficSignCategory.java b/src/main/java/com/jwl/driver/server/entity/TdTrafficSignCategory.java new file mode 100644 index 0000000..6ef8dcc --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdTrafficSignCategory.java @@ -0,0 +1,82 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 图标分类表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdTrafficSignCategory implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 图标分类标识 + */ + @TableId(value = "SIGN_CATEGORY_ID", type = IdType.AUTO) + private Integer signCategoryId; + + /** + * 图标分类名称 + */ + @TableField("SIGN_CATEGORY_NAME") + private String signCategoryName; + + /** + * 图标分类图片链接 + */ + @TableField("SIGN_IMG_URL") + private String signImgUrl; + + /** + * 父类图标分类标识 + */ + @TableField("PARENT_SIGN_CATEGORY_ID") + private Integer parentSignCategoryId; + + /** + * 是否有子项,子项才会与题目关联 + */ + @TableField("HAS_CHILD") + private String hasChild; + + /** + * 图标数量 + */ + @TableField("SIGN_NUM") + private Integer signNum; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + /** + * 显示序号 + */ + @TableField("SHOW_ORDER") + private Integer showOrder; + + +} diff --git a/src/main/java/com/jwl/driver/server/entity/TdTrafficSignQuestion.java b/src/main/java/com/jwl/driver/server/entity/TdTrafficSignQuestion.java new file mode 100644 index 0000000..6442224 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/entity/TdTrafficSignQuestion.java @@ -0,0 +1,52 @@ +package com.jwl.driver.server.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 图标分类相关题目表; + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class TdTrafficSignQuestion implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 图标分类标识 + */ + @TableId(value = "SIGN_CATEGORY_ID", type = IdType.AUTO) + private Integer signCategoryId; + + /** + * 题目标识 + */ + @TableField("QUESTION_ID") + private Long questionId; + + /** + * 创建时间 + */ + @TableField("CREATE_TIME") + private LocalDateTime createTime; + + /** + * 是否生效 + */ + @TableField("IS_ACTIVE") + private String isActive; + + +} diff --git a/src/main/java/com/jwl/driver/server/enums/ErrorCodeEnum.java b/src/main/java/com/jwl/driver/server/enums/ErrorCodeEnum.java new file mode 100644 index 0000000..e3bfaed --- /dev/null +++ b/src/main/java/com/jwl/driver/server/enums/ErrorCodeEnum.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2019. AI. + */ +package com.jwl.driver.server.enums; + + +/** + * @author tangsz + */ + +public enum ErrorCodeEnum { + + E00000403("0403", "无访问权限"), + + E00000500("0500", "未知异常"), + + E00000001("0001", "登陆已过期,请重新登陆"), + + E00000002("0002", "缺少必输参数:"),; + + + private String code; + private String msg; + + public String msg() { + return msg; + } + + public String code() { + return code; + } + + ErrorCodeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static ErrorCodeEnum getEnum(String code) { + for (ErrorCodeEnum ele : ErrorCodeEnum.values()) { + if (ele.code() == code) { + return ele; + } + } + return null; + } +} diff --git a/src/main/java/com/jwl/driver/server/enums/StatusEnum.java b/src/main/java/com/jwl/driver/server/enums/StatusEnum.java new file mode 100644 index 0000000..9ad715a --- /dev/null +++ b/src/main/java/com/jwl/driver/server/enums/StatusEnum.java @@ -0,0 +1,110 @@ +package com.jwl.driver.server.enums; + +import java.util.ArrayList; +import java.util.List; + +/** + * 返回结果. + * + * @author tangsz + */ +public enum StatusEnum { + + + /** 成功 */ + SUCCESS("0000", "成功"), + + /** 失败 */ + FAIL("4000", "失败"), + ; + + + /** 枚举值码 */ + private final String code; + + /** 枚举描述 */ + private final String message; + + /** + * 构建一个 StatusEnum 。 + * @param code 枚举值码。 + * @param message 枚举描述。 + */ + private StatusEnum(String code, String message) { + this.code = code; + this.message = message; + } + + /** + * 得到枚举值码。 + * @return 枚举值码。 + */ + public String getCode() { + return code; + } + + /** + * 得到枚举描述。 + * @return 枚举描述。 + */ + public String getMessage() { + return message; + } + + /** + * 得到枚举值码。 + * @return 枚举值码。 + */ + public String code() { + return code; + } + + /** + * 得到枚举描述。 + * @return 枚举描述。 + */ + public String message() { + return message; + } + + /** + * 通过枚举值码查找枚举值。 + * @param code 查找枚举值的枚举值码。 + * @return 枚举值码对应的枚举值。 + * @throws IllegalArgumentException 如果 code 没有对应的 StatusEnum 。 + */ + public static StatusEnum findStatus(String code) { + for (StatusEnum status : values()) { + if (status.getCode().equals(code)) { + return status; + } + } + throw new IllegalArgumentException("ResultInfo StatusEnum not legal:" + code); + } + + /** + * 获取全部枚举值。 + * + * @return 全部枚举值。 + */ + public static List getAllStatus() { + List list = new ArrayList(); + for (StatusEnum status : values()) { + list.add(status); + } + return list; + } + + /** + * 获取全部枚举值码。 + * + * @return 全部枚举值码。 + */ + public static List getAllStatusCode() { + List list = new ArrayList(); + for (StatusEnum status : values()) { + list.add(status.code()); + } + return list; + } +} diff --git a/src/main/java/com/jwl/driver/server/exception/BusinessException.java b/src/main/java/com/jwl/driver/server/exception/BusinessException.java new file mode 100644 index 0000000..35241e2 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/exception/BusinessException.java @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2019 AI. + */ +package com.jwl.driver.server.exception; + + +import com.jwl.driver.server.enums.ErrorCodeEnum; + +/** + * 业务异常. + * + * @author tangsz + */ +public class BusinessException extends RuntimeException { + + /** + * 异常码 + */ + protected String code; + + private static final long serialVersionUID = 3160241586346324994L; + + public BusinessException() { + } + + public BusinessException(Throwable cause) { + super(cause); + } + + public BusinessException(String message) { + super(message); + } + + public BusinessException(String message, Throwable cause) { + super(message, cause); + } + + public BusinessException(String code, String message) { + super(message); + this.code = code; + } + + public static BusinessException of(String code, String message) { + return new BusinessException(code, message); + } + + public BusinessException(String code, String msgFormat, Object... args) { + super(String.format(msgFormat, args)); + this.code = code; + } + + public BusinessException(ErrorCodeEnum codeEnum, Object... args) { + super(String.format(codeEnum.msg(), args)); + this.code = codeEnum.code(); + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } +} diff --git a/src/main/java/com/jwl/driver/server/exception/GlobalExceptionHandler.java b/src/main/java/com/jwl/driver/server/exception/GlobalExceptionHandler.java new file mode 100644 index 0000000..86afd31 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/exception/GlobalExceptionHandler.java @@ -0,0 +1,47 @@ +package com.jwl.driver.server.exception; + + +import com.jwl.driver.server.response.BaseResponse; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; + +import java.security.SignatureException; + + +/** + * 全局异常. + * + * @author tangsz + */ + +@RestControllerAdvice +public class GlobalExceptionHandler { + + private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class); + + @ExceptionHandler(value = Exception.class) + public BaseResponse handleBadRequest(Exception e) { + logger.error("Error: handleBadRequest StackTrace : {}", e); + + if (e instanceof MissTokenException) { + return BaseResponse.fail("4401", null, e.getMessage()); + } + if (e instanceof IdentityExpiresException) { + return BaseResponse.fail("4402", null, e.getMessage()); + } + return BaseResponse.fail(null, e.getMessage()); + } + + + @ExceptionHandler(BusinessException.class) + public BaseResponse businessException(BusinessException e) { + return BaseResponse.fail(e.getCode(), null, e.getMessage()); + } + + @ExceptionHandler(SignatureException.class) + public BaseResponse signatureException(SignatureException e) { + return BaseResponse.fail("E004", "token is invalid"); + } +} diff --git a/src/main/java/com/jwl/driver/server/exception/IdentityExpiresException.java b/src/main/java/com/jwl/driver/server/exception/IdentityExpiresException.java new file mode 100644 index 0000000..0a6722b --- /dev/null +++ b/src/main/java/com/jwl/driver/server/exception/IdentityExpiresException.java @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2019 AI. + */ +package com.jwl.driver.server.exception; + +import com.jwl.driver.server.enums.ErrorCodeEnum; + + +/** + * 登录过期. + * + * @author tangsz + */ +public class IdentityExpiresException extends RuntimeException { + + /** + * 异常码 + */ + protected String code; + + private static final long serialVersionUID = 3160241586346324994L; + + public IdentityExpiresException() { + } + + public IdentityExpiresException(Throwable cause) { + super(cause); + } + + public IdentityExpiresException(String message) { + super(message); + } + + public IdentityExpiresException(String message, Throwable cause) { + super(message, cause); + } + + public IdentityExpiresException(String code, String message) { + super(message); + this.code = code; + } + + public IdentityExpiresException(String code, String msgFormat, Object... args) { + super(String.format(msgFormat, args)); + this.code = code; + } + + public IdentityExpiresException(ErrorCodeEnum codeEnum, Object... args) { + super(String.format(codeEnum.msg(), args)); + this.code = codeEnum.code(); + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } +} diff --git a/src/main/java/com/jwl/driver/server/exception/MissTokenException.java b/src/main/java/com/jwl/driver/server/exception/MissTokenException.java new file mode 100644 index 0000000..cf5ce13 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/exception/MissTokenException.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2019 AI. + */ +package com.jwl.driver.server.exception; + +import com.jwl.driver.server.enums.ErrorCodeEnum; + +/** + * 缺少token. + * + * @author tangsz + */ +public class MissTokenException extends RuntimeException { + + /** + * 异常码 + */ + protected String code; + + private static final long serialVersionUID = 3160241586346324994L; + + public MissTokenException() { + } + + public MissTokenException(Throwable cause) { + super(cause); + } + + public MissTokenException(String message) { + super(message); + } + + public MissTokenException(String message, Throwable cause) { + super(message, cause); + } + + public MissTokenException(String code, String message) { + super(message); + this.code = code; + } + + public MissTokenException(String code, String msgFormat, Object... args) { + super(String.format(msgFormat, args)); + this.code = code; + } + + public MissTokenException(ErrorCodeEnum codeEnum, Object... args) { + super(String.format(codeEnum.msg(), args)); + this.code = codeEnum.code(); + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } +} diff --git a/src/main/java/com/jwl/driver/server/generator/CodeGeneratorTool.java b/src/main/java/com/jwl/driver/server/generator/CodeGeneratorTool.java new file mode 100644 index 0000000..5fc4329 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/generator/CodeGeneratorTool.java @@ -0,0 +1,241 @@ +package com.jwl.driver.server.generator; + +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException; +import com.baomidou.mybatisplus.core.toolkit.StringPool; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.baomidou.mybatisplus.generator.AutoGenerator; +import com.baomidou.mybatisplus.generator.InjectionConfig; +import com.baomidou.mybatisplus.generator.config.*; +import com.baomidou.mybatisplus.generator.config.po.TableInfo; +import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; +import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine; + +import java.io.File; +import java.lang.reflect.Field; +import java.sql.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Scanner; + +/** + *

+ * 代码生成器工具 + *

+ * + * @author tangsz + * @since 2019-05-22 + */ + +public class CodeGeneratorTool { + + private String host = ""; + private String database = ""; + private String url = ""; + private String userName = ""; + private String password = ""; + private String driverName = "com.mysql.cj.jdbc.Driver"; + private String projectPath = System.getProperty("user.dir"); + private String schema = ""; + + private String mapperXmlFile = ""; + + + public void generCode(String host, String database, String url, String userName, String password, String projectPath, + String module, String superEntityClass) throws ClassNotFoundException { + this.host = host; + this.database = database; + this.url = url; + this.userName = userName; + this.password = password; + this.projectPath = this.projectPath + projectPath; + + // 代码生成器 + AutoGenerator mpg = new AutoGenerator(); + + // 全局配置 + mpg.setGlobalConfig(initGlobalConfig()); + + // 数据源配置 + mpg.setDataSource(initDataSourceConfig()); + + // 包配置 + PackageConfig pc = new PackageConfig(); + pc.setModuleName(module); + pc.setModuleName(""); + pc.setParent(""); + // 添加 gen,标识为生成的代码 + pc.setController(module + ".controller"); + pc.setEntity(module + ".entity"); + pc.setMapper(module + ".mapper"); + pc.setService(module + ".service"); + pc.setServiceImpl(module + ".service.impl"); + + mpg.setPackageInfo(pc); + + // 自定义配置 + + mpg.setCfg(initInjectionConfig()); + mpg.setTemplate(new TemplateConfig().setXml(null)); + + // 策略配置 + StrategyConfig strategy = new StrategyConfig(); + strategy.setNaming(NamingStrategy.underline_to_camel); + strategy.setColumnNaming(NamingStrategy.underline_to_camel); + strategy.setEntityLombokModel(true); + // 继承基础类 + if (StringUtils.isNotBlank(superEntityClass)) { + strategy.setSuperEntityClass(superEntityClass); + // 基础类拥有的字段,不重复生成 + List superEntityColumns = new ArrayList<>(); + Field[] fields = Class.forName(superEntityClass).getDeclaredFields(); + for (Field field : fields) { + //在类的外面获取此类的私有成员变量的value时需配置 否则会抛异常 + field.setAccessible(true); + boolean isIdField = field.isAnnotationPresent(TableField.class); + if (isIdField) { + superEntityColumns.add(field.getAnnotation(TableField.class).value()); + } + } + + if (CollUtil.isNotEmpty(superEntityColumns)) { + strategy.setSuperEntityColumns(superEntityColumns.toArray(new String[superEntityColumns.size()])); + } + } +// strategy.setSuperControllerClass("com.ai.cloudframe.common.base.support.BaseController"); + String mode = scanner("请输入生成模式,1 - 全表 2 - 单表"); + while (!("1".equals(mode) || "2".equals(mode))) { + scanner("请输入生成模式,1 - 全表 2 - 单表"); + } + if ("1".equals(mode)) { + final String schema = scanner("请输入数据库名"); + this.schema = schema; + final String[] tables = listAllTable(schema); + strategy.setInclude(tables); + } else { + strategy.setInclude(scanner("表名")); + } + strategy.setTablePrefix(scanner("表前缀")); + + mpg.setStrategy(strategy); + mpg.setTemplateEngine(new FreemarkerTemplateEngine()); + + mpg.setTemplate(initTemplateConfig()); + mpg.execute(); + } + + + /** + * 全局配置 + * @return + */ + private GlobalConfig initGlobalConfig() { + GlobalConfig gc = new GlobalConfig(); + gc.setOutputDir(projectPath + "/src/main/java"); + gc.setAuthor("Automated procedures"); + gc.setOpen(false); + return gc; + } + + + /** + * 配置数据源 + * @return + */ + private DataSourceConfig initDataSourceConfig() { + return new DataSourceConfig() + .setUrl(url) + .setDriverName(driverName) + .setUsername(userName) + .setPassword(password); + } + + /** + * 自定义配置 + * @return + */ + private InjectionConfig initInjectionConfig() { + InjectionConfig cfg = new InjectionConfig() { + @Override + public void initMap() { + // to do nothing + } + }; + List focList = new ArrayList<>(); + focList.add(new FileOutConfig("/templates/mapper.xml.ftl") { + @Override + public String outputFile(TableInfo tableInfo) { + // 自定义输入文件名称 + mapperXmlFile = projectPath + "/src/main/resources/mapper/" + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML; + return projectPath + "/src/main/resources/mapper/" + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML; + } + }); + cfg.setFileOutConfigList(focList); + return cfg; + } + + /** + * 覆盖Entity以及xml + * @return + */ + private TemplateConfig initTemplateConfig() { + TemplateConfig tc = new TemplateConfig(); + tc.setXml(null); + //如果当前Entity已经存在,那么仅仅覆盖Entity + File file = new File(mapperXmlFile); + if (file.exists()) { + tc.setController(null); + tc.setMapper(null); + tc.setService(null); + tc.setServiceImpl(null); + tc.setEntityKt(null); + } + return tc; + } + + /** + *

+ * 读取控制台内容 + *

+ */ + public String scanner(String tip) { + Scanner scanner = new Scanner(System.in); + StringBuilder help = new StringBuilder(); + help.append("请输入" + tip + ":"); + System.out.println(help.toString()); + if (scanner.hasNext()) { + String ipt = scanner.next(); + if (StringUtils.isNotEmpty(ipt)) { + return ipt; + } + } + throw new MybatisPlusException("请输入正确的" + tip + "!"); + } + + private String[] listAllTable(String db) { + try { + Class.forName("com.mysql.cj.jdbc.Driver"); + } catch (ClassNotFoundException e) { + throw new RuntimeException(e); + } + List tableNames = new ArrayList<>(20); + try (Connection connection = DriverManager.getConnection(url, userName, password)) { + final DatabaseMetaData metaData = connection.getMetaData(); + final ResultSet tables = + metaData.getTables(db,null, null, new String[] { "TABLE" }); + while (tables.next()) { + System.out.printf("%s - %s - %s%n", tables.getString(1), tables.getString(2), tables.getString(3)); + if (!schema.equals(tables.getString(1))) { + System.out.printf("skip %s.%n", tables.getString(3)); + } + tableNames.add(tables.getString(3)); + } + } catch (SQLException throwables) { + throw new RuntimeException(throwables); + } + return tableNames.toArray(new String[0]); + } + + +} diff --git a/src/main/java/com/jwl/driver/server/generator/MysqlParamGenerator.java b/src/main/java/com/jwl/driver/server/generator/MysqlParamGenerator.java new file mode 100644 index 0000000..78da371 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/generator/MysqlParamGenerator.java @@ -0,0 +1,21 @@ +package com.jwl.driver.server.generator; + +public class MysqlParamGenerator { + private static final String host = "127.0.0.1:3306"; + private static final String database = "driver_test"; + private static final String url = "jdbc:mysql://" + host + "/" + database + "?characterEncoding=utf-8&autoReconnect=true&serverTimezone=Asia/Shanghai&failOverReadOnly=false"; + private static final String userName = "root"; + private static final String password = "123456"; + + private static final String module = "com.jwl.driver.server"; + // projectPath项为空即可 + private static final String projectPath = "/driver-server"; + + // todo 实体类是否继承基础类-具备开始时间和结束时间实体类的基础属性 + private static final String superEntityClass = ""; + + public static void main(String[] args) throws ClassNotFoundException { + CodeGeneratorTool generatorTool = new CodeGeneratorTool(); + generatorTool.generCode(host, database, url, userName, password, projectPath, module, superEntityClass); + } +} diff --git a/src/main/java/com/jwl/driver/server/mapper/OrderPayInfoMapper.java b/src/main/java/com/jwl/driver/server/mapper/OrderPayInfoMapper.java new file mode 100644 index 0000000..f358bd5 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/OrderPayInfoMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.OrderPayInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 支付表 Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface OrderPayInfoMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/PayNoticeLogMapper.java b/src/main/java/com/jwl/driver/server/mapper/PayNoticeLogMapper.java new file mode 100644 index 0000000..486bb7b --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/PayNoticeLogMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.PayNoticeLog; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 支付回调日志表 Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface PayNoticeLogMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/PayPrepayMapper.java b/src/main/java/com/jwl/driver/server/mapper/PayPrepayMapper.java new file mode 100644 index 0000000..0026d5b --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/PayPrepayMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.PayPrepay; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 预支付表 Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface PayPrepayMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/PayPrepayResultMapper.java b/src/main/java/com/jwl/driver/server/mapper/PayPrepayResultMapper.java new file mode 100644 index 0000000..32fb68e --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/PayPrepayResultMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.PayPrepayResult; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 支付结果表 Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface PayPrepayResultMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/PayRefundMapper.java b/src/main/java/com/jwl/driver/server/mapper/PayRefundMapper.java new file mode 100644 index 0000000..9f8d3f6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/PayRefundMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.PayRefund; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 申请退款表 Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface PayRefundMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/PayRefundResultMapper.java b/src/main/java/com/jwl/driver/server/mapper/PayRefundResultMapper.java new file mode 100644 index 0000000..c540311 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/PayRefundResultMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.PayRefundResult; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 退款结果表 Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface PayRefundResultMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdCarMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdCarMapper.java new file mode 100644 index 0000000..e4486cc --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdCarMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdCar; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 车型分类; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdCarMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdCategoryQuestionMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdCategoryQuestionMapper.java new file mode 100644 index 0000000..4f23df3 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdCategoryQuestionMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdCategoryQuestion; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 题型题目表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdCategoryQuestionMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdExaminationRoomMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdExaminationRoomMapper.java new file mode 100644 index 0000000..5ad6c5c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdExaminationRoomMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdExaminationRoom; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 考场信息表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdExaminationRoomMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdExaminationRoomRoadMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdExaminationRoomRoadMapper.java new file mode 100644 index 0000000..abf7e3e --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdExaminationRoomRoadMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdExaminationRoomRoad; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 考场线路表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdExaminationRoomRoadMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdMemberMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdMemberMapper.java new file mode 100644 index 0000000..6c71d4f --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdMemberMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdMember; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 会员类型表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdMemberMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdModuleQuestionMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdModuleQuestionMapper.java new file mode 100644 index 0000000..f4e96c8 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdModuleQuestionMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdModuleQuestion; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 模块题目表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdModuleQuestionMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdPointQuestionMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdPointQuestionMapper.java new file mode 100644 index 0000000..2ffe69d --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdPointQuestionMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdPointQuestion; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 考点题目表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdPointQuestionMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdQuestionMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdQuestionMapper.java new file mode 100644 index 0000000..4f36d83 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdQuestionMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdQuestion; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 题库; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdQuestionMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdQuestionTestMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdQuestionTestMapper.java new file mode 100644 index 0000000..6f8926e --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdQuestionTestMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdQuestionTest; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 模拟考试成绩表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdQuestionTestMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdSysConfigListMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdSysConfigListMapper.java new file mode 100644 index 0000000..8965d5e --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdSysConfigListMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdSysConfigList; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 系统配置列表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdSysConfigListMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdSysConfigMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdSysConfigMapper.java new file mode 100644 index 0000000..ab91156 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdSysConfigMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdSysConfig; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 系统配置表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdSysConfigMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdSysUserMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdSysUserMapper.java new file mode 100644 index 0000000..57e61c0 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdSysUserMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdSysUser; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 用户表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdSysUserMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdSysUserMemberMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdSysUserMemberMapper.java new file mode 100644 index 0000000..f930013 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdSysUserMemberMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdSysUserMember; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 用户会员表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdSysUserMemberMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdTestProjectMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdTestProjectMapper.java new file mode 100644 index 0000000..6351efb --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdTestProjectMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdTestProject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 考试项目表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdTestProjectMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdTestProjectVideosMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdTestProjectVideosMapper.java new file mode 100644 index 0000000..85e8021 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdTestProjectVideosMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdTestProjectVideos; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 视频标识表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdTestProjectVideosMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdTrafficSignCategoryMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdTrafficSignCategoryMapper.java new file mode 100644 index 0000000..8f15118 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdTrafficSignCategoryMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdTrafficSignCategory; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 图标分类表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdTrafficSignCategoryMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/mapper/TdTrafficSignQuestionMapper.java b/src/main/java/com/jwl/driver/server/mapper/TdTrafficSignQuestionMapper.java new file mode 100644 index 0000000..462f2e5 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/mapper/TdTrafficSignQuestionMapper.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.mapper; + +import com.jwl.driver.server.entity.TdTrafficSignQuestion; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 图标分类相关题目表; Mapper 接口 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface TdTrafficSignQuestionMapper extends BaseMapper { + +} diff --git a/src/main/java/com/jwl/driver/server/response/BaseResponse.java b/src/main/java/com/jwl/driver/server/response/BaseResponse.java new file mode 100644 index 0000000..c09a9ba --- /dev/null +++ b/src/main/java/com/jwl/driver/server/response/BaseResponse.java @@ -0,0 +1,124 @@ +package com.jwl.driver.server.response; + +import com.jwl.driver.server.constant.ErrorCode; +import com.jwl.driver.server.enums.StatusEnum; +import com.jwl.driver.server.exception.BusinessException; +import com.jwl.driver.server.util.StringUtil; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + * 返参基础类. + * + * @author tangsz + */ + +@Data +@EqualsAndHashCode(callSuper = false) +public class BaseResponse implements Serializable { + private String code; + + private String message; + + private T data; + + public BaseResponse() { + } + + public BaseResponse(T data) { + this.data = data; + } + + public BaseResponse(String code, String message) { + this.code = code; + this.message = message; + } + + public BaseResponse(String code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public static BaseResponse create(T t) { + return new BaseResponse(t); + } + + public static BaseResponse create(T t, StatusEnum statusEnum) { + return new BaseResponse(statusEnum.getCode(), statusEnum.getMessage(), t); + } + + public static BaseResponse success() { + return BaseResponse.success(null, ""); + } + + public static BaseResponse success(T t) { + return BaseResponse.success(t, ""); + } + + public static BaseResponse success(T t, String message) { + return new BaseResponse(StatusEnum.SUCCESS.getCode(), StringUtil.isNullOrEmpty(message) ? StatusEnum.SUCCESS.getMessage() : message, t); + } + + public static BaseResponse fail() { + return BaseResponse.fail(null, ""); + } + + public static BaseResponse fail(T t) { + return BaseResponse.fail(t, ""); + } + + + public static BaseResponse fail(T t, String message) { + return new BaseResponse(StatusEnum.FAIL.getCode(), StringUtil.isNullOrEmpty(message) ? StatusEnum.FAIL.getMessage() : message, t); + } + + public static BaseResponse fail(String code, T t, String message) { + return new BaseResponse(StringUtil.isNullOrEmpty(code) ? StatusEnum.FAIL.getCode() : code, StringUtil.isNullOrEmpty(message) ? StatusEnum.FAIL.getMessage() : message, t); + } + + public static BaseResponse create(T t, StatusEnum statusEnum, String message) { + + return new BaseResponse(statusEnum.getCode(), message, t); + } + + public T getData() { + return data; + } + + public void setData(T data) { + this.data = data; + } + + public boolean ok() { + return StatusEnum.SUCCESS.getCode().equals(this.getCode()); + } + + @Override + public String toString() { + return "BaseResponse{" + + "code=" + code + + ", message='" + message + '\'' + + ", data=" + data + + '}'; + } + + /** + * 根据异常,构建返回对象 + * + * @param e + * @param message + * @return + */ + public static BaseResponse buildByException(Exception e, String message, T t) { + String errorCode = ErrorCode.INTERNAL_ERROR; + if (e instanceof BusinessException) { + errorCode = ErrorCode.BUSINESS; + message = e.getMessage(); + } + return BaseResponse.fail(errorCode, t, message); + } + +} diff --git a/src/main/java/com/jwl/driver/server/service/IOrderPayInfoService.java b/src/main/java/com/jwl/driver/server/service/IOrderPayInfoService.java new file mode 100644 index 0000000..dff972a --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/IOrderPayInfoService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.OrderPayInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 支付表 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface IOrderPayInfoService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/IPayNoticeLogService.java b/src/main/java/com/jwl/driver/server/service/IPayNoticeLogService.java new file mode 100644 index 0000000..9a203ae --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/IPayNoticeLogService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.PayNoticeLog; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 支付回调日志表 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface IPayNoticeLogService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/IPayPrepayResultService.java b/src/main/java/com/jwl/driver/server/service/IPayPrepayResultService.java new file mode 100644 index 0000000..62d6ba6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/IPayPrepayResultService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.PayPrepayResult; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 支付结果表 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface IPayPrepayResultService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/IPayPrepayService.java b/src/main/java/com/jwl/driver/server/service/IPayPrepayService.java new file mode 100644 index 0000000..cdc09b6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/IPayPrepayService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.PayPrepay; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 预支付表 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface IPayPrepayService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/IPayRefundResultService.java b/src/main/java/com/jwl/driver/server/service/IPayRefundResultService.java new file mode 100644 index 0000000..7fd4256 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/IPayRefundResultService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.PayRefundResult; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 退款结果表 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface IPayRefundResultService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/IPayRefundService.java b/src/main/java/com/jwl/driver/server/service/IPayRefundService.java new file mode 100644 index 0000000..118cae1 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/IPayRefundService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.PayRefund; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 申请退款表 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface IPayRefundService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdCarService.java b/src/main/java/com/jwl/driver/server/service/ITdCarService.java new file mode 100644 index 0000000..94b1b4c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdCarService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdCar; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 车型分类; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdCarService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdCategoryQuestionService.java b/src/main/java/com/jwl/driver/server/service/ITdCategoryQuestionService.java new file mode 100644 index 0000000..50bb886 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdCategoryQuestionService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdCategoryQuestion; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 题型题目表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdCategoryQuestionService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdExaminationRoomRoadService.java b/src/main/java/com/jwl/driver/server/service/ITdExaminationRoomRoadService.java new file mode 100644 index 0000000..61f9b51 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdExaminationRoomRoadService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdExaminationRoomRoad; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 考场线路表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdExaminationRoomRoadService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdExaminationRoomService.java b/src/main/java/com/jwl/driver/server/service/ITdExaminationRoomService.java new file mode 100644 index 0000000..f79e6ed --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdExaminationRoomService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdExaminationRoom; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 考场信息表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdExaminationRoomService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdMemberService.java b/src/main/java/com/jwl/driver/server/service/ITdMemberService.java new file mode 100644 index 0000000..87e853f --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdMemberService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdMember; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 会员类型表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdMemberService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdModuleQuestionService.java b/src/main/java/com/jwl/driver/server/service/ITdModuleQuestionService.java new file mode 100644 index 0000000..91decd6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdModuleQuestionService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdModuleQuestion; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 模块题目表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdModuleQuestionService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdPointQuestionService.java b/src/main/java/com/jwl/driver/server/service/ITdPointQuestionService.java new file mode 100644 index 0000000..276d882 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdPointQuestionService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdPointQuestion; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 考点题目表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdPointQuestionService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdQuestionService.java b/src/main/java/com/jwl/driver/server/service/ITdQuestionService.java new file mode 100644 index 0000000..bb4ab84 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdQuestionService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdQuestion; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 题库; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdQuestionService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdQuestionTestService.java b/src/main/java/com/jwl/driver/server/service/ITdQuestionTestService.java new file mode 100644 index 0000000..eba9ffa --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdQuestionTestService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdQuestionTest; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 模拟考试成绩表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdQuestionTestService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdSysConfigListService.java b/src/main/java/com/jwl/driver/server/service/ITdSysConfigListService.java new file mode 100644 index 0000000..e6dd741 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdSysConfigListService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdSysConfigList; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 系统配置列表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdSysConfigListService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdSysConfigService.java b/src/main/java/com/jwl/driver/server/service/ITdSysConfigService.java new file mode 100644 index 0000000..a62b0e7 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdSysConfigService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdSysConfig; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 系统配置表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdSysConfigService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdSysUserMemberService.java b/src/main/java/com/jwl/driver/server/service/ITdSysUserMemberService.java new file mode 100644 index 0000000..f7029dc --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdSysUserMemberService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdSysUserMember; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 用户会员表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdSysUserMemberService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdSysUserService.java b/src/main/java/com/jwl/driver/server/service/ITdSysUserService.java new file mode 100644 index 0000000..759c247 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdSysUserService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdSysUser; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 用户表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdSysUserService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdTestProjectService.java b/src/main/java/com/jwl/driver/server/service/ITdTestProjectService.java new file mode 100644 index 0000000..8c15668 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdTestProjectService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdTestProject; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 考试项目表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdTestProjectService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdTestProjectVideosService.java b/src/main/java/com/jwl/driver/server/service/ITdTestProjectVideosService.java new file mode 100644 index 0000000..6a143c8 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdTestProjectVideosService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdTestProjectVideos; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 视频标识表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdTestProjectVideosService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdTrafficSignCategoryService.java b/src/main/java/com/jwl/driver/server/service/ITdTrafficSignCategoryService.java new file mode 100644 index 0000000..b60cebd --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdTrafficSignCategoryService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdTrafficSignCategory; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 图标分类表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdTrafficSignCategoryService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/ITdTrafficSignQuestionService.java b/src/main/java/com/jwl/driver/server/service/ITdTrafficSignQuestionService.java new file mode 100644 index 0000000..79e207c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/ITdTrafficSignQuestionService.java @@ -0,0 +1,16 @@ +package com.jwl.driver.server.service; + +import com.jwl.driver.server.entity.TdTrafficSignQuestion; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 图标分类相关题目表; 服务类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +public interface ITdTrafficSignQuestionService extends IService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/OrderPayInfoServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/OrderPayInfoServiceImpl.java new file mode 100644 index 0000000..fb17e19 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/OrderPayInfoServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.OrderPayInfo; +import com.jwl.driver.server.mapper.OrderPayInfoMapper; +import com.jwl.driver.server.service.IOrderPayInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 支付表 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class OrderPayInfoServiceImpl extends ServiceImpl implements IOrderPayInfoService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/PayNoticeLogServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/PayNoticeLogServiceImpl.java new file mode 100644 index 0000000..8e24fac --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/PayNoticeLogServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.PayNoticeLog; +import com.jwl.driver.server.mapper.PayNoticeLogMapper; +import com.jwl.driver.server.service.IPayNoticeLogService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 支付回调日志表 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class PayNoticeLogServiceImpl extends ServiceImpl implements IPayNoticeLogService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/PayPrepayResultServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/PayPrepayResultServiceImpl.java new file mode 100644 index 0000000..56af739 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/PayPrepayResultServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.PayPrepayResult; +import com.jwl.driver.server.mapper.PayPrepayResultMapper; +import com.jwl.driver.server.service.IPayPrepayResultService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 支付结果表 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class PayPrepayResultServiceImpl extends ServiceImpl implements IPayPrepayResultService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/PayPrepayServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/PayPrepayServiceImpl.java new file mode 100644 index 0000000..d741b5c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/PayPrepayServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.PayPrepay; +import com.jwl.driver.server.mapper.PayPrepayMapper; +import com.jwl.driver.server.service.IPayPrepayService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 预支付表 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class PayPrepayServiceImpl extends ServiceImpl implements IPayPrepayService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/PayRefundResultServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/PayRefundResultServiceImpl.java new file mode 100644 index 0000000..f9a5f15 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/PayRefundResultServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.PayRefundResult; +import com.jwl.driver.server.mapper.PayRefundResultMapper; +import com.jwl.driver.server.service.IPayRefundResultService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 退款结果表 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class PayRefundResultServiceImpl extends ServiceImpl implements IPayRefundResultService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/PayRefundServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/PayRefundServiceImpl.java new file mode 100644 index 0000000..c654f89 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/PayRefundServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.PayRefund; +import com.jwl.driver.server.mapper.PayRefundMapper; +import com.jwl.driver.server.service.IPayRefundService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 申请退款表 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class PayRefundServiceImpl extends ServiceImpl implements IPayRefundService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdCarServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdCarServiceImpl.java new file mode 100644 index 0000000..f6b10b6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdCarServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdCar; +import com.jwl.driver.server.mapper.TdCarMapper; +import com.jwl.driver.server.service.ITdCarService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 车型分类; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdCarServiceImpl extends ServiceImpl implements ITdCarService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdCategoryQuestionServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdCategoryQuestionServiceImpl.java new file mode 100644 index 0000000..8f0d470 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdCategoryQuestionServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdCategoryQuestion; +import com.jwl.driver.server.mapper.TdCategoryQuestionMapper; +import com.jwl.driver.server.service.ITdCategoryQuestionService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 题型题目表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdCategoryQuestionServiceImpl extends ServiceImpl implements ITdCategoryQuestionService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdExaminationRoomRoadServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdExaminationRoomRoadServiceImpl.java new file mode 100644 index 0000000..a3c6c49 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdExaminationRoomRoadServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdExaminationRoomRoad; +import com.jwl.driver.server.mapper.TdExaminationRoomRoadMapper; +import com.jwl.driver.server.service.ITdExaminationRoomRoadService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 考场线路表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdExaminationRoomRoadServiceImpl extends ServiceImpl implements ITdExaminationRoomRoadService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdExaminationRoomServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdExaminationRoomServiceImpl.java new file mode 100644 index 0000000..3667193 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdExaminationRoomServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdExaminationRoom; +import com.jwl.driver.server.mapper.TdExaminationRoomMapper; +import com.jwl.driver.server.service.ITdExaminationRoomService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 考场信息表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdExaminationRoomServiceImpl extends ServiceImpl implements ITdExaminationRoomService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdMemberServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdMemberServiceImpl.java new file mode 100644 index 0000000..540a16a --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdMemberServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdMember; +import com.jwl.driver.server.mapper.TdMemberMapper; +import com.jwl.driver.server.service.ITdMemberService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 会员类型表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdMemberServiceImpl extends ServiceImpl implements ITdMemberService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdModuleQuestionServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdModuleQuestionServiceImpl.java new file mode 100644 index 0000000..4a8f6c6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdModuleQuestionServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdModuleQuestion; +import com.jwl.driver.server.mapper.TdModuleQuestionMapper; +import com.jwl.driver.server.service.ITdModuleQuestionService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 模块题目表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdModuleQuestionServiceImpl extends ServiceImpl implements ITdModuleQuestionService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdPointQuestionServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdPointQuestionServiceImpl.java new file mode 100644 index 0000000..f476e74 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdPointQuestionServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdPointQuestion; +import com.jwl.driver.server.mapper.TdPointQuestionMapper; +import com.jwl.driver.server.service.ITdPointQuestionService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 考点题目表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdPointQuestionServiceImpl extends ServiceImpl implements ITdPointQuestionService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdQuestionServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdQuestionServiceImpl.java new file mode 100644 index 0000000..f4d2859 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdQuestionServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdQuestion; +import com.jwl.driver.server.mapper.TdQuestionMapper; +import com.jwl.driver.server.service.ITdQuestionService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 题库; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdQuestionServiceImpl extends ServiceImpl implements ITdQuestionService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdQuestionTestServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdQuestionTestServiceImpl.java new file mode 100644 index 0000000..91d3fde --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdQuestionTestServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdQuestionTest; +import com.jwl.driver.server.mapper.TdQuestionTestMapper; +import com.jwl.driver.server.service.ITdQuestionTestService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 模拟考试成绩表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdQuestionTestServiceImpl extends ServiceImpl implements ITdQuestionTestService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdSysConfigListServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdSysConfigListServiceImpl.java new file mode 100644 index 0000000..39a3723 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdSysConfigListServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdSysConfigList; +import com.jwl.driver.server.mapper.TdSysConfigListMapper; +import com.jwl.driver.server.service.ITdSysConfigListService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 系统配置列表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdSysConfigListServiceImpl extends ServiceImpl implements ITdSysConfigListService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdSysConfigServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdSysConfigServiceImpl.java new file mode 100644 index 0000000..f684ec0 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdSysConfigServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdSysConfig; +import com.jwl.driver.server.mapper.TdSysConfigMapper; +import com.jwl.driver.server.service.ITdSysConfigService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 系统配置表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdSysConfigServiceImpl extends ServiceImpl implements ITdSysConfigService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdSysUserMemberServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdSysUserMemberServiceImpl.java new file mode 100644 index 0000000..b9c01eb --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdSysUserMemberServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdSysUserMember; +import com.jwl.driver.server.mapper.TdSysUserMemberMapper; +import com.jwl.driver.server.service.ITdSysUserMemberService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 用户会员表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdSysUserMemberServiceImpl extends ServiceImpl implements ITdSysUserMemberService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdSysUserServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdSysUserServiceImpl.java new file mode 100644 index 0000000..f45f2d4 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdSysUserServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdSysUser; +import com.jwl.driver.server.mapper.TdSysUserMapper; +import com.jwl.driver.server.service.ITdSysUserService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 用户表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdSysUserServiceImpl extends ServiceImpl implements ITdSysUserService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdTestProjectServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdTestProjectServiceImpl.java new file mode 100644 index 0000000..04835ac --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdTestProjectServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdTestProject; +import com.jwl.driver.server.mapper.TdTestProjectMapper; +import com.jwl.driver.server.service.ITdTestProjectService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 考试项目表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdTestProjectServiceImpl extends ServiceImpl implements ITdTestProjectService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdTestProjectVideosServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdTestProjectVideosServiceImpl.java new file mode 100644 index 0000000..b39162d --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdTestProjectVideosServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdTestProjectVideos; +import com.jwl.driver.server.mapper.TdTestProjectVideosMapper; +import com.jwl.driver.server.service.ITdTestProjectVideosService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 视频标识表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdTestProjectVideosServiceImpl extends ServiceImpl implements ITdTestProjectVideosService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdTrafficSignCategoryServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdTrafficSignCategoryServiceImpl.java new file mode 100644 index 0000000..ff33f09 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdTrafficSignCategoryServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdTrafficSignCategory; +import com.jwl.driver.server.mapper.TdTrafficSignCategoryMapper; +import com.jwl.driver.server.service.ITdTrafficSignCategoryService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 图标分类表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdTrafficSignCategoryServiceImpl extends ServiceImpl implements ITdTrafficSignCategoryService { + +} diff --git a/src/main/java/com/jwl/driver/server/service/impl/TdTrafficSignQuestionServiceImpl.java b/src/main/java/com/jwl/driver/server/service/impl/TdTrafficSignQuestionServiceImpl.java new file mode 100644 index 0000000..f6e7535 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/service/impl/TdTrafficSignQuestionServiceImpl.java @@ -0,0 +1,20 @@ +package com.jwl.driver.server.service.impl; + +import com.jwl.driver.server.entity.TdTrafficSignQuestion; +import com.jwl.driver.server.mapper.TdTrafficSignQuestionMapper; +import com.jwl.driver.server.service.ITdTrafficSignQuestionService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 图标分类相关题目表; 服务实现类 + *

+ * + * @author Automated procedures + * @since 2023-08-10 + */ +@Service +public class TdTrafficSignQuestionServiceImpl extends ServiceImpl implements ITdTrafficSignQuestionService { + +} diff --git a/src/main/java/com/jwl/driver/server/util/DateTimeUtil.java b/src/main/java/com/jwl/driver/server/util/DateTimeUtil.java new file mode 100644 index 0000000..9afd80c --- /dev/null +++ b/src/main/java/com/jwl/driver/server/util/DateTimeUtil.java @@ -0,0 +1,39 @@ +package com.jwl.driver.server.util; + +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; + +/** + * @Author: yangshuang + * @Description: + * @Date: 2021/2/23 15:23 + * @Version: 1.0 + */ +public class DateTimeUtil { + + /** + * 时间转字符串 + * @param dateTime + * @return + */ + public static String dateTime2Str(LocalDateTime dateTime, DateTimeFormatter df) { + return df.format(dateTime); + } + + /** + * 字符串转时间 + * @param str + * @return + */ + public static LocalDateTime str2DateTime(String str, DateTimeFormatter df) { + return LocalDateTime.parse(str, df); + } + + /** + * 获取当前时间字符串 + * @return + */ + public static String getCurrentStr(DateTimeFormatter df) { + return dateTime2Str(LocalDateTime.now(), df); + } +} diff --git a/src/main/java/com/jwl/driver/server/util/JavaBeanUtil.java b/src/main/java/com/jwl/driver/server/util/JavaBeanUtil.java new file mode 100644 index 0000000..ec4f942 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/util/JavaBeanUtil.java @@ -0,0 +1,204 @@ +package com.jwl.driver.server.util; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.beans.BeanInfo; +import java.beans.IntrospectionException; +import java.beans.Introspector; +import java.beans.PropertyDescriptor; +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + + +public class JavaBeanUtil { + private static Logger logger = LoggerFactory.getLogger(JavaBeanUtil.class); + + /** + * 实体类转map + * + * @param obj + * @return + */ + public static Map convertBeanToMap(Object obj) { + if (obj == null) { + return null; + } + Map map = new HashMap(); + try { + BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass()); + PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); + for (PropertyDescriptor property : propertyDescriptors) { + String key = property.getName(); + // 过滤class属性 + if (!key.equals("class")) { + // 得到property对应的getter方法 + Method getter = property.getReadMethod(); + Object value = getter.invoke(obj); + if (null == value) { + map.put(key, ""); + } else { + map.put(key, value); + } + } + } + } catch (Exception e) { + logger.error("convertBean2Map Error {}", e); + } + return map; + } + + + /** + * map 转实体类 + * + * @param clazz + * @param map + * @param + * @return + */ + public static T convertMapToBean(Class clazz, Map map) { + T obj = null; + try { + BeanInfo beanInfo = Introspector.getBeanInfo(clazz); + obj = clazz.newInstance(); // 创建 JavaBean 对象 + + // 给 JavaBean 对象的属性赋值 + PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); + for (int i = 0; i < propertyDescriptors.length; i++) { + PropertyDescriptor descriptor = propertyDescriptors[i]; + String propertyName = descriptor.getName(); + if (map.containsKey(propertyName)) { + // 下面一句可以 try 起来,这样当一个属性赋值失败的时候就不会影响其他属性赋值。 + Object value = map.get(propertyName); + if ("".equals(value)) { + value = null; + } + Object[] args = new Object[1]; + args[0] = value; + descriptor.getWriteMethod().invoke(obj, args); + } + } + } catch (IllegalAccessException e) { + logger.error("convertMapToBean 实例化JavaBean失败 Error{}", e); + } catch (IntrospectionException e) { + logger.error("convertMapToBean 分析类属性失败 Error{}", e); + } catch (IllegalArgumentException e) { + logger.error("convertMapToBean 映射错误 Error{}", e); + } catch (InstantiationException e) { + logger.error("convertMapToBean 实例化 JavaBean 失败 Error{}", e); + } catch (InvocationTargetException e) { + logger.error("convertMapToBean字段映射失败 Error{}", e); + } catch (Exception e) { + logger.error("convertMapToBean Error{}", e); + } + return (T) obj; + } + + //将map通过反射转化为实体 + public static Object MapToModel(Map map, Object o) throws Exception { + if (!map.isEmpty()) { + for (String k : map.keySet()) { + Object v = null; + if (!k.isEmpty()) { + v = map.get(k); + } + Field[] fields = null; + fields = o.getClass().getDeclaredFields(); + String clzName = o.getClass().getSimpleName(); + for (Field field : fields) { + int mod = field.getModifiers(); + + if (field.getName().toUpperCase().equals(k.toUpperCase())) { + field.setAccessible(true); + + //region--进行类型判断 + String type = field.getType().toString(); + if (type.endsWith("String")) { + if (v != null) { + v = v.toString(); + } else { + v = ""; + } + } + if (type.endsWith("Date")) { + v = new Date(v.toString()); + } + if (type.endsWith("Boolean")) { + v = Boolean.getBoolean(v.toString()); + } + if (type.endsWith("int")) { + v = new Integer(v.toString()); + } + if (type.endsWith("Long")) { + v = new Long(v.toString()); + } + //endregion + field.set(o, v); + } + } + } + } + return o; + } + + /** + * 实体对象转成Map + * + * @param obj 实体对象 + * @return + */ + public static Map object2Map(Object obj) { + Map map = new HashMap<>(); + if (obj == null) { + return map; + } + Class clazz = obj.getClass(); + Field[] fields = clazz.getDeclaredFields(); + try { + for (Field field : fields) { + field.setAccessible(true); + map.put(field.getName(), field.get(obj)); + } + } catch (Exception e) { + e.printStackTrace(); + } + return map; + } + + /** + * Map转成实体对象 + * + * @param map map实体对象包含属性 + * @param clazz 实体对象类型 + * @return + */ + public static Object map2Object(Map map, Class clazz) { + if (map == null) { + return null; + } + Object obj = null; + try { + obj = clazz.newInstance(); + + Field[] fields = obj.getClass().getDeclaredFields(); + for (Field field : fields) { + int mod = field.getModifiers(); + if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) { + continue; + } + field.setAccessible(true); + field.set(obj, map.get(field.getName())); + } + } catch (Exception e) { + e.printStackTrace(); + } + return obj; + } + +} diff --git a/src/main/java/com/jwl/driver/server/util/StringUtil.java b/src/main/java/com/jwl/driver/server/util/StringUtil.java new file mode 100644 index 0000000..00e347f --- /dev/null +++ b/src/main/java/com/jwl/driver/server/util/StringUtil.java @@ -0,0 +1,226 @@ +package com.jwl.driver.server.util; + + +import cn.hutool.core.util.StrUtil; + +import java.net.URLEncoder; +import java.util.*; + +/** + * 字符串工具类 + * + */ +public class StringUtil { + + /** + * 字符串是否为空,包括blank + * @param str + * @return + */ + public static boolean isNullOrEmpty(String str){ + return null != str && 0 != str.trim().length() ? false : true; + } + + /** + * 空字符串转换为"" + * @param str + * @return + */ + public static String null2Empty(String str){ + return isNullOrEmpty(str) ? "" : str; + } + + + /** + * 检查指定的字符串是否为空。 + *
    + *
  • SysUtils.isEmpty(null) = true
  • + *
  • SysUtils.isEmpty("") = true
  • + *
  • SysUtils.isEmpty(" ") = true
  • + *
  • SysUtils.isEmpty("abc") = false
  • + *
+ * + * @param value 待检查的字符串 + * @return true/false + */ + public static boolean isEmpty(String value) { + int strLen; + if (value == null || (strLen = value.length()) == 0) { + return true; + } + for (int i = 0; i < strLen; i++) { + if ((Character.isWhitespace(value.charAt(i)) == false)) { + return false; + } + } + return true; + } + + /** + * 检查对象是否为数字型字符串,包含负数开头的。 + */ + public static boolean isNumeric(Object obj) { + if (obj == null) { + return false; + } + char[] chars = obj.toString().toCharArray(); + int length = chars.length; + if(length < 1) + return false; + + int i = 0; + if(length > 1 && chars[0] == '-') + i = 1; + + for (; i < length; i++) { + if (!Character.isDigit(chars[i])) { + return false; + } + } + return true; + } + + /** + * 检查指定的字符串列表是否不为空。 + */ + public static boolean areNotEmpty(String... values) { + boolean result = true; + if (values == null || values.length == 0) { + result = false; + } else { + for (String value : values) { + result &= !isEmpty(value); + } + } + return result; + } + + /** + * 把通用字符编码的字符串转化为汉字编码。 + */ + public static String unicodeToChinese(String unicode) { + StringBuilder out = new StringBuilder(); + if (!isEmpty(unicode)) { + for (int i = 0; i < unicode.length(); i++) { + out.append(unicode.charAt(i)); + } + } + return out.toString(); + } + + /** + * 过滤不可见字符 + */ + public static String stripNonValidXMLCharacters(String input) { + if (input == null || ("".equals(input))) + return ""; + StringBuilder out = new StringBuilder(); + char current; + for (int i = 0; i < input.length(); i++) { + current = input.charAt(i); + if ((current == 0x9) || (current == 0xA) || (current == 0xD) + || ((current >= 0x20) && (current <= 0xD7FF)) + || ((current >= 0xE000) && (current <= 0xFFFD)) + || ((current >= 0x10000) && (current <= 0x10FFFF))) + out.append(current); + } + return out.toString(); + } + + /** + * 去空处理 + * @param input + * @return + */ + public static String strTrim(String input){ + if(StringUtil.isNullOrEmpty(input)){ + return ""; + }else{ + return input.trim(); + } + } + + /** + * 方法用途: 对所有传入参数按照字段名的 ASCII 码从小到大排序(字典序),并且生成url参数串< + * @param paramsMap 要排序的Map对象 + * @param urlEncode 是否需要URLENCODE + * @param keyToLower 是否需要将Key转换为全小写 true:key转化成小写,false:不转化 + * @return + */ + public static String formatUrlMap(Map paramsMap, boolean urlEncode, boolean keyToLower) { + + String buff = ""; + Map tmpMap = paramsMap; + + try { + List> infoIds = new ArrayList>(tmpMap.entrySet()); + + //对所有传入参数按照字段名的ASCII码从小到大排序(字典序) + Collections.sort(infoIds, new Comparator>() { + public int compare(Map.Entry o1, Map.Entry o2) { + return (o1.getKey()).toString().compareTo(o2.getKey()); + } + }); + + //构造URL 键值对的格式 + StringBuffer buf = new StringBuffer(); + for (Map.Entry item : infoIds) { + if (StrUtil.isNotBlank(item.getKey())) { + String key = item.getKey(); + String value = item.getValue(); + if (urlEncode) { + value = URLEncoder.encode(value, "utf-8"); + } + if (keyToLower) { + buf.append(key.toLowerCase() + "=" + value); + } else { + buf.append(key + "=" + value); + } + buf.append("&"); + } + } + buff = buf.toString(); + + if (StrUtil.isNotEmpty(buff)) { + buff = buff.substring(0, buff.length() - 1); + } + } catch (Exception e) { + e.printStackTrace(); + return null; + } + + return buff; + } + + public static boolean equalSafe(String origin, String target) { + if (origin.length() != target.length()) { + return false; + } + + int equals = 0; + for (int i = 0; i < origin.length(); i++) { + equals |= origin.charAt(i) ^ target.charAt(i); + } + + return equals == 0; + } + + /** + * 将 String 解析为 Integer, + * 若无法转换返回 null + * @param s 数字字符串 + * @return 解析成功的 Integer 或者 null + */ + public static Integer intOrNull(String s) { + if (s == null) { + return null; + } + + try { + return Integer.parseInt(s); + } catch (NumberFormatException e) { + return null; + } + } + +} diff --git a/src/main/java/com/jwl/driver/server/util/TimeUtils.java b/src/main/java/com/jwl/driver/server/util/TimeUtils.java new file mode 100644 index 0000000..45454c6 --- /dev/null +++ b/src/main/java/com/jwl/driver/server/util/TimeUtils.java @@ -0,0 +1,61 @@ +package com.jwl.driver.server.util; + +import java.text.SimpleDateFormat; +import java.time.Duration; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.time.temporal.TemporalUnit; +import java.util.Calendar; +import java.util.Date; +import java.util.GregorianCalendar; + +public class TimeUtils { + //获取当前时间前一秒 + public static String getTime(int second) { + SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date date = new Date(); + GregorianCalendar calendar = new GregorianCalendar(); + calendar.setTime(date); + calendar.add(Calendar.SECOND, -second);//减一秒 + date = calendar.getTime(); + return df.format(date); + } + + //获取LocalDateTime + public static LocalDateTime getEndDate() { + String dateString = "2099-12-31 23:59:59"; + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + return LocalDateTime.parse(dateString, df); + } + + public static String localDateTimeToString(LocalDateTime localDateTime) { + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + return df.format(localDateTime); + } + + /** + * 计算剩余时间 单位:毫秒 + * @param startTime 开始时间 + * @param overTime 超时设置时间 + * @param timeUnit 超时设置时间单位 + * @return 剩余时间 单位:毫秒 + */ + public static long calculateRemainTime(String startTime, long overTime, TemporalUnit timeUnit) { + DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + LocalDateTime startDateTime = LocalDateTime.parse(startTime, dtf); + LocalDateTime dueDateTime = startDateTime.plus(overTime, timeUnit); + + Duration duration = Duration.between(LocalDateTime.now(), dueDateTime); + if(duration.toMillis() <= 0) { + return 0; + } + return duration.toMillis(); + } + + public static void main(String[] args) { + System.out.println(LocalDateTime.now()); + LocalDateTime dateTime = LocalDateTime.now().plusSeconds(-1); + System.out.println(dateTime); + System.out.println(localDateTimeToString(dateTime)); + } +} diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml new file mode 100644 index 0000000..013f0ab --- /dev/null +++ b/src/main/resources/application-dev.yml @@ -0,0 +1,18 @@ +spring: + # redis 配置 + redis: + host: 127.0.0.1 + port: 6379 + database: 8 + timeout: 5000 + password: caolin123 + + + # 数据库 配置 + datasource: + url: jdbc:mysql://127.0.0.1:3306/driver_test?characterEncoding=utf-8&autoReconnect=true&maxReconnects=2&useSSL=false&failOverReadOnly=false&serverTimezone=Asia/Shanghai + username: root + password: 123456 + + + diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml new file mode 100644 index 0000000..2d035b7 --- /dev/null +++ b/src/main/resources/application-prod.yml @@ -0,0 +1,14 @@ +spring: + # redis 配置 + redis: + host: 81.68.139.95 + port: 6793 + database: 8 + timeout: 5000 + password: Rtf70vILtD + + # 数据库 配置 + datasource: + url: jdbc:mysql://172.17.0.15:3165/group_dinner_beta?characterEncoding=utf-8&autoReconnect=true&maxReconnects=2&useSSL=false&failOverReadOnly=false&serverTimezone=Asia/Shanghai + username: gdbeta + password: X3h>2P(fe+x5J diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml new file mode 100644 index 0000000..2d035b7 --- /dev/null +++ b/src/main/resources/application-test.yml @@ -0,0 +1,14 @@ +spring: + # redis 配置 + redis: + host: 81.68.139.95 + port: 6793 + database: 8 + timeout: 5000 + password: Rtf70vILtD + + # 数据库 配置 + datasource: + url: jdbc:mysql://172.17.0.15:3165/group_dinner_beta?characterEncoding=utf-8&autoReconnect=true&maxReconnects=2&useSSL=false&failOverReadOnly=false&serverTimezone=Asia/Shanghai + username: gdbeta + password: X3h>2P(fe+x5J diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000..8810fb9 --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,31 @@ +server: + port: 8888 + servlet: + context-path: '/driver-api' + +spring: + application: + name: '@artifactId@' + profiles: + active: dev +#mybatis +mybatis-plus: + mapper-locations: classpath*:/mapper/**Mapper.xml + typeAliasesPackage: com.jwl.driver.server.entity + global-config: + column-underline: false + configuration: + map-underscore-to-camel-case: true + cache-enabled: false + +# 分页配置 +pagehelper: + helper-dialect: mysql + reasonable: true + support-methods-arguments: true + params: count=countSql + +# Knife4j配置 +knife4j: + # 是否开启增强模式 + enable: true diff --git a/src/main/resources/mapper/OrderPayInfoMapper.xml b/src/main/resources/mapper/OrderPayInfoMapper.xml new file mode 100644 index 0000000..de03581 --- /dev/null +++ b/src/main/resources/mapper/OrderPayInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/PayNoticeLogMapper.xml b/src/main/resources/mapper/PayNoticeLogMapper.xml new file mode 100644 index 0000000..cd1ca4b --- /dev/null +++ b/src/main/resources/mapper/PayNoticeLogMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/PayPrepayMapper.xml b/src/main/resources/mapper/PayPrepayMapper.xml new file mode 100644 index 0000000..e6ea55c --- /dev/null +++ b/src/main/resources/mapper/PayPrepayMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/PayPrepayResultMapper.xml b/src/main/resources/mapper/PayPrepayResultMapper.xml new file mode 100644 index 0000000..f4dd656 --- /dev/null +++ b/src/main/resources/mapper/PayPrepayResultMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/PayRefundMapper.xml b/src/main/resources/mapper/PayRefundMapper.xml new file mode 100644 index 0000000..6c2155f --- /dev/null +++ b/src/main/resources/mapper/PayRefundMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/PayRefundResultMapper.xml b/src/main/resources/mapper/PayRefundResultMapper.xml new file mode 100644 index 0000000..f85e3f1 --- /dev/null +++ b/src/main/resources/mapper/PayRefundResultMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdCarMapper.xml b/src/main/resources/mapper/TdCarMapper.xml new file mode 100644 index 0000000..01a6fdf --- /dev/null +++ b/src/main/resources/mapper/TdCarMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdCategoryQuestionMapper.xml b/src/main/resources/mapper/TdCategoryQuestionMapper.xml new file mode 100644 index 0000000..a096238 --- /dev/null +++ b/src/main/resources/mapper/TdCategoryQuestionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdExaminationRoomMapper.xml b/src/main/resources/mapper/TdExaminationRoomMapper.xml new file mode 100644 index 0000000..f133a68 --- /dev/null +++ b/src/main/resources/mapper/TdExaminationRoomMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdExaminationRoomRoadMapper.xml b/src/main/resources/mapper/TdExaminationRoomRoadMapper.xml new file mode 100644 index 0000000..7943bab --- /dev/null +++ b/src/main/resources/mapper/TdExaminationRoomRoadMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdMemberMapper.xml b/src/main/resources/mapper/TdMemberMapper.xml new file mode 100644 index 0000000..2d1f014 --- /dev/null +++ b/src/main/resources/mapper/TdMemberMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdModuleQuestionMapper.xml b/src/main/resources/mapper/TdModuleQuestionMapper.xml new file mode 100644 index 0000000..7d79bcb --- /dev/null +++ b/src/main/resources/mapper/TdModuleQuestionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdPointQuestionMapper.xml b/src/main/resources/mapper/TdPointQuestionMapper.xml new file mode 100644 index 0000000..34a736f --- /dev/null +++ b/src/main/resources/mapper/TdPointQuestionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdQuestionMapper.xml b/src/main/resources/mapper/TdQuestionMapper.xml new file mode 100644 index 0000000..52899e1 --- /dev/null +++ b/src/main/resources/mapper/TdQuestionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdQuestionTestMapper.xml b/src/main/resources/mapper/TdQuestionTestMapper.xml new file mode 100644 index 0000000..9bdd9c7 --- /dev/null +++ b/src/main/resources/mapper/TdQuestionTestMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdSysConfigListMapper.xml b/src/main/resources/mapper/TdSysConfigListMapper.xml new file mode 100644 index 0000000..64b57eb --- /dev/null +++ b/src/main/resources/mapper/TdSysConfigListMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdSysConfigMapper.xml b/src/main/resources/mapper/TdSysConfigMapper.xml new file mode 100644 index 0000000..efb46d3 --- /dev/null +++ b/src/main/resources/mapper/TdSysConfigMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdSysUserMapper.xml b/src/main/resources/mapper/TdSysUserMapper.xml new file mode 100644 index 0000000..d65a26a --- /dev/null +++ b/src/main/resources/mapper/TdSysUserMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdSysUserMemberMapper.xml b/src/main/resources/mapper/TdSysUserMemberMapper.xml new file mode 100644 index 0000000..bce834f --- /dev/null +++ b/src/main/resources/mapper/TdSysUserMemberMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdTestProjectMapper.xml b/src/main/resources/mapper/TdTestProjectMapper.xml new file mode 100644 index 0000000..eae8484 --- /dev/null +++ b/src/main/resources/mapper/TdTestProjectMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdTestProjectVideosMapper.xml b/src/main/resources/mapper/TdTestProjectVideosMapper.xml new file mode 100644 index 0000000..9459807 --- /dev/null +++ b/src/main/resources/mapper/TdTestProjectVideosMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdTrafficSignCategoryMapper.xml b/src/main/resources/mapper/TdTrafficSignCategoryMapper.xml new file mode 100644 index 0000000..4d4b1a0 --- /dev/null +++ b/src/main/resources/mapper/TdTrafficSignCategoryMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/TdTrafficSignQuestionMapper.xml b/src/main/resources/mapper/TdTrafficSignQuestionMapper.xml new file mode 100644 index 0000000..6398767 --- /dev/null +++ b/src/main/resources/mapper/TdTrafficSignQuestionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/test/java/com/jwl/driver/server/DriverServerApplicationTests.java b/src/test/java/com/jwl/driver/server/DriverServerApplicationTests.java new file mode 100644 index 0000000..9a332f0 --- /dev/null +++ b/src/test/java/com/jwl/driver/server/DriverServerApplicationTests.java @@ -0,0 +1,13 @@ +package com.jwl.driver.server; + +import org.junit.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class DriverServerApplicationTests { + + @Test + void contextLoads() { + } + +}