first commit

This commit is contained in:
陈现府
2025-11-20 10:45:16 +08:00
commit 8355431361
2643 changed files with 291314 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
### JetBrains+iml template
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# idea folder
.idea/
# maven
**/target/
# java log output file
/logs/
**/*.iml
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 若依
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+130
View File
@@ -0,0 +1,130 @@
<p align="center">
<img alt="logo" src="https://oscimg.oschina.net/oscnet/up-b99b286755aef70355a7084753f89cdb7c9.png">
</p>
<h1 align="center" style="margin: 30px 0 30px; font-weight: bold;">Mhd v3.6.0</h1>
<h4 align="center">基于 Vue/Element UI 和 Spring Boot/Spring Cloud & Alibaba 前后端分离的分布式微服务架构</h4>
<p align="center">
<a href="https://gitee.com/y_project/Mhd-Cloud/stargazers"><img src="https://gitee.com/y_project/Mhd-Cloud/badge/star.svg?theme=dark"></a>
<a href="https://gitee.com/y_project/Mhd-Cloud"><img src="https://img.shields.io/badge/Mhd-v3.6.0-brightgreen.svg"></a>
<a href="https://gitee.com/y_project/Mhd-Cloud/blob/master/LICENSE"><img src="https://img.shields.io/github/license/mashape/apistatus.svg"></a>
</p>
## 平台简介
若依是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。
* 采用前后端分离的模式,微服务版本前端(基于 [Mhd-Vue](https://gitee.com/y_project/Mhd-Vue))。
* 后端采用Spring Boot、Spring Cloud & Alibaba。
* 注册中心、配置中心选型Nacos,权限认证使用Redis。
* 流量控制框架选型Sentinel,分布式事务选型Seata。
* 提供了技术栈([Vue3](https://v3.cn.vuejs.org) [Element Plus](https://element-plus.org/zh-CN) [Vite](https://cn.vitejs.dev))版本[Mhd-Cloud-Vue3](https://github.com/yangzongzhuan/Mhd-Cloud-Vue3),保持同步更新。
* 如需不分离应用,请移步 [Mhd](https://gitee.com/y_project/Mhd),如需分离应用,请移步 [Mhd-Vue](https://gitee.com/y_project/Mhd-Vue)
* 阿里云折扣场:[点我进入](http://aly.mhd.vip),腾讯云秒杀场:[点我进入](http://txy.mhd.vip)&nbsp;&nbsp;
* 阿里云优惠券:[点我领取](https://www.aliyun.com/minisite/goods?userCode=brki8iof&share_source=copy_link),腾讯云优惠券:[点我领取](https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console)&nbsp;&nbsp;
#### 友情链接 [若依/Mhd-Cloud](https://gitee.com/zhangmrit/mhd-cloud) Ant Design版本。
## 系统模块
~~~
com.mhd
├── mhd-ui // 前端框架 [80]
├── mhd-gateway // 网关模块 [8088]
├── mhd-auth // 认证中心 [9200]
├── mhd-api // 接口模块
│ └── mhd-api-system // 系统接口
├── mhd-common // 通用模块
│ └── mhd-common-core // 核心模块
│ └── mhd-common-datascope // 权限范围
│ └── mhd-common-datasource // 多数据源
│ └── mhd-common-log // 日志记录
│ └── mhd-common-redis // 缓存服务
│ └── mhd-common-security // 安全模块
│ └── mhd-common-swagger // 系统接口
├── mhd-modules // 业务模块
│ └── mhd-system // 系统模块 [9201]
│ └── mhd-gen // 代码生成 [9202]
│ └── mhd-job // 定时任务 [9203]
│ └── mhd-file // 文件服务 [9300]
├── mhd-visual // 图形化管理模块
│ └── mhd-visual-monitor // 监控中心 [9100]
├──pom.xml // 公共依赖
~~~
## 架构图
<img src="https://oscimg.oschina.net/oscnet/up-82e9722ecb846786405a904bafcf19f73f3.png"/>
## 内置功能
1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
3. 岗位管理:配置系统用户所属担任职务。
4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
7. 参数管理:对系统动态配置常用参数。
8. 通知公告:系统通知公告信息发布维护。
9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
10. 登录日志:系统登录日志记录查询包含登录异常。
11. 在线用户:当前系统中活跃用户状态监控。
12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
14. 系统接口:根据业务代码自动生成相关的api接口文档。
15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
16. 在线构建器:拖动表单元素生成相应的HTML代码。
17. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
## 在线体验
- admin/admin123
- 陆陆续续收到一些打赏,为了更好的体验已用于演示服务器升级。谢谢各位小伙伴。
演示地址:http://mhd.vip
文档地址:http://doc.mhd.vip
## 演示图
<table>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/cd1f90be5f2684f4560c9519c0f2a232ee8.jpg"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/1cbcf0e6f257c7d3a063c0e3f2ff989e4b3.jpg"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-8074972883b5ba0622e13246738ebba237a.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-9f88719cdfca9af2e58b352a20e23d43b12.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-39bf2584ec3a529b0d5a3b70d15c9b37646.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-4148b24f58660a9dc347761e4cf6162f28f.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-b2d62ceb95d2dd9b3fbe157bb70d26001e9.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-d67451d308b7a79ad6819723396f7c3d77a.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/5e8c387724954459291aafd5eb52b456f53.jpg"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/644e78da53c2e92a95dfda4f76e6d117c4b.jpg"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-8370a0d02977eebf6dbf854c8450293c937.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-49003ed83f60f633e7153609a53a2b644f7.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-d4fe726319ece268d4746602c39cffc0621.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-c195234bbcd30be6927f037a6755e6ab69c.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-ece3fd37a3d4bb75a3926e905a3c5629055.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-92ffb7f3835855cff100fa0f754a6be0d99.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-ff9e3066561574aca73005c5730c6a41f15.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-5e4daac0bb59612c5038448acbcef235e3a.png"/></td>
</tr>
</table>
## 若依微服务交流群
QQ群: [![加入QQ群](https://img.shields.io/badge/已满-42799195-blue.svg)](https://jq.qq.com/?_wv=1027&k=yqInfq0S) [![加入QQ群](https://img.shields.io/badge/已满-170157040-blue.svg)](https://jq.qq.com/?_wv=1027&k=Oy1mb3p8) [![加入QQ群](https://img.shields.io/badge/已满-130643120-blue.svg)](https://jq.qq.com/?_wv=1027&k=rvxkJtXK) [![加入QQ群](https://img.shields.io/badge/已满-225920371-blue.svg)](https://jq.qq.com/?_wv=1027&k=0Ck3PvTe) [![加入QQ群](https://img.shields.io/badge/已满-201705537-blue.svg)](https://jq.qq.com/?_wv=1027&k=FnHHP4TT) [![加入QQ群](https://img.shields.io/badge/已满-236543183-blue.svg)](https://jq.qq.com/?_wv=1027&k=qdT1Ojpz) [![加入QQ群](https://img.shields.io/badge/已满-213618602-blue.svg)](https://jq.qq.com/?_wv=1027&k=nw3OiyXs) [![加入QQ群](https://img.shields.io/badge/148794840-blue.svg)](https://jq.qq.com/?_wv=1027&k=kiU5WDls) 点击按钮入群。
+12
View File
@@ -0,0 +1,12 @@
@echo off
echo.
echo [信息] 清理工程target生成路径。
echo.
%~d0
cd %~dp0
cd ..
call mvn clean
pause
+12
View File
@@ -0,0 +1,12 @@
@echo off
echo.
echo [信息] 打包Web工程,生成war/jar包文件。
echo.
%~d0
cd %~dp0
cd ..
call mvn clean package -Dmaven.test.skip=true
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarAuth̡
echo.
cd %~dp0
cd ../mhd-auth/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-auth.jar
cd bin
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarGateway̡
echo.
cd %~dp0
cd ../mhd-gateway/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-gateway.jar
cd bin
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarModules-File̡
echo.
cd %~dp0
cd ../mhd-modules/mhd-file/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-modules-file.jar
cd bin
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarModules-Gen̡
echo.
cd %~dp0
cd ../mhd-modules/mhd-gen/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-modules-gen.jar
cd bin
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarModules-Job̡
echo.
cd %~dp0
cd ../mhd-modules/mhd-job/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-modules-job.jar
cd bin
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarModules-System̡
echo.
cd %~dp0
cd ../mhd-modules/mhd-system/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-modules-system.jar
cd bin
pause
+14
View File
@@ -0,0 +1,14 @@
@echo off
echo.
echo [Ϣ] ʹJarMonitor̡
echo.
cd %~dp0
cd ../mhd-visual/mhd-monitor/target
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar mhd-visual-monitor.jar
cd bin
pause
+41
View File
@@ -0,0 +1,41 @@
#!/bin/sh
# 复制项目的文件到对应docker路径,便于一键生成镜像。
usage() {
echo "Usage: sh copy.sh"
exit 1
}
# copy sql
echo "begin copy sql "
cp ../sql/ry_20210908.sql ./mysql/db
cp ../sql/ry_config_20220114.sql ./mysql/db
# copy html
echo "begin copy html "
cp -r ../mhd-ui/dist/** ./nginx/html/dist
# copy jar
echo "begin copy mhd-gateway "
cp ../mhd-gateway/target/mhd-gateway.jar ./mhd/gateway/jar
echo "begin copy mhd-auth "
cp ../mhd-auth/target/mhd-auth.jar ./mhd/auth/jar
echo "begin copy mhd-visual "
cp ../mhd-visual/mhd-monitor/target/mhd-visual-monitor.jar ./mhd/visual/monitor/jar
echo "begin copy mhd-modules-system "
cp ../mhd-modules/mhd-system/target/mhd-modules-system.jar ./mhd/modules/system/jar
echo "begin copy mhd-modules-file "
cp ../mhd-modules/mhd-file/target/mhd-modules-file.jar ./mhd/modules/file/jar
echo "begin copy mhd-modules-job "
cp ../mhd-modules/mhd-job/target/mhd-modules-job.jar ./mhd/modules/job/jar
echo "begin copy mhd-modules-gen "
cp ../mhd-modules/mhd-gen/target/mhd-modules-gen.jar ./mhd/modules/gen/jar
+67
View File
@@ -0,0 +1,67 @@
#!/bin/sh
# 使用说明,用来提示输入参数
usage() {
echo "Usage: sh 执行脚本.sh [port|base|modules|stop|rm]"
exit 1
}
# 开启所需端口
port(){
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=8088/tcp --permanent
firewall-cmd --add-port=8848/tcp --permanent
firewall-cmd --add-port=9848/tcp --permanent
firewall-cmd --add-port=9849/tcp --permanent
firewall-cmd --add-port=6379/tcp --permanent
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --add-port=9100/tcp --permanent
firewall-cmd --add-port=9200/tcp --permanent
firewall-cmd --add-port=9201/tcp --permanent
firewall-cmd --add-port=9202/tcp --permanent
firewall-cmd --add-port=9203/tcp --permanent
firewall-cmd --add-port=9300/tcp --permanent
service firewalld restart
}
# 启动基础环境(必须)
base(){
docker-compose up -d mhd-mysql mhd-redis mhd-nacos
}
# 启动程序模块(必须)
modules(){
docker-compose up -d mhd-nginx mhd-gateway mhd-auth mhd-modules-system
}
# 关闭所有环境/模块
stop(){
docker-compose stop
}
# 删除所有环境/模块
rm(){
docker-compose rm
}
# 根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"port")
port
;;
"base")
base
;;
"modules")
modules
;;
"stop")
stop
;;
"rm")
rm
;;
*)
usage
;;
esac
+150
View File
@@ -0,0 +1,150 @@
version : '3.8'
services:
linke-nginx:
image: nginx:1.19.3
container_name: linke-nginx
restart: always
ports:
- 80:80
# volumes:
# - /home/docker/nginx:/etc/nginx
linke-redis:
image:
# mhd-nacos:
# container_name: mhd-nacos
# image: nacos/nacos-server
# build:
# context: ./nacos
# environment:
# - MODE=standalone
# volumes:
# - ./nacos/logs/:/home/nacos/logs
# - ./nacos/conf/application.properties:/home/nacos/conf/application.properties
# ports:
# - "8848:8848"
# - "9848:9848"
# - "9849:9849"
# depends_on:
# - mhd-mysql
# mhd-mysql:
# container_name: mhd-mysql
# image: mysql:5.7
# build:
# context: ./mysql
# ports:
# - "3306:3306"
# volumes:
# - ./mysql/conf:/etc/mysql/conf.d
# - ./mysql/logs:/logs
# - ./mysql/data:/var/lib/mysql
# command: [
# 'mysqld',
# '--innodb-buffer-pool-size=80M',
# '--character-set-server=utf8mb4',
# '--collation-server=utf8mb4_unicode_ci',
# '--default-time-zone=+8:00',
# '--lower-case-table-names=1'
# ]
# environment:
# MYSQL_DATABASE: 'ry-cloud'
# MYSQL_ROOT_PASSWORD: password
# mhd-redis:
# container_name: mhd-redis
# image: redis
# build:
# context: ./redis
# ports:
# - "6379:6379"
# volumes:
# - ./redis/conf/redis.conf:/home/mhd/redis/redis.conf
# - ./redis/data:/data
# command: redis-server /home/mhd/redis/redis.conf
# mhd-nginx:
# container_name: mhd-nginx
# image: nginx
# build:
# context: ./nginx
# ports:
# - "80:80"
# volumes:
# - ./nginx/html/dist:/home/mhd/projects/mhd-ui
# - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf
# - ./nginx/logs:/var/log/nginx
# - ./nginx/conf.d:/etc/nginx/conf.d
# depends_on:
# - mhd-gateway
# links:
# - mhd-gateway
# mhd-gateway:
# container_name: mhd-gateway
# build:
# context: ./mhd/gateway
# dockerfile: dockerfile
# ports:
# - "8088:8088"
# depends_on:
# - mhd-redis
# links:
# - mhd-redis
# mhd-auth:
# container_name: mhd-auth
# build:
# context: ./mhd/auth
# dockerfile: dockerfile
# ports:
# - "9200:9200"
# depends_on:
# - mhd-redis
# links:
# - mhd-redis
# mhd-modules-system:
# container_name: mhd-modules-system
# build:
# context: ./mhd/modules/system
# dockerfile: dockerfile
# ports:
# - "9201:9201"
# depends_on:
# - mhd-redis
# - mhd-mysql
# links:
# - mhd-redis
# - mhd-mysql
# mhd-modules-gen:
# container_name: mhd-modules-gen
# build:
# context: ./mhd/modules/gen
# dockerfile: dockerfile
# ports:
# - "9202:9202"
# depends_on:
# - mhd-mysql
# links:
# - mhd-mysql
# mhd-modules-job:
# container_name: mhd-modules-job
# build:
# context: ./mhd/modules/job
# dockerfile: dockerfile
# ports:
# - "9203:9203"
# depends_on:
# - mhd-mysql
# links:
# - mhd-mysql
# mhd-modules-file:
# container_name: mhd-modules-file
# build:
# context: ./mhd/modules/file
# dockerfile: dockerfile
# ports:
# - "9300:9300"
# volumes:
# - ./mhd/uploadPath:/home/mhd/uploadPath
# mhd-visual-monitor:
# container_name: mhd-visual-monitor
# build:
# context: ./mhd/visual/monitor
# dockerfile: dockerfile
# ports:
# - "9100:9100"
+8
View File
@@ -0,0 +1,8 @@
Ŀ¼µнűdockerԶִС
docker run \
-v /usr/bin/docker:/usr/bin/docker \
-v /var/run/docker.sock:/var/run/docker.sock \
-u root \
-itd --restart always --name jenkins \
-p 8120:8080 \
jenkins/jenkins:jdk11
+7
View File
@@ -0,0 +1,7 @@
# 基础镜像
FROM mysql:5.7
# author
MAINTAINER mhd
# 执行sql脚本
ADD ./db/*.sql /docker-entrypoint-initdb.d/
+33
View File
@@ -0,0 +1,33 @@
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://bj-cdb-ngefwsva.sql.tencentcdb.com:60852/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=manhuoda2019@
nacos.naming.empty-service.auto-clean=true
nacos.naming.empty-service.clean.initial-delay-ms=50000
nacos.naming.empty-service.clean.period-time-ms=30000
management.endpoints.web.exposure.include=*
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i
server.tomcat.basedir=
nacos.security.ignore.urls=/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-ui/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/**
nacos.core.auth.system.type=nacos
nacos.core.auth.enabled=false
nacos.core.auth.default.token.expire.seconds=18000
nacos.core.auth.default.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
nacos.core.auth.caching.enabled=true
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
nacos.istio.mcp.server.enabled=false
+7
View File
@@ -0,0 +1,7 @@
# 基础镜像 构建步骤
FROM nacos/nacos-server #依赖的镜像 docker hub中的nacos-server
# author
MAINTAINER mhd
# 复制conf文件到路径
COPY ./conf/application.properties /home/nacos/conf/application.properties #从conf中的application.properties拷贝到容器中的位置,再打成一个新的镜像
+36
View File
@@ -0,0 +1,36 @@
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root /home/mhd/projects/mhd-ui;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /prod-api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://mhd-gateway:8088/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM nginx
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd/projects/mhd-ui
# 创建目录
RUN mkdir -p /home/mhd/projects/mhd-ui
# 指定路径
WORKDIR /home/mhd/projects/mhd-ui
# 复制conf文件到路径
COPY ./conf/nginx.conf /etc/nginx/nginx.conf
# 复制html文件到路径
COPY ./html/dist /home/mhd/projects/mhd-ui
+1
View File
@@ -0,0 +1 @@
# requirepass 123456
+13
View File
@@ -0,0 +1,13 @@
# 基础镜像
FROM redis
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd/redis
# 创建目录
RUN mkdir -p /home/mhd/redis
# 指定路径
WORKDIR /home/mhd/redis
# 复制conf文件到路径
COPY ./conf/redis.conf /home/mhd/redis/redis.conf
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-auth.jar /home/mhd/mhd-auth.jar
# 启动认证服务
ENTRYPOINT ["java","-jar","mhd-auth.jar"]
+5
View File
@@ -0,0 +1,5 @@
存放认证中心打包好的jar文件,用于docker启动应用。
docker save \
redis:6.0.16 \
mysql:5.7 \
-o all.tar
+17
View File
@@ -0,0 +1,17 @@
# 基础镜像
FROM kdvolder/jdk8
# author
MAINTAINER wangzihao
#指定东八区时区
ENV TZ Asia/Shanghai
#指定utf-8编码格
ENV JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
#将当前mhd_transport.jar 复制到容器根目录下
ADD mhd_third_party.jar mhd_third_party.jar
#暴露容器端口为8006 Docker镜像告知Docker宿主机应用监听了8006端口
EXPOSE 8012
# 运行jar包
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Xms1024m", "-Xmx1024m","-jar","/mhd_third_party.jar"]
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-gateway.jar /home/mhd/mhd-gateway.jar
# 启动网关服务
ENTRYPOINT ["java","-jar","mhd-gateway.jar"]
+1
View File
@@ -0,0 +1 @@
存放网关模块打包好的jar文件,用于docker启动应用。
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-modules-file.jar /home/mhd/mhd-modules-file.jar
# 启动文件服务
ENTRYPOINT ["java","-jar","mhd-modules-file.jar"]
+1
View File
@@ -0,0 +1 @@
存放文件服务打包好的jar文件,用于docker启动应用。
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-modules-gen.jar /home/mhd/mhd-modules-gen.jar
# 启动代码生成服务
ENTRYPOINT ["java","-jar","mhd-modules-gen.jar"]
+1
View File
@@ -0,0 +1 @@
存放代码生成打包好的jar文件,用于docker启动应用。
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-modules-job.jar /home/mhd/mhd-modules-job.jar
# 启动定时任务服务
ENTRYPOINT ["java","-jar","mhd-modules-job.jar"]
+1
View File
@@ -0,0 +1 @@
存放定时任务打包好的jar文件,用于docker启动应用。
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-modules-system.jar /home/mhd/mhd-modules-system.jar
# 启动系统服务
ENTRYPOINT ["java","-jar","mhd-modules-system.jar"]
@@ -0,0 +1 @@
存放系统模块打包好的jar文件,用于docker启动应用。
+13
View File
@@ -0,0 +1,13 @@
# 基础镜像
FROM kdvolder/jdk8
# author
MAINTAINER wangzihao
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
#将当前mhd-user-center.jar 复制到容器根目录下
ADD mhd_transport.jar mhd_transport.jar
#暴露容器端口为8007 Docker镜像告知Docker宿主机应用监听了8007端口
EXPOSE 8006
# 运行jar包
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/mhd_transport.jar"]
+13
View File
@@ -0,0 +1,13 @@
# 基础镜像
FROM kdvolder/jdk8
# author
MAINTAINER wangzihao
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
#将当前mhd-user-center.jar 复制到容器根目录下
ADD mhd-user-center.jar mhd-user-center.jar
#暴露容器端口为8007 Docker镜像告知Docker宿主机应用监听了8007端口
EXPOSE 8007
# 运行jar包
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/mhd-user-center.jar"]
+15
View File
@@ -0,0 +1,15 @@
# 基础镜像
FROM openjdk:8-jre
# author
MAINTAINER mhd
# 挂载目录
VOLUME /home/mhd
# 创建目录
RUN mkdir -p /home/mhd
# 指定路径
WORKDIR /home/mhd
# 复制jar文件到路径
COPY ./jar/mhd-visual-monitor.jar /home/mhd/mhd-visual-monitor.jar
# 启动系统服务
ENTRYPOINT ["java","-jar","mhd-visual-monitor.jar"]
@@ -0,0 +1 @@
存放监控中心打包好的jar文件,用于docker启动应用。
+34
View File
@@ -0,0 +1,34 @@
version: '3.1'
services:
zoo1:
image: zookeeper:3.4.14
restart: always
hostname: zoo1
container_name: zoo1
ports:
- "2181:2181"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
zoo2:
image: zookeeper:3.4.14
restart: always
hostname: zoo2
container_name: zoo2
ports:
- "2182:2181"
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
zoo3:
image: zookeeper:3.4.14
restart: always
hostname: zoo3
container_name: zoo3
ports:
- "2183:2181"
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
+33
View File
@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.mhd</groupId>
<artifactId>mhd-api</artifactId>
<version>3.6.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>mhd-api-system</artifactId>
<description>
mhd-api-system系统接口模块
</description>
<dependencies>
<!-- Mhd Common Core-->
<dependency>
<groupId>com.mhd</groupId>
<artifactId>mhd-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
</project>
@@ -0,0 +1,67 @@
package com.mhd.system.api;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 关联仓库对象 association_warehouse
*
* @author gen
* @date 2024-06-11
*/
@Data
public class AssociationWarehouseFeign implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("关联仓库id")
private Long associationWarehouseId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("关联ID(组织或员工用户ID)")
@Excel(name = "关联ID(组织或员工用户ID)")
private Long correlationId;
@ApiModelProperty("仓库ID")
@Excel(name = "仓库ID")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
@ApiModelProperty(name = "关联仓库id集合")
private List<Long> warehouseIdIdList;
@ApiModelProperty(name = "关联用户id集合")
private List<Long> correlationIdList;
}
@@ -0,0 +1,41 @@
package com.mhd.system.api.Auth;
import com.mhd.system.api.domain.SysLogininforPo;
import com.mhd.system.api.domain.SysOperLogPo;
import com.mhd.system.api.factory.RemoteAuthLogFallbackFactory;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
/**
* 日志服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteAuthLogService", value = ServiceNameConstants.AUTH_SERVICE, fallbackFactory = RemoteAuthLogFallbackFactory.class)
public interface RemoteAuthLogService
{
/**
* 保存系统日志
*
* @param sysOperLogPo 日志实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/operlog")
public R<Boolean> saveLog(@RequestBody SysOperLogPo sysOperLogPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 保存访问记录
*
* @param sysLogininforPo 访问实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/logininfor")
public R<Boolean> saveLogininfor(@RequestBody SysLogininforPo sysLogininforPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,42 @@
package com.mhd.system.api.Auth;
import com.mhd.system.api.domain.UserDTO;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.factory.RemoteOrganizationFeignFallbackFactory;
import com.mhd.system.api.model.LoginUser;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@FeignClient(contextId = "remoteAuthOrganizationService", value = ServiceNameConstants.USER_CENTER, fallbackFactory = RemoteOrganizationFeignFallbackFactory.class)
public interface RemoteAuthOrganizationService {
/**
* @Description 根据域名获取组织ID
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/userApi/getOrganizationByPath/{path}")
public R<Long> getOrganizationByPath(@PathVariable("path") Long path, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 通过用户名查询用户信息
*
* @return 结果
*/
@GetMapping("/userApi/getUserByTopOrganizationUserAccount")
public R<LoginUser> getUserByTopOrganizationUserAccount(UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@GetMapping("/userApi/getUserByTopOrganizationUserPhone")
public R<LoginUser> getUserByTopOrganizationUserPhone(UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PostMapping("/userApi/add")
public R<LoginUser> addUser(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,38 @@
package com.mhd.system.api.Auth;
import com.mhd.system.api.domain.SysUser;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.factory.RemoteUserFallbackFactory;
import com.mhd.system.api.model.LoginUser;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* 用户服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteAuthUserService", value = ServiceNameConstants.USER_CENTER, fallbackFactory = RemoteUserFallbackFactory.class)
public interface RemoteAuthUserService
{
/**
* 通过用户名查询用户信息
*
* @param username 用户名
* @param source 请求来源
* @return 结果
*/
@GetMapping("/userApi/info/{username}")
public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 注册用户信息
*
* @param sysUser 用户信息
* @param source 请求来源
* @return 结果
*/
@PostMapping("/userApi/register")
public R<Boolean> registerUserInfo(@RequestBody SysUser sysUser, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,52 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Set;
/**
* bms财务结算系统feign调用接口
*/
@FeignClient(contextId = "BmsService", value = ServiceNameConstants.BMS_SERVICE, fallbackFactory = RemoteBmsFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface BmsServiceFeign {
/**
* 根据规则id获取规则详情信息
*/
@GetMapping("/billingRulesApi/getInfoByCode")
public AjaxResult getInfoByCode(@RequestParam("billingRulesCode") String billingRulesCode);
/**
* 根据结算对象code获取结算对象信息
*/
@GetMapping("/settlementCustomersApi/getInfoByCode")
public AjaxResult getCustomersInfoByCode(@RequestParam("settlementCustomersCode")String settlementCustomersCode);
/**
* 推送同步业务单据
*/
@PostMapping("/businessDocumentApi/pushSyncData")
public AjaxResult pushSyncData(@RequestBody BusinessDataPushDTO businessDataPushDTO);
/**
* 根据单据类型code获取单据类型信息
* @param documentTypeCodeSet 单据类型Code集合
* @return
*/
@GetMapping("/documentTypeApi/getDocumentInfoByCodeSet")
AjaxResult getDocumentInfoByCodeSet(@RequestParam("documentTypeCodeSet") Set<String> documentTypeCodeSet);
}
@@ -0,0 +1,159 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.*;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.entity.RevenueExpensesRecord;
import com.mhd.common.core.domain.thirdparty.ThridPayCallDTO;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.system.api.domain.finance.AccountCashWalletPo;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
@FeignClient(contextId = "commonFinanceServiceFeign",value = ServiceNameConstants.FINANCE_SERVICE,configuration = FeignAutoConfiguration.class)
public interface FinanceServiceFeign {
/**
* 修改货款
* @param loanManageDto
* @return
*/
@PutMapping("/loanManage/update")
public AjaxResult update(@RequestBody LoanManageDto loanManageDto);
/**
* 新增核销
* @param verificationDto
* @return
*/
@PostMapping("/verification/addVerification")
public AjaxResult addVerification(@RequestBody VerificationDto verificationDto);
/**
* 修改核销
* @param verificationDto
* @return
*/
@PutMapping("/verification/updateVerification")
public AjaxResult updateVerification(@RequestBody VerificationDto verificationDto);
/**
* 根据查询核销信息
* @param verificationDto
* @return
*/
@PostMapping("/verification/verificationListFeign")
public TableDataInfo verificationList(@RequestBody VerificationDto verificationDto);
/**
* 根据ID查询货款详细信息
* @param loanManageDto
* @return
*/
@GetMapping("/loanManage/list")
public TableDataInfo list(LoanManageDto loanManageDto);
/**
* 新增开票订单表
* @param invoiceOrderDto
* @return
*/
@PostMapping("/invoice/invoiceOrderSave")
public AjaxResult invoiceOrderSave(@RequestBody InvoiceOrderDto invoiceOrderDto);
/**
* 查看是否有申请中的开票信息
* @param userId
* @return
*/
@GetMapping("/invoice/getInvoiceByUserId/{userId}")
public AjaxResult getInvoiceByUserId(@PathVariable("userId") Long userId);
/**
* 新增收入支出管理
* @param revenueExpensesRecord
* @return
*/
@PostMapping("/revenueExpensesRecord/add")
public AjaxResult addRevenueExpensesRecord(@RequestBody RevenueExpensesRecord revenueExpensesRecord);
/**
* 根据银行卡id查询银行卡信息
* @param accountBankCardId
* @return
*/
@GetMapping("/accountManage/getAccountBankCard/{accountBankCardId}")
public AjaxResult getAccountBankCard(@PathVariable(value = "accountBankCardId")Long accountBankCardId);
/**
* app新增运单时
* 货款和核销的新增
* @param appCommonFeignParamDto 请求参数
*/
@PostMapping("/verification/instertWaybillFinancialInfo")
public AjaxResult instertWaybillFinancialInfo(@RequestBody AppCommonFeignParamDto appCommonFeignParamDto);
/**
* app完成收款财务中台更新收款状态
*/
@PostMapping("/verification/updateAppFinancialInfo")
public Boolean updateAppFinancialInfo(Long waybillId);
/**
* 根据用户id查询钱包信息
* @param userId 用户id
* @return 钱包信息
*/
@GetMapping("/accountManage/getWalletByUserId")
public R<AccountCashWalletPo> getWalletByUserId(@RequestParam(value = "userId")Long userId);
/**
* 根据id删除钱包信息
*
* @param id 钱包id
* @return 钱包信息
*/
@GetMapping("/accountManage/deleteCashWalletById/{id}")
public R<Boolean> deleteCashWalletById(@PathVariable(value = "id") Long id);
/**
* 开通钱包
* @param accountCashWalletDto
* @return
*/
@PostMapping("/accountManage/accountCashWalletSave")
public AjaxResult accountCashWalletSave(@RequestBody AccountCashWalletDto accountCashWalletDto);
/**
* 更新总额度
* @param accountCashWalletDto
* @return
*/
@PostMapping("/accountManage/updateTotalLimit")
public AjaxResult updateTotalLimit(@RequestBody AccountCashWalletDto accountCashWalletDto);
/**
* 根据用户获取银行卡列表
* @param userId
* @return
*/
@GetMapping("/accountManage/getAccountBankCardByUser")
public AjaxResult getAccountBankCardByUser(@RequestParam(value = "userId")Long userId);
/**
* 根据用户获取银行卡列表
* @param thridPayCallDTO
* @return
*/
@PostMapping("/freightPayApi/thridPayCall")
public AjaxResult thridPayCall(@RequestBody ThridPayCallDTO thridPayCallDTO);
/**
* 卸货查询收款信息
*/
@PostMapping("/verification/queryCollectionInfo")
AjaxResult queryCollectionInfo(@RequestBody DispatchWaybillDto dispatchWaybillDto);
}
@@ -0,0 +1,23 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.MallOAuthLogin;
import com.mhd.system.api.domain.MallOAuthToken;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import feign.QueryMap;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
@FeignClient(contextId = "MallOAuthService",value = ServiceNameConstants.MALL_AUTH_SERVICE)
public interface MallOAuthServiceFeign {
@PostMapping(value = "/oauth/token",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE )
public String oauthToken(@RequestParam Map<String, String> params, @RequestHeader("Authorization") String authorization);
}
@@ -0,0 +1,35 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.mall.UserInfo;
import com.mhd.system.api.domain.mall.UserInfoLoginDTO;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import javax.servlet.http.HttpServletRequest;
@FeignClient(contextId = "commonMallServiceFeign",value = ServiceNameConstants.MALL_API_SERVICE,configuration = FeignAutoConfiguration.class)
public interface MallServiceFeign {
/**
* 同步商城用户信息
* @param userInfo
* @return
*/
@PostMapping("/userinfo/szwlSyncMallUser")
public R szwlSyncMallUser(@RequestBody UserInfo userInfo, @RequestHeader("from") String from);
/**
* 账号登录
*/
@PostMapping("/userinfo/login")
public R<UserInfo> login(@RequestBody UserInfoLoginDTO userInfoLoginDTO, @RequestHeader("client-type") String clientType, @RequestHeader("tenant-id") String tenantId);
}
@@ -0,0 +1,59 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.AppConfigDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.AppConfigPO;
import com.mhd.common.core.domain.po.OrganizationCorrelationPO;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.factory.RemoteOrganizationFeignFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@FeignClient(contextId = "remoteOrganizationServiceFeign", value = ServiceNameConstants.PRODUCT_CENTER, fallbackFactory = RemoteOrganizationFeignFallbackFactory.class)
public interface OrganizationServiceFeign {
/**
* @Description 根据域名获取组织ID
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/organization/selectTopIdByTenantsDomainName/{tenantsDomainName}")
public AjaxResult getOrganizationByPath(@PathVariable("tenantsDomainName") String tenantsDomainName, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* @Description 根据id查询组织信息(包含所有的子组织id)
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/organization/getInfoForIdList/{id}")
R<OrganizationPo> getInfoForIdList(@PathVariable("id") Long id);
/**
* @description 根据组织id获取该组织绑定关系列表
* @author ZhouGY
* @date 2023/9/22 9:33
* @param organizationId
* @return R<List<OrganizationCorrelationPO>>
*/
@GetMapping("/organizationCorrelationApi/findListByOrganizationId/{organizationId}")
R<List<OrganizationCorrelationPO>> findListByOrganizationId(@PathVariable("organizationId") Long organizationId);
/**
* @Description 根据id查询组织信息(包含所有的子组织id)
* @Author Alex
* @Date 2022/12/6 22:11
*/
@PostMapping("/appConfigApi/getAppConfigByAppPackageFeign")
R<AppConfigPO> getAppConfigByAppPackageFeign(@RequestBody AppConfigDTO appConfigDTO);
}
@@ -0,0 +1,89 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.domain.po.SysTenantsPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/1 13:40
*/
@FeignClient(contextId = "ProductService", value = ServiceNameConstants.PRODUCT_CENTER, fallbackFactory = RemoteSystemFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface ProductServiceFeign {
/**
* @Description 获取一级组织
* @Author Alex
* @Date 2022/12/2 13:37
*/
@GetMapping("/organization/selectTopId/{id}")
public AjaxResult selectTopId(@PathVariable("id") Long id);
/**
* @Description 根据组织id获取所有的上级组织id
* @Author Alex
* @Date 2022/12/2 13:37
*/
@GetMapping("/organization/selectTopOrganizationList/{id}")
public AjaxResult selectTopOrganizationList(@PathVariable("id") Long id);
/**
* 查询当前组织所有的组织id
*/
@GetMapping(value = "/organization/getOrganizationIdsByOrganizationId/{organizationId}")
public AjaxResult getOrganizationIdsByOrganizationId(@PathVariable("organizationId") Long organizationId);
/**
* 查询所有的组织id
*/
@GetMapping(value = "/organization/selectAllOrganizationId")
public AjaxResult selectAllOrganizationId();
/**
* 根据applicationName查询定时任务集合
*/
@GetMapping(value = "/elasticJob/elasticJobList/{applicationName}")
public AjaxResult elasticJobList(@PathVariable("applicationName") String applicationName);
/**
* 根据id查询组织信息
*/
@GetMapping(value = "/organization/getInfo/{id}")
public AjaxResult getOrganizationInfo(@PathVariable("id") Long id);
/**
* @Description 根据id查询组织信息(包含所有的子组织id)
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/organization/getInfoForIdList/{id}")
R<OrganizationPo> getInfoForIdList(@PathVariable("id") Long id);
@PostMapping("/menu/upload")
public AjaxResult upload(@RequestParam("file") MultipartFile file);
/**
* 开放接口-获取配置的组织信息
*
* @return
*/
@GetMapping(value = "/tenants/getTenantsByOrgan")
public R<SysTenantsPo> getTenantsByOrgan(@RequestParam("organizationId") Long organizationId);
}
@@ -0,0 +1,29 @@
package com.mhd.system.api;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.multipart.MultipartFile;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.SysFile;
import com.mhd.system.api.factory.RemoteFileFallbackFactory;
/**
* 文件服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteFileService", value = ServiceNameConstants.FILE_SERVICE, fallbackFactory = RemoteFileFallbackFactory.class)
public interface RemoteFileService
{
/**
* 上传文件
*
* @param file 文件信息
* @return 结果
*/
@PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public R<SysFile> upload(@RequestPart(value = "file") MultipartFile file);
}
@@ -0,0 +1,41 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.SysLogininforPo;
import com.mhd.system.api.domain.SysOperLogPo;
import com.mhd.system.api.factory.RemoteLogFallbackFactory;
/**
* 日志服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteLogService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteLogFallbackFactory.class)
public interface RemoteLogService
{
/**
* 保存系统日志
*
* @param sysOperLogPo 日志实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/operlog")
public void saveLog(@RequestBody SysOperLogPo sysOperLogPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 保存访问记录
*
* @param sysLogininforPo 访问实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/logininfor")
public R<Boolean> saveLogininfor(@RequestBody SysLogininforPo sysLogininforPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,44 @@
package com.mhd.system.api;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.SysUser;
import com.mhd.system.api.factory.RemoteUserFallbackFactory;
import com.mhd.system.api.model.LoginUser;
/**
* 用户服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class)
public interface RemoteUserService
{
/**
* 通过用户名查询用户信息
*
* @param username 用户名
* @param source 请求来源
* @return 结果
*/
@GetMapping("/user/info/{username}")
public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 注册用户信息
*
* @param sysUser 用户信息
* @param source 请求来源
* @return 结果
*/
@PostMapping("/user/register")
public R<Boolean> registerUserInfo(@RequestBody SysUser sysUser, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,47 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.wlhy.report.CapitalFlowReport;
import com.mhd.common.core.domain.dto.wlhy.report.DriverReport;
import com.mhd.common.core.domain.dto.wlhy.report.TransportNoteReport;
import com.mhd.common.core.domain.dto.wlhy.report.VehicleReport;
import com.mhd.common.core.domain.po.report.VehicleReportPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* 上报 feign
*/
@FeignClient(contextId = "commonReportServiceFeign", value = ServiceNameConstants.REPORT_SERVICE, configuration = FeignAutoConfiguration.class)
public interface ReportServiceFeign {
/**
* 车辆数据接收入口
*/
@PostMapping("/vehicleApi/receive")
public AjaxResult receive(@RequestBody VehicleReport vehicleReport);
/**
* 司机数据接收入口
*/
@PostMapping("/driverApi/receive")
public AjaxResult receive(@RequestBody DriverReport driverReport);
/**
* 运单数据接收入口
*/
@PostMapping("/transportNoteApi/receive")
public AjaxResult receive(@RequestBody TransportNoteReport transportNoteReport);
/**
* 流水数据接收入口
*/
@PostMapping("/capitalFlowApi/receive")
public AjaxResult receive(@RequestBody List<CapitalFlowReport> capitalFlowReports);
}
@@ -0,0 +1,325 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.NoticeMessageLoggingDto;
import com.mhd.common.core.domain.dto.SysMultistageDictDto;
import com.mhd.common.core.domain.dto.SysProvinceCityCountyDTO;
import com.mhd.common.core.domain.dto.WebSocketDTO;
import com.mhd.common.core.domain.dto.open.StorageLocation;
import com.mhd.common.core.domain.dto.open.SystemOpenApiLogDTO;
import com.mhd.common.core.domain.dto.open.ThirdPartyServiceReqLogDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.SysMultistageDictPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.ContainerFeignPO;
import com.mhd.system.api.domain.SysDictData;
import com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/1 13:40
*/
@FeignClient(contextId = "SystemService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteSystemFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface SystemServiceFeign {
/**
* 多级分类字典,根据code查询字典信息
* 此接口查询多级分类字典,如果是一级字典,则只需传入字典code,如果是二级或三级字典,则还需要传入父类code,否则会查询失败
* @param multistageDictCode 本级code
* @param parentDictCode 父级code
* @return
*/
@GetMapping("/basicApi/getMultistageDictInfoByCode")
public AjaxResult getMultistageDictInfoByCode(@RequestParam("multistageDictCode") String multistageDictCode, @RequestParam("parentDictCode") String parentDictCode);
/**
* 查询多级分类字典
* @param sysMultistageDictDto
* @return
*/
@GetMapping("/basicApi/selectMultistageDictList")
public AjaxResult selectMultistageDictList(SysMultistageDictDto sysMultistageDictDto);
/**
* 根据条件查询分类字典数据列表
* @param
* @return
*/
@PostMapping("/dict/data/getDictDataList")
public R<List<SysDictData>> getDictDataList(@RequestBody SysDictData sysDictData);
/**
* 根据条件查询分类字典数据列表
* @param
* @return
*/
@PostMapping("/basicApi/getMultistageDictList")
public R<List<SysMultistageDictPo>> getMultistageDictList(@RequestBody SysMultistageDictDto sysMultistageDictDto);
/**
* 根据条件查询分类字典数据列表
* @param
* @return
*/
@PostMapping("/basicApi/getMultistageDictTreeList")
public R<List<SysMultistageDictPo>> getMultistageDictTreeList(@RequestBody SysMultistageDictDto sysMultistageDictDto);
/**
* @description 获取数据字典
* @author ZhouGY
* @date 2023/10/10 9:48
* @param dictType
* @return AjaxResult
*/
@GetMapping("/dict/data/type/{dictType}")
public AjaxResult selectListByDictType(@PathVariable("dictType") String dictType);
/**
* 根据字典类型查询字典数据信息
*/
@GetMapping(value = "/dict/data/selectDictDataByOpen")
public AjaxResult getDictDataByOpen(@RequestParam("dictType") String dictType, @RequestParam("topOrgId") Long topOrgId);
/**
* 根据县级编码,查询省市县信息
* @param sysProvinceDTO
* @return
*/
@PostMapping("/basicApi/findAreaInfo")
public AjaxResult selectFindAreaInfoList(@RequestBody SysProvinceCityCountyDTO sysProvinceDTO);
/**
* 根据市区编码查询市区信息
* @param sysProvinceDTO
* @return
*/
@PostMapping("/basicApi/findAreaInfoByCityCode")
public AjaxResult findAreaInfoByCityCode(@RequestBody SysProvinceCityCountyDTO sysProvinceDTO);
/**
* 根据省份编码查询省份信息
* @param sysProvinceDTO
* @return
*/
@PostMapping("/basicApi/findAreaInfoByProvince")
public AjaxResult findAreaInfoByProvince(@RequestBody SysProvinceCityCountyDTO sysProvinceDTO);
/**
* 新增消息通知 批量
* @param noticeMessageLoggingDto
* @return
*/
@PostMapping("/messageManageApi/addMessageLoggingList")
public AjaxResult addMessageLoggingList(@RequestBody NoticeMessageLoggingDto noticeMessageLoggingDto);
/**
* 获取用户所在组织的开关配置信息
* @return
*/
@GetMapping("/userConfigSwitchApi/getUserConfigSwitchInfo")
public AjaxResult getUserConfigSwitchInfo();
/**
* 获取当前租户开关按钮配置
*
* @return
*/
@ApiOperation("获取当前租户开关配置信息")
@GetMapping("userConfigSwitchApi/getUserConfigSwitchInfoByOrgId")
public AjaxResult getUserConfigSwitchInfoByOrgId(@RequestParam("organizationId") Long organizationId);
@ApiOperation("根据topCode查询多级分类字典集合(同一父级字典下所有)")
@GetMapping(value = "/basicApi/getTopMultistageDictList/{topCode}")
public AjaxResult getTopMultistageDictList(@PathVariable(value = "topCode") String topCode);
@ApiOperation("新增多级分类字典-开放接口")
@PostMapping("/basicApi/addMultistageDictByOpen")
public AjaxResult addMultistageDictByOpen(@RequestBody SysMultistageDictDto sysMultistageDictDto);
@ApiOperation("根据code、一级组织ID查询多级分类字典集合")
@GetMapping(value = "/basicApi/getSysMultistageDictByCodeAndTopOrgId")
public AjaxResult getSysMultistageDictByCodeAndTopOrgId(@RequestParam("code") String code, @RequestParam("topOrgId") Long topOrgId);
@ApiOperation("根据topCode、一级组织ID查询多级分类字典集合(同一父级字典下所有)")
@GetMapping(value = "/basicApi/getMultistageDictListByTopCodeAndTopOrgId")
public AjaxResult getMultistageDictListByTopCodeAndTopOrgId(@RequestParam("topCode") String topCode, @RequestParam("topOrgId") Long topOrgId);
/**
* @description 保存服务日志
* @author ZhouGY
* @date 2024/1/26 17:03
* @param systemOpenApiLogDTO
*/
@PostMapping(value = "/systemOpenApiLogApi/save")
public void saveLog(SystemOpenApiLogDTO systemOpenApiLogDTO);
/**
* @description 保存三方服务日志
* @author ZhouGY
* @date 2024/1/26 17:03
* @param thirdPartyServiceReqLogDTO
*/
@PostMapping(value = "/thirdPartyServiceReqLogApi/save")
public void saveThirdPartyServiceReqLog(@RequestBody ThirdPartyServiceReqLogDTO thirdPartyServiceReqLogDTO);
/**
* 群发消息
*/
@PostMapping("/webSocketApi/bulkSend")
public AjaxResult bulkSend(@RequestBody WebSocketDTO webSocketDTO);
/**
* 单个消息
*/
@PostMapping("/webSocketApi/oneSend")
public AjaxResult oneSend(@RequestBody WebSocketDTO webSocketDTO);
@PostMapping("/messageManageApi/addMessageLogging")
public AjaxResult addMessageLogging(@RequestBody NoticeMessageLoggingDto noticeMessageLoggingDto);
/**
* 根据batchId获取对应批次信息
*/
@GetMapping("/batchApi/getInfo/{batchId}")
public AjaxResult getBatchInfoByBatchId(@PathVariable("batchId") Long batchId);
/**
* 根据batchId获取对应批次详情信息
*/
@GetMapping("/batchDetailApi/getBatchDetailListByBatchId/{batchId}")
public AjaxResult getBatchDetailListByBatchId(@PathVariable("batchId") Long batchId);
/**
* 根据materialBaseInfoId获取对应批次详情信息get
*/
@GetMapping("/batchDetailApi/getBatchDetailListByMaterialBaseInfoId/{materialBaseInfoId}")
public AjaxResult getBatchDetailListByMaterialBaseInfoId(@PathVariable("materialBaseInfoId") Long materialBaseInfoId);
/**
* 获取指定用户设置的仓库
*/
@GetMapping("/associationWarehouseApi/getWarehouseInfo/{correlationId}")
public AjaxResult getWarehouseInfo(@PathVariable("correlationId") Long correlationId);
/**
* 根据warehouseId获取对仓库信息
*/
@GetMapping("/warehouseApi/getInfo/{warehouseId}")
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId);
/**
* 根据storageSectionId获取对应库区信息
*/
@GetMapping("/storageSectionApi/getInfo/{storageSectionId}")
public AjaxResult getStorageSectionInfoByStorageSectionId(@PathVariable("storageSectionId") Long storageSectionId);
/**
* 根据storageLocationId获取对应库位信息
*/
@GetMapping("/storageLocationApi/getInfo/{storageLocationId}")
public AjaxResult getStorageLocationInfoByStorageLocationId(@PathVariable("storageLocationId") Long storageLocationId);
@PostMapping("/storageLocationApi/getStorageLocationCount")
public AjaxResult getStorageLocationCount(@RequestBody StorageLocation storageLocation);
/**
* 根据包装id和单位编码获取包装详情信息
*/
@GetMapping("/packApi/getInfoByPackIdAndUnitCode/{packId}/{unitCode}")
public AjaxResult getInfoByPackIdAndUnitCode(@PathVariable("packId") Long packId, @PathVariable("unitCode") String unitCode);
/**
* 根据platformId获取对应月台信息
*/
@GetMapping("/platformApi/getInfo/{platformId}")
public AjaxResult getPlatformInfoByPlatformId(@PathVariable("platformId") Long platformId);
/**
* 根据platformUseTimeIds获取对应月台使用时间信息
*/
@GetMapping("/platformUseTimeApi/getInfo/{platformUseTimeId}")
public AjaxResult getPlatformUseTimeInfoByPlatformUseTimeId(@PathVariable("platformUseTimeId") Long platformUseTimeId);
/**
* 根据containerId获取对应容器信息
*/
@GetMapping("/containerApi/getInfo/{containerId}")
public AjaxResult getContainerInfoByContainerId(@PathVariable("containerId") Long platformUseTimeId);
/**
* 修改容器占用状态
*/
@PostMapping("/containerApi/updateUsageStatus")
public AjaxResult updateUsageStatus(@RequestBody ContainerFeignPO containerFeign);
/**
* 查询关联仓库列表根据关联id
*/
@GetMapping("/associationWarehouseApi/setWarehouseInfo")
public AjaxResult setWarehouseInfo(@RequestBody AssociationWarehouseFeign associationWarehouseFeign);
/**
* 根据code编码查询费用科目
*/
@GetMapping("/expenseAccountApi/getInfoByCode")
public AjaxResult getSubInfoByCode(@RequestParam("subjectCode") String subjectCode);
/**
* 根据code编码查询项目信息
*/
@GetMapping("/projectManageApi/getInfoByCode")
public AjaxResult getProjectByCode(@RequestParam("projectCode") String projectCode);
/**
* 根据项目id查询项目信息
*/
@GetMapping("/projectManageApi/getProjectInfoById")
public AjaxResult getProjectInfoById(@RequestParam("projectManageId") Long projectManageId);
/**
* 根据服务项id查询服务项信息
*/
@GetMapping("/serviceItemsManageApi/getServiceItemsById")
public AjaxResult getServiceItemsById(@RequestParam("serviceItemsManageId") Long serviceItemsManageId);
/**
* 根据服务项code获取服务项管理
*/
@GetMapping("/serviceItemsManageApi/getServiceItemsByCode")
public AjaxResult getServiceItemsByCode(@RequestParam("serviceItemsCode") String serviceItemsCode);
/**
* 根据合同编码获取合同管理
*/
@GetMapping("/contractManageApi/getInfoByCode")
public AjaxResult getInfoByCode(@RequestParam("contractNumber") String contractNumber);
/**
* 根据结算主体获取合同信息
*/
@GetMapping("/contractManageApi/getInfoByCustomer")
public AjaxResult getInfoByCustomer(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType);
@GetMapping("/contractManageApi/queryList")
public AjaxResult queryList();
}
@@ -0,0 +1,31 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.EnterpriseAccessPO;
import com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/**
* @author ZhouGY
* @title TicketServiceFeign
* @description: 票务服务
* @date 2023/9/21 19:42
**/
@FeignClient(contextId = "remoteTicketServiceFeign", value = ServiceNameConstants.TICKET_CENTER, fallbackFactory = RemoteTicketFeignFallbackFactory.class)
public interface TicketServiceFeign {
/**
* @description 根据组织id查询接入企业信息
* @author ZhouGY
* @date 2023/9/21 20:06
* @param organizationId
* @return R<TicketEnterprisePO>
*/
@GetMapping("/enterpriseApi/getEnterprisePoByOrganizationId/{organizationId}")
public R<List<EnterpriseAccessPO>> getEnterprisePoByOrganizationId(@PathVariable("organizationId") Long organizationId);
}
@@ -0,0 +1,96 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
import com.mhd.common.core.domain.dto.SyncTmsVehicleDTO;
import com.mhd.common.core.domain.dto.VehicleDto;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.VehiclePo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.system.api.factory.TransportFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import io.swagger.annotations.ApiOperation;
import lombok.extern.java.Log;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(contextId = "commonTransportFeign",value = ServiceNameConstants.TRANSPORT_CENTER,configuration = FeignAutoConfiguration.class,fallbackFactory = TransportFallbackFactory.class)
public interface TransportFeign {
/**
* 查询车辆管理列表
*/
@PostMapping("/vehicle/listTwo")
public TableDataInfo listTwo(VehicleDto vehicleDto);
@PostMapping("/vehicle/editVehicle")
public AjaxResult editVehicle(@RequestBody VehicleDto vehicleDto);
/**
* 获取车辆信息
*/
@GetMapping(value = "/vehicle/getVehiclePo/{vehicleId}")
public AjaxResult getVehiclePoById(@PathVariable("vehicleId") Long vehicleId);
/**
* 根据车辆ids获取车辆信息
*/
@PostMapping("/vehicle/getVehicleByIds")
public AjaxResult getVehicleByIds(@RequestBody VehicleDto vehicleDto);
/**
* 根据用户id查询我的车辆信息
* @param userId
* @return
*/
@GetMapping(value = "/vehicle/selectVehiclesByUserId/{userId}")
public R<List<VehiclePo>> getVehiclePosByUserId(@PathVariable("userId") Long userId);
/**
* 获取车辆统计数据
*/
@ApiOperation("获取车辆统计数据")
@PostMapping("/vehicle/vehicleCountByMatter")
public AjaxResult vehicleCountByMatter(@RequestBody StatisticalMattersDTO statisticalMattersDTO);
/**
* 根据车牌号查询车辆信息 - 开放接口
*/
@ApiOperation("查询车辆信息")
@GetMapping("/vehicle/getVehicleInfoByOpen")
public AjaxResult<?> getVehicleInfoByOpen(@RequestParam("vehicleLicence") String vehicleLicence, @RequestParam(value = "driverEnterpriseCode", required = false) String driverEnterpriseCode);
/**
* 同步tms车辆
* @param syncTmsVehicleDTO
* @return
*/
@PostMapping(value = "/vehicle/syncTmsVehicle")
public AjaxResult syncTmsVehicle(@RequestBody SyncTmsVehicleDTO syncTmsVehicleDTO);
@GetMapping("/vehicle/{plateNumber}")
R<VehiclePo> findVehicleByPlateNumber(@PathVariable("plateNumber") String plateNumber);
/**
* 新增车辆
*
* @param vehicleDto 新增DTO对象
* @return 结果
*/
@PostMapping("/vehicle/add")
R<Void> add(@RequestBody VehicleDto vehicleDto);
@PostMapping("/vehicle/addForUserApp")
R<Void> addForUserApp(@RequestBody VehicleDto vehicleDto);
@PostMapping("/vehicle/updateMotorcadeNameByMotorcadeId")
AjaxResult updateMotorcadeNameByMotorcadeId(@RequestBody VehicleDto vehicleDto);
}
@@ -0,0 +1,32 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.mall.SysTenant;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
@FeignClient(contextId = "commonUpmsServiceFeign",value = ServiceNameConstants.UPMS_SERVICE)
public interface UpmsServiceFeign {
/**
* 同步租户
*/
@PostMapping("/tenant/save")
public R szwlSyncTenant(@RequestBody SysTenant sysTenant, @RequestHeader("from") String from);
/**
* 查询租户信息
* @param szwlTenantId
* @return
*/
@GetMapping("/tenant/inside/{szwlTenantId}")
R<SysTenant> getBySzwlTenantId(@PathVariable("szwlTenantId") String szwlTenantId, @RequestHeader("from") String from);
}
@@ -0,0 +1,180 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.DriverVehicleBindDto;
import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
import com.mhd.common.core.domain.dto.UserDataPermissionQueryDTO;
import com.mhd.common.core.domain.dto.UserDriverDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.todo.StatisticalMattersDo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.UserDTO;
import com.mhd.system.api.domain.UserUpdateDTO;
import com.mhd.system.api.factory.RemoteUserFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import com.mhd.system.api.model.LoginUser;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@FeignClient(contextId = "remoteUserServiceFeign", value = ServiceNameConstants.USER_CENTER, fallbackFactory = RemoteUserFeignFallbackFactory.class,configuration = FeignAutoConfiguration.class)
public interface UserServiceFeign {
@PostMapping("/userApi/getUserByUserId/{userId}")
public R<LoginUser> getUserByUserId(@PathVariable("userId") Long userId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@GetMapping("/userApi/getUserByDingUserId")
public R<LoginUser> getUserByDingUserId(@RequestParam("dingUserId") String dingUserId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 通过用户名查询用户信息
*
* @return 结果
*/
@PostMapping("/userApi/getUserByTopOrganizationUserAccount")
public R<LoginUser> getUserByTopOrganizationUserAccount(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PostMapping("/userApi/getUserByTopOrganizationUserPhone")
public R<LoginUser> getUserByTopOrganizationUserPhone(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PostMapping("/userApi/add")
public R<LoginUser> addUser(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PutMapping("/userApi/update")
public R<LoginUser> updateUser(@RequestBody UserUpdateDTO userUpdateDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PutMapping("/userApi/updateWhenLogin")
public R<LoginUser> updateWhenLogin(@RequestBody UserUpdateDTO userUpdateDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* @Description 绑定车辆
* @Author Alex
* @Date 2023/1/5 21:24
*/
@PostMapping("/userDriverApi/bindVehicle")
public AjaxResult bindVehicle(@RequestBody UserDriverDTO userDriverDTO);
/**
* 查询用户数据权限-单条
* @param userDataPermissionQueryDTO
* @return
*/
@PostMapping("/userApi/findUserDataPermission")
public AjaxResult findUserDataPermission(@RequestBody UserDataPermissionQueryDTO userDataPermissionQueryDTO);
/**
* 保存司机车辆绑定信息
* @param driverVehicleBindDto
* @return
*/
@PostMapping("/userDriverApi/saveBindVehicle")
public AjaxResult saveBindVehicle(@RequestBody DriverVehicleBindDto driverVehicleBindDto);
/**
* 根据用户id查询司机信息
* @param userId
* @return
*/
@GetMapping("/userDriverApi/getDriverInfoByUserId/{userId}")
public AjaxResult getDriverInfoByUserId(@PathVariable("userId") Long userId);
/**
* 根据司机id查询绑定车辆的用户信息
* @param vehicleId
* @return
*/
@GetMapping("/userDriverApi/selectUserBindByVehicleId/{vehicleId}")
public Map<String,String> selectUserBindByVehicleId(Long vehicleId);
/**
* 根据车辆ids查询司机
*/
@ApiOperation("根据车辆id查询司机")
@PostMapping("/driverVehicleBindApi/getInfoByVid")
public AjaxResult getInfoByVid(@RequestBody List<Long> ids);
/**
* 根据用户ID查询用户详细信息
*/
@ApiOperation("根据用户ID查询用户详细信息")
@GetMapping("/userApi/getInfo/{userId}")
public AjaxResult getInfo(@PathVariable("userId") Long userId);
/**
* 查询车辆绑定的承运人列表
*/
@ApiOperation("查询车辆绑定的承运人列表")
@GetMapping("/userAppApi/bindDriverShipList")
public AjaxResult bindDriverShipList(@RequestParam("vehicleId") Long vehicleId);
@ApiOperation("根据车辆id查询司机")
@PostMapping("/driverVehicleBindApi/changeVehicleUserId")
public AjaxResult changeVehicleUserId(@RequestBody DriverVehicleBindDto driverVehicleBindDto);
/**
* 获取承运人、托运人待审核数量
*/
@ApiOperation("获取承运人、托运人待审核数量")
@PostMapping("/userApi/getDriverAndShipperWaitingReviewSum")
public AjaxResult getDriverAndShipperWaitingReviewSum(@RequestBody StatisticalMattersDTO statisticalMattersDTO);
@ApiOperation("获取所有在线司机ID")
@GetMapping("/driverCurrentPositionApi/getOnlineDriver")
public R<List<Long>> getOnlineDriver();
@ApiOperation("查询承运人详情 - 手机")
@GetMapping("/userDriverApi/getDriverInfoByOpen")
public AjaxResult<?> getDriverInfoByOpen(@RequestParam("phone") String phone, @RequestParam("driverEnterpriseCode") String driverEnterpriseCode);
@ApiOperation("根据用户ID查询角色列表")
@GetMapping("/roleApi/getRoleListByUserId/{userId}")
public AjaxResult getRoleListByUserId(@PathVariable("userId") Long userId);
@ApiOperation("锁定用户")
@PostMapping("/userApi/lockUser")
public AjaxResult lockUser(@RequestBody UserDTO userDTO);
@ApiOperation("查询承运企业详情")
@GetMapping("/userDriverApi/getDriverEnterpriseInfoByOpen")
public AjaxResult<?> getDriverEnterpriseInfoByOpen(@RequestParam("driverEnterpriseCode") String driverEnterpriseCode);
@ApiOperation("查询租户下全部托运人")
@GetMapping("/userShipperApi/userShipperListAll")
public AjaxResult<?> userShipperListAll();
@ApiOperation("查询租户下全部承运人")
@GetMapping("/userDriverApi/userDriverListAll")
public AjaxResult<?> userDriverListAll();
/**
* @description 独立司机绑定默认车队同步
* @author ZhouGY
* @date 2024/7/1 19:29
* @param userId
* @return AjaxResult
*/
@GetMapping("/userDriverApi/aloneUserDriverAuth/{userId}")
public AjaxResult aloneUserDriverAuth(@PathVariable("userId") Long userId);
/**
* 根据车队id和用户id查询车队代收协议
* @param motorcadeId
* @param userId
* @return
*/
@GetMapping("/motorcadeCollectionApi/getInfoByMoIdAndUserId")
public AjaxResult getInfoByMoIdAndUserId(@RequestParam("motorcadeId") Long motorcadeId,@RequestParam("userId") Long userId);
}
@@ -0,0 +1,505 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.BusinessDocumentDetaliDTO;
import com.mhd.common.core.domain.dto.StaffDataPermissionDTO;
import com.mhd.common.core.domain.dto.wlhy.TmsCloudFreightPaymentDTO;
import com.mhd.common.core.domain.dto.open.OpenVehicleDto;
import com.mhd.common.core.domain.dto.open.WlhyOpenDriverDto;
import com.mhd.common.core.domain.dto.open.WlhyOpenDriverEnterpriseDto;
import com.mhd.common.core.domain.dto.wlhy.*;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.entity.RevenueExpensesRecord;
import com.mhd.common.core.domain.entity.SysConfigSwitch;
import com.mhd.common.core.domain.po.UserPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.*;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@FeignClient(contextId = "commonWlhyServiceFeign",value = ServiceNameConstants.WLHY_SERVICE,configuration = FeignAutoConfiguration.class)
public interface WlhyServiceFeign {
/**
* 获取网货用户基本信息
* @param sysLoginModel 登录对象
* @return 登录用户基本信息
*/
@PostMapping("/sys/getWlhyUserInfo")
public R<WlhyLoginUser> getWlhyUserInfo(@RequestBody SysLoginModel sysLoginModel);
/**
* @description 根据数字物流的用户ID获取用户信息
* @author ZhouGY
* @date 2023/12/22 13:53
* @param szwlUserId
* @return R<TmsDriver>
*/
@GetMapping(value = "/feign/user/getUserInfoBySzwlUserId/{szwlUserId}")
public R<Long> getUserInfoBySzwlUserId(@PathVariable("szwlUserId") Long szwlUserId);
/**
* @description 新增平台员工基本信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/add")
public R<Boolean> addPlatformUser(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 新增平台员工基本信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/registerUser")
public R<Boolean> registerUser(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 修改平台员工基本信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/edit")
public R<Boolean> editPlatformUser(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 修改手机号
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/updatePhone")
public R<Boolean> updatePhone(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 新增或修改 司机/车队信息
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/saveOrUpdateCarrierInfo")
public R<Boolean> saveOrUpdateCarrierInfo(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 加入车队
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/addMotorcadeMember")
public R<String> addMotorcadeMember(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 离开车队
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/delMotorcadeMember")
public R<Boolean> delMotorcadeMember(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 承运人网货业务设置
*/
@PostMapping(value = "/feign/user/updateDriverBusiness")
public R<Boolean> updateDriverBusiness(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 审核 司机/车队信息
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAuditDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/auditDriverOrCarrierInfo")
public R<Boolean> auditDriverOrCarrierInfo(@RequestBody TmsDriverAuditDTO tmsDriverAuditDTO);
/**
* @description 分配平台员工角色
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTOList
* @return R<?>
*/
@PostMapping("/feign/user/allocationPlatformUserRole")
public R<Boolean> allocationPlatformUserRole(@RequestBody List<PlatformUserDTO> platformUserDTOList);
/**
* @description 删除平台员工、角色和部门信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param szwlUserIds
* @return R<?>
*/
@PostMapping("/feign/user/deleteBatchPlatformUser")
public R<Boolean> deleteBatchPlatformUser(@RequestBody List<Long> szwlUserIds);
/**
* 数字物流同步新增货主表
* @param tmsShipperDTO
* @return
*/
@PostMapping("/feign/shipper/szwlAddAndEditShipper")
public AjaxResult szwlAddAndEditShipper(@RequestBody TmsShipperDTO tmsShipperDTO);
/**
* 数字物流同步修改车辆表
* @param tmsVehicleDTO
* @return
*/
@PostMapping("/feign/vehicle/szwlAddVehicle")
public AjaxResult szwlAddVehicle(@RequestBody TmsVehicleDTO tmsVehicleDTO);
/**
* 数字物流同步修改车辆表
* @param tmsVehicleDTO
* @return
*/
@PostMapping("/feign/vehicle/szwlUpdateVehicle")
public AjaxResult szwlUpdateVehicle(@RequestBody TmsVehicleDTO tmsVehicleDTO);
/**
* 开放Api - 同步车辆信息
*
* @param openVehicleDto
* @return
*/
@PostMapping(value = "/openApi/openSzwlSynchronizeVehicle")
public AjaxResult openSzwlSynchronizeVehicle(@RequestBody OpenVehicleDto openVehicleDto);
/**
* 开放Api - 删除车辆信息
*
* @param openVehicleDto
* @return
*/
@PostMapping(value = "/openApi/openDelVehicle")
public AjaxResult openDelVehicle(@RequestBody OpenVehicleDto openVehicleDto);
/**
* 开放Api - 同步司机信息
*
* @param wlhyOpenDriverDto
* @return
*/
@PostMapping(value = "/openApi/openSzwlSynchronizeDriver")
public AjaxResult openSzwlSynchronizeDriver(@RequestBody WlhyOpenDriverDto wlhyOpenDriverDto);
/**
* 开放Api - 同步承运商信息
*
* @param wlhyOpenDriverEnterpriseDto
* @return
*/
@PostMapping(value = "/openApi/openSzwlSynchronizeDriverEnterprise")
public AjaxResult openSzwlSynchronizeDriverEnterprise(@RequestBody WlhyOpenDriverEnterpriseDto wlhyOpenDriverEnterpriseDto);
/**
* 开放Api - 删除承运商/司机
*
* @param wlhyOpenDriverDto
* @return
*/
@PostMapping(value = "/openApi/openDelDriver")
public AjaxResult openDelDriver(@RequestBody WlhyOpenDriverDto wlhyOpenDriverDto);
/**
* @description 删除司机/车队信息 根据数字物流用户id
* @author ZhouGY
* @date 2023/12/22 14:36
* @param szwlIds
* @return R<?>
*/
@PostMapping(value = "/feign/user/deleteCarrierInfo")
public R<Boolean> deleteCarrierInfo(@RequestBody List<Long> szwlIds);
/**
* 数字物流同步修改企业表
* @param taxactionDTO
* @return
*/
@PostMapping("/feign/taxcompany/szwlSyncTaxcompany")
public AjaxResult szwlSyncTaxcompany(@RequestBody TaxactionDTO taxactionDTO);
/**
* @description 司机 绑定车辆
* @author ZhouGY
* @date 2023/12/22 14:03
* @param tmsDriverBinDingDTO
* @return Result<?>
*/
@PostMapping(value = "/feign/user/binding")
public R<Boolean> binding(@RequestBody TmsDriverBinDingDTO tmsDriverBinDingDTO);
/**
* @description 司机 解绑车辆
* @author ZhouGY
* @date 2023/12/22 14:15
* @param tmsDriverBinDingDTO
* @return Result<?>
*/
@PostMapping(value = "/feign/user/untying")
public R<Boolean> untying(@RequestBody TmsDriverBinDingDTO tmsDriverBinDingDTO);
@GetMapping(value = "/feign/transportNote/getAllTransportNote")
public R<List<Long>> getAllTransportNote();
@PostMapping(value = "/feign/user/synTemplateSeal")
public R<Boolean> synTemplateSeal(@RequestBody UserPo userPo);
/**
* 新增/修改 银行卡
* @param tmsBankCardDTO
* @return
*/
@PostMapping("/feign/bankCard/szwlSyncBankCard")
public AjaxResult szwlSyncBankCard(@RequestBody TmsBankCardDTO tmsBankCardDTO);
/**
* 删除银行卡
* @param tmsBankCardDTO
* @return
*/
@PostMapping("/feign/bankCard/szwlDeleteBankCard")
public AjaxResult szwlDeleteBankCard(TmsBankCardDTO tmsBankCardDTO);
/**
* 托运人设置月结状态
* @param tmsShipperDTO
* @return
*/
@PostMapping("/feign/shipper/updateMonthlySettlementFlag")
public AjaxResult updateMonthlySettlementFlag(@RequestBody TmsShipperDTO tmsShipperDTO);
/**
* 根据运单号查询运单信息
* @param orderNo
* @return
*/
@GetMapping(value = "/feign/transportNote/selectByOrderNum")
public R<TmsTransportNote> selectByOrderNum(@RequestParam(value = "orderNo") String orderNo);
/**
* 运输单表-支付回调
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/payCallback")
public AjaxResult payCallback(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 运输单表-开票回调
* @param tmsTransportNoteList
* @return
*/
@PostMapping("/feign/transportNote/updateBillingStatus")
public AjaxResult updateBillingStatus(@RequestBody List<TmsTransportNote> tmsTransportNoteList);
/**
* 运输单表-支付回调货主使用
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/payCallbackShipper")
public AjaxResult payCallbackShipper(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 运输单表-支付回调
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/auditCallback")
public AjaxResult auditCallback(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 运输单表-拒绝支付运费
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/refuseApplication")
public AjaxResult refuseApplication(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 批量设置员工数据权限
* @param staffDataPermissionDTO
* @return
*/
@PostMapping("/feign/user/batchStaffPermission")
R<?> batchStaffPermission(@RequestBody StaffDataPermissionDTO staffDataPermissionDTO);
/**
* @description 获取当前登录人绑定的车辆
*/
@GetMapping(value = "/feign/user/getVehicleLicenseNumberBylogin")
public R<String> getVehicleLicenseNumberBylogin();
/**
* @description 获取当前登录人已装货未卸货的运单根据时间排序取最新的一条
*/
@GetMapping(value = "/feign/transportNote/selectByDriverId")
public R<String> selectByDriverId();
/**
* @description 删除货主
* @author ZhouGY
* @date 2024/3/5 14:58
* @param szwlIds
* @return R<Boolean>
*/
@PostMapping(value = "/feign/shipper/deleteShipperInfo")
public R<Boolean> deleteShipperInfo(@RequestBody List<Long> szwlIds);
/**
* @description 同步注销用户
* @author ZhouGY
* @date 2024/3/7 11:36
* @return R<Boolean>
*/
@GetMapping(value = "/feign/user/cancellationUser")
public R<Boolean> cancellationUser();
@PostMapping("/pushNowOffLine")
public R<Boolean> pushNowOffLine(@RequestBody List<Long> userSzwlId);
@PostMapping(value = "/feign/user/signAgreement")
public R<String> signAgreement(@RequestBody TmsCollectionAgentWlhyDTO tmsCollectionAgentWlhyDTO);
/**
* 人脸认证通过后同步认证状态
* @param userId
* @return
*/
@PostMapping(value = "/feign/user/syncAuthStauts")
public R<Boolean> syncAuthStauts(@RequestBody Long userId);
/**
* @description 解散车队
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/delMotorcade")
public R<Boolean> delMotorcade(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
@PostMapping("/feign/user/changePhone")
public R<Boolean> changePhone(@RequestBody PlatformUserDTO platformUserDTO);
@GetMapping("/feign/configSwitch/getConfigByLogin")
public R<SysConfigSwitch> getConfigByLogin();
/**
* @description 车队移除司机
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/motorcadeRemoveDriver")
public R<Boolean> motorcadeRemoveDriver(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
@PostMapping(value = "/feign/user/deleteUserByUserPo")
R<Boolean> deleteUserByUserPo(UserPo userPo);
@PostMapping(value = "/feign/transportNote/countTransportnoteBySzwlUserIdList")
R<Map<Long, Integer>> countTransportnoteBySzwlUserIdList(@RequestBody List<Long> userIdList);
/**
* 根据运单查询该运单货源下所有的运单号
*/
@GetMapping("/feign/transportNote/getTmsTransportNoteAllByNumber/{transportationNumber}")
public AjaxResult getTmsTransportNoteAllByNumber(@PathVariable("transportationNumber") String transportationNumber);
/**
* 同步tms调度单运费支付
*/
@PostMapping("/feign/transportNote/syncTmsDispatch")
public AjaxResult syncTmsDispatch(@RequestBody List<TmsCloudFreightPaymentDTO> tmsCloudFreightPaymentDTOList);
/**
* 新增发运通知
*/
@PostMapping("/feign/dispatchAdvice/save")
public AjaxResult saveDispatchAdvice(@RequestBody List<DispatchAdviceFeign> dispatchAdviceFeignList);
/**
* 根据单号,查询主单信息,及主单下子单列表
*/
@GetMapping("/feign/transportNote/selectMainOrderByOrderNum")
public AjaxResult selectMainOrderByOrderNum(@RequestParam(value = "waybillNumber") String waybillNumber);
@PostMapping(value = "/openApi/syncBusinessDocumentInfo")
public AjaxResult syncBusinessDocumentInfo(@RequestBody List<BusinessDocumentDetaliDTO> businessDocumentDetaliDtoList);
/**
* 修改货主授信使用额度
* @param tmsShipperDTO
* @return
*/
@PostMapping("/feign/shipper/modifyAvailableCreditLimit")
public AjaxResult modifyAvailableCreditLimit(@RequestBody TmsShipperDTO tmsShipperDTO);
/**
* 修改车辆维修工时费支付状态
* @param editPaymentStatusDTO
* @return
*/
@PostMapping("/feign/tmsVehicleMaintain/editPaymentStatus")
public AjaxResult editPaymentStatus(@RequestBody EditPaymentStatusDTO editPaymentStatusDTO);
/**
* 查询应付单据生成科目--上报记录费用信息
* @param businessCocumentId
* @return
*/
@GetMapping("feign/finaceApi/getZyclClhsSecondSubjectList/{businessCocumentId}")
public R<List<SecondSubjectPO>> getZyclClhsSecondSubjectList(@PathVariable("businessCocumentId") String businessCocumentId);
/**
* 查询现金运费明细
* @param businessCocumentId
* @return
*/
@GetMapping("feign/finaceApi/getZyclXjhjSecondSubjectList/{businessCocumentId}")
public R<List<SecondSubjectPO>> getZyclXjhjSecondSubjectList(@PathVariable("businessCocumentId") String businessCocumentId);
/**
* 车辆核算现金、油卡抵扣 生成还款记录&处理借款金额
* @param revenueExpensesRecordDTO
* @return
*/
@PostMapping("feign/finaceApi/handleDriverLoanInfo")
public R<Boolean> handleDriverLoanInfo(@RequestBody RevenueExpensesRecordDTO revenueExpensesRecordDTO);
@PostMapping("feign/finaceApi/updatePaymentStatusByBusinessDocumentId")
public R<Boolean> updatePaymentStatusByBusinessDocumentId(@RequestBody List<UpdatePaymentStatusDTO> updatePaymentStatusList);
@GetMapping(value = "/feign/shipper/queryBySzwlUserId")
public R<TmsShipper> queryBySzwlUserId(@RequestParam(name="szwlUserId")Long szwlUserId);
@PostMapping("feign/finaceApi/deleteBusinessDocumentDetail")
public R<Boolean> deleteBusinessDocumentDetail(@RequestBody BusinessDocumentDetaliDTO businessDocumentDetaliDTO);
}
@@ -0,0 +1,60 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.MaterialBaseInfoFeign;
import com.mhd.system.api.domain.NoticeOrderDTO;
import com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* @author ZhouGY
* @title WmsServiceFeign
* @description: TODO
* @date 2024/5/10 8:58
**/
@FeignClient(contextId = "remoteWmsServiceFeign", value = ServiceNameConstants.WMS_SERVICE, fallbackFactory = RemoteTicketFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface WmsServiceFeign {
/**
* @description 同步物料信息
* @author ZhouGY
* @date 2024/7/24 11:22
* @param materialBaseInfoFeign
* @return AjaxResult
*/
@PostMapping("/materialBaseInfoApi/edit")
public AjaxResult edit(@RequestBody MaterialBaseInfoFeign materialBaseInfoFeign);
/**
* @description 删除物料信息
* @author ZhouGY
* @date 2024/7/24 11:22
* @param materialBaseInfoIds
* @return AjaxResult
*/
@DeleteMapping("/materialBaseInfoApi/deleteByIds/{materialBaseInfoIds}")
public AjaxResult deleteByIds(@PathVariable("materialBaseInfoIds") Long[] materialBaseInfoIds);
/**
* @description 根据物料基础信息id 获取批次属性信息
* @author ZhouGY
* @date 2024/7/24 11:21
* @param materialBaseInfoId
* @return AjaxResult
*/
@GetMapping("/materialGoodsRuleApi/getInfoByMaterialBaseInfoIds/{materialBaseInfoId}")
public AjaxResult getInfoByMaterialBaseInfoIds(@PathVariable("materialBaseInfoId") Long materialBaseInfoId);
/**
* 入库单/出库单新增,供其他系统调用
* @param noticeOrderDTO
* @return
*/
@PostMapping("/noticeOrderApi/insert")
public AjaxResult stockOutOrInInsert(@RequestBody NoticeOrderDTO noticeOrderDTO);
}
@@ -0,0 +1,65 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 批次管理详情对象 batch_detail
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "批次管理详情对象", description = "批次管理详情响应对象")
public class BatchDetailFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("批次管理详情id")
private Long batchDetailId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("批次id")
@Excel(name = "批次id")
private Long batchId;
@ApiModelProperty("批次标签")
@Excel(name = "批次标签")
private String batchLabels;
@ApiModelProperty("输入控制: 1-必填 2-可选")
@Excel(name = "输入控制: 1-必填 2-可选")
private String inputControl;
@ApiModelProperty("属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
@Excel(name = "属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
private String attributeFormat;
@ApiModelProperty("属性选项")
@Excel(name = "属性选项")
private String attributeOption;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
}
@@ -0,0 +1,61 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 批次管理对象 batch
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class BatchFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("批次id")
private Long batchId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("批次编码")
@Excel(name = "批次编码")
private String batchCode;
@ApiModelProperty("批次名称")
@Excel(name = "批次名称")
private String batchName;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("启用状态: 1-启用 2-停用")
@Excel(name = "启用状态: 1-启用 2-停用")
private Integer openingUp;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
}
@@ -0,0 +1,89 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 容器管理对象 container
*
* @author gen
* @date 2024-05-07
*/
@Data
@ApiModel(value = "容器管理对象", description = "容器管理响应对象")
public class ContainerFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("容器id")
private Long containerId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("容器编码")
@Excel(name = "容器编码")
private String containerCode;
@ApiModelProperty("容器类型 数据字典")
@Excel(name = "容器类型 数据字典")
private String containerType;
@ApiModelProperty("容器类型名称 数据字典")
@Excel(name = "容器类型名称 数据字典")
private String containerTypeName;
@ApiModelProperty("容器大小 长*宽*高 单位:米")
@Excel(name = "容器大小 长*宽*高 单位:米")
private String containerSize;
@ApiModelProperty("容器大小-长 单位:米")
@Excel(name = "容器大小-长 单位:米")
private BigDecimal containerLength;
@ApiModelProperty("容器大小-宽 单位:米")
@Excel(name = "容器大小-宽 单位:米")
private BigDecimal containerWidth;
@ApiModelProperty("容器大小-高 单位:米")
@Excel(name = "容器大小-高 单位:米")
private BigDecimal containerHeight;
@ApiModelProperty("容器容积 单位:立方米")
@Excel(name = "容器容积 单位:立方米")
private BigDecimal containerVolume;
@ApiModelProperty("使用状态: 1-空闲 2-占用")
@Excel(name = "使用状态: 1-空闲 2-占用")
private Integer usageStatus;
@ApiModelProperty("启用状态: 1-启用 2-停用")
@Excel(name = "启用状态: 1-启用 2-停用")
private Integer openingUp;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
}
@@ -0,0 +1,86 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Description: 发运通知表
* @Author: Alex
* @Date: 2024-09-03 09:24:24
* @Version: V1.0
*/
@Data
public class DispatchAdviceFeign implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建人")
private String createBy;
@ApiModelProperty(value = "创建日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "更新人")
private String updateBy;
@ApiModelProperty(value = "更新日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty("删除标记")
private Integer isDelete;
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
@ApiModelProperty(value = "组织表ID")
private Long organizationId;
@ApiModelProperty(value = "组织名称")
private String organizationName;
@ApiModelProperty(value = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(value = "通知单号")
private String noticeNumber;
@ApiModelProperty(value = "预约用车时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date reservationTime;
@ApiModelProperty(value = "来源系统")
private String orderSource;
@ApiModelProperty(value = "来源单号")
private String orderNumber;
@ApiModelProperty(value = "货物信息")
private String goodsInfo;
@ApiModelProperty(value = "货物种类")
private Integer goodsCategory;
@ApiModelProperty(value = "货物件数")
private Integer goodsNumber;
@ApiModelProperty(value = "货物数量")
private BigDecimal goodsQuantity;
@ApiModelProperty(value = "通知状态:1-未确认 2-已确认 3-已取消 4-已作废")
private Integer status;
@ApiModelProperty(value = "货主id")
private Long shipperId;
@ApiModelProperty(value = "货主code")
private String shipperCode;
@ApiModelProperty(value = "货主名称")
private String shipperName;
@ApiModelProperty(value = "运距(千米)")
private BigDecimal haulDistance;
@ApiModelProperty(value = "装货地县区编码")
private String loadingAreaId;
@ApiModelProperty(value = "装货地名称")
private String loadingName;
@ApiModelProperty(value = "装货地详细地址")
private String loadingAddress;
@ApiModelProperty(value = "卸货地县区编码")
private String unloadAreaId;
@ApiModelProperty(value = "卸货地名称")
private String unloadName;
@ApiModelProperty(value = "卸货地详细地址")
private String unloadAddress;
@ApiModelProperty(value = "备注")
private String remark;
}
@@ -0,0 +1,28 @@
package com.mhd.system.api.domain;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author ZhouGY
* @title MallOAuthLogin
* @description: TODO
* @date 2024/4/13 16:15
**/
@NoArgsConstructor
@Data
public class MallOAuthLogin implements Serializable {
private static final long serialVersionUID = 1L;
private String username;
private String password;
private String grant_type;
private String scope;
}
@@ -0,0 +1,37 @@
package com.mhd.system.api.domain;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* @author ZhouGY
* @title MallOAuthTokenInfo
* @description: TODO
* @date 2024/4/13 16:10
**/
@NoArgsConstructor
@Data
public class MallOAuthToken implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 商城PC access_token
*/
private String access_token;
private String token_type;
private String refresh_token;
private Integer expires_in;
private String scope;
private String tenant_id;
private String shop_id;
private String license;
private String user_id;
private List<?> tenant_ids;
private String type;
private String username;
private String organ_id;
}
@@ -0,0 +1,79 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 物料条码信息对象 material_bar_code
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialBarCodeFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialBarCodeId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("条码")
@Excel(name = "条码")
private String barCode;
@ApiModelProperty("包装id")
@Excel(name = "包装id")
private Long packId;
@ApiModelProperty("包装编码")
@Excel(name = "包装编码")
private String packCode;
@ApiModelProperty("包装名称")
@Excel(name = "包装名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("名称")
@Excel(name = "名称")
private String name;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,185 @@
package com.mhd.system.api.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.handler.ListTypeHandler;
import lombok.Data;
import java.math.BigDecimal;
import io.swagger.annotations.ApiModelProperty;
import com.mhd.common.core.web.domain.BaseVOEntity;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 物料基础信息对象 material_base_info
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialBaseInfoFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("货主id")
@Excel(name = "货主id")
private Long shipperId;
@ApiModelProperty("货主名称")
@Excel(name = "货主名称")
private String shipperName;
@ApiModelProperty("物料编码")
@Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("物料名称")
@Excel(name = "物料名称")
private String materialName;
@ApiModelProperty("物料条形码")
@Excel(name = "物料条形码")
private String barCode;
@ApiModelProperty("物料分类编码")
@Excel(name = "物料分类编码")
@TableField(typeHandler = ListTypeHandler.class)
private List<String> materialClassifyCode;
@ApiModelProperty("物料分类名称")
@Excel(name = "物料分类名称")
@TableField(typeHandler = ListTypeHandler.class)
private List<String> materialClassifyName;
@ApiModelProperty("物料种类编码 数据字典")
@Excel(name = "物料种类编码 数据字典")
private String materialType;
@ApiModelProperty("物料种类名称 数据字典")
@Excel(name = "物料种类名称 数据字典")
private String materialTypeName;
@ApiModelProperty("包装规格id")
@Excel(name = "包装规格id")
private Long packId;
@ApiModelProperty("包装规格编码")
@Excel(name = "包装规格编码")
private String packCode;
@ApiModelProperty("包装规格名称")
@Excel(name = "包装规格名称")
private String packName;
@ApiModelProperty("包装单位编码")
@Excel(name = "包装单位编码")
private String unitCode;
@ApiModelProperty("包装单位名称")
@Excel(name = "包装单位名称")
private String unitName;
@ApiModelProperty("品牌id")
@Excel(name = "品牌id")
private Long brandId;
@ApiModelProperty("品牌编码")
@Excel(name = "品牌编码")
private String brandCode;
@ApiModelProperty("品牌名称")
@Excel(name = "品牌名称")
private String brandName;
@ApiModelProperty("保质期 单位:天")
@Excel(name = "保质期 单位:天")
private Long shelfLife;
@ApiModelProperty("净重 单位:千克")
@Excel(name = "净重 单位:千克")
private BigDecimal weightLimit;
@ApiModelProperty("体积 单位:立方米")
@Excel(name = "体积 单位:立方米")
private BigDecimal volumeLimit;
@ApiModelProperty("商品形态编码 数据字典")
@Excel(name = "商品形态编码 数据字典")
private String materialShape;
@ApiModelProperty("商品形态名称 数据字典")
@Excel(name = "商品形态名称 数据字典")
private String materialShapeName;
@ApiModelProperty("物料大小 长*宽*高 单位:米")
@Excel(name = "物料大小 长*宽*高 单位:米")
private String materialSize;
@ApiModelProperty("物料大小-长 单位:米")
@Excel(name = "物料大小-长 单位:米")
private BigDecimal materialLength;
@ApiModelProperty("物料大小-宽 单位:米")
@Excel(name = "物料大小-宽 单位:米")
private BigDecimal materialWidth;
@ApiModelProperty("物料大小-高 单位:米")
@Excel(name = "物料大小-高 单位:米")
private BigDecimal materialHeight;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
@ApiModelProperty("商品规则")
private MaterialGoodsRuleFeign materialGoodsRule;
@ApiModelProperty("公共信息")
private MaterialCommonFeign materialCommon;
@ApiModelProperty("仓库控制信息")
private MaterialWarehouseControlFeign materialWarehouseControl;
@ApiModelProperty("库存预警信息")
private List<MaterialInventoryWarningFeign> materialInventoryWarningList;
@ApiModelProperty("条码信息")
private List<MaterialBarCodeFeign> materialBarCodeList;
@ApiModelProperty("feign 是否是修改: 1-是 2-否")
private Integer updateFeign;
@ApiModelProperty("是否公用: 1-是 2-否")
@Excel(name = "是否公用: 1-是 2-否")
private Integer common;
}
@@ -0,0 +1,104 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* 物料公共信息对象 material_common
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialCommonFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialCommonId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("是否温控: 1-否 2-是")
@Excel(name = "是否温控: 1-否 2-是")
private Integer temperatureControl;
@ApiModelProperty("最低温度")
@Excel(name = "最低温度")
private BigDecimal minTemperature;
@ApiModelProperty("最高温度")
@Excel(name = "最高温度")
private BigDecimal maxTemperature;
@ApiModelProperty("商品温层编码")
@Excel(name = "商品温层编码")
private String warmLayer;
@ApiModelProperty("商品温层名称")
@Excel(name = "商品温层名称")
private String warmLayerName;
@ApiModelProperty("闪点")
@Excel(name = "闪点")
private String flashPoint;
@ApiModelProperty("燃点")
@Excel(name = "燃点")
private String ignitionPoint;
@ApiModelProperty("是否危险品: 1-否 2-是")
@Excel(name = "是否危险品: 1-否 2-是")
private Integer dangerGoods;
@ApiModelProperty("危险品等级编码")
@Excel(name = "危险品等级编码")
private String dangerLevel;
@ApiModelProperty("危险品等级名称")
@Excel(name = "危险品等级名称")
private String dangerLevelName;
@ApiModelProperty("生产日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date productionTime;
@ApiModelProperty("失效日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date expirationTime;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,134 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.List;
/**
* @author ZhouGY
* @title MaterialGoodsRulePO
* @description: TODO
* @date 2024/7/21 15:59
**/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialGoodsRuleFeign extends BaseVOEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialGoodsRuleId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("批次id")
@Excel(name = "批次id")
private Long batchId;
@ApiModelProperty("批次编码")
@Excel(name = "批次编码")
private String batchCode;
@ApiModelProperty("批次名称")
@Excel(name = "批次名称")
private String batchName;
@ApiModelProperty("上架库区id")
@Excel(name = "上架库区id")
private Long storageSectionId;
@ApiModelProperty("上架库区编码")
@Excel(name = "上架库区编码")
private String storageCode;
@ApiModelProperty("上架库区名称")
@Excel(name = "上架库区名称")
private String storageName;
@ApiModelProperty("上架库位id")
@Excel(name = "上架库位id")
private Long storageLocationId;
@ApiModelProperty("上架库位编码")
@Excel(name = "上架库位编码")
private String storageLocationCode;
@ApiModelProperty("上架库位名称")
@Excel(name = "上架库位名称")
private String storageLocationName;
@ApiModelProperty("上架规则id")
@Excel(name = "上架规则id")
private Long ruleId;
@ApiModelProperty("上架规则编码")
@Excel(name = "上架规则编码")
private String ruleCode;
@ApiModelProperty("上架规则名称")
@Excel(name = "上架规则名称")
private String ruleName;
@ApiModelProperty("上架库位指定规则id")
@Excel(name = "上架库位指定规则id")
private Long specifyRuleId;
@ApiModelProperty("上架库位指定规则编码")
@Excel(name = "上架库位指定规则编码")
private String specifyRuleCode;
@ApiModelProperty("上架库位指定规则名称")
@Excel(name = "上架库位指定规则名称")
private String specifyRuleName;
@ApiModelProperty("周转规则id")
@Excel(name = "周转规则id")
private Long turnoverRuleId;
@ApiModelProperty("周转规则编码")
@Excel(name = "周转规则编码")
private String turnoverRuleCode;
@ApiModelProperty("周转规则名称")
@Excel(name = "周转规则名称")
private String turnoverRuleName;
@ApiModelProperty("分配规则id")
@Excel(name = "分配规则id")
private Long distributeRuleId;
@ApiModelProperty("分配规则编码")
@Excel(name = "分配规则编码")
private String distributeRuleCode;
@ApiModelProperty("分配规则名称")
@Excel(name = "分配规则名称")
private String distributeRuleName;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,120 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.List;
/**
* 物料库存预警对象 material_inventory_warning
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialInventoryWarningFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialInventoryWarningId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("仓库id")
@Excel(name = "仓库id")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("库区id")
@Excel(name = "库区id")
private Long storageSectionId;
@ApiModelProperty("库区编码")
@Excel(name = "库区编码")
private String storageCode;
@ApiModelProperty("库区名称")
@Excel(name = "库区名称")
private String storageName;
@ApiModelProperty("库位id")
@Excel(name = "库位id")
private Long storageLocationId;
@ApiModelProperty("库位编码")
@Excel(name = "库位编码")
private String storageLocationCode;
@ApiModelProperty("库位名称")
@Excel(name = "库位名称")
private String storageLocationName;
@ApiModelProperty("库位下限")
@Excel(name = "库位下限")
private BigDecimal minTemperature;
@ApiModelProperty("库位上限")
@Excel(name = "库位上限")
private BigDecimal maxTemperature;
@ApiModelProperty("包装id")
@Excel(name = "包装id")
private Long packId;
@ApiModelProperty("包装编码")
@Excel(name = "包装编码")
private String packCode;
@ApiModelProperty("包装名称")
@Excel(name = "包装名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("名称")
@Excel(name = "名称")
private String name;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,100 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.List;
/**
* 仓库控制信息对象 material_warehouse_control
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialWarehouseControlFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialWarehouseControlId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("是否效期控制: 1-否 2-是")
@Excel(name = "是否效期控制: 1-否 2-是")
private Integer temperatureControl;
@ApiModelProperty("周期类型: 1-生产日期 2-失效日期")
@Excel(name = "周期类型: 1-生产日期 2-失效日期")
private Integer cycleType;
@ApiModelProperty("入库效期 单位:天")
@Excel(name = "入库效期 单位:天")
private Integer inValidityPeriod;
@ApiModelProperty("入库效期 单位:天")
@Excel(name = "入库效期 单位:天")
private Integer outValidityPeriod;
@ApiModelProperty("是否允许超收: 1-否 2-是")
@Excel(name = "是否允许超收: 1-否 2-是")
private Integer allowOvercharge;
@ApiModelProperty("超收比例")
@Excel(name = "超收比例")
private BigDecimal overchargeRatio;
@ApiModelProperty("ABC分类:A-A类 B-B类 C-C类")
@Excel(name = "ABC分类:A-A类 B-B类 C-C类")
private String classify;
@ApiModelProperty("是否序列号管理: 1-否 2-是")
@Excel(name = "是否序列号管理: 1-否 2-是")
private Integer serialNumberManage;
@ApiModelProperty("是否质检管理: 1-否 2-是")
@Excel(name = "是否质检管理: 1-否 2-是")
private Integer qualityInspectionManage;
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
private Integer qualityInspectionStage;
@ApiModelProperty("质检规则: 1-全检 2-抽检 ")
@Excel(name = "质检规则: 1-全检 2-抽检 ")
private Integer qualityInspectionRule;
@ApiModelProperty("质检项: 1-包装 2-纯度")
@Excel(name = "质检项: 1-包装 2-纯度")
private Integer qualityInspectionTerm;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,147 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* 物料明细对象 notice_material_detail
*
* @author gen
* @date 2024-06-17
*/
@Data
public class NoticeMaterialDetailDO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("订单物料明细id")
private Long noticeMaterialDetailId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("业务唯一id")
@Excel(name = "业务唯一id")
@JsonSerialize(using = ToStringSerializer.class)
private Long uniqueId;
@ApiModelProperty("通知单号")
@Excel(name = "通知单号")
private String noticeNumber;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("物料编码")
@Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("物料名称")
@Excel(name = "物料名称")
private String materialName;
@ApiModelProperty("物料条形码")
@Excel(name = "物料条形码")
private String barCode;
@ApiModelProperty("计划数量")
@Excel(name = "计划数量")
private BigDecimal quantity;
@ApiModelProperty("包装规格id")
@Excel(name = "包装规格id")
private Long packId;
@ApiModelProperty("包装规格编码")
@Excel(name = "包装规格编码")
private String packCode;
@ApiModelProperty("包装规格名称")
@Excel(name = "包装规格名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("单位名称")
@Excel(name = "单位名称")
private String unitName;
@ApiModelProperty("单位数量")
@Excel(name = "单位数量")
private BigDecimal unitNumber;
@ApiModelProperty("物料仓库控制信息id")
@Excel(name = "物料仓库控制信息id")
private Long materialWarehouseControlId;
@ApiModelProperty("是否序列号管理: 1-是 2-否")
@Excel(name = "是否序列号管理: 1-是 2-否")
private Integer serialNumberManage;
@ApiModelProperty("是否质检管理: 1-是 2-否")
@Excel(name = "是否质检管理: 1-是 2-否")
private Integer qualityInspectionManage;
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
private Integer qualityInspectionStage;
@ApiModelProperty("质检规则: 1-目检 2-抽检")
@Excel(name = "质检规则: 1-目检 2-抽检")
private Integer qualityInspectionRule;
@ApiModelProperty("抽检比例")
@Excel(name = "抽检比例")
private BigDecimal qualityInspectionRatio;
@ApiModelProperty("质检项: 1-包装 2-纯度")
@Excel(name = "质检项: 1-包装 2-纯度")
private Integer qualityInspectionTerm;
@ApiModelProperty("质检结果: 1-正常 2-异常")
@Excel(name = "质检结果: 1-正常 2-异常")
private Integer qualityInspectionResults;
@ApiModelProperty("是否允许超收: 1-是 2-否")
@Excel(name = "是否允许超收: 1-是 2-否")
private Integer allowOvercharge;
@ApiModelProperty("超收比例")
@Excel(name = "超收比例")
private BigDecimal overchargeRatio;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,146 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* 物料明细对象 notice_material_detail
*
* @author gen
* @date 2024-06-17
*/
@Data
public class NoticeMaterialDetailDTO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("订单物料明细id")
private Long noticeMaterialDetailId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("业务唯一id")
@Excel(name = "业务唯一id")
@JsonSerialize(using = ToStringSerializer.class)
private Long uniqueId;
@ApiModelProperty("通知单号")
@Excel(name = "通知单号")
private String noticeNumber;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("物料编码")
@Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("物料名称")
@Excel(name = "物料名称")
private String materialName;
@ApiModelProperty("物料条形码")
@Excel(name = "物料条形码")
private String barCode;
@ApiModelProperty("计划数量")
@Excel(name = "计划数量")
private BigDecimal quantity;
@ApiModelProperty("包装规格id")
@Excel(name = "包装规格id")
private Long packId;
@ApiModelProperty("包装规格编码")
@Excel(name = "包装规格编码")
private String packCode;
@ApiModelProperty("包装规格名称")
@Excel(name = "包装规格名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("单位名称")
@Excel(name = "单位名称")
private String unitName;
@ApiModelProperty("单位数量")
@Excel(name = "单位数量")
private BigDecimal unitNumber;
@ApiModelProperty("物料仓库控制信息id")
@Excel(name = "物料仓库控制信息id")
private Long materialWarehouseControlId;
@ApiModelProperty("是否序列号管理: 1-是 2-否")
@Excel(name = "是否序列号管理: 1-是 2-否")
private Integer serialNumberManage;
@ApiModelProperty("是否质检管理: 1-是 2-否")
@Excel(name = "是否质检管理: 1-是 2-否")
private Integer qualityInspectionManage;
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
private Integer qualityInspectionStage;
@ApiModelProperty("质检规则: 1-目检 2-抽检")
@Excel(name = "质检规则: 1-目检 2-抽检")
private Integer qualityInspectionRule;
@ApiModelProperty("抽检比例")
@Excel(name = "抽检比例")
private BigDecimal qualityInspectionRatio;
@ApiModelProperty("质检项: 1-包装 2-纯度")
@Excel(name = "质检项: 1-包装 2-纯度")
private Integer qualityInspectionTerm;
@ApiModelProperty("质检结果: 1-正常 2-异常")
@Excel(name = "质检结果: 1-正常 2-异常")
private Integer qualityInspectionResults;
@ApiModelProperty("是否允许超收: 1-是 2-否")
@Excel(name = "是否允许超收: 1-是 2-否")
private Integer allowOvercharge;
@ApiModelProperty("超收比例")
@Excel(name = "超收比例")
private BigDecimal overchargeRatio;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,130 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
/**
* 入库通知单对象 stock_receipt_notice
*
* @author gen
* @date 2024-05-21
*/
@Data
public class NoticeOrderDTO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("通知单id")
private Long noticeId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("客户订单号")
@Excel(name = "客户订单号")
private String customerOrderNumber;
@ApiModelProperty("类型: 1-入库通知单 2-出库通知单")
@Excel(name = "类型: 1-入库通知单 2-出库通知单")
private Integer type;
@ApiModelProperty("状态: 1-未生成 2-已生成")
@Excel(name = "状态: 1-未生成 2-已生成")
private Integer status;
@ApiModelProperty("通知单号")
@Excel(name = "通知单号")
private String noticeNumber;
@ApiModelProperty("订单号")
@Excel(name = "订单号")
private String orderNumber;
@ApiModelProperty("仓库id")
@Excel(name = "仓库id")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("货主id")
@Excel(name = "货主id")
private Long shipperId;
@ApiModelProperty("货主名称")
@Excel(name = "货主名称")
private String shipperName;
@ApiModelProperty("入库单类型编码")
@Excel(name = "入库单类型编码")
private String orderTypeCode;
@ApiModelProperty("入库单类型名称")
@Excel(name = "入库单类型名称")
private String orderTypeName;
@ApiModelProperty("供应商id")
@Excel(name = "供应商id")
private Long supplierId;
@ApiModelProperty("供应商名称")
@Excel(name = "供应商名称")
private String supplierName;
@ApiModelProperty("客户Id")
@Excel(name = "客户Id")
private Long customerId;
@ApiModelProperty("客户名称")
@Excel(name = "客户名称")
private String customerName;
@ApiModelProperty("预计入/出货时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "预计入/出货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date expectTime;
@ApiModelProperty("供应链订单号")
@Excel(name = "供应链订单号")
private String supplyChainNumber;
@ApiModelProperty("是否作废: 1-是 2-否")
@Excel(name = "是否作废: 1-是 2-否")
private Integer nullify;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
@ApiModelProperty("物料明细")
List<NoticeMaterialDetailDTO> materialDetailList;
}
@@ -0,0 +1,105 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import lombok.Data;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import com.mhd.common.core.web.domain.BaseVOEntity;
/**
* 包装管理详情对象 pack_detail
*
* @author gen
* @date 2024-05-07
*/
@Data
@ApiModel(value = "包装管理详情对象", description = "包装管理详情响应对象")
public class PackDetailFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("包装详情id")
private Long packDetailId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("包装id")
@Excel(name = "包装id")
private Long packId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("名称")
@Excel(name = "名称")
private String name;
@ApiModelProperty("数量")
@Excel(name = "数量")
private BigDecimal number;
@ApiModelProperty("包装材料")
@Excel(name = "包装材料")
private String packMaterial;
@ApiModelProperty("包装大小 长*宽*高 单位:米")
@Excel(name = "包装大小 长*宽*高 单位:米")
private String packSize;
@ApiModelProperty("包装大小-长 单位:米")
@Excel(name = "包装大小-长 单位:米")
private BigDecimal length;
@ApiModelProperty("包装大小-宽 单位:米")
@Excel(name = "包装大小-宽 单位:米")
private BigDecimal width;
@ApiModelProperty("包装大小-高 单位:米")
@Excel(name = "包装大小-高 单位:米")
private BigDecimal height;
@ApiModelProperty("体积 单位:立方米")
@Excel(name = "体积 单位:立方米")
private BigDecimal volume;
@ApiModelProperty("净重 单位:千克")
@Excel(name = "净重 单位:千克")
private BigDecimal weight;
@ApiModelProperty("TI")
@Excel(name = "TI")
private Long ti;
@ApiModelProperty("HI")
@Excel(name = "HI")
private Long hi;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("包装编码")
@Excel(name = "包装编码")
private String packCode;
@ApiModelProperty("包装名称")
@Excel(name = "包装名称")
private String packName;
}
@@ -0,0 +1,87 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 月台管理对象 platform
*
* @author gen
* @date 2024-05-07
*/
@Data
@ApiModel(value = "月台管理对象", description = "月台管理响应对象")
public class PlatformFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("月台id")
private Long platformId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("月台编码")
@Excel(name = "月台编码")
private String platformCode;
@ApiModelProperty("月台名称")
@Excel(name = "月台名称")
private String platformName;
@ApiModelProperty("仓库id 多个逗号隔开")
@Excel(name = "仓库id 多个逗号隔开")
private String warehouseIdList;
@ApiModelProperty("仓库名称 多个逗号隔开")
@Excel(name = "仓库名称 多个逗号隔开")
private String warehouseNameList;
@ApiModelProperty("月台组id")
@Excel(name = "月台组id")
private Long platformGroupId;
@ApiModelProperty("月台组编码")
@Excel(name = "月台组编码")
private String platformGroupCode;
@ApiModelProperty("月台组名称 ")
@Excel(name = "月台组名称 ")
private String platformGroupName;
@ApiModelProperty("月台属性:1-收货 2-发货 3-混合")
@Excel(name = "月台属性:1-收货 2-发货 3-混合")
private Integer platformAttribute;
@ApiModelProperty("使用状态: 1-空闲 2-占用")
@Excel(name = "使用状态: 1-空闲 2-占用")
private Integer usageStatus;
@ApiModelProperty("启用状态: 1-启用 2-停用")
@Excel(name = "启用状态: 1-启用 2-停用")
private Integer openingUp;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
}
@@ -0,0 +1,59 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 月台使用时间管理对象 platform_use_time
*
* @author gen
* @date 2024-05-13
*/
@Data
@ApiModel(value = "月台使用时间管理对象", description = "月台使用时间管理响应对象")
public class PlatformUseTimeFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("月台id")
private Long platformUseTimeId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("月台id")
@Excel(name = "月台id")
private Long platformId;
@ApiModelProperty("开始时间")
@Excel(name = "开始时间", width = 30, dateFormat = "HH:mm")
private String startTime;
@ApiModelProperty("结束时间")
@Excel(name = "结束时间", width = 30, dateFormat = "HH:mm")
private String endTime;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
}
@@ -0,0 +1,79 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
/**
* <p>
* 用户表 - 新增员工
* </p>
*
* @Author scott
* @since 2018-12-20
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class PlatformUserDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "组织表ID")
private Long organizationId;
@ApiModelProperty(name = "数字平台用户id")
private Long szwlUserId;
@ApiModelProperty(name = "角色id集合")
private List<String> roleIds;
@ApiModelProperty(name = "角色code集合")
private List<String> roleCodes;
@ApiModelProperty(name = "角色名称集合")
private List<String> roleNames;
@ApiModelProperty(name = "部门id集合")
private List<String> departIds;
@ApiModelProperty(name = "部门名称集合")
private List<String> departNames;
@ApiModelProperty(name = "头像")
private String avatar;
@ApiModelProperty(name = "登录账号")
private String username;
@ApiModelProperty(name = "电话")
private String phone;
@ApiModelProperty(name = "真实姓名")
private String realname;
@ApiModelProperty(value = "关联公司id")
private String relatedCompany;
@ApiModelProperty(value = "关联公司名称")
private String relatedCompanyName;
@ApiModelProperty(value = "机构编码")
private String orgCode;
@ApiModelProperty("账号类型 1.普通账号,2.组织账号,3.一级账号,4.平台员工,5.企业员工,6.合作商")
private Integer userAccountType;
@ApiModelProperty(value = "推广码")
private String promoCode;
@ApiModelProperty(name = "业务类型:0.无状态,1.托运业务,2.承运业务,3.托运、承运业务,4.无业务,5.不确定业务默认为托运业务")
private Integer businessType;
@ApiModelProperty("创建人ID")
private Long createBy;
}
@@ -0,0 +1,29 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 二级科目
*/
@Data
public class SecondSubjectPO implements Serializable {
@ApiModelProperty("二级科目code")
private String secondSubject;
@ApiModelProperty("二级科目名称")
private String secondSubjectName;
@ApiModelProperty("金额")
private BigDecimal amount;
@ApiModelProperty("付款方式:1-现金,2-油卡,3-公司加油,4-定点加油,5-油卡借款,6-现金借款")
private String payType;
@ApiModelProperty("收款人姓名")
private String payName;
}
@@ -0,0 +1,169 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 库位对象 storage_location
*
* @author gen
* @date 2024-04-03
*/
@Data
@ApiModel(value = "库位对象", description = "库位响应对象")
public class StorageLocationFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("库位id")
private Long storageLocationId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("仓库id")
@Excel(name = "仓库id")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("库区id")
@Excel(name = "库区id")
private Long storageSectionId;
@ApiModelProperty("库区编码")
@Excel(name = "库区编码")
private String storageCode;
@ApiModelProperty("库区名称")
@Excel(name = "库区名称")
private String storageName;
@ApiModelProperty("库位编码")
@Excel(name = "库位编码")
private String storageLocationCode;
@ApiModelProperty("库位名称")
@Excel(name = "库位名称")
private String storageLocationName;
@ApiModelProperty("库区分类编码 数据字典")
@Excel(name = "库区分类编码 数据字典")
private String storageLocationClassify;
@ApiModelProperty("库区分类名称 数据字典")
@Excel(name = "库区分类名称 数据字典")
private String storageLocationClassifyName;
@ApiModelProperty("库区种类编码 数据字典")
@Excel(name = "库区种类编码 数据字典")
private String storageLocationType;
@ApiModelProperty("库区种类名称 数据字典")
@Excel(name = "库区种类名称 数据字典")
private String storageLocationTypeName;
@ApiModelProperty("混放策略编码 数据字典")
@Excel(name = "混放策略编码 数据字典")
private String mixingStrategy;
@ApiModelProperty("混放策略名称 数据字典")
@Excel(name = "混放策略名称 数据字典")
private String mixingStrategyName;
@ApiModelProperty("库位组id")
@Excel(name = "库位组id")
private Long storageLocationGroupId;
@ApiModelProperty("库位组编码")
@Excel(name = "库位组编码")
private String storageLocationGroupCode;
@ApiModelProperty("库位组名称 数据字典")
@Excel(name = "库位组名称 数据字典")
private String storageLocationGroupName;
@ApiModelProperty("重量限制 单位:千克")
@Excel(name = "重量限制 单位:千克")
private BigDecimal weightLimit;
@ApiModelProperty("体积限制 单位:立方米")
@Excel(name = "体积限制 单位:立方米")
private BigDecimal volumeLimit;
@ApiModelProperty("库位大小 长*宽*高 单位:米")
@Excel(name = "库位大小 长*宽*高 单位:米")
private String locationSize;
@ApiModelProperty("库位大小-长 单位:米")
@Excel(name = "库位大小-长 单位:米")
private BigDecimal locationLength;
@ApiModelProperty("库位大小-宽 单位:米")
@Excel(name = "库位大小-宽 单位:米")
private BigDecimal locationWidth;
@ApiModelProperty("库位大小-高 单位:米")
@Excel(name = "库位大小-高 单位:米")
private BigDecimal locationHeight;
@ApiModelProperty("坐标-区-列-排-层")
@Excel(name = "坐标-区-列-排-层")
private String coordinate;
@ApiModelProperty("坐标-区")
@Excel(name = "坐标-区")
private String coordinateArea;
@ApiModelProperty("坐标-列")
@Excel(name = "坐标-列")
private String coordinateColumn;
@ApiModelProperty("坐标-排")
@Excel(name = "坐标-排")
private String coordinateRow;
@ApiModelProperty("坐标-层")
@Excel(name = "坐标-层")
private String coordinateLayer;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("库位状态:1-空 2-半满 3-全满")
@Excel(name = "库位状态:1-空 2-半满 3-全满")
private Integer status;
@ApiModelProperty("启用状态: 1-启用 2-停用")
@Excel(name = "启用状态: 1-启用 2-停用")
private Integer openingUp;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
}
@@ -0,0 +1,85 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 库区对象 storage_section
*
* @author gen
* @date 2024-04-03
*/
@Data
@ApiModel(value = "库区对象", description = "库区响应对象")
public class StorageSectionFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("库区id")
private Long storageSectionId;
@ApiModelProperty("组织表ID")
@Excel(name = "组织表ID")
private Long organizationId;
@ApiModelProperty("组织名称")
@Excel(name = "组织名称")
private String organizationName;
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty("仓库id")
@Excel(name = "仓库id")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("库区编码")
@Excel(name = "库区编码")
private String storageCode;
@ApiModelProperty("库区名称")
@Excel(name = "库区名称")
private String storageName;
@ApiModelProperty("库区类型编码 数据字典")
@Excel(name = "库区类型编码 数据字典")
private String storageType;
@ApiModelProperty("库区类型名称 数据字典")
@Excel(name = "库区类型名称 数据字典")
private String storageTypeName;
@ApiModelProperty("库区面积 单位:平方米")
@Excel(name = "库区面积 单位:平方米")
private BigDecimal storageRegion;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("启用状态: 1-启用 2-停用")
@Excel(name = "启用状态: 1-启用 2-停用")
private Integer openingUp;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
}
@@ -0,0 +1,203 @@
package com.mhd.system.api.domain;
import java.util.ArrayList;
import java.util.List;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 部门表 sys_dept
*
* @author mhd
*/
public class SysDept extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 部门ID */
private Long deptId;
/** 父部门ID */
private Long parentId;
/** 祖级列表 */
private String ancestors;
/** 部门名称 */
private String deptName;
/** 显示顺序 */
private Integer orderNum;
/** 负责人 */
private String leader;
/** 联系电话 */
private String phone;
/** 邮箱 */
private String email;
/** 部门状态:0正常,1停用 */
private String status;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
/** 父部门名称 */
private String parentName;
/** 子部门 */
private List<SysDept> children = new ArrayList<SysDept>();
public Long getDeptId()
{
return deptId;
}
public void setDeptId(Long deptId)
{
this.deptId = deptId;
}
public Long getParentId()
{
return parentId;
}
public void setParentId(Long parentId)
{
this.parentId = parentId;
}
public String getAncestors()
{
return ancestors;
}
public void setAncestors(String ancestors)
{
this.ancestors = ancestors;
}
@NotBlank(message = "部门名称不能为空")
@Size(min = 0, max = 30, message = "部门名称长度不能超过30个字符")
public String getDeptName()
{
return deptName;
}
public void setDeptName(String deptName)
{
this.deptName = deptName;
}
@NotNull(message = "显示顺序不能为空")
public Integer getOrderNum()
{
return orderNum;
}
public void setOrderNum(Integer orderNum)
{
this.orderNum = orderNum;
}
public String getLeader()
{
return leader;
}
public void setLeader(String leader)
{
this.leader = leader;
}
@Size(min = 0, max = 11, message = "联系电话长度不能超过11个字符")
public String getPhone()
{
return phone;
}
public void setPhone(String phone)
{
this.phone = phone;
}
@Email(message = "邮箱格式不正确")
@Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
public String getEmail()
{
return email;
}
public void setEmail(String email)
{
this.email = email;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getParentName()
{
return parentName;
}
public void setParentName(String parentName)
{
this.parentName = parentName;
}
public List<SysDept> getChildren()
{
return children;
}
public void setChildren(List<SysDept> children)
{
this.children = children;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("deptId", getDeptId())
.append("parentId", getParentId())
.append("ancestors", getAncestors())
.append("deptName", getDeptName())
.append("orderNum", getOrderNum())
.append("leader", getLeader())
.append("phone", getPhone())
.append("email", getEmail())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.toString();
}
}
@@ -0,0 +1,217 @@
package com.mhd.system.api.domain;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.constant.UserConstants;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 字典数据表 sys_dict_data
*
* @author mhd
*/
public class SysDictData extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 字典编码 */
@Excel(name = "字典编码", cellType = ColumnType.NUMERIC)
private Long dictCode;
/** 字典排序 */
@Excel(name = "字典排序", cellType = ColumnType.NUMERIC)
private Long dictSort;
/** 字典标签 */
@Excel(name = "字典标签")
private String dictLabel;
/** 字典键值 */
@Excel(name = "字典键值")
private String dictValue;
/** 字典类型 */
@Excel(name = "字典类型")
private String dictType;
/** 样式属性(其他样式扩展) */
private String cssClass;
/** 表格字典样式 */
private String listClass;
/** 是否默认(Y是 N否) */
@Excel(name = "是否默认", readConverterExp = "Y=是,N=否")
private String isDefault;
/** 状态(0正常 1停用) */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 组织表ID */
private Long organizationId;
/** 组织名称 */
private String organizationName;
/** 一级组织表ID */
private Long topOrganizationId;
public Long getOrganizationId()
{
return organizationId;
}
public void setOrganizationId(Long organizationId)
{
this.organizationId = organizationId;
}
public Long getTopOrganizationId()
{
return topOrganizationId;
}
public void setTopOrganizationId(Long topOrganizationId)
{
this.topOrganizationId = topOrganizationId;
}
public String getOrganizationName ()
{
return organizationName;
}
public void setOrganizationName(String organizationName)
{
this.organizationName = organizationName;
}
public Long getDictCode()
{
return dictCode;
}
public void setDictCode(Long dictCode)
{
this.dictCode = dictCode;
}
public Long getDictSort()
{
return dictSort;
}
public void setDictSort(Long dictSort)
{
this.dictSort = dictSort;
}
@NotBlank(message = "字典标签不能为空")
@Size(min = 0, max = 255, message = "字典标签长度不能超过255个字符")
public String getDictLabel()
{
return dictLabel;
}
public void setDictLabel(String dictLabel)
{
this.dictLabel = dictLabel;
}
@NotBlank(message = "字典键值不能为空")
@Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
public String getDictValue()
{
return dictValue;
}
public void setDictValue(String dictValue)
{
this.dictValue = dictValue;
}
@NotBlank(message = "字典类型不能为空")
@Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
public String getDictType()
{
return dictType;
}
public void setDictType(String dictType)
{
this.dictType = dictType;
}
@Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
public String getCssClass()
{
return cssClass;
}
public void setCssClass(String cssClass)
{
this.cssClass = cssClass;
}
public String getListClass()
{
return listClass;
}
public void setListClass(String listClass)
{
this.listClass = listClass;
}
public boolean getDefault()
{
return UserConstants.YES.equals(this.isDefault) ? true : false;
}
public String getIsDefault()
{
return isDefault;
}
public void setIsDefault(String isDefault)
{
this.isDefault = isDefault;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("dictCode", getDictCode())
.append("dictSort", getDictSort())
.append("dictLabel", getDictLabel())
.append("dictValue", getDictValue())
.append("dictType", getDictType())
.append("cssClass", getCssClass())
.append("listClass", getListClass())
.append("isDefault", getIsDefault())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}
@@ -0,0 +1,96 @@
package com.mhd.system.api.domain;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 字典类型表 sys_dict_type
*
* @author mhd
*/
public class SysDictType extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 字典主键 */
@Excel(name = "字典主键", cellType = ColumnType.NUMERIC)
private Long dictId;
/** 字典名称 */
@Excel(name = "字典名称")
private String dictName;
/** 字典类型 */
@Excel(name = "字典类型")
private String dictType;
/** 状态(0正常 1停用) */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
public Long getDictId()
{
return dictId;
}
public void setDictId(Long dictId)
{
this.dictId = dictId;
}
@NotBlank(message = "字典名称不能为空")
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
public String getDictName()
{
return dictName;
}
public void setDictName(String dictName)
{
this.dictName = dictName;
}
@NotBlank(message = "字典类型不能为空")
@Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符")
@Pattern(regexp = "^[a-zA-Z][a-zA-Z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)")
public String getDictType()
{
return dictType;
}
public void setDictType(String dictType)
{
this.dictType = dictType;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("dictId", getDictId())
.append("dictName", getDictName())
.append("dictType", getDictType())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}
@@ -0,0 +1,50 @@
package com.mhd.system.api.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* 文件信息
*
* @author mhd
*/
public class SysFile
{
/**
* 文件名称
*/
private String name;
/**
* 文件地址
*/
private String url;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getUrl()
{
return url;
}
public void setUrl(String url)
{
this.url = url;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("name", getName())
.append("url", getUrl())
.toString();
}
}
@@ -0,0 +1,29 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 登录表单
*
* @Author scott
* @since 2019-01-18
*/
@Data
@ApiModel(value="登录对象", description="登录对象")
public class SysLoginModel {
@ApiModelProperty(value = "账号")
private String username;
@ApiModelProperty(value = "手机号")
private String userPhone;
@ApiModelProperty(value = "密码")
private String password;
@ApiModelProperty(value = "验证码")
private String captcha;
@ApiModelProperty(value = "验证码key")
private String checkKey;
@ApiModelProperty(value = "是否加密:0-否,1-base64")
private Integer isPassword = 0;
}
@@ -0,0 +1,112 @@
package com.mhd.system.api.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 系统访问记录表 sys_logininfor
*
* @author mhd
*/
@Data
public class SysLogininfor {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(type = IdType.AUTO)
private Long infoId;
/**
* 用户账号
*/
@Excel(name = "用户账号")
private String userAccount;
/**
* 用户姓名
*/
@Excel(name = "用户姓名")
private String userName;
/**
* 状态 0成功 1失败
*/
@Excel(name = "状态", readConverterExp = "0=成功,1=失败")
private String status;
/**
* ip地址
*/
@Excel(name = "ip地址")
private String ipaddr;
/**
* 地区
*/
@Excel(name = "地区")
private String location;
/** 登录终端 */
@Excel(name = "登录终端")
private String terminal;
/**
* 终端标识
*/
@Excel(name = "终端标识")
private String terminalLogo;
/**
* 行为类型
*/
@Excel(name = "行为类型(1-登录、2-注册、3-注销)")
private Integer behaviorType;
/**
* 组织ID
*/
@Excel(name = "组织ID")
private Long organizationId;
/**
* 组织名称
*/
@Excel(name = "组织名称")
private String organizationName;
/**
* 一级组组织ID
*/
@Excel(name = "一级组组织ID")
private Long topOrganizationId;
/**
* 描述
*/
@Excel(name = "描述")
private String msg;
/**
* 访问时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date accessTime;
/**
* 端口
*/
private String port;
/**
* 响应时间ms
*/
private String responseTime;
}
@@ -0,0 +1,87 @@
package com.mhd.system.api.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 系统访问记录表 sys_logininfor
*
* @author mhd
*/
@Data
public class SysLogininforPo
{
private static final long serialVersionUID = 1L;
/** ID */
@Excel(name = "序号", cellType = ColumnType.NUMERIC)
private Long infoId;
/** 用户账号 */
@Excel(name = "用户账号")
private String userAccount;
/** 用户姓名 */
@Excel(name = "用户姓名")
private String userName;
/** 状态 0成功 1失败 */
@Excel(name = "状态", readConverterExp = "0=成功,1=失败")
private String status;
/** ip地址 */
@Excel(name = "ip地址")
private String ipaddr;
/** 地区 */
@Excel(name = "地区")
private String location;
/** 登录终端 */
@Excel(name = "登录终端")
private String terminal;
/** 终端标识 */
@Excel(name = "终端标识")
private String terminalLogo;
/** 行为类型 */
@Excel(name = "行为类型(1-登录、2-注册、3-注销)")
private Integer behaviorType;
/** 组织ID */
@Excel(name = "组织ID")
private Long organizationId;
/** 组织名称 */
@Excel(name = "组织名称")
private String organizationName;
/** 一级组组织ID */
@Excel(name = "一级组组织ID")
private Long topOrganizationId;
/** 描述 */
@Excel(name = "描述")
private String msg;
/** 访问时间 */
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date accessTime;
/**
* 端口
*/
private String port;
/**
* 响应时间ms
*/
private String responseTime;
}
@@ -0,0 +1,179 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
/**
* 操作日志记录表 oper_log
*
* @author mhd
*/
@Data
public class SysOperLog {
private static final long serialVersionUID = 1L;
/**
* 日志主键
*/
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
private Long operId;
/**
* 操作模块
*/
@Excel(name = "操作模块")
private String title;
/**
* 业务类型(0其它 1新增 2修改 3删除)
*/
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
private Integer businessType;
/**
* 业务类型数组
*/
private Integer[] businessTypes;
/**
* 请求方法
*/
@Excel(name = "请求方法")
private String method;
/**
* 模块描述
*/
@Excel(name = "模块描述")
private String description;
/**
* 请求方式
*/
@Excel(name = "请求方式")
private String requestMethod;
/**
* 操作类别(0其它 1后台用户 2手机端用户)
*/
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType;
/**
* 操作人员
*/
@Excel(name = "操作人员")
private String operName;
/**
* 部门名称
*/
@Excel(name = "部门名称")
private String deptName;
/**
* 请求url
*/
@Excel(name = "请求地址")
private String operUrl;
/**
* 操作地址
*/
@Excel(name = "操作地址")
private String operIp;
/**
* 操作地点
*/
@Excel(name = "操作地点")
private String operLocation;
/**
* 请求参数
*/
@Excel(name = "请求参数")
private String operParam;
/**
* 返回参数
*/
@Excel(name = "返回参数")
private String jsonResult;
/**
* 操作状态(0正常 1异常)
*/
@Excel(name = "状态", readConverterExp = "0=正常,1=异常")
private Integer status;
/**
* 错误消息
*/
@Excel(name = "错误消息")
private String errorMsg;
/**
* 日志类型(1-登录日志,2-操作日志)
*/
private Integer logType;
/**
* 用户id
*/
private Long userId;
/**
* 用户名称
*/
private String userName;
/**
* 用户账号
*/
private String userAccount;
/**
* 组织表ID
*/
private Long organizationId;
/**
* 组织名称
*/
private String organizationName;
/**
* 一级组组织ID
*/
private Long topOrganizationId;
/**
* 操作时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date operTime;
/**
* 操作终端
*/
@Excel(name = "操作终端")
private String terminal;
/**
* 终端标识
*/
@Excel(name = "终端标识")
private String terminalLogo;
/**
* 端口
*/
private String port;
}
@@ -0,0 +1,124 @@
package com.mhd.system.api.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
import lombok.Data;
/**
* 操作日志记录表 oper_log
*
* @author mhd
*/
@Data
public class SysOperLogPo
{
private static final long serialVersionUID = 1L;
/** 日志主键 */
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
private Long operId;
/** 操作模块 */
@Excel(name = "操作模块")
private String title;
/** 业务类型(0其它 1新增 2修改 3删除) */
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
private Integer businessType;
/** 请求方法 */
@Excel(name = "请求方法")
private String method;
/** 模块描述 */
@Excel(name = "模块描述")
private String description;
/** 请求方式 */
@Excel(name = "请求方式")
private String requestMethod;
/** 操作类别(0其它 1后台用户 2手机端用户) */
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType;
/** 操作人员 */
@Excel(name = "操作人员")
private String operName;
/** 部门名称 */
@Excel(name = "部门名称")
private String deptName;
/** 请求url */
@Excel(name = "请求地址")
private String operUrl;
/** 操作地址 */
@Excel(name = "操作地址")
private String operIp;
/** 操作地点 */
@Excel(name = "操作地点")
private String operLocation;
/** 请求参数 */
@Excel(name = "请求参数")
private String operParam;
/** 返回参数 */
@Excel(name = "返回参数")
private String jsonResult;
/** 操作状态(0正常 1异常) */
@Excel(name = "状态", readConverterExp = "0=正常,1=异常")
private Integer status;
/** 错误消息 */
@Excel(name = "错误消息")
private String errorMsg;
/** 日志类型(1-登录日志,2-操作日志) */
private Integer logType;
/** 用户id */
private Long userId;
/** 用户名称 */
private String userName;
/** 用户账号 */
private String userAccount;
/** 组织表ID */
private Long organizationId;
/** 组织名称 */
private String organizationName;
/** 一级组组织ID */
@Excel(name = "一级组组织ID")
private Long topOrganizationId;
/** 操作时间 */
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date operTime;
/** 操作终端 */
@Excel(name = "操作终端")
private String terminal;
/**
* 终端标识
*/
@Excel(name = "终端标识")
private String terminalLogo;
/**
* 端口
*/
private String port;
}
@@ -0,0 +1,241 @@
package com.mhd.system.api.domain;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 角色表 sys_role
*
* @author mhd
*/
@Data
public class SysRole extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 角色ID */
@Excel(name = "角色序号", cellType = ColumnType.NUMERIC)
private Long roleId;
/** 角色名称 */
@Excel(name = "角色名称")
private String roleName;
/** 角色权限 */
@Excel(name = "角色权限")
private String roleKey;
/** 角色排序 */
@Excel(name = "角色排序")
private String roleSort;
/** 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) */
@Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限")
private String dataScope;
/** 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) */
private boolean menuCheckStrictly;
/** 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 ) */
private boolean deptCheckStrictly;
/** 角色状态(0正常 1停用) */
@Excel(name = "角色状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
/** 用户是否存在此角色标识 默认不存在 */
private boolean flag = false;
/** 菜单组 */
private Long[] menuIds;
/** 部门组(数据权限) */
private Long[] deptIds;
/** 角色类型*/
private Integer roleType;
/** 所属公司id */
private Long companyId;
/** 所属公司id */
private String companyName;
public SysRole()
{
}
public SysRole(Long roleId)
{
this.roleId = roleId;
}
public Long getRoleId()
{
return roleId;
}
public void setRoleId(Long roleId)
{
this.roleId = roleId;
}
public boolean isAdmin()
{
return isAdmin(this.roleId);
}
public static boolean isAdmin(Long roleId)
{
return roleId != null && 1L == roleId;
}
@NotBlank(message = "角色名称不能为空")
@Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符")
public String getRoleName()
{
return roleName;
}
public void setRoleName(String roleName)
{
this.roleName = roleName;
}
@NotBlank(message = "权限字符不能为空")
@Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符")
public String getRoleKey()
{
return roleKey;
}
public void setRoleKey(String roleKey)
{
this.roleKey = roleKey;
}
@NotBlank(message = "显示顺序不能为空")
public String getRoleSort()
{
return roleSort;
}
public void setRoleSort(String roleSort)
{
this.roleSort = roleSort;
}
public String getDataScope()
{
return dataScope;
}
public void setDataScope(String dataScope)
{
this.dataScope = dataScope;
}
public boolean isMenuCheckStrictly()
{
return menuCheckStrictly;
}
public void setMenuCheckStrictly(boolean menuCheckStrictly)
{
this.menuCheckStrictly = menuCheckStrictly;
}
public boolean isDeptCheckStrictly()
{
return deptCheckStrictly;
}
public void setDeptCheckStrictly(boolean deptCheckStrictly)
{
this.deptCheckStrictly = deptCheckStrictly;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public boolean isFlag()
{
return flag;
}
public void setFlag(boolean flag)
{
this.flag = flag;
}
public Long[] getMenuIds()
{
return menuIds;
}
public void setMenuIds(Long[] menuIds)
{
this.menuIds = menuIds;
}
public Long[] getDeptIds()
{
return deptIds;
}
public void setDeptIds(Long[] deptIds)
{
this.deptIds = deptIds;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("roleName", getRoleName())
.append("roleKey", getRoleKey())
.append("roleSort", getRoleSort())
.append("dataScope", getDataScope())
.append("menuCheckStrictly", isMenuCheckStrictly())
.append("deptCheckStrictly", isDeptCheckStrictly())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.append("roleType", getRoleType())
.append("companyId", getCompanyId())
.append("companyName", getCompanyName())
.toString();
}
}
@@ -0,0 +1,359 @@
package com.mhd.system.api.domain;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.*;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.annotation.Excel.Type;
import com.mhd.common.core.annotation.Excels;
import com.mhd.common.core.web.domain.BaseEntity;
import com.mhd.common.core.xss.Xss;
/**
* 用户对象 sys_user
*
* @author mhd
*/
@Data
public class SysUser extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 用户ID */
@Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号")
private Long userId;
/** 部门ID */
@Excel(name = "部门编号", type = Type.IMPORT)
private Long deptId;
/** 用户账号 */
@Excel(name = "登录名称")
private String userName;
/** 用户昵称 */
@Excel(name = "用户名称")
@Xss(message = "用户昵称不能包含脚本字符")
@Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
private String nickName;
/** 用户邮箱 */
@Excel(name = "用户邮箱")
private String email;
/** 手机号码 */
@Excel(name = "手机号码")
private String phonenumber;
/** 用户性别 */
@Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
private String sex;
/** 用户头像 */
private String avatar;
/** 密码 */
private String password;
/** 帐号状态(0正常 1停用) */
@Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
/** 最后登录IP */
@Excel(name = "最后登录IP", type = Type.EXPORT)
private String loginIp;
/** 最后登录时间 */
@Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
private Date loginDate;
/** 部门对象 */
@Excels({
@Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
@Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
})
private SysDept dept;
/** 角色对象 */
private List<SysRole> roles;
/** 角色组 */
private Long[] roleIds;
/** 岗位组 */
private Long[] postIds;
/** 角色ID */
private Long roleId;
/** 公司ID */
private Long companyId;
/** 公司名称 */
private String companyName;
// private String orgCode;
//
// public String getOrgCode(){ return orgCode; }
//
// public void setOrgCode(String orgCode) { this.orgCode = orgCode; }
public SysUser()
{
}
public Long getCompanyId() {
return companyId;
}
public void setCompanyId(Long companyId) {
this.companyId = companyId;
}
public SysUser(Long userId)
{
this.userId = userId;
}
public Long getUserId()
{
return userId;
}
public void setUserId(Long userId)
{
this.userId = userId;
}
public boolean isAdmin()
{
return isAdmin(this.userId);
}
public static boolean isAdmin(Long userId)
{
return userId != null && 1L == userId;
}
public Long getDeptId()
{
return deptId;
}
public void setDeptId(Long deptId)
{
this.deptId = deptId;
}
@Xss(message = "用户昵称不能包含脚本字符")
@Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
public String getNickName()
{
return nickName;
}
public void setNickName(String nickName)
{
this.nickName = nickName;
}
@Xss(message = "用户账号不能包含脚本字符")
@NotBlank(message = "用户账号不能为空")
@Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符")
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
@Email(message = "邮箱格式不正确")
@Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
public String getEmail()
{
return email;
}
public void setEmail(String email)
{
this.email = email;
}
@Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符")
public String getPhonenumber()
{
return phonenumber;
}
public void setPhonenumber(String phonenumber)
{
this.phonenumber = phonenumber;
}
public String getSex()
{
return sex;
}
public void setSex(String sex)
{
this.sex = sex;
}
public String getAvatar()
{
return avatar;
}
public void setAvatar(String avatar)
{
this.avatar = avatar;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getLoginIp()
{
return loginIp;
}
public void setLoginIp(String loginIp)
{
this.loginIp = loginIp;
}
public Date getLoginDate()
{
return loginDate;
}
public void setLoginDate(Date loginDate)
{
this.loginDate = loginDate;
}
public SysDept getDept()
{
return dept;
}
public void setDept(SysDept dept)
{
this.dept = dept;
}
public List<SysRole> getRoles()
{
return roles;
}
public void setRoles(List<SysRole> roles)
{
this.roles = roles;
}
public Long[] getRoleIds()
{
return roleIds;
}
public void setRoleIds(Long[] roleIds)
{
this.roleIds = roleIds;
}
public Long[] getPostIds()
{
return postIds;
}
public void setPostIds(Long[] postIds)
{
this.postIds = postIds;
}
public Long getRoleId()
{
return roleId;
}
public void setRoleId(Long roleId)
{
this.roleId = roleId;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("userId", getUserId())
.append("deptId", getDeptId())
.append("userName", getUserName())
.append("nickName", getNickName())
.append("email", getEmail())
.append("phonenumber", getPhonenumber())
.append("sex", getSex())
.append("avatar", getAvatar())
.append("password", getPassword())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("loginIp", getLoginIp())
.append("loginDate", getLoginDate())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.append("dept", getDept())
.append("companyId", getCompanyId())
.append("companyName", getCompanyName())
.toString();
}
}
@@ -0,0 +1,74 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 代收款人合同表
* @Author: Alex
* @Date: 2022-05-24 14:54:12
* @Version: V1.0
*/
@Data
public class TmsCollectionAgentWlhyDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "合同编号")
private String contractNo;
@ApiModelProperty(value = "甲方-托运商")
private String partyA;
@ApiModelProperty(value = "乙方-承运商")
private String partyB;
@ApiModelProperty(value = "丙方-代收款人")
private String partyC;
@ApiModelProperty(value = "收款账户名称")
private String accountNo;
@ApiModelProperty(value = "收款卡号")
private String bankCard;
@ApiModelProperty(value = "开户行")
private String bankName;
@ApiModelProperty(value = "合同签署日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date signingDate;
@ApiModelProperty(value = "甲方-托运商联系人")
private String contactsA;
@ApiModelProperty(value = "乙方-托运商联系人")
private String contactsB;
@ApiModelProperty(value = "丙方-托运商联系人")
private String contactsC;
@ApiModelProperty(value = "甲方-托运商联系方式")
private String phoneA;
@ApiModelProperty(value = "乙方-托运商联系方式")
private String phoneB;
@ApiModelProperty(value = "丙方-托运商联系方式")
private String phoneC;
@ApiModelProperty(value = "甲方-托运商身份证号")
private String idNumA;
@ApiModelProperty(value = "乙方-托运商身份证号")
private String idNumB;
@ApiModelProperty(value = "丙方-托运商身份证号")
private String idNumC;
@ApiModelProperty(value = "甲方-accountId")
private String accountIdA;
@ApiModelProperty(value = "乙方-accountId")
private String accountIdB;
@ApiModelProperty(value = "丙方-accountId")
private String accountIdC;
@ApiModelProperty(value = "甲方-签章")
private String templateA;
@ApiModelProperty(value = "乙方-签章")
private String templateB;
@ApiModelProperty(value = "丙方-签章")
private String templateC;
@ApiModelProperty(value = "平台印章id")
private String esignSealId;
}
@@ -0,0 +1,191 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 司机表 -新增
* @Author: Alex
* @Date: 2020-02-11 16:53:48
* @Version: V1.0
*/
@Data
public class TmsDriverAddOrUpdateDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "组织表ID")
private Long organizationId;
@ApiModelProperty(name = "组织表ID")
private String organizationName;
@ApiModelProperty(name = "数字平台用户id")
private Long szwlUserId;
@ApiModelProperty(value = "用户类型(0-司机,1-车队)")
private Integer type;
@ApiModelProperty(value = "姓名")
private String driverName;
@ApiModelProperty(value = "电话")
private String phone;
@ApiModelProperty(value = "头像")
private String avatar;
@ApiModelProperty(value = "身份证号")
private String identificationNumber;
@ApiModelProperty(value = "身份证正面图片地址")
private String identificationFrontImgUrl;
@ApiModelProperty(value = "身份证反面图片地址")
private String identificationBackImgUrl;
@ApiModelProperty(value = "驾驶证图片地址")
private String driverLicenseImgUrl;
@ApiModelProperty(value = "准驾车型id")
private String allowDrivingTypeId;
@ApiModelProperty(value = "准驾车型")
private String allowDrivingType;
@ApiModelProperty(value = "(驾驶证)档案ID")
private String driverLicenseFileId;
@ApiModelProperty(value = "领证日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date dateOfCertification;
@ApiModelProperty(value = "驾驶证过期日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date driverLicenseExpDate;
@ApiModelProperty(value = "发证机关")
private String certificationAuthority;
@ApiModelProperty(value = "从业资格证图片地址")
private String workCertificateImgUrl;
@ApiModelProperty(value = "从业资格证号")
private String workCertificateNumber;
@ApiModelProperty(value = "从业资格证过期日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date workCertificateExpDate;
@ApiModelProperty(value = "营业执照图片地址")
private String businessLicenseImgUrl;
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
@ApiModelProperty(value = "证件类型")
private String legalPersonIdType;
@ApiModelProperty(value = "法人证件类型名称")
private String legalPersonIdName;
@ApiModelProperty(value = "身份证有效期限")
private String idCardIndate;
@ApiModelProperty(value = "驾驶证副页")
private String driverLicenseFrontImgUrl;
@ApiModelProperty(value = "住址")
private String ocrAddress;
@ApiModelProperty(value = "道路运输经营许可证号")
private String roadTransportBusinessLicenseNo;
@ApiModelProperty(value = "车队名称")
private String motorcadeName;
@ApiModelProperty(value = "道路运输证号")
private String roadTransportNum;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "注册地址")
private String registeredAddress;
@ApiModelProperty(value = "身份证有效开始日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date idCardStartDate;
@ApiModelProperty(value = "身份证是否永久有效(0-否,1-是)")
private Integer isIdCardPermanentlyValid;
@ApiModelProperty(value = "身份证有效期结束日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date idCardEndDate;
@ApiModelProperty(value = "驾驶证有效期开始日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date driverLicenseStartDate;
@ApiModelProperty(value = "从业资格证发证省份")
private String workCertificateAuthority;
@ApiModelProperty(value = "个人审核状态(0-未提交,1-待审核,2-审核通过,3-审核不通过)")
private Integer auditStatus;
@ApiModelProperty(value = "审核备注")
private String auditRemark;
@ApiModelProperty(value = "审核时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date auditTime;
@ApiModelProperty(value = "审核人ID")
private String auditorId;
@ApiModelProperty(value = "审核人姓名")
private String auditorName;
@ApiModelProperty(value = "是否允许竞价(0-不允许竞价,1-允许参与竞价,2-允许查看竞价)")
private Integer isDriverBidding;
@ApiModelProperty(value = "推广码")
private String promoCode;
@ApiModelProperty(value = "数字物流车队ID")
private Long szwlMotorcadeId;
@ApiModelProperty(name = "承运人类型:1-车队长,2-运输企业 3-车队")
private Integer carrierType;
/** 车队长id */
@ApiModelProperty("车队长id")
private Long enterpriseUserId;
@ApiModelProperty(name = "是否默认(1-是,2-否)")
private Integer defaultFlag;
@ApiModelProperty(name = "承运商编码")
private String driverEnterpriseCode;
@ApiModelProperty(name = "登录密码")
private String passWord;
@ApiModelProperty(name = "司机用户类型 自有车辆(值为1) 社会车辆(值为2)")
private Integer userDriverType;
}
@@ -0,0 +1,67 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @Description: 司机表 -审核
* @Author: Alex
* @Date: 2020-02-11 16:53:48
* @Version: V1.0
*/
@Data
public class TmsDriverAuditDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "个人审核状态(0-未提交,1-待审核,2-审核通过,3-审核不通过)")
private Integer auditStatus;
/**认证状态(0-未认证,1-司机认证成功,2-人脸认证成功,3-资格证认证成功,4-驾驶证认证成功,5-行驶证认证成功,6-道路运输许可证认证成功)*/
// @ApiModelProperty(value = "认证状态(0-未提交,1-司机认证成功,2-人脸认证成功,3-资格证认证成功,4-驾驶证认证成功,5-行驶证认证成功,6-道路运输许可证认证成功,7-认证完成)")
@ApiModelProperty(value = "认证状态(0-未认证,1-等待审核,2-认证成功,3-认证失败)")
private Integer attestationStatus;
@ApiModelProperty(value = "审核备注")
private String auditRemark="";
@ApiModelProperty(value = "证件审核驳回理由")
private String attestationRemark;
@ApiModelProperty(value = "标记状态id")
private String markerStateId;
@ApiModelProperty(value = "标记状态名称")
private String markerStateName;
/**用户类型(0-司机,1-车队)*/
@ApiModelProperty(value = "用户类型(0-司机,1-车队,2-车队司机,3-企业水路承运人,4-个人水路承运人,6-经纪人)")
private Integer type;
@ApiModelProperty(value = "绑定货主id")
private String shipperId;
@ApiModelProperty(value = "审核人ID")
private String auditorId;
@ApiModelProperty(value = "审核人姓名")
private String auditorName;
@ApiModelProperty(value = "审核时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date auditTime;
@ApiModelProperty(name = "数字平台用户id")
private Long szwlUserId;
@ApiModelProperty(name = "角色id集合")
private List<String> roleIds;
@ApiModelProperty(name = "角色code集合")
private List<String> roleCodes;
@ApiModelProperty(name = "角色名称集合")
private List<String> roleNames;
@ApiModelProperty(name = "司机基本信息,同步使用")
private TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO;
}
@@ -0,0 +1,27 @@
package com.mhd.system.api.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @Description: 司机表 - 绑定
* @Author: Alex
* @Date: 2020-02-11 16:53:48
* @Version: V1.0
*/
@Data
public class TmsDriverBinDingDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**数字物流用户id*/
@ApiModelProperty(value = "数字物流用户id")
private Long szwlUserId;
/**车牌号*/
@ApiModelProperty(value = "车牌号")
private String vehicleLicenseNumber;
}

Some files were not shown because too many files have changed in this diff Show More