Browse Source

图形开票服务代码提交

wangchangsheng 3 years ago
parent
commit
7c737c52f6
54 changed files with 3994 additions and 0 deletions
  1. 33 0
      .gitignore
  2. 118 0
      .mvn/wrapper/MavenWrapperDownloader.java
  3. BIN
      .mvn/wrapper/maven-wrapper.jar
  4. 2 0
      .mvn/wrapper/maven-wrapper.properties
  5. 15 0
      logrecord/viewticket.log
  6. 310 0
      mvnw
  7. 182 0
      mvnw.cmd
  8. 114 0
      pom.xml
  9. 3 0
      src/META-INF/MANIFEST.MF
  10. 199 0
      src/main/java/com/gyee/viewticket/MpGenerator.java
  11. 16 0
      src/main/java/com/gyee/viewticket/ViewticketApplication.java
  12. 111 0
      src/main/java/com/gyee/viewticket/comm/domain/AjaxResult.java
  13. 37 0
      src/main/java/com/gyee/viewticket/comm/exception/TicketException.java
  14. 112 0
      src/main/java/com/gyee/viewticket/controller/viewticket/WorkticketController.java
  15. 20 0
      src/main/java/com/gyee/viewticket/mapper/ticket/IbsidgenMapper.java
  16. 20 0
      src/main/java/com/gyee/viewticket/mapper/ticket/LaborMapper.java
  17. 22 0
      src/main/java/com/gyee/viewticket/mapper/ticket/LocationsMapper.java
  18. 24 0
      src/main/java/com/gyee/viewticket/mapper/ticket/WindturbineMapper.java
  19. 25 0
      src/main/java/com/gyee/viewticket/mapper/ticket/WorkriskpoolMapper.java
  20. 24 0
      src/main/java/com/gyee/viewticket/mapper/ticket/WorkticketMapper.java
  21. 20 0
      src/main/java/com/gyee/viewticket/mapper/ticket/WoworktaskMapper.java
  22. 47 0
      src/main/java/com/gyee/viewticket/model/ticket/Ibsidgen.java
  23. 148 0
      src/main/java/com/gyee/viewticket/model/ticket/Labor.java
  24. 82 0
      src/main/java/com/gyee/viewticket/model/ticket/Locations.java
  25. 124 0
      src/main/java/com/gyee/viewticket/model/ticket/Windturbine.java
  26. 59 0
      src/main/java/com/gyee/viewticket/model/ticket/Workriskpool.java
  27. 592 0
      src/main/java/com/gyee/viewticket/model/ticket/Workticket.java
  28. 59 0
      src/main/java/com/gyee/viewticket/model/ticket/Woworktask.java
  29. 42 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/IbsidgenServiceImpl.java
  30. 44 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/LaborServiceImpl.java
  31. 33 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/LocationsServiceImpl.java
  32. 33 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/WindturbineServiceImpl.java
  33. 53 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/WorkriskpoolServiceImpl.java
  34. 97 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/WorkticketServiceImpl.java
  35. 20 0
      src/main/java/com/gyee/viewticket/service/impl/ticket/WoworktaskServiceImpl.java
  36. 34 0
      src/main/java/com/gyee/viewticket/service/ticket/IbsidgenService.java
  37. 36 0
      src/main/java/com/gyee/viewticket/service/ticket/LaborService.java
  38. 19 0
      src/main/java/com/gyee/viewticket/service/ticket/LocationsService.java
  39. 22 0
      src/main/java/com/gyee/viewticket/service/ticket/WindturbineService.java
  40. 24 0
      src/main/java/com/gyee/viewticket/service/ticket/WorkriskpoolService.java
  41. 29 0
      src/main/java/com/gyee/viewticket/service/ticket/WorkticketService.java
  42. 18 0
      src/main/java/com/gyee/viewticket/service/ticket/WoworktaskService.java
  43. 246 0
      src/main/java/com/gyee/viewticket/util/TicketUtil.java
  44. 38 0
      src/main/resources/application.yml
  45. BIN
      src/main/resources/lib/sqljdbc42.jar
  46. 193 0
      src/main/resources/logback.xml
  47. 19 0
      src/main/resources/mapper/ticket/IbsidgenMapper.xml
  48. 52 0
      src/main/resources/mapper/ticket/LaborMapper.xml
  49. 40 0
      src/main/resources/mapper/ticket/LocationsMapper.xml
  50. 61 0
      src/main/resources/mapper/ticket/WindturbineMapper.xml
  51. 49 0
      src/main/resources/mapper/ticket/WorkriskpoolMapper.xml
  52. 238 0
      src/main/resources/mapper/ticket/WorkticketMapper.xml
  53. 23 0
      src/main/resources/mapper/ticket/WoworktaskMapper.xml
  54. 13 0
      src/test/java/com/gyee/viewticket/ViewticketApplicationTests.java

+ 33 - 0
.gitignore

@@ -0,0 +1,33 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### 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/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/

+ 118 - 0
.mvn/wrapper/MavenWrapperDownloader.java

