Commit 5e25decca83087210d1e20fcccec7144d3cf1e3d

Authored by 陶汉栋
1 parent f79b70be
Exists in master and in 1 other branch cloud_copy

no message

Showing 28 changed files with 0 additions and 3401 deletions   Show diff stats
cloud/weigeng/.gitignore
@@ -1,31 +0,0 @@ @@ -1,31 +0,0 @@
1 -HELP.md  
2 -target/  
3 -!.mvn/wrapper/maven-wrapper.jar  
4 -!**/src/main/**  
5 -!**/src/test/**  
6 -  
7 -### STS ###  
8 -.apt_generated  
9 -.classpath  
10 -.factorypath  
11 -.project  
12 -.settings  
13 -.springBeans  
14 -.sts4-cache  
15 -  
16 -### IntelliJ IDEA ###  
17 -.idea  
18 -*.iws  
19 -*.iml  
20 -*.ipr  
21 -  
22 -### NetBeans ###  
23 -/nbproject/private/  
24 -/nbbuild/  
25 -/dist/  
26 -/nbdist/  
27 -/.nb-gradle/  
28 -build/  
29 -  
30 -### VS Code ###  
31 -.vscode/  
cloud/weigeng/.mvn/wrapper/MavenWrapperDownloader.java
@@ -1,114 +0,0 @@ @@ -1,114 +0,0 @@
1 -/*  
2 -Licensed to the Apache Software Foundation (ASF) under one  
3 -or more contributor license agreements. See the NOTICE file  
4 -distributed with this work for additional information  
5 -regarding copyright ownership. The ASF licenses this file  
6 -to you under the Apache License, Version 2.0 (the  
7 -"License"); you may not use this file except in compliance  
8 -with the License. You may obtain a copy of the License at  
9 -  
10 - https://www.apache.org/licenses/LICENSE-2.0  
11 -  
12 -Unless required by applicable law or agreed to in writing,  
13 -software distributed under the License is distributed on an  
14 -"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY  
15 -KIND, either express or implied. See the License for the  
16 -specific language governing permissions and limitations  
17 -under the License.  
18 -*/  
19 -  
20 -import java.io.File;  
21 -import java.io.FileInputStream;  
22 -import java.io.FileOutputStream;  
23 -import java.io.IOException;  
24 -import java.net.URL;  
25 -import java.nio.channels.Channels;  
26 -import java.nio.channels.ReadableByteChannel;  
27 -import java.util.Properties;  
28 -  
29 -public class MavenWrapperDownloader {  
30 -  
31 - /**  
32 - * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.  
33 - */  
34 - private static final String DEFAULT_DOWNLOAD_URL =  
35 - "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar";  
36 -  
37 - /**  
38 - * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to  
39 - * use instead of the default one.  
40 - */  
41 - private static final String MAVEN_WRAPPER_PROPERTIES_PATH =  
42 - ".mvn/wrapper/maven-wrapper.properties";  
43 -  
44 - /**  
45 - * Path where the maven-wrapper.jar will be saved to.  
46 - */  
47 - private static final String MAVEN_WRAPPER_JAR_PATH =  
48 - ".mvn/wrapper/maven-wrapper.jar";  
49 -  
50 - /**  
51 - * Name of the property which should be used to override the default download url for the wrapper.  
52 - */  
53 - private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";  
54 -  
55 - public static void main(String args[]) {  
56 - System.out.println("- Downloader started");  
57 - File baseDirectory = new File(args[0]);  
58 - System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());  
59 -  
60 - // If the maven-wrapper.properties exists, read it and check if it contains a custom  
61 - // wrapperUrl parameter.  
62 - File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);  
63 - String url = DEFAULT_DOWNLOAD_URL;  
64 - if (mavenWrapperPropertyFile.exists()) {  
65 - FileInputStream mavenWrapperPropertyFileInputStream = null;  
66 - try {  
67 - mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);  
68 - Properties mavenWrapperProperties = new Properties();  
69 - mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);  
70 - url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);  
71 - } catch (IOException e) {  
72 - System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");  
73 - } finally {  
74 - try {  
75 - if (mavenWrapperPropertyFileInputStream != null) {  
76 - mavenWrapperPropertyFileInputStream.close();  
77 - }  
78 - } catch (IOException e) {  
79 - // Ignore ...  
80 - }  
81 - }  
82 - }  
83 - System.out.println("- Downloading from: : " + url);  
84 -  
85 - File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);  
86 - if (!outputFile.getParentFile().exists()) {  
87 - if (!outputFile.getParentFile().mkdirs()) {  
88 - System.out.println(  
89 - "- ERROR creating output direcrory '" + outputFile.getParentFile().getAbsolutePath() + "'");  
90 - }  
91 - }  
92 - System.out.println("- Downloading to: " + outputFile.getAbsolutePath());  
93 - try {  
94 - downloadFileFromURL(url, outputFile);  
95 - System.out.println("Done");  
96 - System.exit(0);  
97 - } catch (Throwable e) {  
98 - System.out.println("- Error downloading");  
99 - e.printStackTrace();  
100 - System.exit(1);  
101 - }  
102 - }  
103 -  
104 - private static void downloadFileFromURL(String urlString, File destination) throws Exception {  
105 - URL website = new URL(urlString);  
106 - ReadableByteChannel rbc;  
107 - rbc = Channels.newChannel(website.openStream());  
108 - FileOutputStream fos = new FileOutputStream(destination);  
109 - fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);  
110 - fos.close();  
111 - rbc.close();  
112 - }  
113 -  
114 -}  
cloud/weigeng/.mvn/wrapper/maven-wrapper.jar
No preview for this file type
cloud/weigeng/.mvn/wrapper/maven-wrapper.properties
@@ -1 +0,0 @@ @@ -1 +0,0 @@
1 -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.0/apache-maven-3.6.0-bin.zip  
cloud/weigeng/libs/sqljdbc4-4.2-6.jar
No preview for this file type
cloud/weigeng/mvnw
@@ -1,286 +0,0 @@ @@ -1,286 +0,0 @@
1 -#!/bin/sh  
2 -# ----------------------------------------------------------------------------  
3 -# Licensed to the Apache Software Foundation (ASF) under one  
4 -# or more contributor license agreements. See the NOTICE file  
5 -# distributed with this work for additional information  
6 -# regarding copyright ownership. The ASF licenses this file  
7 -# to you under the Apache License, Version 2.0 (the  
8 -# "License"); you may not use this file except in compliance  
9 -# with the License. You may obtain a copy of the License at  
10 -#  
11 -# https://www.apache.org/licenses/LICENSE-2.0  
12 -#  
13 -# Unless required by applicable law or agreed to in writing,  
14 -# software distributed under the License is distributed on an  
15 -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY  
16 -# KIND, either express or implied. See the License for the  
17 -# specific language governing permissions and limitations  
18 -# under the License.  
19 -# ----------------------------------------------------------------------------  
20 -  
21 -# ----------------------------------------------------------------------------  
22 -# Maven2 Start Up Batch script  
23 -#  
24 -# Required ENV vars:  
25 -# ------------------  
26 -# JAVA_HOME - location of a JDK home dir  
27 -#  
28 -# Optional ENV vars  
29 -# -----------------  
30 -# M2_HOME - location of maven2's installed home dir  
31 -# MAVEN_OPTS - parameters passed to the Java VM when running Maven  
32 -# e.g. to debug Maven itself, use  
33 -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000  
34 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files  
35 -# ----------------------------------------------------------------------------  
36 -  
37 -if [ -z "$MAVEN_SKIP_RC" ] ; then  
38 -  
39 - if [ -f /etc/mavenrc ] ; then  
40 - . /etc/mavenrc  
41 - fi  
42 -  
43 - if [ -f "$HOME/.mavenrc" ] ; then  
44 - . "$HOME/.mavenrc"  
45 - fi  
46 -  
47 -fi  
48 -  
49 -# OS specific support. $var _must_ be set to either true or false.  
50 -cygwin=false;  
51 -darwin=false;  
52 -mingw=false  
53 -case "`uname`" in  
54 - CYGWIN*) cygwin=true ;;  
55 - MINGW*) mingw=true;;  
56 - Darwin*) darwin=true  
57 - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home  
58 - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html  
59 - if [ -z "$JAVA_HOME" ]; then  
60 - if [ -x "/usr/libexec/java_home" ]; then  
61 - export JAVA_HOME="`/usr/libexec/java_home`"  
62 - else  
63 - export JAVA_HOME="/Library/Java/Home"  
64 - fi  
65 - fi  
66 - ;;  
67 -esac  
68 -  
69 -if [ -z "$JAVA_HOME" ] ; then  
70 - if [ -r /etc/gentoo-release ] ; then  
71 - JAVA_HOME=`java-config --jre-home`  
72 - fi  
73 -fi  
74 -  
75 -if [ -z "$M2_HOME" ] ; then  
76 - ## resolve links - $0 may be a link to maven's home  
77 - PRG="$0"  
78 -  
79 - # need this for relative symlinks  
80 - while [ -h "$PRG" ] ; do  
81 - ls=`ls -ld "$PRG"`  
82 - link=`expr "$ls" : '.*-> \(.*\)$'`  
83 - if expr "$link" : '/.*' > /dev/null; then  
84 - PRG="$link"  
85 - else  
86 - PRG="`dirname "$PRG"`/$link"  
87 - fi  
88 - done  
89 -  
90 - saveddir=`pwd`  
91 -  
92 - M2_HOME=`dirname "$PRG"`/..  
93 -  
94 - # make it fully qualified  
95 - M2_HOME=`cd "$M2_HOME" && pwd`  
96 -  
97 - cd "$saveddir"  
98 - # echo Using m2 at $M2_HOME  
99 -fi  
100 -  
101 -# For Cygwin, ensure paths are in UNIX format before anything is touched  
102 -if $cygwin ; then  
103 - [ -n "$M2_HOME" ] &&  
104 - M2_HOME=`cygpath --unix "$M2_HOME"`  
105 - [ -n "$JAVA_HOME" ] &&  
106 - JAVA_HOME=`cygpath --unix "$JAVA_HOME"`  
107 - [ -n "$CLASSPATH" ] &&  
108 - CLASSPATH=`cygpath --path --unix "$CLASSPATH"`  
109 -fi  
110 -  
111 -# For Mingw, ensure paths are in UNIX format before anything is touched  
112 -if $mingw ; then  
113 - [ -n "$M2_HOME" ] &&  
114 - M2_HOME="`(cd "$M2_HOME"; pwd)`"  
115 - [ -n "$JAVA_HOME" ] &&  
116 - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"  
117 - # TODO classpath?  
118 -fi  
119 -  
120 -if [ -z "$JAVA_HOME" ]; then  
121 - javaExecutable="`which javac`"  
122 - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then  
123 - # readlink(1) is not available as standard on Solaris 10.  
124 - readLink=`which readlink`  
125 - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then  
126 - if $darwin ; then  
127 - javaHome="`dirname \"$javaExecutable\"`"  
128 - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"  
129 - else  
130 - javaExecutable="`readlink -f \"$javaExecutable\"`"  
131 - fi  
132 - javaHome="`dirname \"$javaExecutable\"`"  
133 - javaHome=`expr "$javaHome" : '\(.*\)/bin'`  
134 - JAVA_HOME="$javaHome"  
135 - export JAVA_HOME  
136 - fi  
137 - fi  
138 -fi  
139 -  
140 -if [ -z "$JAVACMD" ] ; then  
141 - if [ -n "$JAVA_HOME" ] ; then  
142 - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then  
143 - # IBM's JDK on AIX uses strange locations for the executables  
144 - JAVACMD="$JAVA_HOME/jre/sh/java"  
145 - else  
146 - JAVACMD="$JAVA_HOME/bin/java"  
147 - fi  
148 - else  
149 - JAVACMD="`which java`"  
150 - fi  
151 -fi  
152 -  
153 -if [ ! -x "$JAVACMD" ] ; then  
154 - echo "Error: JAVA_HOME is not defined correctly." >&2  
155 - echo " We cannot execute $JAVACMD" >&2  
156 - exit 1  
157 -fi  
158 -  
159 -if [ -z "$JAVA_HOME" ] ; then  
160 - echo "Warning: JAVA_HOME environment variable is not set."  
161 -fi  
162 -  
163 -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher  
164 -  
165 -# traverses directory structure from process work directory to filesystem root  
166 -# first directory with .mvn subdirectory is considered project base directory  
167 -find_maven_basedir() {  
168 -  
169 - if [ -z "$1" ]  
170 - then  
171 - echo "Path not specified to find_maven_basedir"  
172 - return 1  
173 - fi  
174 -  
175 - basedir="$1"  
176 - wdir="$1"  
177 - while [ "$wdir" != '/' ] ; do  
178 - if [ -d "$wdir"/.mvn ] ; then  
179 - basedir=$wdir  
180 - break  
181 - fi  
182 - # workaround for JBEAP-8937 (on Solaris 10/Sparc)  
183 - if [ -d "${wdir}" ]; then  
184 - wdir=`cd "$wdir/.."; pwd`  
185 - fi  
186 - # end of workaround  
187 - done  
188 - echo "${basedir}"  
189 -}  
190 -  
191 -# concatenates all lines of a file  
192 -concat_lines() {  
193 - if [ -f "$1" ]; then  
194 - echo "$(tr -s '\n' ' ' < "$1")"  
195 - fi  
196 -}  
197 -  
198 -BASE_DIR=`find_maven_basedir "$(pwd)"`  
199 -if [ -z "$BASE_DIR" ]; then  
200 - exit 1;  
201 -fi  
202 -  
203 -##########################################################################################  
204 -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central  
205 -# This allows using the maven wrapper in projects that prohibit checking in binary data.  
206 -##########################################################################################  
207 -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then  
208 - if [ "$MVNW_VERBOSE" = true ]; then  
209 - echo "Found .mvn/wrapper/maven-wrapper.jar"  
210 - fi  
211 -else  
212 - if [ "$MVNW_VERBOSE" = true ]; then  
213 - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."  
214 - fi  
215 - jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar"  
216 - while IFS="=" read key value; do  
217 - case "$key" in (wrapperUrl) jarUrl="$value"; break ;;  
218 - esac  
219 - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"  
220 - if [ "$MVNW_VERBOSE" = true ]; then  
221 - echo "Downloading from: $jarUrl"  
222 - fi  
223 - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"  
224 -  
225 - if command -v wget > /dev/null; then  
226 - if [ "$MVNW_VERBOSE" = true ]; then  
227 - echo "Found wget ... using wget"  
228 - fi  
229 - wget "$jarUrl" -O "$wrapperJarPath"  
230 - elif command -v curl > /dev/null; then  
231 - if [ "$MVNW_VERBOSE" = true ]; then  
232 - echo "Found curl ... using curl"  
233 - fi  
234 - curl -o "$wrapperJarPath" "$jarUrl"  
235 - else  
236 - if [ "$MVNW_VERBOSE" = true ]; then  
237 - echo "Falling back to using Java to download"  
238 - fi  
239 - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"  
240 - if [ -e "$javaClass" ]; then  
241 - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then  
242 - if [ "$MVNW_VERBOSE" = true ]; then  
243 - echo " - Compiling MavenWrapperDownloader.java ..."  
244 - fi  
245 - # Compiling the Java class  
246 - ("$JAVA_HOME/bin/javac" "$javaClass")  
247 - fi  
248 - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then  
249 - # Running the downloader  
250 - if [ "$MVNW_VERBOSE" = true ]; then  
251 - echo " - Running MavenWrapperDownloader.java ..."  
252 - fi  
253 - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")  
254 - fi  
255 - fi  
256 - fi  
257 -fi  
258 -##########################################################################################  
259 -# End of extension  
260 -##########################################################################################  
261 -  
262 -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}  
263 -if [ "$MVNW_VERBOSE" = true ]; then  
264 - echo $MAVEN_PROJECTBASEDIR  
265 -fi  
266 -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"  
267 -  
268 -# For Cygwin, switch paths to Windows format before running java  
269 -if $cygwin; then  
270 - [ -n "$M2_HOME" ] &&  
271 - M2_HOME=`cygpath --path --windows "$M2_HOME"`  
272 - [ -n "$JAVA_HOME" ] &&  
273 - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`  
274 - [ -n "$CLASSPATH" ] &&  
275 - CLASSPATH=`cygpath --path --windows "$CLASSPATH"`  
276 - [ -n "$MAVEN_PROJECTBASEDIR" ] &&  
277 - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`  
278 -fi  
279 -  
280 -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain  
281 -  
282 -exec "$JAVACMD" \  
283 - $MAVEN_OPTS \  
284 - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \  
285 - "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \  
286 - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"  
cloud/weigeng/mvnw.cmd
@@ -1,161 +0,0 @@ @@ -1,161 +0,0 @@
1 -@REM ----------------------------------------------------------------------------  
2 -@REM Licensed to the Apache Software Foundation (ASF) under one  
3 -@REM or more contributor license agreements. See the NOTICE file  
4 -@REM distributed with this work for additional information  
5 -@REM regarding copyright ownership. The ASF licenses this file  
6 -@REM to you under the Apache License, Version 2.0 (the  
7 -@REM "License"); you may not use this file except in compliance  
8 -@REM with the License. You may obtain a copy of the License at  
9 -@REM  
10 -@REM https://www.apache.org/licenses/LICENSE-2.0  
11 -@REM  
12 -@REM Unless required by applicable law or agreed to in writing,  
13 -@REM software distributed under the License is distributed on an  
14 -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY  
15 -@REM KIND, either express or implied. See the License for the  
16 -@REM specific language governing permissions and limitations  
17 -@REM under the License.  
18 -@REM ----------------------------------------------------------------------------  
19 -  
20 -@REM ----------------------------------------------------------------------------  
21 -@REM Maven2 Start Up Batch script  
22 -@REM  
23 -@REM Required ENV vars:  
24 -@REM JAVA_HOME - location of a JDK home dir  
25 -@REM  
26 -@REM Optional ENV vars  
27 -@REM M2_HOME - location of maven2's installed home dir  
28 -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands  
29 -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending  
30 -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven  
31 -@REM e.g. to debug Maven itself, use  
32 -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000  
33 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files  
34 -@REM ----------------------------------------------------------------------------  
35 -  
36 -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'  
37 -@echo off  
38 -@REM set title of command window  
39 -title %0  
40 -@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'  
41 -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%  
42 -  
43 -@REM set %HOME% to equivalent of $HOME  
44 -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")  
45 -  
46 -@REM Execute a user defined script before this one  
47 -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre  
48 -@REM check for pre script, once with legacy .bat ending and once with .cmd ending  
49 -if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"  
50 -if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"  
51 -:skipRcPre  
52 -  
53 -@setlocal  
54 -  
55 -set ERROR_CODE=0  
56 -  
57 -@REM To isolate internal variables from possible post scripts, we use another setlocal  
58 -@setlocal  
59 -  
60 -@REM ==== START VALIDATION ====  
61 -if not "%JAVA_HOME%" == "" goto OkJHome  
62 -  
63 -echo.  
64 -echo Error: JAVA_HOME not found in your environment. >&2  
65 -echo Please set the JAVA_HOME variable in your environment to match the >&2  
66 -echo location of your Java installation. >&2  
67 -echo.  
68 -goto error  
69 -  
70 -:OkJHome  
71 -if exist "%JAVA_HOME%\bin\java.exe" goto init  
72 -  
73 -echo.  
74 -echo Error: JAVA_HOME is set to an invalid directory. >&2  
75 -echo JAVA_HOME = "%JAVA_HOME%" >&2  
76 -echo Please set the JAVA_HOME variable in your environment to match the >&2  
77 -echo location of your Java installation. >&2  
78 -echo.  
79 -goto error  
80 -  
81 -@REM ==== END VALIDATION ====  
82 -  
83 -:init  
84 -  
85 -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".  
86 -@REM Fallback to current working directory if not found.  
87 -  
88 -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%  
89 -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir  
90 -  
91 -set EXEC_DIR=%CD%  
92 -set WDIR=%EXEC_DIR%  
93 -:findBaseDir  
94 -IF EXIST "%WDIR%"\.mvn goto baseDirFound  
95 -cd ..  
96 -IF "%WDIR%"=="%CD%" goto baseDirNotFound  
97 -set WDIR=%CD%  
98 -goto findBaseDir  
99 -  
100 -:baseDirFound  
101 -set MAVEN_PROJECTBASEDIR=%WDIR%  
102 -cd "%EXEC_DIR%"  
103 -goto endDetectBaseDir  
104 -  
105 -:baseDirNotFound  
106 -set MAVEN_PROJECTBASEDIR=%EXEC_DIR%  
107 -cd "%EXEC_DIR%"  
108 -  
109 -:endDetectBaseDir  
110 -  
111 -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig  
112 -  
113 -@setlocal EnableExtensions EnableDelayedExpansion  
114 -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a  
115 -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%  
116 -  
117 -:endReadAdditionalConfig  
118 -  
119 -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"  
120 -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"  
121 -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain  
122 -  
123 -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar"  
124 -FOR /F "tokens=1,2 delims==" %%A IN (%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties) DO (  
125 - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B  
126 -)  
127 -  
128 -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central  
129 -@REM This allows using the maven wrapper in projects that prohibit checking in binary data.  
130 -if exist %WRAPPER_JAR% (  
131 - echo Found %WRAPPER_JAR%  
132 -) else (  
133 - echo Couldn't find %WRAPPER_JAR%, downloading it ...  
134 - echo Downloading from: %DOWNLOAD_URL%  
135 - powershell -Command "(New-Object Net.WebClient).DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"  
136 - echo Finished downloading %WRAPPER_JAR%  
137 -)  
138 -@REM End of extension  
139 -  
140 -%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*  
141 -if ERRORLEVEL 1 goto error  
142 -goto end  
143 -  
144 -:error  
145 -set ERROR_CODE=1  
146 -  
147 -:end  
148 -@endlocal & set ERROR_CODE=%ERROR_CODE%  
149 -  
150 -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost  
151 -@REM check for post script, once with legacy .bat ending and once with .cmd ending  
152 -if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"  
153 -if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"  
154 -:skipRcPost  
155 -  
156 -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'  
157 -if "%MAVEN_BATCH_PAUSE%" == "on" pause  
158 -  
159 -if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%  
160 -  
161 -exit /B %ERROR_CODE%  
cloud/weigeng/pom.xml
@@ -1,97 +0,0 @@ @@ -1,97 +0,0 @@
1 -<?xml version="1.0" encoding="UTF-8"?>  
2 -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
3 - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">  
4 - <modelVersion>4.0.0</modelVersion>  
5 - <parent>  
6 - <groupId>org.springframework.boot</groupId>  
7 - <artifactId>spring-boot-starter-parent</artifactId>  
8 - <version>2.1.8.RELEASE</version>  
9 - <relativePath/> <!-- lookup parent from repository -->  
10 - </parent>  
11 - <groupId>com.sincere</groupId>  
12 - <artifactId>weigeng</artifactId>  
13 - <version>0.0.1</version>  
14 - <name>weigeng</name>  
15 - <description>Demo project for Spring Boot</description>  
16 -  
17 - <properties>  
18 - <java.version>1.8</java.version>  
19 - <spring-cloud.version>Greenwich.SR2</spring-cloud.version>  
20 - </properties>  
21 -  
22 - <dependencies>  
23 - <dependency>  
24 - <groupId>org.springframework.boot</groupId>  
25 - <artifactId>spring-boot-starter-web</artifactId>  
26 - </dependency>  
27 -  
28 - <dependency>  
29 - <groupId>org.springframework.cloud</groupId>  
30 - <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>  
31 - </dependency>  
32 -  
33 - <dependency>  
34 - <groupId>com.baidu.aip</groupId>  
35 - <artifactId>java-sdk</artifactId>  
36 - <version>4.10.0</version>  
37 - </dependency>  
38 -  
39 - <dependency>  
40 - <groupId>com.microsoft.sqlserver.jdbc</groupId>  
41 - <artifactId>sqljdbc</artifactId>  
42 - <scope>system</scope>  
43 - <version>1</version>  
44 - <systemPath>${project.basedir}/libs/sqljdbc4-4.2-6.jar</systemPath>  
45 - </dependency>  
46 -  
47 - <dependency>  
48 - <groupId>org.mybatis.spring.boot</groupId>  
49 - <artifactId>mybatis-spring-boot-starter</artifactId>  
50 - <version>2.0.1</version>  
51 - </dependency>  
52 -  
53 - <dependency>  
54 - <groupId>com.drewnoakes</groupId>  
55 - <artifactId>metadata-extractor</artifactId>  
56 - <version>2.4.0-beta-1</version>  
57 - </dependency>  
58 -  
59 - <dependency>  
60 - <groupId>org.apache.poi</groupId>  
61 - <artifactId>poi</artifactId>  
62 - <version>4.1.0</version>  
63 - </dependency>  
64 -  
65 - <dependency>  
66 - <groupId>org.springframework.boot</groupId>  
67 - <artifactId>spring-boot-starter-test</artifactId>  
68 - <scope>test</scope>  
69 - </dependency>  
70 - </dependencies>  
71 -  
72 - <dependencyManagement>  
73 - <dependencies>  
74 - <dependency>  
75 - <groupId>org.springframework.cloud</groupId>  
76 - <artifactId>spring-cloud-dependencies</artifactId>  
77 - <version>${spring-cloud.version}</version>  
78 - <type>pom</type>  
79 - <scope>import</scope>  
80 - </dependency>  
81 - </dependencies>  
82 - </dependencyManagement>  
83 -  
84 - <build>  
85 - <plugins>  
86 - <plugin>  
87 - <groupId>org.springframework.boot</groupId>  
88 - <artifactId>spring-boot-maven-plugin</artifactId>  
89 - <configuration>  
90 - <includeSystemScope>true</includeSystemScope>  
91 - </configuration>  
92 - </plugin>  
93 -  
94 - </plugins>  
95 - </build>  
96 -  
97 -</project>  
cloud/weigeng/src/main/java/com/sincere/weigeng/AuthService.java
@@ -1,86 +0,0 @@ @@ -1,86 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import org.json.JSONObject;  
4 -  
5 -import java.io.BufferedReader;  
6 -import java.io.InputStreamReader;  
7 -import java.net.HttpURLConnection;  
8 -import java.net.URL;  
9 -import java.util.List;  
10 -import java.util.Map;  
11 -  
12 -/**  
13 - * 获取token类  
14 - */  
15 -public class AuthService {  
16 - //设置APPID/AK/SK  
17 - public static final String APP_ID = "15990462";  
18 - public static final String API_KEY = "t70Rzr6SGmfU9S6MrqAkspsY";  
19 - public static final String SECRET_KEY = "nSqpqtrf7cCjo8vOB9knL85nwWNoxwvS ";  
20 - /**  
21 - * 获取权限token  
22 - * @return 返回示例:  
23 - * {  
24 - * "access_token": "24.460da4889caad24cccdb1fea17221975.2592000.1491995545.282335-1234567",  
25 - * "expires_in": 2592000  
26 - * }  
27 - */  
28 - public static String getAuth() {  
29 - // 官网获取的 API Key 更新为你注册的  
30 - String clientId = "t70Rzr6SGmfU9S6MrqAkspsY";  
31 - // 官网获取的 Secret Key 更新为你注册的  
32 - String clientSecret = "nSqpqtrf7cCjo8vOB9knL85nwWNoxwvS";  
33 - return getAuth(clientId, clientSecret);  
34 - }  
35 -  
36 - /**  
37 - * 获取API访问token  
38 - * 该token有一定的有效期,需要自行管理,当失效时需重新获取.  
39 - * @param ak - 百度云官网获取的 API Key  
40 - * @param sk - 百度云官网获取的 Securet Key  
41 - * @return assess_token 示例:  
42 - * "24.460da4889caad24cccdb1fea17221975.2592000.1491995545.282335-1234567"  
43 - */  
44 - public static String getAuth(String ak, String sk) {  
45 - // 获取token地址  
46 - String authHost = "https://aip.baidubce.com/oauth/2.0/token?";  
47 - String getAccessTokenUrl = authHost  
48 - // 1. grant_type为固定参数  
49 - + "grant_type=client_credentials"  
50 - // 2. 官网获取的 API Key  
51 - + "&client_id=" + ak  
52 - // 3. 官网获取的 Secret Key  
53 - + "&client_secret=" + sk;  
54 - try {  
55 - URL realUrl = new URL(getAccessTokenUrl);  
56 - // 打开和URL之间的连接  
57 - HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection();  
58 - connection.setRequestMethod("GET");  
59 - connection.connect();  
60 - // 获取所有响应头字段  
61 - Map<String, List<String>> map = connection.getHeaderFields();  
62 - // 遍历所有的响应头字段  
63 - for (String key : map.keySet()) {  
64 - System.err.println(key + "--->" + map.get(key));  
65 - }  
66 - // 定义 BufferedReader输入流来读取URL的响应  
67 - BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));  
68 - String result = "";  
69 - String line;  
70 - while ((line = in.readLine()) != null) {  
71 - result += line;  
72 - }  
73 - /**  
74 - * 返回结果示例  
75 - */  
76 - System.err.println("result:" + result);  
77 - JSONObject jsonObject = new JSONObject(result);  
78 - String access_token = jsonObject.getString("access_token");  
79 - return access_token;  
80 - } catch (Exception e) {  
81 - System.err.printf("获取token失败!");  
82 - e.printStackTrace(System.err);  
83 - }  
84 - return null;  
85 - }  
86 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/HomeBean.java
@@ -1,33 +0,0 @@ @@ -1,33 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -public class HomeBean {  
4 -  
5 - private String CreatorUserId;  
6 -  
7 - private String Title;  
8 -  
9 -  
10 - public String getCreatorUserId() {  
11 - return CreatorUserId;  
12 - }  
13 -  
14 - public void setCreatorUserId(String creatorUserId) {  
15 - CreatorUserId = creatorUserId;  
16 - }  
17 -  
18 - public String getTitle() {  
19 - return Title;  
20 - }  
21 -  
22 - public void setTitle(String title) {  
23 - Title = title;  
24 - }  
25 -  
26 - @Override  
27 - public String toString() {  
28 - return "HomeBean{" +  
29 - "CreatorUserId='" + CreatorUserId + '\'' +  
30 - ", Title='" + Title + '\'' +  
31 - '}';  
32 - }  
33 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/Homework.java
@@ -1,189 +0,0 @@ @@ -1,189 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class Homework implements Serializable {  
6 -  
7 - private String ID;  
8 -  
9 - private String CreatorUserId;  
10 -  
11 - private String PaperId;  
12 -  
13 - private String Title;  
14 -  
15 - private int SuggestionTime;  
16 -  
17 - private String Deadline;  
18 -  
19 - private int State;  
20 -  
21 - private String Intime;  
22 -  
23 - private int SubjectId;  
24 -  
25 - private int PublishAnswerType;  
26 -  
27 - private int IsPigai;  
28 -  
29 - private String StartTime;  
30 -  
31 - private int TypeId;  
32 -  
33 - private String QuestionIds;  
34 -  
35 - private int HomeworkType;  
36 -  
37 - private int PkgId;  
38 -  
39 - public String getCreatorUserId() {  
40 - return CreatorUserId;  
41 - }  
42 -  
43 - public void setCreatorUserId(String creatorUserId) {  
44 - CreatorUserId = creatorUserId;  
45 - }  
46 -  
47 - public String getPaperId() {  
48 - return PaperId;  
49 - }  
50 -  
51 - public String getID() {  
52 - return ID;  
53 - }  
54 -  
55 - public void setID(String ID) {  
56 - this.ID = ID;  
57 - }  
58 -  
59 - @Override  
60 - public String toString() {  
61 - return "Homework{" +  
62 - "ID='" + ID + '\'' +  
63 - ", CreatorUserId='" + CreatorUserId + '\'' +  
64 - ", PaperId='" + PaperId + '\'' +  
65 - ", Title='" + Title + '\'' +  
66 - ", SuggestionTime=" + SuggestionTime +  
67 - ", Deadline='" + Deadline + '\'' +  
68 - ", State=" + State +  
69 - ", Intime='" + Intime + '\'' +  
70 - ", SubjectId=" + SubjectId +  
71 - ", PublishAnswerType=" + PublishAnswerType +  
72 - ", IsPigai=" + IsPigai +  
73 - ", StartTime='" + StartTime + '\'' +  
74 - ", TypeId=" + TypeId +  
75 - ", QuestionIds='" + QuestionIds + '\'' +  
76 - ", HomeworkType=" + HomeworkType +  
77 - ", PkgId=" + PkgId +  
78 - '}';  
79 - }  
80 -  
81 - public void setPaperId(String paperId) {  
82 - PaperId = paperId;  
83 - }  
84 -  
85 - public String getTitle() {  
86 - return Title;  
87 - }  
88 -  
89 - public void setTitle(String title) {  
90 - Title = title;  
91 - }  
92 -  
93 - public int getSuggestionTime() {  
94 - return SuggestionTime;  
95 - }  
96 -  
97 - public void setSuggestionTime(int suggestionTime) {  
98 - SuggestionTime = suggestionTime;  
99 - }  
100 -  
101 - public String getDeadline() {  
102 - return Deadline;  
103 - }  
104 -  
105 - public void setDeadline(String deadline) {  
106 - Deadline = deadline;  
107 - }  
108 -  
109 - public int getState() {  
110 - return State;  
111 - }  
112 -  
113 - public void setState(int state) {  
114 - State = state;  
115 - }  
116 -  
117 - public String getIntime() {  
118 - return Intime;  
119 - }  
120 -  
121 - public void setIntime(String intime) {  
122 - Intime = intime;  
123 - }  
124 -  
125 - public int getSubjectId() {  
126 - return SubjectId;  
127 - }  
128 -  
129 - public void setSubjectId(int subjectId) {  
130 - SubjectId = subjectId;  
131 - }  
132 -  
133 - public int getPublishAnswerType() {  
134 - return PublishAnswerType;  
135 - }  
136 -  
137 - public void setPublishAnswerType(int publishAnswerType) {  
138 - PublishAnswerType = publishAnswerType;  
139 - }  
140 -  
141 - public int getIsPigai() {  
142 - return IsPigai;  
143 - }  
144 -  
145 - public void setIsPigai(int isPigai) {  
146 - IsPigai = isPigai;  
147 - }  
148 -  
149 - public String getStartTime() {  
150 - return StartTime;  
151 - }  
152 -  
153 - public void setStartTime(String startTime) {  
154 - StartTime = startTime;  
155 - }  
156 -  
157 - public int getTypeId() {  
158 - return TypeId;  
159 - }  
160 -  
161 - public void setTypeId(int typeId) {  
162 - TypeId = typeId;  
163 - }  
164 -  
165 - public String getQuestionIds() {  
166 - return QuestionIds;  
167 - }  
168 -  
169 - public void setQuestionIds(String questionIds) {  
170 - QuestionIds = questionIds;  
171 - }  
172 -  
173 - public int getHomeworkType() {  
174 - return HomeworkType;  
175 - }  
176 -  
177 - public void setHomeworkType(int homeworkType) {  
178 - HomeworkType = homeworkType;  
179 - }  
180 -  
181 - public int getPkgId() {  
182 - return PkgId;  
183 - }  
184 -  
185 - public void setPkgId(int pkgId) {  
186 - PkgId = pkgId;  
187 - }  
188 -  
189 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/HomeworkReceive.java
@@ -1,34 +0,0 @@ @@ -1,34 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class HomeworkReceive implements Serializable {  
6 -  
7 - private String StudentId;  
8 -  
9 - private String StudnetAnswerIds;  
10 -  
11 - public String getStudentId() {  
12 - return StudentId;  
13 - }  
14 -  
15 - public void setStudentId(String studentId) {  
16 - StudentId = studentId;  
17 - }  
18 -  
19 - public String getStudnetAnswerIds() {  
20 - return StudnetAnswerIds;  
21 - }  
22 -  
23 - public void setStudnetAnswerIds(String studnetAnswerIds) {  
24 - StudnetAnswerIds = studnetAnswerIds;  
25 - }  
26 -  
27 - @Override  
28 - public String toString() {  
29 - return "HomeworkReceive{" +  
30 - "StudentId='" + StudentId + '\'' +  
31 - ", StudnetAnswerIds='" + StudnetAnswerIds + '\'' +  
32 - '}';  
33 - }  
34 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/ImageUtils.java
@@ -1,168 +0,0 @@ @@ -1,168 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import com.drew.imaging.ImageMetadataReader;  
4 -import com.drew.imaging.jpeg.JpegMetadataReader;  
5 -import com.drew.metadata.Directory;  
6 -import com.drew.metadata.Metadata;  
7 -import com.drew.metadata.Tag;  
8 -import com.sun.imageio.plugins.png.PNGImageReader;  
9 -import org.apache.commons.lang.StringUtils;  
10 -  
11 -import javax.imageio.ImageIO;  
12 -import java.awt.*;  
13 -import java.awt.image.BufferedImage;  
14 -import java.io.File;  
15 -import java.io.IOException;  
16 -import java.util.Iterator;  
17 -  
18 -public class ImageUtils {  
19 -  
20 -  
21 - /* *//**  
22 - * 获取图片正确显示需要旋转的角度(顺时针)  
23 - * @return  
24 - *//*  
25 - public static int getRotateAngleForPhoto(String filePath){  
26 - File file = new File(filePath);  
27 - int angle = 0;  
28 - Metadata metadata;  
29 - try {  
30 - metadata = JpegMetadataReader.readMetadata(file);  
31 - Directory directory = metadata.getDirectory(ExifDirectory.class);  
32 - if(directory.containsTag(ExifDirectory.TAG_ORIENTATION)){  
33 -  
34 - // Exif信息中方向    
35 - int orientation = directory.getInt(ExifDirectory.TAG_ORIENTATION);  
36 - // 原图片的方向信息  
37 - if(6 == orientation ){  
38 - //6旋转90  
39 - angle = 90;  
40 - }else if( 3 == orientation){  
41 - //3旋转180  
42 - angle = 180;  
43 - }else if( 8 == orientation){  
44 - //8旋转90  
45 - angle = 270;  
46 - }  
47 - }  
48 - } catch (JpegProcessingException e) {  
49 - e.printStackTrace();  
50 - } catch (MetadataException e) {  
51 - e.printStackTrace();  
52 - } catch (IOException e) {  
53 - e.printStackTrace();  
54 - }  
55 - return angle;  
56 - }*/  
57 -  
58 -  
59 - /**  
60 - * 获得图片调整角度  
61 - * make by dongxh 2017年11月1日下午3:40:20  
62 - * @param imgFile  
63 - * @return  
64 - */  
65 - public static Integer getImgRotateAngle(String imgFile){  
66 - return 0;  
67 - /*int angel = 0;  
68 - try {  
69 - File file = new File(imgFile);  
70 - Metadata metadata = ImageMetadataReader.readMetadata(file);  
71 - for (Directory directory : metadata.getDirectories()) {  
72 - for (Tag tag : directory.getTags()) {  
73 - if (tag.getTagType() == ExifDirectoryBase.TAG_ORIENTATION) {  
74 - String description = tag.getDescription();  
75 -// System.out.println(description);  
76 - if (description.contains("90")) {  
77 - // 顺时针旋转90度  
78 - angel = 90;  
79 - } else if (description.contains("180")) {  
80 - // 顺时针旋转180度  
81 - angel = 180;  
82 - } else if (description.contains("270")) {  
83 - // 顺时针旋转270度  
84 - angel = 270;  
85 - }  
86 - }  
87 - }  
88 - }  
89 -// System.out.println(angel);  
90 - } catch (Exception e) {  
91 - e.printStackTrace();  
92 - }  
93 - return angel;*/  
94 - /*Integer angel = 0;  
95 - Metadata metadata = null;  
96 - try{  
97 - if(StringUtils.isBlank(imgFile))return angel;  
98 - File _img_file_ = new File(imgFile);  
99 - if(!_img_file_.exists())return angel;  
100 - metadata = JpegMetadataReader.readMetadata(_img_file_);  
101 - Directory directory = metadata.getDirectory(ExifDirectory.class);  
102 - Iterator iterator =directory.getTagIterator();  
103 - while (iterator.hasNext()){  
104 - System.out.println("directory:"+iterator.next().toString());  
105 - }  
106 - if(directory != null && directory.containsTag(ExifDirectory.TAG_ORIENTATION)){  
107 - int orientation = directory.getInt(ExifDirectory.TAG_ORIENTATION);  
108 - // 原图片的方向信息  
109 - if(6 == orientation ){  
110 - //6旋转90  
111 - angel = 90;  
112 - }else if( 3 == orientation){  
113 - //3旋转180  
114 - angel = 180;  
115 - }else if( 8 == orientation){  
116 - //8旋转90  
117 - angel = 270;  
118 - }  
119 - }  
120 - }catch(Exception e){  
121 - e.printStackTrace();  
122 - }  
123 - return angel;*/  
124 - }  
125 -  
126 - /**  
127 - * 旋转照片  
128 - * @return  
129 - */  
130 - public static String rotatePhonePhoto(String fullPath, int angel){  
131 -  
132 - BufferedImage src;  
133 - try {  
134 - src = ImageIO.read(new File(fullPath));  
135 - int src_width = src.getWidth(null);  
136 - int src_height = src.getHeight(null);  
137 -  
138 - int swidth=src_width;  
139 - int sheight=src_height;  
140 -  
141 - if(angel==90||angel==270){  
142 - swidth = src_height;  
143 - sheight= src_width;  
144 - }  
145 -  
146 - Rectangle rect_des = new Rectangle(new Dimension(swidth,sheight));  
147 -  
148 - BufferedImage res = new BufferedImage(rect_des.width, rect_des.height,BufferedImage.TYPE_INT_RGB);  
149 - Graphics2D g2 = res.createGraphics();  
150 -  
151 - g2.translate((rect_des.width - src_width) / 2,  
152 - (rect_des.height - src_height) / 2);  
153 - g2.rotate(Math.toRadians(angel), src_width / 2, src_height / 2);  
154 -  
155 - g2.drawImage(src, null, null);  
156 -  
157 - ImageIO.write(res, "jpg", new File(fullPath));  
158 -  
159 - } catch (IOException e) {  
160 -  
161 - e.printStackTrace();  
162 - }  
163 -  
164 - return fullPath;  
165 -  
166 - }  
167 -  
168 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/JiaoCai.java
@@ -1,46 +0,0 @@ @@ -1,46 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class JiaoCai implements Serializable {  
6 -  
7 -  
8 - private String ID;  
9 -  
10 - private String SubjectId;  
11 -  
12 - private String JiaoCaiName;  
13 -  
14 - public String getID() {  
15 - return ID;  
16 - }  
17 -  
18 - public void setID(String ID) {  
19 - this.ID = ID;  
20 - }  
21 -  
22 - public String getSubjectId() {  
23 - return SubjectId;  
24 - }  
25 -  
26 - public void setSubjectId(String subjectId) {  
27 - SubjectId = subjectId;  
28 - }  
29 -  
30 - public String getJiaoCaiName() {  
31 - return JiaoCaiName;  
32 - }  
33 -  
34 - public void setJiaoCaiName(String jiaoCaiName) {  
35 - JiaoCaiName = jiaoCaiName;  
36 - }  
37 -  
38 - @Override  
39 - public String toString() {  
40 - return "JiaoCai{" +  
41 - "ID='" + ID + '\'' +  
42 - ", SubjectId='" + SubjectId + '\'' +  
43 - ", JiaoCaiName='" + JiaoCaiName + '\'' +  
44 - '}';  
45 - }  
46 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/Knowledge.java
@@ -1,44 +0,0 @@ @@ -1,44 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class Knowledge implements Serializable {  
6 -  
7 - private String Name;  
8 -  
9 - private String SubjectId;  
10 -  
11 - private String Id;  
12 -  
13 - public String getId() {  
14 - return Id;  
15 - }  
16 -  
17 - public void setId(String id) {  
18 - Id = id;  
19 - }  
20 -  
21 - public String getName() {  
22 - return Name;  
23 - }  
24 -  
25 - public void setName(String name) {  
26 - Name = name;  
27 - }  
28 -  
29 - public String getSubjectId() {  
30 - return SubjectId;  
31 - }  
32 -  
33 - public void setSubjectId(String subjectId) {  
34 - SubjectId = subjectId;  
35 - }  
36 -  
37 - @Override  
38 - public String toString() {  
39 - return "Knowledge{" +  
40 - "Name='" + Name + '\'' +  
41 - ", SubjectId='" + SubjectId + '\'' +  
42 - '}';  
43 - }  
44 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/MyTask.java
@@ -1,30 +0,0 @@ @@ -1,30 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import com.baidu.aip.ocr.AipOcr;  
4 -import com.baidu.aip.util.Base64Util;  
5 -import com.fasterxml.jackson.databind.ObjectMapper;  
6 -import org.json.JSONObject;  
7 -import org.springframework.boot.ApplicationArguments;  
8 -import org.springframework.boot.ApplicationRunner;  
9 -import org.springframework.http.HttpEntity;  
10 -import org.springframework.http.HttpHeaders;  
11 -import org.springframework.http.MediaType;  
12 -import org.springframework.http.ResponseEntity;  
13 -import org.springframework.stereotype.Component;  
14 -import org.springframework.util.LinkedMultiValueMap;  
15 -import org.springframework.util.MultiValueMap;  
16 -import org.springframework.web.client.RestTemplate;  
17 -  
18 -import java.util.HashMap;  
19 -  
20 -@Component  
21 -public class MyTask implements ApplicationRunner {  
22 -  
23 -  
24 -  
25 - @Override  
26 - public void run(ApplicationArguments args) throws Exception {  
27 -  
28 - System.out.println("authon:" + AuthService.getAuth());  
29 - }  
30 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/QuestionBean.java
@@ -1,277 +0,0 @@ @@ -1,277 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class QuestionBean implements Serializable {  
6 -  
7 -  
8 - private String ID;  
9 -  
10 - private String Question;  
11 -  
12 - private String Qtype;  
13 -  
14 - private String Answer;  
15 -  
16 - private String CorrectAnswer;  
17 -  
18 - private String Analysis;  
19 -  
20 - private String State;  
21 -  
22 - private String Intime;  
23 -  
24 - private String ExamineFlag;  
25 -  
26 - private String ExamineUserId;  
27 -  
28 - private String CreateUserId;  
29 -  
30 - private String SubjectId;  
31 -  
32 - private String SchoolId;  
33 -  
34 - private String DifficulteId;  
35 -  
36 - private String KnowledgeId;  
37 -  
38 - private String ChapterId;  
39 -  
40 - private String GradeId;  
41 -  
42 - private String SourceId;  
43 -  
44 - private String OrderId;  
45 -  
46 - private String SId;  
47 -  
48 - private String StemId;  
49 -  
50 - private String AutomaticCorrection;  
51 -  
52 - private String PkgId;  
53 -  
54 - private String PkgType;  
55 -  
56 - public String getQuestion() {  
57 - return Question;  
58 - }  
59 -  
60 - public void setQuestion(String question) {  
61 - Question = question;  
62 - }  
63 -  
64 - public String getQtype() {  
65 - return Qtype;  
66 - }  
67 -  
68 - public void setQtype(String qtype) {  
69 - Qtype = qtype;  
70 - }  
71 -  
72 - public String getAnswer() {  
73 - return Answer;  
74 - }  
75 -  
76 - public void setAnswer(String answer) {  
77 - Answer = answer;  
78 - }  
79 -  
80 - public String getCorrectAnswer() {  
81 - return CorrectAnswer;  
82 - }  
83 -  
84 - public void setCorrectAnswer(String correctAnswer) {  
85 - CorrectAnswer = correctAnswer;  
86 - }  
87 -  
88 - public String getAnalysis() {  
89 - return Analysis;  
90 - }  
91 -  
92 - public void setAnalysis(String analysis) {  
93 - Analysis = analysis;  
94 - }  
95 -  
96 - public String getState() {  
97 - return State;  
98 - }  
99 -  
100 - public void setState(String state) {  
101 - State = state;  
102 - }  
103 -  
104 - public String getIntime() {  
105 - return Intime;  
106 - }  
107 -  
108 - public void setIntime(String intime) {  
109 - Intime = intime;  
110 - }  
111 -  
112 - public String getExamineFlag() {  
113 - return ExamineFlag;  
114 - }  
115 -  
116 - public void setExamineFlag(String examineFlag) {  
117 - ExamineFlag = examineFlag;  
118 - }  
119 -  
120 - public String getExamineUserId() {  
121 - return ExamineUserId;  
122 - }  
123 -  
124 - public void setExamineUserId(String examineUserId) {  
125 - ExamineUserId = examineUserId;  
126 - }  
127 -  
128 - public String getCreateUserId() {  
129 - return CreateUserId;  
130 - }  
131 -  
132 - public void setCreateUserId(String createUserId) {  
133 - CreateUserId = createUserId;  
134 - }  
135 -  
136 - public String getSubjectId() {  
137 - return SubjectId;  
138 - }  
139 -  
140 - public void setSubjectId(String subjectId) {  
141 - SubjectId = subjectId;  
142 - }  
143 -  
144 - public String getSchoolId() {  
145 - return SchoolId;  
146 - }  
147 -  
148 - public void setSchoolId(String schoolId) {  
149 - SchoolId = schoolId;  
150 - }  
151 -  
152 - public String getDifficulteId() {  
153 - return DifficulteId;  
154 - }  
155 -  
156 - public void setDifficulteId(String difficulteId) {  
157 - DifficulteId = difficulteId;  
158 - }  
159 -  
160 - public String getKnowledgeId() {  
161 - return KnowledgeId;  
162 - }  
163 -  
164 - public void setKnowledgeId(String knowledgeId) {  
165 - KnowledgeId = knowledgeId;  
166 - }  
167 -  
168 - public String getChapterId() {  
169 - return ChapterId;  
170 - }  
171 -  
172 - public void setChapterId(String chapterId) {  
173 - ChapterId = chapterId;  
174 - }  
175 -  
176 - public String getGradeId() {  
177 - return GradeId;  
178 - }  
179 -  
180 - public void setGradeId(String gradeId) {  
181 - GradeId = gradeId;  
182 - }  
183 -  
184 - public String getSourceId() {  
185 - return SourceId;  
186 - }  
187 -  
188 - public void setSourceId(String sourceId) {  
189 - SourceId = sourceId;  
190 - }  
191 -  
192 - public String getOrderId() {  
193 - return OrderId;  
194 - }  
195 -  
196 - public void setOrderId(String orderId) {  
197 - OrderId = orderId;  
198 - }  
199 -  
200 - public String getSId() {  
201 - return SId;  
202 - }  
203 -  
204 - public void setSId(String SId) {  
205 - this.SId = SId;  
206 - }  
207 -  
208 - public String getStemId() {  
209 - return StemId;  
210 - }  
211 -  
212 - public void setStemId(String stemId) {  
213 - StemId = stemId;  
214 - }  
215 -  
216 - public String getAutomaticCorrection() {  
217 - return AutomaticCorrection;  
218 - }  
219 -  
220 - public void setAutomaticCorrection(String automaticCorrection) {  
221 - AutomaticCorrection = automaticCorrection;  
222 - }  
223 -  
224 - public String getPkgId() {  
225 - return PkgId;  
226 - }  
227 -  
228 - public void setPkgId(String pkgId) {  
229 - PkgId = pkgId;  
230 - }  
231 -  
232 - public String getPkgType() {  
233 - return PkgType;  
234 - }  
235 -  
236 - public void setPkgType(String pkgType) {  
237 - PkgType = pkgType;  
238 - }  
239 -  
240 - public String getID() {  
241 - return ID;  
242 - }  
243 -  
244 - public void setID(String ID) {  
245 - this.ID = ID;  
246 - }  
247 -  
248 - @Override  
249 - public String toString() {  
250 - return "QuestionBean{" +  
251 - "ID='" + ID + '\'' +  
252 - ", Question='" + Question + '\'' +  
253 - ", Qtype='" + Qtype + '\'' +  
254 - ", Answer='" + Answer + '\'' +  
255 - ", CorrectAnswer='" + CorrectAnswer + '\'' +  
256 - ", Analysis='" + Analysis + '\'' +  
257 - ", State='" + State + '\'' +  
258 - ", Intime='" + Intime + '\'' +  
259 - ", ExamineFlag='" + ExamineFlag + '\'' +  
260 - ", ExamineUserId='" + ExamineUserId + '\'' +  
261 - ", CreateUserId='" + CreateUserId + '\'' +  
262 - ", SubjectId='" + SubjectId + '\'' +  
263 - ", SchoolId='" + SchoolId + '\'' +  
264 - ", DifficulteId='" + DifficulteId + '\'' +  
265 - ", KnowledgeId='" + KnowledgeId + '\'' +  
266 - ", ChapterId='" + ChapterId + '\'' +  
267 - ", GradeId='" + GradeId + '\'' +  
268 - ", SourceId='" + SourceId + '\'' +  
269 - ", OrderId='" + OrderId + '\'' +  
270 - ", SId='" + SId + '\'' +  
271 - ", StemId='" + StemId + '\'' +  
272 - ", AutomaticCorrection='" + AutomaticCorrection + '\'' +  
273 - ", PkgId='" + PkgId + '\'' +  
274 - ", PkgType='" + PkgType + '\'' +  
275 - '}';  
276 - }  
277 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/StudentAnswer.java
@@ -1,44 +0,0 @@ @@ -1,44 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class StudentAnswer implements Serializable {  
6 -  
7 - private String ID;  
8 -  
9 - private String CorrectAnswer;  
10 -  
11 - private String Answer;  
12 -  
13 - public String getID() {  
14 - return ID;  
15 - }  
16 -  
17 - public String getAnswer() {  
18 - return Answer;  
19 - }  
20 -  
21 - public void setAnswer(String answer) {  
22 - Answer = answer;  
23 - }  
24 -  
25 - public void setID(String ID) {  
26 - this.ID = ID;  
27 - }  
28 -  
29 - public String getCorrectAnswer() {  
30 - return CorrectAnswer;  
31 - }  
32 -  
33 - public void setCorrectAnswer(String correctAnswer) {  
34 - CorrectAnswer = correctAnswer;  
35 - }  
36 -  
37 - @Override  
38 - public String toString() {  
39 - return "StudentAnswer{" +  
40 - "ID='" + ID + '\'' +  
41 - ", CorrectAnswer='" + CorrectAnswer + '\'' +  
42 - '}';  
43 - }  
44 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/StudentBean.java
@@ -1,233 +0,0 @@ @@ -1,233 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -import java.util.Date;  
5 -  
6 -public class StudentBean implements Serializable {  
7 -  
8 -  
9 - private long ID;  
10 - private String UserId;  
11 -  
12 - private String CustomerId;  
13 -  
14 - private int StudentType;  
15 -  
16 - private int UserType;  
17 -  
18 - private String Name;  
19 -  
20 - private int ClassId;  
21 -  
22 - private String ClassName;  
23 -  
24 - private String OldCard;  
25 -  
26 - private String Card;  
27 -  
28 - private int SchoolId;  
29 -  
30 - private int school_id;  
31 -  
32 - private int IsNew;  
33 -  
34 - private int UpdateType;  
35 -  
36 - private Date AddTime;  
37 -  
38 - private int Sex;  
39 -  
40 - private String Face;  
41 -  
42 - private String StudentCode;  
43 -  
44 - private String student_num;  
45 -  
46 - private String student_id;  
47 -  
48 - public String getUserId() {  
49 - return UserId;  
50 - }  
51 -  
52 - public void setUserId(String userId) {  
53 - UserId = userId;  
54 - }  
55 -  
56 - public String getCustomerId() {  
57 - return CustomerId;  
58 - }  
59 -  
60 - public void setCustomerId(String customerId) {  
61 - CustomerId = customerId;  
62 - }  
63 -  
64 - public int getStudentType() {  
65 - return StudentType;  
66 - }  
67 -  
68 - public void setStudentType(int studentType) {  
69 - StudentType = studentType;  
70 - }  
71 -  
72 - public int getUserType() {  
73 - return UserType;  
74 - }  
75 -  
76 - public void setUserType(int userType) {  
77 - UserType = userType;  
78 - }  
79 -  
80 - public String getName() {  
81 - return Name;  
82 - }  
83 -  
84 - public void setName(String name) {  
85 - Name = name;  
86 - }  
87 -  
88 - public int getClassId() {  
89 - return ClassId;  
90 - }  
91 -  
92 - public void setClassId(int classId) {  
93 - ClassId = classId;  
94 - }  
95 -  
96 - public String getClassName() {  
97 - return ClassName;  
98 - }  
99 -  
100 - public void setClassName(String className) {  
101 - ClassName = className;  
102 - }  
103 -  
104 - public String getOldCard() {  
105 - return OldCard;  
106 - }  
107 -  
108 - public void setOldCard(String oldCard) {  
109 - OldCard = oldCard;  
110 - }  
111 -  
112 - public String getCard() {  
113 - return Card;  
114 - }  
115 -  
116 - public int getSchool_id() {  
117 - return school_id;  
118 - }  
119 -  
120 - public void setSchool_id(int school_id) {  
121 - this.school_id = school_id;  
122 - }  
123 -  
124 - public String getStudent_num() {  
125 - return student_num;  
126 - }  
127 -  
128 - public void setStudent_num(String student_num) {  
129 - this.student_num = student_num;  
130 - }  
131 -  
132 - public void setCard(String card) {  
133 - Card = card;  
134 - }  
135 -  
136 - public int getSchoolId() {  
137 - return SchoolId;  
138 - }  
139 -  
140 - public void setSchoolId(int schoolId) {  
141 - SchoolId = schoolId;  
142 - }  
143 -  
144 - public int getIsNew() {  
145 - return IsNew;  
146 - }  
147 -  
148 - public void setIsNew(int isNew) {  
149 - IsNew = isNew;  
150 - }  
151 -  
152 - public int getUpdateType() {  
153 - return UpdateType;  
154 - }  
155 -  
156 - public void setUpdateType(int updateType) {  
157 - UpdateType = updateType;  
158 - }  
159 -  
160 - public Date getAddTime() {  
161 - return AddTime;  
162 - }  
163 -  
164 - public void setAddTime(Date addTime) {  
165 - AddTime = addTime;  
166 - }  
167 -  
168 - public int getSex() {  
169 - return Sex;  
170 - }  
171 -  
172 - public void setSex(int sex) {  
173 - Sex = sex;  
174 - }  
175 -  
176 - public String getFace() {  
177 - return Face;  
178 - }  
179 -  
180 - public void setFace(String face) {  
181 - Face = face;  
182 - }  
183 -  
184 - public String getStudentCode() {  
185 - return StudentCode;  
186 - }  
187 -  
188 - public void setStudentCode(String studentCode) {  
189 - StudentCode = studentCode;  
190 - }  
191 -  
192 - public long getID() {  
193 - return ID;  
194 - }  
195 -  
196 - public void setID(long ID) {  
197 - this.ID = ID;  
198 - }  
199 -  
200 - public String getStudent_id() {  
201 - return student_id;  
202 - }  
203 -  
204 - public void setStudent_id(String student_id) {  
205 - this.student_id = student_id;  
206 - }  
207 -  
208 - @Override  
209 - public String toString() {  
210 - return "StudentBean{" +  
211 - "ID=" + ID +  
212 - ", UserId='" + UserId + '\'' +  
213 - ", CustomerId='" + CustomerId + '\'' +  
214 - ", StudentType=" + StudentType +  
215 - ", UserType=" + UserType +  
216 - ", Name='" + Name + '\'' +  
217 - ", ClassId=" + ClassId +  
218 - ", ClassName='" + ClassName + '\'' +  
219 - ", OldCard='" + OldCard + '\'' +  
220 - ", Card='" + Card + '\'' +  
221 - ", SchoolId=" + SchoolId +  
222 - ", school_id=" + school_id +  
223 - ", IsNew=" + IsNew +  
224 - ", UpdateType=" + UpdateType +  
225 - ", AddTime=" + AddTime +  
226 - ", Sex=" + Sex +  
227 - ", Face='" + Face + '\'' +  
228 - ", StudentCode='" + StudentCode + '\'' +  
229 - ", student_num='" + student_num + '\'' +  
230 - ", student_id='" + student_id + '\'' +  
231 - '}';  
232 - }  
233 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/StudentInfo.java
@@ -1,57 +0,0 @@ @@ -1,57 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class StudentInfo implements Serializable {  
6 -  
7 - private String student_id;  
8 -  
9 - private String name;  
10 -  
11 - private String class_name;  
12 -  
13 - private String ParentMobile;  
14 -  
15 - private String studentcode;  
16 -  
17 -  
18 - public String getStudentcode() {  
19 - return studentcode;  
20 - }  
21 -  
22 - public void setStudentcode(String studentcode) {  
23 - this.studentcode = studentcode;  
24 - }  
25 -  
26 - public String getStudent_id() {  
27 - return student_id;  
28 - }  
29 -  
30 - public void setStudent_id(String student_id) {  
31 - this.student_id = student_id;  
32 - }  
33 -  
34 - public String getName() {  
35 - return name;  
36 - }  
37 -  
38 - public void setName(String name) {  
39 - this.name = name;  
40 - }  
41 -  
42 - public String getClass_name() {  
43 - return class_name;  
44 - }  
45 -  
46 - public void setClass_name(String class_name) {  
47 - this.class_name = class_name;  
48 - }  
49 -  
50 - public String getParentMobile() {  
51 - return ParentMobile;  
52 - }  
53 -  
54 - public void setParentMobile(String parentMobile) {  
55 - ParentMobile = parentMobile;  
56 - }  
57 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/TestDao.java
@@ -1,138 +0,0 @@ @@ -1,138 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import org.apache.ibatis.annotations.*;  
4 -import org.springframework.stereotype.Repository;  
5 -  
6 -import java.util.List;  
7 -  
8 -@Repository  
9 -@Mapper  
10 -public interface TestDao {  
11 -  
12 -  
13 - @Insert("insert into TK_QuestionStem values(#{QuestionStem},#{State},#{Intime})")  
14 - int addQuestionStem(@Param("QuestionStem") String QuestionStem, @Param("State") String State, @Param("Intime") String Intime);  
15 -  
16 - @Insert("insert into TK_Question(Question,Qtype,Answer,CorrectAnswer,Analysis,State,Intime,ExamineFlag,ExamineUserId,CreateUserId,SubjectId,SchoolId,DifficulteId,KnowledgeId,ChapterId,GradeId,SourceId,OrderId,SId," +  
17 - "StemId,AutomaticCorrection,PkgId,PkgType) " +  
18 - "values(#{Question},#{Qtype},#{Answer},#{CorrectAnswer},#{Analysis},#{State},#{Intime},#{ExamineFlag},#{ExamineUserId}" +  
19 - ",#{CreateUserId},#{SubjectId},#{SchoolId},#{DifficulteId},#{KnowledgeId},#{ChapterId},#{GradeId},#{SourceId},#{OrderId},#{SId}" +  
20 - ",#{StemId},#{AutomaticCorrection},#{PkgId},#{PkgType})")  
21 - int addQuestion(@Param("Question") String Question, @Param("Qtype") String Qtype, @Param("Answer") String Answer, @Param("CorrectAnswer") String CorrectAnswer  
22 - , @Param("Analysis") String Analysis, @Param("State") String State, @Param("Intime") String Intime, @Param("ExamineFlag") String ExamineFlag, @Param("ExamineUserId") String ExamineUserId  
23 - , @Param("CreateUserId") String CreateUserId, @Param("SubjectId") String SubjectId, @Param("SchoolId") String SchoolId, @Param("DifficulteId") String DifficulteId, @Param("KnowledgeId") String KnowledgeId  
24 - , @Param("ChapterId") String ChapterId, @Param("GradeId") String GradeId, @Param("SourceId") String SourceId, @Param("OrderId") String OrderId, @Param("SId") String SId  
25 - , @Param("StemId") String StemId, @Param("AutomaticCorrection") String AutomaticCorrection, @Param("PkgId") String PkgId, @Param("PkgType") String PkgType);  
26 -  
27 - @Select("select Top(1) ID from TK_QuestionStem order by Intime desc ")  
28 - int getStemId();  
29 -  
30 - @Select("select * from TK_Question where Question like #{Question}")  
31 - List<QuestionBean> getQuestions(@Param("Question")String Question);  
32 -  
33 - @Update("update TK_Question set CorrectAnswer = #{answer},Analysis = #{explanation} where ID = #{id}")  
34 - void updateQuestion(@Param("id") String id, @Param("answer") String answer, @Param("explanation") String explanation);  
35 -  
36 -  
37 - //学生做作业  
38 - @Insert("insert into ZY_StudentAnswer (QuestionId,Answer,CorrectAnswer,QuestionType,IsCorrect,WorkID) values (" +  
39 - "#{QuestionId},#{Answer},#{CorrectAnswer},#{QuestionType},#{IsCorrect},#{WorkID})")  
40 - void StudentAnswer(@Param("QuestionId")String QuestionId,@Param("Answer")String Answer,@Param("CorrectAnswer")String CorrectAnswer,  
41 - @Param("QuestionType")String QuestionType,@Param("IsCorrect")String IsCorresct,@Param("WorkID")String WorkID);  
42 -  
43 - @Insert("insert into ZY_HomeworkReceive values(#{WorkId},#{ClassId},#{StudentId},#{StudnetAnswerIds},#{IsFinished}," +  
44 - "#{AnswerTime},#{FinishTime},#{Intime},#{IsPigai},#{IsPigai})")  
45 - void HomeworkReceive(@Param("WorkId")String WorkId,@Param("ClassId")String ClassId,@Param("StudentId")String StudentId,@Param("StudnetAnswerIds")String StudnetAnswerIds,  
46 - @Param("IsFinished")String IsFinished,@Param("AnswerTime")String AnswerTime,@Param("FinishTime")String FinishTime,@Param("Intime")String Intime,  
47 - @Param("IsPigai")String IsPigai,@Param("IsPigai")String UseTime);  
48 -  
49 - @Select("select * from TK_Question where ID = #{ID}")  
50 - QuestionBean getQues(@Param("ID")String ID);  
51 -  
52 - @Select("select StudentId from ZY_HomeworkReceive where WorkId = #{WorkId}")  
53 - List<String> getStudentIds(@Param("WorkId")String WorkId);  
54 -// )  
55 -  
56 - @Select("select ID from TK_Question where SchoolId = 885 and CorrectAnswer in('A','B','C','D') and ChapterId = #{ChapterId}")  
57 - List<String> getQIDS(@Param("ChapterId")String ChapterId );  
58 -  
59 - @Select("select ID from ZY_StudentAnswer where WorkID = #{WorkID}")  
60 - List<String> getStudentAnsIds(@Param("WorkID")String WorkID);  
61 -  
62 - //添加学生答题记录  
63 - @Insert("insert into ZY_StudentAnswer values (#{QuestionId},#{Answer},#{AnswerTime},#{CorrectAnswer},#{QuestionType},#{Pigai},#{IsCorrect},#{AppachIds},#{TeacherAppachIds},#{WorkID})")  
64 - void addStudentAnswer(@Param("QuestionId")String QuestionId,@Param("Answer")String Answer,@Param("AnswerTime")String AnswerTime,@Param("CorrectAnswer")String CorrectAnswer,  
65 - @Param("QuestionType")String QuestionType,@Param("Pigai")String Pigai,@Param("IsCorrect")String IsCorrect,@Param("AppachIds")String AppachIds,  
66 - @Param("TeacherAppachIds")String TeacherAppachIds,@Param("WorkID")String WorkID);  
67 -  
68 -  
69 - @Select("select Top(#{top}) ID from ZY_StudentAnswer where WorkID = #{WorkID} order by ID desc")  
70 - List<String> getTopIDs(@Param("WorkID")String WorkID,@Param("top")int top);  
71 -  
72 - @Select("select ID from ZY_HomeworkReceive where WorkId = #{WorkId} and ID >= #{ID} and ID<12054 order by ID desc")  
73 - List<String> get_HomeworkReceive(@Param("WorkId")String WorkId,@Param("ID")String ID);  
74 -  
75 - @Update("update ZY_HomeworkReceive set StudnetAnswerIds = #{StudnetAnswerIds} where ID = #{ID}")  
76 - void updateHomeWork(@Param("StudnetAnswerIds")String StudnetAnswerIds,@Param("ID")String ID);  
77 -  
78 - @Select("select * from ZY_HomeworkReceive where WorkId = #{WorkId} order by ID desc")  
79 - List<HomeworkReceive> get_HomeworkRec(@Param("WorkId")String WorkId);  
80 -  
81 - @Select("select Title from ZY_Homework where ID = #{ID} order by ID desc")  
82 - String getWorkName(@Param("ID") String workId);  
83 -  
84 - @Select("select * from ZY_StudentAnswer where WorkID = #{WorkId}")  
85 - List<StudentAnswer> get_stuAnswer(@Param("WorkId")String WorkId);  
86 -  
87 - @Update("update ZY_StudentAnswer set Answer = #{Answer},IsCorrect = #{IsCorrect} ,CorrectAnswer = #{CorrectAnswer} where ID = #{ID}")  
88 - void updateStudentAnswer(@Param("ID") String id,@Param("CorrectAnswer")String CorrectAnswer,@Param("Answer")String Answer,@Param("IsCorrect")String IsCorrect);  
89 -  
90 - @Select("select name from SZ_V_School_Student where student_id = #{student_id}")  
91 - String getStudentName(@Param("student_id") String studentId);  
92 -  
93 - @Select("select student_id from SZ_V_School_Student where class_id = #{class_id}")  
94 - List<String> getStudentIdsWithClassId(@Param("class_id") String class_id);  
95 -  
96 - @Select("select IsCorrect from ZY_StudentAnswer where ID = #{ID}")  
97 - int getIsCorrect(@Param("ID") String id);  
98 -  
99 - @Select("select QuestionId from ZY_StudentAnswer where WorkID = #{WorkID}")  
100 - List<String> getStuAnsIds(@Param("WorkID") String workId);  
101 -  
102 - @Select("select CorrectAnswer from ZY_StudentAnswer where WorkID = #{WorkID}")  
103 - List<String> correctAns(@Param("WorkID")String WorkID);  
104 -  
105 -  
106 - @Select("select * from ZY_TestPaper where CreatorUserId = #{CreateUserId} and Intime > #{Intime}")  
107 - List<TestPaper> getTestPapers(@Param("CreateUserId") String createUserId,@Param("Intime")String Intime);  
108 -  
109 - @Insert("insert into ZY_TestPaper values (#{addCreateUserId},#{questionIds},#{status},#{publishTime},#{name},#{isRecommend},#{state},#{intime},#{schoolId})")  
110 - void addTestPaper(@Param("addCreateUserId") String addCreateUserId, @Param("questionIds") String questionIds, @Param("status") int status,  
111 - @Param("publishTime") String publishTime, @Param("name") String name, @Param("isRecommend") int isRecommend,  
112 - @Param("state") int state, @Param("intime") String intime, @Param("schoolId") String schoolId);  
113 -  
114 - @Insert("insert into ZY_Homework values(#{addCreateUserId},#{id},#{name},#{s},#{s1},#{s2},#{s3},#{i},#{i1},#{i2},#{s4},#{i3},#{questionIds},#{i4},#{i5}) ")  
115 - void addHomework(@Param("addCreateUserId") String addCreateUserId, @Param("id") int id, @Param("name") String name,  
116 - @Param("s") String s, @Param("s1") String s1, @Param("s2") String s2, @Param("s3") String s3, @Param("i") int i,  
117 - @Param("i1") int i1, @Param("i2") int i2,@Param("s4") String s4, @Param("i3") int i3, @Param("questionIds") String questionIds, @Param("i4") int i4, @Param("i5") int i5);  
118 -  
119 -  
120 - @Select("select * from ZY_Homework where CreatorUserId in (select DISTINCT user_id from SZ_UserRole where school_id = 11)")  
121 - List<HomeBean> getCreatorUserId();  
122 -  
123 - @Select("select * from ZY_Homework where CreatorUserId = #{CreatorUserId}")  
124 - List<Homework> getHomeWork(@Param("CreatorUserId") String addCreateUserId);  
125 -  
126 - @Select("select * from SZ_V_School_Student where school_id = #{school_id}")  
127 - List<StudentInfo> getStudents(@Param("school_id") int school_id);  
128 -  
129 - @Select("select QuestionIds from ZY_Homework where ID = #{workId}")  
130 - String getQuestionIds(@Param("workId") String workId);  
131 -  
132 - @Select("select CorrectAnswer from TK_Question where ID = #{questionId}")  
133 - String getCorrectAnswer(@Param("questionId") String questionId);  
134 -  
135 -  
136 -  
137 -  
138 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/TestPaper.java
@@ -1,122 +0,0 @@ @@ -1,122 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import java.io.Serializable;  
4 -  
5 -public class TestPaper implements Serializable {  
6 -  
7 - private int ID;  
8 -  
9 - private String CreatorUserId;  
10 -  
11 - private String QuestionIds;  
12 -  
13 - private int Status;  
14 -  
15 - private String PublishTime;  
16 -  
17 - private String Name;  
18 -  
19 - private int IsRecommend;  
20 -  
21 - private int State;  
22 -  
23 - private String Intime;  
24 -  
25 - private int SchoolId;  
26 -  
27 - public String getCreatorUserId() {  
28 - return CreatorUserId;  
29 - }  
30 -  
31 - public void setCreatorUserId(String creatorUserId) {  
32 - CreatorUserId = creatorUserId;  
33 - }  
34 -  
35 - public String getQuestionIds() {  
36 - return QuestionIds;  
37 - }  
38 -  
39 - public void setQuestionIds(String questionIds) {  
40 - QuestionIds = questionIds;  
41 - }  
42 -  
43 - public int getStatus() {  
44 - return Status;  
45 - }  
46 -  
47 - public int getID() {  
48 - return ID;  
49 - }  
50 -  
51 - public void setID(int ID) {  
52 - this.ID = ID;  
53 - }  
54 -  
55 - public void setStatus(int status) {  
56 - Status = status;  
57 - }  
58 -  
59 - public String getPublishTime() {  
60 - return PublishTime;  
61 - }  
62 -  
63 - public void setPublishTime(String publishTime) {  
64 - PublishTime = publishTime;  
65 - }  
66 -  
67 - public String getName() {  
68 - return Name;  
69 - }  
70 -  
71 - public void setName(String name) {  
72 - Name = name;  
73 - }  
74 -  
75 - public int getIsRecommend() {  
76 - return IsRecommend;  
77 - }  
78 -  
79 - public void setIsRecommend(int isRecommend) {  
80 - IsRecommend = isRecommend;  
81 - }  
82 -  
83 - public int getState() {  
84 - return State;  
85 - }  
86 -  
87 - public void setState(int state) {  
88 - State = state;  
89 - }  
90 -  
91 - public String getIntime() {  
92 - return Intime;  
93 - }  
94 -  
95 - public void setIntime(String intime) {  
96 - Intime = intime;  
97 - }  
98 -  
99 - public int getSchoolId() {  
100 - return SchoolId;  
101 - }  
102 -  
103 - public void setSchoolId(int schoolId) {  
104 - SchoolId = schoolId;  
105 - }  
106 -  
107 - @Override  
108 - public String toString() {  
109 - return "TestPaper{" +  
110 - "ID=" + ID +  
111 - ", CreatorUserId='" + CreatorUserId + '\'' +  
112 - ", QuestionIds='" + QuestionIds + '\'' +  
113 - ", Status=" + Status +  
114 - ", PublishTime='" + PublishTime + '\'' +  
115 - ", Name='" + Name + '\'' +  
116 - ", IsRecommend=" + IsRecommend +  
117 - ", State=" + State +  
118 - ", Intime='" + Intime + '\'' +  
119 - ", SchoolId=" + SchoolId +  
120 - '}';  
121 - }  
122 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/WatchServer.java
@@ -1,530 +0,0 @@ @@ -1,530 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -  
4 -import com.sincere.common.dto.smartCampus.UserDto;  
5 -import com.sincere.common.dto.xiaoan.CheckInDto;  
6 -import com.sincere.common.dto.xiaoan.CheckOutDto;  
7 -import com.sincere.common.dto.xiaoan.PassFailDto;  
8 -import com.sincere.common.dto.xiaoan.SendMessageDto;  
9 -import com.sincere.common.util.DateUtils;  
10 -import com.sincere.weigeng.feign.SmFeign;  
11 -import com.sincere.weigeng.feign.XaFeign;  
12 -import com.sincere.weigeng.logs.LogName;  
13 -import com.sincere.weigeng.logs.LoggerUtils;  
14 -import com.sincere.weigeng.utils.WGUtils;  
15 -import com.sincere.weigeng.utils.WatchingShortHandler;  
16 -import com.sincere.weigeng.utils.WgUdpCommShort;  
17 -import org.apache.commons.lang3.StringUtils;  
18 -import org.apache.mina.core.session.IoSession;  
19 -import org.apache.mina.transport.socket.DatagramSessionConfig;  
20 -import org.apache.mina.transport.socket.nio.NioDatagramAcceptor;  
21 -import org.slf4j.Logger;  
22 -import org.springframework.beans.factory.annotation.Autowired;  
23 -import org.springframework.boot.ApplicationArguments;  
24 -import org.springframework.boot.ApplicationRunner;  
25 -import org.springframework.stereotype.Component;  
26 -  
27 -import java.io.IOException;  
28 -import java.net.InetSocketAddress;  
29 -import java.util.*;  
30 -import java.util.concurrent.ConcurrentHashMap;  
31 -  
32 -/**  
33 - * @author chen  
34 - * @version 1.0  
35 - * @date 2019/10/12 0012 16:57  
36 - */  
37 -  
38 -@Component  
39 -public class WatchServer implements ApplicationRunner {  
40 -  
41 - private static final Logger Log_orderSuccess = LoggerUtils.Logger(LogName.orderSuccess);  
42 - private static final Logger Log_orderFail = LoggerUtils.Logger(LogName.orderFail);  
43 - private static final Logger Log_kaoInfo = LoggerUtils.Logger(LogName.kaoInfo);  
44 - private static final Logger Log_heartBeat = LoggerUtils.Logger(LogName.heartBeat);  
45 - private static final Logger Log_error = LoggerUtils.Logger(LogName.error);  
46 -  
47 - private static List<Long> snoList = new ArrayList<>();  
48 - private static List<Long> indexList = new ArrayList<>();  
49 - private static WatchingShortHandler watchingShortHandler ;  
50 - private static Queue<byte[]> queue = new LinkedList<>();  
51 - private static Map<Long , IoSession> sessionMap = new ConcurrentHashMap<>();  
52 -  
53 - @Autowired  
54 - SmFeign smFeign;  
55 -  
56 - @Autowired  
57 - XaFeign xaFeign;  
58 -  
59 - private static String ip = "172.16.3.175";  
60 - private static int port = 1200;  
61 -  
62 - @Override  
63 - public void run(ApplicationArguments args) {  
64 - //启动服务监听  
65 - this.WatchingServerRunning(ip,port);  
66 - }  
67 -  
68 - // 进入服务器监控状态  
69 - public int WatchingServerRunning(String watchServerIP,int watchServerPort) {  
70 - watchingShortHandler = new WatchingShortHandler(queue,sessionMap);  
71 - // 创建UDP数据包NIO  
72 - NioDatagramAcceptor acceptor = new NioDatagramAcceptor();  
73 - // NIO设置底层IOHandler  
74 - acceptor.setHandler(watchingShortHandler);  
75 -  
76 - // 设置是否重用地址? 也就是每个发过来的udp信息都是一个地址?  
77 - DatagramSessionConfig dcfg = acceptor.getSessionConfig();  
78 - dcfg.setReuseAddress(false);  
79 - // 绑定端口地址  
80 - try {  
81 - acceptor.bind(new InetSocketAddress(watchServerIP, watchServerPort));  
82 - } catch (IOException e) {  
83 - Log_orderSuccess.info("绑定接收服务器失败....");  
84 - e.printStackTrace();  
85 - return 0;  
86 - }  
87 - Log_orderSuccess.info("绑定接收服务器成功....");  
88 - long recordIndex = 0;  
89 - while(true) {  
90 - if (!queue.isEmpty()) {  
91 - byte[] recvBuff;  
92 - synchronized (queue) {  
93 - recvBuff= queue.poll();  
94 - }  
95 - if (recvBuff[1]== 0x20) {  
96 - long sn = WgUdpCommShort.getLongByByte(recvBuff, 4, 4);  
97 - smFeign.updateLinkTime(sn+"");  
98 - Log_heartBeat.info("设备"+sn);  
99 - boolean isExist = true ;  
100 - long recordIndexGet = WgUdpCommShort.getLongByByte(recvBuff, 8, 4);  
101 - if(snoList.indexOf(sn) >= 0){  
102 - int number = snoList.indexOf(sn);  
103 - recordIndex = indexList.get(number);  
104 - indexList.set(number,recordIndexGet);  
105 - }else {  
106 - snoList.add(sn);  
107 - recordIndex = 0 ;  
108 - indexList.add(recordIndexGet);  
109 - System.out.println("设备"+sn+"上线");  
110 - isExist = false ;  
111 - }  
112 - if(isExist){  
113 - if (recordIndex < recordIndexGet || (recordIndexGet - recordIndex) < -5) {  
114 - watching(recvBuff);  
115 - }  
116 - }  
117 - }else {  
118 - push(recvBuff);  
119 - }  
120 - } else {  
121 - long times = 100;  
122 - try {  
123 - Thread.sleep(times);  
124 - } catch (InterruptedException e) {  
125 - e.printStackTrace();  
126 - }  
127 - }  
128 - }  
129 - }  
130 -  
131 - private void watching(byte[] recv){  
132 - long res = 0;  
133 - //8-11 记录的索引号  
134 - //(=0表示没有记录) 4 0x00000000  
135 - int recordIndex = 0;  
136 - recordIndex = WGUtils.byteToInt(recv, 8, 4);  
137 - //12 记录类型**********************************************  
138 - //0=无记录  
139 - //1=刷卡记录  
140 - //2=门磁,按钮, 设备启动, 远程开门记录  
141 - //3=报警记录 1  
142 - //0xFF=表示指定索引位的记录已被覆盖掉了. 请使用索引0, 取回最早一条记录的索引值  
143 - int recordType = recv[12];  
144 -  
145 - //13 有效性(0 表示不通过, 1表示通过) 1  
146 - int recordValid = recv[13];  
147 -  
148 - //14 门号(1,2,3,4) 1 业务需要-->1出2进  
149 - int recordDoorNO = recv[14];  
150 -  
151 - //15 进门/出门(1表示进门, 2表示出门) 1 0x01  
152 - //int recordInOrOut = recv[15];  
153 -  
154 - //16-19 卡号(类型是刷卡记录时)  
155 - //或编号(其他类型记录) 4  
156 - String cardNo = WGUtils.getCardNo(recv, 16, 4);  
157 -  
158 - //20-26 刷卡时间:  
159 - //年月日时分秒 (采用BCD码)见设置时间部分的说明  
160 - String recordTime = "2000-01-01 00:00:00";  
161 - recordTime = String.format("%02X%02X-%02X-%02X %02X:%02X:%02X",  
162 - recv[20], recv[21], recv[22], recv[23], recv[24], recv[25], recv[26]);  
163 - //2012.12.11 10:49:59 7  
164 - //27 记录原因代码(可以查 “刷卡记录说明.xls”文件的ReasonNO)  
165 - //处理复杂信息才用 1  
166 - int reason = recv[27];  
167 - if (recordType == 0) {  
168 - Log_orderSuccess.info(String.format("索引位={0} 无记录", recordIndex));  
169 - }else if (recordType == 0xff) {  
170 - Log_orderSuccess.info("指定索引位的记录已被覆盖掉了,请使用索引0, 取回最早一条记录的索引值");  
171 - } else if (recordType == 1) {  
172 - long sno = 0;  
173 - sno = WgUdpCommShort.getLongByByte(recv, 4, 4);//解析设备号  
174 - String msg = "索引位=" + recordIndex  
175 - + ",卡号=" + cardNo  
176 - +"进出=" + (recordDoorNO == 1 ? "出门" : "进门")  
177 - + ",有效=" + (recordValid == 1 ? "通过" : "禁止")  
178 - + ",时间=" + recordTime  
179 - + ",描述=" + WGUtils.getReasonDetailChinese(reason) + "";  
180 - Log_orderSuccess.info("控制器:" + sno + msg);  
181 - if(recordValid == 1) {  
182 - //有效刷卡调考勤存储过程  
183 - CheckInDto checkIn = new CheckInDto();  
184 - checkIn.setDeviceId(sno+"");  
185 - checkIn.setCardNo(cardNo);  
186 - checkIn.setFunNo(8);  
187 - checkIn.setFlag(recordDoorNO == 1 ? 1 : 0);  
188 - checkIn.setCheckTime(recordTime);  
189 - CheckOutDto checkOutDto = xaFeign.checkIn(checkIn);  
190 - if(checkOutDto.getIsSuccess() == 1){  
191 - //考勤成功  
192 - String nowDate = DateUtils.date2String(new Date(),DateUtils.format2);  
193 - Log_kaoInfo.info("考勤成功!,设备:"+sno+"卡号:"+cardNo+"方向:"+(recordDoorNO == 1 ? "出门" : "进门")+"______刷卡时间"+ recordTime+";入库时间:"+nowDate);  
194 - }else {  
195 - //考勤失败  
196 - Log_orderFail.error("考勤失败!,设备:"+sno+"卡号:"+cardNo + "---"+ checkOutDto.getOut());  
197 - }  
198 - }else {  
199 - //判断是否请假  
200 - String studentNum = smFeign.checkLeave(cardNo);  
201 - if (StringUtils.isNotBlank(studentNum)) {  
202 - int outOf = recordDoorNO == 1 ? 1 : 0;  
203 - //远程开门  
204 - openDoor(sno,"64",recordDoorNO,cardNo);  
205 - Log_orderSuccess.info("请假开门成功"+cardNo);  
206 - } else {  
207 - //没有请假不做任何处理,则是刷卡异常,入库  
208 - UserDto user = smFeign.selectUserByCardNum(cardNo);  
209 - PassFailDto passFail = new PassFailDto();  
210 - passFail.setCardNum(cardNo);  
211 - passFail.setDeviceId(sno+"");  
212 - passFail.setDirection((recordDoorNO == 1 ? "出门" : "进门"));  
213 - passFail.setResultIntro(WGUtils.getReasonDetailChinese(reason));  
214 - passFail.setInTime(DateUtils.string2Date(recordTime, DateUtils.format2));  
215 - passFail.setCreateTime(new Date());  
216 - passFail.setSchoolId(user.getSchoolId());  
217 - xaFeign.insertPassFail(passFail);  
218 - }  
219 - }  
220 - }  
221 - }  
222 -  
223 - private void push(byte[] recv){  
224 - long index = WgUdpCommShort.getXidOfCommand(recv);  
225 - long sno = WgUdpCommShort.getLongByByte(recv, 4, 4);  
226 - String functionId = WGUtils.byte2Hex(recv[1]);  
227 - SendMessageDto sendMessage = xaFeign.selectMessage(sno+"",index,functionId);  
228 - if(sendMessage != null){  
229 - if(recv[8] == 1){  
230 - sendMessage.setCorrect(1);  
231 - }else {  
232 - sendMessage.setCorrect(0);  
233 - }  
234 - StringBuffer result = new StringBuffer();  
235 - for(byte b : recv){  
236 - result.append(WGUtils.byte2Hex(b)).append("-");  
237 - }  
238 - sendMessage.setResult(result.toString().substring(0,result.toString().length()-1));  
239 - xaFeign.updateMessage(sendMessage.getId(),sendMessage.getResult(),sendMessage.getCorrect());  
240 - }  
241 - }  
242 -  
243 - //远程开门  
244 - public long openDoor(long sno , String outsideOrderId,int doorNo , String cardNo){  
245 - WgUdpCommShort pkt = new WgUdpCommShort();  
246 - pkt.iDevSn = sno;  
247 - try{  
248 - int doorNO =doorNo;  
249 - pkt.Reset();  
250 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
251 - pkt.data[0] =(byte) (doorNO & 0xff);  
252 - if(StringUtils.isNotBlank(cardNo)){  
253 - pkt.data[20] = WGUtils.toHex(cardNo.substring(0,2));  
254 - pkt.data[21] = WGUtils.toHex(cardNo.substring(2,4));  
255 - pkt.data[22] = WGUtils.toHex(cardNo.substring(4,6));  
256 - pkt.data[23] = WGUtils.toHex(cardNo.substring(6,8));  
257 - }  
258 - byte[] bytes = pkt.toByte();  
259 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
260 - long result = insert(sno+"",outsideOrderId,cardNo,index,bytes);  
261 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
262 - return result ;  
263 - }catch (Exception e){  
264 - Log_error.error(e.toString());  
265 - }  
266 - return 0L;  
267 - }  
268 -  
269 - //重置控制板时间  
270 - public long setTime(long sno , String outsideOrderId){  
271 - WgUdpCommShort pkt = new WgUdpCommShort();  
272 - pkt.iDevSn = sno;  
273 - try{  
274 - pkt.Reset();  
275 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
276 - Calendar cal = (Calendar.getInstance());  
277 - pkt.data[0] = WGUtils.toHex(String.valueOf(cal.get(Calendar.YEAR)).substring(0,2));  
278 - pkt.data[1] = WGUtils.toHex(String.valueOf(cal.get(Calendar.YEAR)).substring(2,4));  
279 - pkt.data[2] = WGUtils.toHex(String.valueOf(cal.get(Calendar.MONTH)+1));  
280 - pkt.data[3] = WGUtils.toHex(String.valueOf(cal.get(Calendar.DATE)));  
281 - pkt.data[4] =WGUtils.toHex(String.valueOf(cal.get(Calendar.HOUR_OF_DAY)));  
282 - pkt.data[5] =WGUtils.toHex(String.valueOf(cal.get(Calendar.MINUTE)));  
283 - pkt.data[6] = WGUtils.toHex(String.valueOf(cal.get(Calendar.SECOND)));  
284 - byte[] bytes = pkt.toByte();  
285 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
286 - long result = insert(sno+"",outsideOrderId,null,index,bytes);  
287 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
288 - return result ;  
289 - }catch (Exception e){  
290 - Log_error.error(e.toString());  
291 - }  
292 - return 0L;  
293 - }  
294 -  
295 - //设置考勤时段  
296 - public List<Long> SetAttendanceTime(long sno ,String outsideOrderId, int shiduan , Date begin ,Date end ,  
297 - int isMonDay ,int isTuesDay , int isWednesDay ,int isThursDay , int isFriday ,  
298 - int isSaturDay , int isWeekend , String shiqu){  
299 - List<Long> resultList = new ArrayList<>();  
300 - WgUdpCommShort pkt = new WgUdpCommShort();  
301 - pkt.iDevSn = sno;  
302 - try{  
303 - pkt.Reset();  
304 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
305 - String[] shiQuArray = shiqu.split(",");  
306 - int shiDuanCount = shiQuArray.length / 6 ;  
307 - for (int i = 0; i < shiDuanCount; i++){  
308 - if (i == 0) {  
309 - pkt.data[0] = WGUtils.toHex(shiduan+"");  
310 - } else {  
311 - pkt.data[0] = WGUtils.toHex((shiduan+20*i)+"");  
312 - }  
313 - Calendar c = Calendar.getInstance();  
314 - c.setTime(begin);  
315 - //开始时间 20 19 01 01  
316 - pkt.data[1] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(0,2));  
317 - pkt.data[2] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(2,4));  
318 - pkt.data[3] = WGUtils.toHex(String.valueOf(c.get(Calendar.MONTH)+1));  
319 - pkt.data[4] = WGUtils.toHex(String.valueOf(c.get(Calendar.DATE)));  
320 - //结束时间  
321 - c.setTime(end);  
322 - pkt.data[5] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(0,2));  
323 - pkt.data[6] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(2,4));  
324 - pkt.data[7] = WGUtils.toHex(String.valueOf(c.get(Calendar.MONTH)+1));  
325 - pkt.data[8] = WGUtils.toHex(String.valueOf(c.get(Calendar.DATE)));  
326 - //星期几 有效  
327 - pkt.data[9] = WGUtils.toHex(String.valueOf(isMonDay));  
328 - pkt.data[10] = WGUtils.toHex(String.valueOf(isTuesDay));  
329 - pkt.data[11] = WGUtils.toHex(String.valueOf(isWednesDay));  
330 - pkt.data[12] = WGUtils.toHex(String.valueOf(isThursDay));  
331 - pkt.data[13] = WGUtils.toHex(String.valueOf(isFriday));  
332 - pkt.data[14] = WGUtils.toHex(String.valueOf(isSaturDay));  
333 - pkt.data[15] = WGUtils.toHex(String.valueOf(isWeekend));  
334 - //有效时区  
335 - pkt.data[16] = WGUtils.toHex(shiQuArray[i * 6 + 0].substring(0, 2));  
336 - pkt.data[17] = WGUtils.toHex(shiQuArray[i * 6 + 0].substring(3, 5));  
337 -  
338 - pkt.data[18] = WGUtils.toHex(shiQuArray[i * 6 + 1].substring(0, 2));  
339 - pkt.data[19] = WGUtils.toHex(shiQuArray[i * 6 + 1].substring(3, 5));  
340 -  
341 - pkt.data[20] = WGUtils.toHex(shiQuArray[i * 6 + 2].substring(0, 2));  
342 - pkt.data[21] = WGUtils.toHex(shiQuArray[i * 6 + 2].substring(3, 5));  
343 -  
344 - pkt.data[22] = WGUtils.toHex(shiQuArray[i * 6 + 3].substring(0, 2));  
345 - pkt.data[23] = WGUtils.toHex(shiQuArray[i * 6 + 3].substring(3, 5));  
346 -  
347 - pkt.data[24] = WGUtils.toHex(shiQuArray[i * 6 + 4].substring(0, 2));  
348 - pkt.data[25] = WGUtils.toHex(shiQuArray[i * 6 + 4].substring(3, 5));  
349 -  
350 - pkt.data[26] = WGUtils.toHex(shiQuArray[i * 6 + 5].substring(0, 2));  
351 - pkt.data[27] = WGUtils.toHex(shiQuArray[i * 6 + 5].substring(3, 5));  
352 - if (shiDuanCount != 1) {  
353 - //需要链接时段  
354 - if (i != shiDuanCount - 1) {  
355 - //只要不是最后一个时段  
356 - pkt.data[28] = WGUtils.toHex((shiduan+20*(i+1)+""));  
357 - } else {  
358 - pkt.data[28] = 0;  
359 - }  
360 - } else {  
361 - pkt.data[28] = 0;  
362 - }  
363 - byte[] bytes = pkt.toByte();  
364 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
365 - long result = insert(sno+"",outsideOrderId,null,index,bytes);  
366 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
367 - resultList.add(result);  
368 - }  
369 - return resultList ;  
370 - }catch (Exception e){  
371 - Log_error.error(e.toString());  
372 - }  
373 - return resultList;  
374 - }  
375 -  
376 - //设置权限  
377 - public long SetSignalCardInfo(long sno , String outsideOrderId, String cardNo , int shiduan , Date begin , Date end){  
378 - WgUdpCommShort pkt = new WgUdpCommShort();  
379 - pkt.iDevSn = sno;  
380 - try{  
381 - pkt.Reset();  
382 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
383 - pkt.iDevSn = sno;  
384 - //0D D7 37 00  
385 - pkt.data[0] = WGUtils.toHex(cardNo.substring(0,2));  
386 - pkt.data[1] = WGUtils.toHex(cardNo.substring(2,4));  
387 - pkt.data[2] = WGUtils.toHex(cardNo.substring(4,6));  
388 - pkt.data[3] = WGUtils.toHex(cardNo.substring(6,8));  
389 -  
390 - //20 10 01 01 起始日期: 2010年01月01日 (必须大于2001年)  
391 - Calendar c = Calendar.getInstance();  
392 - c.setTime(begin);  
393 - pkt.data[4] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(0,2));  
394 - pkt.data[5] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(2,4));  
395 - pkt.data[6] = WGUtils.toHex(String.valueOf(c.get(Calendar.MONTH)+1));  
396 - pkt.data[7] = WGUtils.toHex(String.valueOf(c.get(Calendar.DATE)));  
397 - //20 29 12 31 截止日期: 2029年12月31日  
398 - c.setTime(end);  
399 - pkt.data[8] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(0,2));  
400 - pkt.data[9] = WGUtils.toHex(String.valueOf(c.get(Calendar.YEAR)).substring(2,4));  
401 - pkt.data[10] = WGUtils.toHex(String.valueOf(c.get(Calendar.MONTH)+1));  
402 - pkt.data[11] = WGUtils.toHex(String.valueOf(c.get(Calendar.DATE)));  
403 - //01 允许通过 一号门 [对单门, 双门, 四门控制器有效]  
404 - pkt.data[12] = WGUtils.toHex(shiduan+"");  
405 - //01 允许通过 二号门 [对双门, 四门控制器有效]  
406 - pkt.data[13] = WGUtils.toHex(shiduan+"");  
407 - //01 允许通过 三号门 [对四门控制器有效]  
408 - pkt.data[14] = WGUtils.toHex(shiduan+"");  
409 - //01 允许通过 四号门 [对四门控制器有效]  
410 - pkt.data[15] = WGUtils.toHex(shiduan+"");  
411 - byte[] bytes = pkt.toByte();  
412 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
413 - long result = insert(sno+"",outsideOrderId,cardNo,index,bytes);  
414 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
415 - return result ;  
416 - }catch (Exception e){  
417 - Log_error.error(e.toString());  
418 - }  
419 - return 0l;  
420 - }  
421 -  
422 - //删除单张卡权限  
423 - public long clearSinglePower(long sno ,String outsideOrderId, String cardNo){  
424 - WgUdpCommShort pkt = new WgUdpCommShort();  
425 - pkt.iDevSn = sno;  
426 - try{  
427 - pkt.Reset();  
428 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
429 - pkt.iDevSn = sno;  
430 - pkt.data[0] = WGUtils.toHex(cardNo.substring(0,2));  
431 - pkt.data[1] = WGUtils.toHex(cardNo.substring(2,4));  
432 - pkt.data[2] = WGUtils.toHex(cardNo.substring(4,6));  
433 - pkt.data[3] = WGUtils.toHex(cardNo.substring(6,8));  
434 - byte[] bytes = pkt.toByte();  
435 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
436 - long result = insert(sno+"",outsideOrderId,cardNo,index,bytes);  
437 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
438 - return result ;  
439 - }catch (Exception e){  
440 - Log_error.error(e.toString());  
441 - }  
442 - return 0l;  
443 - }  
444 -  
445 - //删除全部权限  
446 - public long clearAllPower(long sno ,String outsideOrderId){  
447 - WgUdpCommShort pkt = new WgUdpCommShort();  
448 - pkt.iDevSn = sno;  
449 - try{  
450 - pkt.Reset();  
451 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
452 - pkt.iDevSn = sno;  
453 - pkt.data[0] = (byte) 0x55 ;  
454 - pkt.data[1] = (byte) 0xAA ;  
455 - pkt.data[2] = (byte) 0xAA ;  
456 - pkt.data[3] = (byte) 0x55 ;  
457 - byte[] bytes = pkt.toByte();  
458 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
459 - long result = insert(sno+"",outsideOrderId,null,index,bytes);  
460 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
461 - return result ;  
462 - }catch (Exception e){  
463 - Log_error.error(e.toString());  
464 - }  
465 - return 0l;  
466 - }  
467 -  
468 - //查询卡权限  
469 - public long searchPower(long sno ,String outsideOrderId, String cardNo){  
470 - WgUdpCommShort pkt = new WgUdpCommShort();  
471 - pkt.iDevSn = sno;  
472 - try{  
473 - pkt.Reset();  
474 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
475 - pkt.iDevSn = sno;  
476 - pkt.data[0] = WGUtils.toHex(cardNo.substring(0,2));  
477 - pkt.data[1] = WGUtils.toHex(cardNo.substring(2,4));  
478 - pkt.data[2] = WGUtils.toHex(cardNo.substring(4,6));  
479 - pkt.data[3] = WGUtils.toHex(cardNo.substring(6,8));  
480 - byte[] bytes = pkt.toByte();  
481 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
482 - long result = insert(sno+"",outsideOrderId,cardNo,index,bytes);  
483 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
484 - return result ;  
485 - }catch (Exception e){  
486 - Log_error.error(e.toString());  
487 - }  
488 - return 0l;  
489 - }  
490 -  
491 - //删除时段  
492 - public long clearShiDuan(long sno , String outsideOrderId){  
493 - WgUdpCommShort pkt = new WgUdpCommShort();  
494 - pkt.iDevSn = sno;  
495 - try{  
496 - pkt.Reset();  
497 - pkt.functionID = WGUtils.toFunctionHex(outsideOrderId);  
498 - pkt.iDevSn = sno;  
499 - pkt.data[0] = (byte) 0x55 ;  
500 - pkt.data[1] = (byte) 0xAA ;  
501 - pkt.data[2] = (byte) 0xAA ;  
502 - pkt.data[3] = (byte) 0x55 ;  
503 - byte[] bytes = pkt.toByte();  
504 - long index = WgUdpCommShort.getXidOfCommand(bytes);  
505 - long result = insert(sno+"",outsideOrderId,null,index,bytes);  
506 - pkt.run(watchingShortHandler.getSessionMap().get(sno),bytes);  
507 - return result ;  
508 - }catch (Exception e){  
509 - Log_error.error(e.toString());  
510 - }  
511 - return 0l;  
512 - }  
513 -  
514 - private long insert(String sn ,String functionId , String cardNo , long index , byte[] recv){  
515 -  
516 - StringBuffer send = new StringBuffer();  
517 - for(byte b : recv){  
518 - send.append(WGUtils.byte2Hex(b)).append("-");  
519 - }  
520 - SendMessageDto sendMessage = new SendMessageDto();  
521 - sendMessage.setDeviceId(sn);  
522 - sendMessage.setFunctionId(Integer.toHexString(Integer.valueOf(functionId)));  
523 - sendMessage.setIndex(index);  
524 - sendMessage.setCardNo(cardNo);  
525 - sendMessage.setCreateTime(new Date());  
526 - sendMessage.setSend(send.toString().substring(0,send.toString().length()-1));  
527 - xaFeign.insertMessage(sendMessage);  
528 - return sendMessage.getId();  
529 - }  
530 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/WeigengApplication.java
@@ -1,13 +0,0 @@ @@ -1,13 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import org.springframework.boot.SpringApplication;  
4 -import org.springframework.boot.autoconfigure.SpringBootApplication;  
5 -  
6 -@SpringBootApplication  
7 -public class WeigengApplication {  
8 -  
9 - public static void main(String[] args) {  
10 - SpringApplication.run(WeigengApplication.class, args);  
11 - }  
12 -  
13 -}  
cloud/weigeng/src/main/java/com/sincere/weigeng/dao/UserDao.java
@@ -1,29 +0,0 @@ @@ -1,29 +0,0 @@
1 -package com.sincere.weigeng.dao;  
2 -  
3 -import com.sincere.weigeng.JiaoCai;  
4 -import com.sincere.weigeng.Knowledge;  
5 -import org.apache.ibatis.annotations.*;  
6 -import org.springframework.stereotype.Repository;  
7 -  
8 -import java.util.List;  
9 -  
10 -@Repository  
11 -@Mapper  
12 -public interface UserDao {  
13 -  
14 -// @Insert("insert into HS_StudentUpdateCard (Card,SchoolId,StudentCode,CustomerId,StudentType,UserType,ClassId,ClassName,IsNew,UpdateType,AddTime) " +  
15 -// "values (#{Card},#{SchoolId},#{StudentCode},#{CustomerId},#{StudentType},#{UserType},#{ClassId},#{ClassName},#{IsNew,#{UpdateType),#{AddTime}")  
16 -// void addStudentUpdate(@Param("Card") String card, @Param("SchoolId") int school_id, @Param("StudentCode") String studentCode, @Param("CustomerId") String CustomerId  
17 -// , @Param("StudentType") String StudentType, @Param("UserType") String UserType, @Param("ClassId") String ClassId, @Param("ClassName") String ClassName,  
18 -// @Param("IsNew") String IsNew, @Param("UpdateType") String UpdateType, @Param("AddTime") String AddTime);  
19 -  
20 -  
21 - @Select ("select * from ZY_YYKnowledge where AddTime >2019 ")  
22 - List<Knowledge> getKnowledge();  
23 -  
24 - @Select("select * from ZY_YYJiaoCai where ID >= 26")  
25 - List<JiaoCai> getJiaoCai();  
26 -  
27 - @Insert("insert into ZY_YYJiaoCaiAndKnowledg values(#{id},#{id1},#{i},#{i1})")  
28 - void addKnowAndJicaoCai(@Param("id") String id, @Param("id1") String id1, @Param("i") int i, @Param("i1") int i1);  
29 -}  
cloud/weigeng/src/main/resources/application.yaml
@@ -1,33 +0,0 @@ @@ -1,33 +0,0 @@
1 -server:  
2 - port: 1200  
3 -  
4 -spring:  
5 - application:  
6 - name: weigen-server  
7 - profiles:  
8 - active: dev  
9 - datasource:  
10 - username: szjxtuser  
11 - password: RQminVCJota3H1u8bBYH  
12 - url: jdbc:sqlserver://116.62.155.137:33419;database=SmartCampus  
13 - driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver  
14 -# datasource:  
15 -# username: szjxtuser  
16 -# password: RQminVCJota3H1u8bBYH  
17 -# url: jdbc:sqlserver://116.62.155.137:33419;database=SmartAdmin  
18 -  
19 -eureka:  
20 - instance:  
21 - hostname: localhost  
22 - lease-expiration-duration-in-seconds: 60  
23 - lease-renewal-interval-in-seconds: 10  
24 - client:  
25 - service-url:  
26 - # defaultZone: http://localhost:8761/eureka/  
27 - defaultZone: http://121.40.109.21:8761/eureka/,http://121.40.109.21:8762/eureka/  
28 -  
29 -  
30 -mybatis:  
31 - type-aliases-package: com.sincere.weigeng.dao  
32 - mapper-locations: classpath:mapper/*.xml  
33 - config-location: classpath:mybatis-config.xml  
cloud/weigeng/src/main/resources/mybatis-config.xml
@@ -1,35 +0,0 @@ @@ -1,35 +0,0 @@
1 -<?xml version="1.0" encoding="UTF-8"?>  
2 -<!DOCTYPE configuration  
3 - PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
4 - "http://mybatis.org/dtd/mybatis-3-config.dtd">  
5 -  
6 -<configuration>  
7 - <properties >  
8 - <property name="dialect" value="mysql" />  
9 - </properties>  
10 - <settings>  
11 - <!-- 这个配置使全局的映射器启用或禁用缓存。系统默认值是true,设置只是为了展示出来 -->  
12 - <setting name="cacheEnabled" value="true" />  
13 - <!-- 全局启用或禁用延迟加载。当禁用时,所有关联对象都会即时加载。 系统默认值是true,设置只是为了展示出来 -->  
14 - <setting name="lazyLoadingEnabled" value="true" />  
15 - <!-- 允许或不允许多种结果集从一个单独的语句中返回(需要适合的驱动)。 系统默认值是true,设置只是为了展示出来 -->  
16 - <setting name="multipleResultSetsEnabled" value="true" />  
17 - <!--使用列标签代替列名。不同的驱动在这方便表现不同。参考驱动文档或充分测试两种方法来决定所使用的驱动。 系统默认值是true,设置只是为了展示出来 -->  
18 - <setting name="useColumnLabel" value="true" />  
19 - <!--允许 JDBC 支持生成的键。需要适合的驱动。如果设置为 true 则这个设置强制生成的键被使用,尽管一些驱动拒绝兼容但仍然有效(比如  
20 - Derby)。 系统默认值是false,设置只是为了展示出来 -->  
21 - <setting name="useGeneratedKeys" value="false" />  
22 - <!--配置默认的执行器。SIMPLE 执行器没有什么特别之处。REUSE 执行器重用预处理语句。BATCH 执行器重用语句和批量更新 系统默认值是SIMPLE,设置只是为了展示出来 -->  
23 - <setting name="defaultExecutorType" value="SIMPLE" />  
24 - <!--设置超时时间,它决定驱动等待一个数据库响应的时间。 系统默认值是null,设置只是为了展示出来 -->  
25 - <setting name="defaultStatementTimeout" value="25000" />  
26 - </settings>  
27 -  
28 - <!--<typeAliases>-->  
29 - <!--<typeAlias alias="user" type="com.shunzhi.mqtt2kanban.bean.User"/>-->  
30 - <!--</typeAliases>-->  
31 -  
32 - <!--<mappers>-->  
33 - <!--<control resource="mybatis/control/UserMapper.xml"/>-->  
34 - <!--</mappers>-->  
35 -</configuration>  
cloud/weigeng/src/test/java/com/sincere/weigeng/WeigengApplicationTests.java
@@ -1,570 +0,0 @@ @@ -1,570 +0,0 @@
1 -package com.sincere.weigeng;  
2 -  
3 -import com.drew.imaging.jpeg.JpegMetadataReader;  
4 -import com.drew.imaging.jpeg.JpegProcessingException;  
5 -import com.drew.metadata.Directory;  
6 -import com.drew.metadata.Metadata;  
7 -import com.drew.metadata.Tag;  
8 -import com.drew.metadata.exif.ExifDirectory;  
9 -import com.sincere.weigeng.dao.UserDao;  
10 -import org.apache.poi.hssf.usermodel.HSSFCell;  
11 -import org.apache.poi.hssf.usermodel.HSSFRow;  
12 -import org.apache.poi.hssf.usermodel.HSSFSheet;  
13 -import org.apache.poi.hssf.usermodel.HSSFWorkbook;  
14 -import org.json.JSONArray;  
15 -import org.json.JSONObject;  
16 -import org.junit.Test;  
17 -import org.junit.runner.RunWith;  
18 -import org.springframework.beans.factory.annotation.Autowired;  
19 -import org.springframework.boot.test.context.SpringBootTest;  
20 -import org.springframework.http.HttpEntity;  
21 -import org.springframework.http.HttpHeaders;  
22 -import org.springframework.http.MediaType;  
23 -import org.springframework.http.ResponseEntity;  
24 -import org.springframework.test.context.junit4.SpringRunner;  
25 -import org.springframework.util.LinkedMultiValueMap;  
26 -import org.springframework.util.MultiValueMap;  
27 -import org.springframework.web.client.RestTemplate;  
28 -  
29 -import javax.imageio.ImageIO;  
30 -import java.awt.*;  
31 -import java.awt.image.BufferedImage;  
32 -import java.io.*;  
33 -import java.text.SimpleDateFormat;  
34 -import java.util.*;  
35 -import java.util.List;  
36 -  
37 -@RunWith(SpringRunner.class)  
38 -@SpringBootTest  
39 -public class WeigengApplicationTests {  
40 -  
41 - @Autowired  
42 - TestDao testDao;  
43 -  
44 - @Test  
45 - public void contextLoads() {  
46 -  
47 - try {  
48 - BufferedReader bufferedReader = new BufferedReader(new FileReader("C:\\Users\\taohandong\\Desktop\\json.txt"));  
49 - String content = null;  
50 - StringBuilder stringBuilder = new StringBuilder();  
51 - while ((content = bufferedReader.readLine()) != null) {  
52 - stringBuilder.append(content);  
53 - }  
54 -  
55 - JSONObject jsonObject = new JSONObject(stringBuilder.toString());  
56 - JSONObject data = jsonObject.optJSONObject("data");  
57 - JSONArray questions = data.optJSONArray("questions");  
58 - for (int i = 0; i < questions.length(); i++) {  
59 - JSONObject question = questions.optJSONObject(i);  
60 - String question_text = question.optString("question_text");  
61 - String answer = question.optString("answer");//答案  
62 - String explanation = question.optString("explanation");//解析  
63 -// <p><img src="/Web/Assets/ueditor/asp/upload/image/20190916/15686369926495741.png" title="image.png" alt="image.png"/></p>  
64 - explanation = "<p><img src=\"" + explanation + "\" title=\"image.png\" alt=\"image.png\"/></p>";  
65 - answer = getAnswer(answer);  
66 - System.out.println("question_text:" + question_text + "\r\nanswer:" + answer + "\r\nexplanation:" + explanation);  
67 - List<QuestionBean> questionBeans = testDao.getQuestions(question_text);//获取题目  
68 - for (int j = 0; j < questionBeans.size(); j++) {  
69 - QuestionBean questionBean = questionBeans.get(j);  
70 - testDao.updateQuestion(questionBean.getID(), answer, explanation);  
71 - }  
72 -// System.out.println(questionBeans.toString());  
73 - }  
74 -  
75 - } catch (FileNotFoundException e) {  
76 - e.printStackTrace();  
77 - } catch (IOException e) {  
78 - e.printStackTrace();  
79 - }  
80 -  
81 - }  
82 -  
83 - private String url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token=24.26683b650b73b63e0b08afa7ac36e880.2592000.1571310480.282335-15990462";  
84 -  
85 - private String getAnswer(String imgUrl) {  
86 - RestTemplate restTemplate = new RestTemplate();  
87 -  
88 - HttpHeaders headers = new HttpHeaders();  
89 - headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);  
90 -  
91 - MultiValueMap<String, String> multiValueMap = new LinkedMultiValueMap<>();  
92 -// multiValueMap.add("image", ImageUtils.ImageToBase64ByLocal("C:\\Users\\taohandong\\Desktop\\识别.png"));  
93 - multiValueMap.add("url", imgUrl);  
94 - HttpEntity<MultiValueMap> requestEntity = new HttpEntity<MultiValueMap>(multiValueMap,  
95 -  
96 - headers);  
97 -  
98 - ResponseEntity<String> result = restTemplate.postForEntity(url, requestEntity, String.class);  
99 -  
100 - JSONObject jsonObject = new JSONObject(result.getBody());  
101 -// System.out.println("result:"+result.getBody());  
102 - JSONArray words_result = jsonObject.optJSONArray("words_result");  
103 -// System.out.println("words_result:"+words_result);  
104 - StringBuilder stringBuilder = new StringBuilder();  
105 - if (words_result != null) {  
106 - for (int i = 0; i < words_result.length(); i++) {  
107 - String words = words_result.optJSONObject(i).optString("words");  
108 - stringBuilder.append(words + " ");  
109 - }  
110 - System.out.println("result:" + stringBuilder.toString());  
111 - }  
112 - return stringBuilder.toString().equals("") ? "B" : stringBuilder.toString();  
113 - }  
114 -  
115 - @Test  
116 - public void get() {  
117 -  
118 -// String url = "https://zujuan.21cnjy.com/api/question/list?xd=1&chid=3&categories=3877&knowledges=&question_channel_type=1&difficult_index=&exam_type=&kid_num=&grade_id=&sort_field=time&filterquestion=0&page=&_grade_id=&tree_type=category&version_id=&_=1568766250186";  
119 -// RestTemplate restTemplate = new RestTemplate();  
120 -// System.out.println(restTemplate.getForObject(url, String.class));  
121 - /*String createrUserId = "zy273789", time = "2019-10-08";  
122 - List<TestPaper> testPaperList = testDao.getTestPapers(createrUserId, time);  
123 - for (int i = 0; i < testPaperList.size(); i++) {  
124 - TestPaper testPaper = testPaperList.get(i);  
125 - int schoolId = 11;  
126 - testDao.addTestPaper("zy284782", testPaper.getQuestionIds(), testPaper.getStatus(), testPaper.getPublishTime(),  
127 - testPaper.getName(), testPaper.getIsRecommend(), testPaper.getState(), testPaper.getIntime(), schoolId + "");  
128 -  
129 - }*/  
130 -  
131 - }  
132 -  
133 -  
134 - /**  
135 - * 创建试卷  
136 - */  
137 - @Test  
138 - public void createTestPaper() {  
139 - String createUserId = "zy309728";  
140 - List<TestPaper> testPaperList = testDao.getTestPapers(createUserId, "2019-09-18 16:00:00");  
141 - System.out.println("testPaperList:" + testPaperList.toString());  
142 -  
143 - String addCreateUserId = "zy411337", SchoolId = "885";  
144 - /* for (int i = 1; i < testPaperList.size(); i++) {  
145 - TestPaper testPaper = testPaperList.get(i);  
146 - int ID = testPaper.getID();  
147 - //添加试卷  
148 - testDao.addTestPaper(addCreateUserId, testPaper.getQuestionIds(), testPaper.getStatus(), testPaper.getPublishTime()  
149 - , testPaper.getName(), testPaper.getIsRecommend(), testPaper.getState(), testPaper.getIntime(), SchoolId);  
150 -  
151 - //发布作业  
152 - testDao.addHomework(addCreateUserId, testPaper.getID(), testPaper.getName(), "50", "2019-09-20 18:00", "2", "2019-09-19 19:10", 1, 0, 1, "2019-09-19 19:10", 0, testPaper.getQuestionIds(), 0, 0);  
153 - }*/  
154 - /*String[] answers = new String[]{"A", "B", "C", "D"};  
155 - String QuestionType = "1";  
156 - String CorrectAnswer = "";  
157 - List<Homework> homeworkList = testDao.getHomeWork(addCreateUserId);  
158 - for (int i = 0; i < homeworkList.size(); i++) {  
159 - Homework homework = homeworkList.get(i);  
160 - String[] questionIds = homework.getQuestionIds().split(",");  
161 - for (int j = 0; j < questionIds.length; j++) {  
162 - String questionId = questionIds[j];  
163 - QuestionBean questionBean = testDao.getQues(questionId);  
164 - CorrectAnswer = questionBean.getCorrectAnswer();  
165 - String answer = answers[new Random().nextInt(4)];  
166 - String IsCorresct = answer.trim().equals(CorrectAnswer.trim()) ? "1" : "3";  
167 - testDao.StudentAnswer(questionId, answer, CorrectAnswer, QuestionType, IsCorresct, homework.getID());  
168 - }  
169 -  
170 - }*/  
171 -// if (ID <= 4191 && ID >= 4187) {  
172 - String classId = "36398";  
173 - List<Homework> homeworkList = testDao.getHomeWork(addCreateUserId);  
174 - for (int i = 0; i < homeworkList.size(); i++) {  
175 - String workId = homeworkList.get(i).getID();  
176 -// List<String> stuAnsIds = testDao.getStudentAnsIds(workId);  
177 -// String stuAnIds = stuAnsIds.toString().replace("[", "");  
178 -// stuAnIds = stuAnIds.replace("]", "");  
179 -  
180 - List<String> strings = testDao.getStudentIdsWithClassId(classId);  
181 - String stuIds = strings.toString().replace("[", "");  
182 - stuIds = stuIds.replace("]", "");  
183 - String[] stuStrings = stuIds.split(",");//学生id  
184 -  
185 - for (int j = 0; j < stuStrings.length; j++) {  
186 - String studentId = stuStrings[j];  
187 -  
188 - testDao.HomeworkReceive(workId, classId, studentId, "", "1", j + "", "2019-09-23 21:28:00", "2019-09-22 17:50:00", "1", j + "");  
189 - }  
190 -  
191 - }  
192 -  
193 - }  
194 -  
195 - @Autowired  
196 - UserDao userDao;  
197 -  
198 - @Test  
199 - public void doHomeWork() {  
200 - StudentBean studentBean = new StudentBean();  
201 - studentBean.setCard("9A1229A9");  
202 - studentBean.setSchool_id(110);  
203 - studentBean.setStudentCode("140881200710270056");  
204 - studentBean.setCustomerId("583912");  
205 -  
206 -// userDao.addStudentUpdate(studentBean.getCard(),studentBean.getSchool_id(),studentBean.getStudentCode(),studentBean.getCustomerId(),"1","2"  
207 -// ,"55640","2014级(08)班","0","1","2019-09-22 16:26");  
208 -  
209 - /* String QuestionId = "21656, 21657, 21658, 21659, 21753, 21706, 21724, 21796, 21797, 21798";  
210 - String Answer = "";  
211 - String CorrectAnswer = "";  
212 - String QuestionType = "1";  
213 - String IsCorresct = "";  
214 - String WorkID = "4198";  
215 - String[] questionIds = QuestionId.split(",");  
216 - for (int i = 0; i < questionIds.length; i++) {  
217 - String questionId = questionIds[i];  
218 - QuestionBean questionBean = testDao.getQues(questionId);  
219 - CorrectAnswer = questionBean.getCorrectAnswer();  
220 - Answer = "B";  
221 - IsCorresct = Answer.trim().equals(CorrectAnswer.trim()) ? "1" : "3";  
222 - testDao.StudentAnswer(questionId, Answer, CorrectAnswer, QuestionType, IsCorresct, WorkID);  
223 - }*/  
224 -  
225 - }  
226 -  
227 -  
228 - @Test  
229 - public void HomeworkRec() {  
230 - String WorkID = "4198";  
231 - String ClassId = "";  
232 - //查询学生id  
233 - List<String> list = testDao.getStudentIds("4172");  
234 - String StudentIds = list.toString().replace("[", "");  
235 - StudentIds = StudentIds.replace("]", "");  
236 - System.out.println("StudentIds:" + StudentIds);  
237 - String StudnetAnswerIds = testDao.getStudentAnsIds(WorkID).toString().replace("[", "");  
238 - StudnetAnswerIds = StudnetAnswerIds.replace("]", "");  
239 - String[] studentIds = StudentIds.split(",");  
240 - for (int i = 0; i < studentIds.length; i++) {  
241 - String studentId = studentIds[i];  
242 - String finishTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());  
243 - testDao.HomeworkReceive(WorkID, ClassId, studentId, StudnetAnswerIds, "1", i + "", "2019-09-19 16:50", finishTime  
244 - , "1", "" + i);  
245 - }  
246 - }  
247 -  
248 - @Test  
249 - public void getQIds() {  
250 -  
251 - List<Knowledge> knowledges = userDao.getKnowledge();  
252 - System.out.println("knowledges:" + knowledges.toString());  
253 -  
254 - List<JiaoCai> jiaoCais = userDao.getJiaoCai();  
255 - System.out.println("jiaoCais:" + jiaoCais.toString());  
256 -  
257 - for (int i = 0; i < 1; i++) {  
258 - JiaoCai jiaoCai = jiaoCais.get(i);  
259 - String SubjectId = jiaoCai.getSubjectId();  
260 - for (int j = 0; j < knowledges.size(); j++) {  
261 - Knowledge knowledge = knowledges.get(j);  
262 - if (SubjectId.equals(knowledge.getSubjectId())) {  
263 - userDao.addKnowAndJicaoCai(jiaoCai.getID(), knowledge.getId(), 0, 1);  
264 - }  
265 - }  
266 -  
267 - }  
268 -  
269 - }  
270 -  
271 - @Test  
272 - public void tongji() {  
273 -  
274 - String[] answers = new String[]{"A", "B", "C", "D", "A", "A"};  
275 - String createUserId = "zy411337";  
276 - List<Homework> homeworkList = testDao.getHomeWork(createUserId);//获取布置的作业  
277 - System.out.println("homeworkList:" + homeworkList);  
278 - for (int m = 0; m < homeworkList.size(); m++) {  
279 - String WorkId = homeworkList.get(m).getID();  
280 - Map<String, List<String>> mapRecIDs = new HashMap<>();  
281 - System.out.println("workId:" + WorkId);  
282 -// List<String> queIds = testDao.getStuAnsIds(WorkId);  
283 -// String questionIds = queIds.toString().replace("[", "");  
284 -// questionIds = questionIds.replace("]", "");  
285 -  
286 - //获取正确答案  
287 -// List<String> correct = testDao.correctAns(WorkId);  
288 -// String corrStr = correct.toString().replace("[", "");  
289 -// corrStr = corrStr.replace("]", "");  
290 -// String[] correctAnser = corrStr.split(",");  
291 -  
292 - String questionIds = testDao.getQuestionIds(WorkId);  
293 -  
294 - //获取答题学生数量  
295 - List<String> homeworkReceiveIds = testDao.get_HomeworkReceive(WorkId, "12012");  
296 - System.out.println("homeworkReceiveIds:" + homeworkReceiveIds.size());  
297 - for (int j = 0; j < homeworkReceiveIds.size(); j++) {//接收学生数量  
298 -  
299 - String[] quesStirngs = questionIds.split(",");  
300 - System.out.println("quesStirngs:" + quesStirngs.length);  
301 - for (int i = 0; i < quesStirngs.length; i++) {  
302 - String questionId = quesStirngs[i];  
303 - String CorrectAnswer = testDao.getCorrectAnswer(questionId);  
304 - int randow = new Random().nextInt(6);  
305 - String answer = null;  
306 - String isCorrsct = "";  
307 - if (randow == 0 || randow == 1 || randow == 2 || randow == 3 || randow == 4) {  
308 - answer = CorrectAnswer.trim();  
309 - isCorrsct = "1";  
310 - } else {  
311 - answer = answers[randow];  
312 - isCorrsct = "3";  
313 - }  
314 - //插入一条新的记录  
315 - testDao.addStudentAnswer(quesStirngs[i], answer.trim(), "", CorrectAnswer.trim(), "1", "", isCorrsct, "", "", WorkId);  
316 - }  
317 - //获取最新的十条记录  
318 - List<String> idLists = testDao.getTopIDs(WorkId, questionIds.split(",").length);  
319 - System.out.println("idLists:" + idLists.toString());  
320 - mapRecIDs.put(j + "", idLists);  
321 - }  
322 -// System.out.println("mapRecIDs:" + mapRecIDs.toString() + " 0:" + mapRecIDs.get("0").toString().replace("[", ""));  
323 -  
324 - for (int i = 0; i < homeworkReceiveIds.size(); i++) {  
325 - String homeRecId = homeworkReceiveIds.get(i);  
326 - System.out.println("i:" + i);  
327 - String ansIds = mapRecIDs.get(i + "").toString().replace("[", "");  
328 - ansIds = ansIds.replace("]", "");  
329 - testDao.updateHomeWork(ansIds, homeRecId);  
330 - }  
331 -  
332 - List<HomeworkReceive> homRecIDs = testDao.get_HomeworkRec(WorkId);  
333 -  
334 - Map<String, String> stuMap = new HashMap<>();  
335 - for (int i = 0; i < homRecIDs.size(); i++) {  
336 - HomeworkReceive homeworkReceive = homRecIDs.get(i);  
337 -  
338 - String studentId = homeworkReceive.getStudentId();  
339 -  
340 - String studentName = testDao.getStudentName(studentId);  
341 -  
342 - String studnetAnswerIds = homeworkReceive.getStudnetAnswerIds();  
343 -  
344 - String[] stuIds = studnetAnswerIds.split(",");  
345 -  
346 - String isC = "";  
347 - for (int j = 0; j < stuIds.length; j++) {  
348 - String id = stuIds[j];  
349 - int idCorrect = testDao.getIsCorrect(id);  
350 - if (idCorrect == 1) {  
351 - isC += "1 ";  
352 - } else if (idCorrect == 3) {  
353 - isC += "0 ";  
354 - }  
355 - }  
356 - stuMap.put(studentName, isC);  
357 - System.out.println("" + studentName + " " + isC);  
358 -  
359 - }  
360 -  
361 - }  
362 - }  
363 -  
364 - private void writeToExcel(HSSFWorkbook workbook, String HomeworkTitle, Map<String, String[]> correctAns, String[] names, String title) {  
365 - //第二部,在workbook中创建一个sheet对应excel中的sheet  
366 - HSSFSheet sheet = workbook.createSheet(HomeworkTitle);  
367 - //第三部,在sheet表中添加表头第0行,老版本的poi对sheet的行列有限制  
368 - HSSFRow row = sheet.createRow(0);  
369 - //第四步,创建单元格,设置表头  
370 - HSSFCell cell = null;  
371 - for (int i = 0; i < correctAns.get(names[0]).length; i++) {  
372 - cell = row.createCell(i);  
373 - cell.setCellValue("第" + (i + 1) + "");  
374 - }  
375 -  
376 - //第五步,写入数据  
377 - for (int i = 0; i < names.length; i++) {  
378 -  
379 -// String oneData =correctAns[i];//姓名对应的正确率  
380 - HSSFRow row1 = sheet.createRow(i + 1);  
381 - String[] corrects = correctAns.get(names[i]);  
382 - System.out.println("names:" + names[i]);  
383 - for (int j = 0; j < corrects.length; j++) {  
384 - //创建单元格设值  
385 - row1.createCell(j).setCellValue(corrects[j]);  
386 - }  
387 - row1.createCell(corrects.length).setCellValue(names[i]);  
388 - }  
389 -  
390 - //将文件保存到指定的位置  
391 - try {  
392 - File file = new File("C:\\Users\\taohandong\\Desktop\\文澜\\"+title+".xls");  
393 - if (!file.exists())file.createNewFile();  
394 - FileOutputStream fos = new FileOutputStream(file);  
395 - workbook.write(fos);  
396 - System.out.println("写入成功");  
397 - fos.close();  
398 - } catch (IOException e) {  
399 - e.printStackTrace();  
400 - }  
401 -  
402 - }  
403 -  
404 -  
405 - @Test  
406 - public void getStu() {  
407 - //第一步,创建一个workbook对应一个excel文件  
408 - HSSFWorkbook workbook = new HSSFWorkbook();  
409 -  
410 - String createUserId = "zy595910";  
411 - String title="作业";  
412 - //ZY_Homework表取出要统计的作业  
413 - String WorkId = "4408";  
414 - String workName = testDao.getWorkName(WorkId);  
415 -  
416 - //ZY_HomeworkReceive 表获取学生作业答题情况;  
417 - List<HomeworkReceive> homRecIDs = testDao.get_HomeworkRec(WorkId);  
418 -  
419 - Map<String, String[]> stuMap = new HashMap<>();  
420 - String[] names = new String[homRecIDs.size()];  
421 - String[] isCorrect = null;  
422 - for (int i = 0; i < homRecIDs.size(); i++) {  
423 - HomeworkReceive homeworkReceive = homRecIDs.get(i);  
424 -  
425 - String studentId = homeworkReceive.getStudentId();  
426 -  
427 - String studentName = testDao.getStudentName(studentId);  
428 -  
429 - String studnetAnswerIds = homeworkReceive.getStudnetAnswerIds();  
430 -// System.out.println("studnetAnswerIds:"+studnetAnswerIds+" WorkId:"+WorkId + " StudentId:"+studentId);  
431 - if (null != studnetAnswerIds) {  
432 - names[i] = studentName;  
433 - String[] stuIds = studnetAnswerIds.split(",");  
434 - isCorrect = new String[stuIds.length];  
435 - String isC = "";  
436 - for (int j = 0; j < stuIds.length; j++) {  
437 - String id = stuIds[j];  
438 - System.out.println("IsCorrectId:" + id);  
439 - //ZY_StudentAnswer表获取题目是否正确  
440 - int idCorrect = testDao.getIsCorrect(id);  
441 - if (idCorrect == 1) {  
442 - isC += "1 ";  
443 - isCorrect[j] = "1";  
444 - } else if (idCorrect == 3) {  
445 - isC += "0 ";  
446 - isCorrect[j] = "0";  
447 - }  
448 - }  
449 - stuMap.put(studentName, isCorrect);  
450 - System.out.println("" + studentName + " " + isC);  
451 - }  
452 - }  
453 - if (names!=null&&stuMap.size()>0)  
454 - writeToExcel(workbook, workName, stuMap, names,title);  
455 -// System.out.println("stuMap:" + stuMap.toString());  
456 - }  
457 -  
458 -  
459 - /**  
460 - * 旋转图片  
461 - */  
462 - @Test  
463 - public void trnImgs() {  
464 -  
465 - File file = new File("C:\\TaoHandong\\copy\\school479\\StudentCompressed");  
466 - File[] files = file.listFiles();  
467 -  
468 - List<StudentInfo> studentInfos = testDao.getStudents(479);  
469 -  
470 - List<StudentInfo> studentInfoList = new ArrayList<>();  
471 -  
472 - for (int i = 0; i < studentInfos.size(); i++) {  
473 - StudentInfo studentInfo = studentInfos.get(i);  
474 -  
475 - boolean isHas = false;  
476 - for (int j = 0; j < files.length; j++) {  
477 - File img = files[j];  
478 - String imgName = img.getName().split("\\.")[0];  
479 -  
480 - if (imgName.equals(studentInfo.getStudentcode())) {  
481 - isHas = true;  
482 - break;  
483 - }  
484 -  
485 - }  
486 -  
487 - if (!isHas) {  
488 - studentInfoList.add(studentInfo);  
489 - }  
490 -  
491 - }  
492 -  
493 - System.out.println("studentInfoList:" + studentInfoList);  
494 - //第一步,创建一个workbook对应一个excel文件  
495 - HSSFWorkbook workbook = new HSSFWorkbook();  
496 - //第二部,在workbook中创建一个sheet对应excel中的sheet  
497 - HSSFSheet sheet = workbook.createSheet("缺少的学生人脸");  
498 - //第三部,在sheet表中添加表头第0行,老版本的poi对sheet的行列有限制  
499 - HSSFRow row = sheet.createRow(0);  
500 -  
501 - String[] titles = new String[]{"姓名", "班级", "学籍号", "号码"};  
502 - //第四步,创建单元格,设置表头  
503 - HSSFCell cell = null;  
504 - for (int i = 0; i < titles.length; i++) {  
505 - cell = row.createCell(i);  
506 - cell.setCellValue(titles[i]);  
507 - }  
508 -  
509 - //第五步,写入数据  
510 - for (int i = 0; i < studentInfoList.size(); i++) {  
511 - HSSFRow row1 = sheet.createRow(i + 1);  
512 - for (int j = 0; j < titles.length; j++) {  
513 - String value = studentInfoList.get(i).getClass_name();  
514 - switch (j) {  
515 - case 0:  
516 - value = studentInfoList.get(i).getName();  
517 - break;  
518 - case 1:  
519 - value = studentInfoList.get(i).getClass_name();  
520 - break;  
521 - case 2:  
522 - value = studentInfoList.get(i).getStudentcode();  
523 - break;  
524 - case 3:  
525 - value = studentInfoList.get(i).getParentMobile();  
526 - break;  
527 - }  
528 - //创建单元格设值  
529 - row1.createCell(j).setCellValue(value);  
530 - }  
531 - }  
532 -  
533 - //将文件保存到指定的位置  
534 - try {  
535 - FileOutputStream fos = new FileOutputStream("C:\\Users\\taohandong\\Desktop\\result.xls");  
536 - workbook.write(fos);  
537 - System.out.println("写入成功");  
538 - fos.close();  
539 - } catch (IOException e) {  
540 - e.printStackTrace();  
541 - }  
542 -  
543 - /* File file = new File("C:\\TaoHandong\\copy\\School1030\\Student");  
544 -  
545 - File outFile = new File("C:\\TaoHandong\\copy\\School1030\\Student1");  
546 -  
547 - if (!outFile.exists()) outFile.mkdirs();  
548 -  
549 - File[] files = file.listFiles();  
550 - System.out.println("files:" + files.length);  
551 - BufferedImage bufferedImage;  
552 - for (int i = 0; i < files.length; i++) {  
553 - File img = files[i];  
554 - int ang = ImageUtils.getImgRotateAngle(img.getAbsolutePath());  
555 - System.out.println(img.getName() + " ang:" + ang);  
556 -// try {  
557 -// bufferedImage = ImageIO.read(img);  
558 -// moveImg(bufferedImage,img,outFile);  
559 -// } catch (IOException e) {  
560 -// e.printStackTrace();  
561 -// }  
562 -  
563 - }*/  
564 -  
565 - }  
566 -  
567 - private List<String> name = new ArrayList<>();  
568 -  
569 -  
570 -}