commit 6acefc84279a62c3d8e42da135e41bb99be662db
Author: lijiazhuo <13787924+lijiazhuosky@user.noreply.gitee.com>
Date: Fri Oct 17 14:30:23 2025 +0800
first commit
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..a2a3040
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,31 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**
+!**/src/test/**
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+
+### VS Code ###
+.vscode/
diff --git a/.mvn/wrapper/MavenWrapperDownloader.java b/.mvn/wrapper/MavenWrapperDownloader.java
new file mode 100644
index 0000000..74f4de4
--- /dev/null
+++ b/.mvn/wrapper/MavenWrapperDownloader.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright 2012-2019 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import java.net.*;
+import java.io.*;
+import java.nio.channels.*;
+import java.util.Properties;
+
+public class MavenWrapperDownloader {
+
+ private static final String WRAPPER_VERSION = "0.5.5";
+ /**
+ * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
+ */
+ private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
+
+ /**
+ * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
+ * use instead of the default one.
+ */
+ private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
+ ".mvn/wrapper/maven-wrapper.properties";
+
+ /**
+ * Path where the maven-wrapper.jar will be saved to.
+ */
+ private static final String MAVEN_WRAPPER_JAR_PATH =
+ ".mvn/wrapper/maven-wrapper.jar";
+
+ /**
+ * Name of the property which should be used to override the default download url for the wrapper.
+ */
+ private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
+
+ public static void main(String args[]) {
+ System.out.println("- Downloader started");
+ File baseDirectory = new File(args[0]);
+ System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
+
+ // If the maven-wrapper.properties exists, read it and check if it contains a custom
+ // wrapperUrl parameter.
+ File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
+ String url = DEFAULT_DOWNLOAD_URL;
+ if (mavenWrapperPropertyFile.exists()) {
+ FileInputStream mavenWrapperPropertyFileInputStream = null;
+ try {
+ mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
+ Properties mavenWrapperProperties = new Properties();
+ mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
+ url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
+ } catch (IOException e) {
+ System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
+ } finally {
+ try {
+ if (mavenWrapperPropertyFileInputStream != null) {
+ mavenWrapperPropertyFileInputStream.close();
+ }
+ } catch (IOException e) {
+ // Ignore ...
+ }
+ }
+ }
+ System.out.println("- Downloading from: " + url);
+
+ File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
+ if (!outputFile.getParentFile().exists()) {
+ if (!outputFile.getParentFile().mkdirs()) {
+ System.out.println(
+ "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
+ }
+ }
+ System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
+ try {
+ downloadFileFromURL(url, outputFile);
+ System.out.println("Done");
+ System.exit(0);
+ } catch (Throwable e) {
+ System.out.println("- Error downloading");
+ e.printStackTrace();
+ System.exit(1);
+ }
+ }
+
+ private static void downloadFileFromURL(String urlString, File destination) throws Exception {
+ if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
+ String username = System.getenv("MVNW_USERNAME");
+ char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
+ Authenticator.setDefault(new Authenticator() {
+ @Override
+ protected PasswordAuthentication getPasswordAuthentication() {
+ return new PasswordAuthentication(username, password);
+ }
+ });
+ }
+ URL website = new URL(urlString);
+ ReadableByteChannel rbc;
+ rbc = Channels.newChannel(website.openStream());
+ FileOutputStream fos = new FileOutputStream(destination);
+ fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
+ fos.close();
+ rbc.close();
+ }
+
+}
diff --git a/.mvn/wrapper/maven-wrapper.jar b/.mvn/wrapper/maven-wrapper.jar
new file mode 100644
index 0000000..0d5e649
Binary files /dev/null and b/.mvn/wrapper/maven-wrapper.jar differ
diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties
new file mode 100644
index 0000000..7d59a01
--- /dev/null
+++ b/.mvn/wrapper/maven-wrapper.properties
@@ -0,0 +1,2 @@
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.2/apache-maven-3.6.2-bin.zip
+wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..3651129
--- /dev/null
+++ b/README.md
@@ -0,0 +1,20 @@
+项目概述:
+此项目为治安审查项目,主要为获取纪元数据传送给警察叔叔,主要是为驾驶员的个人治安关系审查
+
+对接人:
+葛梦伟 (如果需要接业务逻辑上的问题请联系葛梦伟)
+
+
+项目主要为定时
+
+
+以下为相关任务:
+D:\taxi\TaxiGit\zhianshencha\src\main\java\com\example\sso\schedule\DaoChuTwo.java
+此任务为周五的汇总,把所有人员传送给警察
+D:\taxi\TaxiGit\zhianshencha\src\main\java\com\example\sso\schedule\DaoChuOne.java
+D:\taxi\TaxiGit\zhianshencha\src\main\java\com\example\sso\schedule\DaoChuOne.java
+上述任务为周一和2-5的推送,只拿前三天或者前一天的人员推送给警察
+
+
+
+
diff --git a/mvnw b/mvnw
new file mode 100644
index 0000000..822f699
--- /dev/null
+++ b/mvnw
@@ -0,0 +1,322 @@
+#!/bin/sh
+# ----------------------------------------------------------------------------
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+# ----------------------------------------------------------------------------
+
+# ----------------------------------------------------------------------------
+# Maven2 Start Up Batch script
+#
+# Required ENV vars:
+# ------------------
+# JAVA_HOME - location of a JDK home dir
+#
+# Optional ENV vars
+# -----------------
+# M2_HOME - location of maven2's installed home dir
+# MAVEN_OPTS - parameters passed to the Java VM when running Maven
+# e.g. to debug Maven itself, use
+# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+# ----------------------------------------------------------------------------
+
+if [ -z "$MAVEN_SKIP_RC" ]; then
+
+ if [ -f /etc/mavenrc ]; then
+ . /etc/mavenrc
+ fi
+
+ if [ -f "$HOME/.mavenrc" ]; then
+ . "$HOME/.mavenrc"
+ fi
+
+fi
+
+# OS specific support. $var _must_ be set to either true or false.
+cygwin=false
+darwin=false
+mingw=false
+case "$(uname)" in
+CYGWIN*) cygwin=true ;;
+MINGW*) mingw=true ;;
+Darwin*)
+ darwin=true
+ # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
+ # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
+ if [ -z "$JAVA_HOME" ]; then
+ if [ -x "/usr/libexec/java_home" ]; then
+ export JAVA_HOME="$(/usr/libexec/java_home)"
+ else
+ export JAVA_HOME="/Library/Java/Home"
+ fi
+ fi
+ ;;
+esac
+
+if [ -z "$JAVA_HOME" ]; then
+ if [ -r /etc/gentoo-release ]; then
+ JAVA_HOME=$(java-config --jre-home)
+ fi
+fi
+
+if [ -z "$M2_HOME" ]; then
+ ## resolve links - $0 may be a link to maven's home
+ PRG="$0"
+
+ # need this for relative symlinks
+ while [ -h "$PRG" ]; do
+ ls=$(ls -ld "$PRG")
+ link=$(expr "$ls" : '.*-> \(.*\)$')
+ if expr "$link" : '/.*' >/dev/null; then
+ PRG="$link"
+ else
+ PRG="$(dirname "$PRG")/$link"
+ fi
+ done
+
+ saveddir=$(pwd)
+
+ M2_HOME=$(dirname "$PRG")/..
+
+ # make it fully qualified
+ M2_HOME=$(cd "$M2_HOME" && pwd)
+
+ cd "$saveddir"
+ # echo Using m2 at $M2_HOME
+fi
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched
+if $cygwin; then
+ [ -n "$M2_HOME" ] &&
+ M2_HOME=$(cygpath --unix "$M2_HOME")
+ [ -n "$JAVA_HOME" ] &&
+ JAVA_HOME=$(cygpath --unix "$JAVA_HOME")
+ [ -n "$CLASSPATH" ] &&
+ CLASSPATH=$(cygpath --path --unix "$CLASSPATH")
+fi
+
+# For Mingw, ensure paths are in UNIX format before anything is touched
+if $mingw; then
+ [ -n "$M2_HOME" ] &&
+ M2_HOME="$( (
+ cd "$M2_HOME"
+ pwd
+ ))"
+ [ -n "$JAVA_HOME" ] &&
+ JAVA_HOME="$( (
+ cd "$JAVA_HOME"
+ pwd
+ ))"
+fi
+
+if [ -z "$JAVA_HOME" ]; then
+ javaExecutable="$(which javac)"
+ if [ -n "$javaExecutable" ] && ! [ "$(expr \"$javaExecutable\" : '\([^ ]*\)')" = "no" ]; then
+ # readlink(1) is not available as standard on Solaris 10.
+ readLink=$(which readlink)
+ if [ ! $(expr "$readLink" : '\([^ ]*\)') = "no" ]; then
+ if $darwin; then
+ javaHome="$(dirname \"$javaExecutable\")"
+ javaExecutable="$(cd \"$javaHome\" && pwd -P)/javac"
+ else
+ javaExecutable="$(readlink -f \"$javaExecutable\")"
+ fi
+ javaHome="$(dirname \"$javaExecutable\")"
+ javaHome=$(expr "$javaHome" : '\(.*\)/bin')
+ JAVA_HOME="$javaHome"
+ export JAVA_HOME
+ fi
+ fi
+fi
+
+if [ -z "$JAVACMD" ]; then
+ if [ -n "$JAVA_HOME" ]; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ]; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ else
+ JAVACMD="$(which java)"
+ fi
+fi
+
+if [ ! -x "$JAVACMD" ]; then
+ echo "Error: JAVA_HOME is not defined correctly." >&2
+ echo " We cannot execute $JAVACMD" >&2
+ exit 1
+fi
+
+if [ -z "$JAVA_HOME" ]; then
+ echo "Warning: JAVA_HOME environment variable is not set."
+fi
+
+CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
+
+# traverses directory structure from process work directory to filesystem root
+# first directory with .mvn subdirectory is considered project base directory
+find_maven_basedir() {
+
+ if [ -z "$1" ]; then
+ echo "Path not specified to find_maven_basedir"
+ return 1
+ fi
+
+ basedir="$1"
+ wdir="$1"
+ while [ "$wdir" != '/' ]; do
+ if [ -d "$wdir"/.mvn ]; then
+ basedir=$wdir
+ break
+ fi
+ # workaround for JBEAP-8937 (on Solaris 10/Sparc)
+ if [ -d "${wdir}" ]; then
+ wdir=$(
+ cd "$wdir/.."
+ pwd
+ )
+ fi
+ # end of workaround
+ done
+ echo "${basedir}"
+}
+
+# concatenates all lines of a file
+concat_lines() {
+ if [ -f "$1" ]; then
+ echo "$(tr -s '\n' ' ' <"$1")"
+ fi
+}
+
+BASE_DIR=$(find_maven_basedir "$(pwd)")
+if [ -z "$BASE_DIR" ]; then
+ exit 1
+fi
+
+##########################################################################################
+# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
+# This allows using the maven wrapper in projects that prohibit checking in binary data.
+##########################################################################################
+if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo "Found .mvn/wrapper/maven-wrapper.jar"
+ fi
+else
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
+ fi
+ if [ -n "$MVNW_REPOURL" ]; then
+ jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
+ else
+ jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
+ fi
+ while IFS="=" read key value; do
+ case "$key" in wrapperUrl)
+ jarUrl="$value"
+ break
+ ;;
+ esac
+ done <"$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo "Downloading from: $jarUrl"
+ fi
+ wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
+ if $cygwin; then
+ wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath")
+ fi
+
+ if command -v wget >/dev/null; then
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo "Found wget ... using wget"
+ fi
+ if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
+ wget "$jarUrl" -O "$wrapperJarPath"
+ else
+ wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
+ fi
+ elif command -v curl >/dev/null; then
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo "Found curl ... using curl"
+ fi
+ if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
+ curl -o "$wrapperJarPath" "$jarUrl" -f
+ else
+ curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
+ fi
+
+ else
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo "Falling back to using Java to download"
+ fi
+ javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
+ # For Cygwin, switch paths to Windows format before running javac
+ if $cygwin; then
+ javaClass=$(cygpath --path --windows "$javaClass")
+ fi
+ if [ -e "$javaClass" ]; then
+ if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo " - Compiling MavenWrapperDownloader.java ..."
+ fi
+ # Compiling the Java class
+ ("$JAVA_HOME/bin/javac" "$javaClass")
+ fi
+ if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
+ # Running the downloader
+ if [ "$MVNW_VERBOSE" = true ]; then
+ echo " - Running MavenWrapperDownloader.java ..."
+ fi
+ ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
+ fi
+ fi
+ fi
+fi
+##########################################################################################
+# End of extension
+##########################################################################################
+
+export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
+if [ "$MVNW_VERBOSE" = true ]; then
+ echo $MAVEN_PROJECTBASEDIR
+fi
+MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin; then
+ [ -n "$M2_HOME" ] &&
+ M2_HOME=$(cygpath --path --windows "$M2_HOME")
+ [ -n "$JAVA_HOME" ] &&
+ JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME")
+ [ -n "$CLASSPATH" ] &&
+ CLASSPATH=$(cygpath --path --windows "$CLASSPATH")
+ [ -n "$MAVEN_PROJECTBASEDIR" ] &&
+ MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR")
+fi
+
+# Provide a "standardized" way to retrieve the CLI args that will
+# work with both Windows and non-Windows executions.
+MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
+export MAVEN_CMD_LINE_ARGS
+
+WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
+
+exec "$JAVACMD" \
+ $MAVEN_OPTS \
+ -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
+ "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
+ ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/mvnw.cmd b/mvnw.cmd
new file mode 100644
index 0000000..84d60ab
--- /dev/null
+++ b/mvnw.cmd
@@ -0,0 +1,182 @@
+@REM ----------------------------------------------------------------------------
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements. See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership. The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License. You may obtain a copy of the License at
+@REM
+@REM https://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied. See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+@REM ----------------------------------------------------------------------------
+
+@REM ----------------------------------------------------------------------------
+@REM Maven2 Start Up Batch script
+@REM
+@REM Required ENV vars:
+@REM JAVA_HOME - location of a JDK home dir
+@REM
+@REM Optional ENV vars
+@REM M2_HOME - location of maven2's installed home dir
+@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
+@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
+@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
+@REM e.g. to debug Maven itself, use
+@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+@REM ----------------------------------------------------------------------------
+
+@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
+@echo off
+@REM set title of command window
+title %0
+@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
+@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
+
+@REM set %HOME% to equivalent of $HOME
+if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
+
+@REM Execute a user defined script before this one
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
+@REM check for pre script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
+if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
+:skipRcPre
+
+@setlocal
+
+set ERROR_CODE=0
+
+@REM To isolate internal variables from possible post scripts, we use another setlocal
+@setlocal
+
+@REM ==== START VALIDATION ====
+if not "%JAVA_HOME%" == "" goto OkJHome
+
+echo.
+echo Error: JAVA_HOME not found in your environment. >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+:OkJHome
+if exist "%JAVA_HOME%\bin\java.exe" goto init
+
+echo.
+echo Error: JAVA_HOME is set to an invalid directory. >&2
+echo JAVA_HOME = "%JAVA_HOME%" >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+@REM ==== END VALIDATION ====
+
+:init
+
+@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
+@REM Fallback to current working directory if not found.
+
+set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
+IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
+
+set EXEC_DIR=%CD%
+set WDIR=%EXEC_DIR%
+:findBaseDir
+IF EXIST "%WDIR%"\.mvn goto baseDirFound
+cd ..
+IF "%WDIR%"=="%CD%" goto baseDirNotFound
+set WDIR=%CD%
+goto findBaseDir
+
+:baseDirFound
+set MAVEN_PROJECTBASEDIR=%WDIR%
+cd "%EXEC_DIR%"
+goto endDetectBaseDir
+
+:baseDirNotFound
+set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
+cd "%EXEC_DIR%"
+
+:endDetectBaseDir
+
+IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
+
+@setlocal EnableExtensions EnableDelayedExpansion
+for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
+@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
+
+:endReadAdditionalConfig
+
+SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
+set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
+set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
+
+set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
+
+FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
+ IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
+)
+
+@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
+@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
+if exist %WRAPPER_JAR% (
+ if "%MVNW_VERBOSE%" == "true" (
+ echo Found %WRAPPER_JAR%
+ )
+) else (
+ if not "%MVNW_REPOURL%" == "" (
+ SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
+ )
+ if "%MVNW_VERBOSE%" == "true" (
+ echo Couldn't find %WRAPPER_JAR%, downloading it ...
+ echo Downloading from: %DOWNLOAD_URL%
+ )
+
+ powershell -Command "&{"^
+ "$webclient = new-object System.Net.WebClient;"^
+ "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
+ "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
+ "}"^
+ "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
+ "}"
+ if "%MVNW_VERBOSE%" == "true" (
+ echo Finished downloading %WRAPPER_JAR%
+ )
+)
+@REM End of extension
+
+@REM Provide a "standardized" way to retrieve the CLI args that will
+@REM work with both Windows and non-Windows executions.
+set MAVEN_CMD_LINE_ARGS=%*
+
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
+if ERRORLEVEL 1 goto error
+goto end
+
+:error
+set ERROR_CODE=1
+
+:end
+@endlocal & set ERROR_CODE=%ERROR_CODE%
+
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
+@REM check for post script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
+if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
+:skipRcPost
+
+@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
+if "%MAVEN_BATCH_PAUSE%" == "on" pause
+
+if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
+
+exit /B %ERROR_CODE%
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..c0028dd
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,82 @@
+
+
+ 4.0.0
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.2.1.RELEASE
+
+
+ com.example
+ sso
+ 0.0.1-SNAPSHOT
+ jar
+ sso
+ Demo project for Spring Boot
+
+
+ 1.8
+
+
+
+
+ com.auth0
+ java-jwt
+ 3.8.1
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+ true
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+ org.apache.httpcomponents
+ httpclient
+ 4.5.13
+
+
+ org.apache.httpcomponents
+ httpmime
+ 4.5.8
+
+
+
+ com.alibaba
+ fastjson
+ 1.2.45
+
+
+ org.apache.poi
+ poi-ooxml
+ 5.0.0
+
+
+
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
+
diff --git a/src/main/java/com/example/sso/SsoApplication.java b/src/main/java/com/example/sso/SsoApplication.java
new file mode 100644
index 0000000..6b7596b
--- /dev/null
+++ b/src/main/java/com/example/sso/SsoApplication.java
@@ -0,0 +1,18 @@
+package com.example.sso;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.annotation.EnableScheduling;
+
+@SpringBootApplication
+@EnableScheduling
+@EnableAsync
+
+public class SsoApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(SsoApplication.class, args);
+ }
+
+}
diff --git a/src/main/java/com/example/sso/controller/D.java b/src/main/java/com/example/sso/controller/D.java
new file mode 100644
index 0000000..99a1d2d
--- /dev/null
+++ b/src/main/java/com/example/sso/controller/D.java
@@ -0,0 +1,70 @@
+/*
+package com.example.sso.controller;
+
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.util.QiWeiUtil;
+import org.apache.http.HttpEntity;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.ContentType;
+import org.apache.http.entity.mime.MultipartEntityBuilder;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.File;
+
+@RestController
+public class D {
+ @PostMapping("/test")
+ public static String O() {
+ String tokencreat = QiWeiUtil.newtoken();
+ JSONObject jsonObject2 = JSON.parseObject(tokencreat);
+ String string = jsonObject2.getString("access_token");
+ System.out.println(string);
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("mobile","13370189977");
+ String jsonString = jsonObject.toJSONString();
+
+ String listw = QiWeiUtil.phone(jsonString,string);
+ return listw;
+ }
+
+ @PostMapping("/test1")
+
+
+ public static String uploadFile(String filePath) throws Exception {
+ String tokencreat = QiWeiUtil.newtoken();
+ JSONObject jsonObject2 = JSON.parseObject(tokencreat);
+ String string = jsonObject2.getString("access_token");
+
+ String uploadUrl = "https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token=" + string + "&type=image";
+ CloseableHttpClient httpClient = HttpClients.createDefault();
+ HttpPost httpPost = new HttpPost(uploadUrl);
+
+ File file = new File(filePath);
+ HttpEntity entity = MultipartEntityBuilder.create()
+ .addBinaryBody("file", file, ContentType.APPLICATION_OCTET_STREAM, file.getName())
+ .build();
+ httpPost.setEntity(entity);
+
+ try (CloseableHttpResponse response = httpClient.execute(httpPost)) {
+ HttpEntity responseEntity = response.getEntity();
+ String jsonResponse = EntityUtils.toString(responseEntity);
+ String mediaId = jsonResponse.substring(jsonResponse.indexOf("\"media_id\":\"") + 12, jsonResponse.indexOf("\",\"created_at\""));
+ return mediaId;
+ } finally {
+ httpClient.close();
+ }
+ }
+
+
+
+
+
+}
+*/
diff --git a/src/main/java/com/example/sso/controller/DpController.java b/src/main/java/com/example/sso/controller/DpController.java
new file mode 100644
index 0000000..dc11a19
--- /dev/null
+++ b/src/main/java/com/example/sso/controller/DpController.java
@@ -0,0 +1,82 @@
+//package com.example.sso.controller;
+//
+//import com.alibaba.fastjson.JSON;
+//import com.alibaba.fastjson.JSONArray;
+//import com.alibaba.fastjson.JSONObject;
+//import com.example.sso.dao.DpAdd;
+//import com.example.sso.dao.DpUpdata;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.web.bind.annotation.PostMapping;
+//import org.springframework.web.bind.annotation.RequestBody;
+//import org.springframework.web.bind.annotation.RestController;
+//
+//import java.time.LocalDate;
+//import java.time.format.DateTimeFormatter;
+//
+//@RestController
+//@Slf4j
+//public class DpController {
+//
+// @PostMapping("/dpcontroller")
+// public String creat(@RequestBody JSONObject datas) {
+// JSONObject data = datas.getJSONObject("data");
+// log.info(data.toJSONString());
+// String app_status = data.getString("app_status");
+//
+// String clearing_num = data.getString("clearing_num");
+// String settlement_state = data.getString("settlement_state");
+// String app_settlement_date = data.getString("app_settlement_date");
+// String e_settlement_date = data.getString("e_settlement_date");
+// String app_status2 = data.getString("app_status2");
+// String f_settlement_date = data.getString("f_settlement_date");
+//
+// if (app_status.equals("新增")) {
+// JSONArray list = DpAdd.list();
+// for (Object o : list) {
+// JSONObject test = (JSONObject) o;
+// String string = test.getString("e_settlement_date");
+// String id = test.getString("_id");
+//
+// DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+// LocalDate date1 = LocalDate.parse(string, formatter);
+// LocalDate date2 = LocalDate.parse(e_settlement_date, formatter);
+// int comparison = date1.compareTo(date2);
+// if (comparison <= 0) {
+// DpUpdata.gengxin(id, clearing_num, app_status2, app_settlement_date);
+//
+// }
+//
+// }
+// return "新增完成!!!!";
+//
+// }
+// if (app_status.equals("结算完成")) {
+// JSONArray jiesuan = DpAdd.jiesuan(clearing_num);
+// for (Object o : jiesuan) {
+// JSONObject test = (JSONObject) o;
+// String settlement_state1 = test.getString("settlement_state");
+// String fSettlementDate = test.getString("f_settlement_date");
+// String id = test.getString("_id");
+// DpUpdata.jiesuanupdata(id, app_status2, f_settlement_date);
+// }
+// return "结算完成 !!!!";
+//
+// }
+//
+// if (app_status.equals("取消结算")) {
+// JSONArray quxiao = DpAdd.quxiao(clearing_num);
+// for (Object o : quxiao){
+// JSONObject test = (JSONObject) o;
+// String id = test.getString("_id");
+// DpUpdata.quxiao(id);
+// }
+// return "取消完成!!!!!!";
+// }
+//
+//
+//
+// return "无操作!!!!";
+// }
+//
+//
+//}
diff --git a/src/main/java/com/example/sso/controller/WeChatFileUploader.java b/src/main/java/com/example/sso/controller/WeChatFileUploader.java
new file mode 100644
index 0000000..9c22a45
--- /dev/null
+++ b/src/main/java/com/example/sso/controller/WeChatFileUploader.java
@@ -0,0 +1,85 @@
+/*
+package com.example.sso.controller;
+
+
+import org.apache.http.HttpEntity;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.ContentType;
+import org.apache.http.entity.mime.MultipartEntityBuilder;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+
+import java.io.File;
+import java.io.IOException;
+
+
+public class WeChatFileUploader {
+
+ // 企业微信上传临时素材的API地址
+ private static final String UPLOAD_MEDIA_URL = "https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE";
+
+ */
+/**
+ * 上传临时素材到企业微信
+ *
+ * @param accessToken 企业微信的access_token
+ * @param type 媒体文件类型,分别有图片(image)、语音(voice)、视频(video),普通文件(file)
+ * @param filePath 要上传的文件的本地路径
+ * @return 返回上传成功后企业微信返回的JSON字符串
+ *//*
+
+ public static String uploadMedia(String accessToken, String type, String filePath) {
+ // 替换URL中的ACCESS_TOKEN和TYPE
+ String url = UPLOAD_MEDIA_URL.replace("ACCESS_TOKEN", accessToken).replace("TYPE", type);
+
+ // 创建HttpClient对象
+ try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
+ // 创建HttpPost对象,设置请求URL
+ HttpPost httpPost = new HttpPost(url);
+
+ // 创建文件对象
+ File file = new File(filePath);
+
+ // 构建MultipartEntityBuilder对象,用于上传文件
+ MultipartEntityBuilder builder = MultipartEntityBuilder.create();
+ builder.addBinaryBody("media", file, ContentType.DEFAULT_BINARY, file.getName());
+
+ // 设置请求体
+ HttpEntity multipart = builder.build();
+ httpPost.setEntity(multipart);
+
+ // 发送请求并获取响应
+ try (CloseableHttpResponse response = httpClient.execute(httpPost)) {
+ HttpEntity responseEntity = response.getEntity();
+ if (responseEntity != null) {
+ // 将响应内容转换为字符串并返回
+ return EntityUtils.toString(responseEntity);
+ }
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ // 如果上传失败,返回null
+ return null;
+ }
+
+ */
+/* public static void main(String[] args) {
+ // 替换为你的access_token和文件路径
+ String accessToken = "YOUR_ACCESS_TOKEN";
+ String type = "file"; // 文件类型
+ String filePath = "path/to/your/file.txt"; // 本地文件路径
+
+ // 调用上传方法
+ String result = uploadMedia(accessToken, type, filePath);
+ System.out.println(result); // 打印上传结果
+ }*//*
+
+
+
+
+ /////////////////////
+}*/
diff --git a/src/main/java/com/example/sso/controller/WeChatWorkGetCustomerList.java b/src/main/java/com/example/sso/controller/WeChatWorkGetCustomerList.java
new file mode 100644
index 0000000..730ee63
--- /dev/null
+++ b/src/main/java/com/example/sso/controller/WeChatWorkGetCustomerList.java
@@ -0,0 +1,63 @@
+/*
+package com.example.sso.controller;
+
+import org.apache.http.HttpEntity;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+
+import java.io.IOException;
+
+public class WeChatWorkGetCustomerList {
+
+ // 企业微信获取客户列表的API地址
+ private static final String GET_CUSTOMER_LIST_URL = "https://qyapi.weixin.qq.com/cgi-bin/externalcontact/list?access_token=ACCESS_TOKEN&userid=USERID";
+
+ */
+/**
+ * 获取企业微信客户列表
+ *
+ * @param accessToken 企业微信的access_token
+ * @param userId 企业微信用户的userid
+ * @return 返回获取客户列表成功后企业微信返回的JSON字符串
+ *//*
+
+ public static String getCustomerList(String accessToken, String userId) {
+ // 替换URL中的ACCESS_TOKEN和USERID
+ String url = GET_CUSTOMER_LIST_URL.replace("ACCESS_TOKEN", accessToken).replace("USERID", userId);
+
+ // 创建HttpClient对象
+ try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
+ // 创建HttpGet对象,设置请求URL
+ HttpGet httpGet = new HttpGet(url);
+
+ // 发送请求并获取响应
+ try (CloseableHttpResponse response = httpClient.execute(httpGet)) {
+ HttpEntity responseEntity = response.getEntity();
+ if (responseEntity != null) {
+ // 将响应内容转换为字符串并返回
+ return EntityUtils.toString(responseEntity);
+ }
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ // 如果获取失败,返回null
+ return null;
+ }
+
+ */
+/*public static void main(String[] args) {
+ // 替换为你的access_token和userid
+ String accessToken = "YOUR_ACCESS_TOKEN";
+ String userId = "YOUR_USERID";
+
+ // 调用获取客户列表方法
+ String result = getCustomerList(accessToken, userId);
+ System.out.println(result); // 打印获取结果
+ }*//*
+
+}*/
diff --git a/src/main/java/com/example/sso/controller/ZhengShi.java b/src/main/java/com/example/sso/controller/ZhengShi.java
new file mode 100644
index 0000000..af53ce7
--- /dev/null
+++ b/src/main/java/com/example/sso/controller/ZhengShi.java
@@ -0,0 +1,42 @@
+/*
+package com.example.sso.controller;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.util.QiWeiUtil;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+public class ZhengShi {
+
+ @PostMapping("/zs")
+ public String uploadFile(String filePath) throws Exception {
+ String tokencreat = QiWeiUtil.newtoken();
+ JSONObject jsonObject2 = JSON.parseObject(tokencreat);
+ String string = jsonObject2.getString("access_token");
+
+ String s = WeChatFileUploader.uploadMedia(string, "file", filePath);
+
+
+ return s;
+ }
+
+
+ @PostMapping("/zskh")
+ public String CustomerList(String userid) throws Exception {
+ String tokencreat = QiWeiUtil.newtoken();
+ JSONObject jsonObject2 = JSON.parseObject(tokencreat);
+ String string = jsonObject2.getString("access_token");
+
+ String s = WeChatWorkGetCustomerList.getCustomerList(string,userid);
+
+
+ return s;
+ }
+
+
+
+
+}
+*/
diff --git a/src/main/java/com/example/sso/dao/DpAdd.java b/src/main/java/com/example/sso/dao/DpAdd.java
new file mode 100644
index 0000000..f69f798
--- /dev/null
+++ b/src/main/java/com/example/sso/dao/DpAdd.java
@@ -0,0 +1,135 @@
+//package com.example.sso.dao;
+//
+//import com.alibaba.fastjson.JSON;
+//import com.alibaba.fastjson.JSONArray;
+//import com.alibaba.fastjson.JSONObject;
+//import com.example.sso.util.V5utils;
+//import lombok.extern.slf4j.Slf4j;
+//import org.apache.tomcat.Jar;
+//@Slf4j
+//public class DpAdd {
+// public static JSONArray list() {
+// JSONObject jsonObject = new JSONObject();
+// jsonObject.put("app_id", "6437c223ee895d000812a37d");
+// jsonObject.put("entry_id", "67aea36182b769eeef415254");
+// jsonObject.put("limit", 10000);
+//
+//
+//
+// JSONObject filter = new JSONObject();
+// filter.put("rel","and");
+//
+// JSONArray cond = new JSONArray();
+//
+// JSONObject jsonObject1 = new JSONObject();
+// jsonObject1.put("field","settlement_state");
+// jsonObject1.put("method","eq");
+// JSONArray val = new JSONArray();
+// val.add("未结算");
+// jsonObject1.put("value",val);
+//
+// JSONObject jsonObject2 = new JSONObject();
+// jsonObject2.put("field","bill_type");
+// jsonObject2.put("method","eq");
+// JSONArray val1 = new JSONArray();
+// val1.add("司机");
+// jsonObject2.put("value",val1);
+// cond.add(jsonObject1);
+// cond.add(jsonObject2);
+// filter.put("cond",cond);
+// jsonObject.put("filter", filter);
+//
+// String jsonString = jsonObject.toJSONString();
+// log.info("参数 " + jsonString);
+//
+// String list = V5utils.list(jsonString);
+// JSONObject jsonObject3 = JSON.parseObject(list);
+// JSONArray jsonArray = jsonObject3.getJSONArray("data");
+// return jsonArray;
+//
+// }
+//
+// public static JSONArray jiesuan(String clearing_nums) {
+// JSONObject jsonObject = new JSONObject();
+// jsonObject.put("app_id", "6437c223ee895d000812a37d");
+// jsonObject.put("entry_id", "67aea36182b769eeef415254");
+// jsonObject.put("limit", 10000);
+//
+//
+//
+// JSONObject filter = new JSONObject();
+// filter.put("rel","and");
+//
+// JSONArray cond = new JSONArray();
+//
+// JSONObject jsonObject1 = new JSONObject();
+// jsonObject1.put("field","settlement_state");
+// jsonObject1.put("method","eq");
+// JSONArray val = new JSONArray();
+// val.add("结算中");
+// jsonObject1.put("value",val);
+//
+// JSONObject jsonObject2 = new JSONObject();
+// jsonObject2.put("field","clearing_num");
+// jsonObject2.put("method","eq");
+// JSONArray val1 = new JSONArray();
+// val1.add(clearing_nums);
+// jsonObject2.put("value",val1);
+// cond.add(jsonObject1);
+// cond.add(jsonObject2);
+// filter.put("cond",cond);
+// jsonObject.put("filter", filter);
+//
+// String jsonString = jsonObject.toJSONString();
+// log.info("参数 " + jsonString);
+//
+// String list = V5utils.list(jsonString);
+// JSONObject jsonObject3 = JSON.parseObject(list);
+// JSONArray jsonArray = jsonObject3.getJSONArray("data");
+// return jsonArray;
+//
+// }
+//
+// public static JSONArray quxiao(String clearing_nums) {
+// JSONObject jsonObject = new JSONObject();
+// jsonObject.put("app_id", "6437c223ee895d000812a37d");
+// jsonObject.put("entry_id", "67aea36182b769eeef415254");
+// jsonObject.put("limit", 10000);
+//
+//
+//
+// JSONObject filter = new JSONObject();
+// filter.put("rel","and");
+//
+// JSONArray cond = new JSONArray();
+//
+// JSONObject jsonObject1 = new JSONObject();
+// jsonObject1.put("field","settlement_state");
+// jsonObject1.put("method","eq");
+// JSONArray val = new JSONArray();
+// val.add("结算中");
+// jsonObject1.put("value",val);
+//
+// JSONObject jsonObject2 = new JSONObject();
+// jsonObject2.put("field","clearing_num");
+// jsonObject2.put("method","eq");
+// JSONArray val1 = new JSONArray();
+// val1.add(clearing_nums);
+// jsonObject2.put("value",val1);
+// cond.add(jsonObject1);
+// cond.add(jsonObject2);
+// filter.put("cond",cond);
+// jsonObject.put("filter", filter);
+//
+// String jsonString = jsonObject.toJSONString();
+// log.info("参数 " + jsonString);
+//
+// String list = V5utils.list(jsonString);
+// JSONObject jsonObject3 = JSON.parseObject(list);
+// JSONArray jsonArray = jsonObject3.getJSONArray("data");
+// return jsonArray;
+//
+// }
+//
+//
+//}
diff --git a/src/main/java/com/example/sso/dao/DpLiuCheng.java b/src/main/java/com/example/sso/dao/DpLiuCheng.java
new file mode 100644
index 0000000..944f901
--- /dev/null
+++ b/src/main/java/com/example/sso/dao/DpLiuCheng.java
@@ -0,0 +1,111 @@
+//package com.example.sso.dao;
+//
+//import com.alibaba.fastjson.JSON;
+//import com.alibaba.fastjson.JSONArray;
+//import com.alibaba.fastjson.JSONObject;
+//import com.example.sso.util.V5utils;
+//import lombok.extern.slf4j.Slf4j;
+//
+//@Slf4j
+//public class DpLiuCheng {
+// public static void main(String[] args) {
+// JSONObject jsonObject = new JSONObject();
+// jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+// jsonObject.put("entry_id", "67bd7d558939167274751389");
+// jsonObject.put("limit", 10000);
+//
+//
+// JSONObject filter = new JSONObject();
+// filter.put("rel", "and");
+//
+// JSONArray cond = new JSONArray();
+//
+// JSONObject jsonObject1 = new JSONObject();
+// jsonObject1.put("field", "is_done");
+// jsonObject1.put("method", "not_empty");
+//
+//
+// cond.add(jsonObject1);
+//
+// filter.put("cond", cond);
+// jsonObject.put("filter", filter);
+//
+// String jsonString = jsonObject.toJSONString();
+//
+//
+// String list = V5utils.list(jsonString);
+// JSONObject jsonObject3 = JSON.parseObject(list);
+// JSONArray jsonArray = jsonObject3.getJSONArray("data");
+//
+// int i = 0;
+// for (Object o : jsonArray){
+// JSONObject jsonObject2 = (JSONObject) o;
+// String id = jsonObject2.getString("_id");
+// log.info("个数 " + id);
+// JSONObject jsonObject4 = new JSONObject();
+// jsonObject4.put("instance_id",id);
+// jsonObject4.put("tasks_type",1);
+// String jsonString1 = jsonObject4.toJSONString();
+// log.info("55555 " + jsonString1);
+//
+// String selectliucheng = V5utils.selectliucheng(jsonString1);
+// JSONObject jsonObject5 = JSON.parseObject(selectliucheng);
+// log.info("11111111111111 " + selectliucheng);
+// JSONObject object = jsonObject5.getJSONArray("tasks").getJSONObject(i);
+// log.info("群惨 " + object);
+// Integer status = object.getInteger("status");
+// String task_id = object.getString("task_id");
+// String creator = object.getJSONObject("creator").getString("integrate_id");
+// log.info("参数status " + status);
+// log.info("参数task_id11 " + task_id);
+// log.info("参数integrateId " + creator);
+//
+//
+//
+//
+// JSONObject jsonObject7 = new JSONObject();
+// jsonObject7.put("username","666914");
+// jsonObject7.put("instance_id",id);
+// jsonObject7.put("task_id",task_id);
+//
+// String jsonString2 = jsonObject7.toJSONString();
+//
+//
+// String comment = V5utils.comment(jsonString2);
+// log.info("结果 " + comment );
+//
+//
+//
+//
+// /* for (Object o1 : jsonArray1){
+// JSONObject jsonObject6 = (JSONObject) o1;
+// Integer status = jsonObject6.getInteger("status");
+// String task_id = jsonObject6.getString("task_id");
+// log.info("status11 " + status);
+// log.info("task_id11 " + task_id);
+//
+//
+//
+//
+//
+// if (status == 0){
+// JSONObject jsonObject7 = new JSONObject();
+// jsonObject7.put("username","#admin");
+// jsonObject7.put("instance_id",id);
+// jsonObject7.put("task_id",task_id);
+//
+// String jsonString2 = jsonObject7.toJSONString();
+//
+//
+// String comment = V5utils.comment(jsonString2);
+//
+//
+// }
+//
+// }*/
+//
+// }
+//
+//
+// }
+//}
diff --git a/src/main/java/com/example/sso/dao/DpUpdata.java b/src/main/java/com/example/sso/dao/DpUpdata.java
new file mode 100644
index 0000000..d30525e
--- /dev/null
+++ b/src/main/java/com/example/sso/dao/DpUpdata.java
@@ -0,0 +1,89 @@
+package com.example.sso.dao;
+
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.util.V5utils;
+
+public class DpUpdata {
+ public static void gengxin(String id, String clearing_nums, String settlement_states, String app_settlement_dates) {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "6437c223ee895d000812a37d");
+ jsonObject.put("entry_id", "67aea36182b769eeef415254");
+ jsonObject.put("data_id", id);
+ jsonObject.put("is_start_trigger", true);
+ JSONObject data = new JSONObject();
+
+ JSONObject clearing_num = new JSONObject();
+ clearing_num.put("value",clearing_nums);
+ data.put("clearing_num",clearing_num);
+
+ JSONObject settlement_state = new JSONObject();
+ settlement_state.put("value",settlement_states);
+ data.put("settlement_state",settlement_state);
+
+ JSONObject app_settlement_date = new JSONObject();
+ app_settlement_date.put("value",app_settlement_dates);
+ data.put("app_settlement_date",app_settlement_date);
+
+ jsonObject.put("data", data);
+ String jsonString = jsonObject.toJSONString();
+ V5utils.updata(jsonString);
+
+
+ }
+
+ public static void jiesuanupdata(String id, String settlement_states, String app_settlement_dates) {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "6437c223ee895d000812a37d");
+ jsonObject.put("entry_id", "67aea36182b769eeef415254");
+ jsonObject.put("data_id", id);
+ jsonObject.put("is_start_trigger", true);
+ JSONObject data = new JSONObject();
+
+
+
+ JSONObject settlement_state = new JSONObject();
+ settlement_state.put("value",settlement_states);
+ data.put("settlement_state",settlement_state);
+
+ JSONObject app_settlement_date = new JSONObject();
+ app_settlement_date.put("value",app_settlement_dates);
+ data.put("f_settlement_date",app_settlement_date);
+
+ jsonObject.put("data", data);
+ String jsonString = jsonObject.toJSONString();
+ V5utils.updata(jsonString);
+
+
+ }
+
+
+ public static void quxiao(String id) {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "6437c223ee895d000812a37d");
+ jsonObject.put("entry_id", "67aea36182b769eeef415254");
+ jsonObject.put("data_id", id);
+ jsonObject.put("is_start_trigger", true);
+ JSONObject data = new JSONObject();
+
+
+
+ JSONObject settlement_state = new JSONObject();
+ settlement_state.put("value","未结算");
+ data.put("settlement_state",settlement_state);
+
+ JSONObject app_settlement_date = new JSONObject();
+ app_settlement_date.put("value","");
+ data.put("f_settlement_date",app_settlement_date);
+
+ JSONObject clearing_num1 = new JSONObject();
+ clearing_num1.put("value","");
+ data.put("clearing_num",clearing_num1);
+
+ jsonObject.put("data", data);
+ String jsonString = jsonObject.toJSONString();
+ V5utils.updata(jsonString);
+
+
+ }
+
+}
diff --git a/src/main/java/com/example/sso/dao/TongBu1.java b/src/main/java/com/example/sso/dao/TongBu1.java
new file mode 100644
index 0000000..d2597e4
--- /dev/null
+++ b/src/main/java/com/example/sso/dao/TongBu1.java
@@ -0,0 +1,149 @@
+/*
+package com.example.sso.dao;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.util.APIUtils;
+import com.example.sso.util.TimeUtil;
+import com.example.sso.util.V5utils;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class TongBu1 {
+
+ public static void main(String[] args) throws ParseException {
+ Boolean b = true;
+ String ID = "";
+
+ JSONArray jsonArray = new JSONArray();
+ while (b) {
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+ jsonObject.put("entry_id", "67bbca3089391672745272f3");
+ jsonObject.put("limit", 10000);
+
+
+ String jsonString = jsonObject.toJSONString();
+
+
+ String list = V5utils.list(jsonString);
+ JSONObject jsonObject3 = JSON.parseObject(list);
+ JSONArray jsonArray2 = jsonObject3.getJSONArray("data");
+
+ int size = jsonArray2.size();
+ if (size < 10000) {
+ for (Object o : jsonArray2) {
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare1(shiqu);
+ if (compare == true) {
+
+ jsonArray.add(test);
+
+
+ }
+
+
+ }
+ b = false;
+ } else {
+
+
+ for (Object o : jsonArray2) {
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare1(shiqu);
+ String id = test.getString("_id");
+ if (compare == true) {
+
+ jsonArray.add(test);
+
+
+ }
+
+ ID = id;
+
+
+ jsonObject.put("data_id", ID);
+
+
+ }
+ jsonObject.put("data_id", ID);
+ }
+
+ }
+
+ // 创建Excel工作簿和工作表
+ Workbook workbook = new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet("Users");
+
+ String[] headers = {"序号", "单位", "姓名", "身份证号", "联系电话", "核查时间","反馈时间", "车牌号", "备注"};
+ Row headerRow = sheet.createRow(0);
+ for (int i = 0; i < headers.length; i++) {
+ headerRow.createCell(i).setCellValue(headers[i]);
+ }
+
+ // 填充数据
+ */
+/* String s = TimeUtil.yue1();*//*
+
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject object = jsonArray.getJSONObject(i);
+ Row row = sheet.createRow(i+1);
+
+
+ row.createCell(0).setCellValue(i+1);
+ row.createCell(1).setCellValue(object.getString("_widget_1740118696054"));
+ row.createCell(2).setCellValue(object.getString("_widget_1740118696055"));
+ row.createCell(3).setCellValue(object.getString("_widget_1740118696056"));
+ row.createCell(4).setCellValue(object.getString("_widget_1740118696057"));
+ row.createCell(5).setCellValue(object.getString(TimeUtil.shiqu(object.getString("_widget_1740118696064"))));
+ row.createCell(6).setCellValue(TimeUtil.shiqu(object.getString("_widget_1740118696064")));
+ String widget1740118696058 = object.getString("_widget_1740118696058");
+ String widget1740122130340 = object.getString("_widget_1740122130340");
+ if (widget1740118696058.equals("通过") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("暂未接车");
+ }
+ if (widget1740118696058.equals("通过") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340"));
+ }
+ if (widget1740118696058.equals("不通过") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340") + ", 治安不合格 ");
+ }
+ if (widget1740118696058.equals("不通过") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("治安不合格 ");
+ }
+
+ }
+
+ // 设置Excel文件路径为Windows桌面
+ String desktopPath = System.getProperty("user.home") + "\\Desktop\\郭公庄站派出所出租汽车企业拟入职司机身份核查工作台账.xlsx";
+
+ // 写入Excel文件
+ try (FileOutputStream outputStream = new FileOutputStream(desktopPath)) {
+ workbook.write(outputStream);
+ System.out.println("Excel文件已成功创建于:" + desktopPath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+
+
+
+ }
+}
+*/
diff --git a/src/main/java/com/example/sso/dao/move.java b/src/main/java/com/example/sso/dao/move.java
new file mode 100644
index 0000000..10891b9
--- /dev/null
+++ b/src/main/java/com/example/sso/dao/move.java
@@ -0,0 +1,110 @@
+package com.example.sso.dao;
+
+import com.example.sso.util.TimeUtil;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.StandardCopyOption;
+
+public class move {
+ public static void deljinjian() {
+ String s = TimeUtil.yue1();
+ // 获取桌面路径
+ String desktopPath = System.getProperty("user.home") + "/Desktop/";
+
+ // 要移动的Excel文件名
+ String fileName = "职工入职审查" + s+ ".xlsx";
+
+ // 创建源文件对象(桌面上的文件)
+ File sourceFile = new File(desktopPath + fileName);
+
+ // 目标文件夹路径(D盘的某个文件夹)
+ String targetFolderPath = "D:\\治安审查\\";
+
+ // 创建目标文件夹(如果不存在)
+ File targetFolder = new File(targetFolderPath);
+ if (!targetFolder.exists()) {
+ targetFolder.mkdirs(); // 创建文件夹及其父目录
+ }
+
+ // 检查源文件是否存在
+ if (sourceFile.exists()) {
+ try {
+ // 生成唯一的文件名
+ File targetFile = generateUniqueFile(targetFolderPath, fileName);
+
+ // 移动文件
+ Files.move(sourceFile.toPath(), targetFile.toPath(), StandardCopyOption.REPLACE_EXISTING);
+ System.out.println("文件已成功移动到: " + targetFile.getAbsolutePath());
+ } catch (IOException e) {
+ System.out.println("文件移动失败:");
+ e.printStackTrace();
+ }
+ } else {
+ System.out.println("文件不存在: " + sourceFile.getAbsolutePath());
+ }
+ }
+
+ public static void deljinjianoo() {
+ String s = TimeUtil.yue1();
+ // 获取桌面路径
+ String desktopPath = System.getProperty("user.home") + "/Desktop/";
+
+ // 要移动的Excel文件名
+ String fileName = "郭公庄站派出所出租汽车企业拟入职司机身份核查工作台账" + s+ ".xlsx";
+
+ // 创建源文件对象(桌面上的文件)
+ File sourceFile = new File(desktopPath + fileName);
+
+ // 目标文件夹路径(D盘的某个文件夹)
+ String targetFolderPath = "D:\\治安审查\\";
+
+ // 创建目标文件夹(如果不存在)
+ File targetFolder = new File(targetFolderPath);
+ if (!targetFolder.exists()) {
+ targetFolder.mkdirs(); // 创建文件夹及其父目录
+ }
+
+ // 检查源文件是否存在
+ if (sourceFile.exists()) {
+ try {
+ // 生成唯一的文件名
+ File targetFile = generateUniqueFile(targetFolderPath, fileName);
+
+ // 移动文件
+ Files.move(sourceFile.toPath(), targetFile.toPath(), StandardCopyOption.REPLACE_EXISTING);
+ System.out.println("文件已成功移动到: " + targetFile.getAbsolutePath());
+ } catch (IOException e) {
+ System.out.println("文件移动失败:");
+ e.printStackTrace();
+ }
+ } else {
+ System.out.println("文件不存在: " + sourceFile.getAbsolutePath());
+ }
+ }
+
+
+ private static File generateUniqueFile(String targetFolderPath, String fileName) {
+ File targetFile = new File(targetFolderPath + fileName);
+
+ // 如果文件不存在,直接返回
+ if (!targetFile.exists()) {
+ return targetFile;
+ }
+
+ // 如果文件已存在,生成新的文件名
+ String baseName = fileName.substring(0, fileName.lastIndexOf('.'));
+ String extension = fileName.substring(fileName.lastIndexOf('.'));
+
+ int counter = 1;
+ while (true) {
+ String newFileName = baseName + "_" + counter + extension;
+ File newFile = new File(targetFolderPath + newFileName);
+ if (!newFile.exists()) {
+ return newFile;
+ }
+ counter++;
+ }
+ }
+}
diff --git a/src/main/java/com/example/sso/schedule/DaoChuOne.java b/src/main/java/com/example/sso/schedule/DaoChuOne.java
new file mode 100644
index 0000000..d9b128e
--- /dev/null
+++ b/src/main/java/com/example/sso/schedule/DaoChuOne.java
@@ -0,0 +1,279 @@
+package com.example.sso.schedule;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.dao.move;
+import com.example.sso.util.TimeUtil;
+import com.example.sso.util.V5utils;
+
+import org.apache.poi.ss.usermodel.PrintSetup;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.ParseException;
+
+@Component
+public class DaoChuOne {
+ @Scheduled(cron = "0 31 10 ? * 2-7")
+ public void main1() throws ParseException {
+
+ move.deljinjian();
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+ jsonObject.put("entry_id", "67bbca3089391672745272f3");
+ jsonObject.put("limit", 10000);
+
+
+
+ JSONObject filter = new JSONObject();
+ filter.put("rel","and");
+
+ JSONArray cond = new JSONArray();
+
+ JSONObject jsonObject1 = new JSONObject();
+ jsonObject1.put("field","_widget_1740118696058");
+ jsonObject1.put("method","eq");
+ JSONArray val = new JSONArray();
+ val.add("待审核");
+ jsonObject1.put("value",val);
+
+
+ cond.add(jsonObject1);
+
+ filter.put("cond",cond);
+ jsonObject.put("filter", filter);
+
+ String jsonString = jsonObject.toJSONString();
+
+
+ String list = V5utils.list(jsonString);
+ JSONObject jsonObject3 = JSON.parseObject(list);
+ JSONArray jsonArray = jsonObject3.getJSONArray("data");
+
+
+ JSONArray jsonArray1 = new JSONArray();
+ for (Object o :jsonArray ){
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String _widget_1740118696055 = test.getString("_widget_1740118696055");
+ String _widget_1740118696054 = test.getString("_widget_1740118696054");
+ String _widget_1740118696056 = test.getString("_widget_1740118696056");
+ String _widget_1740118696057 = test.getString("_widget_1740118696057");
+ String _widget_1740118696058 = test.getString("_widget_1740118696058");
+ String _widget_1740118696065 = test.getString("_widget_1740118696065");
+ String _widget_1740123143180 = test.getString("_widget_1740123143180");
+ String _widget_1740122130340 = test.getString("_widget_1740122130340");
+ String _widget_1740122130341 = test.getString("_widget_1740122130341");
+ String _widget_1740363876520 = test.getString("_widget_1740363876520");
+
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare(shiqu);
+ if (compare == true){
+
+ jsonArray1.add(test);
+
+
+
+
+
+ }
+
+
+ }
+ System.out.println("我是数组 " + jsonArray1);
+
+
+
+ // 创建Excel工作簿和工作表
+ Workbook workbook = new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet("Users");
+
+ String[] headers = {"序号", "申请时间", "单位", "姓名", "身份证号", "联系电话","提交时间", "车牌号", "备注","自营/联营"};
+ Row headerRow = sheet.createRow(0);
+ for (int i = 0; i < headers.length; i++) {
+ headerRow.createCell(i).setCellValue(headers[i]);
+ }
+
+ // 填充数据
+ String s = TimeUtil.yue1();
+ for (int i = 0; i < jsonArray1.size(); i++) {
+ JSONObject object = jsonArray1.getJSONObject(i);
+ String shiqu1 = TimeUtil.shiqu1(object.getString("_widget_1740118696064"));
+ Row row = sheet.createRow(i+1);
+
+
+ row.createCell(0).setCellValue(i + 1);
+ row.createCell(1).setCellValue(shiqu1);
+ row.createCell(2).setCellValue("银建的士");
+ row.createCell(3).setCellValue(object.getString("_widget_1740118696055"));
+ row.createCell(4).setCellValue(object.getString("_widget_1740118696056"));
+ row.createCell(5).setCellValue(object.getString("_widget_1740118696057"));
+ row.createCell(6).setCellValue(s);
+ row.createCell(9).setCellValue(object.getString("_widget_1740118696054"));
+ // 设置列宽(单位是字符宽度的256倍)
+ int width = 25 * 256; // 设置列宽为50个字符宽度
+ int widt1 = 15 * 256; // 设置列宽为50个字符宽度
+ sheet.setColumnWidth(0, 5 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(1, widt1); // 设置第0列的宽度
+// sheet.setColumnWidth(2, width); // 设置第0列的宽度
+// sheet.setColumnWidth(3, width); // 设置第0列的宽度
+ sheet.setColumnWidth(4, width); // 设置第0列的宽度
+ sheet.setColumnWidth(5, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(6, widt1); // 设置第0列的宽度
+ }
+ PrintSetup printSetup = sheet.getPrintSetup();
+ printSetup.setLandscape(true);
+
+ // 设置Excel文件路径为Windows桌面
+ String desktopPath = System.getProperty("user.home") + "\\Desktop\\职工入职审查" + s+ ".xlsx";
+
+ // 写入Excel文件
+ try (FileOutputStream outputStream = new FileOutputStream(desktopPath)) {
+ workbook.write(outputStream);
+ System.out.println("Excel文件已成功创建于:" + desktopPath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+
+
+
+
+ }
+
+ @Scheduled(cron = "0 31 10 ? * 1")
+ public void main2() throws ParseException {
+
+ move.deljinjian();
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+ jsonObject.put("entry_id", "67bbca3089391672745272f3");
+ jsonObject.put("limit", 10000);
+
+
+
+ JSONObject filter = new JSONObject();
+ filter.put("rel","and");
+
+ JSONArray cond = new JSONArray();
+
+ JSONObject jsonObject1 = new JSONObject();
+ jsonObject1.put("field","_widget_1740118696058");
+ jsonObject1.put("method","eq");
+ JSONArray val = new JSONArray();
+ val.add("待审核");
+ jsonObject1.put("value",val);
+
+
+ cond.add(jsonObject1);
+
+ filter.put("cond",cond);
+ jsonObject.put("filter", filter);
+
+ String jsonString = jsonObject.toJSONString();
+
+
+ String list = V5utils.list(jsonString);
+ JSONObject jsonObject3 = JSON.parseObject(list);
+ JSONArray jsonArray = jsonObject3.getJSONArray("data");
+
+
+ JSONArray jsonArray1 = new JSONArray();
+ for (Object o :jsonArray ){
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String _widget_1740118696055 = test.getString("_widget_1740118696055");
+ String _widget_1740118696054 = test.getString("_widget_1740118696054");
+ String _widget_1740118696056 = test.getString("_widget_1740118696056");
+ String _widget_1740118696057 = test.getString("_widget_1740118696057");
+ String _widget_1740118696058 = test.getString("_widget_1740118696058");
+ String _widget_1740118696065 = test.getString("_widget_1740118696065");
+ String _widget_1740123143180 = test.getString("_widget_1740123143180");
+ String _widget_1740122130340 = test.getString("_widget_1740122130340");
+ String _widget_1740122130341 = test.getString("_widget_1740122130341");
+ String _widget_1740363876520 = test.getString("_widget_1740363876520");
+
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare(shiqu);
+
+
+ jsonArray1.add(test);
+
+
+
+
+
+
+
+
+ }
+ System.out.println("我是数组 " + jsonArray1);
+
+
+
+ // 创建Excel工作簿和工作表
+ Workbook workbook = new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet("Users");
+
+ String[] headers = {"序号", "申请时间", "单位", "姓名", "身份证号", "联系电话","提交时间", "车牌号", "备注","自营/联营"};
+ Row headerRow = sheet.createRow(0);
+ for (int i = 0; i < headers.length; i++) {
+ headerRow.createCell(i).setCellValue(headers[i]);
+ }
+
+ // 填充数据
+ String s = TimeUtil.yue1();
+ for (int i = 0; i < jsonArray1.size(); i++) {
+ JSONObject object = jsonArray1.getJSONObject(i);
+ String shiqu1 = TimeUtil.shiqu1(object.getString("_widget_1740118696064"));
+ Row row = sheet.createRow(i+1);
+
+
+ row.createCell(0).setCellValue(i + 1);
+ row.createCell(1).setCellValue(shiqu1);
+ row.createCell(2).setCellValue("银建的士");
+ row.createCell(3).setCellValue(object.getString("_widget_1740118696055"));
+ row.createCell(4).setCellValue(object.getString("_widget_1740118696056"));
+ row.createCell(5).setCellValue(object.getString("_widget_1740118696057"));
+ row.createCell(6).setCellValue(s);
+ row.createCell(9).setCellValue(object.getString("_widget_1740118696054"));
+ // 设置列宽(单位是字符宽度的256倍)
+ int width = 25 * 256; // 设置列宽为50个字符宽度
+ int widt1 = 15 * 256; // 设置列宽为50个字符宽度
+ sheet.setColumnWidth(0, 5 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(1, widt1); // 设置第0列的宽度
+// sheet.setColumnWidth(2, width); // 设置第0列的宽度
+// sheet.setColumnWidth(3, width); // 设置第0列的宽度
+ sheet.setColumnWidth(4, width); // 设置第0列的宽度
+ sheet.setColumnWidth(5, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(6, widt1); // 设置第0列的宽度
+ }
+ PrintSetup printSetup = sheet.getPrintSetup();
+ printSetup.setLandscape(true);
+
+ // 设置Excel文件路径为Windows桌面
+ String desktopPath = System.getProperty("user.home") + "\\Desktop\\职工入职审查" + s+ ".xlsx";
+
+ // 写入Excel文件
+ try (FileOutputStream outputStream = new FileOutputStream(desktopPath)) {
+ workbook.write(outputStream);
+ System.out.println("Excel文件已成功创建于:" + desktopPath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+
+
+
+
+ }
+}
diff --git a/src/main/java/com/example/sso/schedule/DaoChuTwo.java b/src/main/java/com/example/sso/schedule/DaoChuTwo.java
new file mode 100644
index 0000000..32c189f
--- /dev/null
+++ b/src/main/java/com/example/sso/schedule/DaoChuTwo.java
@@ -0,0 +1,176 @@
+package com.example.sso.schedule;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.dao.move;
+import com.example.sso.util.TimeUtil;
+import com.example.sso.util.V5utils;
+import org.apache.poi.ss.usermodel.PrintSetup;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.ParseException;
+@Component
+public class DaoChuTwo {
+ @Scheduled(cron = "0 30 10 ? * 4")
+ public void main() throws ParseException {
+ String s = TimeUtil.yue1();
+ move.deljinjianoo();
+
+ Boolean b = true;
+ String ID = "";
+
+ JSONArray jsonArray = new JSONArray();
+ while (b) {
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+ jsonObject.put("entry_id", "67bbca3089391672745272f3");
+ jsonObject.put("limit", 10000);
+
+ if (!ID.isEmpty()) {
+ jsonObject.put("data_id", ID);
+ }
+
+
+ String jsonString = jsonObject.toJSONString();
+
+
+ String list = V5utils.list(jsonString);
+ JSONObject jsonObject3 = JSON.parseObject(list);
+ JSONArray jsonArray2 = jsonObject3.getJSONArray("data");
+
+ int size = jsonArray2.size();
+ if (size < 10000) {
+ for (Object o : jsonArray2) {
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare1(shiqu);
+ if (compare == true) {
+
+ jsonArray.add(test);
+
+
+ }
+
+
+ }
+ b = false;
+ } else {
+
+
+ for (Object o : jsonArray2) {
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare1(shiqu);
+ String id = test.getString("_id");
+ if (compare == true) {
+
+ jsonArray.add(test);
+
+
+ }
+
+ ID = id;
+
+
+ // jsonObject.put("data_id", ID);
+
+
+ }
+ jsonObject.put("data_id", ID);
+ }
+
+ }
+
+ // 创建Excel工作簿和工作表
+ Workbook workbook = new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet("Users");
+
+ String[] headers = {"序号", "单位", "姓名", "身份证号", "联系电话", "核查时间","反馈时间", "车牌号", "备注"};
+ Row headerRow = sheet.createRow(0);
+ for (int i = 0; i < headers.length; i++) {
+ headerRow.createCell(i).setCellValue(headers[i]);
+ }
+
+ // 填充数据
+ /* String s = TimeUtil.yue1();*/
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject object = jsonArray.getJSONObject(i);
+ Row row = sheet.createRow(i+1);
+
+
+ row.createCell(0).setCellValue(i+1);
+ row.createCell(1).setCellValue("银建");
+ row.createCell(2).setCellValue(object.getString("_widget_1740118696055"));
+ row.createCell(3).setCellValue(object.getString("_widget_1740118696056"));
+ row.createCell(4).setCellValue(object.getString("_widget_1740118696057"));
+ String widget1740118696064 = object.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu1(widget1740118696064);
+ row.createCell(5).setCellValue(shiqu);
+ row.createCell(6).setCellValue(shiqu);
+ String widget1740118696058 = object.getString("_widget_1740118696058");
+ String widget1740122130340 = object.getString("_widget_1740122130340");
+ if (widget1740118696058.equals("通过") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("暂未接车");
+ }
+ if (widget1740118696058.equals("通过") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340"));
+ }
+ if (widget1740118696058.equals("慎用") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("暂未接车");
+ }
+ if (widget1740118696058.equals("慎用") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340"));
+ }
+ if (widget1740118696058.equals("不通过") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340") + ", 治安不合格 ");
+ }
+ if (widget1740118696058.equals("不通过") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("治安不合格 ");
+ }
+ row.createCell(8).setCellValue(object.getString("_widget_1740118696054"));
+ // 设置列宽(单位是字符宽度的256倍)
+ int width = 25 * 256; // 设置列宽为50个字符宽度
+ int widt1 = 15 * 256; // 设置列宽为50个字符宽度
+ sheet.setColumnWidth(0, 5 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(1, 5 * 256); // 设置第0列的宽度
+// sheet.setColumnWidth(2, width); // 设置第0列的宽度
+ sheet.setColumnWidth(3, 20 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(4, 15 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(5, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(6, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(7, 15 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(8, 15 * 256); // 设置第0列的宽度
+
+
+
+ }
+ PrintSetup printSetup = sheet.getPrintSetup();
+ printSetup.setLandscape(true);
+
+ // 设置Excel文件路径为Windows桌面
+ String desktopPath = System.getProperty("user.home") + "\\Desktop\\郭公庄站派出所出租汽车企业拟入职司机身份核查工作台账" + s+ ".xlsx";
+
+ // 写入Excel文件
+ try (FileOutputStream outputStream = new FileOutputStream(desktopPath)) {
+ workbook.write(outputStream);
+ System.out.println("Excel文件已成功创建于:" + desktopPath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+
+
+
+ }
+}
diff --git a/src/main/java/com/example/sso/test/A.java b/src/main/java/com/example/sso/test/A.java
new file mode 100644
index 0000000..9edf0ba
--- /dev/null
+++ b/src/main/java/com/example/sso/test/A.java
@@ -0,0 +1,149 @@
+package com.example.sso.test;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.dao.move;
+import com.example.sso.util.QiWeiUtil;
+import com.example.sso.util.TimeUtil;
+import com.example.sso.util.V5utils;
+import org.apache.poi.ss.usermodel.PrintSetup;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.ParseException;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+
+public class A {
+ public static void main(String[] args) throws ParseException {
+
+ move.deljinjian();
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+ jsonObject.put("entry_id", "67bbca3089391672745272f3");
+ jsonObject.put("limit", 10000);
+
+
+
+ JSONObject filter = new JSONObject();
+ filter.put("rel","and");
+
+ JSONArray cond = new JSONArray();
+
+ JSONObject jsonObject1 = new JSONObject();
+ jsonObject1.put("field","_widget_1740118696058");
+ jsonObject1.put("method","eq");
+ JSONArray val = new JSONArray();
+ val.add("待审核");
+ jsonObject1.put("value",val);
+
+
+ cond.add(jsonObject1);
+
+ filter.put("cond",cond);
+ jsonObject.put("filter", filter);
+
+ String jsonString = jsonObject.toJSONString();
+
+
+ String list = V5utils.list(jsonString);
+ JSONObject jsonObject3 = JSON.parseObject(list);
+ JSONArray jsonArray = jsonObject3.getJSONArray("data");
+
+
+ JSONArray jsonArray1 = new JSONArray();
+ for (Object o :jsonArray ){
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String _widget_1740118696055 = test.getString("_widget_1740118696055");
+ String _widget_1740118696054 = test.getString("_widget_1740118696054");
+ String _widget_1740118696056 = test.getString("_widget_1740118696056");
+ String _widget_1740118696057 = test.getString("_widget_1740118696057");
+ String _widget_1740118696058 = test.getString("_widget_1740118696058");
+ String _widget_1740118696065 = test.getString("_widget_1740118696065");
+ String _widget_1740123143180 = test.getString("_widget_1740123143180");
+ String _widget_1740122130340 = test.getString("_widget_1740122130340");
+ String _widget_1740122130341 = test.getString("_widget_1740122130341");
+ String _widget_1740363876520 = test.getString("_widget_1740363876520");
+
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare(shiqu);
+ if (compare == true){
+
+ jsonArray1.add(test);
+
+
+
+
+
+ }
+
+
+ }
+ System.out.println("我是数组 " + jsonArray1);
+
+
+
+ // 创建Excel工作簿和工作表
+ Workbook workbook = new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet("Users");
+
+ String[] headers = {"序号", "申请时间", "单位", "姓名", "身份证号", "联系电话","提交时间", "车牌号", "备注","自营/联营"};
+ Row headerRow = sheet.createRow(0);
+ for (int i = 0; i < headers.length; i++) {
+ headerRow.createCell(i).setCellValue(headers[i]);
+ }
+
+ // 填充数据
+ String s = TimeUtil.yue1();
+ for (int i = 0; i < jsonArray1.size(); i++) {
+ JSONObject object = jsonArray1.getJSONObject(i);
+ String shiqu1 = TimeUtil.shiqu1(object.getString("_widget_1740118696064"));
+ Row row = sheet.createRow(i+1);
+
+
+ row.createCell(0).setCellValue(i + 1);
+ row.createCell(1).setCellValue(shiqu1);
+ row.createCell(2).setCellValue("银建的士");
+ row.createCell(3).setCellValue(object.getString("_widget_1740118696055"));
+ row.createCell(4).setCellValue(object.getString("_widget_1740118696056"));
+ row.createCell(5).setCellValue(object.getString("_widget_1740118696057"));
+ row.createCell(6).setCellValue(s);
+ row.createCell(9).setCellValue(object.getString("_widget_1740118696054"));
+ // 设置列宽(单位是字符宽度的256倍)
+ int width = 25 * 256; // 设置列宽为50个字符宽度
+ int widt1 = 15 * 256; // 设置列宽为50个字符宽度
+ sheet.setColumnWidth(0, 5 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(1, widt1); // 设置第0列的宽度
+// sheet.setColumnWidth(2, width); // 设置第0列的宽度
+// sheet.setColumnWidth(3, width); // 设置第0列的宽度
+ sheet.setColumnWidth(4, width); // 设置第0列的宽度
+ sheet.setColumnWidth(5, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(6, widt1); // 设置第0列的宽度
+ }
+ PrintSetup printSetup = sheet.getPrintSetup();
+ printSetup.setLandscape(true);
+
+ // 设置Excel文件路径为Windows桌面
+ String desktopPath = System.getProperty("user.home") + "\\Desktop\\职工入职审查" + s+ ".xlsx";
+
+ // 写入Excel文件
+ try (FileOutputStream outputStream = new FileOutputStream(desktopPath)) {
+ workbook.write(outputStream);
+ System.out.println("Excel文件已成功创建于:" + desktopPath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+
+
+
+
+ }
+}
diff --git a/src/main/java/com/example/sso/test/B.java b/src/main/java/com/example/sso/test/B.java
new file mode 100644
index 0000000..6de653f
--- /dev/null
+++ b/src/main/java/com/example/sso/test/B.java
@@ -0,0 +1,178 @@
+package com.example.sso.test;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.example.sso.dao.move;
+import com.example.sso.util.TimeUtil;
+import com.example.sso.util.V5utils;
+import org.apache.poi.ss.usermodel.PrintSetup;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.ParseException;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+public class B {
+ public static void main(String[] args) throws ParseException {
+ String s = TimeUtil.yue1();
+ move.deljinjianoo();
+
+ Boolean b = true;
+ String ID = "";
+
+ JSONArray jsonArray = new JSONArray();
+ while (b) {
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("app_id", "67595e244e1cafe48bd78b2d");
+ jsonObject.put("entry_id", "67bbca3089391672745272f3");
+ jsonObject.put("limit", 10000);
+
+ if (!ID.isEmpty()) {
+ jsonObject.put("data_id", ID);
+ }
+
+
+ String jsonString = jsonObject.toJSONString();
+
+
+ String list = V5utils.list(jsonString);
+ JSONObject jsonObject3 = JSON.parseObject(list);
+ JSONArray jsonArray2 = jsonObject3.getJSONArray("data");
+
+ int size = jsonArray2.size();
+ if (size < 10000) {
+ for (Object o : jsonArray2) {
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare1(shiqu);
+ if (compare == true) {
+
+ jsonArray.add(test);
+
+
+ }
+
+
+ }
+ b = false;
+ } else {
+
+
+ for (Object o : jsonArray2) {
+ JSONObject test = (JSONObject) o;
+ String _widget_1740118696064 = test.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu(_widget_1740118696064);
+ Boolean compare = TimeUtil.compare1(shiqu);
+ String id = test.getString("_id");
+ if (compare == true) {
+
+ jsonArray.add(test);
+
+
+ }
+
+ ID = id;
+
+
+ // jsonObject.put("data_id", ID);
+
+
+ }
+ jsonObject.put("data_id", ID);
+ }
+
+ }
+
+ // 创建Excel工作簿和工作表
+ Workbook workbook = new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet("Users");
+
+ String[] headers = {"序号", "单位", "姓名", "身份证号", "联系电话", "核查时间","反馈时间", "车牌号", "备注"};
+ Row headerRow = sheet.createRow(0);
+ for (int i = 0; i < headers.length; i++) {
+ headerRow.createCell(i).setCellValue(headers[i]);
+ }
+
+ // 填充数据
+ /* String s = TimeUtil.yue1();*/
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject object = jsonArray.getJSONObject(i);
+ Row row = sheet.createRow(i+1);
+
+
+ row.createCell(0).setCellValue(i+1);
+ row.createCell(1).setCellValue("银建");
+ row.createCell(2).setCellValue(object.getString("_widget_1740118696055"));
+ row.createCell(3).setCellValue(object.getString("_widget_1740118696056"));
+ row.createCell(4).setCellValue(object.getString("_widget_1740118696057"));
+ String widget1740118696064 = object.getString("_widget_1740118696064");
+ String shiqu = TimeUtil.shiqu1(widget1740118696064);
+ row.createCell(5).setCellValue(shiqu);
+ row.createCell(6).setCellValue(shiqu);
+ String widget1740118696058 = object.getString("_widget_1740118696058");
+ String widget1740122130340 = object.getString("_widget_1740122130340");
+ if (widget1740118696058.equals("通过") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("暂未接车");
+ }
+ if (widget1740118696058.equals("通过") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340"));
+ }
+ if (widget1740118696058.equals("慎用") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("暂未接车");
+ }
+ if (widget1740118696058.equals("慎用") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340"));
+ }
+ if (widget1740118696058.equals("不通过") && !widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue(object.getString("_widget_1740122130340") + ", 治安不合格 ");
+ }
+ if (widget1740118696058.equals("不通过") && widget1740122130340.isEmpty()){
+ row.createCell(7).setCellValue("治安不合格 ");
+ }
+ row.createCell(8).setCellValue(object.getString("_widget_1740118696054"));
+ // 设置列宽(单位是字符宽度的256倍)
+ int width = 25 * 256; // 设置列宽为50个字符宽度
+ int widt1 = 15 * 256; // 设置列宽为50个字符宽度
+ sheet.setColumnWidth(0, 5 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(1, 5 * 256); // 设置第0列的宽度
+// sheet.setColumnWidth(2, width); // 设置第0列的宽度
+ sheet.setColumnWidth(3, 20 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(4, 15 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(5, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(6, widt1); // 设置第0列的宽度
+ sheet.setColumnWidth(7, 15 * 256); // 设置第0列的宽度
+ sheet.setColumnWidth(8, 15 * 256); // 设置第0列的宽度
+
+
+
+ }
+ PrintSetup printSetup = sheet.getPrintSetup();
+ printSetup.setLandscape(true);
+
+ // 设置Excel文件路径为Windows桌面
+ String desktopPath = System.getProperty("user.home") + "\\Desktop\\郭公庄站派出所出租汽车企业拟入职司机身份核查工作台账" + s+ ".xlsx";
+
+ // 写入Excel文件
+ try (FileOutputStream outputStream = new FileOutputStream(desktopPath)) {
+ workbook.write(outputStream);
+ System.out.println("Excel文件已成功创建于:" + desktopPath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+
+
+
+ }
+}
diff --git a/src/main/java/com/example/sso/util/APIUtils.java b/src/main/java/com/example/sso/util/APIUtils.java
new file mode 100644
index 0000000..c49130f
--- /dev/null
+++ b/src/main/java/com/example/sso/util/APIUtils.java
@@ -0,0 +1,559 @@
+package com.example.sso.util;
+
+import com.alibaba.fastjson.JSONArray;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import org.apache.commons.codec.Charsets;
+import org.apache.http.Header;
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.client.methods.HttpRequestBase;
+import org.apache.http.client.utils.URIBuilder;
+import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.message.BasicHeader;
+import org.apache.http.ssl.SSLContextBuilder;
+import org.apache.http.ssl.TrustStrategy;
+
+import javax.net.ssl.SSLContext;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.*;
+
+public class APIUtils {
+ public static final String WEBSITE = "https://www.jiyuankeshang.com";
+ private static boolean retryIfRateLimited = true;
+ private String urlGetWidgets;
+ private String urlGetFormData;
+ private String urlRetrieveData;
+ private String urlUpdateData;
+ private String urlCreateData;
+ private String urlDeleteData;
+ private String urlCreateUSer;
+ private String urlCreatePerson;
+ private String urlCreatePersonAll;
+ private String urlCreateDep;
+ private String urlCreateDepAll;
+ private String urlGetDepartment;
+ private String urlGetPeople;
+ private String urlDeletePeople;
+ private String urlDataBatchCreate;
+ private String urlGetWorkflow;
+
+ private static String apiKey;
+ private static int i=1;
+ /**
+ * @param appId - 应用id
+ * @param entryId - 表单id
+ * @param apiKey - apiKey
+ */
+ public APIUtils(String appId, String entryId, String apiKey) {
+ this.apiKey = apiKey;
+ this.initUrl(appId, entryId);
+ }
+ public Map createPerson (Map person) {
+ Map data = null;
+ try {
+ Map result = (Map) this.sendRequest("POST",urlCreatePerson, person);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return data;
+ }
+ public Map createDep (Map person) {
+ Map data = null;
+ try {
+ Map result = (Map) this.sendRequest("POST",urlCreatePerson, person);
+ data = (Map) result.get("department");
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return data;
+ }
+
+ private void initUrl (String appId, String entryId) {
+ urlGetWidgets = WEBSITE + "/api/v1/app/" + appId + "/entry/" + entryId + "/widgets";
+ urlGetFormData = WEBSITE + "/api/v1/app/" + appId + "/entry/" + entryId + "/data";
+ urlRetrieveData = WEBSITE + "/api/v2/app/" + appId + "/entry/" + entryId + "/data_retrieve";
+ urlUpdateData = WEBSITE + "/api/v4/app/" + appId + "/entry/" + entryId + "/data_update";
+ urlCreateData = WEBSITE + "/api/v3/app/" + appId + "/entry/" + entryId + "/data_create";
+ urlDeleteData = WEBSITE + "/api/v1/app/" + appId + "/entry/" + entryId + "/data_delete";
+ urlCreatePerson=WEBSITE+"/api/v2/user/create";
+ urlCreateUSer = WEBSITE + "/api/v2/user/create";
+ urlCreateDep=WEBSITE+"/api/v2/department/create";
+ urlCreateDepAll=WEBSITE+"/api/v2/department/import";
+ urlCreatePersonAll=WEBSITE+"/api/v2/user/import";
+ urlGetDepartment=WEBSITE+"/api/v2/department/1/department_list";
+ urlGetPeople=WEBSITE + "/api/v2/department/1/member_list";
+ urlDeletePeople=WEBSITE+"/api/v2/user/batch_delete";
+ urlDataBatchCreate=WEBSITE+ "/api/v1/app/" + appId + "/entry/" + entryId + "/data_batch_create";
+ urlGetWorkflow=WEBSITE+"/api/v3/workflow/instance/get";
+ }
+
+ public static HttpClient getSSLHttpClient() throws Exception {
+ SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() {
+ //信任所有
+ public boolean isTrusted(X509Certificate[] chain, String authType) throws CertificateException {
+ return true;
+ }
+ }).build();
+ SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext);
+ return HttpClients.custom().setSSLSocketFactory(sslsf).build();
+ }
+ /**
+ * 获取部门成员信息
+ * @param - 创建数据内容
+ * @return 更新后的数据
+ */
+ public Map deletePeopleBatch(Map map) {
+ Map data = null;
+ try {
+ Map result = (Map) this.sendRequest("POST",urlDeletePeople, map);
+ return result;
+// data = (Map) result.get("department");
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return data;
+ }
+ public Map urlGetWorkflow(String id) {
+ Map map=new HashMap<>();
+ map.put("instance_id",id);
+ Map data = null;
+ try {
+ Map result = (Map) this.sendRequest("POST",urlGetWorkflow,map);
+ System.out.println(result);
+ return result;
+// data = (Map) result.get("department");
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return data;
+ }
+ /**
+ * 获取请求头信息
+ * @return
+ */
+ public static Header[] getHttpHeaders() {
+ List headerList = new ArrayList();
+ headerList.add(new BasicHeader("Authorization", "Bearer " + apiKey));
+ headerList.add(new BasicHeader("Content-Type", "application/json;charset=utf-8"));
+ return headerList.toArray(new Header[headerList.size()]);
+ }
+
+ /**
+ * 查询人员信息
+ * @param username - 创建数据内容
+ * @return 更新后的数据
+ */
+ public Map findPerson (String username) {
+ Map data = null;
+ try {
+ Map result = (Map) this.sendRequest("POST",WEBSITE + "/api/v2/user/"+username+"/user_retrieve", new HashMap<>());
+ data = (Map) result.get("data");
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return data;
+ }
+ /**
+ * 发送HTTP请求
+ * @param method - HTTP动词 { GET|POST }
+ * @param url - 请求路径
+ * @param data - 请求的数据
+ * @throws Exception
+ */
+ public static Object sendRequest (String method, String url, Map data) throws Exception {
+ try {
+ HttpClient client = getSSLHttpClient();
+ Header[] headers = getHttpHeaders();
+ HttpRequestBase request;
+ method = method.toUpperCase();
+ if ("GET".equals(method)) {
+ // GET请求
+ URIBuilder uriBuilder = new URIBuilder(url);
+ if (data != null) {
+ // 添加请求参数
+ for(Map.Entry entry : data.entrySet()) {
+ uriBuilder.addParameter(entry.getKey(), (String) entry.getValue());
+ }
+ }
+ request = new HttpGet(uriBuilder.build());
+ } else if ("POST".equals(method)) {
+ // POST请求
+ request = new HttpPost(url);
+ ObjectMapper mapper = new ObjectMapper();
+ HttpEntity entity = new StringEntity(mapper.writeValueAsString(data), Charsets.UTF_8);
+ ((HttpPost) request).setEntity(entity);
+ } else {
+ throw new RuntimeException("不支持的HTTP动词");
+ }
+ // 设置请求头
+ request.setHeaders(headers);
+ // 发送请求并获取返回结果
+ HttpResponse response = client.execute(request);
+ int statusCode = response.getStatusLine().getStatusCode();
+ ObjectMapper mapper = new ObjectMapper();
+ Map result = (Map) mapper.readValue(response.getEntity().getContent(), Object.class);
+ if (statusCode >= 400) {
+ // 请求错误
+ if ((Integer) result.get("code") == 8303 && retryIfRateLimited) {
+ // 频率超限,1s后重试
+ Thread.sleep(1000);
+ return sendRequest(method, url, data);
+ } else {
+ return result;
+ }
+ } else {
+ // 处理返回结果
+ return result;
+ }
+ }catch (Exception e){
+ e.printStackTrace();
+ // 请求异常,等等重试
+ Thread.sleep(1000);
+ if (i>=5){
+ i=0;
+ return 555;
+ }else {
+ i=i+1;
+ return sendRequest(method, url, data);
+ }
+ }
+ }
+
+
+
+
+ /**
+ * 获取表单字段
+ * @return 表单字段
+ */
+ public List