@@ -0,0 +1,118 @@
+/*
+ * Copyright 2007-present 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.6";
+    /**
+     * 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();
+    }
+
+}

BIN
.mvn/wrapper/maven-wrapper.jar


+ 2 - 0
.mvn/wrapper/maven-wrapper.properties

@@ -0,0 +1,2 @@
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip
+wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

File diff suppressed because it is too large
+ 15 - 0
logrecord/viewticket.log


+ 310 - 0
mvnw

@@ -0,0 +1,310 @@
+#!/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.
+# ----------------------------------------------------------------------------
+
+# ----------------------------------------------------------------------------
+# Maven 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.6/maven-wrapper-0.5.6.jar"
+    else
+      jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
+    fi
+    while IFS="=" read key value; do
+      case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
+      esac
+    done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
+    if [ "$MVNW_VERBOSE" = true ]; then
+      echo "Downloading from: $jarUrl"
+    fi
+    wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
+    if $cygwin; then
+      wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
+    fi
+
+    if command -v wget > /dev/null; then
+        if [ "$MVNW_VERBOSE" = true ]; then
+          echo "Found 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 "$@"

+ 182 - 0
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 Maven 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 keystroke before ending
+@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
+@REM     e.g. to debug Maven itself, use
+@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+@REM ----------------------------------------------------------------------------
+
+@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
+@echo off
+@REM set title of command window
+title %0
+@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
+@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
+
+@REM set %HOME% to equivalent of $HOME
+if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
+
+@REM Execute a user defined script before this one
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
+@REM check for pre script, once with legacy .bat ending and once with .cmd ending
+if exist "%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.6/maven-wrapper-0.5.6.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.6/maven-wrapper-0.5.6.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%

+ 114 - 0
pom.xml

@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>2.4.3</version>
+        <relativePath/> <!-- lookup parent from repository -->
+    </parent>
+    <groupId>com.gyee</groupId>
+    <artifactId>viewticket</artifactId>
+    <version>0.0.1-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>viewticket</name>
+    <description>viewticket</description>
+    <properties>
+        <java.version>1.8</java.version>
+        <tomcat.version>9.0.35</tomcat.version>
+        <skipTests>ture</skipTests>
+    </properties>
+    <profiles>
+
+    </profiles>
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <version>1.2.75</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <version>1.18.12</version>
+        </dependency>
+
+
+
+
+        <!--druid 数据源监控-->
+        <!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid-spring-boot-starter</artifactId>
+            <version>1.1.10</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-core</artifactId>
+            <version>3.3.2</version>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+            <version>3.3.2</version>
+        </dependency>
+        <!--代码生成器-->
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-generator</artifactId>
+            <version>3.3.2</version>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-extension</artifactId>
+            <version>3.3.2</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.velocity</groupId>
+            <artifactId>velocity-engine-core</artifactId>
+            <version>2.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>servjdbc</groupId>
+            <artifactId>servjdbc</artifactId>
+            <version>42</version>
+            <scope>system</scope>
+            <systemPath>${project.basedir}/src/main/resources/lib/sqljdbc42.jar</systemPath>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <configuration>
+                    <includeSystemScope>true</includeSystemScope>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

+ 3 - 0
src/META-INF/MANIFEST.MF

@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: com.gyee.viewticket.ViewticketApplication
+

+ 199 - 0
src/main/java/com/gyee/viewticket/MpGenerator.java

@@ -0,0 +1,199 @@
+package com.gyee.viewticket;
+
+import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.generator.AutoGenerator;
+import com.baomidou.mybatisplus.generator.InjectionConfig;
+import com.baomidou.mybatisplus.generator.config.*;
+import com.baomidou.mybatisplus.generator.config.converts.SqlServerTypeConvert;
+import com.baomidou.mybatisplus.generator.config.po.TableInfo;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 图形开票代码生成器  mybatis-plus
+ */
+public class MpGenerator {
+
+    //项目路径
+    private static String canonicalPath = "";
+
+    //基本包名
+    private static String basePackage = "com.gyee.viewticket";
+    //作者
+    private static String authorName = "admin";
+    //要生成的表名
+    private static String[] tables = {"WINDTURBINE"};
+    //table前缀
+    private static String prefix = "";
+
+    //数据库类型
+    private static DbType dbType = DbType.SQL_SERVER;
+    //数据库配置四要素
+    private static String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
+    private static String url = "jdbc:sqlserver://10.155.32.2:1433;DatabaseName=test";
+//    private static String driverName = "com.mysql.jdbc.Driver";
+//    private static String url = "jdbc:mysql://localhost:3306/assemb?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false";
+    private static String username = "sa";
+    private static String password = "Gyee@321#!";
+
+    public static void main(String[] args) {
+        AutoGenerator gen = new AutoGenerator();
+
+        /**
+         * 获取项目路径
+         */
+        try {
+            canonicalPath = new File("").getCanonicalPath();
+            System.out.println("canonicalPath = "+canonicalPath);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
+        /**
+         * 数据库配置
+         */
+        gen.setDataSource(new DataSourceConfig()
+                .setDbType(dbType)
+                .setDriverName(driverName)
+                .setUrl(url)
+                .setUsername(username)
+                .setPassword(password)
+                .setTypeConvert(new SqlServerTypeConvert() {
+                    // 自定义数据库表字段类型转换【可选】
+                    //@Override
+                    //public DbColumnType processTypeConvert(String fieldType) {
+                    ////System.out.println("转换类型:" + fieldType);
+                    // if ( fieldType.toLowerCase().contains( "tinyint" ) ) {
+                    //    return DbColumnType.BOOLEAN;
+                    // }
+                    //return super.processTypeConvert(fieldType);
+                    //}
+                }));
+
+        /**
+         * 全局配置
+         */
+        gen.setGlobalConfig(new GlobalConfig()
+                .setOutputDir( canonicalPath + "/src/main/java")//输出目录
+                .setFileOverride(true)// 是否覆盖文件
+                .setActiveRecord(true)// 开启 activeRecord 模式
+                .setEnableCache(false)// XML 二级缓存
+                .setBaseResultMap(true)// XML ResultMap
+                .setBaseColumnList(true)// XML columList
+                .setOpen(false)//生成后打开文件夹
+                .setAuthor(authorName)
+                // 自定义文件命名,注意 %s 会自动填充表实体属性!
+                .setMapperName("%sMapper")
+                .setXmlName("%sMapper")
+                .setServiceName("%sService")
+                .setServiceImplName("%sServiceImpl")
+                .setControllerName("%sController")
+        );
+
+        /**
+         * 策略配置
+         */
+        gen.setStrategy(new StrategyConfig()
+                        // .setCapitalMode(true)// 全局大写命名
+                        //.setDbColumnUnderline(true)//全局下划线命名
+                        .setTablePrefix(new String[]{prefix})// 此处可以修改为您的表前缀
+                        .setNaming(NamingStrategy.underline_to_camel)// 表名生成策略
+                        .setInclude(tables) // 需要生成的表
+                        .setRestControllerStyle(true)
+                        //.setExclude(new String[]{"test"}) // 排除生成的表
+                        // 自定义实体父类
+                        // .setSuperEntityClass("com.baomidou.demo.TestEntity")
+                        // 自定义实体,公共字段
+                        //.setSuperEntityColumns(new String[]{"test_id"})
+                        //.setTableFillList(tableFillList)
+                        // 自定义 mapper 父类 默认BaseMapper
+                        //.setSuperMapperClass("com.baomidou.mybatisplus.mapper.BaseMapper")
+                        // 自定义 service 父类 默认IService
+                        // .setSuperServiceClass("com.baomidou.demo.TestService")
+                        // 自定义 service 实现类父类 默认ServiceImpl
+                        // .setSuperServiceImplClass("com.baomidou.demo.TestServiceImpl")
+                        // 自定义 controller 父类
+                        //.setSuperControllerClass("com.kichun."+packageName+".controller.AbstractController")
+                        // 【实体】是否生成字段常量(默认 false)
+                        // public static final String ID = "test_id";
+                        // .setEntityColumnConstant(true)
+                        // 【实体】是否为构建者模型(默认 false)
+                        // public User setName(String name) {this.name = name; return this;}
+                        // .setEntityBuilderModel(true)
+                        // 【实体】是否为lombok模型(默认 false)<a href="https://projectlombok.org/">document</a>
+                        .setEntityLombokModel(true)
+                // Boolean类型字段是否移除is前缀处理
+                // .setEntityBooleanColumnRemoveIsPrefix(true)
+                // .setRestControllerStyle(true)
+                // .setControllerMappingHyphenStyle(true)
+        );
+
+        /**
+         * 包配置
+         */
+        gen.setPackageInfo(new PackageConfig()
+                //.setModuleName("User")
+                .setParent(basePackage)// 自定义包路径
+                .setController("controller.viewticket")// 这里是控制器包名,默认 web
+                .setEntity("model.ticket") // 设置Entity包名,默认entity
+                .setMapper("mapper.ticket") // 设置Mapper包名,默认mapper
+                .setService("service.ticket") // 设置Service包名,默认service
+                .setServiceImpl("service.impl.ticket") // 设置Service Impl包名,默认service.impl
+                .setXml("mapper") // 设置Mapper XML包名,默认mapper.xml
+        );
+
+        /**
+         * 注入自定义配置
+         */
+        // 注入自定义配置,可以在 VM 中使用 cfg.abc 设置的值
+        InjectionConfig abc = new InjectionConfig() {
+            @Override
+            public void initMap() {
+                Map<String, Object> map = new HashMap<String, Object>();
+                map.put("abc", this.getConfig().getGlobalConfig().getAuthor() + "-mp");
+                this.setMap(map);
+            }
+        };
+        //自定义文件输出位置(非必须)
+        List<FileOutConfig> fileOutList = new ArrayList<FileOutConfig>();
+        fileOutList.add(new FileOutConfig("/templates/mapper.xml.vm") {
+            @Override
+            public String outputFile(TableInfo tableInfo) {
+                return canonicalPath + "/src/main/resources/mapper/ticket/" + tableInfo.getEntityName() + "Mapper.xml";
+            }
+        });
+        abc.setFileOutConfigList(fileOutList);
+        gen.setCfg(abc);
+
+        /**
+         * 指定模板引擎 默认是VelocityTemplateEngine ,需要引入相关引擎依赖
+         */
+        //gen.setTemplateEngine(new FreemarkerTemplateEngine());
+
+        /**
+         * 模板配置
+         */
+        gen.setTemplate(
+                // 关闭默认 xml 生成,调整生成 至 根目录
+                new TemplateConfig().setXml(null)
+                // 自定义模板配置,模板可以参考源码 /mybatis-plus/src/main/resources/template 使用 copy
+                // 至您项目 src/main/resources/template 目录下,模板名称也可自定义如下配置:
+                // .setController("...");
+                // .setEntity("...");
+                // .setMapper("...");
+                // .setXml("...");
+                // .setService("...");
+                // .setServiceImpl("...");
+        );
+
+        // 执行生成
+        gen.execute();
+
+    }
+}

+ 16 - 0
src/main/java/com/gyee/viewticket/ViewticketApplication.java

@@ -0,0 +1,16 @@
+package com.gyee.viewticket;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
+import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration;
+
+@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
+public class ViewticketApplication {
+
+    public static void main(String[] args) {
+        SpringApplication.run(ViewticketApplication.class, args);
+    }
+
+}

+ 111 - 0
src/main/java/com/gyee/viewticket/comm/domain/AjaxResult.java

@@ -0,0 +1,111 @@
+package com.gyee.viewticket.comm.domain;
+
+import java.util.HashMap;
+
+/**
+* @ClassName: AjaxResult
+* @Description: TODO(ajax操作消息提醒)
+* @author gyee
+* @date 2018年8月18日
+*
+ */
+public class AjaxResult extends HashMap<String, Object>
+{
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 初始化一个新创建的 Message 对象
+     */
+    public AjaxResult()
+    {
+    }
+
+    /**
+     * 返回错误消息
+     *
+     * @return 错误消息
+     */
+    public static AjaxResult error()
+    {
+        return error(1, "操作失败");
+    }
+
+    /**
+     * 返回错误消息
+     *
+     * @param msg 内容
+     * @return 错误消息
+     */
+    public static AjaxResult error(String msg)
+    {
+        return error(500, msg);
+    }
+
+    /**
+     * 返回错误消息
+     *
+     * @param code 错误码
+     * @param msg 内容
+     * @return 错误消息
+     */
+    public static AjaxResult error(int code, String msg)
+    {
+        AjaxResult json = new AjaxResult();
+        json.put("code", code);
+        json.put("msg", msg);
+        return json;
+    }
+
+    /**
+     * 返回成功消息
+     *
+     * @param msg 内容
+     * @return 成功消息
+     */
+    public static AjaxResult success(String msg)
+    {
+        AjaxResult json = new AjaxResult();
+        json.put("msg", msg);
+        json.put("code", 200);
+        return json;
+    }
+
+    /**
+     * 返回成功消息
+     *
+     * @return 成功消息
+     */
+    public static AjaxResult success()
+    {
+        return AjaxResult.success("操作成功");
+    }
+
+    public static AjaxResult successData(Object value){
+        AjaxResult json = new AjaxResult();
+        json.put("code", 200);
+        json.put("data", value);
+        return json;
+    }
+
+    public static AjaxResult successData(int code, Object value){
+        AjaxResult json = new AjaxResult();
+        json.put("code", code);
+        json.put("data", value);
+        return json;
+    }
+
+
+    /**
+     * 返回成功消息
+     *
+     * @param key 键值
+     * @param value 内容
+     * @return 成功消息
+     */
+    @Override
+    public AjaxResult put(String key, Object value)
+    {
+        super.put(key, value);
+        return this;
+    }
+}

+ 37 - 0
src/main/java/com/gyee/viewticket/comm/exception/TicketException.java

@@ -0,0 +1,37 @@
+package com.gyee.viewticket.comm.exception;
+
+
+public class TicketException extends RuntimeException{
+
+    private static final long serialVersionUID = 1L;
+    private int code = 4004;
+    private String msg;
+
+    public TicketException() {
+        super();
+    }
+
+    public TicketException(String msg) {
+        super(msg);
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+
+    public int getCode() {
+        return code;
+    }
+
+
+    public void setCode(int code) {
+        this.code = code;
+    }
+
+}

+ 112 - 0
src/main/java/com/gyee/viewticket/controller/viewticket/WorkticketController.java

@@ -0,0 +1,112 @@
+package com.gyee.viewticket.controller.viewticket;
+
+
+import com.gyee.viewticket.comm.domain.AjaxResult;
+import com.gyee.viewticket.model.ticket.Labor;
+import com.gyee.viewticket.service.ticket.LaborService;
+import com.gyee.viewticket.service.ticket.WindturbineService;
+import com.gyee.viewticket.service.ticket.WorkriskpoolService;
+import com.gyee.viewticket.service.ticket.WorkticketService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@RestController
+@RequestMapping("/view/workticket")
+public class WorkticketController {
+
+    private static final Logger log = LoggerFactory.getLogger(WorkticketController.class);
+    @Autowired
+    WindturbineService windturbineService;
+
+    @Autowired
+    LaborService laborService;
+
+    @Autowired
+    private WorkticketService workticketService;
+
+    @Autowired
+    WorkriskpoolService workriskpoolService;
+
+    /**
+     * 按场站获取所有风机
+     * @param deptnum 风机编号
+     * @return
+     */
+    @CrossOrigin(origins = "*",maxAge = 3600)
+    @GetMapping(value = "windlist")
+    public AjaxResult getWindturbineid(@RequestParam("deptnum")String deptnum) {
+        if ("".equals(deptnum.trim())){
+            return AjaxResult.error(500,"查询条件为空");
+        }
+        List<Map> list = windturbineService.getWindturbineList(deptnum);
+        return AjaxResult.successData(list);
+    }
+
+    /**
+     * 工作类型
+     * @return
+     */
+    @CrossOrigin(origins = "*",maxAge = 3600)
+    @GetMapping(value = "list")
+    public AjaxResult getWorkTypeList() {
+        List<Map> list =workriskpoolService.getWorkriskpoolList();
+        return  AjaxResult.successData(list);
+    }
+
+
+    /**
+     * 根据场站获取员工
+     * @param deptnum 场站名称
+     * @return
+     */
+    @CrossOrigin(origins = "*",maxAge = 3600)
+    @GetMapping(value = "getLaborList")
+    public AjaxResult getLaborNameList(@RequestParam("deptnum")String deptnum) {
+        List<Labor> labors = laborService.getLaborList(deptnum);
+        return AjaxResult.successData(labors);
+    }
+
+    /**
+     * 按场站获取所有风机
+     * @param workdept 工作单位
+     * @param location 风机编号
+     * @param description 维修部件
+     * @param wspeed 风速
+     * @param worktypeid 作业类型
+     * @return
+     */
+    @CrossOrigin(origins = "*",maxAge = 3600)
+    @PostMapping(value = "addWindelec")
+    public AjaxResult addWorkticket(@RequestParam("workdept")String workdept,
+                                    @RequestParam("location")String location,
+                                    @RequestParam("description")String description,
+                                    @RequestParam("wspeed")String wspeed,
+                                    @RequestParam("worktypeid")String worktypeid,
+                                    @RequestParam("labornum")String labornum) {
+        log.debug("请求数据:workdept={}&location={}&description={}&wspeed={}&worktypeid={}&labornum={}",
+                workdept,location,description,wspeed,worktypeid,labornum);
+        Labor labor =  laborService.getLaborItem(labornum);
+        if (null!=labor){
+            boolean result = workticketService.saveWorkticket(workdept,location,description,wspeed,worktypeid,labor.getLaborname());
+            if (result){
+                return AjaxResult.success();
+            }
+        }
+        return AjaxResult.error(4004, "数据操作失败");
+    }
+
+}
+

+ 20 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/IbsidgenMapper.java

@@ -0,0 +1,20 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Ibsidgen;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface IbsidgenMapper extends BaseMapper<Ibsidgen> {
+
+}

+ 20 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/LaborMapper.java

@@ -0,0 +1,20 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Labor;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface LaborMapper extends BaseMapper<Labor> {
+
+}

+ 22 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/LocationsMapper.java

@@ -0,0 +1,22 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Locations;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface LocationsMapper extends BaseMapper<Locations> {
+    List<Locations> selectDescription(String location, String description);
+}

+ 24 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/WindturbineMapper.java

@@ -0,0 +1,24 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Windturbine;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface WindturbineMapper extends BaseMapper<Windturbine> {
+
+    List<Map> getWindturbineList(String deptnum);
+}

+ 25 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/WorkriskpoolMapper.java

@@ -0,0 +1,25 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Workriskpool;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface WorkriskpoolMapper extends BaseMapper<Workriskpool> {
+    List<Map> selectWorkriskpoolList();
+
+    List<Map> selectWorkriskpoolParentList(String parent);
+}

+ 24 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/WorkticketMapper.java

@@ -0,0 +1,24 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Workticket;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface WorkticketMapper extends BaseMapper<Workticket> {
+
+    String selectMaxWonum();
+
+    String selectTicketnum(String prefix);
+
+}

+ 20 - 0
src/main/java/com/gyee/viewticket/mapper/ticket/WoworktaskMapper.java

@@ -0,0 +1,20 @@
+package com.gyee.viewticket.mapper.ticket;
+
+import com.gyee.viewticket.model.ticket.Woworktask;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Repository
+@Mapper
+public interface WoworktaskMapper extends BaseMapper<Woworktask> {
+
+}

+ 47 - 0
src/main/java/com/gyee/viewticket/model/ticket/Ibsidgen.java

@@ -0,0 +1,47 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("IBSIDGEN")
+public class Ibsidgen extends Model<Ibsidgen> {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId("ID")
+    private Double id;
+
+    @TableField("TABLENAME")
+    private String tablename;
+
+    @TableField("SEED")
+    private Double seed;
+
+    @TableField("IDVALUE")
+    private Double idvalue;
+
+    @TableField("MEMO")
+    private String memo;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 148 - 0
src/main/java/com/gyee/viewticket/model/ticket/Labor.java

@@ -0,0 +1,148 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("LABOR")
+public class Labor extends Model<Labor> {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId("ID")
+    private Double id;
+
+    @TableField("LABORNUM")
+    private String labornum;
+
+    @TableField("LABORNAME")
+    private String laborname;
+
+    @TableField("CRAFT")
+    private String craft;
+
+    @TableField("DEPTNUM")
+    private String deptnum;
+
+    @TableField("CREWID")
+    private String crewid;
+
+    @TableField("JOBCODE")
+    private String jobcode;
+
+    @TableField("EMPLOYEETYPE")
+    private String employeetype;
+
+    @TableField("CALNUM")
+    private String calnum;
+
+    @TableField("SHIFTNUM")
+    private String shiftnum;
+
+    @TableField("ENABLED")
+    private String enabled;
+
+    @TableField("EMAIL")
+    private String email;
+
+    @TableField("WKADDRESS")
+    private String wkaddress;
+
+    @TableField("POSTNUM")
+    private String postnum;
+
+    @TableField("HOMEADDRESS")
+    private String homeaddress;
+
+    @TableField("PHONENUM")
+    private String phonenum;
+
+    @TableField("MPHONE")
+    private String mphone;
+
+    @TableField("HOMEPHONE")
+    private String homephone;
+
+    @TableField("PAYRATE")
+    private Double payrate;
+
+    @TableField("OTSCALE")
+    private Double otscale;
+
+    @TableField("BIRTHDATE")
+    private Date birthdate;
+
+    @TableField("HIREDATE")
+    private Date hiredate;
+
+    @TableField("OUTSIDE")
+    private String outside;
+
+    @TableField("GLACCOUNT")
+    private String glaccount;
+
+    @TableField("VENDOR")
+    private String vendor;
+
+    @TableField("SUPERVISOR")
+    private String supervisor;
+
+    @TableField("DEFAULTSTORELOC")
+    private String defaultstoreloc;
+
+    @TableField("CONSIGN")
+    private String consign;
+
+    @TableField("CONSIGSDATE")
+    private Date consigsdate;
+
+    @TableField("CONSIGEDATE")
+    private Date consigedate;
+
+    @TableField("NAVMENUTYPE")
+    private String navmenutype;
+
+    @TableField("SITENUM")
+    private String sitenum;
+
+    @TableField("CORPNUM")
+    private String corpnum;
+
+    @TableField("DEFAULTLOC")
+    private String defaultloc;
+
+    @TableField("AUTHALLDEPT")
+    private String authalldept;
+
+    @TableField("AUTHDEPT")
+    private String authdept;
+
+    @TableField("SHOWMIND")
+    private String showmind;
+
+    @TableField("ORDERBY")
+    private Double orderby;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 82 - 0
src/main/java/com/gyee/viewticket/model/ticket/Locations.java

@@ -0,0 +1,82 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("LOCATIONS")
+public class Locations extends Model<Locations> {
+
+    private static final long serialVersionUID=1L;
+
+    @TableId("ID")
+    private Double id;
+
+    @TableField("LOCATION")
+    private String location;
+
+    @TableField("DESCRIPTION")
+    private String description;
+
+    @TableField("TYPE")
+    private String type;
+
+    @TableField("STATUS")
+    private String status;
+
+    @TableField("STATUSDATE")
+    private Date statusdate;
+
+    @TableField("DEPTNUM")
+    private String deptnum;
+
+    @TableField("CRAFT")
+    private String craft;
+
+    @TableField("CHANGEBY")
+    private String changeby;
+
+    @TableField("CHANGEDATE")
+    private Date changedate;
+
+    @TableField("CLASSID")
+    private String classid;
+
+    @TableField("LOCPRIORITY")
+    private Double locpriority;
+
+    @TableField("SITENUM")
+    private String sitenum;
+
+    @TableField("CORPNUM")
+    private String corpnum;
+
+    @TableField("NODETYPE")
+    private String nodetype;
+
+    @TableField("KKSCODE")
+    private String kkscode;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 124 - 0
src/main/java/com/gyee/viewticket/model/ticket/Windturbine.java

@@ -0,0 +1,124 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("WINDTURBINE")
+public class Windturbine extends Model<Windturbine> {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId("ID")
+    private Double id;
+
+    @TableField("WTNUM")
+    private Double wtnum;
+
+    @TableField("OWNERWF")
+    private Double ownerwf;
+
+    @TableField("OWNERPROJECT")
+    private Double ownerproject;
+
+    @TableField("OWNERLINE")
+    private Double ownerline;
+
+    @TableField("ORDERNUM")
+    private Double ordernum;
+
+    @TableField("WTWFNUM")
+    private String wtwfnum;
+
+    @TableField("WTGRIDNUM")
+    private String wtgridnum;
+
+    @TableField("VENDOR")
+    private String vendor;
+
+    @TableField("MODEL")
+    private String model;
+
+    @TableField("RATEDPOWER")
+    private Double ratedpower;
+
+    @TableField("RATEDWINSPE")
+    private Double ratedwinspe;
+
+    @TableField("RATEDVOLTAGE")
+    private Double ratedvoltage;
+
+    @TableField("RATEDREV")
+    private Double ratedrev;
+
+    @TableField("CUTINWINSPE")
+    private Double cutinwinspe;
+
+    @TableField("CUTOUTWINSPE")
+    private Double cutoutwinspe;
+
+    @TableField("MAXWINSPE")
+    private Double maxwinspe;
+
+    @TableField("LOWERTEMP")
+    private Double lowertemp;
+
+    @TableField("HIGHTEMP")
+    private Double hightemp;
+
+    @TableField("LOWERREV")
+    private Double lowerrev;
+
+    @TableField("HIGHREV")
+    private Double highrev;
+
+    @TableField("ROTERDIAMETER")
+    private Double roterdiameter;
+
+    @TableField("HUBHEIGHT")
+    private Double hubheight;
+
+    @TableField("RELEASEDATE")
+    private Date releasedate;
+
+    @TableField("INSTALLDATE")
+    private Date installdate;
+
+    @TableField("TESTDATE")
+    private Date testdate;
+
+    @TableField("OPDATE")
+    private Date opdate;
+
+    @TableField("LOCATION")
+    private String location;
+
+    @TableField("WFLOCATION")
+    private String wflocation;
+
+    @TableField("WTID")
+    private String wtid;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 59 - 0
src/main/java/com/gyee/viewticket/model/ticket/Workriskpool.java

@@ -0,0 +1,59 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("WORKRISKPOOL")
+public class Workriskpool extends Model<Workriskpool> {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId("ID")
+    private Double id;
+
+    @TableField("WORKRISKNUM")
+    private String workrisknum;
+
+    @TableField("DESCRIPTION")
+    private String description;
+
+    @TableField("PARENT")
+    private String parent;
+
+    @TableField("ROOTNODE")
+    private String rootnode;
+
+    @TableField("HASCHILD")
+    private String haschild;
+
+    @TableField("RESERVE1")
+    private String reserve1;
+
+    @TableField("RESERVE2")
+    private String reserve2;
+
+    @TableField("RESERVE3")
+    private String reserve3;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 592 - 0
src/main/java/com/gyee/viewticket/model/ticket/Workticket.java

@@ -0,0 +1,592 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("WORKTICKET")
+public class Workticket extends Model<Workticket> {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId("ID")
+    private Double id;
+
+    @TableField("WONUM")
+    private String wonum;
+
+    @TableField("STATION")
+    private String station;
+
+    @TableField("WTICKETTYPE")
+    private String wtickettype;
+
+    @TableField("PRINCIPAL")
+    private String principal;
+
+    @TableField("DEPTGROUP")
+    private String deptgroup;
+
+    @TableField("FINALTYPE")
+    private String finaltype;
+
+    @TableField("STARTDATE")
+    private Date startdate;
+
+    @TableField("ENDDATE")
+    private Date enddate;
+
+    @TableField("WORKTASK")
+    private String worktask;
+
+    @TableField("WORKADDRESS")
+    private String workaddress;
+
+    @TableField("STOPLINENAME")
+    private String stoplinename;
+
+    @TableField("RUNDEPT")
+    private String rundept;
+
+    @TableField("CONSDEPT")
+    private String consdept;
+
+    @TableField("SIGNATORY")
+    private String signatory;
+
+    @TableField("TKCHAMBER")
+    private String tkchamber;
+
+    @TableField("REMARK1")
+    private String remark1;
+
+    @TableField("INCEPTDATE")
+    private Date inceptdate;
+
+    @TableField("INCEPTMAN")
+    private String inceptman;
+
+    @TableField("YORN")
+    private String yorn;
+
+    @TableField("ADJUSTORADD")
+    private String adjustoradd;
+
+    @TableField("ADJUSTUSER")
+    private String adjustuser;
+
+    @TableField("PRESERVING")
+    private String preserving;
+
+    @TableField("REMARK2")
+    private String remark2;
+
+    @TableField("FIATQUOMODO")
+    private String fiatquomodo;
+
+    @TableField("FIATDATE")
+    private Date fiatdate;
+
+    @TableField("FIATUSER1")
+    private String fiatuser1;
+
+    @TableField("PRINCIPAL1")
+    private String principal1;
+
+    @TableField("REMARK3")
+    private String remark3;
+
+    @TableField("PROJECT")
+    private String project;
+
+    @TableField("PRINCIPAL2")
+    private String principal2;
+
+    @TableField("FIATUSER2")
+    private String fiatuser2;
+
+    @TableField("SIGNATORY1")
+    private String signatory1;
+
+    @TableField("CHANGEDATE")
+    private Date changedate;
+
+    @TableField("PRINCIPAL3")
+    private String principal3;
+
+    @TableField("NEWPRINCIPAL")
+    private String newprincipal;
+
+    @TableField("FIATUSER3")
+    private String fiatuser3;
+
+    @TableField("NEWDATE")
+    private Date newdate;
+
+    @TableField("PRINCIPAL4")
+    private String principal4;
+
+    @TableField("INCEPTMAN1")
+    private String inceptman1;
+
+    @TableField("FINALTIME")
+    private Date finaltime;
+
+    @TableField("PRINCIPAL5")
+    private String principal5;
+
+    @TableField("FIATUSER4")
+    private String fiatuser4;
+
+    @TableField("LINENUM")
+    private String linenum;
+
+    @TableField("STATUS")
+    private String status;
+
+    @TableField("STATUSDATE")
+    private Date statusdate;
+
+    @TableField("EQNUM")
+    private String eqnum;
+
+    @TableField("LOCATION")
+    private String location;
+
+    @TableField("SECYORN")
+    private String secyorn;
+
+    @TableField("OUTYORN")
+    private String outyorn;
+
+    @TableField("SAFEYORN")
+    private String safeyorn;
+
+    @TableField("SITENUM")
+    private String sitenum;
+
+    @TableField("CORPNUM")
+    private String corpnum;
+
+    @TableField("EQNUMDIS")
+    private String eqnumdis;
+
+    @TableField("LOCATIONDIS")
+    private String locationdis;
+
+    @TableField("WORKDEPT")
+    private String workdept;
+
+    @TableField("SIGNDATE")
+    private Date signdate;
+
+    @TableField("MEMBERCHANGE")
+    private String memberchange;
+
+    @TableField("UNLINENAME")
+    private String unlinename;
+
+    @TableField("UNLINECOUNT")
+    private String unlinecount;
+
+    @TableField("SWITCHCOUNT")
+    private String switchcount;
+
+    @TableField("BAFFLECOUNT")
+    private Double bafflecount;
+
+    @TableField("FIATUSER5")
+    private String fiatuser5;
+
+    @TableField("TICKETFINALTIME")
+    private Date ticketfinaltime;
+
+    @TableField("SUBNUM")
+    private String subnum;
+
+    @TableField("SUBPRINCIPAL")
+    private String subprincipal;
+
+    @TableField("FINALTYPE1")
+    private String finaltype1;
+
+    @TableField("FINALTIME1")
+    private Date finaltime1;
+
+    @TableField("PRINCIPAL6")
+    private String principal6;
+
+    @TableField("FIATUSER6")
+    private String fiatuser6;
+
+    @TableField("FIATDATE1")
+    private Date fiatdate1;
+
+    @TableField("FIATUSER7")
+    private String fiatuser7;
+
+    @TableField("SAFETY")
+    private String safety;
+
+    @TableField("PRINCIPAL7")
+    private String principal7;
+
+    @TableField("WORKLINE")
+    private String workline;
+
+    @TableField("EQUI")
+    private String equi;
+
+    @TableField("SAFENOTICE")
+    private String safenotice;
+
+    @TableField("SEQUENCE")
+    private Double sequence;
+
+    @TableField("STANTICKETTYPE")
+    private String stantickettype;
+
+    @TableField("STLITICKETTYPE")
+    private String stlitickettype;
+
+    @TableField("INITIALUSER")
+    private String initialuser;
+
+    @TableField("INITIALUSERDEPT")
+    private String initialuserdept;
+
+    @TableField("WORKUSER")
+    private String workuser;
+
+    @TableField("TICKETNUM")
+    private String ticketnum;
+
+    @TableField("ADDPEOPLE")
+    private String addpeople;
+
+    @TableField("ADDTIME")
+    private Date addtime;
+
+    @TableField("AWAYPEOPLE")
+    private String awaypeople;
+
+    @TableField("AWAYTIME")
+    private Date awaytime;
+
+    @TableField("WORKSTEERPEOPLE")
+    private String worksteerpeople;
+
+    @TableField("WORKADDPEOPLE")
+    private String workaddpeople;
+
+    @TableField("STOPSCOPE")
+    private String stopscope;
+
+    @TableField("COUNTERSIGNDATE")
+    private Date countersigndate;
+
+    @TableField("COUNTERSIGNPERSON")
+    private String countersignperson;
+
+    @TableField("CHECKDATE")
+    private Date checkdate;
+
+    @TableField("CHECKPERSON")
+    private String checkperson;
+
+    @TableField("CHECKQUESTION")
+    private String checkquestion;
+
+    @TableField("REMARK4")
+    private String remark4;
+
+    @TableField("CHECKSTATE")
+    private String checkstate;
+
+    @TableField("STARTWORKTIME")
+    private Date startworktime;
+
+    @TableField("ENDWORKTIME")
+    private Date endworktime;
+
+    @TableField("PRINCIPAL8")
+    private String principal8;
+
+    @TableField("BUGNUM")
+    private String bugnum;
+
+    @TableField("WORKAREA")
+    private String workarea;
+
+    @TableField("FIREPRINCIPAL")
+    private String fireprincipal;
+
+    @TableField("FIRELOCATION")
+    private String firelocation;
+
+    @TableField("SURVEYLOCATION")
+    private String surveylocation;
+
+    @TableField("CONTENTS")
+    private String contents;
+
+    @TableField("INSTRUMENT")
+    private String instrument;
+
+    @TableField("SURVEYPERSON")
+    private String surveyperson;
+
+    @TableField("SURVEYTIME")
+    private Date surveytime;
+
+    @TableField("APPLYFIRESTARTTIME")
+    private Date applyfirestarttime;
+
+    @TableField("APPLYFIREENDTIME")
+    private Date applyfireendtime;
+
+    @TableField("LEADERSHIP")
+    private String leadership;
+
+    @TableField("SAFEPRINCIPAL")
+    private String safeprincipal;
+
+    @TableField("FIREFIGHTINGPERSON")
+    private String firefightingperson;
+
+    @TableField("SHIFTFOREMAN")
+    private String shiftforeman;
+
+    @TableField("FIREOPERATOR")
+    private String fireoperator;
+
+    @TableField("FIREPERMITTIME")
+    private Date firepermittime;
+
+    @TableField("FIREENDTIME")
+    private Date fireendtime;
+
+    @TableField("DEPTGROUP1")
+    private String deptgroup1;
+
+    @TableField("FIREWORKCONTENT")
+    private String fireworkcontent;
+
+    @TableField("FIATUSER8")
+    private String fiatuser8;
+
+    @TableField("GUARDIAN")
+    private String guardian;
+
+    @TableField("GUARDIAN1")
+    private String guardian1;
+
+    @TableField("GUARDIAN2")
+    private String guardian2;
+
+    @TableField("FIREOPERATOR1")
+    private String fireoperator1;
+
+    @TableField("SHIFTFOREMAN1")
+    private String shiftforeman1;
+
+    @TableField("DESCRIPTION")
+    private String description;
+
+    @TableField("EQUNAME")
+    private String equname;
+
+    @TableField("BARNAME")
+    private String barname;
+
+    @TableField("BARNAME1")
+    private String barname1;
+
+    @TableField("LINEADDDATE")
+    private Date lineadddate;
+
+    @TableField("LINEENDDATE")
+    private Date lineenddate;
+
+    @TableField("LINEAGREEMODE")
+    private String lineagreemode;
+
+    @TableField("LINEAGEEPEOPLE")
+    private String lineageepeople;
+
+    @TableField("LINEAGEEPEOPLE2")
+    private String lineageepeople2;
+
+    @TableField("LINEBEGINDATE")
+    private Date linebegindate;
+
+    @TableField("LINEREPORTMODE")
+    private String linereportmode;
+
+    @TableField("LINEAGEEPEOPLE4")
+    private String lineageepeople4;
+
+    @TableField("LINEAGEEPEOPLE3")
+    private String lineageepeople3;
+
+    @TableField("LINEREPOPTMODE")
+    private String linerepoptmode;
+
+    @TableField("EQUIPMENT")
+    private String equipment;
+
+    @TableField("SBMS")
+    private String sbms;
+
+    @TableField("EQNAME")
+    private String eqname;
+
+    @TableField("FIATUSER")
+    private String fiatuser;
+
+    @TableField("INCEPTMAN2")
+    private String inceptman2;
+
+    @TableField("LEADERSHIP1")
+    private String leadership1;
+
+    @TableField("SAFEPRINCIPAL1")
+    private String safeprincipal1;
+
+    @TableField("FIREFIGHTPERSON1")
+    private String firefightperson1;
+
+    @TableField("WTNUM")
+    private String wtnum;
+
+    @TableField("WORKREPORT")
+    private String workreport;
+
+    @TableField("SAFEMEASURE")
+    private String safemeasure;
+
+    @TableField("ADDSAFEMEASURE")
+    private String addsafemeasure;
+
+    @TableField("PRINCIPALDATE")
+    private Date principaldate;
+
+    @TableField("FIATUSERDATE")
+    private Date fiatuserdate;
+
+    @TableField("GWNUM")
+    private String gwnum;
+
+    @TableField("ISEND")
+    private String isend;
+
+    @TableField("WSPEED")
+    private String wspeed;
+
+    @TableField("COMPLETION")
+    private String completion;
+
+    @TableField("RELINECOUNT")
+    private String relinecount;
+
+    @TableField("UNSWITCHCOUNT")
+    private String unswitchcount;
+
+    @TableField("RESWITCHCOUNT")
+    private String reswitchcount;
+
+    @TableField("FIREMODE")
+    private String firemode;
+
+    @TableField("FIREOPERATORNUM")
+    private String fireoperatornum;
+
+    @TableField("SIGNATORYNUM")
+    private String signatorynum;
+
+    @TableField("FIATUSER1NUM")
+    private String fiatuser1num;
+
+    @TableField("PRINCIPAL2NUM")
+    private String principal2num;
+
+    @TableField("SHIFTFOREMANNUM")
+    private String shiftforemannum;
+
+    @TableField("FIATUSERNUM")
+    private String fiatusernum;
+
+    @TableField("INCEPTMAN1NUM")
+    private String inceptman1num;
+
+    @TableField("FIREFIGHTINGPERNUM")
+    private String firefightingpernum;
+
+    @TableField("SAFEPRINCIPALNUM")
+    private String safeprincipalnum;
+
+    @TableField("FIATUSER5NUM")
+    private String fiatuser5num;
+
+    @TableField("FIATUSER8NUM")
+    private String fiatuser8num;
+
+    @TableField("PRINCIPAL1NUM")
+    private String principal1num;
+
+    @TableField("GUARDIANNUM")
+    private String guardiannum;
+
+    @TableField("FIREOPERATOR1NUM")
+    private String fireoperator1num;
+
+    @TableField("PRINCIPAL5NUM")
+    private String principal5num;
+
+    @TableField("FIATUSER4NUM")
+    private String fiatuser4num;
+
+    @TableField("SHIFTFORENUM1NUM")
+    private String shiftforenum1num;
+
+    @TableField("INCEPTMANNUM")
+    private String inceptmannum;
+
+    @TableField("PRINCIPAL3NUM")
+    private String principal3num;
+
+    @TableField("GUARDIAN1NUM")
+    private String guardian1num;
+
+    @TableField("FIATUSER7NUM")
+    private String fiatuser7num;
+
+    @TableField("PRINCIPAL6NUM")
+    private String principal6num;
+
+    @TableField("SAFEPRINCIPAL1NUM")
+    private String safeprincipal1num;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 59 - 0
src/main/java/com/gyee/viewticket/model/ticket/Woworktask.java

@@ -0,0 +1,59 @@
+package com.gyee.viewticket.model.ticket;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("WOWORKTASK")
+public class Woworktask extends Model<Woworktask> {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId("ID")
+    private Double id;
+
+    @TableField("WONUM")
+    private String wonum;
+
+    @TableField("ADDRESS")
+    private String address;
+
+    @TableField("LOCATION")
+    private String location;
+
+    @TableField("EQNUM")
+    private String eqnum;
+
+    @TableField("WORKCONTENT")
+    private String workcontent;
+
+    @TableField("DESCRIPTION")
+    private String description;
+
+    @TableField("DESCRIPTION1")
+    private String description1;
+
+    @TableField("DESCRIPTION2")
+    private String description2;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 42 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/IbsidgenServiceImpl.java

@@ -0,0 +1,42 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.gyee.viewticket.comm.exception.TicketException;
+import com.gyee.viewticket.model.ticket.Ibsidgen;
+import com.gyee.viewticket.mapper.ticket.IbsidgenMapper;
+import com.gyee.viewticket.service.ticket.IbsidgenService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class IbsidgenServiceImpl extends ServiceImpl<IbsidgenMapper, Ibsidgen> implements IbsidgenService {
+
+    @Override
+    public Ibsidgen selectId(String table) {
+        QueryWrapper<Ibsidgen> wrapper = new QueryWrapper<>();
+        wrapper.eq("TABLENAME", table);
+
+        Ibsidgen ibsidgen = baseMapper.selectOne(wrapper);
+
+        return ibsidgen;
+    }
+
+    @Transactional
+    @Override
+    public void updateGen(Ibsidgen gen, double id) {
+        gen.setIdvalue(id);
+        int result = baseMapper.updateById(gen);
+
+        if (result== 0)
+            throw new TicketException("数据更新失败");
+    }
+}

+ 44 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/LaborServiceImpl.java

@@ -0,0 +1,44 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.gyee.viewticket.model.ticket.Labor;
+import com.gyee.viewticket.mapper.ticket.LaborMapper;
+import com.gyee.viewticket.service.ticket.LaborService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gyee.viewticket.util.TicketUtil;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class LaborServiceImpl extends ServiceImpl<LaborMapper, Labor> implements LaborService {
+
+    @Override
+    public List<Labor> getLaborList(String dept) {
+        QueryWrapper<Labor> wrapper = new QueryWrapper<>();
+        if (TicketUtil.allDept().contains(dept)){
+            wrapper.in("DEPTNUM", dept);
+        }
+
+        List<Labor> labors = baseMapper.selectList(wrapper);
+
+        return labors;
+    }
+
+    @Override
+    public Labor getLaborItem(String laborNum) {
+        QueryWrapper<Labor> wrapper = new QueryWrapper<>();
+        wrapper.eq("LABORNUM", laborNum);
+
+        Labor labor = baseMapper.selectOne(wrapper);
+        return labor;
+    }
+}

+ 33 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/LocationsServiceImpl.java

@@ -0,0 +1,33 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.gyee.viewticket.model.ticket.Locations;
+import com.gyee.viewticket.mapper.ticket.LocationsMapper;
+import com.gyee.viewticket.service.ticket.LocationsService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class LocationsServiceImpl extends ServiceImpl<LocationsMapper, Locations> implements LocationsService {
+    @Autowired
+    LocationsMapper locationsMapper;
+
+    @Override
+    public String gerDescription(String location, String description) {
+        List<Locations> list = locationsMapper.selectDescription(location+"%",description);
+        if (list.size()>0){
+            return list.get(0).getLocation();
+        }
+        return null;
+    }
+}

+ 33 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/WindturbineServiceImpl.java

@@ -0,0 +1,33 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.gyee.viewticket.model.ticket.Windturbine;
+import com.gyee.viewticket.mapper.ticket.WindturbineMapper;
+import com.gyee.viewticket.service.ticket.WindturbineService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class WindturbineServiceImpl extends ServiceImpl<WindturbineMapper, Windturbine> implements WindturbineService {
+
+
+    @Autowired
+    WindturbineMapper windturbineMapper;
+
+    @Override
+    public List<Map> getWindturbineList(String deptnum) {
+        List<Map> map  = windturbineMapper.getWindturbineList(deptnum);
+        return map;
+    }
+}

+ 53 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/WorkriskpoolServiceImpl.java

@@ -0,0 +1,53 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.gyee.viewticket.model.ticket.Workriskpool;
+import com.gyee.viewticket.mapper.ticket.WorkriskpoolMapper;
+import com.gyee.viewticket.service.ticket.WorkriskpoolService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class WorkriskpoolServiceImpl extends ServiceImpl<WorkriskpoolMapper, Workriskpool> implements WorkriskpoolService {
+
+    @Autowired
+    WorkriskpoolMapper workriskpoolMapper;
+
+    @Override
+    public List<Map> getWorkriskpoolList() {
+        List<Map> list = workriskpoolMapper.selectWorkriskpoolList();
+        if (list.size()>0){
+            for (int i = 0;i<list.size();i++){
+                List<Map> parent = workriskpoolMapper.selectWorkriskpoolParentList(list.get(i).get("value").toString());
+                list.get(i).put("children",parent);
+                if(parent.size()>0){
+                    for (Map m:parent) {
+                        List<Map> parent1 = workriskpoolMapper.selectWorkriskpoolParentList(m.get("value").toString());
+                        m.put("children",parent1);
+                    }
+                }
+            }
+        }
+        return list;
+    }
+
+    @Override
+    public Workriskpool getWorkriskpool(String workrisknum) {
+        QueryWrapper<Workriskpool> wrapper = new QueryWrapper<>();
+        wrapper.eq("WORKRISKNUM", workrisknum);
+        Workriskpool workriskpool =  baseMapper.selectOne(wrapper);
+        return workriskpool;
+    }
+}

+ 97 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/WorkticketServiceImpl.java

@@ -0,0 +1,97 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.gyee.viewticket.mapper.ticket.WoworktaskMapper;
+import com.gyee.viewticket.model.ticket.Ibsidgen;
+import com.gyee.viewticket.model.ticket.Workriskpool;
+import com.gyee.viewticket.model.ticket.Workticket;
+import com.gyee.viewticket.mapper.ticket.WorkticketMapper;
+import com.gyee.viewticket.model.ticket.Woworktask;
+import com.gyee.viewticket.service.ticket.*;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gyee.viewticket.util.TicketUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class WorkticketServiceImpl extends ServiceImpl<WorkticketMapper, Workticket> implements WorkticketService {
+
+
+    @Autowired
+    IbsidgenService ibsidgenService;
+    @Autowired
+    WoworktaskMapper woworktaskMapper;
+    @Autowired
+    WorkticketMapper workticketMapper;
+    @Autowired
+    LocationsService locationsService;
+    @Autowired
+    WorkriskpoolService workriskpoolService;
+
+
+
+
+    @Override
+    public boolean saveWorkticket(String workdept, String location, String description, String wspeed, String worktypeid, String labornum) {
+        Workticket workticket =  new Workticket();
+        workticket.setWonum(String.valueOf(Integer.valueOf(workticketMapper.selectMaxWonum()) + 1));
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM");
+        String prefix = TicketUtil.getStationPrefix(workdept) + sdf.format(new Date());
+        String endticketnum = workticketMapper.selectTicketnum("%"+prefix+"%");
+        String  ticketnum = TicketUtil.getTicketNum(prefix, endticketnum);
+        workticket.setTicketnum(ticketnum);//工作票编号
+        workticket.setPrincipal(labornum);//工作负责人
+        workticket.setStatus("流程未启动");//工作票状态
+        workticket.setStatusdate(new Date());//开始时间
+        workticket.setWtickettype("风场风机");
+        workticket.setDeptgroup1("风机检修班");//工作班组
+        workticket.setSitenum(workdept);
+        workticket.setCorpnum("GUODIAN");//
+        workticket.setGwnum("100.00");
+        workticket.setFinaltype("极高风险");
+        workticket.setWorkdept(workdept);//工作单位
+        workticket.setWspeed(wspeed);//风速
+        String wxbj = TicketUtil.getWxbj(description);
+        if (wxbj.length()>0){
+            String  loc = locationsService.gerDescription(location.trim(),wxbj.trim());
+            workticket.setWtnum(loc.length()>0? loc:location);
+        }else {
+            workticket.setWtnum(location);//风电机编号
+        }
+        Ibsidgen gen = ibsidgenService.selectId("WORKTICKET");
+        double id = gen.getIdvalue() + 1;
+        ibsidgenService.updateGen(gen, id);
+        workticket.setId(id);
+        int code  = baseMapper.insert(workticket);
+        if (code <= 0){
+            return false;
+        }
+
+        Workriskpool pool = workriskpoolService.getWorkriskpool(worktypeid);
+        Ibsidgen genPool = ibsidgenService.selectId("WOWORKTASK");
+        double poolId = genPool.getIdvalue()+ 1;
+        ibsidgenService.updateGen(genPool, poolId);
+        Woworktask woworktask = new Woworktask();
+        woworktask.setId(poolId);
+        woworktask.setAddress("");
+        woworktask.setLocation(pool.getWorkrisknum());
+        woworktask.setDescription(pool.getDescription());
+        woworktask.setWonum(workticket.getWonum());
+        int code1  = woworktaskMapper.insert(woworktask);
+        if (code1 <= 0){
+            return false;
+        }
+        return true;
+
+    }
+}

+ 20 - 0
src/main/java/com/gyee/viewticket/service/impl/ticket/WoworktaskServiceImpl.java

@@ -0,0 +1,20 @@
+package com.gyee.viewticket.service.impl.ticket;
+
+import com.gyee.viewticket.model.ticket.Woworktask;
+import com.gyee.viewticket.mapper.ticket.WoworktaskMapper;
+import com.gyee.viewticket.service.ticket.WoworktaskService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public class WoworktaskServiceImpl extends ServiceImpl<WoworktaskMapper, Woworktask> implements WoworktaskService {
+
+}

+ 34 - 0
src/main/java/com/gyee/viewticket/service/ticket/IbsidgenService.java

@@ -0,0 +1,34 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Ibsidgen;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface IbsidgenService extends IService<Ibsidgen> {
+    /**
+     * 查询id
+     *
+     * @param table
+     * @return
+     */
+    Ibsidgen selectId(String table);
+
+
+    /**
+     * 更新  --- id + 1
+     *
+     * @param gen
+     * @return
+     */
+    void updateGen(Ibsidgen gen, double id);
+
+}

+ 36 - 0
src/main/java/com/gyee/viewticket/service/ticket/LaborService.java

@@ -0,0 +1,36 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Labor;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface LaborService extends IService<Labor> {
+
+    /**
+     * 根据场站查询人员
+     *
+     * @param dept
+     * @return
+     */
+    List<Labor> getLaborList(String dept);
+
+    /**
+     * 根据人员登录名查询一条
+     *
+     * @param laborNum
+     * @return
+     */
+    Labor getLaborItem(String laborNum);
+
+}

+ 19 - 0
src/main/java/com/gyee/viewticket/service/ticket/LocationsService.java

@@ -0,0 +1,19 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Locations;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface LocationsService extends IService<Locations> {
+    String gerDescription(String location,String description);
+
+}

+ 22 - 0
src/main/java/com/gyee/viewticket/service/ticket/WindturbineService.java

@@ -0,0 +1,22 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Windturbine;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface WindturbineService extends IService<Windturbine> {
+
+    List<Map> getWindturbineList(String deptnum);
+}

+ 24 - 0
src/main/java/com/gyee/viewticket/service/ticket/WorkriskpoolService.java

@@ -0,0 +1,24 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Workriskpool;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface WorkriskpoolService extends IService<Workriskpool> {
+
+    List<Map> getWorkriskpoolList();
+
+    Workriskpool getWorkriskpool(String workrisknum);
+}

+ 29 - 0
src/main/java/com/gyee/viewticket/service/ticket/WorkticketService.java

@@ -0,0 +1,29 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Workticket;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface WorkticketService extends IService<Workticket> {
+
+    /**
+     * 新增工作票
+     * @param workdept
+     * @param location
+     * @param description
+     * @param wspeed
+     * @param worktypeid
+     * @return
+     */
+    boolean saveWorkticket(String workdept,String location,String description,String wspeed,String worktypeid,String labornum);
+
+}

+ 18 - 0
src/main/java/com/gyee/viewticket/service/ticket/WoworktaskService.java

@@ -0,0 +1,18 @@
+package com.gyee.viewticket.service.ticket;
+
+import com.gyee.viewticket.model.ticket.Woworktask;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author admin
+ * @since 2021-03-09
+ */
+@Service
+public interface WoworktaskService extends IService<Woworktask> {
+
+}

+ 246 - 0
src/main/java/com/gyee/viewticket/util/TicketUtil.java

@@ -0,0 +1,246 @@
+package com.gyee.viewticket.util;
+
+
+import java.util.*;
+
+/**
+ * 工作票
+ */
+public class TicketUtil {
+
+    /**
+     * 返回所有场站集合
+     *
+     * @return
+     */
+    public static List<String> allDept(){
+        List<String> list = new ArrayList<>();
+
+        list.add("石板泉风电场");
+        list.add("麻黄山风电场");
+        list.add("牛首山风电场");
+        list.add("香山风电场");
+        list.add("青山风电场");
+        list.add("平罗光伏电站");
+        list.add("宣和光伏发电站");
+        list.add("大武口电站");
+
+        return list;
+    }
+
+
+    /**
+     * 工作票类型
+     *
+     * @param type
+     * @return
+     */
+    public static String ticketType(String type) {
+        if (type == null)
+            return null;
+
+        switch (type) {
+            case "wind":
+                type = "风场风机";
+                break;
+            case "elec1":
+                type = "电气一种";
+                break;
+            case "elec2":
+                type = "电气二种";
+                break;
+            case "fire1":
+                type = "风场动火";
+                break;
+            case "fire2":
+                type = "二级动火";
+                break;
+            case "line1":
+                type = "线路一种";
+                break;
+            case "line2":
+                type = "线路二种";
+                break;
+        }
+
+        return type;
+    }
+
+
+
+
+
+
+
+
+    /**
+     * 流程角色转换为人员组
+     *
+     * @param role
+     * @return
+     */
+    public static String roleFormat(String role) {
+        String groupName = null;
+        switch (role) {
+            case "工作票签发人":
+                groupName = "WTSIGNATORY";
+                break;
+            case "值班负责人":
+                groupName = "SHIFTENGINEER";
+                break;
+            case "工作票许可人":
+                groupName = "XUKEREN";
+                break;
+            case "经济运行人员":
+                groupName = "ECONOMY";
+                break;
+            case "缺陷运行人员":
+                groupName = "RUNUSER";
+                break;
+            case "检修人员":
+                groupName = "CHECKREPAIRUSER";
+                break;
+            case "消防监护人":
+                groupName = "FIRECONTROL";
+                break;
+        }
+
+        return groupName;
+    }
+
+    /**
+     * 各种票据的 name 映射
+     *
+     * @param wfName
+     * @return
+     */
+    public static String wfNameFormat(String wfName) {
+        String app = null;
+        switch (wfName) {
+            case "风电机组工作票":
+                app = "WINDELEC";
+                break;
+            case "电气一种工作票":
+                app = "ELEC1";
+                break;
+            case "电气二种工作票":
+                app = "ELEC2";
+                break;
+            case "风场动火工作票":
+                app = "WOMOVEFIRE";
+                break;
+            case "二级动火工作票":
+                app = "WOMOVEFIRE2";
+                break;
+            case "线路一种工作票":
+                app = "ELECFIRST";
+                break;
+            case "线路二种工作票":
+                app = "ELECFIRST2";
+                break;
+        }
+
+        return app;
+    }
+
+
+
+    /**
+     * 获取项目的路径
+     * @return
+     */
+    public static String absolutePath(){
+        return System.getProperty("user.dir");
+    }
+
+
+    /**
+     * 生成风机工作票编号
+     * @param endticketnum
+     * @return
+     */
+    public static String getTicketNum(String ticketnum, String endticketnum){
+        if(endticketnum != null && endticketnum != ""){
+            String num = endticketnum .substring(9);
+            int number = Integer.valueOf(num) + 1;
+            if(number < 10){
+                ticketnum += ("0" + number);
+            }else if(number < 100){
+                ticketnum += number;
+            }else{
+                ticketnum += number;
+            }
+        }else{
+            ticketnum += "01";
+        }
+
+        return ticketnum;
+    }
+
+
+    /**
+     * 获取场站前缀
+     * @param station
+     * @return
+     */
+    public static String getStationPrefix(String station){
+        switch (station) {
+            case "麻黄山风电场":
+                station = "麻";
+                break;
+            case "牛首山风电场":
+                station = "牛";
+                break;
+            case "青山风电场":
+                station = "青";
+                break;
+            case "石板泉风电场":
+                station = "石";
+                break;
+            case "香山风电场":
+                station = "香";
+                break;
+            default:
+                station = "国";
+                break;
+        }
+
+        return station + "FJ";
+    }
+
+
+    public static String getWxbj(String desc){
+        switch (desc) {
+            case "fdj":
+                desc = "发电机系统";
+                break;
+            case "hh":
+                desc = "滑环";
+                break;
+            case "clx":
+                desc = "齿轮箱";
+                break;
+            case "dj":
+                desc = "叶片";
+                break;
+            case "bpq":
+                desc = "变频器";
+                break;
+            case "tdg":
+                desc = "塔底控制柜";
+                break;
+            case "yyz":
+                desc = "液压系统";
+                break;
+            case "phdj":
+                desc = "偏航系统";
+                break;
+            default:
+                desc = "";
+                break;
+        }
+
+        return desc;
+    }
+
+}

+ 38 - 0
src/main/resources/application.yml

@@ -0,0 +1,38 @@
+server:
+  port: 9988
+mybatis-plus:
+  mapper-locations: classpath:/mapper/ticket/*.xml
+  global-config:
+    db-config:
+      table-underline: true
+      logic-not-delete-value: 0
+      logic-delete-value: 1
+
+spring:
+  datasource:
+    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
+    type: com.alibaba.druid.pool.DruidDataSource
+    url: jdbc:sqlserver://10.155.32.2:1433;DatabaseName=test
+    username: sa
+    password: Gyee@321#!
+    maxActive: 20
+    initialSize: 1
+    maxWait: 60000
+    minIdle: 1
+    timeBetweenEvictionRunsMillis: 60000
+    minEvictableIdleTimeMillis: 300000
+    validationQuery: select 1
+    testWhileIdle: true
+    testOnBorrow: true
+    testOnReturn: true
+    poolPreparedStatements: true
+    maxOpenPreparedStatements: 20
+
+logging:
+  level:
+    com.gyee.viewticket.mapper.ticket: trace # 设置为自己的mapper目录
+
+
+#  application:
+#    name: microservice-provider
+

BIN
src/main/resources/lib/sqljdbc42.jar


+ 193 - 0
src/main/resources/logback.xml

@@ -0,0 +1,193 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
+scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒当scan为true时,此属性生效。默认的时间间隔为1分钟。
+debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。
+-->
+<configuration scan="true" scanPeriod="60 seconds" debug="false"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+	
+	
+	<!-- 定义日志的根目录 -->
+    <property name="LOG_HOME" value="logrecord" />
+	  <!-- 定义日志文件名称 -->
+    <property name="appName" value="viewticket"></property>
+     
+     
+     <!-- 控制台输出 -->
+
+	<!-- ch.qos.logback.core.ConsoleAppender 表示控制台输出 -->
+	<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+		<!--
+        	日志输出格式:
+            %d表示日期时间,
+            %thread表示线程名,
+            %-5level:级别从左显示5个字符宽度
+            %logger{50} 表示logger名字最长50个字符,否则按照句点分割。
+            %msg:日志消息,
+            %n是换行符
+        -->
+        <layout class="ch.qos.logback.classic.PatternLayout">
+            <!--<springProfile name="dev">-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} -> [%thread] -> %-5level %logger{50} - %msg%n</pattern>
+            <!--</springProfile>-->
+            <!--<springProfile name="!dev">-->
+                <!--<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>-->
+            <!--</springProfile>-->
+        </layout>
+	</appender>
+	
+	<!-- 控制台输出 END -->
+	
+	
+	<!-- 文件输出 -->
+	 <!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 -->
+    <appender name="appLogAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 指定日志文件的名称 -->
+        <file>${LOG_HOME}/${appName}.log</file>
+        <!-- 如果是 true,日志被追加到文件结尾,如果是 false,清空现存文件,默认是true。 -->
+    	<append>true</append> 
+        <!--
+	       	 当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名
+	        TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动。
+        -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <!--
+            	滚动时产生的文件的存放位置及文件名称 %d{yyyy-MM-dd}:按天进行日志滚动
+            	%i:当文件大小超过maxFileSize时,按照i进行文件滚动
+            -->
+            <fileNamePattern>${LOG_HOME}/${appName}-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
+            <!--
+			            可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件。假设设置每天滚动,
+			            且maxHistory是30,则只保存最近30天的文件,删除之前的旧文件。注意,删除旧文件是时,
+			            那些为了归档而创建的目录也会被删除。
+            -->
+            <MaxHistory>30</MaxHistory>
+            <!--
+			            当日志文件超过maxFileSize指定的大小时,根据上面提到的%i进行日志文件滚动
+			            注意此处配置SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy
+            -->
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>50MB</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+        </rollingPolicy>
+        <!-- 日志输出格式: -->
+        <layout class="ch.qos.logback.classic.PatternLayout">
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [ %logger{50} : %line ] - %msg%n</pattern>
+        </layout>
+    </appender>
+	
+	<!-- 文件输出-END -->
+	
+	
+	
+	
+	
+	 
+	<!--
+        logger主要用于存放日志对象,也可以定义日志类型、级别
+        name:表示匹配的logger类型前缀,也就是包的前半部分
+        level:要记录的日志级别,包括 TRACE < DEBUG < INFO < WARN < ERROR
+        additivity:作用在于children-logger是否使用 rootLogger配置的appender进行输出,也可以理解为是否向上传递
+        false:表示只用当前logger的appender-ref,
+        true:表示当前logger的appender-ref和rootLogger的appender-ref都有效
+    -->
+    
+	<!-- mybatis logger -->
+    <logger name="org.mybatis" level="error"/>
+    <logger name="java.sql.Connection" level="DEBUG"/>
+    <logger name="java.sql.Statement" level="DEBUG"/>
+    <logger name="java.sql.PreparedStatement" level="DEBUG"/>
+	<!-- 自己项目的 -->
+	<logger name="com.gyee" level="DEBUG"/>
+	
+	
+	<!--
+    	root与logger是父子关系,没有特别定义则默认为root,任何一个类只会和一个logger对应,
+    	要么是定义的logger,要么是root,判断的关键在于找到这个logger,然后判断这个logger的appender和level。
+    -->
+
+    <root level="info">
+        <appender-ref ref="appLogAppender"/>
+        <appender-ref ref="STDOUT"/>
+    </root>
+
+	<!-- dev环境 -->
+<!--	<springProfile name="dev">
+	    <root level="INFO">
+			&lt;!&ndash; 控制台 &ndash;&gt;
+			<appender-ref ref="console" />
+	    </root>
+	</springProfile>-->
+	
+	 <!-- 生产环境 -->
+<!--    <springProfile name="prod">
+	    <root level="INFO">
+	        <appender-ref ref="appLogAppender"/>
+	    </root>
+	</springProfile>-->
+</configuration>
+
+
+
+
+
+
+<!-- 
+
+idea好像会报错解决方案
+
+<springProfile name="dev">
+    <root level="INFO">
+		<appender-ref ref="console" />
+    </root>
+</springProfile>
+
+   <springProfile name="prod">
+    <root level="INFO">
+        <appender-ref ref="appLogAppender"/>
+    </root>
+</springProfile>
+
+改为
+<root level="INFO">
+	<appender-ref ref="console" />
+</root>
+或者
+<root level="INFO">
+      <appender-ref ref="appLogAppender"/>
+</root>
+
+
+使用方法:
+
+1、根据自己实际项目路径修改地址
+
+<property name="LOG_HOME" value="d:\\gyee-log" />
+
+
+2、
+dev环境   与    生产环境  根据application.yml 里面的
+spring :
+  # 环境 dev|test|prod
+  profiles :
+    active : prod
+    
+来进行配置的  
+
+
+3、如果改变了的目录结构需要修改 上面的 name为自己的项目目录
+
+<logger name="com.gyee" level="DEBUG"/>
+
+
+
+4、注意事项
+开发环境只输出到控制台
+生成环境生成log日志
+
+最后,这样一改真好!!!!!
+
+
+
+ -->

+ 19 - 0
src/main/resources/mapper/ticket/IbsidgenMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.viewticket.mapper.ticket.IbsidgenMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.gyee.viewticket.model.ticket.Ibsidgen">
+        <id column="ID" property="id" />
+        <result column="TABLENAME" property="tablename" />
+        <result column="SEED" property="seed" />
+        <result column="IDVALUE" property="idvalue" />
+        <result column="MEMO" property="memo" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        ID, TABLENAME, SEED, IDVALUE, MEMO
+    </sql>
+
+</mapper>

+ 52 - 0
src/main/resources/mapper/ticket/LaborMapper.xml

@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.viewticket.mapper.ticket.LaborMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.gyee.viewticket.model.ticket.Labor">
+        <id column="ID" property="id" />
+        <result column="LABORNUM" property="labornum" />
+        <result column="LABORNAME" property="laborname" />
+        <result column="CRAFT" property="craft" />
+        <result column="DEPTNUM" property="deptnum" />
+        <result column="CREWID" property="crewid" />
+        <result column="JOBCODE" property="jobcode" />
+        <result column="EMPLOYEETYPE" property="employeetype" />
+        <result column="CALNUM" property="calnum" />
+        <result column="SHIFTNUM" property="shiftnum" />
+        <result column="ENABLED" property="enabled" />
+        <result column="EMAIL" property="email" />
+        <result column="WKADDRESS" property="wkaddress" />
+        <result column="POSTNUM" property="postnum" />
+        <result column="HOMEADDRESS" property="homeaddress" />
+        <result column="PHONENUM" property="phonenum" />
+        <result column="MPHONE" property="mphone" />
+        <result column="HOMEPHONE" property="homephone" />
+        <result column="PAYRATE" property="payrate" />
+        <result column="OTSCALE" property="otscale" />
+        <result column="BIRTHDATE" property="birthdate" />
+        <result column="HIREDATE" property="hiredate" />
+        <result column="OUTSIDE" property="outside" />
+        <result column="GLACCOUNT" property="glaccount" />
+        <result column="VENDOR" property="vendor" />
+        <result column="SUPERVISOR" property="supervisor" />
+        <result column="DEFAULTSTORELOC" property="defaultstoreloc" />
+        <result column="CONSIGN" property="consign" />
+        <result column="CONSIGSDATE" property="consigsdate" />
+        <result column="CONSIGEDATE" property="consigedate" />
+        <result column="NAVMENUTYPE" property="navmenutype" />
+        <result column="SITENUM" property="sitenum" />
+        <result column="CORPNUM" property="corpnum" />
+        <result column="DEFAULTLOC" property="defaultloc" />
+        <result column="AUTHALLDEPT" property="authalldept" />
+        <result column="AUTHDEPT" property="authdept" />
+        <result column="SHOWMIND" property="showmind" />
+        <result column="ORDERBY" property="orderby" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        ID, LABORNUM, LABORNAME, CRAFT, DEPTNUM, CREWID, JOBCODE, EMPLOYEETYPE, CALNUM, SHIFTNUM, ENABLED, EMAIL, WKADDRESS, POSTNUM, HOMEADDRESS, PHONENUM, MPHONE, HOMEPHONE, PAYRATE, OTSCALE, BIRTHDATE, HIREDATE, OUTSIDE, GLACCOUNT, VENDOR, SUPERVISOR, DEFAULTSTORELOC, CONSIGN, CONSIGSDATE, CONSIGEDATE, NAVMENUTYPE, SITENUM, CORPNUM, DEFAULTLOC, AUTHALLDEPT, AUTHDEPT, SHOWMIND, ORDERBY
+    </sql>
+
+</mapper>

+ 40 - 0
src/main/resources/mapper/ticket/LocationsMapper.xml

@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.viewticket.mapper.ticket.LocationsMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.gyee.viewticket.model.ticket.Locations">
+        <id column="ID" property="id" />
+        <result column="LOCATION" property="location" />
+        <result column="DESCRIPTION" property="description" />
+        <result column="TYPE" property="type" />
+        <result column="STATUS" property="status" />
+        <result column="STATUSDATE" property="statusdate" />
+        <result column="DEPTNUM" property="deptnum" />
+        <result column="CRAFT" property="craft" />
+        <result column="CHANGEBY" property="changeby" />
+        <result column="CHANGEDATE" property="changedate" />
+        <result column="CLASSID" property="classid" />
+        <result column="LOCPRIORITY" property="locpriority" />
+        <result column="SITENUM" property="sitenum" />
+        <result column="CORPNUM" property="corpnum" />
+        <result column="NODETYPE" property="nodetype" />
+        <result column="KKSCODE" property="kkscode" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        ID, LOCATION, DESCRIPTION, TYPE, STATUS, STATUSDATE, DEPTNUM, CRAFT, CHANGEBY, CHANGEDATE, CLASSID, LOCPRIORITY, SITENUM, CORPNUM, NODETYPE, KKSCODE
+    </sql>
+
+    <select id="selectDescription" resultType="com.gyee.viewticket.model.ticket.Locations">
+        SELECT
+        *
+        FROM
+        LOCATIONS
+        <where>
+            LOCATION LIKE  #{location}
+            and DESCRIPTION =  #{description}
+        </where>
+    </select>
+</mapper>

+ 61 - 0
src/main/resources/mapper/ticket/WindturbineMapper.xml

@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.viewticket.mapper.ticket.WindturbineMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.gyee.viewticket.model.ticket.Windturbine">
+        <id column="ID" property="id" />
+        <result column="WTNUM" property="wtnum" />
+        <result column="OWNERWF" property="ownerwf" />
+        <result column="OWNERPROJECT" property="ownerproject" />
+        <result column="OWNERLINE" property="ownerline" />
+        <result column="ORDERNUM" property="ordernum" />
+        <result column="WTWFNUM" property="wtwfnum" />
+        <result column="WTGRIDNUM" property="wtgridnum" />
+        <result column="VENDOR" property="vendor" />
+        <result column="MODEL" property="model" />
+        <result column="RATEDPOWER" property="ratedpower" />
+        <result column="RATEDWINSPE" property="ratedwinspe" />
+        <result column="RATEDVOLTAGE" property="ratedvoltage" />
+        <result column="RATEDREV" property="ratedrev" />
+        <result column="CUTINWINSPE" property="cutinwinspe" />
+        <result column="CUTOUTWINSPE" property="cutoutwinspe" />
+        <result column="MAXWINSPE" property="maxwinspe" />
+        <result column="LOWERTEMP" property="lowertemp" />
+        <result column="HIGHTEMP" property="hightemp" />
+        <result column="LOWERREV" property="lowerrev" />
+        <result column="HIGHREV" property="highrev" />
+        <result column="ROTERDIAMETER" property="roterdiameter" />
+        <result column="HUBHEIGHT" property="hubheight" />
+        <result column="RELEASEDATE" property="releasedate" />
+        <result column="INSTALLDATE" property="installdate" />
+        <result column="TESTDATE" property="testdate" />
+        <result column="OPDATE" property="opdate" />
+        <result column="LOCATION" property="location" />
+        <result column="WFLOCATION" property="wflocation" />
+        <result column="WTID" property="wtid" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        ID, WTNUM, OWNERWF, OWNERPROJECT, OWNERLINE, ORDERNUM, WTWFNUM, WTGRIDNUM, VENDOR, MODEL, RATEDPOWER, RATEDWINSPE, RATEDVOLTAGE, RATEDREV, CUTINWINSPE, CUTOUTWINSPE, MAXWINSPE, LOWERTEMP, HIGHTEMP, LOWERREV, HIGHREV, ROTERDIAMETER, HUBHEIGHT, RELEASEDATE, INSTALLDATE, TESTDATE, OPDATE, LOCATION, WFLOCATION, WTID
+    </sql>
+
+
+    <select id="getWindturbineList" resultType="java.util.HashMap">
+        SELECT
+        w.WFLOCATION,
+        w.WTID,
+        w.LOCATION
+        FROM
+        WINDTURBINE w
+        LEFT JOIN LOCATIONS l ON w.LOCATION = l.LOCATION
+        <where>
+            <if test=" '' != deptnum and null != deptnum ">
+                and  l.DEPTNUM = #{deptnum}
+            </if>
+
+        </where>
+
+    </select>
+</mapper>

+ 49 - 0
src/main/resources/mapper/ticket/WorkriskpoolMapper.xml

@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.viewticket.mapper.ticket.WorkriskpoolMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.gyee.viewticket.model.ticket.Workriskpool">
+        <id column="ID" property="id" />
+        <result column="WORKRISKNUM" property="workrisknum" />
+        <result column="DESCRIPTION" property="description" />
+        <result column="PARENT" property="parent" />
+        <result column="ROOTNODE" property="rootnode" />
+        <result column="HASCHILD" property="haschild" />
+        <result column="RESERVE1" property="reserve1" />
+        <result column="RESERVE2" property="reserve2" />
+        <result column="RESERVE3" property="reserve3" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        ID, WORKRISKNUM, DESCRIPTION, PARENT, ROOTNODE, HASCHILD, RESERVE1, RESERVE2, RESERVE3
+    </sql>
+
+
+
+    <select id="selectWorkriskpoolList" resultType="java.util.HashMap">
+        SELECT
+        w.workrisknum value,
+        w.description label
+        FROM
+        WORKRISKPOOL w
+        <where>
+            parent is null
+        </where>
+
+    </select>
+
+    <select id="selectWorkriskpoolParentList" resultType="java.util.HashMap">
+        SELECT
+        w.workrisknum value,
+        w.description label
+        FROM
+        WORKRISKPOOL w
+        <where>
+            parent = #{parent}
+        </where>
+    </select>
+
+
+</mapper>

File diff suppressed because it is too large
+ 238 - 0
src/main/resources/mapper/ticket/WorkticketMapper.xml


+ 23 - 0
src/main/resources/mapper/ticket/WoworktaskMapper.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.viewticket.mapper.ticket.WoworktaskMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.gyee.viewticket.model.ticket.Woworktask">
+        <id column="ID" property="id" />
+        <result column="WONUM" property="wonum" />
+        <result column="ADDRESS" property="address" />
+        <result column="LOCATION" property="location" />
+        <result column="EQNUM" property="eqnum" />
+        <result column="WORKCONTENT" property="workcontent" />
+        <result column="DESCRIPTION" property="description" />
+        <result column="DESCRIPTION1" property="description1" />
+        <result column="DESCRIPTION2" property="description2" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        ID, WONUM, ADDRESS, LOCATION, EQNUM, WORKCONTENT, DESCRIPTION, DESCRIPTION1, DESCRIPTION2
+    </sql>
+
+</mapper>

+ 13 - 0
src/test/java/com/gyee/viewticket/ViewticketApplicationTests.java

@@ -0,0 +1,13 @@
+package com.gyee.viewticket;
+
+import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+class ViewticketApplicationTests {
+
+    @Test
+    void contextLoads() {
+    }
+
+}