diff --git a/pom.xml b/pom.xml index e1d95bd4..b00c9c21 100644 --- a/pom.xml +++ b/pom.xml @@ -20,7 +20,7 @@ 2.5.1 2020.0.3 2021.1 - 2.0.2 + 1.1.0 2.4.1 2.1.4 3.0.0 diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java index b6147f72..736d66cb 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java @@ -1,18 +1,19 @@ package com.ruoyi.system.api.domain; -import java.util.Date; -import java.util.List; -import javax.validation.constraints.Email; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Size; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.fasterxml.jackson.annotation.JsonProperty; import com.ruoyi.common.core.annotation.Excel; import com.ruoyi.common.core.annotation.Excel.ColumnType; import com.ruoyi.common.core.annotation.Excel.Type; import com.ruoyi.common.core.annotation.Excels; import com.ruoyi.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.Email; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import java.util.Date; +import java.util.List; /** * 用户对象 sys_user @@ -35,6 +36,11 @@ public class SysUser extends BaseEntity @Excel(name = "登录名称") private String userName; + /** + * 用户类型(00系统用户) + */ + private String userType; + /** 用户昵称 */ @Excel(name = "用户名称") private String nickName; @@ -51,6 +57,17 @@ public class SysUser extends BaseEntity @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") private String sex; + /** + * 运营商id + */ + private Long operatorId; + + /** + * 权限类型(0所有 1 运营商所有 2子账号 3 流量账号) + */ + @Excel(name = "权限类型", readConverterExp = "0=所有,1=运营商所有,2=子账号,3=流量账号") + private Integer dataPowerType; + /** 用户头像 */ private String avatar; @@ -306,10 +323,34 @@ public class SysUser extends BaseEntity return roleId; } - public void setRoleId(Long roleId) - { + public void setRoleId(Long roleId) { this.roleId = roleId; } + + public Long getOperatorId() { + return operatorId; + } + + public void setOperatorId(Long operatorId) { + this.operatorId = operatorId; + } + + public Integer getDataPowerType() { + return dataPowerType; + } + + public void setDataPowerType(Integer dataPowerType) { + this.dataPowerType = dataPowerType; + } + + public String getUserType() { + return userType; + } + + public void setUserType(String userType) { + this.userType = userType; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -322,7 +363,9 @@ public class SysUser extends BaseEntity .append("sex", getSex()) .append("avatar", getAvatar()) .append("password", getPassword()) - .append("salt", getSalt()) + .append("salt", getSalt()) + .append("operatorId", getOperatorId()) + .append("dataPowerType", getDataPowerType()) .append("status", getStatus()) .append("delFlag", getDelFlag()) .append("loginIp", getLoginIp()) diff --git a/ruoyi-auth/pom.xml b/ruoyi-auth/pom.xml index 3dd68084..fef5e368 100644 --- a/ruoyi-auth/pom.xml +++ b/ruoyi-auth/pom.xml @@ -60,6 +60,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java index b549d604..9d977b17 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java @@ -1,10 +1,11 @@ package com.ruoyi.common.core.utils; +import com.ruoyi.common.core.text.StrFormatter; +import org.springframework.util.AntPathMatcher; + import java.util.Collection; import java.util.List; import java.util.Map; -import org.springframework.util.AntPathMatcher; -import com.ruoyi.common.core.text.StrFormatter; /** * 字符串工具类 @@ -466,4 +467,20 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { return (T) obj; } + + /** + * Object转String + * + * @param obj 源字符串 + * @return + * @author fjd + * @date 2018/2/27 + */ + public static String valueOf(Object obj) { + if (obj == null) { + return ""; + } else { + return String.valueOf(obj); + } + } } \ No newline at end of file diff --git a/ruoyi-gateway/pom.xml b/ruoyi-gateway/pom.xml index d9e18416..f40d046c 100644 --- a/ruoyi-gateway/pom.xml +++ b/ruoyi-gateway/pom.xml @@ -90,6 +90,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/ruoyi-modules/ruoyi-file/pom.xml b/ruoyi-modules/ruoyi-file/pom.xml index 74a000a0..2edec5ee 100644 --- a/ruoyi-modules/ruoyi-file/pom.xml +++ b/ruoyi-modules/ruoyi-file/pom.xml @@ -74,6 +74,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/ruoyi-modules/ruoyi-gen/pom.xml b/ruoyi-modules/ruoyi-gen/pom.xml index c94d860f..f5352fba 100644 --- a/ruoyi-modules/ruoyi-gen/pom.xml +++ b/ruoyi-modules/ruoyi-gen/pom.xml @@ -86,6 +86,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/ruoyi-modules/ruoyi-job/pom.xml b/ruoyi-modules/ruoyi-job/pom.xml index 56e358f8..5b218aaa 100644 --- a/ruoyi-modules/ruoyi-job/pom.xml +++ b/ruoyi-modules/ruoyi-job/pom.xml @@ -86,6 +86,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/ruoyi-modules/ruoyi-system/pom.xml b/ruoyi-modules/ruoyi-system/pom.xml index 3cd4b51b..87120c29 100644 --- a/ruoyi-modules/ruoyi-system/pom.xml +++ b/ruoyi-modules/ruoyi-system/pom.xml @@ -86,6 +86,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RemoteSystemService.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RemoteSystemService.xml new file mode 100644 index 00000000..ec2b48e3 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RemoteSystemService.xml @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + select post_id, post_code, post_name, post_sort, status, create_by, create_time, remark + from sys_post + + + + + + + + + + + + + + + + + + update sys_post + + post_code = #{postCode}, + post_name = #{postName}, + post_sort = #{postSort}, + status = #{status}, + remark = #{remark}, + update_by = #{updateBy}, + update_time = sysdate() + + where post_id = #{postId} + + + + insert into sys_post( + post_id, + post_code, + post_name, + post_sort, + status, + remark, + create_by, + create_time + )values( + #{postId}, + #{postCode}, + #{postName}, + #{postSort}, + #{status}, + #{remark}, + #{createBy}, + sysdate() + ) + + + + delete from sys_post where post_id = #{postId} + + + + delete from sys_post where post_id in + + #{postId} + + + + \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml deleted file mode 100644 index 6ac8e7c3..00000000 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - - - - - - - - - - - - select post_id, post_code, post_name, post_sort, status, create_by, create_time, remark - from sys_post - - - - - - - - - - - - - - - - - - update sys_post - - post_code = #{postCode}, - post_name = #{postName}, - post_sort = #{postSort}, - status = #{status}, - remark = #{remark}, - update_by = #{updateBy}, - update_time = sysdate() - - where post_id = #{postId} - - - - insert into sys_post( - post_id, - post_code, - post_name, - post_sort, - status, - remark, - create_by, - create_time - )values( - #{postId}, - #{postCode}, - #{postName}, - #{postSort}, - #{status}, - #{remark}, - #{createBy}, - sysdate() - ) - - - - delete from sys_post where post_id = #{postId} - - - - delete from sys_post where post_id in - - #{postId} - - - - \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index 9dddd39b..3bf4e221 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -14,6 +14,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -26,7 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -35,8 +37,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - + + @@ -44,9 +46,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - - select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, + + + select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_id, d.parent_id, d.dept_name, d.order_num, d.leader, d.status as dept_status, r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status from sys_user u diff --git a/ruoyi-visual/ruoyi-monitor/pom.xml b/ruoyi-visual/ruoyi-monitor/pom.xml index be8a78e3..8210ded7 100644 --- a/ruoyi-visual/ruoyi-monitor/pom.xml +++ b/ruoyi-visual/ruoyi-monitor/pom.xml @@ -61,6 +61,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/xhpc-modules/pom.xml b/xhpc-modules/pom.xml index ce3f95c4..5f53c21f 100644 --- a/xhpc-modules/pom.xml +++ b/xhpc-modules/pom.xml @@ -10,6 +10,7 @@ xhpc-power-pile + xhpc-user xhpc-modules diff --git a/xhpc-modules/xhpc-power-pile/pom.xml b/xhpc-modules/xhpc-power-pile/pom.xml index 5cbaec80..65314660 100644 --- a/xhpc-modules/xhpc-power-pile/pom.xml +++ b/xhpc-modules/xhpc-power-pile/pom.xml @@ -89,6 +89,7 @@ org.springframework.boot spring-boot-maven-plugin + 2.4.0 diff --git a/xhpc-modules/xhpc-user/.gitignore b/xhpc-modules/xhpc-user/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/xhpc-modules/xhpc-user/.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/ diff --git a/xhpc-modules/xhpc-user/.mvn/wrapper/MavenWrapperDownloader.java b/xhpc-modules/xhpc-user/.mvn/wrapper/MavenWrapperDownloader.java new file mode 100644 index 00000000..a45eb6ba --- /dev/null +++ b/xhpc-modules/xhpc-user/.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(); + } + +} diff --git a/xhpc-modules/xhpc-user/.mvn/wrapper/maven-wrapper.jar b/xhpc-modules/xhpc-user/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 00000000..2cc7d4a5 Binary files /dev/null and b/xhpc-modules/xhpc-user/.mvn/wrapper/maven-wrapper.jar differ diff --git a/xhpc-modules/xhpc-user/.mvn/wrapper/maven-wrapper.properties b/xhpc-modules/xhpc-user/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..ffdc10e5 --- /dev/null +++ b/xhpc-modules/xhpc-user/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.1/apache-maven-3.8.1-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar diff --git a/xhpc-modules/xhpc-user/mvnw b/xhpc-modules/xhpc-user/mvnw new file mode 100644 index 00000000..a16b5431 --- /dev/null +++ b/xhpc-modules/xhpc-user/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 "$@" diff --git a/xhpc-modules/xhpc-user/mvnw.cmd b/xhpc-modules/xhpc-user/mvnw.cmd new file mode 100644 index 00000000..c8d43372 --- /dev/null +++ b/xhpc-modules/xhpc-user/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% diff --git a/xhpc-modules/xhpc-user/pom.xml b/xhpc-modules/xhpc-user/pom.xml new file mode 100644 index 00000000..23994037 --- /dev/null +++ b/xhpc-modules/xhpc-user/pom.xml @@ -0,0 +1,109 @@ + + + + com.ruoyi + xhpc-modules + 3.0.0 + + 4.0.0 + + xhpc-user + + + 账号服务 + + + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + org.springframework.boot + spring-boot-starter-actuator + + + + org.springframework.boot + spring-boot-starter-web + + + + + mysql + mysql-connector-java + + + + + com.ruoyi + ruoyi-common-datasource + + + + + com.ruoyi + ruoyi-common-datascope + + + + org.quickserver + quickserver + 2.0.0 + + + + commons-pool + commons-pool + 1.6 + + + + leaf-boot-starter + com.sankuai.inf.leaf + 1.0.1-RELEASE + + + + org.projectlombok + lombok + + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.0 + + + + repackage + + + + + + + + diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/UserApplication.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/UserApplication.java new file mode 100644 index 00000000..63a96a6b --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/UserApplication.java @@ -0,0 +1,13 @@ +package com.xhpc.user; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class UserApplication { + + public static void main(String[] args) { + SpringApplication.run(UserApplication.class, args); + } + +} diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/controller/XhpcOperatorController.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/controller/XhpcOperatorController.java new file mode 100644 index 00000000..9791718e --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/controller/XhpcOperatorController.java @@ -0,0 +1,120 @@ +package com.xhpc.user.controller; + +import com.ruoyi.common.core.constant.UserConstants; +import com.ruoyi.common.core.utils.SecurityUtils; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.web.page.TableDataInfo; +import com.ruoyi.common.security.annotation.PreAuthorize; +import com.ruoyi.system.api.domain.SysUser; +import com.xhpc.user.domain.XhpcOperator; +import com.xhpc.user.openfeign.RemoteSystemService; +import com.xhpc.user.service.IXhpcOperatorService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Map; + +/** + * 运营商 + * + * @author ruoyi + */ +@RestController +@RequestMapping("/operator") +public class XhpcOperatorController extends BaseController { + + @Autowired + private IXhpcOperatorService iXhpcOperatorService; + + @Autowired + private RemoteSystemService remoteSystemService; + + /** + * 新增运营商 + */ + @ApiOperation("新增运营商") + @PreAuthorize(hasPermi = "user:operator:add") + @PostMapping("/add") + public AjaxResult add(@RequestBody XhpcOperator xhpcOperator) { + SysUser sysUser = new SysUser(); + sysUser.setUserName(xhpcOperator.getPhone()); + sysUser.setNickName(xhpcOperator.getName()); + sysUser.setEmail(xhpcOperator.getEmail()); + sysUser.setPhonenumber(xhpcOperator.getPhone()); + sysUser.setDeptId(103l); + sysUser.setSex("0"); + sysUser.setDataPowerType(1); + sysUser.setCreateBy(SecurityUtils.getUsername()); + sysUser.setPassword(SecurityUtils.encryptPassword(xhpcOperator.getPhone())); + AjaxResult ajaxResult = remoteSystemService.addUser(sysUser); + if (null != ajaxResult && !"200".equals(ajaxResult.get("code"))) { + return ajaxResult; + } + if (UserConstants.NOT_UNIQUE.equals(iXhpcOperatorService.checkAccountUnique(xhpcOperator))) { + return AjaxResult.error("用户'" + xhpcOperator.getPhone() + "'失败,登录账号已存在"); + } + return toAjax(iXhpcOperatorService.insert(xhpcOperator)); + } + + /** + * 修改运营商 + */ + @ApiOperation("修改运营商") + @PreAuthorize(hasPermi = "user:operator:edit") + @PostMapping("/edit") + public AjaxResult edit(@RequestBody XhpcOperator xhpcOperator) { + if (null == xhpcOperator.getOperatorId()) { + return AjaxResult.error("运营商id不能为空"); + } + if (UserConstants.NOT_UNIQUE.equals(iXhpcOperatorService.checkAccountUnique(xhpcOperator))) { + return AjaxResult.error("用户'" + xhpcOperator.getPhone() + "'失败,登录账号已存在"); + } + return toAjax(iXhpcOperatorService.update(xhpcOperator)); + } + + /** + * 删除运营商 + */ + @ApiOperation("删除运营商") + @PreAuthorize(hasPermi = "user:operator:remove") + @PostMapping("/remove") + public AjaxResult remove(@RequestBody Long[] ids) { + iXhpcOperatorService.deleteByIds(ids); + return AjaxResult.success(); + } + + /** + * 运营商详情 + */ + @ApiOperation("运营商详情") + @PreAuthorize(hasPermi = "user:operator:info") + @GetMapping("/info") + public AjaxResult info(@RequestBody Long operatorId) { + return AjaxResult.success(iXhpcOperatorService.info(operatorId)); + } + + /** + * 获取运营商列表 + */ + @PreAuthorize(hasPermi = "system:operator:list") + @GetMapping("/list") + public TableDataInfo list(String name, String contactName, String contactPhone) { + startPage(); + List> list = iXhpcOperatorService.selectOperatorList(name, contactName, contactPhone); + return getDataTable(list); + } + + /** + * 禁用/启用运营商 + */ + @ApiOperation("禁用/启用运营商") + @PreAuthorize(hasPermi = "user:operator:status") + @PostMapping("/status") + public AjaxResult status(@RequestBody Long id) { + iXhpcOperatorService.status(id); + return AjaxResult.success(); + } +} diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/controller/XhpcUserController.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/controller/XhpcUserController.java new file mode 100644 index 00000000..d9661d89 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/controller/XhpcUserController.java @@ -0,0 +1,152 @@ +package com.xhpc.user.controller; + +import com.ruoyi.common.core.utils.SecurityUtils; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.web.page.TableDataInfo; +import com.ruoyi.common.security.annotation.PreAuthorize; +import com.ruoyi.system.api.domain.SysUser; +import com.xhpc.user.openfeign.RemoteSystemService; +import com.xhpc.user.service.IXhpcUserService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Map; + +/** + * 运营商 + * + * @author ruoyi + */ +@RestController +@RequestMapping("/xhpc/user") +public class XhpcUserController extends BaseController { + + @Autowired + private IXhpcUserService iXhpcUserService; + + @Autowired + private RemoteSystemService remoteSystemService; + + /** + * 获取平台用户列表 + */ + @PreAuthorize(hasPermi = "user:pc:list") + @GetMapping("/pc/list") + public TableDataInfo pcList(String userName, String nickName) { + startPage(); + List> list = iXhpcUserService.selectPcUserList(userName, nickName); + return getDataTable(list); + } + + /** + * 新增平台用户 + */ + @ApiOperation("新增平台用户") + @PreAuthorize(hasPermi = "user:pc:add") + @PostMapping("/pc/add") + public AjaxResult pcAdd(@RequestBody SysUser sysUser) { + sysUser.setPhonenumber(sysUser.getUserName()); + sysUser.setDeptId(103l); + sysUser.setDataPowerType(1); + sysUser.setCreateBy(SecurityUtils.getUsername()); + AjaxResult ajaxResult = remoteSystemService.addUser(sysUser); + if (null != ajaxResult && !"200".equals(ajaxResult.get("code"))) { + return ajaxResult; + } + return AjaxResult.success(); + } + + /** + * 修改平台用户 + */ + @ApiOperation("修改平台用户") + @PreAuthorize(hasPermi = "user:pc:edit") + @PostMapping("/pc/edit") + public AjaxResult pcEdit(@RequestBody SysUser sysUser) { + if (null == sysUser.getUserId()) { + return AjaxResult.error("用户id不能为空"); + } + AjaxResult ajaxResult = remoteSystemService.editUser(sysUser); + if (null != ajaxResult && !"200".equals(ajaxResult.get("code"))) { + return ajaxResult; + } + return AjaxResult.success(); + } + + /** + * 平台用户详情 + */ + @ApiOperation("平台用户详情") + @PreAuthorize(hasPermi = "user:pc:info") + @GetMapping("/pc/info") + public AjaxResult pcInfo(@RequestBody Long userId) { + return AjaxResult.success(iXhpcUserService.pcInfo(userId)); + } + + + /** + * 获取运营上用户列表 + */ + @PreAuthorize(hasPermi = "user:operator:list") + @GetMapping("/operator/list") + public TableDataInfo operatorList(String userName, String nickName, Long operatorId) { + startPage(); + List> list = iXhpcUserService.selectOperatorUserList(userName, nickName, operatorId); + return getDataTable(list); + } + + /** + * 新增运营商用户 + */ + @ApiOperation("新增运营商用户") + @PreAuthorize(hasPermi = "user:operator:add") + @PostMapping("/operator/add") + public AjaxResult operatorAdd(@RequestBody SysUser sysUser) { + if (null == sysUser.getOperatorId()) { + return AjaxResult.error("所属运营上不能为空"); + } + sysUser.setPhonenumber(sysUser.getUserName()); + sysUser.setDeptId(103l); + sysUser.setDataPowerType(1); + sysUser.setUserType("01"); + sysUser.setCreateBy(SecurityUtils.getUsername()); + AjaxResult ajaxResult = remoteSystemService.addUser(sysUser); + if (null != ajaxResult && !"200".equals(ajaxResult.get("code"))) { + return ajaxResult; + } + return AjaxResult.success(); + } + + /** + * 修改运营商用户 + */ + @ApiOperation("修改运营商用户") + @PreAuthorize(hasPermi = "user:operator:edit") + @PostMapping("/operator/edit") + public AjaxResult operatorEdit(@RequestBody SysUser sysUser) { + if (null == sysUser.getUserId()) { + return AjaxResult.error("用户id不能为空"); + } + if (null == sysUser.getOperatorId()) { + return AjaxResult.error("所属运营上不能为空"); + } + AjaxResult ajaxResult = remoteSystemService.editUser(sysUser); + if (null != ajaxResult && !"200".equals(ajaxResult.get("code"))) { + return ajaxResult; + } + return AjaxResult.success(); + } + + /** + * 运营商用户详情 + */ + @ApiOperation("运营商用户详情") + @PreAuthorize(hasPermi = "user:operator:info") + @GetMapping("/operator/info") + public AjaxResult operatorInfo(@RequestBody Long userId) { + return AjaxResult.success(iXhpcUserService.operatorInfo(userId)); + } +} diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/domain/XhpcOperator.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/domain/XhpcOperator.java new file mode 100644 index 00000000..c5a65d81 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/domain/XhpcOperator.java @@ -0,0 +1,156 @@ +package com.xhpc.user.domain; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.util.Date; + +/** + * 运营商表 xhpc_operator + * + * @author ruoyi + */ +@Data +public class XhpcOperator { + private static final long serialVersionUID = 1L; + + /** + * 运营商id + */ + private Long operatorId; + + /** + * 名称 + */ + @NotBlank(message = "运营商名称不能为空") + @Length(max = 12, message = "运营商名称不能超过12位") + private String name; + + /** + * 联系人 + */ + @NotBlank(message = "联系人不能为空") + @Length(max = 12, message = "联系人不能超过12位") + private String contactName; + + /** + * 联系人电话 + */ + @NotBlank(message = "联系人电话不能为空") + private String contactPhone; + + /** + * 手机号(账号) + */ + @NotBlank(message = "手机号不能为空") + @Length(max = 11, message = "手机号不能超过11位") + private String phone; + + /** + * 运营商属性 + */ + @NotBlank(message = "运营商属性不能为空") + private Integer attribute; + + /** + * 地址code + */ + @NotBlank(message = "地址不能为空") + private String areaCode; + + /** + * 地址 + */ + @NotBlank(message = "地址不能为空") + private String address; + + /** + * 经度 + */ + @NotBlank(message = "经度不能为空") + private String longitude; + + /** + * 纬度 + */ + @NotBlank(message = "纬度不能为空") + private String latitude; + + /** + * 邮箱 + */ + @NotBlank(message = "邮箱不能为空") + private String email; + + /** + * 提成类型(0总金额提成 1服务费提成) + */ + @NotBlank(message = "提成类型不能为空") + private Integer commissionType; + + /** + * 平台提成 + */ + @NotBlank(message = "平台提成不能为空") + private Double platformCommissionRate; + + /** + * 运维提成 + */ + @NotBlank(message = "运维提成不能为空") + private Double maintenanceCommissionRate; + + /** + * 营业执照id + */ + @NotBlank(message = "营业执照不能为空") + private String businessLicenseId; + + /** + * 提现时间(tn) + */ + @NotBlank(message = "提现时间不能为空") + private Integer withdrawalTime; + + /** + * 设置充电终止的soc + */ + @NotBlank(message = "充电终止的soc不能为空") + private String soc; + + /** + * 状态(0正常 1停用) + */ + private Integer status; + + /** + * 删除标志(0代表存在 2代表删除) + */ + private Integer delFlag; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 创建者 + */ + private String createBy; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 更新者 + */ + private String updateBy; + + /** + * 备注 + */ + private String remark; +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/mapper/XhpcOperatorMapper.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/mapper/XhpcOperatorMapper.java new file mode 100644 index 00000000..6346f5ca --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/mapper/XhpcOperatorMapper.java @@ -0,0 +1,97 @@ +package com.xhpc.user.mapper; + +import com.ruoyi.system.api.domain.SysUser; +import com.xhpc.user.domain.XhpcOperator; + +import java.util.List; +import java.util.Map; + +/** + * 运营商信息 数据层 + * + * @author ruoyi + */ +public interface XhpcOperatorMapper { + + /** + * 修改运营商信息 + * + * @param xhpcOperator 运营商信息 + * @return 结果 + */ + public int update(XhpcOperator xhpcOperator); + + /** + * 新增运营商信息 + * + * @param xhpcOperator 运营商信息 + * @return 结果 + */ + public int insert(XhpcOperator xhpcOperator); + + /** + * 批量删除运营商信息 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + public int deleteByIds(Long[] ids); + + /** + * 校验账号是否唯一 + * + * @param phone 用户手机号 + * @return 结果 + */ + public XhpcOperator checkAccountUnique(String phone); + + /** + * 查询运营商详情 + * + * @param operatorId 运营商id + * @return 结果 + */ + public Map info(Long operatorId); + + /** + * 获取运营商列表 + * + * @param name 运营商名称 + * @param contactName 联系人 + * @param contactPhone 联系人电话 + * @return 结果 + */ + public List> selectOperatorList(String name, String contactName, String contactPhone); + + /** + * 通过用户ID删除用户和角色关联 + * + * @param userId 用户ID + * @return 结果 + */ + public int deleteUserRoleByUserId(Long userId); + + /** + * 通过用户ID删除用户和岗位关联 + * + * @param userId 用户ID + * @return 结果 + */ + public int deleteUserPostByUserId(Long userId); + + /** + * 通过用户ID删除用户 + * + * @param userId 用户ID + * @return 结果 + */ + public int deleteUserById(Long userId, String delFlag); + + /** + * 通过运营商ID查询用户 + * + * @param operatorId 运营商ID + * @return 结果 + */ + public SysUser getUserByOperatorId(Long operatorId); +} diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/mapper/XhpcUserMapper.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/mapper/XhpcUserMapper.java new file mode 100644 index 00000000..a23c4a1c --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/mapper/XhpcUserMapper.java @@ -0,0 +1,80 @@ +package com.xhpc.user.mapper; + +import com.ruoyi.system.api.domain.SysUser; + +import java.util.List; +import java.util.Map; + +/** + * 用户信息 数据层 + * + * @author ruoyi + */ +public interface XhpcUserMapper { + + /** + * 修改用户信息 + * + * @param sysUser 用户信息 + * @return 结果 + */ + public int update(SysUser sysUser); + + /** + * 新增用户信息 + * + * @param sysUser 用户信息 + * @return 结果 + */ + public int insert(SysUser sysUser); + + /** + * 批量删除用户信息 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + public int deleteByIds(Long[] ids); + + /** + * 查询用户信息 + * + * @param userId 用户id + * @return 结果 + */ + public SysUser selectUserByUserId(Long userId); + + /** + * 获取平台用户列表 + * + * @param userName 用户账号 + * @param nickName 用户昵称 + * @return 结果 + */ + public List> selectPcUserList(String userName, String nickName); + + /** + * 平台用户详情 + * + * @param userId 用户id + * @return 结果 + */ + public Map pcInfo(Long userId); + + /** + * 获取运营商用户列表 + * + * @param userName 用户账号 + * @param nickName 用户昵称 + * @return 结果 + */ + public List> selectOperatorUserList(String userName, String nickName, Long operatorId, String createBy); + + /** + * 运营商用户详情 + * + * @param userId 用户id + * @return 结果 + */ + public Map operatorInfo(Long userId); +} diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/openfeign/RemoteSystemService.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/openfeign/RemoteSystemService.java new file mode 100644 index 00000000..770b106b --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/openfeign/RemoteSystemService.java @@ -0,0 +1,37 @@ +package com.xhpc.user.openfeign; + +import com.ruoyi.common.core.constant.ServiceNameConstants; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.factory.RemoteFileFallbackFactory; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 系统服务 + * + * @author ruoyi + */ +@FeignClient(contextId = "remoteSystemService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteFileFallbackFactory.class) +public interface RemoteSystemService { + /** + * 新增用户 + * + * @param sysUser 用户信息 + * @return 结果 + */ + @PostMapping(value = "/user/add") + public AjaxResult addUser(@RequestBody SysUser sysUser); + + /** + * 新增用户 + * + * @param sysUser 用户信息 + * @return 结果 + */ + @PutMapping(value = "/user/edit") + public AjaxResult editUser(@RequestBody SysUser sysUser); + +} diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/IXhpcOperatorService.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/IXhpcOperatorService.java new file mode 100644 index 00000000..81da7c3b --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/IXhpcOperatorService.java @@ -0,0 +1,81 @@ +package com.xhpc.user.service; + +import com.xhpc.user.domain.XhpcOperator; + +import java.util.List; +import java.util.Map; + + +/** + * 运营商信息 服务层 + * + * @author ruoyi + */ +public interface IXhpcOperatorService { + + /** + * 新增任务 + * + * @param xhpcOperator 运营商信息 + * @return 结果 + */ + public int insert(XhpcOperator xhpcOperator); + + /** + * 更新任务 + * + * @param xhpcOperator 运营商信息 + * @return 结果 + */ + public int update(XhpcOperator xhpcOperator); + + /** + * 批量删除运营商信息 + * + * @param ids 需要删除的运营商ID + * @return 结果 + */ + public void deleteByIds(Long[] ids); + + /** + * 校验账号是否唯一 + * + * @param xhpcOperator 运营商信息 + * @return 结果 + */ + public String checkAccountUnique(XhpcOperator xhpcOperator); + + /** + * 查询运营商详情 + * + * @param operatorId 运营商id + * @return 结果 + */ + public Map info(Long operatorId); + + /** + * 获取运营商列表 + * + * @param name 运营商名称 + * @param contactName 联系人 + * @param contactPhone 联系人电话 + * @return 结果 + */ + public List> selectOperatorList(String name, String contactName, String contactPhone); + + /** + * 删除用户 + * + * @param userId 用户id + * @return 结果 + */ + public int removeUser(Long userId); + + /** + * 禁用/启用运营商 + * + * @param operatorId 运营商id + * @return 结果 + */ + public void status(Long operatorId); +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/IXhpcUserService.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/IXhpcUserService.java new file mode 100644 index 00000000..8d7a36c8 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/IXhpcUserService.java @@ -0,0 +1,75 @@ +package com.xhpc.user.service; + +import com.ruoyi.system.api.domain.SysUser; + +import java.util.List; +import java.util.Map; + + +/** + * 用户信息 服务层 + * + * @author ruoyi + */ +public interface IXhpcUserService { + + /** + * 新增用户信息 + * + * @param sysUser 用户信息 + * @return 结果 + */ + public int insert(SysUser sysUser); + + /** + * 更新用户信息 + * + * @param sysUser 用户信息 + * @return 结果 + */ + public int update(SysUser sysUser); + + /** + * 批量删除用户信息 + * + * @param ids 需要删除的用户ID + * @return 结果 + */ + public void deleteByIds(Long[] ids); + + /** + * 获取平台用户列表 + * + * @param userName 用户账号 + * @param nickName 用户昵称 + * @return 结果 + */ + public List> selectPcUserList(String userName, String nickName); + + /** + * 平台用户详情 + * + * @param userId 用户id + * @return 结果 + */ + public Map pcInfo(Long userId); + + /** + * 获取运营商用户列表 + * + * @param userName 用户账号 + * @param nickName 用户昵称 + * @param operatorId 运营上id + * @return 结果 + */ + public List> selectOperatorUserList(String userName, String nickName, Long operatorId); + + + /** + * 运营商用户详情 + * + * @param userId 用户id + * @return 结果 + */ + public Map operatorInfo(Long userId); +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/XhpcOperatorServiceImpl.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/XhpcOperatorServiceImpl.java new file mode 100644 index 00000000..3cd474c8 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/XhpcOperatorServiceImpl.java @@ -0,0 +1,133 @@ +package com.xhpc.user.service; + +import com.ruoyi.common.core.constant.UserConstants; +import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.system.api.domain.SysUser; +import com.xhpc.user.domain.XhpcOperator; +import com.xhpc.user.mapper.XhpcOperatorMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * 运营商信息 服务层 + * + * @author ruoyi + */ +@Service +public class XhpcOperatorServiceImpl implements IXhpcOperatorService { + + @Autowired + private XhpcOperatorMapper xhpcOperatorMapper; + + /** + * 新增任务 + * + * @param xhpcOperator 运营商信息 + */ + @Override + public int insert(XhpcOperator xhpcOperator) { + return xhpcOperatorMapper.insert(xhpcOperator); + } + + /** + * 更新运营商 + * + * @param xhpcOperator 运营商信息 + */ + @Override + public int update(XhpcOperator xhpcOperator) { + return xhpcOperatorMapper.update(xhpcOperator); + } + + /** + * 批量删除运营商信息 + * + * @param ids 需要删除的运营商ID + * @return 结果 + */ + @Override + public void deleteByIds(Long[] ids) { + for (Long id : ids) { + SysUser sysUser = xhpcOperatorMapper.getUserByOperatorId(id); + removeUser(sysUser.getUserId()); + } + xhpcOperatorMapper.deleteByIds(ids); + } + + /** + * 校验账号是否唯一 + * + * @param xhpcOperator 运营商信息 + * @return + */ + @Override + public String checkAccountUnique(XhpcOperator xhpcOperator) { + Long operatorId = StringUtils.isNull(xhpcOperator.getOperatorId()) ? -1L : xhpcOperator.getOperatorId(); + XhpcOperator info = xhpcOperatorMapper.checkAccountUnique(xhpcOperator.getPhone()); + if (StringUtils.isNotNull(info) && info.getOperatorId().longValue() != operatorId.longValue()) { + return UserConstants.NOT_UNIQUE; + } + return UserConstants.UNIQUE; + } + + /** + * 查询运营商详情 + * + * @param operatorId 运营商id + * @return 结果 + */ + @Override + public Map info(Long operatorId) { + return xhpcOperatorMapper.info(operatorId); + } + + /** + * 获取运营商列表 + * + * @param name 运营商名称 + * @param contactName 联系人 + * @param contactPhone 联系人电话 + * @return 结果 + */ + @Override + public List> selectOperatorList(String name, String contactName, String contactPhone) { + return xhpcOperatorMapper.selectOperatorList(name, contactName, contactPhone); + } + + /** + * 删除用户 + * + * @param userId 用户id + * @return 结果 + */ + @Override + public int removeUser(Long userId) { + // 删除用户与角色关联 + xhpcOperatorMapper.deleteUserRoleByUserId(userId); + // 删除用户与岗位表 + xhpcOperatorMapper.deleteUserPostByUserId(userId); + return xhpcOperatorMapper.deleteUserById(userId, "2"); + } + + /** + * 禁用/启用运营商 + * + * @param operatorId 运营商id + * @return 结果 + */ + @Override + public void status(Long operatorId) { + SysUser sysUser = xhpcOperatorMapper.getUserByOperatorId(operatorId); + xhpcOperatorMapper.deleteUserById(sysUser.getUserId(), "2".equals(sysUser.getStatus()) ? "0" : "2"); + Map map = xhpcOperatorMapper.info(operatorId); + String status = StringUtils.valueOf(map.get("status")); + XhpcOperator xhpcOperator = new XhpcOperator(); + xhpcOperator.setOperatorId(operatorId); + xhpcOperator.setStatus("0".equals(sysUser.getStatus()) ? 1 : 0); + update(xhpcOperator); + } + +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/XhpcUserServiceImpl.java b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/XhpcUserServiceImpl.java new file mode 100644 index 00000000..086b7f55 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/java/com/xhpc/user/service/XhpcUserServiceImpl.java @@ -0,0 +1,105 @@ +package com.xhpc.user.service; + +import com.ruoyi.common.core.utils.SecurityUtils; +import com.ruoyi.system.api.domain.SysUser; +import com.xhpc.user.mapper.XhpcUserMapper; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; + +/** + * 用户信息 服务层 + * + * @author ruoyi + */ +@Service +public class XhpcUserServiceImpl implements IXhpcUserService { + + @Resource + private XhpcUserMapper xhpcUserMapper; + + /** + * 新增用户信息 + * + * @param sysUser 用户信息 + */ + @Override + public int insert(SysUser sysUser) { + return xhpcUserMapper.insert(sysUser); + } + + /** + * 更新用户信息 + * + * @param sysUser 用户信息 + */ + @Override + public int update(SysUser sysUser) { + return xhpcUserMapper.update(sysUser); + } + + /** + * 批量删除用户信息 + * + * @param ids 需要删除的用户ID + * @return 结果 + */ + @Override + public void deleteByIds(Long[] ids) { + xhpcUserMapper.deleteByIds(ids); + } + + /** + * 获取平台用户列表 + * + * @param userName 用户账号 + * @param nickName 用户昵称 + * @return 结果 + */ + public List> selectPcUserList(String userName, String nickName) { + return xhpcUserMapper.selectPcUserList(userName, nickName); + } + + /** + * 平台用户详情 + * + * @param userId 用户id + * @return 结果 + */ + @Override + public Map pcInfo(Long userId) { + return xhpcUserMapper.pcInfo(userId); + } + + /** + * 获取运营商用户列表 + * + * @param userName 用户账号 + * @param nickName 用户昵称 + * @param operatorId 运营上id + * @return 结果 + */ + @Override + public List> selectOperatorUserList(String userName, String nickName, Long operatorId) { + Long userId = SecurityUtils.getUserId(); + SysUser sysUser = xhpcUserMapper.selectUserByUserId(userId); + if ("00".equals(sysUser.getDataPowerType())) { + return xhpcUserMapper.selectOperatorUserList(userName, nickName, operatorId, null); + } else { + return xhpcUserMapper.selectOperatorUserList(userName, nickName, operatorId, sysUser.getUserName()); + } + } + + /** + * 运营商用户详情 + * + * @param userId 用户id + * @return 结果 + */ + @Override + public Map operatorInfo(Long userId) { + return xhpcUserMapper.operatorInfo(userId); + } +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/resources/banner.txt b/xhpc-modules/xhpc-user/src/main/resources/banner.txt new file mode 100644 index 00000000..27cacb9c --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/resources/banner.txt @@ -0,0 +1,10 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} + _ __ _ _ + (_) / _|(_)| | + _ __ _ _ ___ _ _ _ ______ | |_ _ | | ___ +| '__|| | | | / _ \ | | | || ||______|| _|| || | / _ \ +| | | |_| || (_) || |_| || | | | | || || __/ +|_| \__,_| \___/ \__, ||_| |_| |_||_| \___| + __/ | + |___/ \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/resources/bootstrap.yml b/xhpc-modules/xhpc-user/src/main/resources/bootstrap.yml new file mode 100644 index 00000000..78fafcdf --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/resources/bootstrap.yml @@ -0,0 +1,29 @@ +ppsvc: + server: 0.0.0.0 + port: 8887 + +# Tomcat +server: + port: ${random.int(1300,1400)} + +# Spring +spring: + application: + # 应用名称 + name: xhpc-user + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 127.0.0.1:8848 + config: + # 配置中心地址 + server-addr: 127.0.0.1:8848 + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/xhpc-modules/xhpc-user/src/main/resources/logback.xml b/xhpc-modules/xhpc-user/src/main/resources/logback.xml new file mode 100644 index 00000000..83ed4f2d --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/resources/logback.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/xhpc-modules/xhpc-user/src/main/resources/mapper/XhpcOperatorMapper.xml b/xhpc-modules/xhpc-user/src/main/resources/mapper/XhpcOperatorMapper.xml new file mode 100644 index 00000000..53a82961 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/resources/mapper/XhpcOperatorMapper.xml @@ -0,0 +1,281 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + xo.operator_id, xo.name, xo.contact_name contactName, xo.contact_phone contactPhone, + xo.phone, xo.attribute, xo.area_code areaCode, xo.address, + xo.longitude, xo.latitude, xo.email, xo.commission_type commissionType, + xo.platform_commission_rate platformCommissionRate, + xo.maintenance_commission_rate maintenanceCommissionRate, + xo.business_license_id businessLicenseId, xo.withdrawal_time withdrawalTime, xo.soc, + xo.status, xo.del_flag delFlag, xo.create_time createTime, + xo.create_by createBy, xo.update_time updateTime, xo.update_by updateBy, xo.remark + + + + insert into xhpc_operator( + + operator_id, + + + name, + + + contact_name, + + + contact_phone, + + + phone, + + + attribute, + + + area_code, + + + address, + + + longitude, + + + latitude, + + + email, + + + commission_type, + + + platform_commission_rate, + + + maintenance_commission_rate, + + + business_license_id, + + + withdrawal_time, + + + soc, + + + status, + + + del_flag, + + + create_time, + + + create_by, + + + update_time, + + + update_by, + + + remark + + )values( + + #{operatorId}, + + + #{name}, + + + #{contactName}, + + + #{contactPhone}, + + + #{phone}, + + + #{attribute}, + + + #{areaCode}, + + + #{address}, + + + #{longitude}, + + + #{latitude}, + + + #{email}, + + + #{commissionType}, + + + #{platformCommissionRate}, + + + #{maintenanceCommissionRate}, + + + #{businessLicenseId}, + + + #{withdrawalTime}, + + + #{soc}, + + + #{status}, + + + #{delFlag}, + + + #{createTime}, + + + #{createBy}, + + + #{updateTime}, + + + #{updateBy}, + + + #{remark} + + ) + + + + UPDATE xhpc_operator + + operator_id = #{operatorId}, + name = #{name}, + contact_name = #{contactName}, + contact_phone = #{contactPhone}, + phone = #{phone}, + attribute = #{attribute}, + area_code = #{areaCode}, + address = #{address}, + longitude = #{longitude}, + latitude = #{latitude}, + email = #{email}, + commission_type = #{commissionType}, + platform_commission_rate = + #{platformCommissionRate}, + + maintenance_commission_rate + = #{maintenanceCommissionRate}, + + business_license_id = + #{businessLicenseId}, + + withdrawal_time = #{withdrawalTime}, + soc = #{soc}, + status = #{status}, + del_flag = #{delFlag}, + create_time = #{createTime}, + create_by = #{createBy}, + update_time = #{updateTime}, + update_by = #{updateBy}, + remark = #{remark} + + WHERE operator_id = #{operatorId} + + + + delete from xhpc_operator where user_id in + + #{userId} + + + + + + + + + + + delete from sys_user_role where user_id=#{userId} + + + + delete from sys_user_post where user_id=#{userId} + + + + update sys_user set del_flag = #{delFlag} where user_id = #{userId} + + + + \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/resources/mapper/XhpcUserMapper.xml b/xhpc-modules/xhpc-user/src/main/resources/mapper/XhpcUserMapper.xml new file mode 100644 index 00000000..9afee628 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/resources/mapper/XhpcUserMapper.xml @@ -0,0 +1,263 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into sys_user( + + user_id, + + + dept_id, + + + user_name, + + + nick_name, + + + user_type, + + + email, + + + phonenumber, + + + operator_id, + + + sex, + + + avatar, + + + password, + + + data_power_type, + + + status, + + + del_flag, + + + login_ip, + + + login_date, + + + create_by, + + + create_time, + + + update_by, + + + update_time, + + + remark + + )values( + + #{userId}, + + + #{deptId}, + + + #{userName}, + + + #{nickName}, + + + #{userType}, + + + #{email}, + + + #{phonenumber}, + + + #{operatorId}, + + + #{sex}, + + + #{avatar}, + + + #{password}, + + + #{dataPowerType}, + + + #{status}, + + + #{delFlag}, + + + #{loginIp}, + + + #{loginDate}, + + + #{createBy}, + + + #{createTime}, + + + #{updateBy}, + + + #{updateTime}, + + + #{remark} + + + + + UPDATE sys_user + + dept_id = #{deptId}, + user_name = #{userName}, + nick_name = #{nickName}, + user_type = #{userType}, + email = #{email}, + phonenumber = #{phonenumber}, + operator_id = #{operatorId}, + sex = #{sex}, + avatar = #{avatar}, + password = #{password}, + data_power_type = #{dataPowerType}, + status = #{status}, + del_flag = #{delFlag}, + login_ip = #{loginIp}, + login_date = #{loginDate}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark} + + WHERE user_id = #{userId} + + + + delete from sys_user where user_id in + + #{userId} + + + + + + + + + + + + + + \ No newline at end of file diff --git a/xhpc-modules/xhpc-user/src/main/resources/svcmainlogic.xml b/xhpc-modules/xhpc-user/src/main/resources/svcmainlogic.xml new file mode 100644 index 00000000..9aee48b3 --- /dev/null +++ b/xhpc-modules/xhpc-user/src/main/resources/svcmainlogic.xml @@ -0,0 +1,16 @@ + + + + + + + + + + +