From 270886a3abfddb91348eda4dd5cd6c9dc707705d Mon Sep 17 00:00:00 2001 From: Sh1yu <41428433@qq.com> Date: Thu, 15 Jun 2023 15:48:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A8=A1=E5=9D=97=E5=8C=96?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD=EF=BC=8C=E5=8F=AF=E4=BB=A5=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E6=8E=A7=E5=88=B6=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E5=93=AA=E4=BA=9B=E6=A8=A1=E5=9D=97=EF=BC=8C=E5=90=8C?= =?UTF-8?q?=E6=97=B6=E5=89=8D=E7=AB=AF=E6=9C=89=E5=AF=B9=E5=BA=94=E6=98=BE?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zyplayer/doc/manage/Application.java | 7 +- .../manage/framework/config/WebMvcConfig.java | 7 ++ .../framework/config/ZyplayerDocConfig.java | 79 ++++++++++++++++--- .../interceptor/MoudleMissingInterceptor.java | 50 ++++++++++++ .../doc/manage/web/SystemInfoController.java | 25 ++++-- .../src/main/resources/application.yml | 7 ++ .../src/main/resources/dist/doc-console.html | 2 +- .../main/resources/dist/js/index.38f10493.js | 1 - .../main/resources/dist/js/index.8c8d6867.js | 1 + .../console-ui/src/common/api/system.js | 3 + .../console-ui/src/views/home/Home.vue | 27 ++++++- 11 files changed, 185 insertions(+), 24 deletions(-) create mode 100644 zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/interceptor/MoudleMissingInterceptor.java delete mode 100644 zyplayer-doc-manage/src/main/resources/dist/js/index.38f10493.js create mode 100644 zyplayer-doc-manage/src/main/resources/dist/js/index.8c8d6867.js diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java index 9a4d00fa..c3ad2ec5 100644 --- a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java +++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java @@ -22,11 +22,16 @@ import java.util.Optional; * 程序启动器 * * @author 暮光:城中城 + * @author Sh1yu 2023年6月15日 * @since 2018-11-27 */ @EnableScheduling @SpringBootApplication -@ComponentScan(basePackages = {"com.zyplayer.doc"}) +@ComponentScan(basePackages = { + "com.zyplayer.doc.manage", + "com.zyplayer.doc.data", + "com.zyplayer.doc.core" +}) public class Application extends SpringBootServletInitializer { private static Logger logger = LoggerFactory.getLogger(Application.class); diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/WebMvcConfig.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/WebMvcConfig.java index b446d483..b4ac96de 100644 --- a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/WebMvcConfig.java +++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/WebMvcConfig.java @@ -3,6 +3,7 @@ package com.zyplayer.doc.manage.framework.config; import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; +import com.zyplayer.doc.manage.framework.interceptor.MoudleMissingInterceptor; import com.zyplayer.doc.manage.framework.interceptor.UserLoginInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -24,6 +25,7 @@ import java.util.List; * WEB控制相关配置 * * @author 暮光:城中城 + * @author Sh1yu 2023年6月15日 * @since 2018年11月27日 */ @Component @@ -32,6 +34,8 @@ public class WebMvcConfig implements WebMvcConfigurer { @Resource UserLoginInterceptor userLoginInterceptor; + @Resource + MoudleMissingInterceptor moudleMissingInterceptor; @Override public void addFormatters(FormatterRegistry registry) { @@ -65,6 +69,9 @@ public class WebMvcConfig implements WebMvcConfigurer { registry.addInterceptor(userLoginInterceptor) .excludePathPatterns("/", "/doc-wiki", "/doc-db", "/doc-swagger-plus") .excludePathPatterns("/**/*.js", "/**/*.css", "/**/*.png", "/**/*.gif", "/**/*.jpg", "/**/*.jpeg", "/**/fonts/*"); + registry.addInterceptor(moudleMissingInterceptor) + .excludePathPatterns("/", "/doc-wiki", "/doc-db", "/doc-swagger-plus") + .excludePathPatterns("/**/*.js", "/**/*.css", "/**/*.png", "/**/*.gif", "/**/*.jpg", "/**/*.jpeg", "/**/fonts/*"); } } diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/ZyplayerDocConfig.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/ZyplayerDocConfig.java index f60e21c9..798a9921 100644 --- a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/ZyplayerDocConfig.java +++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/ZyplayerDocConfig.java @@ -3,26 +3,81 @@ package com.zyplayer.doc.manage.framework.config; import com.zyplayer.doc.api.framework.config.EnableDocApi; import com.zyplayer.doc.db.framework.configuration.EnableDocDb; import com.zyplayer.doc.wiki.framework.config.EnableDocWiki; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Configuration; +import java.util.HashMap; + /** * 按需开启zyplayer-doc所有的服务 * * @author 暮光:城中城 + * @author Sh1yu 2023年6月15日 * @since 2019年3月31日 */ @Configuration public class ZyplayerDocConfig { - - @EnableDocWiki - public class enableDocWiki { - } - - @EnableDocDb - public class enableDocDb { - } - - @EnableDocApi - public class enableDocApi { - } + //wiki模块的开启配置 + @Value("${zyplayer.doc.manage.enable.wiki:true}") + private boolean enableWiki; + + //db模块的开启配置 + @Value("${zyplayer.doc.manage.enable.db:true}") + private boolean enableDb; + + //api模块的开启配置 + @Value("${zyplayer.doc.manage.enable.api:true}") + private boolean enableApi; + + @EnableDocWiki + //wiki模块加载注解条件化,配合配置文件决定是否加载 + @ConditionalOnProperty(prefix = "zyplayer.doc.manage.enable", name = "wiki", matchIfMissing = true) + public class enableDocWiki { + } + + @EnableDocDb + //db模块加载注解条件化,配合配置文件决定是否加载 + @ConditionalOnProperty(prefix = "zyplayer.doc.manage.enable", name = "db", matchIfMissing = true) + public class enableDocDb { + } + + @EnableDocApi + //api模块加载注解条件化,配合配置文件决定是否加载 + @ConditionalOnProperty(prefix = "zyplayer.doc.manage.enable", name = "api", matchIfMissing = true) + public class enableDocApi { + } + + public boolean isEnableWiki() { + return enableWiki; + } + + public void setEnableWiki(boolean enableWiki) { + this.enableWiki = enableWiki; + } + + public boolean isEnableDb() { + return enableDb; + } + + public void setEnableDb(boolean enableDb) { + this.enableDb = enableDb; + } + + public boolean isEnableApi() { + return enableApi; + } + + public void setEnableApi(boolean enableApi) { + this.enableApi = enableApi; + } + + //提供模块开启状态数组,给前端控制页面展示 + public HashMap getMoudleInfo(){ + HashMap moudleInfo = new HashMap<>(); + moudleInfo.put("enableWiki",this.enableWiki); + moudleInfo.put("enableDb",this.enableDb); + moudleInfo.put("enableApi",this.enableApi); + return moudleInfo; + } } diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/interceptor/MoudleMissingInterceptor.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/interceptor/MoudleMissingInterceptor.java new file mode 100644 index 00000000..93e1c79f --- /dev/null +++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/interceptor/MoudleMissingInterceptor.java @@ -0,0 +1,50 @@ +package com.zyplayer.doc.manage.framework.interceptor; + +import com.zyplayer.doc.core.json.DocResponseJson; +import com.zyplayer.doc.manage.framework.config.ZyplayerDocConfig; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * 模块未开启时判定失败响应拦截器 + * + * @author Sh1yu + * @since 2023年6月15日 + */ +@Component +public class MoudleMissingInterceptor implements HandlerInterceptor { + private static final Logger logger = LoggerFactory.getLogger(MoudleMissingInterceptor.class); + + @Resource + ZyplayerDocConfig zyplayerDocConfig; + + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) { + String requestURI = request.getRequestURI(); + String simpleMoudleUri = requestURI.replace("/zyplayer-doc/", ""); + if (simpleMoudleUri.startsWith("zyplayer-doc-wiki") && !zyplayerDocConfig.isEnableWiki()) { + doFailResponse(response, "wiki模块未启动,无法提供相应功能"); + return false; + } + if (simpleMoudleUri.startsWith("zyplayer-doc-db") && !zyplayerDocConfig.isEnableDb()) { + doFailResponse(response, "db模块未启动,无法提供相应功能"); + return false; + } + if (simpleMoudleUri.startsWith("zyplayer-doc-api") && !zyplayerDocConfig.isEnableApi()) { + doFailResponse(response, "api模块未启动,无法提供相应功能"); + return false; + } + return true; + } + + public void doFailResponse(HttpServletResponse response, String msg) { + DocResponseJson.warn(msg).send(response); + } + +} diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/SystemInfoController.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/SystemInfoController.java index c0f2bea0..9651ba75 100644 --- a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/SystemInfoController.java +++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/SystemInfoController.java @@ -2,24 +2,37 @@ package com.zyplayer.doc.manage.web; import com.zyplayer.doc.core.json.DocResponseJson; import com.zyplayer.doc.core.json.ResponseJson; +import com.zyplayer.doc.manage.framework.config.ZyplayerDocConfig; import com.zyplayer.doc.manage.task.UpgradeUtil; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import javax.annotation.Resource; + /** * 系统信息控制器 * * @author 暮光:城中城 + * @author Sh1yu 2023年6月15日 * @since 2019-04-21 */ @RestController @RequestMapping("/system/info") public class SystemInfoController { - - @PostMapping("/upgrade") - public ResponseJson upgradeInfo() { - return DocResponseJson.ok(UpgradeUtil.upgradeInfo); - } - + + @Resource + ZyplayerDocConfig zyplayerDocConfig; + + @PostMapping("/upgrade") + public ResponseJson upgradeInfo() { + return DocResponseJson.ok(UpgradeUtil.upgradeInfo); + } + + @GetMapping("/moudle") + public ResponseJson moudleInfo() { + return DocResponseJson.ok(zyplayerDocConfig.getMoudleInfo()); + } + } diff --git a/zyplayer-doc-manage/src/main/resources/application.yml b/zyplayer-doc-manage/src/main/resources/application.yml index 7f92efad..6d7093df 100644 --- a/zyplayer-doc-manage/src/main/resources/application.yml +++ b/zyplayer-doc-manage/src/main/resources/application.yml @@ -10,6 +10,13 @@ zyplayer: doc: # ------zyplayer_doc_manage相关配置------ manage: + enable: + #wiki模块的是否加载,没有此配置也为true,只有填写false才是不加载 + wiki: true + #db模块的是否加载,没有此配置也为true,只有填写false才是不加载 + db: true + #api模块的是否加载,没有此配置也为true,只有填写false才是不加载 + api: true # 版本和升级信息获取地址 upgradePropertiesUrl: https://gitee.com/zyplayer/zyplayer-doc/raw/master/upgrade.properties # 系统根域名,调试UI时需要使用,同时需要在host文件里配置:127.0.0.1 local.zyplayer.com diff --git a/zyplayer-doc-manage/src/main/resources/dist/doc-console.html b/zyplayer-doc-manage/src/main/resources/dist/doc-console.html index 446a8f5d..159677f6 100644 --- a/zyplayer-doc-manage/src/main/resources/dist/doc-console.html +++ b/zyplayer-doc-manage/src/main/resources/dist/doc-console.html @@ -1 +1 @@ -文档管理系统
\ No newline at end of file +文档管理系统
\ No newline at end of file diff --git a/zyplayer-doc-manage/src/main/resources/dist/js/index.38f10493.js b/zyplayer-doc-manage/src/main/resources/dist/js/index.38f10493.js deleted file mode 100644 index b197e440..00000000 --- a/zyplayer-doc-manage/src/main/resources/dist/js/index.38f10493.js +++ /dev/null @@ -1 +0,0 @@ -(function(e){function t(t){for(var r,o,n=t[0],l=t[1],u=t[2],d=0,p=[];d1e3&&(Me.$message.error("请先登录"),f=(new Date).getTime());var t="",a=window.location.href;if(a.indexOf("?")>=0){var r=new RegExp("(^|&)redirect=([^&]*)(&|$)","i"),s=a.substring(a.indexOf("?")+1).match(r);null!=s&&(t=unescape(s[2]))}t=t||encodeURIComponent(window.location.href),Me.$router.push({path:"/user/login",query:{redirect:t}})}else 402==e.data.errCode?Me.$router.push("/common/noAuth"):200!==e.data.errCode&&Me.$message.error(e.data.errMsg||"未知错误")}return Promise.reject("请求错误")}),(function(e){return console.log("err"+e),Me.$message.info("请求错误:"+e.message),Promise.reject(e)}));var h=p,g={userLogin:function(e){return h({url:"/login",method:"post",data:u.a.stringify(e)})},userLogout:function(e){return h({url:"/logout",method:"post",data:u.a.stringify(e)})},getSelfUserInfo:function(e){return h({url:"/user/info/selfInfo",method:"post",data:u.a.stringify(e)})},updateSelfPwd:function(e){return h({url:"/user/info/updateSelfPwd",method:"post",data:u.a.stringify(e)})},selfInfoWithAuth:function(e){return h({url:"/user/info/selfInfoWithAuth",method:"post",data:u.a.stringify(e)})},getUserInfoList:function(e){return h({url:"/user/info/list",method:"post",data:u.a.stringify(e)})},searchUserInfoList:function(e){return h({url:"/user/info/search",method:"post",data:u.a.stringify(e)})},updateUserInfo:function(e){return h({url:"/user/info/update",method:"post",data:u.a.stringify(e)})},deleteUserInfo:function(e){return h({url:"/user/info/delete",method:"post",data:u.a.stringify(e)})},userAuthList:function(e){return h({url:"/user/info/auth/list",method:"post",data:u.a.stringify(e)})},updateUserAuth:function(e){return h({url:"/user/info/auth/update",method:"post",data:u.a.stringify(e)})},resetPassword:function(e){return h({url:"/user/info/resetPassword",method:"post",data:u.a.stringify(e)})},userGroupList:function(e){return h({url:"/user/group/list",method:"post",data:u.a.stringify(e)})},updateUserGroup:function(e){return h({url:"/user/group/update",method:"post",data:u.a.stringify(e)})},deleteUserGroup:function(e){return h({url:"/user/group/delete",method:"post",data:u.a.stringify(e)})},updateUserGroupRelation:function(e){return h({url:"/user/group/relation/update",method:"post",data:u.a.stringify(e)})},removeUserGroupRelation:function(e){return h({url:"/user/group/relation/remove",method:"post",data:u.a.stringify(e)})},userGroupRelationList:function(e){return h({url:"/user/group/relation/list",method:"post",data:u.a.stringify(e)})}},b=a("9db5"),v=a("5a60"),w=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-dialog",{attrs:{title:"关于",visible:e.aboutDialogVisible,width:"600px","custom-class":"about-zyplayer-doc"},on:{"update:visible":function(t){e.aboutDialogVisible=t}}},[a("div",{},[a("div",{staticStyle:{"font-weight":"bold","font-size":"25px"}},[e._v("zyplayer-doc")]),a("div",{staticStyle:{"line-height":"30px",padding:"10px 0"}},[a("div",[e._v("版本 "+e._s(e.upgradeInfo.nowVersion||"1.0.0"))]),a("div",[e._v("版权所有 © 2018-2021 "),a("a",{attrs:{target:"_blank",href:"http://zyplayer.com"}},[e._v("zyplayer.com")])])]),a("el-tabs",{attrs:{type:"border-card"}},[a("el-tab-pane",{attrs:{label:"支持"}},[a("div",{staticStyle:{"line-height":"30px"}},[a("div",[e._v("文档:"),a("a",{attrs:{target:"_blank",href:"http://doc.zyplayer.com"}},[e._v("http://doc.zyplayer.com")])]),a("div",[e._v("主页:"),a("a",{attrs:{target:"_blank",href:"https://gitee.com/dromara/zyplayer-doc"}},[e._v("https://gitee.com/dromara/zyplayer-doc")])]),a("div",[e._v("反馈:"),a("a",{attrs:{target:"_blank",href:"https://gitee.com/dromara/zyplayer-doc/issues"}},[e._v("https://gitee.com/dromara/zyplayer-doc/issues")])]),a("div",[e._v("新功能关注&技术交流QQ群:466363173")])])]),a("el-tab-pane",{attrs:{label:"开源软件"}},[a("div",{staticStyle:{"line-height":"30px"}},[a("div",[e._v("此项目基于以下开源软件构建")]),a("el-divider",{attrs:{"content-position":"left"}},[e._v("后端")]),a("div",[a("a",{attrs:{target:"_blank",href:"https://spring.io/projects/spring-boot"}},[e._v("Spring-Boot")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"http://www.mybatis.org"}},[e._v("MyBatis")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://github.com/alibaba/druid"}},[e._v("Druid")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://mp.baomidou.com"}},[e._v("MyBatis-Plus")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://www.hutool.cn"}},[e._v("Hutool")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://github.com/alibaba/fastjson"}},[e._v("Fastjson")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://alibaba-easyexcel.github.io"}},[e._v("Easy Excel")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://swagger.io"}},[e._v("Swagger")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"http://www.eclipse.org/jgit"}},[e._v("JGit")]),e._v("、... ")]),a("el-divider",{attrs:{"content-position":"left"}},[e._v("前端")]),e._v(" Vue、element-ui、wangeditor、mavon-editor、qrcodejs2、vant、vue-router、axios、vue-hljs、brace、echarts、sql-formatter、vue-clipboard2、... "),a("div")],1)]),e.upgradeInfo.lastVersion?a("el-tab-pane",{attrs:{label:"软件更新"}},[a("span",{attrs:{slot:"label"},slot:"label"},[e._v(" 软件更新 "),a("sup",{staticClass:"el-badge__content el-badge__content--undefined is-fixed is-dot",staticStyle:{top:"10px",right:"20px"}})]),a("div",{staticStyle:{"line-height":"30px"}},[a("div",[e._v("当前版本:"+e._s(e.upgradeInfo.nowVersion))]),a("div",[e._v("最新版本:"+e._s(e.upgradeInfo.lastVersion))]),a("div",[e._v("升级地址:"),a("a",{attrs:{target:"_blank",href:e.upgradeInfo.upgradeUrl}},[e._v(e._s(e.upgradeInfo.upgradeUrl))])]),a("div",[e._v("升级内容:")]),a("pre",{staticStyle:{margin:"0","max-height":"250px",overflow:"auto"}},[e._v(e._s(e.upgradeInfo.upgradeContent))])])]):e._e()],1)],1)])},U=[],y={systemUpgradeInfo:function(e){return h({url:"/system/info/upgrade",method:"post",data:u.a.stringify(e)})}},_={data:function(){return{aboutDialogVisible:!1,upgradeInfo:{}}},mounted:function(){this.checkSystemUpgrade()},methods:{show:function(){this.aboutDialogVisible=!0},checkSystemUpgrade:function(){var e=this;y.systemUpgradeInfo({}).then((function(t){t.data&&(e.upgradeInfo=t.data,e.upgradeInfo.upgradeContent&&(e.upgradeInfo.upgradeContent=e.upgradeInfo.upgradeContent.replaceAll(";","\n")),console.log("zyplayer-doc发现新版本:\n升级地址:"+t.data.upgradeUrl+"\n当前版本:"+t.data.nowVersion+"\n最新版本:"+t.data.lastVersion+"\n升级内容:"+t.data.upgradeContent))}))}}},x=_,k=(a("1cc7"),a("2877")),P=Object(k["a"])(x,w,U,!1,null,null,null),L=P.exports,S={data:function(){return{isCollapse:!1,userSelfInfo:{},userAuth:{userManage:!1}}},components:{peoples:b["a"],people:v["a"],"about-dialog":L},computed:{fullscreen:function(){return this.$store.state.global.fullscreen}},mounted:function(){this.getSelfUserInfo()},methods:{handleOpen:function(e,t){console.log(e,t)},handleClose:function(e,t){console.log(e,t)},userSettingDropdown:function(e){console.log("command:"+e),"userSignOut"==e?this.userSignOut():"aboutDoc"==e?this.$refs.aboutDialog.show():"myInfo"==e?this.$router.push({path:"/user/myInfo"}):"console"==e?window.open("./","_blank"):this.$message.warn("功能暂未开放")},userSignOut:function(){g.userLogout().then((function(){location.reload()})).catch((function(e){console.log("退出登录失败",e)}))},getSelfUserInfo:function(){var e=this;g.selfInfoWithAuth().then((function(t){var a=t.data||{};e.userSelfInfo=a.userInfo||{},e.userAuth=a.userAuth||{}})).catch((function(e){console.log("获取用户信息失败",e)}))}}},C=S,I=(a("034f"),Object(k["a"])(C,o,n,!1,null,null,null)),F=I.exports,N=a("8c4f"),$=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-tabs",{staticStyle:{padding:"5px 10px 0"},attrs:{type:"card",closable:""},on:{"tab-click":e.changePage,"tab-remove":e.removePageTab},model:{value:e.activePage,callback:function(t){e.activePage=t},expression:"activePage"}},e._l(e.pageList,(function(t){return a("el-tab-pane",{attrs:{label:e.pageTabNameMap[t.fullPath]||t.name,name:t.fullPath}})})),1),a("keep-alive",[a("router-view",{key:e.$route.fullPath,on:{initLoadDataList:e.initLoadDataList,loadDatasourceList:e.loadDatasourceList}})],1)],1)},A=[],G=(a("4de4"),a("b0c0"),{name:"PageTableView",components:{},data:function(){return{pageList:[],linkList:[],activePage:"",multiPage:!0}},computed:{pageTabNameMap:function(){return this.$store.state.global.pageTabNameMap}},created:function(){this.pageList.push(this.$route),this.linkList.push(this.$route.fullPath),this.activePage=this.$route.fullPath},watch:{$route:function(e,t){this.activePage=e.fullPath,this.linkList.indexOf(e.fullPath)<0&&(this.linkList.push(e.fullPath),this.pageList.push(e))},activePage:function(e){this.$router.push(e)}},methods:{initLoadDataList:function(e){this.$emit("initLoadDataList",e)},loadDatasourceList:function(){this.$emit("loadDatasourceList")},changePage:function(e){this.activePage=e.name},editPage:function(e,t){this[t](e)},removePageTab:function(e){if(1!==this.pageList.length){this.pageList=this.pageList.filter((function(t){return t.fullPath!==e}));var t=this.linkList.indexOf(e);this.linkList=this.linkList.filter((function(t){return t!==e})),t=t>=this.linkList.length?this.linkList.length-1:t,this.activePage=this.linkList[t]}else this.$message.warning("这是最后一页,不能再关闭了啦")}}}),D=G,O=Object(k["a"])(D,$,A,!1,null,"a596d90e",null),z=O.exports,V=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticStyle:{padding:"10px"}},[a("div",{staticStyle:{"max-width":"800px",margin:"20px auto"}},[a("div",{staticStyle:{padding:"20px"}},[a("el-card",{staticClass:"box-card"},[a("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[a("span",[e._v("所有产品")])]),a("div",{staticClass:"product-list"},[a("div",{staticClass:"item",on:{click:function(t){return e.jumpToDocPage("doc-api")}}},[a("div",{staticClass:"logo-text text1"},[e._v("API")]),a("div",[e._v("API接口文档")])]),a("div",{staticClass:"item",on:{click:function(t){return e.jumpToDocPage("doc-db")}}},[a("div",{staticClass:"logo-text text2"},[e._v("DB")]),a("div",[e._v("数据库文档")])]),a("div",{staticClass:"item",on:{click:function(t){return e.jumpToDocPage("doc-wiki")}}},[a("div",{staticClass:"logo-text text3"},[e._v("WIKI")]),a("div",[e._v("WIKI文档")])])])])],1)])])},R=[],j={data:function(){return{}},mounted:function(){},methods:{jumpToDocPage:function(e){window.open(e)}}},E=j,T=(a("2629"),Object(k["a"])(E,V,R,!1,null,null,null)),M=T.exports,J=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"my-info-vue"},[a("div",{staticStyle:{margin:"0 auto","max-width":"1000px"}},[a("el-card",{staticClass:"box-card"},[a("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[a("el-row",[a("el-col",{staticStyle:{"line-height":"40px"},attrs:{span:12}},[e._v("我的信息")]),a("el-col",{staticStyle:{"text-align":"right"},attrs:{span:12}},[a("el-button",{attrs:{type:"primary"},on:{click:e.showUpdatePasswordDialog}},[a("i",{staticClass:"el-icon-edit"}),e._v(" 修改密码")])],1)],1)],1),a("el-form",{staticClass:"search-form-box",attrs:{"label-width":"100px"}},[a("el-form-item",{attrs:{label:"账号:"}},[e._v(e._s(e.userInfo.userNo))]),a("el-form-item",{attrs:{label:"用户名:"}},[e._v(e._s(e.userInfo.userName))]),a("el-form-item",{attrs:{label:"手机号:"}},[e._v(e._s(e.userInfo.phone))]),a("el-form-item",{attrs:{label:"邮箱:"}},[e._v(e._s(e.userInfo.email))]),a("el-form-item",{attrs:{label:"状态:"}},[e._v(e._s(0==e.userInfo.delFlag?"正常":"停用"))]),a("el-form-item",{attrs:{label:"性别:"}},[e._v(e._s(0==e.userInfo.sex?"女":"男"))])],1)],1)],1),a("el-dialog",{attrs:{title:"修改密码",visible:e.updatePasswordDialogVisible,width:"500px"},on:{"update:visible":function(t){e.updatePasswordDialogVisible=t}}},[a("el-form",{ref:"passwordForm",attrs:{"label-width":"120px",model:e.updatePassword,"status-icon":"",rules:e.updatePasswordRules}},[a("el-form-item",{attrs:{label:"当前密码",prop:"currentPwd"}},[a("el-input",{attrs:{type:"password",placeholder:"请输入当前密码"},model:{value:e.updatePassword.currentPwd,callback:function(t){e.$set(e.updatePassword,"currentPwd",t)},expression:"updatePassword.currentPwd"}})],1),a("el-form-item",{attrs:{label:"新密码",prop:"newPwd"}},[a("el-input",{attrs:{type:"password",placeholder:"请输入新密码"},model:{value:e.updatePassword.newPwd,callback:function(t){e.$set(e.updatePassword,"newPwd",t)},expression:"updatePassword.newPwd"}})],1),a("el-form-item",{attrs:{label:"确认新密码",prop:"repeatPwd"}},[a("el-input",{attrs:{type:"password",placeholder:"请再次输入新密码"},model:{value:e.updatePassword.repeatPwd,callback:function(t){e.$set(e.updatePassword,"repeatPwd",t)},expression:"updatePassword.repeatPwd"}})],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.submitUpdatePasswordForm}},[e._v("修改密码")])],1)],1)],1)],1)},B=[],q={data:function(){return{userInfo:{},updatePasswordDialogVisible:!1,updatePassword:{currentPwd:"",newPwd:"",repeatPwd:""},updatePasswordRules:{currentPwd:[{validator:this.validateCurrentPwd,trigger:"blur"}],newPwd:[{validator:this.validateNewPwd,trigger:"blur"}],repeatPwd:[{validator:this.validateRepeatPwd,trigger:"blur"}]}}},mounted:function(){this.getUserInfo()},methods:{getUserInfo:function(){var e=this;g.getSelfUserInfo().then((function(t){e.userInfo=t.data}))},showUpdatePasswordDialog:function(){this.updatePasswordDialogVisible=!0},submitUpdatePasswordForm:function(){var e=this;this.$refs.passwordForm.validate((function(t){if(!t)return!1;g.updateSelfPwd(e.updatePassword).then((function(t){e.$message.success("修改成功!请重新登录"),setTimeout((function(){g.userLogout().then((function(){location.reload()})).catch((function(e){console.log("退出登录失败",e)}))}),500)}))}))},validateCurrentPwd:function(e,t,a){""===t?a(new Error("请输入密码")):a()},validateNewPwd:function(e,t,a){""===t?a(new Error("请输入新密码")):(""!==this.updatePassword.newPwd&&this.$refs.passwordForm.validateField("repeatPwd"),a())},validateRepeatPwd:function(e,t,a){""===t?a(new Error("请再次输入新密码")):this.updatePassword.repeatPwd!==this.updatePassword.newPwd?a(new Error("两次输入的密码不一致")):a()}}},W=q,H=(a("dcfc"),Object(k["a"])(W,J,B,!1,null,null,null)),K=H.exports,Q=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"login-background linear-gradient-"+e.bgImgRandom},[a("div",{staticClass:"login-box"},[a("el-form",{ref:"loginParam",staticClass:"demo-ruleForm login-container",attrs:{model:e.loginParam,rules:e.loginRules,"label-position":"left","label-width":"0px"}},[a("h3",{staticClass:"title"},[e._v("文档管理-系统登录")]),a("el-form-item",{attrs:{prop:"username"}},[a("el-input",{attrs:{type:"text","auto-complete":"off",placeholder:"账号"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.loginSubmit(t)}},model:{value:e.loginParam.username,callback:function(t){e.$set(e.loginParam,"username",t)},expression:"loginParam.username"}})],1),a("el-form-item",{attrs:{prop:"password"}},[a("el-input",{attrs:{type:"password","auto-complete":"off",placeholder:"密码"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.loginSubmit(t)}},model:{value:e.loginParam.password,callback:function(t){e.$set(e.loginParam,"password",t)},expression:"loginParam.password"}})],1),a("el-form-item",{staticStyle:{width:"100%"}},[a("el-button",{staticStyle:{width:"100%"},attrs:{type:"primary",loading:e.loginLoading},nativeOn:{click:function(t){return t.preventDefault(),e.loginSubmit(t)}}},[e._v("登录")])],1)],1)],1),e._m(0)])},X=[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"power-by"},[e._v("Powered By "),a("a",{attrs:{target:"_blank",href:"https://gitee.com/zyplayer/zyplayer-doc"}},[e._v("zyplayer-doc")])])}],Y={data:function(){return{loginLoading:!1,redirect:"",loginParam:{username:"",password:""},loginRules:{username:[{required:!0,message:"请输入账号",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}]},bgImgRandom:Math.ceil(5*Math.random())}},mounted:function(){this.redirect=this.$route.query.redirect},methods:{loginSubmit:function(){var e=this;this.$refs.loginParam.validate((function(t){t&&(e.loginLoading=!0,g.userLogin(e.loginParam).then((function(){e.$emit("loginSuccess"),e.loginLoading=!1,e.redirect?location.href=decodeURIComponent(e.redirect):e.$router.back()})).catch((function(t){console.log("登录失败",t),e.loginLoading=!1})))}))}}},Z=Y,ee=(a("9231"),Object(k["a"])(Z,Q,X,!1,null,null,null)),te=ee.exports,ae=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"user-list-vue"},[a("el-breadcrumb",{staticStyle:{padding:"20px 10px"},attrs:{"separator-class":"el-icon-arrow-right"}},[a("el-breadcrumb-item",{attrs:{to:{path:"/"}}},[e._v("首页")]),a("el-breadcrumb-item",[e._v("系统管理")]),a("el-breadcrumb-item",[e._v("用户列表")])],1),a("el-form",{staticClass:"search-form-box",attrs:{inline:!0,model:e.searchParam}},[a("el-form-item",{attrs:{label:"搜索类型"}},[a("el-select",{attrs:{placeholder:"请选择"},model:{value:e.searchParam.type,callback:function(t){e.$set(e.searchParam,"type",t)},expression:"searchParam.type"}},[a("el-option",{attrs:{label:"ID",value:1}}),a("el-option",{attrs:{label:"账号",value:2}}),a("el-option",{attrs:{label:"用户名",value:3}}),a("el-option",{attrs:{label:"手机",value:4}}),a("el-option",{attrs:{label:"邮箱",value:5}})],1)],1),a("el-form-item",{attrs:{label:"关键字"}},[a("el-input",{attrs:{placeholder:"输入关键字"},model:{value:e.searchParam.keyword,callback:function(t){e.$set(e.searchParam,"keyword",t)},expression:"searchParam.keyword"}})],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.getUserList}},[e._v("查询")])],1),a("el-form-item",[a("el-button",{attrs:{type:"success"},on:{click:e.addUserInfo}},[a("i",{staticClass:"el-icon-plus"}),e._v(" 添加")])],1)],1),a("div",{directives:[{name:"loading",rawName:"v-loading",value:e.searchLoading,expression:"searchLoading"}],staticStyle:{padding:"10px"}},[a("el-table",{staticStyle:{width:"100%","margin-bottom":"5px"},attrs:{data:e.searchResultList,border:"","max-height":"500"}},[a("el-table-column",{attrs:{prop:"id",label:"编号",width:"60"}}),a("el-table-column",{attrs:{prop:"userNo",label:"账号"}}),a("el-table-column",{attrs:{prop:"email",label:"邮箱"}}),a("el-table-column",{attrs:{prop:"userName",label:"用户名"}}),a("el-table-column",{attrs:{prop:"phone",label:"手机号"}}),a("el-table-column",{attrs:{label:"性别"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v(e._s(0==t.row.sex?"女":"男"))]}}])}),a("el-table-column",{attrs:{prop:"creationTime",label:"创建时间"}}),a("el-table-column",{attrs:{label:"状态"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v(e._s(0==t.row.delFlag?"正常":"停用"))]}}])}),a("el-table-column",{attrs:{label:"操作",width:"300"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{size:"mini",plain:"",type:"primary"},on:{click:function(a){return e.editUserInfo(t.row)}}},[e._v("修改")]),a("el-button",{attrs:{size:"mini",plain:"",type:"success"},on:{click:function(a){return e.editUserAuthFun(t.row)}}},[e._v("权限")]),a("el-button",{attrs:{size:"mini",plain:"",type:"warning"},on:{click:function(a){return e.resetPassword(t.row)}}},[e._v("重置密码")]),a("el-button",{attrs:{size:"mini",plain:"",type:"danger"},on:{click:function(a){return e.deleteUser(t.row)}}},[e._v("删除")])]}}])})],1)],1),a("div",{staticClass:"page-info-box"},[a("el-pagination",{attrs:{"page-sizes":[20,50,100],"page-size":20,"current-page":e.searchParam.pageNum,layout:"prev, pager, next, jumper, sizes, total",total:e.totalCount},on:{"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1),a("el-dialog",{attrs:{title:"权限编辑",visible:e.editUserAuthDialogVisible,width:"600px","close-on-click-modal":!1},on:{"update:visible":function(t){e.editUserAuthDialogVisible=t}}},[a("el-form",{ref:"form",attrs:{"label-width":"80px"}},[a("el-form-item",{attrs:{label:"账号"}},[a("el-input",{attrs:{disabled:""},model:{value:e.editUserForm.userNo,callback:function(t){e.$set(e.editUserForm,"userNo",t)},expression:"editUserForm.userNo"}})],1),a("el-form-item",{attrs:{label:"用户名"}},[a("el-input",{attrs:{disabled:""},model:{value:e.editUserForm.userName,callback:function(t){e.$set(e.editUserForm,"userName",t)},expression:"editUserForm.userName"}})],1),a("el-form-item",{attrs:{label:"权限"}},[a("el-select",{staticStyle:{width:"100%"},attrs:{multiple:"",filterable:"",placeholder:"请选择"},model:{value:e.editUserAuth,callback:function(t){e.editUserAuth=t},expression:"editUserAuth"}},e._l(e.allUserAuth,(function(e){return a("el-option",{key:e.id,attrs:{label:e.authDesc,value:e.id}})})),1)],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.editUserAuthSave}},[e._v("确定")]),a("el-button",{on:{click:function(t){e.editUserAuthDialogVisible=!1}}},[e._v("取消")])],1)],1)],1),a("el-dialog",{attrs:{title:e.editUserForm.id>0?"修改用户":"创建用户",visible:e.editUserDialogVisible,width:"600px","close-on-click-modal":!1},on:{"update:visible":function(t){e.editUserDialogVisible=t}}},[a("el-form",{ref:"form",attrs:{model:e.editUserForm,"label-width":"80px"}},[a("el-form-item",{attrs:{label:"账号"}},[a("el-input",{model:{value:e.editUserForm.userNo,callback:function(t){e.$set(e.editUserForm,"userNo",t)},expression:"editUserForm.userNo"}})],1),a("el-form-item",{attrs:{label:"用户名"}},[a("el-input",{model:{value:e.editUserForm.userName,callback:function(t){e.$set(e.editUserForm,"userName",t)},expression:"editUserForm.userName"}})],1),a("el-form-item",{attrs:{label:"手机号"}},[a("el-input",{model:{value:e.editUserForm.phone,callback:function(t){e.$set(e.editUserForm,"phone",t)},expression:"editUserForm.phone"}})],1),a("el-form-item",{attrs:{label:"邮箱"}},[a("el-input",{model:{value:e.editUserForm.email,callback:function(t){e.$set(e.editUserForm,"email",t)},expression:"editUserForm.email"}})],1),a("el-form-item",{attrs:{label:"新密码"}},[a("el-input",{attrs:{placeholder:"为空代表不修改密码"},model:{value:e.editUserForm.password,callback:function(t){e.$set(e.editUserForm,"password",t)},expression:"editUserForm.password"}})],1),a("el-form-item",{attrs:{label:"状态"}},[a("el-switch",{attrs:{"active-value":0,"active-text":"正常","inactive-value":2,"inactive-text":"停用"},model:{value:e.editUserForm.delFlag,callback:function(t){e.$set(e.editUserForm,"delFlag",t)},expression:"editUserForm.delFlag"}})],1),a("el-form-item",{attrs:{label:"性别"}},[a("el-radio-group",{model:{value:e.editUserForm.sex,callback:function(t){e.$set(e.editUserForm,"sex",t)},expression:"editUserForm.sex"}},[a("el-radio",{attrs:{label:1}},[e._v("男")]),a("el-radio",{attrs:{label:0}},[e._v("女")])],1)],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.updateEditUser}},[e._v("确定")]),a("el-button",{on:{click:function(t){e.editUserDialogVisible=!1}}},[e._v("取消")])],1)],1)],1)],1)},re=[],se=(a("a15b"),{data:function(){return{searchLoading:!1,editUserDialogVisible:!1,editUserAuthDialogVisible:!1,totalCount:0,searchParam:{type:1,keyword:"",pageSize:20,pageNum:1},searchResultList:[],roleOptions:[{value:"管理员"}],editUserForm:{},allUserAuth:[],editUserAuth:[]}},mounted:function(){this.getUserList()},methods:{handleSizeChange:function(e){this.searchParam.pageSize=e,this.getUserList()},handleCurrentChange:function(e){this.searchParam.pageNum=e,this.getUserList()},editUserAuthFun:function(e){var t=this;this.allUserAuth=[],this.editUserAuth=[];var a={userIds:e.id};g.userAuthList(a).then((function(a){t.editUserAuth=[],t.allUserAuth=a.data,t.editUserAuthDialogVisible=!0,t.editUserForm=JSON.parse(JSON.stringify(e));for(var r=0;r0?a("div",{directives:[{name:"loading",rawName:"v-loading",value:e.searchLoading,expression:"searchLoading"}],staticClass:"page-scroll-box"},[a("div",{staticStyle:{"margin-bottom":"10px"}},[a("el-button",{attrs:{size:"mini",plain:"",type:"primary",icon:"el-icon-plus"},on:{click:e.showChoiceUserDialog}},[e._v("添加用户")])],1),a("el-table",{staticStyle:{width:"100%","margin-bottom":"5px"},attrs:{data:e.userGroupRelationList,border:"","max-height":e.tableHeight}},[a("el-table-column",{attrs:{prop:"id",label:"编号",width:"60"}}),a("el-table-column",{attrs:{prop:"userNo",label:"账号"}}),a("el-table-column",{attrs:{prop:"email",label:"邮箱"}}),a("el-table-column",{attrs:{prop:"userName",label:"用户名"}}),a("el-table-column",{attrs:{prop:"phone",label:"手机号"}}),a("el-table-column",{attrs:{label:"性别"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v(e._s(0==t.row.sex?"女":"男"))]}}],null,!1,1138127522)}),a("el-table-column",{attrs:{label:"操作",width:"300"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{size:"mini",plain:"",type:"danger"},on:{click:function(a){return e.removeUserRelationFromList(t.row.id)}}},[e._v("移除")])]}}],null,!1,1988185234)})],1)],1):e._e()])],1),a("el-dialog",{attrs:{title:"添加用户到分组",visible:e.choiceUserVisible,width:"600px"},on:{"update:visible":function(t){e.choiceUserVisible=t},close:e.closeChoiceUserDialog}},[a("el-row",[a("el-select",{staticStyle:{width:"450px","margin-right":"10px"},attrs:{filterable:"",remote:"","reserve-keyword":"",autoComplete:"new-password",placeholder:"请输入名字、邮箱、账号搜索用户","remote-method":e.getSearchUserList,loading:e.searchUserLoading},model:{value:e.searchAddNewUser,callback:function(t){e.searchAddNewUser=t},expression:"searchAddNewUser"}},e._l(e.searchUserList,(function(e){return a("el-option",{key:e.id,attrs:{label:e.userName,value:e.id}})})),1),a("el-button",{on:{click:e.addSearchChoiceUser}},[e._v("添加")])],1),a("div",{staticStyle:{margin:"10px 0"}},e._l(e.searchAddUserList,(function(t){return a("el-tag",{key:t.userId,staticStyle:{"margin-right":"10px"},attrs:{closable:"",type:"info"},on:{close:function(a){return e.removeUserRelationFromSearch(t.userId)}}},[e._v(" "+e._s(t.userName)+" ")])})),1)],1)],1)},ye=[],_e=(a("7db0"),a("4160"),a("159b"),{data:function(){return{searchLoading:!1,editUserDialogVisible:!1,editUserAuthDialogVisible:!1,totalCount:0,searchParam:{type:1,keyword:""},searchResultList:[],roleOptions:[{value:"管理员"}],editUserForm:{},allUserAuth:[],editUserAuth:[],userGroupRelationList:[],userGroupList:[],editGroupName:"",checkedUserGroupId:"",createUserGroupVisible:!1,choiceUserVisible:!1,searchAddUserList:[],searchUserList:[],searchAddNewUser:"",searchUserLoading:!1,tableHeight:document.body.clientHeight-250}},mounted:function(){this.getUserGroupList()},methods:{getUserGroupList:function(){var e=this;this.userGroupList=[],g.userGroupList().then((function(t){var a=t.data||[];a.forEach((function(e){e.edit=!1,e.checked=!1,e.editName=e.name})),e.userGroupList=a}))},loadUserGroupRelation:function(e,t){var a=this;(t||e!=this.checkedUserGroupId)&&(this.checkedUserGroupId=e,this.searchLoading=!0,g.userGroupRelationList({groupId:e}).then((function(e){a.searchLoading=!1,a.userGroupRelationList=e.data||[]})))},updateUserGroup:function(e){if(e.name!=e.editName){var t={id:e.id,name:e.editName};g.updateUserGroup(t).then((function(t){e.edit=!1,e.name=e.editName}))}else e.edit=!1},createUserGroup:function(){var e=this,t={name:this.editGroupName};g.updateUserGroup(t).then((function(t){e.editGroupName="",e.createUserGroupVisible=!1,e.getUserGroupList()}))},removeUserGroup:function(e){var t=this;g.deleteUserGroup({id:e}).then((function(e){t.checkedUserGroupId="",t.getUserGroupList()}))},closeChoiceUserDialog:function(){this.loadUserGroupRelation(this.checkedUserGroupId,!0)},showChoiceUserDialog:function(){var e=this;this.choiceUserVisible=!0,this.searchAddUserList=[],this.userGroupRelationList.forEach((function(t){e.searchAddUserList.push({userName:t.userName,userId:t.id})}))},getSearchUserList:function(e){var t=this;e&&(this.searchUserLoading=!0,g.searchUserInfoList({search:e}).then((function(e){t.searchUserList=e.data||[],t.searchUserLoading=!1})))},removeUserRelationFromSearch:function(e){var t=this,a={groupId:this.checkedUserGroupId,userId:e};g.removeUserGroupRelation(a).then((function(a){t.searchAddUserList=t.searchAddUserList.filter((function(t){return t.userId!=e}))}))},removeUserRelationFromList:function(e){var t=this,a={groupId:this.checkedUserGroupId,userId:e};g.removeUserGroupRelation(a).then((function(e){t.loadUserGroupRelation(t.checkedUserGroupId,!0)}))},addSearchChoiceUser:function(){var e=this;if(this.searchAddNewUser.length<=0)this.$message.warning("请先选择用户");else if(this.searchAddUserList.find((function(t){return t.userId==e.searchAddNewUser})))this.searchAddNewUser="";else{var t=this.searchUserList.find((function(t){return t.id==e.searchAddNewUser})).userName,a={groupId:this.checkedUserGroupId,userId:this.searchAddNewUser};g.updateUserGroupRelation(a).then((function(a){e.searchAddUserList.push({userName:t,userId:e.searchAddNewUser})})),this.searchAddNewUser=""}}}}),xe=_e,ke=(a("71a4"),Object(k["a"])(xe,Ue,ye,!1,null,null,null)),Pe=ke.exports,Le=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[e._v("没有权限访问该模块")])},Se=[],Ce={data:function(){return{}},mounted:function(){},methods:{}},Ie=Ce,Fe=Object(k["a"])(Ie,Le,Se,!1,null,null,null),Ne=Fe.exports,$e=[{path:"/",redirect:"/home"},{path:"/user/login",name:"系统登录",component:te,meta:{fullscreen:!0}},{path:"/",name:"页面管理",component:z,children:[{path:"/home",name:"控制台",component:M}]},{path:"/user",name:"用户管理",component:z,children:[{path:"myInfo",name:"我的信息",component:K}]},{path:"/console",name:"系统管理",component:z,children:[{path:"userList",name:"用户管理",component:ne},{path:"roleList",name:"权限管理",component:me},{path:"authList",name:"角色列表",component:we},{path:"userGroupList",name:"分组管理",component:Pe}]},{path:"/common",name:"",component:z,children:[{path:"noAuth",name:"没有权限",component:Ne}]}],Ae=$e,Ge=a("2f62"),De={namespaced:!0,state:{pageTabNameMap:{},fullscreen:!1},getters:{getPageTabNameMap:function(e){return e.pageTabNameMap}},mutations:{addTableName:function(e,t){var a=Object.assign({},e.pageTabNameMap);a[t.key]=t.val,e.pageTabNameMap=a},setFullscreen:function(e,t){e.fullscreen=t}}};r["default"].use(Ge["a"]);var Oe=new Ge["a"].Store({modules:{global:De}}),ze=a("a7fe"),Ve=a.n(ze),Re=a("2315"),je=a.n(Re);a("f1e9");r["default"].use(i.a),r["default"].use(N["a"]),r["default"].use(Ve.a,d.a),r["default"].use(je.a),r["default"].prototype.$store=Oe;var Ee=new N["a"]({routes:Ae});Ee.beforeEach((function(e,t,a){e.meta.title&&(document.title=e.meta.title),Oe.commit("global/setFullscreen",!!e.meta.fullscreen),a()}));var Te=new r["default"]({el:"#app",router:Ee,render:function(e){return e(F)}}),Me=t["default"]=Te},"594a":function(e,t,a){},"71a4":function(e,t,a){"use strict";var r=a("2352"),s=a.n(r);s.a},"85ec":function(e,t,a){},9231:function(e,t,a){"use strict";var r=a("40c0"),s=a.n(r);s.a},cc1a:function(e,t,a){"use strict";var r=a("594a"),s=a.n(r);s.a},d1f1:function(e,t,a){},d784:function(e,t,a){},d9af:function(e,t,a){"use strict";var r=a("4eaf"),s=a.n(r);s.a},dcfc:function(e,t,a){"use strict";var r=a("ed55"),s=a.n(r);s.a},ed55:function(e,t,a){}}); \ No newline at end of file diff --git a/zyplayer-doc-manage/src/main/resources/dist/js/index.8c8d6867.js b/zyplayer-doc-manage/src/main/resources/dist/js/index.8c8d6867.js new file mode 100644 index 00000000..0c8d6d3c --- /dev/null +++ b/zyplayer-doc-manage/src/main/resources/dist/js/index.8c8d6867.js @@ -0,0 +1 @@ +(function(e){function t(t){for(var r,o,n=t[0],l=t[1],u=t[2],d=0,p=[];d1e3&&(Me.$message.error("请先登录"),f=(new Date).getTime());var t="",a=window.location.href;if(a.indexOf("?")>=0){var r=new RegExp("(^|&)redirect=([^&]*)(&|$)","i"),i=a.substring(a.indexOf("?")+1).match(r);null!=i&&(t=unescape(i[2]))}t=t||encodeURIComponent(window.location.href),Me.$router.push({path:"/user/login",query:{redirect:t}})}else 402==e.data.errCode?Me.$router.push("/common/noAuth"):200!==e.data.errCode&&Me.$message.error(e.data.errMsg||"未知错误")}return Promise.reject("请求错误")}),(function(e){return console.log("err"+e),Me.$message.info("请求错误:"+e.message),Promise.reject(e)}));var h=p,g={userLogin:function(e){return h({url:"/login",method:"post",data:u.a.stringify(e)})},userLogout:function(e){return h({url:"/logout",method:"post",data:u.a.stringify(e)})},getSelfUserInfo:function(e){return h({url:"/user/info/selfInfo",method:"post",data:u.a.stringify(e)})},updateSelfPwd:function(e){return h({url:"/user/info/updateSelfPwd",method:"post",data:u.a.stringify(e)})},selfInfoWithAuth:function(e){return h({url:"/user/info/selfInfoWithAuth",method:"post",data:u.a.stringify(e)})},getUserInfoList:function(e){return h({url:"/user/info/list",method:"post",data:u.a.stringify(e)})},searchUserInfoList:function(e){return h({url:"/user/info/search",method:"post",data:u.a.stringify(e)})},updateUserInfo:function(e){return h({url:"/user/info/update",method:"post",data:u.a.stringify(e)})},deleteUserInfo:function(e){return h({url:"/user/info/delete",method:"post",data:u.a.stringify(e)})},userAuthList:function(e){return h({url:"/user/info/auth/list",method:"post",data:u.a.stringify(e)})},updateUserAuth:function(e){return h({url:"/user/info/auth/update",method:"post",data:u.a.stringify(e)})},resetPassword:function(e){return h({url:"/user/info/resetPassword",method:"post",data:u.a.stringify(e)})},userGroupList:function(e){return h({url:"/user/group/list",method:"post",data:u.a.stringify(e)})},updateUserGroup:function(e){return h({url:"/user/group/update",method:"post",data:u.a.stringify(e)})},deleteUserGroup:function(e){return h({url:"/user/group/delete",method:"post",data:u.a.stringify(e)})},updateUserGroupRelation:function(e){return h({url:"/user/group/relation/update",method:"post",data:u.a.stringify(e)})},removeUserGroupRelation:function(e){return h({url:"/user/group/relation/remove",method:"post",data:u.a.stringify(e)})},userGroupRelationList:function(e){return h({url:"/user/group/relation/list",method:"post",data:u.a.stringify(e)})}},b=a("9db5"),v=a("5a60"),w=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-dialog",{attrs:{title:"关于",visible:e.aboutDialogVisible,width:"600px","custom-class":"about-zyplayer-doc"},on:{"update:visible":function(t){e.aboutDialogVisible=t}}},[a("div",{},[a("div",{staticStyle:{"font-weight":"bold","font-size":"25px"}},[e._v("zyplayer-doc")]),a("div",{staticStyle:{"line-height":"30px",padding:"10px 0"}},[a("div",[e._v("版本 "+e._s(e.upgradeInfo.nowVersion||"1.0.0"))]),a("div",[e._v("版权所有 © 2018-2021 "),a("a",{attrs:{target:"_blank",href:"http://zyplayer.com"}},[e._v("zyplayer.com")])])]),a("el-tabs",{attrs:{type:"border-card"}},[a("el-tab-pane",{attrs:{label:"支持"}},[a("div",{staticStyle:{"line-height":"30px"}},[a("div",[e._v("文档:"),a("a",{attrs:{target:"_blank",href:"http://doc.zyplayer.com"}},[e._v("http://doc.zyplayer.com")])]),a("div",[e._v("主页:"),a("a",{attrs:{target:"_blank",href:"https://gitee.com/dromara/zyplayer-doc"}},[e._v("https://gitee.com/dromara/zyplayer-doc")])]),a("div",[e._v("反馈:"),a("a",{attrs:{target:"_blank",href:"https://gitee.com/dromara/zyplayer-doc/issues"}},[e._v("https://gitee.com/dromara/zyplayer-doc/issues")])]),a("div",[e._v("新功能关注&技术交流QQ群:466363173")])])]),a("el-tab-pane",{attrs:{label:"开源软件"}},[a("div",{staticStyle:{"line-height":"30px"}},[a("div",[e._v("此项目基于以下开源软件构建")]),a("el-divider",{attrs:{"content-position":"left"}},[e._v("后端")]),a("div",[a("a",{attrs:{target:"_blank",href:"https://spring.io/projects/spring-boot"}},[e._v("Spring-Boot")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"http://www.mybatis.org"}},[e._v("MyBatis")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://github.com/alibaba/druid"}},[e._v("Druid")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://mp.baomidou.com"}},[e._v("MyBatis-Plus")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://www.hutool.cn"}},[e._v("Hutool")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://github.com/alibaba/fastjson"}},[e._v("Fastjson")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://alibaba-easyexcel.github.io"}},[e._v("Easy Excel")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"https://swagger.io"}},[e._v("Swagger")]),e._v("、 "),a("a",{attrs:{target:"_blank",href:"http://www.eclipse.org/jgit"}},[e._v("JGit")]),e._v("、... ")]),a("el-divider",{attrs:{"content-position":"left"}},[e._v("前端")]),e._v(" Vue、element-ui、wangeditor、mavon-editor、qrcodejs2、vant、vue-router、axios、vue-hljs、brace、echarts、sql-formatter、vue-clipboard2、... "),a("div")],1)]),e.upgradeInfo.lastVersion?a("el-tab-pane",{attrs:{label:"软件更新"}},[a("span",{attrs:{slot:"label"},slot:"label"},[e._v(" 软件更新 "),a("sup",{staticClass:"el-badge__content el-badge__content--undefined is-fixed is-dot",staticStyle:{top:"10px",right:"20px"}})]),a("div",{staticStyle:{"line-height":"30px"}},[a("div",[e._v("当前版本:"+e._s(e.upgradeInfo.nowVersion))]),a("div",[e._v("最新版本:"+e._s(e.upgradeInfo.lastVersion))]),a("div",[e._v("升级地址:"),a("a",{attrs:{target:"_blank",href:e.upgradeInfo.upgradeUrl}},[e._v(e._s(e.upgradeInfo.upgradeUrl))])]),a("div",[e._v("升级内容:")]),a("pre",{staticStyle:{margin:"0","max-height":"250px",overflow:"auto"}},[e._v(e._s(e.upgradeInfo.upgradeContent))])])]):e._e()],1)],1)])},U=[],y={systemUpgradeInfo:function(e){return h({url:"/system/info/upgrade",method:"post",data:u.a.stringify(e)})},fetchMoudleData:function(e){return h({url:"/system/info/moudle",method:"get",data:u.a.stringify(e)})}},_={data:function(){return{aboutDialogVisible:!1,upgradeInfo:{}}},mounted:function(){this.checkSystemUpgrade()},methods:{show:function(){this.aboutDialogVisible=!0},checkSystemUpgrade:function(){var e=this;y.systemUpgradeInfo({}).then((function(t){t.data&&(e.upgradeInfo=t.data,e.upgradeInfo.upgradeContent&&(e.upgradeInfo.upgradeContent=e.upgradeInfo.upgradeContent.replaceAll(";","\n")),console.log("zyplayer-doc发现新版本:\n升级地址:"+t.data.upgradeUrl+"\n当前版本:"+t.data.nowVersion+"\n最新版本:"+t.data.lastVersion+"\n升级内容:"+t.data.upgradeContent))}))}}},x=_,k=(a("1cc7"),a("2877")),P=Object(k["a"])(x,w,U,!1,null,null,null),L=P.exports,I={data:function(){return{isCollapse:!1,userSelfInfo:{},userAuth:{userManage:!1}}},components:{peoples:b["a"],people:v["a"],"about-dialog":L},computed:{fullscreen:function(){return this.$store.state.global.fullscreen}},mounted:function(){this.getSelfUserInfo()},methods:{handleOpen:function(e,t){console.log(e,t)},handleClose:function(e,t){console.log(e,t)},userSettingDropdown:function(e){console.log("command:"+e),"userSignOut"==e?this.userSignOut():"aboutDoc"==e?this.$refs.aboutDialog.show():"myInfo"==e?this.$router.push({path:"/user/myInfo"}):"console"==e?window.open("./","_blank"):this.$message.warn("功能暂未开放")},userSignOut:function(){g.userLogout().then((function(){location.reload()})).catch((function(e){console.log("退出登录失败",e)}))},getSelfUserInfo:function(){var e=this;g.selfInfoWithAuth().then((function(t){var a=t.data||{};e.userSelfInfo=a.userInfo||{},e.userAuth=a.userAuth||{}})).catch((function(e){console.log("获取用户信息失败",e)}))}}},S=I,C=(a("034f"),Object(k["a"])(S,o,n,!1,null,null,null)),F=C.exports,N=a("8c4f"),$=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-tabs",{staticStyle:{padding:"5px 10px 0"},attrs:{type:"card",closable:""},on:{"tab-click":e.changePage,"tab-remove":e.removePageTab},model:{value:e.activePage,callback:function(t){e.activePage=t},expression:"activePage"}},e._l(e.pageList,(function(t){return a("el-tab-pane",{attrs:{label:e.pageTabNameMap[t.fullPath]||t.name,name:t.fullPath}})})),1),a("keep-alive",[a("router-view",{key:e.$route.fullPath,on:{initLoadDataList:e.initLoadDataList,loadDatasourceList:e.loadDatasourceList}})],1)],1)},A=[],D=(a("4de4"),a("b0c0"),{name:"PageTableView",components:{},data:function(){return{pageList:[],linkList:[],activePage:"",multiPage:!0}},computed:{pageTabNameMap:function(){return this.$store.state.global.pageTabNameMap}},created:function(){this.pageList.push(this.$route),this.linkList.push(this.$route.fullPath),this.activePage=this.$route.fullPath},watch:{$route:function(e,t){this.activePage=e.fullPath,this.linkList.indexOf(e.fullPath)<0&&(this.linkList.push(e.fullPath),this.pageList.push(e))},activePage:function(e){this.$router.push(e)}},methods:{initLoadDataList:function(e){this.$emit("initLoadDataList",e)},loadDatasourceList:function(){this.$emit("loadDatasourceList")},changePage:function(e){this.activePage=e.name},editPage:function(e,t){this[t](e)},removePageTab:function(e){if(1!==this.pageList.length){this.pageList=this.pageList.filter((function(t){return t.fullPath!==e}));var t=this.linkList.indexOf(e);this.linkList=this.linkList.filter((function(t){return t!==e})),t=t>=this.linkList.length?this.linkList.length-1:t,this.activePage=this.linkList[t]}else this.$message.warning("这是最后一页,不能再关闭了啦")}}}),G=D,O=Object(k["a"])(G,$,A,!1,null,"4c1de009",null),z=O.exports,V=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticStyle:{padding:"10px"}},[a("div",{staticStyle:{"max-width":"800px",margin:"20px auto"}},[a("div",{staticStyle:{padding:"20px"}},[a("el-card",{staticClass:"box-card"},[a("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[a("span",[e._v("所有产品")])]),a("div",{staticClass:"product-list"},[this.moudleInfo.enableApi?a("div",{staticClass:"item",on:{click:function(t){return e.jumpToDocPage("doc-api")}}},[a("div",{staticClass:"logo-text text1"},[e._v("API")]),a("div",[e._v("API接口文档")])]):e._e(),this.moudleInfo.enableDb?a("div",{staticClass:"item",on:{click:function(t){return e.jumpToDocPage("doc-db")}}},[a("div",{staticClass:"logo-text text2"},[e._v("DB")]),a("div",[e._v("数据库文档")])]):e._e(),this.moudleInfo.enableWiki?a("div",{staticClass:"item",on:{click:function(t){return e.jumpToDocPage("doc-wiki")}}},[a("div",{staticClass:"logo-text text3"},[e._v("WIKI")]),a("div",[e._v("WIKI文档")])]):e._e()])])],1)])])},R=[],j={data:function(){return{moudleInfo:{enableWiki:!0,enableDb:!0,enableApi:!0}}},mounted:function(){},created:function(){this.fetchMoudle()},methods:{fetchMoudle:function(){var e=this;y.fetchMoudleData().then((function(t){t.data&&(e.moudleInfo=t.data,console.log("wiki模块启动状态"+e.moudleInfo.enableWiki+"db模块启动状态"+e.moudleInfo.enableDb+"api模块启动状态"+e.moudleInfo.enableApi))}))},jumpToDocPage:function(e){window.open(e)}}},E=j,T=(a("2629"),Object(k["a"])(E,V,R,!1,null,null,null)),M=T.exports,J=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"my-info-vue"},[a("div",{staticStyle:{margin:"0 auto","max-width":"1000px"}},[a("el-card",{staticClass:"box-card"},[a("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[a("el-row",[a("el-col",{staticStyle:{"line-height":"40px"},attrs:{span:12}},[e._v("我的信息")]),a("el-col",{staticStyle:{"text-align":"right"},attrs:{span:12}},[a("el-button",{attrs:{type:"primary"},on:{click:e.showUpdatePasswordDialog}},[a("i",{staticClass:"el-icon-edit"}),e._v(" 修改密码")])],1)],1)],1),a("el-form",{staticClass:"search-form-box",attrs:{"label-width":"100px"}},[a("el-form-item",{attrs:{label:"账号:"}},[e._v(e._s(e.userInfo.userNo))]),a("el-form-item",{attrs:{label:"用户名:"}},[e._v(e._s(e.userInfo.userName))]),a("el-form-item",{attrs:{label:"手机号:"}},[e._v(e._s(e.userInfo.phone))]),a("el-form-item",{attrs:{label:"邮箱:"}},[e._v(e._s(e.userInfo.email))]),a("el-form-item",{attrs:{label:"状态:"}},[e._v(e._s(0==e.userInfo.delFlag?"正常":"停用"))]),a("el-form-item",{attrs:{label:"性别:"}},[e._v(e._s(0==e.userInfo.sex?"女":"男"))])],1)],1)],1),a("el-dialog",{attrs:{title:"修改密码",visible:e.updatePasswordDialogVisible,width:"500px"},on:{"update:visible":function(t){e.updatePasswordDialogVisible=t}}},[a("el-form",{ref:"passwordForm",attrs:{"label-width":"120px",model:e.updatePassword,"status-icon":"",rules:e.updatePasswordRules}},[a("el-form-item",{attrs:{label:"当前密码",prop:"currentPwd"}},[a("el-input",{attrs:{type:"password",placeholder:"请输入当前密码"},model:{value:e.updatePassword.currentPwd,callback:function(t){e.$set(e.updatePassword,"currentPwd",t)},expression:"updatePassword.currentPwd"}})],1),a("el-form-item",{attrs:{label:"新密码",prop:"newPwd"}},[a("el-input",{attrs:{type:"password",placeholder:"请输入新密码"},model:{value:e.updatePassword.newPwd,callback:function(t){e.$set(e.updatePassword,"newPwd",t)},expression:"updatePassword.newPwd"}})],1),a("el-form-item",{attrs:{label:"确认新密码",prop:"repeatPwd"}},[a("el-input",{attrs:{type:"password",placeholder:"请再次输入新密码"},model:{value:e.updatePassword.repeatPwd,callback:function(t){e.$set(e.updatePassword,"repeatPwd",t)},expression:"updatePassword.repeatPwd"}})],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.submitUpdatePasswordForm}},[e._v("修改密码")])],1)],1)],1)],1)},B=[],W={data:function(){return{userInfo:{},updatePasswordDialogVisible:!1,updatePassword:{currentPwd:"",newPwd:"",repeatPwd:""},updatePasswordRules:{currentPwd:[{validator:this.validateCurrentPwd,trigger:"blur"}],newPwd:[{validator:this.validateNewPwd,trigger:"blur"}],repeatPwd:[{validator:this.validateRepeatPwd,trigger:"blur"}]}}},mounted:function(){this.getUserInfo()},methods:{getUserInfo:function(){var e=this;g.getSelfUserInfo().then((function(t){e.userInfo=t.data}))},showUpdatePasswordDialog:function(){this.updatePasswordDialogVisible=!0},submitUpdatePasswordForm:function(){var e=this;this.$refs.passwordForm.validate((function(t){if(!t)return!1;g.updateSelfPwd(e.updatePassword).then((function(t){e.$message.success("修改成功!请重新登录"),setTimeout((function(){g.userLogout().then((function(){location.reload()})).catch((function(e){console.log("退出登录失败",e)}))}),500)}))}))},validateCurrentPwd:function(e,t,a){""===t?a(new Error("请输入密码")):a()},validateNewPwd:function(e,t,a){""===t?a(new Error("请输入新密码")):(""!==this.updatePassword.newPwd&&this.$refs.passwordForm.validateField("repeatPwd"),a())},validateRepeatPwd:function(e,t,a){""===t?a(new Error("请再次输入新密码")):this.updatePassword.repeatPwd!==this.updatePassword.newPwd?a(new Error("两次输入的密码不一致")):a()}}},q=W,H=(a("dcfc"),Object(k["a"])(q,J,B,!1,null,null,null)),K=H.exports,Q=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"login-background linear-gradient-"+e.bgImgRandom},[a("div",{staticClass:"login-box"},[a("el-form",{ref:"loginParam",staticClass:"demo-ruleForm login-container",attrs:{model:e.loginParam,rules:e.loginRules,"label-position":"left","label-width":"0px"}},[a("h3",{staticClass:"title"},[e._v("文档管理-系统登录")]),a("el-form-item",{attrs:{prop:"username"}},[a("el-input",{attrs:{type:"text","auto-complete":"off",placeholder:"账号"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.loginSubmit(t)}},model:{value:e.loginParam.username,callback:function(t){e.$set(e.loginParam,"username",t)},expression:"loginParam.username"}})],1),a("el-form-item",{attrs:{prop:"password"}},[a("el-input",{attrs:{type:"password","auto-complete":"off",placeholder:"密码"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.loginSubmit(t)}},model:{value:e.loginParam.password,callback:function(t){e.$set(e.loginParam,"password",t)},expression:"loginParam.password"}})],1),a("el-form-item",{staticStyle:{width:"100%"}},[a("el-button",{staticStyle:{width:"100%"},attrs:{type:"primary",loading:e.loginLoading},nativeOn:{click:function(t){return t.preventDefault(),e.loginSubmit(t)}}},[e._v("登录")])],1)],1)],1),e._m(0)])},X=[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"power-by"},[e._v("Powered By "),a("a",{attrs:{target:"_blank",href:"https://gitee.com/zyplayer/zyplayer-doc"}},[e._v("zyplayer-doc")])])}],Y={data:function(){return{loginLoading:!1,redirect:"",loginParam:{username:"",password:""},loginRules:{username:[{required:!0,message:"请输入账号",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}]},bgImgRandom:Math.ceil(5*Math.random())}},mounted:function(){this.redirect=this.$route.query.redirect},methods:{loginSubmit:function(){var e=this;this.$refs.loginParam.validate((function(t){t&&(e.loginLoading=!0,g.userLogin(e.loginParam).then((function(){e.$emit("loginSuccess"),e.loginLoading=!1,e.redirect?location.href=decodeURIComponent(e.redirect):e.$router.back()})).catch((function(t){console.log("登录失败",t),e.loginLoading=!1})))}))}}},Z=Y,ee=(a("9231"),Object(k["a"])(Z,Q,X,!1,null,null,null)),te=ee.exports,ae=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"user-list-vue"},[a("el-breadcrumb",{staticStyle:{padding:"20px 10px"},attrs:{"separator-class":"el-icon-arrow-right"}},[a("el-breadcrumb-item",{attrs:{to:{path:"/"}}},[e._v("首页")]),a("el-breadcrumb-item",[e._v("系统管理")]),a("el-breadcrumb-item",[e._v("用户列表")])],1),a("el-form",{staticClass:"search-form-box",attrs:{inline:!0,model:e.searchParam}},[a("el-form-item",{attrs:{label:"搜索类型"}},[a("el-select",{attrs:{placeholder:"请选择"},model:{value:e.searchParam.type,callback:function(t){e.$set(e.searchParam,"type",t)},expression:"searchParam.type"}},[a("el-option",{attrs:{label:"ID",value:1}}),a("el-option",{attrs:{label:"账号",value:2}}),a("el-option",{attrs:{label:"用户名",value:3}}),a("el-option",{attrs:{label:"手机",value:4}}),a("el-option",{attrs:{label:"邮箱",value:5}})],1)],1),a("el-form-item",{attrs:{label:"关键字"}},[a("el-input",{attrs:{placeholder:"输入关键字"},model:{value:e.searchParam.keyword,callback:function(t){e.$set(e.searchParam,"keyword",t)},expression:"searchParam.keyword"}})],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.getUserList}},[e._v("查询")])],1),a("el-form-item",[a("el-button",{attrs:{type:"success"},on:{click:e.addUserInfo}},[a("i",{staticClass:"el-icon-plus"}),e._v(" 添加")])],1)],1),a("div",{directives:[{name:"loading",rawName:"v-loading",value:e.searchLoading,expression:"searchLoading"}],staticStyle:{padding:"10px"}},[a("el-table",{staticStyle:{width:"100%","margin-bottom":"5px"},attrs:{data:e.searchResultList,border:"","max-height":"500"}},[a("el-table-column",{attrs:{prop:"id",label:"编号",width:"60"}}),a("el-table-column",{attrs:{prop:"userNo",label:"账号"}}),a("el-table-column",{attrs:{prop:"email",label:"邮箱"}}),a("el-table-column",{attrs:{prop:"userName",label:"用户名"}}),a("el-table-column",{attrs:{prop:"phone",label:"手机号"}}),a("el-table-column",{attrs:{label:"性别"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v(e._s(0==t.row.sex?"女":"男"))]}}])}),a("el-table-column",{attrs:{prop:"creationTime",label:"创建时间"}}),a("el-table-column",{attrs:{label:"状态"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v(e._s(0==t.row.delFlag?"正常":"停用"))]}}])}),a("el-table-column",{attrs:{label:"操作",width:"300"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{size:"mini",plain:"",type:"primary"},on:{click:function(a){return e.editUserInfo(t.row)}}},[e._v("修改")]),a("el-button",{attrs:{size:"mini",plain:"",type:"success"},on:{click:function(a){return e.editUserAuthFun(t.row)}}},[e._v("权限")]),a("el-button",{attrs:{size:"mini",plain:"",type:"warning"},on:{click:function(a){return e.resetPassword(t.row)}}},[e._v("重置密码")]),a("el-button",{attrs:{size:"mini",plain:"",type:"danger"},on:{click:function(a){return e.deleteUser(t.row)}}},[e._v("删除")])]}}])})],1)],1),a("div",{staticClass:"page-info-box"},[a("el-pagination",{attrs:{"page-sizes":[20,50,100],"page-size":20,"current-page":e.searchParam.pageNum,layout:"prev, pager, next, jumper, sizes, total",total:e.totalCount},on:{"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1),a("el-dialog",{attrs:{title:"权限编辑",visible:e.editUserAuthDialogVisible,width:"600px","close-on-click-modal":!1},on:{"update:visible":function(t){e.editUserAuthDialogVisible=t}}},[a("el-form",{ref:"form",attrs:{"label-width":"80px"}},[a("el-form-item",{attrs:{label:"账号"}},[a("el-input",{attrs:{disabled:""},model:{value:e.editUserForm.userNo,callback:function(t){e.$set(e.editUserForm,"userNo",t)},expression:"editUserForm.userNo"}})],1),a("el-form-item",{attrs:{label:"用户名"}},[a("el-input",{attrs:{disabled:""},model:{value:e.editUserForm.userName,callback:function(t){e.$set(e.editUserForm,"userName",t)},expression:"editUserForm.userName"}})],1),a("el-form-item",{attrs:{label:"权限"}},[a("el-select",{staticStyle:{width:"100%"},attrs:{multiple:"",filterable:"",placeholder:"请选择"},model:{value:e.editUserAuth,callback:function(t){e.editUserAuth=t},expression:"editUserAuth"}},e._l(e.allUserAuth,(function(e){return a("el-option",{key:e.id,attrs:{label:e.authDesc,value:e.id}})})),1)],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.editUserAuthSave}},[e._v("确定")]),a("el-button",{on:{click:function(t){e.editUserAuthDialogVisible=!1}}},[e._v("取消")])],1)],1)],1),a("el-dialog",{attrs:{title:e.editUserForm.id>0?"修改用户":"创建用户",visible:e.editUserDialogVisible,width:"600px","close-on-click-modal":!1},on:{"update:visible":function(t){e.editUserDialogVisible=t}}},[a("el-form",{ref:"form",attrs:{model:e.editUserForm,"label-width":"80px"}},[a("el-form-item",{attrs:{label:"账号"}},[a("el-input",{model:{value:e.editUserForm.userNo,callback:function(t){e.$set(e.editUserForm,"userNo",t)},expression:"editUserForm.userNo"}})],1),a("el-form-item",{attrs:{label:"用户名"}},[a("el-input",{model:{value:e.editUserForm.userName,callback:function(t){e.$set(e.editUserForm,"userName",t)},expression:"editUserForm.userName"}})],1),a("el-form-item",{attrs:{label:"手机号"}},[a("el-input",{model:{value:e.editUserForm.phone,callback:function(t){e.$set(e.editUserForm,"phone",t)},expression:"editUserForm.phone"}})],1),a("el-form-item",{attrs:{label:"邮箱"}},[a("el-input",{model:{value:e.editUserForm.email,callback:function(t){e.$set(e.editUserForm,"email",t)},expression:"editUserForm.email"}})],1),a("el-form-item",{attrs:{label:"新密码"}},[a("el-input",{attrs:{placeholder:"为空代表不修改密码"},model:{value:e.editUserForm.password,callback:function(t){e.$set(e.editUserForm,"password",t)},expression:"editUserForm.password"}})],1),a("el-form-item",{attrs:{label:"状态"}},[a("el-switch",{attrs:{"active-value":0,"active-text":"正常","inactive-value":2,"inactive-text":"停用"},model:{value:e.editUserForm.delFlag,callback:function(t){e.$set(e.editUserForm,"delFlag",t)},expression:"editUserForm.delFlag"}})],1),a("el-form-item",{attrs:{label:"性别"}},[a("el-radio-group",{model:{value:e.editUserForm.sex,callback:function(t){e.$set(e.editUserForm,"sex",t)},expression:"editUserForm.sex"}},[a("el-radio",{attrs:{label:1}},[e._v("男")]),a("el-radio",{attrs:{label:0}},[e._v("女")])],1)],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.updateEditUser}},[e._v("确定")]),a("el-button",{on:{click:function(t){e.editUserDialogVisible=!1}}},[e._v("取消")])],1)],1)],1)],1)},re=[],ie=(a("a15b"),{data:function(){return{searchLoading:!1,editUserDialogVisible:!1,editUserAuthDialogVisible:!1,totalCount:0,searchParam:{type:1,keyword:"",pageSize:20,pageNum:1},searchResultList:[],roleOptions:[{value:"管理员"}],editUserForm:{},allUserAuth:[],editUserAuth:[]}},mounted:function(){this.getUserList()},methods:{handleSizeChange:function(e){this.searchParam.pageSize=e,this.getUserList()},handleCurrentChange:function(e){this.searchParam.pageNum=e,this.getUserList()},editUserAuthFun:function(e){var t=this;this.allUserAuth=[],this.editUserAuth=[];var a={userIds:e.id};g.userAuthList(a).then((function(a){t.editUserAuth=[],t.allUserAuth=a.data,t.editUserAuthDialogVisible=!0,t.editUserForm=JSON.parse(JSON.stringify(e));for(var r=0;r0?a("div",{directives:[{name:"loading",rawName:"v-loading",value:e.searchLoading,expression:"searchLoading"}],staticClass:"page-scroll-box"},[a("div",{staticStyle:{"margin-bottom":"10px"}},[a("el-button",{attrs:{size:"mini",plain:"",type:"primary",icon:"el-icon-plus"},on:{click:e.showChoiceUserDialog}},[e._v("添加用户")])],1),a("el-table",{staticStyle:{width:"100%","margin-bottom":"5px"},attrs:{data:e.userGroupRelationList,border:"","max-height":e.tableHeight}},[a("el-table-column",{attrs:{prop:"id",label:"编号",width:"60"}}),a("el-table-column",{attrs:{prop:"userNo",label:"账号"}}),a("el-table-column",{attrs:{prop:"email",label:"邮箱"}}),a("el-table-column",{attrs:{prop:"userName",label:"用户名"}}),a("el-table-column",{attrs:{prop:"phone",label:"手机号"}}),a("el-table-column",{attrs:{label:"性别"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v(e._s(0==t.row.sex?"女":"男"))]}}],null,!1,1138127522)}),a("el-table-column",{attrs:{label:"操作",width:"300"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{size:"mini",plain:"",type:"danger"},on:{click:function(a){return e.removeUserRelationFromList(t.row.id)}}},[e._v("移除")])]}}],null,!1,1988185234)})],1)],1):e._e()])],1),a("el-dialog",{attrs:{title:"添加用户到分组",visible:e.choiceUserVisible,width:"600px"},on:{"update:visible":function(t){e.choiceUserVisible=t},close:e.closeChoiceUserDialog}},[a("el-row",[a("el-select",{staticStyle:{width:"450px","margin-right":"10px"},attrs:{filterable:"",remote:"","reserve-keyword":"",autoComplete:"new-password",placeholder:"请输入名字、邮箱、账号搜索用户","remote-method":e.getSearchUserList,loading:e.searchUserLoading},model:{value:e.searchAddNewUser,callback:function(t){e.searchAddNewUser=t},expression:"searchAddNewUser"}},e._l(e.searchUserList,(function(e){return a("el-option",{key:e.id,attrs:{label:e.userName,value:e.id}})})),1),a("el-button",{on:{click:e.addSearchChoiceUser}},[e._v("添加")])],1),a("div",{staticStyle:{margin:"10px 0"}},e._l(e.searchAddUserList,(function(t){return a("el-tag",{key:t.userId,staticStyle:{"margin-right":"10px"},attrs:{closable:"",type:"info"},on:{close:function(a){return e.removeUserRelationFromSearch(t.userId)}}},[e._v(" "+e._s(t.userName)+" ")])})),1)],1)],1)},ye=[],_e=(a("7db0"),a("4160"),a("159b"),{data:function(){return{searchLoading:!1,editUserDialogVisible:!1,editUserAuthDialogVisible:!1,totalCount:0,searchParam:{type:1,keyword:""},searchResultList:[],roleOptions:[{value:"管理员"}],editUserForm:{},allUserAuth:[],editUserAuth:[],userGroupRelationList:[],userGroupList:[],editGroupName:"",checkedUserGroupId:"",createUserGroupVisible:!1,choiceUserVisible:!1,searchAddUserList:[],searchUserList:[],searchAddNewUser:"",searchUserLoading:!1,tableHeight:document.body.clientHeight-250}},mounted:function(){this.getUserGroupList()},methods:{getUserGroupList:function(){var e=this;this.userGroupList=[],g.userGroupList().then((function(t){var a=t.data||[];a.forEach((function(e){e.edit=!1,e.checked=!1,e.editName=e.name})),e.userGroupList=a}))},loadUserGroupRelation:function(e,t){var a=this;(t||e!=this.checkedUserGroupId)&&(this.checkedUserGroupId=e,this.searchLoading=!0,g.userGroupRelationList({groupId:e}).then((function(e){a.searchLoading=!1,a.userGroupRelationList=e.data||[]})))},updateUserGroup:function(e){if(e.name!=e.editName){var t={id:e.id,name:e.editName};g.updateUserGroup(t).then((function(t){e.edit=!1,e.name=e.editName}))}else e.edit=!1},createUserGroup:function(){var e=this,t={name:this.editGroupName};g.updateUserGroup(t).then((function(t){e.editGroupName="",e.createUserGroupVisible=!1,e.getUserGroupList()}))},removeUserGroup:function(e){var t=this;g.deleteUserGroup({id:e}).then((function(e){t.checkedUserGroupId="",t.getUserGroupList()}))},closeChoiceUserDialog:function(){this.loadUserGroupRelation(this.checkedUserGroupId,!0)},showChoiceUserDialog:function(){var e=this;this.choiceUserVisible=!0,this.searchAddUserList=[],this.userGroupRelationList.forEach((function(t){e.searchAddUserList.push({userName:t.userName,userId:t.id})}))},getSearchUserList:function(e){var t=this;e&&(this.searchUserLoading=!0,g.searchUserInfoList({search:e}).then((function(e){t.searchUserList=e.data||[],t.searchUserLoading=!1})))},removeUserRelationFromSearch:function(e){var t=this,a={groupId:this.checkedUserGroupId,userId:e};g.removeUserGroupRelation(a).then((function(a){t.searchAddUserList=t.searchAddUserList.filter((function(t){return t.userId!=e}))}))},removeUserRelationFromList:function(e){var t=this,a={groupId:this.checkedUserGroupId,userId:e};g.removeUserGroupRelation(a).then((function(e){t.loadUserGroupRelation(t.checkedUserGroupId,!0)}))},addSearchChoiceUser:function(){var e=this;if(this.searchAddNewUser.length<=0)this.$message.warning("请先选择用户");else if(this.searchAddUserList.find((function(t){return t.userId==e.searchAddNewUser})))this.searchAddNewUser="";else{var t=this.searchUserList.find((function(t){return t.id==e.searchAddNewUser})).userName,a={groupId:this.checkedUserGroupId,userId:this.searchAddNewUser};g.updateUserGroupRelation(a).then((function(a){e.searchAddUserList.push({userName:t,userId:e.searchAddNewUser})})),this.searchAddNewUser=""}}}}),xe=_e,ke=(a("71a4"),Object(k["a"])(xe,Ue,ye,!1,null,null,null)),Pe=ke.exports,Le=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[e._v("没有权限访问该模块")])},Ie=[],Se={data:function(){return{}},mounted:function(){},methods:{}},Ce=Se,Fe=Object(k["a"])(Ce,Le,Ie,!1,null,null,null),Ne=Fe.exports,$e=[{path:"/",redirect:"/home"},{path:"/user/login",name:"系统登录",component:te,meta:{fullscreen:!0}},{path:"/",name:"页面管理",component:z,children:[{path:"/home",name:"控制台",component:M}]},{path:"/user",name:"用户管理",component:z,children:[{path:"myInfo",name:"我的信息",component:K}]},{path:"/console",name:"系统管理",component:z,children:[{path:"userList",name:"用户管理",component:ne},{path:"roleList",name:"权限管理",component:me},{path:"authList",name:"角色列表",component:we},{path:"userGroupList",name:"分组管理",component:Pe}]},{path:"/common",name:"",component:z,children:[{path:"noAuth",name:"没有权限",component:Ne}]}],Ae=$e,De=a("2f62"),Ge={namespaced:!0,state:{pageTabNameMap:{},fullscreen:!1},getters:{getPageTabNameMap:function(e){return e.pageTabNameMap}},mutations:{addTableName:function(e,t){var a=Object.assign({},e.pageTabNameMap);a[t.key]=t.val,e.pageTabNameMap=a},setFullscreen:function(e,t){e.fullscreen=t}}};r["default"].use(De["a"]);var Oe=new De["a"].Store({modules:{global:Ge}}),ze=a("a7fe"),Ve=a.n(ze),Re=a("2315"),je=a.n(Re);a("f1e9");r["default"].use(s.a),r["default"].use(N["a"]),r["default"].use(Ve.a,d.a),r["default"].use(je.a),r["default"].prototype.$store=Oe;var Ee=new N["a"]({routes:Ae});Ee.beforeEach((function(e,t,a){e.meta.title&&(document.title=e.meta.title),Oe.commit("global/setFullscreen",!!e.meta.fullscreen),a()}));var Te=new r["default"]({el:"#app",router:Ee,render:function(e){return e(F)}}),Me=t["default"]=Te},"594a":function(e,t,a){},"71a4":function(e,t,a){"use strict";var r=a("2352"),i=a.n(r);i.a},"85ec":function(e,t,a){},9231:function(e,t,a){"use strict";var r=a("40c0"),i=a.n(r);i.a},cc1a:function(e,t,a){"use strict";var r=a("594a"),i=a.n(r);i.a},d1f1:function(e,t,a){},d784:function(e,t,a){},d9af:function(e,t,a){"use strict";var r=a("4eaf"),i=a.n(r);i.a},dcfc:function(e,t,a){"use strict";var r=a("ed55"),i=a.n(r);i.a},ed55:function(e,t,a){}}); \ No newline at end of file diff --git a/zyplayer-doc-ui/console-ui/src/common/api/system.js b/zyplayer-doc-ui/console-ui/src/common/api/system.js index c3b6861e..a17dd780 100644 --- a/zyplayer-doc-ui/console-ui/src/common/api/system.js +++ b/zyplayer-doc-ui/console-ui/src/common/api/system.js @@ -5,4 +5,7 @@ export default { systemUpgradeInfo: data => { return request({url: '/system/info/upgrade', method: 'post', data: Qs.stringify(data)}); }, + fetchMoudleData: data => { + return request({url: '/system/info/moudle', method: 'get', data: Qs.stringify(data)}); + } }; diff --git a/zyplayer-doc-ui/console-ui/src/views/home/Home.vue b/zyplayer-doc-ui/console-ui/src/views/home/Home.vue index ce96035c..ed78f2dc 100644 --- a/zyplayer-doc-ui/console-ui/src/views/home/Home.vue +++ b/zyplayer-doc-ui/console-ui/src/views/home/Home.vue @@ -7,15 +7,15 @@ 所有产品
-
+
API
API接口文档
-
+
DB
数据库文档
-
+
WIKI
WIKI文档
@@ -27,14 +27,35 @@