Commit ceb3f59f authored by 廖旭伟's avatar 廖旭伟

Merge remote-tracking branch 'origin/master'

parents 041575cf 2bb8fdba
#生产环境 # 生产环境配置
NODE_ENV = "production" NODE_ENV = production
VUE_APP_API_BASE_URL=/basics_api VUE_APP_API_BASE_URL=/basics_api
VUE_APP_API_portal_URL=/portal_home VUE_APP_API_portal_URL=/portal_home
\ No newline at end of file
#测试环境 #宜宾环境
NODE_ENV = "production" NODE_ENV = "production"
VUE_APP_API_BASE_URL=http://192.168.2.144:11078 VUE_APP_API_BASE_URL=/basics_api
\ No newline at end of file VUE_APP_API_portal_URL=/portal_home
\ No newline at end of file
...@@ -25,10 +25,6 @@ ...@@ -25,10 +25,6 @@
</activation> </activation>
<properties> <properties>
<profiles.active>develop</profiles.active> <profiles.active>develop</profiles.active>
<profiles.server.ip>127.0.0.1</profiles.server.ip>
<profiles.server.port>17211</profiles.server.port>
<profiles.nginx.port>11071</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/zwfw</profiles.server.path> <profiles.server.path>/zwfw</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host> <profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host>
...@@ -49,10 +45,6 @@ ...@@ -49,10 +45,6 @@
<id>test</id> <id>test</id>
<properties> <properties>
<profiles.active>test</profiles.active> <profiles.active>test</profiles.active>
<profiles.server.ip>192.168.0.98</profiles.server.ip>
<profiles.server.port>17211</profiles.server.port>
<profiles.nginx.port>11071</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/base</profiles.server.path> <profiles.server.path>/base</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>192.168.0.98</profiles.rabbitmq.host> <profiles.rabbitmq.host>192.168.0.98</profiles.rabbitmq.host>
...@@ -73,10 +65,6 @@ ...@@ -73,10 +65,6 @@
<id>product</id> <id>product</id>
<properties> <properties>
<profiles.active>test</profiles.active> <profiles.active>test</profiles.active>
<profiles.server.ip>192.168.0.251</profiles.server.ip>
<profiles.server.port>17211</profiles.server.port>
<profiles.nginx.port>11071</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/base</profiles.server.path> <profiles.server.path>/base</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>192.168.0.251</profiles.rabbitmq.host> <profiles.rabbitmq.host>192.168.0.251</profiles.rabbitmq.host>
...@@ -98,13 +86,9 @@ ...@@ -98,13 +86,9 @@
<id>yibin</id> <id>yibin</id>
<properties> <properties>
<profiles.active>yibin</profiles.active> <profiles.active>yibin</profiles.active>
<profiles.server.ip>192.168.2.144</profiles.server.ip>
<profiles.server.port>17211</profiles.server.port>
<profiles.nginx.port>11071</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/base</profiles.server.path> <profiles.server.path>/base</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>192.168.2.144</profiles.rabbitmq.host> <profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host>
<profiles.rabbitmq.port>5672</profiles.rabbitmq.port> <profiles.rabbitmq.port>5672</profiles.rabbitmq.port>
<profiles.rabbitmq.username>taxi_mq</profiles.rabbitmq.username> <profiles.rabbitmq.username>taxi_mq</profiles.rabbitmq.username>
<profiles.rabbitmq.password>admin@2020</profiles.rabbitmq.password> <profiles.rabbitmq.password>admin@2020</profiles.rabbitmq.password>
......
...@@ -10,35 +10,19 @@ LOCK_FILE="/tmp/deploy.lock" ...@@ -10,35 +10,19 @@ LOCK_FILE="/tmp/deploy.lock"
# 时间变量 # 时间变量
CDATE=$(date "+%Y-%m-%d") CDATE=$(date "+%Y-%m-%d")
CTIME=$(date "+%H:%M:%S") CTIME=$(date "+%H:%M:%S")
PUBLISH_PATH="@profiles.publish.path@"
PROJECT_NAME="@project.artifactId@"
IP="@profiles.server.ip@"
PORT="@profiles.server.port@"
GATEWAY_PORT="@profiles.server.gatewayport@"
SHELL_LOG="${BASEDIR}/${SHELL_NAME}.log" SHELL_LOG="${BASEDIR}/${SHELL_NAME}.log"
SERVICE_PATH="/usr/lib/systemd/system"
JAVA_HOME="/usr/local/java/jdk1.8" JAVA_HOME="/usr/local/java/jdk1.8"
SERVICE_PATH="/usr/lib/systemd/system"
PUBLISH_PATH="@profiles.publish.path@"
PROJECT_NAME="@project.artifactId@"
NGINX_CONF_PATH="/etc/nginx/conf.d/"
NGINX_PORT="@profiles.nginx.port@"
NGINX_SERVER_PATH="@profiles.server.path@"
PROJECT_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}" PROJECT_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}"
PROJECT_UI_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}-ui/dist" PROJECT_UI_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}-ui/dist"
PROJECT_FILENAME="${PROJECT_NAME}.tar.gz" PROJECT_FILENAME="${PROJECT_NAME}.tar.gz"
PROJECT_UI_FILENAME="${PROJECT_NAME}-ui.tar.gz" PROJECT_UI_FILENAME="${PROJECT_NAME}-ui.tar.gz"
PROJECT_SERVICE="${SERVICE_PATH}/${PROJECT_NAME}.service" PROJECT_SERVICE="${SERVICE_PATH}/${PROJECT_NAME}.service"
PROJECT_NGINX_CONF="${NGINX_CONF_PATH}/${PROJECT_NAME}.conf"
#加锁
shell_lock() {
touch ${LOCK_FILE}
}
#删除锁
shell_unlock() {
rm -f ${LOCK_FILE}
}
#写日志 #写日志
writelog() { writelog() {
LOGINFO=$1 LOGINFO=$1
...@@ -54,9 +38,6 @@ clear_deploy() { ...@@ -54,9 +38,6 @@ clear_deploy() {
rm -rf ${SERVICE} rm -rf ${SERVICE}
#清理执行文件目录 #清理执行文件目录
rm -rf ${EXECPATH} rm -rf ${EXECPATH}
#清理nginx服务配置文件
rm -f ${NGINX_CONF_PATH}/${PROJECT_NAME}.conf
mkdir -p ${EXECPATH}
} }
#清理ui #清理ui
...@@ -86,62 +67,14 @@ build_service() { ...@@ -86,62 +67,14 @@ build_service() {
writelog "${PROJECT_NAME}服务创建完成!" writelog "${PROJECT_NAME}服务创建完成!"
} }
build_nginx() {
echo "server{
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
#gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary off;
gzip_disable \"MSIE [1-6]\.\";
listen ${NGINX_PORT};
#server_name localhost;
location / {
root ${PROJECT_UI_EXECPATH};
index index.html index.htm;
}
location ${NGINX_SERVER_PATH}/ {
proxy_pass http://${IP}:${GATEWAY_PORT};
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
}
location /doc/ {
root ${PROJECT_EXECPATH};
index api.html;
}
location /file/fileupload/ {
alias /mortals/app/data/file/fileupload/;
autoindex on;
autoindex_exact_size off;
}
location /file/uploadfile/ {
alias /mortals/app/data/file/uploadfile/;
autoindex on;
autoindex_exact_size off;
}
location /file/preview/ {
alias /mortals/app/data/file/preview/;
autoindex on;
autoindex_exact_size off;
}
}
" >${PROJECT_NGINX_CONF}
}
#启动服务与nginx #启动服务与nginx
start_service_and_nginx() { start_service() {
writelog "${PROJECT_NAME}服务启动..."
systemctl enable ${PROJECT_NAME} systemctl enable ${PROJECT_NAME}
systemctl daemon-reload systemctl daemon-reload
writelog "${PROJECT_NAME}服务启动..."
systemctl stop ${PROJECT_NAME} && systemctl start ${PROJECT_NAME} systemctl stop ${PROJECT_NAME} && systemctl start ${PROJECT_NAME}
project_status=$(systemctl status "${PROJECT_NAME}"|grep Active |awk '{print $2}') project_status=$(systemctl status "${PROJECT_NAME}"|grep Active |awk '{print $2}')
nginx -t
nginx -s reload
jcpid=$(ps -ef | grep -v "grep" | grep "${PROJECT_NAME} " | awk '{print $2}') jcpid=$(ps -ef | grep -v "grep" | grep "${PROJECT_NAME} " | awk '{print $2}')
writelog "${PROJECT_NAME}服务启动,PID is ${jcpid} ,status:${project_status}" writelog "${PROJECT_NAME}服务启动,PID is ${jcpid} ,status:${project_status}"
} }
...@@ -150,11 +83,9 @@ project_deploy() { ...@@ -150,11 +83,9 @@ project_deploy() {
writelog "${PROJECT_NAME}_deploy" writelog "${PROJECT_NAME}_deploy"
clear_deploy ${PROJECT_SERVICE} ${PROJECT_EXECPATH} clear_deploy ${PROJECT_SERVICE} ${PROJECT_EXECPATH}
writelog "${PROJECT_NAME}_clear_finish" writelog "${PROJECT_NAME}_clear_finish"
tar -zvxf ./${PROJECT_FILENAME} -C ${PUBLISH_PATH} tar -zvxf ./${PROJECT_FILENAME} -C ${PUBLISH_PATH}
build_service ${PROJECT_SERVICE} ${PROJECT_EXECPATH} build_service
build_nginx start_service
start_service_and_nginx
writelog "${PROJECT_NAME}_deploy_finish" writelog "${PROJECT_NAME}_deploy_finish"
} }
......
...@@ -9,7 +9,13 @@ ...@@ -9,7 +9,13 @@
count( 1 ) count( 1 )
FROM FROM
mortals_sys_matter AS a mortals_sys_matter AS a
LEFT JOIN ( SELECT matterCode FROM mortals_sys_site_matter WHERE siteId = #{condition.siteId} ) AS b ON a.matterNo = b.matterCode LEFT JOIN ( SELECT matterCode FROM mortals_sys_site_matter
<trim suffixOverrides="where" suffix="">
<if test="condition.siteId!=null and condition.siteId!=''">
a.siteId = #{condition.siteId,jdbcType=VARCHAR}
</if>
</trim>
)AS b ON a.matterNo = b.matterCode
<trim suffixOverrides="where" suffix=""> <trim suffixOverrides="where" suffix="">
where b.matterCode IS NULL and where b.matterCode IS NULL and
<trim prefixOverrides="and" prefix=""> <trim prefixOverrides="and" prefix="">
...@@ -32,7 +38,13 @@ ...@@ -32,7 +38,13 @@
<include refid="_columns"/> <include refid="_columns"/>
FROM FROM
mortals_sys_matter AS a mortals_sys_matter AS a
LEFT JOIN ( SELECT matterCode FROM mortals_sys_site_matter WHERE siteId = #{condition.siteId} ) AS b ON a.matterNo = b.matterCode LEFT JOIN ( SELECT matterCode FROM mortals_sys_site_matter
<trim suffixOverrides="where" suffix="">
<if test="condition.siteId!=null and condition.siteId!=''">
a.siteId = #{condition.siteId,jdbcType=VARCHAR}
</if>
</trim>
) AS b ON a.matterNo = b.matterCode
<trim suffixOverrides="where" suffix=""> <trim suffixOverrides="where" suffix="">
where b.matterCode IS NULL and where b.matterCode IS NULL and
<trim prefixOverrides="and" prefix=""> <trim prefixOverrides="and" prefix="">
......
VUE_APP_API_BASE_URL=http://192.168.0.98:11072/zwfw VUE_APP_API_BASE_URL=http://192.168.0.98:11072
# 开发环境配置 # 开发环境配置
NODE_ENV = development NODE_ENV = development
VUE_APP_API_BASE_URL=http://192.168.0.98:11078/zwfw VUE_APP_API_BASE_URL=http://192.168.0.98:11078
# 生产环境配置 # 生产环境配置
NODE_ENV = production NODE_ENV = production
VUE_APP_API_BASE_URL=http://192.168.0.98:11078/zwfw VUE_APP_API_BASE_URL=/basics_api
# 生产环境配置 # 生产环境配置
NODE_ENV = test NODE_ENV = test
VUE_APP_API_BASE_URL=http://192.168.0.98:11078/zwfw VUE_APP_API_BASE_URL=/basics_api
#宜宾环境 #宜宾环境
NODE_ENV = "production" NODE_ENV = "production"
VUE_APP_API_BASE_URL=http://192.168.2.144:11078 VUE_APP_API_BASE_URL=/basics_api
\ No newline at end of file \ No newline at end of file
...@@ -9,6 +9,26 @@ ...@@ -9,6 +9,26 @@
<title> <title>
<%= htmlWebpackPlugin.options.title %> <%= htmlWebpackPlugin.options.title %>
</title> </title>
<style>
*,
:after,
:before {
-webkit-box-sizing: border-box !important;
-moz-box-sizing: border-box !important;
-o-box-sizing: border-box !important;
-ms-box-sizing: border-box !important;
box-sizing: border-box !important;
}
html,
body {
font-size: 16px;
font-family: "Arial", "Microsoft YaHei", "黑体", "宋体", "微软雅黑",
sans-serif !important;
width: 100%;
height: 100%;
}
</style>
</head> </head>
<body style="font-size: 16px;"> <body style="font-size: 16px;">
......
<template> <template>
<div id="app"> <div class="app">
<a-spin v-bind="loadingProps"> <a-spin v-bind="loadingProps">
<a-config-provider :locale="zh_CN"> <a-config-provider :locale="zh_CN">
<router-view /> <router-view />
...@@ -49,29 +49,17 @@ export default { ...@@ -49,29 +49,17 @@ export default {
}, },
}; };
</script> </script>
<style lang="less"> <style lang="less" scoped>
*, .app {
:after, width: 100% !important;
:before {
-webkit-box-sizing: border-box !important;
-moz-box-sizing: border-box !important;
-o-box-sizing: border-box !important;
-ms-box-sizing: border-box !important;
box-sizing: border-box !important;
}
html,
body,
#app {
font-size: 16px;
font-family: "Arial", "Microsoft YaHei", "黑体", "宋体", "微软雅黑",
sans-serif !important;
min-width: 1440px !important; min-width: 1440px !important;
height: 100% !important; height: 100%;
// width: 100% !important;
} }
.ant-spin-nested-loading, .ant-spin-nested-loading,
.ant-spin-container { /deep/.ant-spin-container {
height: 100% !important; width: 100%;
min-height: 100% !important;
display: flex;
// flex-direction: column;
} }
</style> </style>
import http from '../request/http' import http from "../request/http";
// 1.9.1. 查询API服务列表 // 1.9.1. 查询API服务列表
export function serviceApiList(params) { export function serviceApiList(params) {
return http.post("system/service/api/list", params) return http.post("/zwfw/system/service/api/list", params);
} }
// 1.9.2. 查看API服务 // 1.9.2. 查看API服务
export function serviceApiInfo(params) { export function serviceApiInfo(params) {
return http.get("system/service/api/info", params) return http.get("/zwfw/system/service/api/info", params);
} }
// 1.9.3. 保存更新API服务 // 1.9.3. 保存更新API服务
export function serviceApiSave(params) { export function serviceApiSave(params) {
return http.post("system/service/api/save", params) return http.post("/zwfw/system/service/api/save", params);
} }
// 1.9.4. 删除API服务 // 1.9.4. 删除API服务
export function serviceApiDelete(params) { export function serviceApiDelete(params) {
return http.get("system/service/api/delete", params) return http.get("/zwfw/system/service/api/delete", params);
} }
// const BASE_URL = process.env.VUE_APP_API_BASE_URL // const BASE_URL = process.env.VUE_APP_API_BASE_URL
module.exports = { module.exports = {
fileCommonupload: `/file/commonupload`, //1.2.4. 上传附件 fileCommonupload: `/zwfw/file/commonupload`, //1.2.4. 上传附件
} };
import http from '../request/http' import http from "../request/http";
// 1.10.1. 查询应用服务列表 // 1.10.1. 查询应用服务列表
export function serviceList(params) { export function serviceList(params) {
return http.post("system/service/list", params) return http.post("/zwfwsystem/service/list", params);
} }
// 1.10.2. 查看应用服务 // 1.10.2. 查看应用服务
export function serviceInfo(params) { export function serviceInfo(params) {
return http.get("system/service/info", params) return http.get("/zwfwsystem/service/info", params);
} }
// 1.10.3. 保存更新应用服务 // 1.10.3. 保存更新应用服务
export function serviceSave(params) { export function serviceSave(params) {
return http.post("system/service/save", params) return http.post("/zwfwsystem/service/save", params);
} }
// 1.10.4. 删除应用服务 // 1.10.4. 删除应用服务
export function serviceDelete(params) { export function serviceDelete(params) {
return http.get("system/service/delete", params) return http.get("/zwfwsystem/service/delete", params);
} }
import http from '../request/http' import http from "../request/http";
// 1.14.1. 查询区域列表 // 1.14.1. 查询区域列表
export function areaList(params) { export function areaList(params) {
return http.post("area/list", params) return http.post("/zwfw/area/list", params);
} }
// 1.14.2. 查看区域 // 1.14.2. 查看区域
export function areaInfo(params) { export function areaInfo(params) {
return http.get("area/info", params) return http.get("/zwfw/area/info", params);
} }
// 1.14.3. 查看区域子信息 // 1.14.3. 查看区域子信息
export function getListByParentId(params) { export function getListByParentId(params) {
return http.get("area/getListByParentId", params) return http.get("/zwfw/area/getListByParentId", params);
} }
// 1.14.4. 获取所有区域信息 // 1.14.4. 获取所有区域信息
export function areaTreeselect(params) { export function areaTreeselect(params) {
return http.post("area/treeselect", params) return http.post("/zwfw/area/treeselect", params);
} }
import http from '../request/http' import http from "../request/http";
// 1.4.1. 查询角色信息列表 // 1.4.1. 查询角色信息列表
export function roleList(params) { export function roleList(params) {
return http.post("role/list", params) return http.post("/zwfw/role/list", params);
} }
// 1.4.2. 查看角色信息 // 1.4.2. 查看角色信息
export function roleInfo(params) { export function roleInfo(params) {
return http.get("role/info", params) return http.get("/zwfw/role/info", params);
} }
// 1.4.3. 保存更新角色信息 // 1.4.3. 保存更新角色信息
export function roleSave(params) { export function roleSave(params) {
return http.post("role/save", params) return http.post("/zwfw/role/save", params);
} }
// 1.4.4. 删除角色信息 // 1.4.4. 删除角色信息
export function roleDelete(params) { export function roleDelete(params) {
return http.get("role/delete", params) return http.get("/zwfw/role/delete", params);
} }
// 1.6.1. 分配菜单到角色 // 1.6.1. 分配菜单到角色
export function assignMenuToRole(params) { export function assignMenuToRole(params) {
return http.post("role/auth/assignMenuToRole", params) return http.post("/zwfw/role/auth/assignMenuToRole", params);
} }
import http from '../request/http' import http from "../request/http";
// 1.15.1. 获取站点下的数据管理列表 // 1.15.1. 获取站点下的数据管理列表
export function censusListInterface(params) { export function censusListInterface(params) {
return http.post("site/model/census/list", params) return http.post("/zwfw/site/model/census/list", params);
} }
import http from '../request/http' import http from "../request/http";
// 1.7.1. 查询菜单信息业务列表 // 1.7.1. 查询菜单信息业务列表
export function menuList(params) { export function menuList(params) {
return http.post("menu/list", params) return http.post("/zwfw/menu/list", params);
} }
// 1.7.2. 查看菜单信息业务 // 1.7.2. 查看菜单信息业务
export function menuInfo(params) { export function menuInfo(params) {
return http.get("menu/info", params) return http.get("/zwfw/menu/info", params);
} }
// 1.7.3. 保存更新菜单信息业务 // 1.7.3. 保存更新菜单信息业务
export function menuSave(params) { export function menuSave(params) {
return http.post("menu/save", params) return http.post("/zwfw/menu/save", params);
} }
// 1.7.4. 删除菜单信息业务 // 1.7.4. 删除菜单信息业务
export function menuDelete(params) { export function menuDelete(params) {
return http.get("menu/delete", params) return http.get("/zwfw/menu/delete", params);
} }
// 1.7.5. 查询所有可用菜单 // 1.7.5. 查询所有可用菜单
export function menuFindAll(params) { export function menuFindAll(params) {
return http.post("menu/findAll", params) return http.post("/zwfw/menu/findAll", params);
} }
// 1.3.8 查询菜单权限列表 // 1.3.8 查询菜单权限列表
export function menuFindAllTree(params) { export function menuFindAllTree(params) {
return http.post("menu/list/tree", params) return http.post("/zwfw/menu/list/tree", params);
} }
import http from '../request/http' import http from "../request/http";
// 1.16.1. 查询站点编排列表 // 1.16.1. 查询站点编排列表
export function appsListInterface(params) { export function appsListInterface(params) {
return http.post("site/model/list", params) return http.post("/zwfw/site/model/list", params);
} }
...@@ -2,21 +2,21 @@ import http from "../request/http"; ...@@ -2,21 +2,21 @@ import http from "../request/http";
// 1.2.1. 登录 // 1.2.1. 登录
export function LoginInterface(params) { export function LoginInterface(params) {
return http.post("login/login", params); return http.post("/zwfw/login/login", params);
} }
// 1.2.2. 首页 // 1.2.2. 首页
export function loginIndex(params) { export function loginIndex(params) {
return http.post("login/index", params); return http.post("/zwfw/login/index", params);
} }
// 1.2.3. 登出 // 1.2.3. 登出
export function LogoutInterface(params) { export function LogoutInterface(params) {
return http.post("login/logout", params); return http.post("/zwfw/login/logout", params);
} }
// 1.2.4. 用户修改密码 // 1.2.4. 用户修改密码
export function changePassword(params) { export function changePassword(params) {
return http.post("user/change/password", params); return http.post("/zwfw/user/change/password", params);
} }
// 管理员修改密码 // 管理员修改密码
export function editPassword(params) { export function editPassword(params) {
return http.post("user/reset/password", params); return http.post("/zwfw/user/reset/password", params);
} }
import http from '../request/http' import http from "../request/http";
// 1.3.1. 查询用户信息业务列表 // 1.3.1. 查询用户信息业务列表
export function userList(params) { export function userList(params) {
return http.post("user/list", params) return http.post("/zwfw/user/list", params);
} }
// 1.3.2. 查看用户信息业务 // 1.3.2. 查看用户信息业务
export function userInfo(params) { export function userInfo(params) {
return http.get("user/info", params) return http.get("/zwfw/user/info", params);
} }
// 1.3.3. 保存更新用户信息业务 // 1.3.3. 保存更新用户信息业务
export function userSave(params) { export function userSave(params) {
return http.post("user/save", params) return http.post("/zwfw/user/save", params);
} }
// 1.3.4. 删除用户信息业务 // 1.3.4. 删除用户信息业务
export function userDelete(params) { export function userDelete(params) {
return http.get("user/delete", params) return http.get("/zwfw/user/delete", params);
} }
// 1.3.5. 用户站点授权 // 1.3.5. 用户站点授权
export function userSiteAuth(params) { export function userSiteAuth(params) {
return http.post("user/siteAuth", params) return http.post("/zwfw/user/siteAuth", params);
} }
...@@ -165,12 +165,12 @@ export default { ...@@ -165,12 +165,12 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
:deep(.ant-upload-select-picture-card) i { /deep/.ant-upload-select-picture-card i {
font-size: 32px; font-size: 32px;
color: #999; color: #999;
} }
:deep(.ant-upload-select-picture-card) .ant-upload-text { /deep/.ant-upload-select-picture-card .ant-upload-text {
margin-top: 8px; margin-top: 8px;
color: #666; color: #666;
} }
......
import Vue from "vue"; import Vue from "vue";
import router from "@/router" import router from "@/router";
import axios from 'axios' import axios from "axios";
import { message } from 'ant-design-vue'; import { message } from "ant-design-vue";
import Storage from "@/utils/js/Storage" import Storage from "@/utils/js/Storage";
const service = axios.create({ const service = axios.create({
baseURL: process.env.VUE_APP_API_BASE_URL, baseURL: process.env.VUE_APP_API_BASE_URL,
// timeout: 10000 // timeout: 10000
}) });
service.interceptors.request.use(config => { service.interceptors.request.use(
Vue.prototype.$setLoading({ (config) => {
spinning: true, Vue.prototype.$setLoading({
tip: "请稍等", spinning: true,
}); tip: "请稍等",
config.data = JSON.stringify(config.data); });
config.headers = { config.data = JSON.stringify(config.data);
'Content-Type': 'application/json;charset=utf-8' config.headers = {
} "Content-Type": "application/json;charset=utf-8",
const Authorization = JSON.parse(localStorage.getItem('Authorization')); };
if (Authorization) { const Authorization = JSON.parse(localStorage.getItem("Authorization"));
config.headers.Authorization = Authorization; if (Authorization) {
} config.headers.Authorization = Authorization;
return config
}, error => {
Promise.reject(error)
})
service.interceptors.response.use(response => {
Vue.prototype.$setLoading(false);
if (response.data.code !== undefined && response.data.msg !== undefined) {
let { code, msg } = response.data
if (code === -1) {
message.error({
content: msg,
maxCount: 1,
})
} else if (code === 401) {
message.error({
message: msg,
maxCount: 1,
})
Storage.remove(2, "userInfo")
Storage.remove(2, "siteId")
Storage.remove(2, "Authorization")
router.push('/')
} }
return config;
},
(error) => {
Promise.reject(error);
} }
return response.data );
}, error => { service.interceptors.response.use(
if (error && error.response) { (response) => {
switch (error.response.status) { Vue.prototype.$setLoading(false);
case 400: if (response.data.code !== undefined && response.data.msg !== undefined) {
error.message = '错误请求' let { code, msg } = response.data;
break; if (code === -1) {
case 401: message.error({
error.message = '未授权,请重新登录' content: msg,
break; maxCount: 1,
case 403: });
error.message = '拒绝访问' } else if (code === 401) {
break; message.error({
case 404: message: msg,
error.message = '请求错误,未找到该资源' maxCount: 1,
break; });
case 405: Storage.clear(2);
error.message = '请求方法未允许' // Storage.remove(2, "siteId");
break; // Storage.remove(2, "Authorization");
case 408: router.push("/");
error.message = '请求超时' }
break;
case 500:
error.message = '服务器端出错'
break;
case 501:
error.message = '网络未实现'
break;
case 502:
error.message = '网络错误'
break;
case 503:
error.message = '服务不可用'
break;
case 504:
error.message = '网络超时'
break;
case 505:
error.message = 'http版本不支持该请求'
break;
default:
error.message = `连接错误${error.response.status}`
} }
} else { return response.data;
if (JSON.stringify(error).includes('timeout')) { },
(error) => {
Vue.prototype.$message.error('服务器响应超时,请刷新当前页'); if (error && error.response) {
switch (error.response.status) {
case 400:
error.message = "错误请求";
break;
case 403:
error.message = "拒绝访问";
break;
case 404:
error.message = "请求错误,未找到该资源";
break;
case 405:
error.message = "请求方法未允许";
break;
case 408:
error.message = "请求超时";
break;
case 500:
error.message = "服务器端出错";
break;
case 501:
error.message = "网络未实现";
break;
case 502:
error.message = "网络错误";
break;
case 503:
error.message = "服务不可用";
break;
case 504:
error.message = "网络超时";
break;
case 505:
error.message = "http版本不支持该请求";
break;
default:
error.message = `连接错误${error.response.status}`;
}
message.error(error.message);
} else {
if (JSON.stringify(error).includes("timeout")) {
Vue.prototype.$message.error("服务器响应超时,请刷新当前页");
}
error.message = "连接服务器失败";
} }
error.message = '连接服务器失败'
}
Vue.prototype.$setLoading(false);
message.error(error.message);
Vue.prototype.$setLoading(false);
return Promise.resolve(error.response) return Promise.resolve(error.response);
}) }
export default service );
export default service;
// Routes // Routes
const routes = [ const routes = [
{ {
path: '/home', path: "/home",
name: 'home', name: "home",
redirect: '/home/dataManagement', redirect: "/home/dataManagement",
component: () => import(/* webpackChunkName: "home" */'@/views/home/home.vue'), component: () =>
meta: { title: "首页" }, import(/* webpackChunkName: "home" */ "@/views/home/home.vue"),
meta: { title: "首页" },
children: [
{
path: "dataManagement",
name: "dataManagement",
redirect: "/home/dataManagement/dataAdmin",
component: () =>
import(
/* webpackChunkName: "dataManagement" */ "@/components/viewport/viewport.vue"
),
meta: { title: "数据管理" },
children: [ children: [
{ {
path: 'dataManagement', path: "dataAdmin",
name: 'dataManagement', name: "dataAdmin",
redirect: '/home/dataManagement/dataAdmin', component: () =>
component: () => import(/* webpackChunkName: "dataManagement" */'@/components/viewport/viewport.vue'), import(
meta: { title: "数据管理" }, /* webpackChunkName: "dataAdmin" */ "@/views/dataAdmin/dataAdmin.vue"
children: [ ),
{ meta: { title: "数据管理" },
path: 'dataAdmin', },
name: 'dataAdmin', {
component: () => import(/* webpackChunkName: "dataAdmin" */'@/views/dataAdmin/dataAdmin.vue'), path: "serviceDataAnalyse",
meta: { title: "数据管理" }, name: "serviceDataAnalyse",
}, redirect:
{ "/home/dataManagement/serviceDataAnalyse/makeTrendResearch",
path: 'serviceDataAnalyse', component: () =>
name: 'serviceDataAnalyse', import(
redirect: '/home/dataManagement/serviceDataAnalyse/makeTrendResearch', /* webpackChunkName: "serviceDataAnalyse" */ "@/views/dataAdmin/components/serviceDataAnalyse/module.vue"
component: () => import(/* webpackChunkName: "serviceDataAnalyse" */'@/views/dataAdmin/components/serviceDataAnalyse/module.vue'), ),
meta: { title: "服务类数据分析" }, meta: { title: "服务类数据分析" },
children: [ children: [
{ {
path: 'makeTrendResearch', path: "makeTrendResearch",
name: 'makeTrendResearch', name: "makeTrendResearch",
component: () => import(/* webpackChunkName: "makeTrendResearch" */'@/views/dataAdmin/components/serviceDataAnalyse/makeTrendResearch.vue'), component: () =>
meta: { title: "预约系统数据分析" }, import(
/* webpackChunkName: "makeTrendResearch" */ "@/views/dataAdmin/components/serviceDataAnalyse/makeTrendResearch.vue"
}, ),
{ meta: { title: "预约系统数据分析" },
path: 'heatRanking', },
name: 'heatRanking', {
component: () => import(/* webpackChunkName: "heatRanking" */'@/views/dataAdmin/components/serviceDataAnalyse/heatRanking.vue'), path: "heatRanking",
meta: { title: "预约热度排名" }, name: "heatRanking",
component: () =>
}, import(
/* webpackChunkName: "heatRanking" */ "@/views/dataAdmin/components/serviceDataAnalyse/heatRanking.vue"
),
] meta: { title: "预约热度排名" },
},
}, ],
{ },
path: 'pickUp', {
name: 'pickUp', path: "pickUp",
redirect: '/home/dataManagement/pickUp/pickUpRecord', name: "pickUp",
component: () => import(/* webpackChunkName: "queueCall" */'@/views/dataAdmin/components/pickUp/module.vue'), redirect: "/home/dataManagement/pickUp/pickUpRecord",
meta: { title: "取件记录报表" }, component: () =>
children: [ import(
{ /* webpackChunkName: "queueCall" */ "@/views/dataAdmin/components/pickUp/module.vue"
path: 'pickUpRecord', ),
name: 'pickUpRecord', meta: { title: "取件记录报表" },
component: () => import(/* webpackChunkName: "queueRecord" */'@/views/dataAdmin/components/pickUp/pickUpRecord.vue'), children: [
meta: { title: "取件记录报表" }, {
path: "pickUpRecord",
name: "pickUpRecord",
}, component: () =>
{ import(
path: 'depositRecord', /* webpackChunkName: "queueRecord" */ "@/views/dataAdmin/components/pickUp/pickUpRecord.vue"
name: 'depositRecord', ),
component: () => import(/* webpackChunkName: "depositRecord" */'@/views/dataAdmin/components/pickUp/depositRecord.vue'), meta: { title: "取件记录报表" },
meta: { title: "存件记录报表" }, },
{
path: "depositRecord",
}, name: "depositRecord",
{ component: () =>
path: 'otherRecord', import(
name: 'otherRecord', /* webpackChunkName: "depositRecord" */ "@/views/dataAdmin/components/pickUp/depositRecord.vue"
component: () => import(/* webpackChunkName: "otherRecord" */'@/views/dataAdmin/components/pickUp/otherRecord.vue'), ),
meta: { title: "其他记录报表" }, meta: { title: "存件记录报表" },
},
{
}, path: "otherRecord",
name: "otherRecord",
] component: () =>
import(
}, /* webpackChunkName: "otherRecord" */ "@/views/dataAdmin/components/pickUp/otherRecord.vue"
{ ),
path: 'SMS', meta: { title: "其他记录报表" },
name: 'SMS', },
redirect: '/home/dataManagement/SMS/SMSRecord', ],
component: () => import(/* webpackChunkName: "SMS" */'@/views/dataAdmin/components/SMS/module.vue'), },
meta: { title: "短信记录报表" }, {
children: [ path: "SMS",
{ name: "SMS",
path: 'SMSRecord', redirect: "/home/dataManagement/SMS/SMSRecord",
name: 'SMSRecord', component: () =>
component: () => import(/* webpackChunkName: "SMSRecord" */'@/views/dataAdmin/components/SMS/SMSRecord.vue'), import(
meta: { title: "短信记录报表" }, /* webpackChunkName: "SMS" */ "@/views/dataAdmin/components/SMS/module.vue"
),
meta: { title: "短信记录报表" },
}, children: [
{
path: "SMSRecord",
] name: "SMSRecord",
component: () =>
}, import(
{ /* webpackChunkName: "SMSRecord" */ "@/views/dataAdmin/components/SMS/SMSRecord.vue"
path: 'queueCall', ),
name: 'queueCall', meta: { title: "短信记录报表" },
redirect: '/home/dataManagement/queueCall/queueRecord', },
component: () => import(/* webpackChunkName: "queueCall" */'@/views/dataAdmin/components/queueCall/module.vue'), ],
meta: { title: "排队叫号记录报表" }, },
children: [ {
{ path: "queueCall",
path: 'queueRecord', name: "queueCall",
name: 'queueRecord', redirect: "/home/dataManagement/queueCall/queueRecord",
component: () => import(/* webpackChunkName: "queueRecord" */'@/views/dataAdmin/components/queueCall/queueRecord.vue'), component: () =>
meta: { title: "大厅排队记录报表" }, import(
/* webpackChunkName: "queueCall" */ "@/views/dataAdmin/components/queueCall/module.vue"
),
}, meta: { title: "排队叫号记录报表" },
{ children: [
path: 'callRecord', {
name: 'callRecord', path: "queueRecord",
component: () => import(/* webpackChunkName: "callRecord" */'@/views/dataAdmin/components/queueCall/callRecord.vue'), name: "queueRecord",
meta: { title: "呼叫记录报表" }, component: () =>
import(
/* webpackChunkName: "queueRecord" */ "@/views/dataAdmin/components/queueCall/queueRecord.vue"
}, ),
meta: { title: "大厅排队记录报表" },
] },
{
}, path: "callRecord",
{ name: "callRecord",
path: 'easyPoliticsShow', component: () =>
name: 'easyPoliticsShow', import(
redirect: '/home/dataManagement/easyPoliticsShow/PoliticsShow', /* webpackChunkName: "callRecord" */ "@/views/dataAdmin/components/queueCall/callRecord.vue"
component: () => import(/* webpackChunkName: "easyPoliticsShow" */'@/views/dataAdmin/components/easyPoliticsShow/module.vue'), ),
meta: { title: "易政秀报表" }, meta: { title: "呼叫记录报表" },
children: [ },
{ ],
path: 'PoliticsShow', },
name: 'PoliticsShow', {
component: () => import(/* webpackChunkName: "PoliticsShow" */'@/views/dataAdmin/components/easyPoliticsShow/PoliticsShow.vue'), path: "easyPoliticsShow",
meta: { title: "易政秀报表" }, name: "easyPoliticsShow",
redirect: "/home/dataManagement/easyPoliticsShow/PoliticsShow",
component: () =>
}, import(
/* webpackChunkName: "easyPoliticsShow" */ "@/views/dataAdmin/components/easyPoliticsShow/module.vue"
] ),
meta: { title: "易政秀报表" },
}, children: [
{ {
path: 'IOT', path: "PoliticsShow",
name: 'IOT', name: "PoliticsShow",
redirect: '/home/dataManagement/IOT/alerting', component: () =>
component: () => import(/* webpackChunkName: "IOT" */'@/views/dataAdmin/components/IOT/module.vue'), import(
meta: { title: "智能边缘物联网异常告警报表" }, /* webpackChunkName: "PoliticsShow" */ "@/views/dataAdmin/components/easyPoliticsShow/PoliticsShow.vue"
children: [ ),
{ meta: { title: "易政秀报表" },
path: 'alerting', },
name: 'alerting', ],
component: () => import(/* webpackChunkName: "alerting" */'@/views/dataAdmin/components/IOT/alerting.vue'), },
meta: { title: "智能边缘物联网异常告警报表" }, {
path: "IOT",
name: "IOT",
}, redirect: "/home/dataManagement/IOT/alerting",
component: () =>
] import(
/* webpackChunkName: "IOT" */ "@/views/dataAdmin/components/IOT/module.vue"
}, ),
{ meta: { title: "智能边缘物联网异常告警报表" },
path: 'makeRecordReport', children: [
name: 'makeRecordReport', {
redirect: '/home/dataManagement/makeRecordReport/RecordReport', path: "alerting",
component: () => import(/* webpackChunkName: "makeRecordReport" */'@/views/dataAdmin/components/makeRecordReport/module.vue'), name: "alerting",
meta: { title: "预约记录报表" }, component: () =>
children: [ import(
{ /* webpackChunkName: "alerting" */ "@/views/dataAdmin/components/IOT/alerting.vue"
path: 'RecordReport', ),
name: 'RecordReport', meta: { title: "智能边缘物联网异常告警报表" },
component: () => import(/* webpackChunkName: "RecordReport" */'@/views/dataAdmin/components/makeRecordReport/makeRecordReport.vue'), },
meta: { title: "预约记录报表" }, ],
},
{
}, path: "makeRecordReport",
name: "makeRecordReport",
] redirect: "/home/dataManagement/makeRecordReport/RecordReport",
component: () =>
}, import(
{ /* webpackChunkName: "makeRecordReport" */ "@/views/dataAdmin/components/makeRecordReport/module.vue"
path: 'oneYardPass', ),
name: 'oneYardPass', meta: { title: "预约记录报表" },
redirect: '/home/dataManagement/oneYardPass/reportForm', children: [
component: () => import(/* webpackChunkName: "oneYardPass" */'@/views/dataAdmin/components/oneYardPass/module.vue'), {
meta: { title: "无感一码通实时数据报表" }, path: "RecordReport",
children: [ name: "RecordReport",
{ component: () =>
path: 'reportForm', import(
name: 'reportForm', /* webpackChunkName: "RecordReport" */ "@/views/dataAdmin/components/makeRecordReport/makeRecordReport.vue"
component: () => import(/* webpackChunkName: "reportForm" */'@/views/dataAdmin/components/oneYardPass/reportForm.vue'), ),
meta: { title: "无感一码通实时数据报表" }, meta: { title: "预约记录报表" },
},
],
}, },
{
] path: "oneYardPass",
name: "oneYardPass",
}, redirect: "/home/dataManagement/oneYardPass/reportForm",
{ component: () =>
path: 'AIEfficiency', import(
name: 'AIEfficiency', /* webpackChunkName: "oneYardPass" */ "@/views/dataAdmin/components/oneYardPass/module.vue"
redirect: '/home/dataManagement/AIEfficiency/abnormalReportForm', ),
component: () => import(/* webpackChunkName: "AIEfficiency" */'@/views/dataAdmin/components/AIEfficiency/module.vue'), meta: { title: "无感一码通实时数据报表" },
meta: { title: "AI效能监察异常行为数据报表" }, children: [
children: [ {
{ path: "reportForm",
path: 'abnormalReportForm', name: "reportForm",
name: 'abnormalReportForm', component: () =>
component: () => import(/* webpackChunkName: "abnormalReportForm" */'@/views/dataAdmin/components/AIEfficiency/reportForm.vue'), import(
meta: { title: "AI效能监察异常行为数据报表" }, /* webpackChunkName: "reportForm" */ "@/views/dataAdmin/components/oneYardPass/reportForm.vue"
),
meta: { title: "无感一码通实时数据报表" },
}, },
],
] },
{
}, path: "AIEfficiency",
{ name: "AIEfficiency",
path: 'recordReportdetails', redirect: "/home/dataManagement/AIEfficiency/abnormalReportForm",
name: 'recordReportdetails', component: () =>
component: () => import(/* webpackChunkName: "recordReportdetails" */'@/views/dataAdmin/components/makeRecordReport/recordReportdetails.vue'), import(
meta: { title: "预约详情" }, /* webpackChunkName: "AIEfficiency" */ "@/views/dataAdmin/components/AIEfficiency/module.vue"
),
}, meta: { title: "AI效能监察异常行为数据报表" },
children: [
], {
}, path: "abnormalReportForm",
{ name: "abnormalReportForm",
path: 'siteArrange', component: () =>
name: 'siteArrange', import(
component: () => import(/* webpackChunkName: "siteArrange" */'@/views/siteArrange/siteArrange.vue'), /* webpackChunkName: "abnormalReportForm" */ "@/views/dataAdmin/components/AIEfficiency/reportForm.vue"
meta: { title: "站点编排" }, ),
}, meta: { title: "AI效能监察异常行为数据报表" },
{ },
path: 'dataActuary', ],
name: 'dataActuary', },
component: () => import(/* webpackChunkName: "dataActuary" */'@/views/dataActuary/dataActuary.vue'), {
meta: { title: "数据精算" }, path: "recordReportdetails",
}, name: "recordReportdetails",
{ component: () =>
path: 'thePlatformIsSet', import(
name: 'thePlatformIsSet', /* webpackChunkName: "recordReportdetails" */ "@/views/dataAdmin/components/makeRecordReport/recordReportdetails.vue"
redirect: '/home/thePlatformIsSet/setPlatformes', ),
component: () => import(/* webpackChunkName: "thePlatformIsSet" */'@/components/viewport/viewport.vue'), meta: { title: "预约详情" },
meta: { title: "平台设置" }, },
children: [
{
path: 'setPlatformes',
name: 'setPlatformes',
component: () => import(/* webpackChunkName: "setPlatformes" */'@/views/thePlatformIsSet/setPlatformes.vue'),
meta: { title: "平台设置" },
},
{
path: 'APIServe',
name: 'APIServe',
component: () => import(/* webpackChunkName: "APIServe" */'@/views/thePlatformIsSet/components/APIServe/APIServe.vue'),
meta: { title: "API服务" },
},
{
path: 'productManage',
name: 'productManage',
component: () => import(/* webpackChunkName: "productManage" */'@/views/thePlatformIsSet/components/productManage/productManage.vue'),
meta: { title: "产品管理" },
},
{
path: 'applService',
name: 'applService',
component: () => import(/* webpackChunkName: "applService" */'@/views/thePlatformIsSet/components/applService.vue'),
meta: { title: "应用服务" },
},
{
path: 'portDocument',
name: 'portDocument',
component: () => import(/* webpackChunkName: "portDocument" */'@/views/thePlatformIsSet/components/APIServe/components/portDocument.vue'),
meta: { title: "接口信息" },
},
{
path: 'permissionsModel',
name: 'permissionsModel',
redirect: '/home/thePlatformIsSet/permissionsModel/userManagement',
component: () => import(/* webpackChunkName: "permissionsModel" */'@/views/thePlatformIsSet/components/permissionsModel/permissionsModel.vue'),
meta: { title: "权限模型" },
children: [
{
path: 'userManagement',
name: 'userManagement',
component: () => import(/* webpackChunkName: "userManagement" */'@/views/thePlatformIsSet/components/permissionsModel/userManagement.vue'),
meta: { title: "用户管理" },
},
{
path: 'authorityMis',
name: 'authorityMis',
component: () => import(/* webpackChunkName: "authorityMis" */'@/views/thePlatformIsSet/components/permissionsModel/authorityMis.vue'),
meta: { title: "角色权限管理" },
},
]
},
{
path: 'setMenuPerms',
name: 'setMenuPerms',
component: () => import(/* webpackChunkName: "setMenuPerms" */'@/views/thePlatformIsSet/components/permissionsModel/setMenuPerms.vue'),
meta: { title: "菜单权限设置" },
},
{
path: 'menuManagement',
name: 'menuManagement',
redirect: '/home/thePlatformIsSet/menuManagement/menuMgmt',
component: () => import(/* webpackChunkName: "menuManagement" */'@/views/thePlatformIsSet/components/menuManagement/menuManagement.vue'),
meta: { title: "菜单管理" },
children: [
{
path: 'menuMgmt',
name: 'menuMgmt',
component: () => import(/* webpackChunkName: "menuMgmt" */'@/views/thePlatformIsSet/components/menuManagement/menuMgmt.vue'),
meta: { title: "菜单管理" },
},
]
},
{
path: 'logService',
name: 'logService',
redirect: '/home/thePlatformIsSet/logService/Service',
component: () => import(/* webpackChunkName: "logService" */'@/views/thePlatformIsSet/components/logService/logService.vue'),
meta: { title: "日志服务" },
children: [
{
path: 'Service',
name: 'Service',
component: () => import(/* webpackChunkName: "Service" */'@/views/thePlatformIsSet/components/logService/Service.vue'),
meta: { title: "日志服务" },
},
]
},
{
path: 'InterfaceManage',
name: 'InterfaceManage',
redirect: '/home/thePlatformIsSet/InterfaceManage/manage',
component: () => import(/* webpackChunkName: "InterfaceManage" */'@/views/thePlatformIsSet/components/productManage/components/InterfaceManage/module.vue'),
meta: { title: "接口管理" },
children: [
{
path: 'manage',
name: 'manage',
component: () => import(/* webpackChunkName: "manage " */'@/views/thePlatformIsSet/components/productManage/components/InterfaceManage/alerting.vue'),
meta: { title: "接口管理" },
},
]
},
{
path: 'appManage',
name: 'appManage',
redirect: '/home/thePlatformIsSet/appManage/application',
component: () => import(/* webpackChunkName: "appManage" */'@/views/thePlatformIsSet/components/productManage/components/appManage/module.vue'),
meta: { title: "应用管理" },
children: [
{
path: 'application',
name: 'application',
component: () => import(/* webpackChunkName: "application " */'@/views/thePlatformIsSet/components/productManage/components/appManage/application.vue'),
meta: { title: "应用管理" },
},
]
},
{
path: 'docData',
name: 'docData',
redirect: '/home/thePlatformIsSet/docData/fileData',
component: () => import(/* webpackChunkName: "docData" */'@/views/thePlatformIsSet/components/productManage/components/docData/module.vue'),
meta: { title: "文档资料" },
children: [
{
path: 'fileData',
name: 'fileData',
component: () => import(/* webpackChunkName: "fileData " */'@/views/thePlatformIsSet/components/productManage/components/docData/fileData.vue'),
meta: { title: "文档资料" },
},
]
},
],
},
], ],
}, },
{ {
path: '/', path: "siteArrange",
name: 'signIn', name: "siteArrange",
component: () => import(/* webpackChunkName: "signIn" */'@/views/signIn/signIn.vue'), component: () =>
meta: { title: "登入" }, import(
}, /* webpackChunkName: "siteArrange" */ "@/views/siteArrange/siteArrange.vue"
{ ),
path: '*', meta: { title: "站点编排" },
component: () => import(/* webpackChunkName: "NotFoundView" */'@/views/NotFoundView/NotFoundView.vue') },
}, {
] path: "dataActuary",
name: "dataActuary",
export default routes component: () =>
\ No newline at end of file import(
/* webpackChunkName: "dataActuary" */ "@/views/dataActuary/dataActuary.vue"
),
meta: { title: "数据精算" },
},
{
path: "thePlatformIsSet",
name: "thePlatformIsSet",
redirect: "/home/thePlatformIsSet/setPlatformes",
component: () =>
import(
/* webpackChunkName: "thePlatformIsSet" */ "@/components/viewport/viewport.vue"
),
meta: { title: "平台设置" },
children: [
{
path: "setPlatformes",
name: "setPlatformes",
component: () =>
import(
/* webpackChunkName: "setPlatformes" */ "@/views/thePlatformIsSet/setPlatformes.vue"
),
meta: { title: "平台设置" },
},
{
path: "APIServe",
name: "APIServe",
component: () =>
import(
/* webpackChunkName: "APIServe" */ "@/views/thePlatformIsSet/components/APIServe/APIServe.vue"
),
meta: { title: "API服务" },
},
{
path: "productManage",
name: "productManage",
component: () =>
import(
/* webpackChunkName: "productManage" */ "@/views/thePlatformIsSet/components/productManage/productManage.vue"
),
meta: { title: "产品管理" },
},
{
path: "applService",
name: "applService",
component: () =>
import(
/* webpackChunkName: "applService" */ "@/views/thePlatformIsSet/components/applService.vue"
),
meta: { title: "应用服务" },
},
{
path: "portDocument",
name: "portDocument",
component: () =>
import(
/* webpackChunkName: "portDocument" */ "@/views/thePlatformIsSet/components/APIServe/components/portDocument.vue"
),
meta: { title: "接口信息" },
},
{
path: "permissionsModel",
name: "permissionsModel",
redirect: "/home/thePlatformIsSet/permissionsModel/userManagement",
component: () =>
import(
/* webpackChunkName: "permissionsModel" */ "@/views/thePlatformIsSet/components/permissionsModel/permissionsModel.vue"
),
meta: { title: "权限模型" },
children: [
{
path: "userManagement",
name: "userManagement",
component: () =>
import(
/* webpackChunkName: "userManagement" */ "@/views/thePlatformIsSet/components/permissionsModel/userManagement.vue"
),
meta: { title: "用户管理" },
},
{
path: "authorityMis",
name: "authorityMis",
component: () =>
import(
/* webpackChunkName: "authorityMis" */ "@/views/thePlatformIsSet/components/permissionsModel/authorityMis.vue"
),
meta: { title: "角色权限管理" },
},
],
},
{
path: "setMenuPerms",
name: "setMenuPerms",
component: () =>
import(
/* webpackChunkName: "setMenuPerms" */ "@/views/thePlatformIsSet/components/permissionsModel/setMenuPerms.vue"
),
meta: { title: "菜单权限设置" },
},
{
path: "menuManagement",
name: "menuManagement",
redirect: "/home/thePlatformIsSet/menuManagement/menuMgmt",
component: () =>
import(
/* webpackChunkName: "menuManagement" */ "@/views/thePlatformIsSet/components/menuManagement/menuManagement.vue"
),
meta: { title: "菜单管理" },
children: [
{
path: "menuMgmt",
name: "menuMgmt",
component: () =>
import(
/* webpackChunkName: "menuMgmt" */ "@/views/thePlatformIsSet/components/menuManagement/menuMgmt.vue"
),
meta: { title: "菜单管理" },
},
],
},
{
path: "logService",
name: "logService",
redirect: "/home/thePlatformIsSet/logService/Service",
component: () =>
import(
/* webpackChunkName: "logService" */ "@/views/thePlatformIsSet/components/logService/logService.vue"
),
meta: { title: "日志服务" },
children: [
{
path: "Service",
name: "Service",
component: () =>
import(
/* webpackChunkName: "Service" */ "@/views/thePlatformIsSet/components/logService/Service.vue"
),
meta: { title: "日志服务" },
},
],
},
{
path: "InterfaceManage",
name: "InterfaceManage",
redirect: "/home/thePlatformIsSet/InterfaceManage/manage",
component: () =>
import(
/* webpackChunkName: "InterfaceManage" */ "@/views/thePlatformIsSet/components/productManage/components/InterfaceManage/module.vue"
),
meta: { title: "接口管理" },
children: [
{
path: "manage",
name: "manage",
component: () =>
import(
/* webpackChunkName: "manage " */ "@/views/thePlatformIsSet/components/productManage/components/InterfaceManage/alerting.vue"
),
meta: { title: "接口管理" },
},
],
},
{
path: "appManage",
name: "appManage",
redirect: "/home/thePlatformIsSet/appManage/application",
component: () =>
import(
/* webpackChunkName: "appManage" */ "@/views/thePlatformIsSet/components/productManage/components/appManage/module.vue"
),
meta: { title: "应用管理" },
children: [
{
path: "application",
name: "application",
component: () =>
import(
/* webpackChunkName: "application " */ "@/views/thePlatformIsSet/components/productManage/components/appManage/application.vue"
),
meta: { title: "应用管理" },
},
],
},
{
path: "docData",
name: "docData",
redirect: "/home/thePlatformIsSet/docData/fileData",
component: () =>
import(
/* webpackChunkName: "docData" */ "@/views/thePlatformIsSet/components/productManage/components/docData/module.vue"
),
meta: { title: "文档资料" },
children: [
{
path: "fileData",
name: "fileData",
component: () =>
import(
/* webpackChunkName: "fileData " */ "@/views/thePlatformIsSet/components/productManage/components/docData/fileData.vue"
),
meta: { title: "文档资料" },
},
],
},
],
},
],
},
{
path: "/",
name: "signIn",
component: () =>
import(/* webpackChunkName: "signIn" */ "@/views/signIn/signIn.vue"),
meta: { title: "登入" },
},
{
path: "*",
component: () =>
import(
/* webpackChunkName: "NotFoundView" */ "@/views/NotFoundView/NotFoundView.vue"
),
},
];
export default routes;
...@@ -16,12 +16,19 @@ ...@@ -16,12 +16,19 @@
> >
<div class="flip"> <div class="flip">
<div class="mod_min"> <div class="mod_min">
<img :src="api + item.imgPath" alt /> <img
:src="
item.imgPath
? api + item.imgPath
: require('../../assets/images/qyhx.png')
"
alt
/>
<div class="mod_cont"> <div class="mod_cont">
<p>{{ item.name }}</p> <p class="name">{{ item.name }}</p>
<span> <p class="remark">
{{ item.remark }} {{ item.remark }}
</span> </p>
</div> </div>
</div> </div>
</div> </div>
...@@ -38,9 +45,7 @@ export default { ...@@ -38,9 +45,7 @@ export default {
mixins: [menu], mixins: [menu],
data() { data() {
return { return {
api: process.env.VUE_APP_API_BASE_URL.includes("zwfw") api: process.env.VUE_APP_API_BASE_URL + "/",
? process.env.VUE_APP_API_BASE_URL.replace("zwfw", "")
: process.env.VUE_APP_API_BASE_URL + "/",
menuPermission: [], menuPermission: [],
}; };
}, },
...@@ -55,24 +60,6 @@ export default { ...@@ -55,24 +60,6 @@ export default {
// 跳转 // 跳转
handleJump(url) { handleJump(url) {
this.$router.push(url); this.$router.push(url);
// let { menuList } = Storage.get(2, "userInfo");
// let actuary = menuList.filter((v) => v.name === "数据精算");
// if (actuary.length) {
// this.menuPermission = actuary
// .map((v) => {
// if (v.childList.length) {
// return v.childList;
// }
// })
// .flat()
// .map((v) => v.name);
// }
// let isPermission = this.menuPermission.includes(val);
// if (isPermission) {
// this.$router.push(url);
// } else {
// this.$message.warning("暂无权限");
// }
}, },
// 获取子菜单权限 // 获取子菜单权限
getChildrenPermission() { getChildrenPermission() {
...@@ -88,7 +75,6 @@ export default { ...@@ -88,7 +75,6 @@ export default {
} }
}) })
.flat(); .flat();
console.log(this.menuPermission);
} }
}, },
}, },
...@@ -132,15 +118,13 @@ export default { ...@@ -132,15 +118,13 @@ export default {
flex-wrap: wrap; flex-wrap: wrap;
.mod_max { .mod_max {
width: 20%; width: 344px;
height: 200px; height: 200px;
padding: 18px; padding: 18px;
cursor: pointer; cursor: pointer;
&:hover > .flip { &:hover > .flip {
// border: 1px solid rgb(25, 76, 245) !important;
transform: translateY(-10px); transform: translateY(-10px);
// transform: rotateX(-360deg) !important;
} }
.flip { .flip {
...@@ -153,7 +137,7 @@ export default { ...@@ -153,7 +137,7 @@ export default {
.mod_min { .mod_min {
width: 285px; width: 285px;
height: 150px; height: 100%;
margin: auto; margin: auto;
display: flex; display: flex;
align-items: center; align-items: center;
...@@ -164,14 +148,19 @@ export default { ...@@ -164,14 +148,19 @@ export default {
} }
.mod_cont { .mod_cont {
p { width: 100%;
.name {
font-size: 18px; font-size: 18px;
font-weight: bold; font-weight: bold;
padding-bottom: 10px; padding-bottom: 10px;
} }
span { .remark {
font-size: 14px; font-size: 14px;
line-height: 10px; line-height: 18px;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
overflow: hidden;
} }
} }
} }
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<a-tabs v-model="tabsActive" @change="tabsChange" :forceRender="false"> <a-tabs v-model="tabsActive" @change="tabsChange" :forceRender="false">
<a-tab-pane <a-tab-pane
:key="item.path" :key="item.path"
v-for="(item, index) of tabsList['children']" v-for="item of tabsList['children']"
:tab="item['meta']['title']" :tab="item['meta']['title']"
> >
</a-tab-pane> </a-tab-pane>
...@@ -89,12 +89,12 @@ export default { ...@@ -89,12 +89,12 @@ export default {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
} }
:deep(.ant-tabs-nav) { /deep/.ant-tabs-nav {
.ant-tabs-tab { .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
} }
} }
:deep(.ant-tabs-tab) { /deep/.ant-tabs-tab {
font-size: 1rem !important; font-size: 1rem !important;
& + .ant-tabs-tab { & + .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
......
...@@ -321,22 +321,22 @@ export default { ...@@ -321,22 +321,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selectio)n { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -380,13 +380,13 @@ export default { ...@@ -380,13 +380,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -317,22 +317,22 @@ export default { ...@@ -317,22 +317,22 @@ export default {
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 15rem !important; width: 15rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -384,13 +384,13 @@ export default { ...@@ -384,13 +384,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -80,7 +80,7 @@ export default { ...@@ -80,7 +80,7 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
:deep(.ant-drawer-content) { /deep/.ant-drawer-content {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
</style> </style>
......
...@@ -89,12 +89,12 @@ export default { ...@@ -89,12 +89,12 @@ export default {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
} }
:deep(.ant-tabs-nav) { /deep/.ant-tabs-nav {
.ant-tabs-tab { .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
} }
} }
:deep(.ant-tabs-tab) { /deep/.ant-tabs-tab {
font-size: 1rem !important; font-size: 1rem !important;
& + .ant-tabs-tab { & + .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
......
...@@ -191,22 +191,22 @@ export default { ...@@ -191,22 +191,22 @@ export default {
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -251,13 +251,13 @@ export default { ...@@ -251,13 +251,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -260,22 +260,22 @@ export default { ...@@ -260,22 +260,22 @@ export default {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 15rem !important; width: 15rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -320,13 +320,13 @@ export default { ...@@ -320,13 +320,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -45,7 +45,7 @@ export default { ...@@ -45,7 +45,7 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
:deep(.ant-drawer-content) { /deep/.ant-drawer-content {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
.headerInfo { .headerInfo {
......
...@@ -38,7 +38,7 @@ export default { ...@@ -38,7 +38,7 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
:deep(.ant-drawer-content) { /deep/.ant-drawer-content {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
.box1 { .box1 {
......
...@@ -93,12 +93,12 @@ export default { ...@@ -93,12 +93,12 @@ export default {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
} }
:deep(.ant-tabs-nav) { /deep/.ant-tabs-nav {
.ant-tabs-tab { .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
} }
} }
:deep(.ant-tabs-tab) { /deep/.ant-tabs-tab {
font-size: 1rem !important; font-size: 1rem !important;
& + .ant-tabs-tab { & + .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
......
...@@ -299,22 +299,22 @@ export default { ...@@ -299,22 +299,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -358,13 +358,13 @@ export default { ...@@ -358,13 +358,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -93,12 +93,12 @@ export default { ...@@ -93,12 +93,12 @@ export default {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
} }
:deep(.ant-tabs-nav) { /deep/.ant-tabs-nav {
.ant-tabs-tab { .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
} }
} }
:deep(.ant-tabs-tab) { /deep/.ant-tabs-tab {
font-size: 1rem !important; font-size: 1rem !important;
& + .ant-tabs-tab { & + .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
......
...@@ -89,12 +89,12 @@ export default { ...@@ -89,12 +89,12 @@ export default {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
} }
:deep(.ant-tabs-nav) { /deep/.ant-tabs-nav {
.ant-tabs-tab { .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
} }
} }
:deep(.ant-tabs-tab) { /deep/.ant-tabs-tab {
font-size: 1rem !important; font-size: 1rem !important;
& + .ant-tabs-tab { & + .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
......
...@@ -279,22 +279,22 @@ export default { ...@@ -279,22 +279,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -338,13 +338,13 @@ export default { ...@@ -338,13 +338,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -296,22 +296,22 @@ export default { ...@@ -296,22 +296,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -356,13 +356,13 @@ export default { ...@@ -356,13 +356,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -89,12 +89,12 @@ export default { ...@@ -89,12 +89,12 @@ export default {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
} }
:deep(.ant-tabs-nav) { /deep/.ant-tabs-nav {
.ant-tabs-tab { .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
} }
} }
:deep(.ant-tabs-tab) { /deep/.ant-tabs-tab {
font-size: 1rem !important; font-size: 1rem !important;
& + .ant-tabs-tab { & + .ant-tabs-tab {
margin: 0 !important; margin: 0 !important;
......
...@@ -247,22 +247,22 @@ export default { ...@@ -247,22 +247,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -307,13 +307,13 @@ export default { ...@@ -307,13 +307,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -283,22 +283,22 @@ export default { ...@@ -283,22 +283,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection-selected-value) { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -343,13 +343,13 @@ export default { ...@@ -343,13 +343,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
:deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -374,22 +374,22 @@ export default { ...@@ -374,22 +374,22 @@ export default {
// // font-size: 16px; // // font-size: 16px;
// } // }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -434,13 +434,13 @@ export default { ...@@ -434,13 +434,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -87,7 +87,7 @@ export default { ...@@ -87,7 +87,7 @@ export default {
} }
} }
:deep(.ant-modal-body) { /deep/.ant-modal-body {
min-height: 300px !important; min-height: 300px !important;
max-height: 550px !important; max-height: 550px !important;
overflow-y: auto !important; overflow-y: auto !important;
......
...@@ -130,13 +130,13 @@ export default { ...@@ -130,13 +130,13 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
:deep(.ant-steps-icon) { /deep/.ant-steps-icon {
top: -4px !important; top: -4px !important;
} }
:deep(.ant-drawer-content) { /deep/.ant-drawer-content {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
:deep(.icon_box) { /deep/.icon_box {
margin-top: -20px !important; margin-top: -20px !important;
display: inline-block; display: inline-block;
width: 12px; width: 12px;
...@@ -239,7 +239,7 @@ export default { ...@@ -239,7 +239,7 @@ export default {
color: #f7072f; color: #f7072f;
} }
:deep(.ant-steps-item-tail) { /deep/.ant-steps-item-tail {
left: 6px !important; left: 6px !important;
top: 24px !important; top: 24px !important;
border-left: 3px dashed #e6f5ff !important; border-left: 3px dashed #e6f5ff !important;
...@@ -247,7 +247,7 @@ export default { ...@@ -247,7 +247,7 @@ export default {
background: none !important; background: none !important;
} }
} }
:deep(.ant-steps-item) { /deep/.ant-steps-item {
& + .ant-steps-item { & + .ant-steps-item {
margin-top: 25px !important; margin-top: 25px !important;
} }
......
...@@ -375,22 +375,22 @@ export default { ...@@ -375,22 +375,22 @@ export default {
// font-size: 16px; // font-size: 16px;
} }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -435,13 +435,13 @@ export default { ...@@ -435,13 +435,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -192,22 +192,22 @@ export default { ...@@ -192,22 +192,22 @@ export default {
// font-size: 16px; // font-size: 16px;
} }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
......
...@@ -182,22 +182,22 @@ export default { ...@@ -182,22 +182,22 @@ export default {
// font-size: 16px; // font-size: 16px;
} }
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 17rem !important; width: 17rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
......
<template> <template>
<div class="Container"> <div class="Container">
<div class="search_box"> <div class="slogan-box">
<div class="slogan-title">智慧政务一体化数据管理</div>
<div class="slogan-text">
<span>准实时数据洞察</span>
<span>超大规模数据量</span>
<span>高并发稳定运行</span>
<span>低延时高效查询</span>
</div>
</div>
<!-- <div class="search_box">
<a-input v-model="searchVal"> <a-input v-model="searchVal">
<a-select slot="addonBefore" v-model="selectVal" style="width: 90px"> <a-select slot="addonBefore" v-model="selectVal" style="width: 90px">
<a-select-option <a-select-option
...@@ -13,7 +22,7 @@ ...@@ -13,7 +22,7 @@
</a-select> </a-select>
<button class="addonAfter_btn" slot="addonAfter">查询</button> <button class="addonAfter_btn" slot="addonAfter">查询</button>
</a-input> </a-input>
</div> </div> -->
<div class="skipOption_box"> <div class="skipOption_box">
<ul class="list"> <ul class="list">
<li class="skip_list"> <li class="skip_list">
...@@ -262,8 +271,9 @@ export default { ...@@ -262,8 +271,9 @@ export default {
@headerH: 4.5rem; @headerH: 4.5rem;
.Container { .Container {
height: 100%; height: 100%;
min-height: 960px; width: 100%;
background: url("~@/assets/images/u22.png") center no-repeat; // min-height: 960px;
background: url("~@/assets/images/zhandian.jpg") center no-repeat;
background-size: cover; background-size: cover;
padding-top: @headerH; padding-top: @headerH;
display: flex; display: flex;
...@@ -285,7 +295,7 @@ export default { ...@@ -285,7 +295,7 @@ export default {
color: #ffffff; color: #ffffff;
background: #fd0b05; background: #fd0b05;
position: relative; position: relative;
font-weight: 1000; font-weight: 800;
font-size: 17px; font-size: 17px;
-webkit-box-shadow: 4px 8px 19px -3px rgba(0, 0, 0, 0.27); -webkit-box-shadow: 4px 8px 19px -3px rgba(0, 0, 0, 0.27);
box-shadow: 4px 8px 19px -3px rgba(0, 0, 0, 0.27); box-shadow: 4px 8px 19px -3px rgba(0, 0, 0, 0.27);
...@@ -317,26 +327,43 @@ export default { ...@@ -317,26 +327,43 @@ export default {
width: 100%; width: 100%;
} }
:deep(.ant-input-group-wrapper) { /deep/.ant-input-group-wrapper {
width: 790px !important; width: 790px !important;
} }
:deep(.ant-input-group-addon) { /deep/.ant-input-group-addon {
height: 45px !important; height: 45px !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 45px !important; height: 45px !important;
} }
:deep(.ant-input-group-addon):first-child { /deep/.ant-input-group-addon:first-child {
background: #ffffff !important; background: #ffffff !important;
} }
:deep(.ant-input-group-addon):last-child { /deep/.ant-input-group-addon:last-child {
padding: 0 !important; padding: 0 !important;
border: 0 !important; border: 0 !important;
margin: 0 !important; margin: 0 !important;
} }
} }
.slogan-box {
width: 561px;
margin-top: 100px;
color: #fff;
.slogan-title {
font-size: 50px;
font-weight: 600;
letter-spacing: 1px;
margin-bottom: 15px;
}
.slogan-text {
font-size: 18px;
display: flex;
align-items: center;
justify-content: space-between;
}
}
.skipOption_box { .skipOption_box {
width: 100%; width: 100%;
display: flex; display: flex;
...@@ -348,7 +375,7 @@ export default { ...@@ -348,7 +375,7 @@ export default {
display: block; display: block;
} }
align-items: center; align-items: center;
margin-top: 90px; margin-top: 150px;
.list { .list {
height: 440px; height: 440px;
width: 286px; width: 286px;
......
...@@ -182,6 +182,7 @@ export default { ...@@ -182,6 +182,7 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
@headerH: 4.5rem; @headerH: 4.5rem;
.Container { .Container {
width: 100%;
height: 100%; height: 100%;
position: relative; position: relative;
.header_box { .header_box {
...@@ -204,17 +205,17 @@ export default { ...@@ -204,17 +205,17 @@ export default {
color: #fff; color: #fff;
margin-right: 1rem; margin-right: 1rem;
} }
.selectOnptions { /deep/ .selectOnptions {
:deep(.ant-select) { .ant-select {
font-size: 1rem !important; font-size: 1rem !important;
color: #fff !important; color: #fff !important;
} }
:deep(.ant-select-arrow) { .ant-select-arrow {
color: #fff !important; color: #fff !important;
right: 6px !important; right: 6px !important;
margin-top: -7px !important; margin-top: -7px !important;
} }
:deep(.ant-select-selection) { .ant-select-selection {
border: none !important; border: none !important;
background: transparent !important; background: transparent !important;
min-width: 120px; min-width: 120px;
......
...@@ -13,9 +13,18 @@ ...@@ -13,9 +13,18 @@
@click="openWindow(item.modelUrl)" @click="openWindow(item.modelUrl)"
> >
<div class="picture"> <div class="picture">
<img width="40" height="35" :src="api + item.modelIcon" alt /> <img
width="40"
height="35"
:src="
item.modelIcon
? api + item.modelIcon
: require('../../assets/images/u222.svg')
"
alt
/>
</div> </div>
<h5 style="margin-top: 10px">{{ item.modelName }}</h5> <div class="name" style="margin-top: 10px">{{ item.modelName }}</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -30,9 +39,7 @@ export default { ...@@ -30,9 +39,7 @@ export default {
mixins: [menu], mixins: [menu],
data() { data() {
return { return {
api: process.env.VUE_APP_API_BASE_URL.includes("zwfw") api: process.env.VUE_APP_API_BASE_URL + "/",
? process.env.VUE_APP_API_BASE_URL.replace("zwfw", "")
: process.env.VUE_APP_API_BASE_URL,
siteId: "", siteId: "",
siteModelList: [], // 站点编排列表 siteModelList: [], // 站点编排列表
}; };
...@@ -55,8 +62,10 @@ export default { ...@@ -55,8 +62,10 @@ export default {
}, },
openWindow(href) { openWindow(href) {
let token = Storage.get(2, "Authorization"); let token = Storage.get(2, "Authorization");
let siteid = Storage.get(2, "siteId"); let siteid = Storage.get(2, "siteId") ? Storage.get(2, "siteId") : 0;
let siteName = Storage.get(2, "siteName"); let siteName = Storage.get(2, "siteName")
? Storage.get(2, "siteName")
: "";
let reg = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/; let reg = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/;
let info = Storage.get(2, "userInfo"); let info = Storage.get(2, "userInfo");
let userInfo = JSON.stringify({ let userInfo = JSON.stringify({
...@@ -109,20 +118,20 @@ export default { ...@@ -109,20 +118,20 @@ export default {
.classification { .classification {
width: 100%; width: 100%;
height: 280px; height: 300px;
position: absolute; position: absolute;
bottom: 0; bottom: 0;
background-color: rgba(3, 23, 24, 0.452); background-color: rgba(3, 23, 24, 0.452);
overflow-y: auto;
.modules { .modules {
margin: 0 100px; margin: 0 100px;
padding-top: 20px; padding-top: 20px;
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
.mod_max { .mod_max {
width: 96px;
height: 115px; height: 115px;
margin-right: 39px; margin-left: 39px;
margin-top: 5px; margin-top: 5px;
text-align: center; text-align: center;
cursor: pointer; cursor: pointer;
...@@ -136,11 +145,15 @@ export default { ...@@ -136,11 +145,15 @@ export default {
background-color: rgba(84, 120, 140, 1); background-color: rgba(84, 120, 140, 1);
} }
h5 { .name {
width: 100%;
font-weight: 700; font-weight: 700;
font-size: 16px; font-size: 16px;
color: #ffffff; color: #ffffff;
padding-top: 5px; padding-top: 5px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
} }
} }
......
...@@ -82,8 +82,6 @@ export default { ...@@ -82,8 +82,6 @@ export default {
this.stepsList = data.data; this.stepsList = data.data;
// console.log(this.stepsList); // console.log(this.stepsList);
this.searchVal = undefined; this.searchVal = undefined;
} else {
this.$message.error(res.msg);
} }
}); });
}, },
...@@ -121,7 +119,7 @@ export default { ...@@ -121,7 +119,7 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
} }
:deep(.ant-input) { /deep/.ant-input {
width: 30rem !important; width: 30rem !important;
margin-right: 2rem; margin-right: 2rem;
height: 3rem !important; height: 3rem !important;
......
...@@ -160,8 +160,6 @@ export default { ...@@ -160,8 +160,6 @@ export default {
this.stepsList = data.data; this.stepsList = data.data;
console.log(this.stepsList); console.log(this.stepsList);
this.searchVal = undefined; this.searchVal = undefined;
} else {
this.$message.error(res.msg);
} }
}); });
}, },
...@@ -198,7 +196,7 @@ export default { ...@@ -198,7 +196,7 @@ export default {
padding-bottom: 35px; padding-bottom: 35px;
} }
:deep(.ant-input)-group :deep(.ant-input) { /deep/.ant-input-group .ant-input {
width: 480px; width: 480px;
height: 48px; height: 48px;
border-radius: 5px; border-radius: 5px;
...@@ -213,9 +211,7 @@ export default { ...@@ -213,9 +211,7 @@ export default {
margin-left: 20px; margin-left: 20px;
border-radius: 5px; border-radius: 5px;
} }
:deep(.ant-input)-search-enter-button /deep/.ant-input-search-enter-button input + .ant-input-group-addon {
input
+ :deep(.ant-input)-group-addon {
background-color: #ccc0; background-color: #ccc0;
} }
} }
......
...@@ -240,52 +240,23 @@ export default { ...@@ -240,52 +240,23 @@ export default {
align-items: center; align-items: center;
.range_picker_style { .range_picker_style {
margin-right: 20px; margin-right: 20px;
// color: #32a6fb !important;
.ant-calendar-picker-input {
// background: transparent !important;
// border-color: #32a6fb !important;
// color: #32a6fb !important;
}
.ant-calendar-range-picker-separator {
// color: #32a6fb !important;
}
::-webkit-input-placeholder {
/* WebKit browsers,webkit内核浏览器 */
// color: #32a6fb;
// font-size: 16px;
}
:-moz-placeholder {
/* Mozilla Firefox 4 to 18 */
// color: #32a6fb;
// font-size: 16px;
}
::-moz-placeholder {
/* Mozilla Firefox 19+ */
// color: #32a6fb;
// font-size: 16px;
}
:-ms-input-placeholder {
/* Internet Explorer 10+ */
// color: #32a6fb;
// font-size: 16px;
}
} }
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 15rem !important; width: 15rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -324,15 +295,12 @@ export default { ...@@ -324,15 +295,12 @@ export default {
.ant-table-row-indent { .ant-table-row-indent {
padding-left: 0 !important; padding-left: 0 !important;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) {
float: left !important;
}
} }
} }
</style> </style>
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<a-tabs v-model="tabsActive" @change="tabsChange" :forceRender="false"> <a-tabs v-model="tabsActive" @change="tabsChange" :forceRender="false">
<a-tab-pane <a-tab-pane
:key="item.path" :key="item.path"
v-for="(item, index) of tabsList['children']" v-for="item of tabsList['children']"
:tab="item['meta']['title']" :tab="item['meta']['title']"
> >
</a-tab-pane> </a-tab-pane>
...@@ -50,6 +50,9 @@ export default { ...@@ -50,6 +50,9 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
@headerH: 4.5rem; @headerH: 4.5rem;
/deep/.ant-spin-container {
display: block;
}
.Container { .Container {
height: 100% !important; height: 100% !important;
// background: #fac; // background: #fac;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
:centered="true" :centered="true"
:destroyOnClose="true" :destroyOnClose="true"
:getContainer="() => $refs.EditModal_box" :getContainer="() => $refs.EditModal_box"
:visible="EditModalVisible" :visible="visible"
:confirmLoading="EditModalLoading" :confirmLoading="EditModalLoading"
@cancel="handleClose" @cancel="handleClose"
width="33%" width="33%"
...@@ -22,13 +22,13 @@ ...@@ -22,13 +22,13 @@
:model="compileInfoForm" :model="compileInfoForm"
:rules="Rules" :rules="Rules"
> >
<a-form-model-item label="类型" prop="menuType"> <!-- <a-form-model-item label="类型" prop="menuType">
<a-radio-group v-model="compileInfoForm.menuType"> <a-radio-group v-model="compileInfoForm.menuType">
<a-radio v-for="v in MenuDict" :key="v.id" :value="v.id" <a-radio v-for="(val, key) in MenuDict" :key="val" :value="key"
>{{ v.name }} >{{ val }}
</a-radio> </a-radio>
</a-radio-group> </a-radio-group>
</a-form-model-item> </a-form-model-item> -->
<a-form-model-item label="名称" prop="name"> <a-form-model-item label="名称" prop="name">
<a-input <a-input
...@@ -39,16 +39,14 @@ ...@@ -39,16 +39,14 @@
</a-form-model-item> </a-form-model-item>
<a-form-model-item <a-form-model-item
label="菜单路径" label="父级菜单"
prop="parentId" prop="parentId"
v-if="formTitle == '编辑'" v-if="formTitle == '编辑'"
> >
<MyMenuTree <a-input
expandTrigger="hover" placeholder="请输入名称"
v-model="compileInfoForm.parentId" allowClear
:options="MenuDict.MenuTree" v-model="compileInfoForm.name"
placeholder="请选择菜单路径"
@onChange="onChange"
/> />
</a-form-model-item> </a-form-model-item>
<!-- <a-form-model-item> <!-- <a-form-model-item>
...@@ -110,15 +108,18 @@ ...@@ -110,15 +108,18 @@
</a-form-model-item> </a-form-model-item>
<a-form-model-item label="图标" prop="imgPath"> <a-form-model-item label="图标" prop="imgPath">
<MyUpload <a-upload
:uploadInfo="uploadInfo" name="file"
v-model="compileInfoForm.imgPath" :action="api + 'zwfw/file/commonupload'"
@uploadChange="uploadChange" :multiple="false"
:file-list="fileList"
@change="handleChangeFile"
accept="image/jpeg,image/png"
> >
<a-button style="background: #04ca8f; color: #fff" <a-button type="primary">
>选择文件</a-button <a-icon type="upload" /> 选择文件
> </a-button>
</MyUpload> </a-upload>
</a-form-model-item> </a-form-model-item>
<a-form-model-item label="序号" prop="orderId"> <a-form-model-item label="序号" prop="orderId">
...@@ -146,15 +147,29 @@ ...@@ -146,15 +147,29 @@
</template> </template>
<script> <script>
import { deepClone } from "@/utils/js/common.js";
import { menuSave } from "@/api/menuMgmt.js"; import { menuSave } from "@/api/menuMgmt.js";
export default { export default {
name: "PortalAdminVueAddEdit", name: "PortalAdminVueAddEdit",
data() { data() {
return { return {
EditModalVisible: false, //模态 api: process.env.VUE_APP_API_BASE_URL + "/",
EditModalLoading: false, //确定回调 loading EditModalLoading: false, //确定回调 loading
compileInfoForm: {}, //页面表单信息 compileInfoForm: {
name: "",
url: "",
parentId: "",
linkType: "",
imgPath: "",
buttonImgPath: "",
imgCommPath: "",
visible: "",
menuType: "",
status: "",
authType: "",
orderId: "",
createUserName: "",
remark: "",
}, //页面表单信息
Rules: { Rules: {
firstLevel: [ firstLevel: [
//一级菜单 //一级菜单
...@@ -207,7 +222,7 @@ export default { ...@@ -207,7 +222,7 @@ export default {
imgPath: [ imgPath: [
//图标 //图标
{ {
required: false, //是否必选 required: true, //是否必选
message: "请选择图标", message: "请选择图标",
trigger: "change", trigger: "change",
}, },
...@@ -247,11 +262,18 @@ export default { ...@@ -247,11 +262,18 @@ export default {
limit: 1, //限制文件上传数量 limit: 1, //限制文件上传数量
whiteFileList: ["jpg", "jpeg", "png", "gif", "bmp"], whiteFileList: ["jpg", "jpeg", "png", "gif", "bmp"],
}, },
fileList: [],
toStr: ["menuType"], toStr: ["menuType"],
}; };
}, },
props: { props: {
MenuDict: { MenuDict: {
type: Object,
default: () => {
return {};
},
},
MenuList: {
type: Array, type: Array,
default: () => { default: () => {
return []; return [];
...@@ -263,102 +285,89 @@ export default { ...@@ -263,102 +285,89 @@ export default {
return "编辑"; return "编辑";
}, },
}, },
sourceInfoForm: { EditModalVisible: {
type: Object, type: Boolean,
default: () => { required: true,
return {}; default: false,
},
}, },
}, },
watch: { computed: {
sourceInfoForm: { visible: {
handler(newValue, oldValue) { get() {
// console.log(newValue); return this.EditModalVisible;
// console.log(oldValue); },
this.compileInfoForm = deepClone(newValue); set(val) {
this.toStr.map((item) => { this.$emit("update:EditModalVisible", val);
this.compileInfoForm[item] = this.compileInfoForm[item]
? this.compileInfoForm[item].toString()
: "0";
});
// for (let key in this.Rules) {
// this.Rules[key][0].required = this.formTitle == "添加";
// }
}, },
deep: true,
}, },
}, },
mounted() {}, mounted() {},
methods: { methods: {
// 上传
handleChangeFile(info) {
let fileList = [...info.fileList];
fileList = fileList.slice(-1);
fileList = fileList.map((file) => {
if (file.response) {
file.url = file.response.url;
}
return file;
});
this.fileList = fileList;
if (this.fileList.length) {
this.compileInfoForm.imgPath = this.fileList[0].url;
} else {
this.compileInfoForm.imgPath = "";
}
},
onChange(val) { onChange(val) {
console.log(val); console.log(val);
}, },
uploadChange(fileInfo) {
this.uploadInfo.fileList = deepClone(fileInfo.fileList);
},
Modal_Ok() { Modal_Ok() {
this.$refs.compileInfoForm.validate((valid) => { this.$refs.compileInfoForm.validate((valid) => {
if (valid) { if (valid) {
let submitObj = { menuSave(this.compileInfoForm).then((res) => {
name: this.compileInfoForm["name"],
url: this.compileInfoForm["url"],
parentId: this.compileInfoForm["parentId"],
linkType: this.compileInfoForm["linkType"],
imgPath: this.compileInfoForm["imgPath"],
buttonImgPath: this.compileInfoForm["buttonImgPath"],
imgCommPath: this.compileInfoForm["imgCommPath"],
visible: this.compileInfoForm["visible"],
menuType: this.compileInfoForm["menuType"],
status: this.compileInfoForm["status"],
authType: this.compileInfoForm["authType"],
orderId: this.compileInfoForm["orderId"],
createUserName: this.compileInfoForm["createUserName"],
remark: this.compileInfoForm["remark"],
};
submitObj = JSON.parse(JSON.stringify(submitObj)); //过滤空值
if (this.formTitle == "编辑") {
submitObj["id"] = this.compileInfoForm["id"];
}
// console.log(submitObj);
// 提交成功 重新拉取父组件table data
menuSave(submitObj).then((res) => {
// console.log(res);
if (res.code == 1) { if (res.code == 1) {
this.$emit("getMenuList"); this.$emit("getMenuList");
// this.$message.success(res.msg); this.$message.success(res.msg);
this.EditModalVisible = false; this.handleClose();
} }
}); });
} else {
this.$message.error(`请完善表单信息!`);
return false;
} }
}); });
}, },
resetForm() { resetForm() {
// 重置还原表单信息内容 // 重置还原表单信息内容
this.$set(this, "compileInfoForm", this.sourceInfoForm);
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.compileInfoForm.resetFields(); this.$refs.compileInfoForm.resetFields();
}); });
}, },
firstLevelChange(val) { // 新增
this.compileInfoForm["firstLevel"] = onAdd(type, parent) {
this.MenuDict.firstLevelOptions.filter((v) => v.id == val)[0]["name"]; Object.assign(this.compileInfoForm, this.$options.data().compileInfoForm);
this.compileInfoForm["firstLevel"]; this.compileInfoForm.id && this.$delete(this.compileInfoForm, "id");
}, this.compileInfoForm.menuType = type;
secondLevelChange(val) { this.compileInfoForm.parentId = parent;
this.compileInfoForm["secondLevel"] = console.log(this.compileInfoForm);
this.MenuDict.secondLevelOptions.filter((v) => v.id == val)[0]["name"];
this.compileInfoForm["secondLevel"];
}, },
thirdLevelChange(val) { // 编辑
this.compileInfoForm["thirdLevel"] = onEdit(row) {
this.MenuDict.thirdLevelOptions.filter((v) => v.id == val)[0]["name"]; this.compileInfoForm = { ...row };
this.fileList = [
{
uid: -1,
name: this.compileInfoForm.imgPath,
url: this.compileInfoForm.imgPath,
status: "done",
},
];
}, },
// 关闭弹窗 // 关闭弹窗
handleClose() { handleClose() {
this.EditModalVisible = false; this.fileList = [];
this.$refs.compileInfoForm.resetFields();
this.visible = false;
}, },
}, },
}; };
......
<template> <template>
<div class="menuMgmt"> <div class="menuMgmt">
<div class="header_box"> <div class="header_box">
<button class="add_btn" @click="showEditModal(1)"> <a-button type="primary" @click="showEditModal(1)">新增</a-button>
<span>新增</span>
</button>
<span> <span>
<a-input v-model="searchForm.name" placeholder="请输入菜单名称搜索"> <a-input v-model="searchForm.name" placeholder="请输入菜单名称搜索">
<a-icon slot="prefix" type="search" /> <a-icon slot="prefix" type="search" />
...@@ -29,6 +27,7 @@ ...@@ -29,6 +27,7 @@
:loading="tableLoading" :loading="tableLoading"
:columns="tableHeaders" :columns="tableHeaders"
:dataSource="menusTreeData" :dataSource="menusTreeData"
:expandIconColumnIndex="1"
> >
<!-- 序号 --> <!-- 序号 -->
<template slot="index" slot-scope="text, record, index"> <template slot="index" slot-scope="text, record, index">
...@@ -48,7 +47,7 @@ ...@@ -48,7 +47,7 @@
<!-- 操作 --> <!-- 操作 -->
<template slot="operation" slot-scope="text, record, index"> <template slot="operation" slot-scope="text, record, index">
<a-button <a-button
style="color: #8ae7d2" style="color: #03d76f"
type="link" type="link"
@click="showEditModal(2, record)" @click="showEditModal(2, record)"
>添加</a-button >添加</a-button
...@@ -66,9 +65,10 @@ ...@@ -66,9 +65,10 @@
</a-table> </a-table>
<addEdit <addEdit
ref="addEdit" ref="addEdit"
:sourceInfoForm="sourceInfoForm" :EditModalVisible.sync="EditModalVisible"
:formTitle="formTitle" :formTitle="formTitle"
:MenuDict="MenuDict" :MenuDict="MenuDict"
:MenuList="menusTreeData"
@getMenuList="getMenuList" @getMenuList="getMenuList"
/> />
</div> </div>
...@@ -76,7 +76,6 @@ ...@@ -76,7 +76,6 @@
</template> </template>
<script> <script>
import { deepClone } from "@/utils/js/common.js";
import { menuDelete, menuList } from "@/api/menuMgmt.js"; import { menuDelete, menuList } from "@/api/menuMgmt.js";
import addEdit from "./components/addEdit.vue"; import addEdit from "./components/addEdit.vue";
// import { version } from "vue"; // import { version } from "vue";
...@@ -87,9 +86,8 @@ export default { ...@@ -87,9 +86,8 @@ export default {
name: "PortalAdminVueMenuMgmt", name: "PortalAdminVueMenuMgmt",
data() { data() {
return { return {
api: process.env.VUE_APP_API_BASE_URL.includes("zwfw") api: process.env.VUE_APP_API_BASE_URL + "/",
? process.env.VUE_APP_API_BASE_URL.replace("zwfw", "") EditModalVisible: false,
: process.env.VUE_APP_API_BASE_URL + "/",
searchForm: { searchForm: {
name: undefined, name: undefined,
parentId: "", parentId: "",
...@@ -97,10 +95,6 @@ export default { ...@@ -97,10 +95,6 @@ export default {
tableLoading: false, tableLoading: false,
selectOptions: [], selectOptions: [],
tableHeaders: [ tableHeaders: [
{
width: "60px",
align: "center",
},
{ {
width: "60px", width: "60px",
title: "序号", title: "序号",
...@@ -112,27 +106,11 @@ export default { ...@@ -112,27 +106,11 @@ export default {
{ {
width: "150px", width: "150px",
title: "名称", title: "名称",
align: "center", align: "left",
dataIndex: "name", dataIndex: "name",
ellipsis: true, ellipsis: true,
}, },
// {
// title: "一级菜单",
// align: "center",
// dataIndex: "firstLevel",
// },
// {
// title: "二级菜单",
// align: "center",
// dataIndex: "secondLevel",
// },
// {
// title: "三级菜单",
// align: "center",
// dataIndex: "thirdLevel",
// },
{ {
title: "地址", title: "地址",
align: "center", align: "center",
...@@ -176,7 +154,7 @@ export default { ...@@ -176,7 +154,7 @@ export default {
defaultPageSize: 2000, defaultPageSize: 2000,
showTotal: (total, range) => `共${total}条`, showTotal: (total, range) => `共${total}条`,
}, },
MenuDict: [], MenuDict: {},
firstStair: [], // 一级菜单 firstStair: [], // 一级菜单
menusTreeData: [], // 菜单树形结构数据 menusTreeData: [], // 菜单树形结构数据
}; };
...@@ -189,20 +167,20 @@ export default { ...@@ -189,20 +167,20 @@ export default {
}, },
methods: { methods: {
// 对象转对象数组 // 对象转对象数组
transverter(obj) { // transverter(obj) {
return Object.keys(obj).map((v) => { // return Object.keys(obj).map((v) => {
return { // return {
id: v, // id: v,
name: obj[v], // name: obj[v],
}; // };
}); // });
}, // },
// 过滤菜单类型 // 过滤菜单类型
filterMenuType(val) { filterMenuType(val) {
let str = ""; let str = "";
this.MenuDict.forEach((v) => { Object.keys(this.MenuDict).forEach((key) => {
if (val == v.id) { if (val == key) {
str = v.name; str = this.MenuDict[key];
} }
}); });
return str; return str;
...@@ -232,10 +210,11 @@ export default { ...@@ -232,10 +210,11 @@ export default {
let { data, total, dict } = res.data; let { data, total, dict } = res.data;
let { menuType } = dict; let { menuType } = dict;
this.tablePagination.total = total; this.tablePagination.total = total;
this.MenuDict = this.transverter(menuType); this.MenuDict = menuType;
this.firstStair = data.filter((v) => v.parentId === -1); this.firstStair = data.filter((v) => v.parentId === -1);
let childrens = data.filter((v) => v.parentId !== -1); let childrens = data.filter((v) => v.parentId !== -1);
this.menusTreeData = this.fliterEvent(this.firstStair, childrens); this.menusTreeData = this.fliterEvent(this.firstStair, childrens);
console.log(this.MenuDict);
}, },
// 搜索 // 搜索
async searchData() { async searchData() {
...@@ -258,54 +237,17 @@ export default { ...@@ -258,54 +237,17 @@ export default {
this.getMenuList(); this.getMenuList();
}, },
showEditModal(type, row) { showEditModal(type, row) {
// type 1 新增根节点-1 , 2 在此节点创建,3,编辑
if (type === 1) { if (type === 1) {
let obj = {
parentId: -1, //默认创建根节点
name: undefined,
url: undefined,
linkType: undefined,
imgPath: undefined,
buttonImgPath: undefined,
imgCommPath: undefined,
visible: undefined,
menuType: undefined,
status: undefined,
authType: undefined,
orderId: undefined,
createUserName: undefined,
remark: "",
visible: 1,
status: 1,
};
this.sourceInfoForm = deepClone(obj);
this.formTitle = "新增"; this.formTitle = "新增";
this.$refs.addEdit.onAdd(0, -1);
} else if (type === 2) { } else if (type === 2) {
let obj = { this.formTitle = "新增子级菜单";
parentId: row.id, //父节点id this.$refs.addEdit.onAdd(1, row.id);
name: undefined, } else if (3) {
url: undefined,
linkType: undefined,
imgPath: undefined,
buttonImgPath: undefined,
imgCommPath: undefined,
visible: undefined,
menuType: undefined,
status: undefined,
authType: undefined,
orderId: undefined,
createUserName: undefined,
remark: "",
visible: 1,
status: 1,
};
this.sourceInfoForm = deepClone(obj);
this.formTitle = "添加";
} else if (type === 3) {
this.sourceInfoForm = deepClone(row);
this.formTitle = "编辑"; this.formTitle = "编辑";
this.$refs.addEdit.onEdit(row);
} }
this.$refs.addEdit.EditModalVisible = true; this.EditModalVisible = true;
}, },
//删除 //删除
deleteRole(row, index) { deleteRole(row, index) {
...@@ -324,7 +266,7 @@ export default { ...@@ -324,7 +266,7 @@ export default {
//重新获取table数据 //重新获取table数据
_this.$nextTick(() => { _this.$nextTick(() => {
_this.getMenuList(); _this.getMenuList();
// _this.$message.success(res.data.message); _this.$message.success(res.msg);
}); });
} }
}); });
...@@ -336,6 +278,9 @@ export default { ...@@ -336,6 +278,9 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
/deep/.ant-spin-container {
display: block;
}
.menuMgmt { .menuMgmt {
.header_box { .header_box {
padding-bottom: 1rem; padding-bottom: 1rem;
...@@ -394,22 +339,22 @@ export default { ...@@ -394,22 +339,22 @@ export default {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 21rem !important; width: 21rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 210px !important; width: 210px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -448,15 +393,12 @@ export default { ...@@ -448,15 +393,12 @@ export default {
.ant-table-row-indent { .ant-table-row-indent {
padding-left: 0 !important; padding-left: 0 !important;
} }
:deep(.ant-btn-link) { .ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) {
float: left !important;
}
} }
} }
</style> </style>
\ No newline at end of file
...@@ -209,6 +209,9 @@ export default { ...@@ -209,6 +209,9 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
/deep/.ant-spin-container {
display: block;
}
.authorityMis { .authorityMis {
.header_box { .header_box {
padding-bottom: 1rem; padding-bottom: 1rem;
...@@ -300,15 +303,12 @@ export default { ...@@ -300,15 +303,12 @@ export default {
} }
} }
.main { .main {
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) {
float: left !important;
}
} }
} }
</style> </style>
\ No newline at end of file
...@@ -133,8 +133,6 @@ export default { ...@@ -133,8 +133,6 @@ export default {
this.$emit("getRoleList"); this.$emit("getRoleList");
// this.$message.success(res.msg); // this.$message.success(res.msg);
this.roleEditModalVisible = false; this.roleEditModalVisible = false;
} else {
this.$message.error(res.msg);
} }
}); });
} else { } else {
......
...@@ -94,13 +94,13 @@ export default { ...@@ -94,13 +94,13 @@ export default {
} }
} }
} }
:deep().ant-checkbox-group { /deep/.ant-checkbox-group {
text-align: left !important; text-align: left !important;
} }
:deep().ant-modal-body { /deep/.ant-modal-body {
padding: 0 !important; padding: 0 !important;
} }
:deep().ant-checkbox + span { /deep/.ant-checkbox + span {
display: inline-block !important; display: inline-block !important;
max-width: 7.2rem !important; max-width: 7.2rem !important;
line-height: 12px !important; line-height: 12px !important;
...@@ -108,7 +108,7 @@ export default { ...@@ -108,7 +108,7 @@ export default {
text-overflow: ellipsis !important; text-overflow: ellipsis !important;
white-space: nowrap !important; white-space: nowrap !important;
} }
:deep().ant-checkbox + span { /deep/.ant-checkbox + span {
display: inline-block !important; display: inline-block !important;
width: 100% !important; width: 100% !important;
padding-right: 0px !important; padding-right: 0px !important;
......
...@@ -243,8 +243,6 @@ export default { ...@@ -243,8 +243,6 @@ export default {
// this.permsForm.menuIdList = this.getCheckedlist(data.menuIdList); // this.permsForm.menuIdList = this.getCheckedlist(data.menuIdList);
this.permsForm.menuIdList = data.menuIdList; this.permsForm.menuIdList = data.menuIdList;
// console.log(this.permsForm.menuIdList); // console.log(this.permsForm.menuIdList);
} else {
this.$message.error(res.msg);
} }
}); });
}, },
...@@ -350,23 +348,23 @@ export default { ...@@ -350,23 +348,23 @@ export default {
background: #f5f5f5; background: #f5f5f5;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
:deep(.ant-checkbox-wrapper) { /deep/.ant-checkbox-wrapper {
margin: 0 0 0.8rem; margin: 0 0 0.8rem;
} }
:deep(.ant-form) { /deep/.ant-form {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-col) { /deep/.ant-col {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-form-item-control) { /deep/.ant-form-item-control {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-form-item) { /deep/.ant-form-item {
height: 100% !important; height: 100% !important;
margin: 0px; margin: 0px;
} }
:deep(.ant-checkbox-group) { /deep/.ant-checkbox-group {
width: 100% !important; width: 100% !important;
height: 100% !important; height: 100% !important;
} }
...@@ -475,7 +473,7 @@ export default { ...@@ -475,7 +473,7 @@ export default {
} }
} }
} }
:deep(.ant-card) { /deep/.ant-card {
height: 100% !important; height: 100% !important;
display: flex !important; display: flex !important;
flex-direction: column !important; flex-direction: column !important;
......
...@@ -274,6 +274,9 @@ export default { ...@@ -274,6 +274,9 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
/deep/.ant-spin-container {
display: block;
}
.user { .user {
.user_btn { .user_btn {
display: flex; display: flex;
...@@ -284,16 +287,16 @@ export default { ...@@ -284,16 +287,16 @@ export default {
.tab { .tab {
margin-top: 20px; margin-top: 20px;
:deep(.ant-table-thead) > tr > th { /deep/.ant-table-thead > tr > th {
text-align: center; text-align: center;
} }
:deep(.ant-table) table { /deep/.ant-table table {
text-align: center; text-align: center;
} }
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
......
...@@ -261,22 +261,22 @@ export default { ...@@ -261,22 +261,22 @@ export default {
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 15rem !important; width: 15rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -328,13 +328,13 @@ export default { ...@@ -328,13 +328,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -408,7 +408,7 @@ export default { ...@@ -408,7 +408,7 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
:deep(.ant-drawer-content) { /deep/.ant-drawer-content {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
.drawer_footer { .drawer_footer {
...@@ -432,10 +432,10 @@ export default { ...@@ -432,10 +432,10 @@ export default {
text-align: center; text-align: center;
padding-top: 10px; padding-top: 10px;
} }
:deep(.ant-drawer-body) { /deep/.ant-drawer-body {
margin-bottom: 100px; margin-bottom: 100px;
} }
:deep(.ant-radio-group) { /deep/.ant-radio-group {
margin-bottom: 10px !important; margin-bottom: 10px !important;
} }
</style> </style>
......
...@@ -213,22 +213,22 @@ export default { ...@@ -213,22 +213,22 @@ export default {
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 15rem !important; width: 15rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -280,13 +280,13 @@ export default { ...@@ -280,13 +280,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -203,22 +203,22 @@ export default { ...@@ -203,22 +203,22 @@ export default {
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
:deep(.ant-input-affix-wrapper) { /deep/.ant-input-affix-wrapper {
width: 15rem !important; width: 15rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-input) { /deep/.ant-input {
height: 2.3rem !important; height: 2.3rem !important;
} }
:deep(.ant-select-selection) { /deep/.ant-select-selection {
width: 170px !important; width: 170px !important;
height: 2.3rem !important; height: 2.3rem !important;
margin-right: 1rem !important; margin-right: 1rem !important;
} }
:deep(.ant-select-selection__rendered) { /deep/.ant-select-selection__rendered {
height: 100% !important; height: 100% !important;
} }
:deep(.ant-select-selection)-selected-value { /deep/.ant-select-selection-selected-value {
height: 100% !important; height: 100% !important;
line-height: 2.3rem !important; line-height: 2.3rem !important;
} }
...@@ -270,13 +270,13 @@ export default { ...@@ -270,13 +270,13 @@ export default {
.type2 { .type2 {
color: #04ca8f; color: #04ca8f;
} }
:deep(.ant-btn-link) { /deep/.ant-btn-link {
padding: 0 !important; padding: 0 !important;
& + :deep(.ant-btn-link) { & + .ant-btn-link {
margin-left: 1rem !important; margin-left: 1rem !important;
} }
} }
/dee/ :deep(.ant-table-pagination) { /deep/.ant-table-pagination {
float: left !important; float: left !important;
} }
} }
......
...@@ -128,7 +128,7 @@ export default { ...@@ -128,7 +128,7 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
} }
:deep(.ant-input) { /deep/.ant-input {
width: 30rem !important; width: 30rem !important;
margin-right: 2rem; margin-right: 2rem;
height: 3rem !important; height: 3rem !important;
......
...@@ -12,9 +12,16 @@ ...@@ -12,9 +12,16 @@
> >
<div class="pla_max"> <div class="pla_max">
<div class="pla_min"> <div class="pla_min">
<img :src="api + v.imgPath" alt /> <img
<p>{{ v.name }}</p> :src="
<span>{{ v.remark }}</span> v.imgPath
? api + v.imgPath
: require('../../assets/images/RBAC.png')
"
alt
/>
<p class="name">{{ v.name }}</p>
<p class="remark">{{ v.remark }}</p>
</div> </div>
</div> </div>
</a-card-grid> </a-card-grid>
...@@ -123,17 +130,21 @@ export default { ...@@ -123,17 +130,21 @@ export default {
height: 43px; height: 43px;
} }
p { .name {
font-weight: 700; font-weight: 700;
font-size: 20px; font-size: 20px;
color: #000333; color: #000333;
margin-top: 20px; margin-top: 20px;
margin-bottom: 15px; margin-bottom: 15px;
} }
span { .remark {
font-weight: 400; font-weight: 400;
font-size: 14px; font-size: 14px;
color: #666666; color: #666666;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
} }
} }
} }
......
...@@ -22,7 +22,6 @@ ...@@ -22,7 +22,6 @@
</activation> </activation>
<properties> <properties>
<profiles.active>develop</profiles.active> <profiles.active>develop</profiles.active>
<profiles.server.port>17212</profiles.server.port>
<profiles.queue.type>rabbitmq</profiles.queue.type> <profiles.queue.type>rabbitmq</profiles.queue.type>
<profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host> <profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host>
<profiles.rabbitmq.port>5672</profiles.rabbitmq.port> <profiles.rabbitmq.port>5672</profiles.rabbitmq.port>
...@@ -42,10 +41,6 @@ ...@@ -42,10 +41,6 @@
<id>test</id> <id>test</id>
<properties> <properties>
<profiles.active>test</profiles.active> <profiles.active>test</profiles.active>
<profiles.server.ip>192.168.0.98</profiles.server.ip>
<profiles.server.port>17212</profiles.server.port>
<profiles.nginx.port>11072</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/zwfw</profiles.server.path> <profiles.server.path>/zwfw</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>192.168.0.98</profiles.rabbitmq.host> <profiles.rabbitmq.host>192.168.0.98</profiles.rabbitmq.host>
...@@ -57,7 +52,7 @@ ...@@ -57,7 +52,7 @@
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group> <profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace> <profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.log.level>INFO</profiles.log.level> <profiles.log.level>INFO</profiles.log.level>
<profiles.log.path>/mortals/app/logs</profiles.log.path> <profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<package.environment>test</package.environment> <package.environment>test</package.environment>
<skipDeploy>false</skipDeploy> <skipDeploy>false</skipDeploy>
</properties> </properties>
...@@ -66,10 +61,6 @@ ...@@ -66,10 +61,6 @@
<id>product</id> <id>product</id>
<properties> <properties>
<profiles.active>product</profiles.active> <profiles.active>product</profiles.active>
<profiles.server.ip>192.168.0.251</profiles.server.ip>
<profiles.server.port>17212</profiles.server.port>
<profiles.nginx.port>11072</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/zwfw</profiles.server.path> <profiles.server.path>/zwfw</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host> <profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host>
...@@ -91,10 +82,6 @@ ...@@ -91,10 +82,6 @@
<id>yibin</id> <id>yibin</id>
<properties> <properties>
<profiles.active>yibin</profiles.active> <profiles.active>yibin</profiles.active>
<profiles.server.ip>192.168.2.144</profiles.server.ip>
<profiles.server.port>17212</profiles.server.port>
<profiles.nginx.port>11072</profiles.nginx.port>
<profiles.server.gatewayport>11078</profiles.server.gatewayport>
<profiles.server.path>/zwfw</profiles.server.path> <profiles.server.path>/zwfw</profiles.server.path>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host> <profiles.rabbitmq.host>127.0.0.1</profiles.rabbitmq.host>
...@@ -106,7 +93,7 @@ ...@@ -106,7 +93,7 @@
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group> <profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace> <profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.log.level>INFO</profiles.log.level> <profiles.log.level>INFO</profiles.log.level>
<profiles.log.path>/mortals/app/logs</profiles.log.path> <profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<package.environment>yibin</package.environment> <package.environment>yibin</package.environment>
<skipDeploy>false</skipDeploy> <skipDeploy>false</skipDeploy>
</properties> </properties>
......
...@@ -10,40 +10,19 @@ LOCK_FILE="/tmp/deploy.lock" ...@@ -10,40 +10,19 @@ LOCK_FILE="/tmp/deploy.lock"
# 时间变量 # 时间变量
CDATE=$(date "+%Y-%m-%d") CDATE=$(date "+%Y-%m-%d")
CTIME=$(date "+%H:%M:%S") CTIME=$(date "+%H:%M:%S")
PUBLISH_PATH="@profiles.publish.path@"
PROJECT_NAME="@project.artifactId@"
IP="@profiles.server.ip@"
PORT="@profiles.server.port@"
GATEWAY_PORT="@profiles.server.gatewayport@"
SHELL_LOG="${BASEDIR}/${SHELL_NAME}.log" SHELL_LOG="${BASEDIR}/${SHELL_NAME}.log"
MYSQL_HOST="127.0.0.1"
MYSQL_PORT="3306"
MYSQL_USER="root"
MYSQL_PASSWORD="xhx@2022"
SERVICE_PATH="/usr/lib/systemd/system"
JAVA_HOME="/usr/local/java/jdk1.8" JAVA_HOME="/usr/local/java/jdk1.8"
SERVICE_PATH="/usr/lib/systemd/system"
PUBLISH_PATH="@profiles.publish.path@"
PROJECT_NAME="@project.artifactId@"
NGINX_CONF_PATH="/etc/nginx/conf.d/"
NGINX_PORT="@profiles.nginx.port@"
NGINX_SERVER_PATH="@profiles.server.path@"
PROJECT_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}" PROJECT_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}"
PROJECT_UI_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}-ui/dist" PROJECT_UI_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}-ui/dist"
PROJECT_FILENAME="${PROJECT_NAME}.tar.gz" PROJECT_FILENAME="${PROJECT_NAME}.tar.gz"
PROJECT_UI_FILENAME="${PROJECT_NAME}-ui.tar.gz" PROJECT_UI_FILENAME="${PROJECT_NAME}-ui.tar.gz"
PROJECT_SERVICE="${SERVICE_PATH}/${PROJECT_NAME}.service" PROJECT_SERVICE="${SERVICE_PATH}/${PROJECT_NAME}.service"
PROJECT_NGINX_CONF="${NGINX_CONF_PATH}/${PROJECT_NAME}.conf"
#加锁
shell_lock() {
touch ${LOCK_FILE}
}
#删除锁
shell_unlock() {
rm -f ${LOCK_FILE}
}
#写日志 #写日志
writelog() { writelog() {
LOGINFO=$1 LOGINFO=$1
...@@ -59,9 +38,6 @@ clear_deploy() { ...@@ -59,9 +38,6 @@ clear_deploy() {
rm -rf ${SERVICE} rm -rf ${SERVICE}
#清理执行文件目录 #清理执行文件目录
rm -rf ${EXECPATH} rm -rf ${EXECPATH}
#清理nginx服务配置文件
rm -f ${NGINX_CONF_PATH}/${PROJECT_NAME}.conf
mkdir -p ${EXECPATH}
} }
#清理ui #清理ui
...@@ -91,62 +67,14 @@ build_service() { ...@@ -91,62 +67,14 @@ build_service() {
writelog "${PROJECT_NAME}服务创建完成!" writelog "${PROJECT_NAME}服务创建完成!"
} }
build_nginx() {
echo "server{
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
#gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary off;
gzip_disable \"MSIE [1-6]\.\";
listen ${NGINX_PORT};
#server_name localhost;
location / {
root ${PROJECT_UI_EXECPATH};
index index.html index.htm;
}
location ${NGINX_SERVER_PATH}/ {
proxy_pass http://${IP}:${GATEWAY_PORT};
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
}
location /doc/ {
root ${PROJECT_EXECPATH};
index api.html;
}
location /file/fileupload/ {
alias /mortals/app/data/file/fileupload/;
autoindex on;
autoindex_exact_size off;
}
location /file/uploadfile/ {
alias /mortals/app/data/file/uploadfile/;
autoindex on;
autoindex_exact_size off;
}
location /file/preview/ {
alias /mortals/app/data/file/preview/;
autoindex on;
autoindex_exact_size off;
}
}
" >${PROJECT_NGINX_CONF}
}
#启动服务与nginx #启动服务与nginx
start_service_and_nginx() { start_service() {
writelog "${PROJECT_NAME}服务启动..."
systemctl enable ${PROJECT_NAME} systemctl enable ${PROJECT_NAME}
systemctl daemon-reload systemctl daemon-reload
writelog "${PROJECT_NAME}服务启动..."
systemctl stop ${PROJECT_NAME} && systemctl start ${PROJECT_NAME} systemctl stop ${PROJECT_NAME} && systemctl start ${PROJECT_NAME}
project_status=$(systemctl status "${PROJECT_NAME}" | grep Active | awk '{print $2}') project_status=$(systemctl status "${PROJECT_NAME}"|grep Active |awk '{print $2}')
nginx -t
nginx -s reload
jcpid=$(ps -ef | grep -v "grep" | grep "${PROJECT_NAME} " | awk '{print $2}') jcpid=$(ps -ef | grep -v "grep" | grep "${PROJECT_NAME} " | awk '{print $2}')
writelog "${PROJECT_NAME}服务启动,PID is ${jcpid} ,status:${project_status}" writelog "${PROJECT_NAME}服务启动,PID is ${jcpid} ,status:${project_status}"
} }
...@@ -155,11 +83,9 @@ project_deploy() { ...@@ -155,11 +83,9 @@ project_deploy() {
writelog "${PROJECT_NAME}_deploy" writelog "${PROJECT_NAME}_deploy"
clear_deploy ${PROJECT_SERVICE} ${PROJECT_EXECPATH} clear_deploy ${PROJECT_SERVICE} ${PROJECT_EXECPATH}
writelog "${PROJECT_NAME}_clear_finish" writelog "${PROJECT_NAME}_clear_finish"
tar -zvxf ./${PROJECT_FILENAME} -C ${PUBLISH_PATH} tar -zvxf ./${PROJECT_FILENAME} -C ${PUBLISH_PATH}
build_service ${PROJECT_SERVICE} ${PROJECT_EXECPATH} build_service
build_nginx start_service
start_service_and_nginx
writelog "${PROJECT_NAME}_deploy_finish" writelog "${PROJECT_NAME}_deploy_finish"
} }
...@@ -169,13 +95,7 @@ project_ui_deploy() { ...@@ -169,13 +95,7 @@ project_ui_deploy() {
clear_ui_deploy ${PROJECT_UI_EXECPATH} clear_ui_deploy ${PROJECT_UI_EXECPATH}
tar -zvxf ./${PROJECT_UI_FILENAME} -C ${PUBLISH_PATH} tar -zvxf ./${PROJECT_UI_FILENAME} -C ${PUBLISH_PATH}
writelog "${PROJECT_NAME}_ui_deploy_finish" writelog "${PROJECT_NAME}_ui_deploy_finish"
}
init_db() {
writelog "${PROJECT_NAME}_db_init"
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${EXECPATH}/db/db.sql
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${EXECPATH}/db/menu.sql
writelog "${PROJECT_NAME}_db_init"
} }
#主函数 #主函数
...@@ -187,32 +107,4 @@ main() { ...@@ -187,32 +107,4 @@ main() {
exit ${RETVAL} exit ${RETVAL}
} }
init_params(){
#获取参数
while getopts h:P:u:p opt; do
case $opt in
h)
#echo "-mysql-host ---- $OPTARG"
MYSQL_HOST=$OPTARG
;;
P)
#echo "-mysql-port ---- $OPTARG"
MYSQL_PORT=$OPTARG
;;
u)
#echo "-mysql-user ---- $OPTARG"
MYSQL_USER=$OPTARG
;;
p)
#echo "-mysql-password ---- $OPTARG"
MYSQL_PASSWORD=$OPTARG
;;
?)
echo "$opt is an invalid option"
;;
esac
done
}
main $1 main $1
...@@ -10,34 +10,19 @@ LOCK_FILE="/tmp/deploy.lock" ...@@ -10,34 +10,19 @@ LOCK_FILE="/tmp/deploy.lock"
# 时间变量 # 时间变量
CDATE=$(date "+%Y-%m-%d") CDATE=$(date "+%Y-%m-%d")
CTIME=$(date "+%H:%M:%S") CTIME=$(date "+%H:%M:%S")
PUBLISH_PATH="@profiles.publish.path@"
PROJECT_NAME="@project.artifactId@"
IP="@profiles.server.ip@"
PORT="@profiles.server.port@"
SHELL_LOG="${BASEDIR}/${SHELL_NAME}.log" SHELL_LOG="${BASEDIR}/${SHELL_NAME}.log"
SERVICE_PATH="/usr/lib/systemd/system"
JAVA_HOME="/usr/local/java/jdk1.8" JAVA_HOME="/usr/local/java/jdk1.8"
SERVICE_PATH="/usr/lib/systemd/system"
PUBLISH_PATH="@profiles.publish.path@"
PROJECT_NAME="@project.artifactId@"
NGINX_CONF_PATH="/etc/nginx/conf.d/"
NGINX_PORT="@profiles.nginx.port@"
NGINX_SERVER_PATH="@profiles.server.path@"
PROJECT_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}" PROJECT_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}"
PROJECT_UI_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}-ui" PROJECT_UI_EXECPATH="${PUBLISH_PATH}/${PROJECT_NAME}-ui/dist"
PROJECT_FILENAME="${PROJECT_NAME}.tar.gz" PROJECT_FILENAME="${PROJECT_NAME}.tar.gz"
PROJECT_UI_FILENAME="${PROJECT_NAME}-ui.tar.gz" PROJECT_UI_FILENAME="${PROJECT_NAME}-ui.tar.gz"
PROJECT_SERVICE="${SERVICE_PATH}/${PROJECT_NAME}.service" PROJECT_SERVICE="${SERVICE_PATH}/${PROJECT_NAME}.service"
PROJECT_NGINX_CONF="${NGINX_CONF_PATH}/${PROJECT_NAME}.conf"
#加锁
shell_lock() {
touch ${LOCK_FILE}
}
#删除锁
shell_unlock() {
rm -f ${LOCK_FILE}
}
#写日志 #写日志
writelog() { writelog() {
LOGINFO=$1 LOGINFO=$1
...@@ -53,16 +38,6 @@ clear_deploy() { ...@@ -53,16 +38,6 @@ clear_deploy() {
rm -rf ${SERVICE} rm -rf ${SERVICE}
#清理执行文件目录 #清理执行文件目录
rm -rf ${EXECPATH} rm -rf ${EXECPATH}
#清理nginx服务配置文件
rm -f ${NGINX_CONF_PATH}/${PROJECT_NAME}.conf
mkdir -p ${EXECPATH}
}
#清理ui
clear_ui_deploy() {
EXEC_UI_PATH=$1
rm -rf ${EXEC_UI_PATH}
mkdir -p ${EXEC_UI_PATH}
} }
build_service() { build_service() {
...@@ -85,59 +60,14 @@ build_service() { ...@@ -85,59 +60,14 @@ build_service() {
writelog "${PROJECT_NAME}服务创建完成!" writelog "${PROJECT_NAME}服务创建完成!"
} }
build_nginx() {
echo "server{
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
#gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary off;
gzip_disable \"MSIE [1-6]\.\";
listen ${NGINX_PORT};
#server_name localhost;
location / {
proxy_pass http://${IP}:${PORT};
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
}
location /homeDeviceUrl/ {
alias /home/publish/device-manager-ui/homeDeviceUrl/;
index index.html index.htm;
}
location /file/fileupload/ {
alias /mortals/app/data/file/fileupload/;
autoindex on;
autoindex_exact_size off;
}
location /file/uploadfile/ {
alias /mortals/app/data/file/uploadfile/;
autoindex on;
autoindex_exact_size off;
}
location /file/preview/ {
alias /mortals/app/data/file/preview/;
autoindex on;
autoindex_exact_size off;
}
}
" >${PROJECT_NGINX_CONF}
}
#启动服务与nginx #启动服务与nginx
start_service_and_nginx() { start_service() {
writelog "${PROJECT_NAME}服务启动..."
systemctl enable ${PROJECT_NAME} systemctl enable ${PROJECT_NAME}
systemctl daemon-reload systemctl daemon-reload
writelog "${PROJECT_NAME}服务启动..."
systemctl stop ${PROJECT_NAME} && systemctl start ${PROJECT_NAME} systemctl stop ${PROJECT_NAME} && systemctl start ${PROJECT_NAME}
project_status=$(systemctl status "${PROJECT_NAME}"|grep Active |awk '{print $2}') project_status=$(systemctl status "${PROJECT_NAME}"|grep Active |awk '{print $2}')
nginx -t
nginx -s reload
jcpid=$(ps -ef | grep -v "grep" | grep "${PROJECT_NAME} " | awk '{print $2}') jcpid=$(ps -ef | grep -v "grep" | grep "${PROJECT_NAME} " | awk '{print $2}')
writelog "${PROJECT_NAME}服务启动,PID is ${jcpid} ,status:${project_status}" writelog "${PROJECT_NAME}服务启动,PID is ${jcpid} ,status:${project_status}"
} }
...@@ -146,19 +76,12 @@ project_deploy() { ...@@ -146,19 +76,12 @@ project_deploy() {
writelog "${PROJECT_NAME}_deploy" writelog "${PROJECT_NAME}_deploy"
clear_deploy ${PROJECT_SERVICE} ${PROJECT_EXECPATH} clear_deploy ${PROJECT_SERVICE} ${PROJECT_EXECPATH}
writelog "${PROJECT_NAME}_clear_finish" writelog "${PROJECT_NAME}_clear_finish"
tar -zvxf ./${PROJECT_FILENAME} -C ${PUBLISH_PATH} tar -zvxf ./${PROJECT_FILENAME} -C ${PUBLISH_PATH}
build_service ${PROJECT_SERVICE} ${PROJECT_EXECPATH} start_service
writelog "${PROJECT_NAME}_deploy_build_nginx"
build_nginx
writelog "${PROJECT_NAME}_deploy_build_nginx_finish"
writelog "${PROJECT_NAME}_deploy_build_service_finish"
start_service_and_nginx
writelog "${PROJECT_NAME}_deploy_finish" writelog "${PROJECT_NAME}_deploy_finish"
} }
#主函数 #主函数
main() { main() {
echo "后台服务部署" echo "后台服务部署"
......
...@@ -11,7 +11,7 @@ import javax.servlet.http.HttpServletResponse; ...@@ -11,7 +11,7 @@ import javax.servlet.http.HttpServletResponse;
* @date: 2022/6/6 15:05 * @date: 2022/6/6 15:05
* @description:添加跨域响应 * @description:添加跨域响应
**/ **/
//@Component @Component
public class CrossInterceptor extends HandlerInterceptorAdapter { public class CrossInterceptor extends HandlerInterceptorAdapter {
@Override @Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment