src/assets/imgs/login/bk.png | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/router/index.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/layout/components/Header/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/layout/components/Main/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/layout/components/SiderBar/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/layout/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/login/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/systemSetting/baseSetting/user/createUser/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/systemSetting/接入管理 | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/systemSetting/设备管理 | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/systemSetting/运维管理 | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/systemSetting/门户管理 | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/系统设置/基本设置 | 补丁 | 查看 | 原始文档 | blame | 历史 |
src/assets/imgs/login/bk.png
src/router/index.js
@@ -3,30 +3,35 @@ Vue.use(VueRouter) const routes = [ { path:'/home', name:'home', component:()=>import('@/views/layout'), children:[ path: '/home', name: 'home', component: () => import('@/views/layout'), children: [ { path:"video", name:'video', component:()=>import('@/views/video') } ] path: "video", name: 'video', component: () => import('@/views/video') }, { path:"createUser", name:"createUser", component:()=> import('@/views/systemSetting/baseSetting/user/createUser') } ] }, { path:'/login', name:'login', component:()=>import('@/views/login') path: '/login', name: 'login', component: () => import('@/views/login') }, { path: '/screen', name: 'screen', component: ()=>import('@/views/screen') }, component: () => import('@/views/screen') }, { path: '/404', name:"404", name: "404", component: () => import('@/views/NotFound'), }, { path: '*', redirect: '/404' } src/views/layout/components/Header/index.vue
@@ -14,13 +14,13 @@ <div class="loginout" @click="loginout">éåºç»å½</div> </div> </el-header> <NavBar /> <!-- <NavBar /> --> </div> </template> <script> import hamburger from "@/components/hamburger"; import NavBar from "../NavBar"; // import NavBar from "../NavBar"; export default { data() { return { @@ -29,7 +29,7 @@ }, components: { hamburger, NavBar, // NavBar, }, methods:{ loginout(){ src/views/layout/components/Main/index.vue
@@ -5,11 +5,11 @@ </template> <script> import NavBar from "../NavBar" // import NavBar from "../NavBar" export default { name: "Main", components:{ NavBar // NavBar } }; </script> src/views/layout/components/SiderBar/index.vue
@@ -6,37 +6,68 @@ <el-scrollbar> <!-- è·¯ç± --> <el-menu router class="el-menu-vertical" :default-active="$route.path" > <!-- è§é¢å·¡æ¥ --> <el-submenu index="/home/video"> <template slot="title"> <span slot="prefix" class="icon-padding"> <svg-icon icon-class="video"></svg-icon> <!-- ç³»ç»è®¾ç½®æ¨¡å --> <el-submenu index="/home/system" class="firstMenu"> <template slot="title" class="firstSpan"> <!-- <i class="el-icon-reading"></i> --> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="system"></svg-icon> </span> <span slot="title">è§é¢å·¡æ¥</span> <span class="fisrtSpan">ç³»ç»è®¾ç½®</span> </template> <el-menu-item index="/home/video">è§é¢å·¡æ¥</el-menu-item> <!-- åºæ¬è®¾ç½® --> <el-submenu index="/admin/system/base" class="secondMenu"> <template slot="title"> <span class="secondSpan">åºæ¬è®¾ç½®</span> </template> <!-- ç¨æ·ç®¡ç --> <el-submenu index="/admin/system/base/user" class="thirdMenu"> <template slot="title"> <span class="thirdSpan">ç¨æ·ç®¡ç</span> </template> <el-menu-item index="/home/createUser">æ°å»ºç¨æ·(è´¦æ·)</el-menu-item> <el-menu-item index="/admin/system/base/userList">ç¨æ·å表</el-menu-item> </el-submenu> <!-- è§è²ç®¡ç --> <el-submenu index="/admin/system/base/role" class="thirdMenu"> <template slot="title"> <span class="thirdSpan">è§è²ç®¡ç</span> </template> <el-menu-item index="/admin/system/base/role/createRole">æ°å»ºè§è²</el-menu-item> <el-menu-item index="/admin/system/base/roleList">è§è²ç®¡çå表</el-menu-item> </el-submenu> <!-- æé管ç --> <el-submenu index="/admin/system/base/authority" class="thirdMenu"> <template slot="title"> <span class="thirdSpan">æé管ç</span> </template> <el-menu-item index="/admin/system/base/authority">设置æé</el-menu-item> </el-submenu> <!-- é¨é¨ç®¡ç --> <el-submenu index="/admin/system/base/department" class="thirdMenu"> <template slot="title"> <span class="thirdSpan">é¨é¨ç®¡ç</span> </template> <el-menu-item index="/admin/system/base/department/createDepartment">å建é¨é¨</el-menu-item> <el-menu-item index="/admin/system/base/department/controle">é¨é¨ç®¡ç</el-menu-item> </el-submenu> </el-submenu> <!-- å¹³å°è®¾ç½® --> <el-submenu index="/admin/article/add" class="secondMenu"> <template slot="title"> <span class="secondSpan">å¹³å°è®¾ç½®</span> </template> <el-menu-item index="/admin/article">鍿·è®¾ç½®</el-menu-item> <el-menu-item index="/admin/article">ç¬¬ä¸æ¹æ¥å£ç®¡ç</el-menu-item> </el-submenu> </el-submenu> <!-- æºè½å·¡æ¥ --> <el-submenu index="/admin/article1"> <!-- è¿è¥ç®¡ç模å --> <el-submenu index="/home/operate" class="firstMenu"> <template slot="title"> <span slot="prefix" class="icon-padding"> <svg-icon icon-class="intelligence"></svg-icon> </span> <span>æºè½å·¡æ¥</span> </template> <el-menu-item index="/admin/article/add">é¢è¦ç å¤</el-menu-item> <el-menu-item index="/admin/article">è¿è§æ£ç´¢</el-menu-item> <el-menu-item index="/admin/article">è¶å¿åæ</el-menu-item> <el-menu-item index="/admin/article">æ°æ®ç»è®¡</el-menu-item> <el-menu-item index="/admin/article">è¿è¡æ¥å</el-menu-item> </el-submenu> <!-- è¿è¥ç®¡ç --> <el-submenu index="/admin/article2"> <template slot="title"> <span slot="prefix" class="icon-padding"> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="operate"></svg-icon> </span> <span>è¿è¥ç®¡ç</span> <span class="fisrtSpan">è¿è¥ç®¡ç</span> </template> <el-menu-item index="/admin/article/add">æ§æ³ç®¡ç</el-menu-item> <el-menu-item index="/admin/article/add">è°åº¦ç®¡ç</el-menu-item> @@ -50,33 +81,71 @@ <el-menu-item index="/admin/article">ç®æ³æ¨¡å管ç</el-menu-item> <el-menu-item index="/admin/article">æ¥å¿ç®¡ç</el-menu-item> </el-submenu> <!-- ç³»ç»è®¾ç½® --> <el-submenu index="/admin/article3"> <!-- è§é¢å·¡æ¥æ¨¡å --> <el-submenu index="/home/video" class="firstMenu"> <template slot="title"> <!-- <i class="el-icon-reading"></i> --> <span slot="prefix" class="icon-padding"> <svg-icon icon-class="system"></svg-icon> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="video"></svg-icon> </span> <span>ç³»ç»è®¾ç½®</span> <span slot="title" class="fisrtSpan">è§é¢å·¡æ¥</span> </template> <!-- åºæ¬è®¾ç½® --> <el-submenu index="/admin/article/add"> <template slot="title"> <span>åºæ¬è®¾ç½®</span> </template> <el-menu-item index="/admin/article">ç¨æ·ç®¡ç</el-menu-item> <el-menu-item index="/admin/article">è§è²ç®¡ç</el-menu-item> <el-menu-item index="/admin/article">æé管ç</el-menu-item> <el-menu-item index="/admin/article">é¨é¨ç®¡ç</el-menu-item> </el-submenu> <!-- å¹³å°è®¾ç½® --> <el-submenu index="/admin/article/add"> <template slot="title"> <span>å¹³å°è®¾ç½®</span> </template> <el-menu-item index="/admin/article">鍿·è®¾ç½®</el-menu-item> <el-menu-item index="/admin/article">ç¬¬ä¸æ¹æ¥å£ç®¡ç</el-menu-item> </el-submenu> <el-menu-item index="/home/video">è§é¢å·¡æ¥</el-menu-item> </el-submenu> <!-- æ²¹çä¿¡æ¯æ¥è¯¢æ¨¡å --> <el-submenu index="/home/lampblack" class="firstMenu"> <template slot="title"> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="intelligence"></svg-icon> </span> <span class="fisrtSpan">æ²¹çä¿¡æ¯æ¥è¯¢</span> </template> <el-menu-item index="/admin/article/add">é¢è¦ç å¤</el-menu-item> <el-menu-item index="/admin/article">è¿è§æ£ç´¢</el-menu-item> <el-menu-item index="/admin/article">è¶å¿åæ</el-menu-item> <el-menu-item index="/admin/article">æ°æ®ç»è®¡</el-menu-item> <el-menu-item index="/admin/article">è¿è¡æ¥å</el-menu-item> </el-submenu> <!-- æ§æ³ç®¡ç模å --> <el-submenu index="/home/law" class="firstMenu"> <template slot="title"> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="intelligence"></svg-icon> </span> <span class="fisrtSpan">æ§æ³ç®¡ç</span> </template> <el-menu-item index="/admin/article/add">é¢è¦ç å¤</el-menu-item> <el-menu-item index="/admin/article">è¿è§æ£ç´¢</el-menu-item> <el-menu-item index="/admin/article">è¶å¿åæ</el-menu-item> <el-menu-item index="/admin/article">æ°æ®ç»è®¡</el-menu-item> <el-menu-item index="/admin/article">è¿è¡æ¥å</el-menu-item> </el-submenu> <!-- æºè½å·¡æ¥æ¨¡å --> <el-submenu index="/admin/intellect" class="firstMenu"> <template slot="title"> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="intelligence"></svg-icon> </span> <span class="fisrtSpan">æºè½å·¡æ¥</span> </template> <el-menu-item index="/admin/article/add">é¢è¦ç å¤</el-menu-item> <el-menu-item index="/admin/article">è¿è§æ£ç´¢</el-menu-item> <el-menu-item index="/admin/article">è¶å¿åæ</el-menu-item> <el-menu-item index="/admin/article">æ°æ®ç»è®¡</el-menu-item> <el-menu-item index="/admin/article">è¿è¡æ¥å</el-menu-item> </el-submenu> <!-- å¹³å°åºæ¬ä¿¡æ¯ --> <el-submenu index="/admin/info" class="firstMenu"> <template slot="title"> <span slot="prefix" class="icon-padding fisrtSpan"> <svg-icon icon-class="intelligence"></svg-icon> </span> <span class="fisrtSpan">å¹³å°åºæ¬ä¿¡æ¯</span> </template> <el-menu-item index="/admin/article/add">é¢è¦ç å¤</el-menu-item> <el-menu-item index="/admin/article">è¿è§æ£ç´¢</el-menu-item> <el-menu-item index="/admin/article">è¶å¿åæ</el-menu-item> <el-menu-item index="/admin/article">æ°æ®ç»è®¡</el-menu-item> <el-menu-item index="/admin/article">è¿è¡æ¥å</el-menu-item> </el-submenu> </el-menu> </el-scrollbar> @@ -120,13 +189,13 @@ .el-menu { background: linear-gradient(#07162e, #0f2b56); border: 0; .el-submenu { .firstMenu { background: #07162e; text-align: left; &:hover span { &:hover .fisrtSpan{ color: #22d3eb; } span { span,span { color: #e9eef3; } .el-menu-item { @@ -141,6 +210,16 @@ color: #22d3eb; } } .secondMenu{ &:hover .secondSpan{ color: #22d3eb; } } .thirdMenu{ &:hover .thirdSpan{ color: #22d3eb; } } .is-active { background-color: #092c4a; } src/views/layout/index.vue
@@ -38,7 +38,7 @@ } } .el-main { background-color: #061125; background-color: #f0f2f5; color: #333; text-align: center; line-height: 160px; src/views/login/index.vue
@@ -2,7 +2,11 @@ <div id="background"> <!-- 产ååç§° --> <div class="text"> <div class="logo"></div> <div class="logo"> <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__155eeb2ceaac89ec717869a050964a36.svg" alt=""> </div> <div class="text-r"> <h2 class="title font-extra-large">éæå¿æºæ §æ§æ³å¹³å°</h2> <div class="title font-title-medium"> @@ -12,24 +16,12 @@ </div> <el-card class="login-form-layout"> <!-- 表å --> <el-form autoComplete="on" :model="loginForm" :rules="loginRules" ref="loginForm" label-position="left" > <el-form autoComplete="on" :model="loginForm" :rules="loginRules" ref="loginForm" label-position="left"> <!-- title --> <h2 class="login-title">ç¨æ·ç»å½ / USER LOGIN</h2> <el-form-item prop="username"> <!-- ç¨æ·åè¾å ¥æ¡ --> <el-input name="username" type="text" v-model="loginForm.username" autoComplete="on" placeholder="请è¾å ¥ç¨æ·åç§°" > <el-input name="username" type="text" v-model="loginForm.username" autoComplete="on" placeholder="请è¾å ¥ç¨æ·åç§°"> <span slot="prefix"> <svg-icon icon-class="user" class="color-main"></svg-icon> </span> @@ -37,35 +29,21 @@ </el-form-item> <el-form-item prop="password"> <!-- å¯ç è¾å ¥æ¡ --> <el-input name="password" :type="pwdType ? 'text' : 'password'" @keyup.enter.native="handleLogin" v-model="loginForm.password" autoComplete="on" placeholder="请è¾å ¥ç»å½å¯ç " > <el-input name="password" :type="pwdType ? 'text' : 'password'" @keyup.enter.native="handleLogin" v-model="loginForm.password" autoComplete="on" placeholder="请è¾å ¥ç»å½å¯ç "> <!-- è¾å ¥æ¡åicon --> <span slot="prefix"> <svg-icon icon-class="password" class="color"></svg-icon> </span> <!-- è¾å ¥æ¡åicon --> <span slot="suffix" @click="showPwd"> <svg-icon :icon-class="pwdType ? 'yanjing-zhengyan' : 'yanjing-biyan'" class="pointer" ></svg-icon> <svg-icon :icon-class="pwdType ? 'yanjing-zhengyan' : 'yanjing-biyan'" class="pointer"></svg-icon> </span> </el-input> </el-form-item> <!-- 表åæäº¤æé® --> <el-form-item style="margin-bottom: 60px; text-align: center"> <el-button style="width: 100%" type="primary" :loading="loading" @click.native.prevent="handleLogin" > <el-button style="width: 100%" type="primary" :loading="loading" @click.native.prevent="handleLogin"> ç»å½ </el-button> </el-form-item> @@ -97,8 +75,10 @@ }; return { loginForm: { username: "admin", password: "macro123", username:"", password:"", // username: "admin", // password: "macro123", }, loginRules: { username: [ @@ -112,7 +92,7 @@ pwdType: false, }; }, created() {}, created() { }, methods: { showPwd() { if (!this.pwdType) { @@ -125,12 +105,23 @@ handleLogin() { console.log("in login"); const { username, password } = this.loginForm; const that = this; this.$axios .post("http://42.193.1.25:8082/sccg/admin/login", { password, username, password, username, }) .then(function (response) { if (response.data.code === 200) { // 跳转å°é¦é¡µ that.$router.push("/home"); }else{ that.$refs.loginForm.validate((valid)=>{ if(valid){ that.$message.error(response.data.message); } }) } console.log(response); }) .catch(function (error) { @@ -145,41 +136,51 @@ .color { color: red; } #background { width: 100vw; height: 100vh; background: url("@/assets/imgs/login/login_bg.jpg"); background: url("@/assets/imgs/login/bk.png"); background-size: cover; position: relative; display: flex; min-width: 800px; } .login-form-layout { position: absolute; top: 20%; right: 5%; width: 360px; } .text { align-self: flex-start; position: absolute; top: 20%; left: 5%; display: flex; width: 400px; width: 420px; justify-content: space-between; .logo { width: 50px; height: 50px; border-radius: 50%; background-color: pink; .logo>img { width: 75px; height: 75px; } .text-r { margin-left: 15px; .title { color: white; } .font-title-medium { margin-top: -10px; } } } .login-title { text-align: left; font-size: 1.2rem; src/views/systemSetting/baseSetting/user/createUser/index.vue
New file @@ -0,0 +1,176 @@ <template> <div class="createUser"> <header> <div class="headerTitle">æ°å¢è´¦æ·</div> <div class="headerTip"> <span>*</span> <label>ä¸ºå¿ å¡«é¡¹</label> </div> </header> <main> <div class="mainTitle">åºç¡ä¿¡æ¯</div> <div class="mainContent"> <el-form ref="form" :model="user"> <!-- ç¨æ·åç§° --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>ç¨æ·åç§°:</label></div> <div><el-input v-model="user.nick_name"></el-input></div> </el-form-item> <!-- ç¨æ·å¯ç --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>ç¨æ·å¯ç :</label></div> <div><el-input v-model="user.nick_name"></el-input></div> </el-form-item> <!-- æå±ç¨æ·å§å --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>æå±ç¨æ·å§å:</label></div> <div><el-input v-model="user.nick_name"></el-input></div> </el-form-item> <!-- æ§å« --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>æ§å«:</label></div> <el-radio-group v-model="user.gender"> <el-radio :label="1">ç·</el-radio> <el-radio :label="2">女</el-radio> </el-radio-group> </el-form-item> <!-- æ¯å¦å å --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>æ¯å¦å å:</label></div> <el-radio-group v-model="user.member"> <el-radio :label="1">æ¯</el-radio> <el-radio :label="0">å¦</el-radio> </el-radio-group> </el-form-item> <!-- æå±ææºå·ç --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>æå±ææºå·ç :</label></div> <el-input v-model="user.phone"></el-input> </el-form-item> <!-- é®ç®±å°å --> <el-form-item class="optionItem"> <div><label>é®ç®±å°å:</label></div> <el-input v-model="user.mail"></el-input> </el-form-item> <!-- éæ©è§è² --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>éæ©è§è²:</label></div> <el-select v-model="user.role"> <el-option v-for="item in roleList" :key="item.name" :label="item.name" :value="item.value" :disabled="item.disabled"> </el-option> </el-select> </el-form-item> <!-- ç¨æ·ç±»å --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>ç¨æ·ç±»å:</label></div> <el-select v-model="user.type"> <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value" :disabled="item.disabled"> </el-option> </el-select> </el-form-item> <!-- 座æº/åæº --> <el-form-item class="optionItem"> <div><label>座æº/åæº:</label></div> <el-input v-model="user.nick_name"></el-input> </el-form-item> <!-- æå±é¨é¨ --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>æå±é¨é¨:</label></div> <el-input v-model="user.nick_name"></el-input> </el-form-item> <!-- å½åèå¡ --> <el-form-item class="optionItem"> <div><span style="color: #ff3b6c;">*</span><label>å½åèå¡:</label></div> <!-- <el-select v-model="value" placeholder="è¯·éæ©"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> --> </el-form-item> <!-- å¡«åæå±macå°å --> <el-form-item class="optionItem"> <div><label>å¡«åæå±macå°å:</label></div> <el-input v-model="user.nick_name"></el-input> </el-form-item> <!-- å¡«åæå±ipå°å --> <el-form-item class="optionItem"> <div><label>å¡«åæå±ipå°å:</label></div> <el-input v-model="user.nick_name"></el-input> </el-form-item> </el-form> </div> </main> </div> </template> <script> export default { data() { return { user: { nick_name: '', password: '', true_name: '', gender: 1, member: 0, phone: '', mail: '', role: 0, type: 0, }, roleList: [ { name: 'è¯·éæ©æå±è§è²', value: 0, disabled: true }, { name: 'è§è²1', value: 1 }, { name: 'è§è²2', value: 2 } ], typeList: [ { name: 'è¯·éæ©ç¨æ·ç±»å', value: 0, disabled: true }, { name: 'ç±»å1', value: 1 }, { name: 'ç±»å2', value: 2 } ] } }, } </script> <style lang="scss" scpoed> .createUser { border-radius: 1px; header { background-color: #fff; display: flex; justify-content: space-between; height: 60px; line-height: 60px; padding: 0 20px; .headerTitle { font-weight: 600; color: #666; } .headerTip span { color: #ff3b6c; } .headerTip label { color: #999999; } } main { background-color: #fff; margin-top: 1px; text-align: left; .mainTitle { margin-left: 60px; color: #666; font-weight: 600; font-size: 14px; } .mainContent { padding: 0px 100px; .el-form-item__content { display: flex; justify-content: center; div{ width: 160px; text-align: right; } } } } } </style> src/views/systemSetting/½ÓÈë¹ÜÀí
src/views/systemSetting/É豸¹ÜÀí
src/views/systemSetting/ÔËά¹ÜÀí
src/views/systemSetting/ÃÅ»§¹ÜÀí
src/views/ϵͳÉèÖÃ/»ù±¾ÉèÖÃ