CrazyIter_Bin 3 lat temu
rodzic
commit
56508c7261
34 zmienionych plików z 0 dodań i 1508 usunięć
  1. 0 23
      TEAMModeBI/ClientApp副本/.gitignore
  2. 0 24
      TEAMModeBI/ClientApp副本/README.md
  3. 0 5
      TEAMModeBI/ClientApp副本/babel.config.js
  4. 0 17
      TEAMModeBI/ClientApp副本/iconfont.css
  5. 0 52
      TEAMModeBI/ClientApp副本/package.json
  6. BIN
      TEAMModeBI/ClientApp副本/public/favicon.ico
  7. 0 24
      TEAMModeBI/ClientApp副本/public/index.html
  8. 0 15
      TEAMModeBI/ClientApp副本/src/App.vue
  9. 0 7
      TEAMModeBI/ClientApp副本/src/access/index.js
  10. 0 35
      TEAMModeBI/ClientApp副本/src/api/index.js
  11. 0 66
      TEAMModeBI/ClientApp副本/src/assets/filter/http.js
  12. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/background1.png
  13. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/background2.png
  14. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/background3.png
  15. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/ddlogin.png
  16. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/erweima.png
  17. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/login.png
  18. BIN
      TEAMModeBI/ClientApp副本/src/assets/img/mima.png
  19. BIN
      TEAMModeBI/ClientApp副本/src/assets/logo.png
  20. 0 26
      TEAMModeBI/ClientApp副本/src/components/Counter.vue
  21. 0 53
      TEAMModeBI/ClientApp副本/src/components/FetchData.vue
  22. 0 78
      TEAMModeBI/ClientApp副本/src/components/Home.vue
  23. 0 74
      TEAMModeBI/ClientApp副本/src/components/NavMenu.vue
  24. 0 15
      TEAMModeBI/ClientApp副本/src/main.js
  25. 0 20
      TEAMModeBI/ClientApp副本/src/router/index.js
  26. 0 27
      TEAMModeBI/ClientApp副本/src/store/index.js
  27. 0 68
      TEAMModeBI/ClientApp副本/src/until/http.js
  28. 0 177
      TEAMModeBI/ClientApp副本/src/view/bindPhone.vue
  29. 0 159
      TEAMModeBI/ClientApp副本/src/view/common/aside.vue
  30. 0 52
      TEAMModeBI/ClientApp副本/src/view/common/header.vue
  31. 0 122
      TEAMModeBI/ClientApp副本/src/view/ddlogin.vue
  32. 0 88
      TEAMModeBI/ClientApp副本/src/view/home.vue
  33. 0 272
      TEAMModeBI/ClientApp副本/src/view/login.vue
  34. 0 9
      TEAMModeBI/ClientApp副本/vue.config.js

+ 0 - 23
TEAMModeBI/ClientApp副本/.gitignore

@@ -1,23 +0,0 @@
-.DS_Store
-node_modules
-/dist
-
-
-# local env files
-.env.local
-.env.*.local
-
-# Log files
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-pnpm-debug.log*
-
-# Editor directories and files
-.idea
-.vscode
-*.suo
-*.ntvs*
-*.njsproj
-*.sln
-*.sw?

+ 0 - 24
TEAMModeBI/ClientApp副本/README.md

@@ -1,24 +0,0 @@
-# clientapp
-
-## Project setup
-```
-npm install
-```
-
-### Compiles and hot-reloads for development
-```
-npm run serve
-```
-
-### Compiles and minifies for production
-```
-npm run build
-```
-
-### Lints and fixes files
-```
-npm run lint
-```
-
-### Customize configuration
-See [Configuration Reference](https://cli.vuejs.org/config/).

+ 0 - 5
TEAMModeBI/ClientApp副本/babel.config.js

@@ -1,5 +0,0 @@
-module.exports = {
-  presets: [
-    '@vue/cli-plugin-babel/preset'
-  ]
-}

+ 0 - 17
TEAMModeBI/ClientApp副本/iconfont.css

@@ -1,17 +0,0 @@
-@font-face {
-    font-family: "iconfont";
-    /* Project id 2934132 */
-    src: url('http://at.alicdn.com/t/font_2934132_royprhbg42l.woff2?t=1636705156129') format('woff2'), url('http://at.alicdn.com/t/font_2934132_royprhbg42l.woff?t=1636705156129') format('woff'), url('http://at.alicdn.com/t/font_2934132_royprhbg42l.ttf?t=1636705156129') format('truetype');
-}
-
-.iconfont {
-    font-family: "iconfont" !important;
-    font-size: 16px;
-    font-style: normal;
-    -webkit-font-smoothing: antialiased;
-    -moz-osx-font-smoothing: grayscale;
-}
-
-.icon-shouye:before {
-    content: "\e612";
-}

+ 0 - 52
TEAMModeBI/ClientApp副本/package.json

@@ -1,52 +0,0 @@
-{
-    "name": "clientapp",
-    "version": "0.1.0",
-    "private": true,
-    "scripts": {
-        "serve": "vue-cli-service serve",
-        "build": "vue-cli-service build",
-        "lint": "vue-cli-service lint"
-    },
-    "dependencies": {
-        "@lywzx/vue.access.control": "^1.0.10",
-        "axios": "^0.20.0-0",
-        "bootstrap": "^4.5.3",
-        "core-js": "^3.7.0",
-        "element-plus": "^1.1.0-beta.24",
-        "jwt-decode": "^3.1.2",
-        "less": "^4.1.2",
-        "qs": "^6.10.1",
-        "vue": "^3.2.0",
-        "vue-loader-v16": "npm:vue-loader@^16.0.0-alpha.3",
-        "vue-router": "^4.0.0-rc.5"
-    },
-    "devDependencies": {
-        "@vue/cli-plugin-babel": "^4.5.9",
-        "@vue/cli-plugin-eslint": "^4.5.9",
-        "@vue/cli-service": "^4.5.9",
-        "@vue/compiler-sfc": "^3.0.2",
-        "babel-eslint": "^10.1.0",
-        "eslint": "^6.8.0",
-        "eslint-plugin-vue": "^7.1.0",
-        "vuex": "^4.0.2"
-    },
-    "eslintConfig": {
-        "root": true,
-        "env": {
-            "node": true
-        },
-        "extends": [
-            "plugin:vue/vue3-essential",
-            "eslint:recommended"
-        ],
-        "parserOptions": {
-            "parser": "babel-eslint"
-        },
-        "rules": {}
-    },
-    "browserslist": [
-        "> 1%",
-        "last 2 versions",
-        "not dead"
-    ]
-}

BIN
TEAMModeBI/ClientApp副本/public/favicon.ico


+ 0 - 24
TEAMModeBI/ClientApp副本/public/index.html

@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-
-<head>
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
-    <title>
-        <%= htmlWebpackPlugin.options.title %>
-    </title>
-</head>
-<script src="https://g.alicdn.com/dingding/dinglogin/0.0.5/ddLogin.js"></script>
-<script src="https://at.alicdn.com/t/font_2934132_royprhbg42l.js"></script>
-
-<body>
-    <noscript>
-      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
-    </noscript>
-    <div id="app"></div>
-    <!-- built files will be auto injected -->
-</body>
-
-</html>

+ 0 - 15
TEAMModeBI/ClientApp副本/src/App.vue

@@ -1,15 +0,0 @@
-<template>
-    <router-view />
-</template>
-
-<script>
-export default {
-    name: "App",
-    components: {},
-};
-</script>
-<style>
-#app {
-    min-width: 1280px;
-}
-</style>

+ 0 - 7
TEAMModeBI/ClientApp副本/src/access/index.js

@@ -1,7 +0,0 @@
-// import VueAccessControl from '@lywzx/vue.access.control';
-// import Vue from 'vue';
-// Vue.use(VueAccessControl, {});
-// const access = new VueAccessControl.Access({
-//     routes: []
-// });
-// export default access;

+ 0 - 35
TEAMModeBI/ClientApp副本/src/api/index.js

@@ -1,35 +0,0 @@
-import { post } from '@/until/http.js'
-export default {
-    //钉钉登录获取状态
-    Dinglogin(data) {
-        return post('/common/login/DingLogin', data)
-    },
-    //发送短信验证码
-    Phonepin(data) {
-        return post('/common/login/send-sms', data)
-    },
-    //验证手机号和验证
-    verifyCode(data) {
-        return post('/common/login/verfiypin', data)
-    },
-    //手机验证码都通过后,进行绑定操作
-    bindUserid(data) {
-        return post('/common/login/bind', data)
-    },
-    //正常醍摩豆账号或者手机号登录
-    loginUser(data) {
-        return post('https://api2.teammodel.cn/oauth2/login', data)
-    },
-    //获取组织架构
-    getorganization(data) {
-        return post('/dd/get-deptlist', data)
-    },
-    //正常醍摩豆/手机号码登录后 获取id_token,通过id_token获取人物信息
-    teacherinfo(data) {
-        return post('/common/login/get-teacherinfo', data)
-    },
-    //获取所有的附加权限表
-    getAllpermission(data) {
-        return post('/batchschool/get-teacher-authoritybilist', data)
-    }
-}

+ 0 - 66
TEAMModeBI/ClientApp副本/src/assets/filter/http.js

@@ -1,66 +0,0 @@
-import axios from 'axios';
-import router from '@/router/index.js';
-axios.defaults.timeout = 1000000; //设置超时时长
-axios.defaults.baseURL = '';
-
-//http request 拦截器
-axios.interceptors.request.use(
-    config => {
-        // const token = getCookie('名称');
-        config.data = JSON.stringify(config.data);
-        config.headers['access_token'] = localStorage.getItem('accessToken')
-        config.headers['Content-Type'] = 'application/json'
-        return config;
-    },
-    error => {
-        return Promise.reject(error);
-    }
-);
-/**
- * 封装get方法
- * @param url
- * @param data
- * @returns {Promise}
- */
-
-export function fetch(url, params) {
-    let data = {};
-    data.method = url;
-    data.params = params;
-    data.lang = localStorage.getItem('local');
-    return new Promise((resolve, reject) => {
-        axios.get(url, data)
-            .then(response => {
-                resolve(response.data);
-                //  this.$Message.success('数据访问成功!');
-            })
-            .catch(error => {
-                reject(error);
-                this.$Message.error('数据访问错误!');
-            })
-    })
-}
-
-/**
- * 封装post请求
- * @param url
- * @param data
- * @returns {Promise}
- */
-
-export function post(url, params) {
-    let data = {};
-    data.method = url;
-    data.params = params;
-    data.lang = localStorage.getItem('local');
-    return new Promise((resolve, reject) => {
-        axios.post(url, params)
-            .then(response => {
-                resolve(response.data);
-                // this.$Message.success('数据访问成功!');
-            }, error => {
-                reject(error);
-                //this.$Message.error('数据访问错误!');
-            })
-    })
-}

BIN
TEAMModeBI/ClientApp副本/src/assets/img/background1.png


BIN
TEAMModeBI/ClientApp副本/src/assets/img/background2.png


BIN
TEAMModeBI/ClientApp副本/src/assets/img/background3.png


BIN
TEAMModeBI/ClientApp副本/src/assets/img/ddlogin.png


BIN
TEAMModeBI/ClientApp副本/src/assets/img/erweima.png


BIN
TEAMModeBI/ClientApp副本/src/assets/img/login.png


BIN
TEAMModeBI/ClientApp副本/src/assets/img/mima.png


BIN
TEAMModeBI/ClientApp副本/src/assets/logo.png


+ 0 - 26
TEAMModeBI/ClientApp副本/src/components/Counter.vue

@@ -1,26 +0,0 @@
-<template>
-    <h1>Counter</h1>
-
-    <p>This is a simple example of an Vue component.</p>
-
-    <p aria-live="polite">Current count: <strong>{{ currentCount }}</strong></p>
-
-    <button class="btn btn-primary" @click="incrementCounter">Increment</button>
-</template>
-
-
-<script>
-    export default {
-        name: "Counter",
-        data() {
-            return {
-                currentCount: 0
-            }
-        },
-        methods: {
-            incrementCounter() {
-                this.currentCount++;
-            }
-        }
-    }
-</script>

+ 0 - 53
TEAMModeBI/ClientApp副本/src/components/FetchData.vue

@@ -1,53 +0,0 @@
-<template>
-    <h1 id="tableLabel">Weather forecast</h1>
-
-    <p>This component demonstrates fetching data from the server.</p>
-
-    <p v-if="!forecasts"><em>Loading...</em></p>
-
-    <table class='table table-striped' aria-labelledby="tableLabel" v-if="forecasts">
-        <thead>
-            <tr>
-                <th>Date</th>
-                <th>Temp. (C)</th>
-                <th>Temp. (F)</th>
-                <th>Summary</th>
-            </tr>
-        </thead>
-        <tbody>
-            <tr v-for="forecast of forecasts" v-bind:key="forecast">
-                <td>{{ forecast.date }}</td>
-                <td>{{ forecast.temperatureC }}</td>
-                <td>{{ forecast.temperatureF }}</td>
-                <td>{{ forecast.summary }}</td>
-            </tr>
-        </tbody>
-    </table>
-</template>
-
-
-<script>
-    import axios from 'axios'
-    export default {
-        name: "FetchData",
-        data() {
-            return {
-                forecasts: []
-            }
-        },
-        methods: {
-            getWeatherForecasts() {
-                axios.get('/weatherforecast')
-                    .then((response) => {
-                        this.forecasts =  response.data;
-                    })
-                    .catch(function (error) {
-                        alert(error);
-                    });
-            }
-        },
-        mounted() {
-            this.getWeatherForecasts();
-        }
-    }
-</script>

+ 0 - 78
TEAMModeBI/ClientApp副本/src/components/Home.vue

@@ -1,78 +0,0 @@
-<template>
-    <div class="hello">
-        <h1>{{ msg }}</h1>
-        <img src="../assets/logo.png" />
-        <p>
-            Template for Vue JS 3.0 and .NET 5 applications developed by <b>Alexandre Malavasi.</b><br />
-            In order to get more content on Vue JS and .NET platform, please follow on my social media profiles:
-        </p>
-        <ul>
-            <li>
-                <a href="https://medium.com/@alexandre.malavasi" target="_blank">Medium</a>
-            </li>
-            <li>
-                <a href="https://twitter.com/alemalavasi" target="_blank">Twitter</a>
-            </li>
-            <li>
-                <a href="https://www.youtube.com/channel/UC-KFGgYiot1eA8QFqIgLmqA" target="_blank">Youtube</a>
-            </li>
-            <li>
-                <a href="https://www.facebook.com/alexandre.malavasi.dev" target="_blank">Facebook</a>
-            </li>
-        </ul>
-        <h3>Vue Documentation</h3>
-        <p>
-            For a guide and recipes on how to configure / customize this project,<br>
-            check out the
-            <a href="https://cli.vuejs.org" target="_blank" rel="noopener">vue-cli documentation</a>.
-        </p>
-        <h3>Installed CLI Plugins</h3>
-        <ul>
-            <li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel" target="_blank" rel="noopener">babel</a></li>
-            <li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint" target="_blank" rel="noopener">eslint</a></li>
-        </ul>
-        <h3>Essential Links</h3>
-        <ul>
-            <li><a href="https://vuejs.org" target="_blank" rel="noopener">Core Docs</a></li>
-            <li><a href="https://forum.vuejs.org" target="_blank" rel="noopener">Forum</a></li>
-            <li><a href="https://chat.vuejs.org" target="_blank" rel="noopener">Community Chat</a></li>
-            <li><a href="https://twitter.com/vuejs" target="_blank" rel="noopener">Twitter</a></li>
-            <li><a href="https://news.vuejs.org" target="_blank" rel="noopener">News</a></li>
-        </ul>
-        <h3>Ecosystem</h3>
-        <ul>
-            <li><a href="https://router.vuejs.org" target="_blank" rel="noopener">vue-router</a></li>
-            <li><a href="https://vuex.vuejs.org" target="_blank" rel="noopener">vuex</a></li>
-            <li><a href="https://github.com/vuejs/vue-devtools#vue-devtools" target="_blank" rel="noopener">vue-devtools</a></li>
-            <li><a href="https://vue-loader.vuejs.org" target="_blank" rel="noopener">vue-loader</a></li>
-            <li><a href="https://github.com/vuejs/awesome-vue" target="_blank" rel="noopener">awesome-vue</a></li>
-        </ul>
-    </div>
-</template>
-
-<script>
-export default {
-  name: 'Home',
-  props: {
-    msg: String
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped>
-h3 {
-  margin: 40px 0 0;
-}
-ul {
-  list-style-type: none;
-  padding: 0;
-}
-li {
-  display: inline-block;
-  margin: 0 10px;
-}
-a {
-  color: #42b983;
-}
-</style>

+ 0 - 74
TEAMModeBI/ClientApp副本/src/components/NavMenu.vue

@@ -1,74 +0,0 @@
-<template>
-    <header>
-        <nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
-            <div class="container">
-                <a class="navbar-brand">Vue JS Template for .NET 5</a>
-                <button class="navbar-toggler"
-                        type="button"
-                        data-toggle="collapse"
-                        data-target=".navbar-collapse"
-                        aria-label="Toggle navigation"
-                        @click="toggle">
-                    <span class="navbar-toggler-icon"></span>
-                </button>
-                <div class="navbar-collapse collapse d-sm-inline-flex flex-sm-row-reverse"
-                     v-bind:class="{show: isExpanded}">
-                    <ul class="navbar-nav flex-grow">
-                        <li class="nav-item">
-                            <router-link :to="{ name: 'Home' }" class="nav-link text-dark">Home</router-link>
-                           
-                        </li>
-                        <li class="nav-item">
-                            <router-link :to="{ name: 'Counter' }" class="nav-link text-dark">Counter</router-link>
-                        </li>
-                        <li class="nav-item">
-                            <router-link :to="{ name: 'FetchData' }" class="nav-link text-dark">Fetch Data</router-link>
-                        </li>
-                    </ul>
-                </div>
-            </div>
-        </nav>
-    </header>
-</template>
-
-
-<style>
-    a.navbar-brand {
-        white-space: normal;
-        text-align: center;
-        word-break: break-all;
-    }
-
-    html {
-        font-size: 14px;
-    }
-
-    @media (min-width: 768px) {
-        html {
-            font-size: 16px;
-        }
-    }
-
-    .box-shadow {
-        box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
-    }
-</style>
-<script>
-    export default {
-        name: "NavMenu",
-        data() {
-            return {
-                isExpanded: false
-            }
-        },
-        methods: {
-            collapse() {
-                this.isExpanded = false;
-            },
-
-            toggle() {
-                this.isExpanded = !this.isExpanded;
-            }
-        }
-    }
-</script>

+ 0 - 15
TEAMModeBI/ClientApp副本/src/main.js

@@ -1,15 +0,0 @@
-import 'bootstrap/dist/css/bootstrap.css'
-import { createApp } from 'vue'
-import App from './App.vue'
-import router from './router/index.js'
-import ElementPlus from 'element-plus'
-import 'element-plus/dist/index.css'
-import axios from '@/api/index.js'
-import store from '@/store'
-
-const app = createApp(App)
-app.config.globalProperties.$api = axios
-app.use(router)
-app.use(ElementPlus)
-app.use(store)
-app.mount('#app')

+ 0 - 20
TEAMModeBI/ClientApp副本/src/router/index.js

@@ -1,20 +0,0 @@
-import { createWebHistory, createRouter } from "vue-router";
-// import Login from "@/view/login.vue";
-const routes = [{
-        path: "/",
-        name: "login",
-        component: () =>
-            import ("../view/login.vue")
-    },
-    {
-        path: "/home",
-        name: "home",
-        component: () =>
-            import ('../view/home.vue')
-    }
-];
-const router = createRouter({
-    history: createWebHistory(),
-    routes,
-});
-export default router;

+ 0 - 27
TEAMModeBI/ClientApp副本/src/store/index.js

@@ -1,27 +0,0 @@
-import { createStore } from 'vuex'
-export default createStore({
-    state: {
-        organizationData: [], //组织架构数据
-        permissionList: [], //权限列表
-        teachUserdata: [], //教室个人信息
-        sidebarstatus: { "width": "200px", "isCollapses": false }, //侧边栏状态值
-
-    },
-    mutations: {
-        //修改组织架构
-        ChangOrganization(state, data) {
-            state.organizationData = data
-        },
-        //修改所有权限列表
-        getPermission(state, value) {
-            state.permissionList = value
-        },
-        //登录成功后保存教室个人信息
-        getTeachdata(state, value) {
-            state.teachUserdata = value
-        },
-    },
-    actions: {},
-    getters: {},
-    modules: {}
-})

+ 0 - 68
TEAMModeBI/ClientApp副本/src/until/http.js

@@ -1,68 +0,0 @@
-import axios from 'axios';
-axios.defaults.timeout = 1000000; //设置超时时长
-axios.defaults.baseURL = '';
-
-//http request 拦截器
-axios.interceptors.request.use(
-    config => {
-        // const token = getCookie('名称');
-        config.data = JSON.stringify(config.data);
-        config.headers = {
-            'Content-Type': 'application/json',
-            'Authorization': ""
-        }
-        return config;
-    },
-    error => {
-        return Promise.reject(error);
-    }
-);
-
-/**
- * 封装get方法
- * @param url
- * @param data
- * @returns {Promise}
- */
-
-export function fetch(url, params) {
-    let data = {};
-    data.method = url;
-    data.params = params;
-    data.lang = localStorage.getItem('local');
-    return new Promise((resolve, reject) => {
-        axios.get(url, data)
-            .then(response => {
-                resolve(response.data);
-                //  this.$Message.success('数据访问成功!');
-            })
-            .catch(error => {
-                reject(error);
-                this.$Message.error('数据访问错误!');
-            })
-    })
-}
-
-/**
- * 封装post请求
- * @param url
- * @param data
- * @returns {Promise}
- */
-
-export function post(url, params) {
-    let data = {};
-    data.method = url;
-    data.params = params;
-    data.lang = localStorage.getItem('local');
-    return new Promise((resolve, reject) => {
-        axios.post(url, params)
-            .then(response => {
-                resolve(response.data);
-                // this.$Message.success('数据访问成功!');
-            }, error => {
-                reject(error);
-                //this.$Message.error('数据访问错误!');
-            })
-    })
-}

+ 0 - 177
TEAMModeBI/ClientApp副本/src/view/bindPhone.vue

@@ -1,177 +0,0 @@
-<template>
-    <el-dialog v-model="centerDialogVisible" title="绑定账号" width="30%" center>
-        <div class="bindbox">
-            <div class="bind-phone">
-                <el-row :gutter="20">
-                    <el-input v-model="phonenum.phone" placeholder="请输入绑定的醍摩豆手机号码" prefix-icon="el-icon-phone" @blur="phoneData.to = phonenum.phone" />
-                </el-row>
-            </div>
-            <div class="bind-code">
-                <div class="codenum">
-                    <el-row :gutter="20">
-                        <el-input v-model="phonenum.code" placeholder="" />
-                    </el-row>
-                </div>
-                <div class="sendcode">
-                    <el-button type="primary" v-show="showCode.status" @click="getCode()">验证码</el-button>
-                    <el-button type="primary" disabled v-show="showCode.status ==false">{{showCode.count}}秒</el-button>
-                </div>
-            </div>
-        </div>
-        <template #footer>
-            <span class="dialog-footer">
-                <el-button type="primary" @click="bindUser(proxy)">绑定</el-button>
-                <el-button @click="centerDialogVisible = false">取消</el-button>
-            </span>
-        </template>
-    </el-dialog>
-</template>
-<script>
-import { reactive, ref, getCurrentInstance } from "vue";
-// import { Phonepin, verifyCode, bindUserid } from "@/api/index.js";
-import { ElMessage } from "element-plus";
-import { useRouter } from "vue-router";
-export default {
-    setup() {
-        let { proxy } = getCurrentInstance();
-        let centerDialogVisible = ref(true);
-        let phonenum = reactive({
-            phone: "",
-            code: "",
-        });
-        //验证冷却
-        let showCode = reactive({
-            status: true,
-            count: "",
-            timer: null,
-        });
-        var phoneData = {
-            to: phonenum.phone,
-            lang: "zh-cn",
-            HasUser: true,
-            country: "86",
-        };
-        var { phoneCode } = pin(proxy);
-        //路由
-        const router = useRouter();
-        //验证码冷却及发送验证码
-        function getCode() {
-            //验证码冷却部分
-            const TIME_COUNT = 60;
-            if (!showCode.timer) {
-                showCode.count = TIME_COUNT;
-                showCode.status = false;
-                showCode.timer = setInterval(() => {
-                    if (showCode.count > 0 && showCode.count <= TIME_COUNT) {
-                        showCode.count--;
-                    } else {
-                        showCode.status = true;
-                        clearInterval(showCode.timer);
-                        showCode.timer = null;
-                    }
-                }, 1000);
-            }
-            //请求接口
-            phoneCode(phoneData);
-        }
-        //手机号码绑定流程
-        function bindUser(proxy) {
-            //先获取到手机号和验证码
-            let codeNum = {
-                mobile: phonenum.phone,
-                Authorization_Pin: phonenum.code,
-            };
-            console.log(codeNum, "手机号和验证码");
-            //验证手机号和验证码
-            proxy.$api.verifyCode(codeNum).then((res) => {
-                console.log(res, "验证手机号和验证码");
-                if (res.error) {
-                    res.error === 3 || res.error === 4
-                        ? ElMessage.error("验证码错误")
-                        : res.error === 1
-                        ? ElMessage.error("无手机绑定的醍摩豆账号")
-                        : res.error === 5
-                        ? ElMessage.error("无效的手机号码")
-                        : ElMessage.error("接口异常请重新尝试绑定");
-                } else if (res.status && res.status === 200) {
-                    let userInfo = JSON.parse(localStorage.getItem("DingUser"));
-                    console.log(userInfo, "用户信息");
-                    let paramData = { mobile: phonenum.phone, param: userInfo };
-                    bindId(paramData, proxy);
-                }
-            });
-        }
-        //绑定操作
-        function bindId(paramData, proxy) {
-            proxy.$api.bindUserid(paramData).then((res) => {
-                console.log(res, "返回的结果");
-                res.status === 1 || res.status === 3
-                    ? ElMessage.error("绑定失败,请稍后重试")
-                    : res.status === 2
-                    ? ElMessage.error("账户已被绑定,请选择其他账号绑定")
-                    : res.status === 200
-                    ? (ElMessage.success("绑定成功,即将跳转..."),
-                      router.push("/home"))
-                    : ElMessage.error("出现未知错误");
-            });
-        }
-        return {
-            proxy,
-            centerDialogVisible,
-            phonenum,
-            showCode,
-            getCode,
-            phoneCode,
-            phoneData,
-            bindUser,
-            bindId,
-        };
-    },
-};
-//发送验证码API
-function pin(proxy) {
-    let phoneCode = (datas) => {
-        let parameter = {
-            to: datas.to,
-            lang: datas.lang,
-            HasUser: datas.HasUser,
-            country: datas.country,
-        };
-        let { codesInfo } = proxy.$api.Phonepin(parameter).then((res) => {
-            console.log(res, "接口返回");
-            res.status === 200
-                ? ElMessage.success("验证码发送成功")
-                : ElMessage.error("验证码发送失败");
-        });
-        console.log("codesInfo", codesInfo);
-    };
-    return {
-        phoneCode,
-    };
-}
-</script>
-<style scoped>
-.bindbox {
-    width: 45%;
-    height: auto;
-    margin: 0 auto;
-}
-.bind-code {
-    margin: 10% 0% 20% 0%;
-}
-.codenum {
-    float: left;
-    font-size: 18px;
-    width: 60%;
-}
-.sendcode {
-    float: left;
-    width: 33%;
-    margin-left: 7%;
-}
-</style>
-<style>
-.sendcode button span {
-    font-size: 14px;
-}
-</style>

+ 0 - 159
TEAMModeBI/ClientApp副本/src/view/common/aside.vue

@@ -1,159 +0,0 @@
-<template>
-    <el-aside :width="menuWidth" style="background-color: rgb(238, 241, 246)">
-        <el-radio-group v-model="isCollapse" style="margin-bottom: 20px">
-            <el-radio-button :label="false" @click="menuWidth=200+'px';isCollapse.value=false" v-show="isCollapse ==true"><i class="el-icon-s-unfold"></i></el-radio-button>
-            <el-radio-button :label="true" @click="menuWidth=64+'px';isCollapse.value=true" v-show="isCollapse==false"><i class="el-icon-s-fold"></i></el-radio-button>
-        </el-radio-group>
-        <el-menu default-active="2" class="el-menu-vertical-demo" :collapse="isCollapse" @open="handleOpen" @close="handleClose">
-            <el-sub-menu index="1">
-                <template #title>
-                    <i class="iconfont">&#xe612;</i>
-                    <span>Navigator One</span>
-                </template>
-                <el-menu-item-group>
-                    <template #title><span>Group One</span></template>
-                    <el-menu-item index="1-1">item one</el-menu-item>
-                    <el-menu-item index="1-2">item two</el-menu-item>
-                </el-menu-item-group>
-                <el-menu-item-group title="Group Two">
-                    <el-menu-item index="1-3">item three</el-menu-item>
-                </el-menu-item-group>
-                <el-sub-menu index="1-4">
-                    <template #title><span>item four</span></template>
-                    <el-menu-item index="1-4-1">item one</el-menu-item>
-                </el-sub-menu>
-            </el-sub-menu>
-            <el-menu-item index="2">
-                <i class="iconfont">&#xe630;</i>
-                <template #title>Navigator Two</template>
-            </el-menu-item>
-            <el-menu-item index="3" disabled>
-                <el-icon>
-                    <document />
-                </el-icon>
-                <template #title>Navigator Three</template>
-            </el-menu-item>
-            <el-menu-item index="4">
-                <el-icon>
-                    <setting />
-                </el-icon>
-                <template #title>Navigator Four</template>
-            </el-menu-item>
-        </el-menu>
-    </el-aside>
-</template>
-<script>
-//基础菜单
-const schoolMenu = [
-    {
-        name: "学校管理",
-        router: "",
-        role: "admin",
-        isShow: true,
-        permission: "",
-        isShow: true,
-        child: [
-            {
-                name: "教师管理",
-                router: "/home/teachermgmt",
-                role: "admin",
-                permission: "teacher-read|teacher-upd",
-                menuName: "teachermgmt",
-                isShow: true,
-            },
-        ],
-    },
-];
-import {
-    Location,
-    Document,
-    Menu as IconMenu,
-    Setting,
-} from "@element-plus/icons";
-import { getCurrentInstance, ref, watch } from "vue";
-import { useStore } from "vuex";
-export default {
-    components: {
-        Location,
-        Document,
-        Setting,
-        IconMenu,
-    },
-    setup() {
-        let { proxy } = getCurrentInstance();
-        let menuWidth = ref("");
-        const isCollapse = ref("");
-        const store = useStore();
-        watch(
-            store.state,
-            () => {
-                isCollapse.value = store.state.sidebarstatus.isCollapses;
-                menuWidth.value = store.state.sidebarstatus.width;
-            },
-            { immediate: true, deep: true }
-        );
-        return {
-            proxy,
-            menuWidth,
-            isCollapse,
-        };
-    },
-};
-</script>
-<style>
-.el-aside {
-    background-color: #d3dce6;
-    color: var(--el-text-color-primary);
-    text-align: center;
-    line-height: 200px;
-}
-.el-container:nth-child(5) .el-aside,
-.el-container:nth-child(6) .el-aside {
-    line-height: 260px;
-}
-
-.el-container:nth-child(7) .el-aside {
-    line-height: 320px;
-}
-body > .el-container {
-    margin-bottom: 40px;
-}
-
-.el-container:nth-child(5) .el-aside,
-.el-container:nth-child(6) .el-aside {
-    line-height: 260px;
-}
-
-.el-container:nth-child(7) .el-aside {
-    line-height: 320px;
-}
-.el-menu-vertical-demo:not(.el-menu--collapse) {
-    width: 200px;
-    min-height: 400px;
-}
-@font-face {
-    font-family: "iconfont"; /* Project id 2934132 */
-    src: url("https://at.alicdn.com/t/font_2934132_53m4d1h545k.woff2?t=1636707100015")
-            format("woff2"),
-        url("https://at.alicdn.com/t/font_2934132_53m4d1h545k.woff?t=1636707100015")
-            format("woff"),
-        url("https://at.alicdn.com/t/font_2934132_53m4d1h545k.ttf?t=1636707100015")
-            format("truetype");
-}
-.iconfont {
-    font-family: "iconfont" !important;
-    font-size: 22px;
-    font-style: normal;
-    -webkit-font-smoothing: antialiased;
-    -webkit-text-stroke-width: 0.2px;
-    -moz-osx-font-smoothing: grayscale;
-}
-.iconfontsss {
-    font-family: "iconfont" !important;
-    font-size: 24px;
-    font-style: normal;
-    -webkit-font-smoothing: antialiased;
-    -webkit-text-stroke-width: 0.2px;
-    -moz-osx-font-smoothing: grayscale;
-}
-</style>

+ 0 - 52
TEAMModeBI/ClientApp副本/src/view/common/header.vue

@@ -1,52 +0,0 @@
-<template>
-    <el-header style="text-align: right; font-size: 12px">
-        <el-dropdown>
-            <el-icon style="margin-right: 25px;margin-top:8px">
-                <el-avatar :size="40" :src="circleUrl"></el-avatar>
-            </el-icon>
-            <template #dropdown>
-                <el-dropdown-menu>
-                    <!-- <el-dropdown-item>姓名:XXX</el-dropdown-item> -->
-                    <div class="userInfo">姓名:XXXX</div>
-                    <el-dropdown-item>View</el-dropdown-item>
-                    <el-dropdown-item>Add</el-dropdown-item>
-                    <el-dropdown-item>Delete</el-dropdown-item>
-                </el-dropdown-menu>
-            </template>
-        </el-dropdown>
-    </el-header>
-</template>
-<script>
-import { reactive, toRefs } from "vue";
-export default {
-    setup() {
-        const state = reactive({
-            circleUrl:
-                "https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png",
-            squareUrl:
-                "https://cube.elemecdn.com/9/c2/f0ee8a3c7c9638a54940382568c9dpng.png",
-            sizeList: ["large", "medium", "small"],
-        });
-        return {
-            ...toRefs(state),
-        };
-    },
-};
-</script>
-<style  scoped>
-.el-header {
-    background-color: #b3c0d1;
-    color: var(--el-text-color-primary);
-    line-height: 60px;
-}
-.userInfo {
-    list-style: none;
-    line-height: 36px;
-    padding: 0 20px;
-    margin: 0;
-    font-size: var(--el-font-size-base);
-    color: var(--el-text-color-regular);
-    cursor: pointer;
-    outline: 0;
-}
-</style>

+ 0 - 122
TEAMModeBI/ClientApp副本/src/view/ddlogin.vue

@@ -1,122 +0,0 @@
-<template>
-    <div style="width:100%">
-        <div id="login_container" style="margin-bottom:5%;"></div>
-    </div>
-</template>
- 
-<script>
-import axios from "axios";
-export default {
-    name: "App",
-    components: {},
-    data() {
-        return {
-            appid: "dingrucgsnt8p13rfbgd",
-            redirectUrl: "https://localhost:5001",
-            apiUrl: "/common/login/DingLogin",
-            dingCodeConfig: {
-                id: "login_container",
-                style: "background-color:#FFFFFF;",
-                width: "300",
-                height: "350",
-            },
-        };
-    },
-    computed: {
-        getRedirectUrl() {
-            return encodeURIComponent(this.redirectUrl);
-        },
-        getAuthUrl() {
-            return `https://oapi.dingtalk.com/connect/oauth2/sns_authorize?appid=${this.appid}&response_type=code&scope=snsapi_login&state=STATE&redirect_uri=${this.getRedirectUrl}`;
-        },
-        getGoto() {
-            return encodeURIComponent(this.getAuthUrl);
-        },
-        getDingCodeConfig() {
-            return { ...this.dingCodeConfig, goto: this.getGoto };
-        },
-    },
-    created() {
-        this.initDingJs();
-    },
-    mounted() {
-        this.addDingListener();
-        this.initDingLogin();
-        this.getUser();
-    },
-    methods: {
-        initDingJs() {
-            !(function (window, document) {
-                function d(a) {
-                    var e,
-                        c = document.createElement("iframe"),
-                        d =
-                            "https://login.dingtalk.com/login/qrcode.htm?goto=" +
-                            a.goto;
-                    (d += a.style
-                        ? "&style=" + encodeURIComponent(a.style)
-                        : ""),
-                        (d += a.href ? "&href=" + a.href : ""),
-                        (c.src = d),
-                        (c.frameBorder = "0"),
-                        (c.allowTransparency = "true"),
-                        (c.scrolling = "no"),
-                        (c.width = a.width ? a.width + "px" : "365px"),
-                        (c.height = a.height ? a.height + "px" : "400px"),
-                        (e = document.getElementById(a.id)),
-                        (e.innerHTML = ""),
-                        e.appendChild(c);
-                }
-
-                window.DDLogin = d;
-            })(window, document);
-        },
-        addDingListener() {
-            let self = this;
-
-            let handleLoginTmpCode = function (loginTmpCode) {
-                window.location.href =
-                    self.getAuthUrl + `&loginTmpCode=${loginTmpCode}`;
-            };
-
-            let handleMessage = function (event) {
-                if (event.origin == "https://login.dingtalk.com") {
-                    handleLoginTmpCode(event.data);
-                }
-            };
-
-            if (typeof window.addEventListener != "undefined") {
-                window.addEventListener("message", handleMessage, false);
-            } else if (typeof window.attachEvent != "undefined") {
-                window.attachEvent("onmessage", handleMessage);
-            }
-        },
-        initDingLogin() {
-            window.DDLogin(this.getDingCodeConfig);
-        },
-        getUser() {
-            let getQueryString = function (name) {
-                var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
-                var r = window.location.search.substr(1).match(reg);
-                if (r != null) {
-                    return unescape(r[2]);
-                }
-                return null;
-            };
-
-            let code = getQueryString("code");
-
-            if (code !== null) {
-                axios
-                    .get(`${this.apiUrl}?code=${code}`)
-                    .then((response) => {
-                        console.log(response);
-                    })
-                    .catch((error) => {
-                        console.log(error);
-                    });
-            }
-        },
-    },
-};
-</script>

+ 0 - 88
TEAMModeBI/ClientApp副本/src/view/home.vue

@@ -1,88 +0,0 @@
-<template>
-    <div class="common-layout viewbox">
-        <el-container style="height: 977px; border: 1px solid #eee">
-            <Aside></Aside>
-            <el-container>
-                <el-header>
-                    <Header></Header>
-                </el-header>
-                <el-main>Main</el-main>
-            </el-container>
-        </el-container>
-    </div>
-</template>
-<script>
-import Header from "./common/header.vue";
-import Aside from "./common/aside.vue";
-export default {
-    components: {
-        Header,
-        Aside,
-    },
-    setup() {
-        const handleOpen = (key, keyPath) => {
-            console.log(key, keyPath);
-        };
-        const handleClose = (key, keyPath) => {
-            console.log(key, keyPath);
-        };
-        return {
-            handleOpen,
-            handleClose,
-        };
-    },
-};
-</script>
-<style  scoped>
-.el-header,
-.el-footer {
-    background-color: #b3c0d1;
-    color: var(--el-text-color-primary);
-    text-align: center;
-    line-height: 60px;
-}
-
-.el-aside {
-    background-color: #d3dce6;
-    color: var(--el-text-color-primary);
-    text-align: center;
-    line-height: 200px;
-}
-
-.el-main {
-    background-color: #e9eef3;
-    color: var(--el-text-color-primary);
-    text-align: center;
-    line-height: 160px;
-}
-
-body > .el-container {
-    margin-bottom: 40px;
-}
-
-.el-container:nth-child(5) .el-aside,
-.el-container:nth-child(6) .el-aside {
-    line-height: 260px;
-}
-
-.el-container:nth-child(7) .el-aside {
-    line-height: 320px;
-}
-.el-menu-vertical-demo:not(.el-menu--collapse) {
-    width: 200px;
-    min-height: 400px;
-}
-</style>
-<style>
-.viewbox .el-radio-group {
-    line-height: 5px !important;
-    margin-bottom: 10px !important;
-}
-.viewbox .el-radio-button__inner {
-    padding: 2px;
-}
-.viewbox .el-sub-menu__icon-arrow {
-    top: 53% !important;
-    font-size: 15px !important;
-}
-</style>

+ 0 - 272
TEAMModeBI/ClientApp副本/src/view/login.vue

@@ -1,272 +0,0 @@
-<template>
-    <div class="backgorundbox">
-        <div class="loginbox">
-            <div class="logintitle">醍摩豆账号登录</div>
-            <div class="usrpwd" v-if="loginModel">
-                <div class='userbox' style="margin-bottom:10%">
-                    <el-input v-model="user" placeholder="醍摩豆ID/手机号码" prefix-icon="el-icon-user" />
-                </div>
-                <div class='userbox'>
-                    <el-input v-model="pwd" placeholder="密码" type="password" prefix-icon="el-icon-key" />
-                    <div class="loginbtn" v-show="user !='' && pwd !='' " @click="userlogin(proxy)"><img src="@/assets/img/login.png"></div>
-                </div>
-                <div class="not_has_more">
-                    或下列方式登录
-                    <div class="ddlogin" @click="loginModel=false"><img src="../assets/img/ddlogin.png"></div>
-                </div>
-            </div>
-            <div class="usrpwd" v-else-if="loginModel ==false">
-                <ddlogin></ddlogin>
-            </div>
-            <div class="cut" @click="loginModel = !loginModel">
-                <svg width="52" height="52" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" style="border-top-right-radius:10px">
-                    <mask id="id-3757926926-a" width="52" height="52" x="0" y="0" maskUnits="userSpaceOnUse">
-                        <path fill="#fff" d="M0 0l52 52V0H0z"></path>
-                    </mask>
-                    <g mask="url(#id-3757926926-a)">
-                        <path fill="#ccF" d="M0 0h48a4 4 0 014 4v48L0 0z"></path>
-                        <path fill="url(#pattern0)" d="M0 0h52v52H0z"></path>
-                    </g>
-                    <defs>
-                        <pattern id="pattern0" width="1" height="1" patternContentUnits="objectBoundingBox">
-                            <use transform="scale(.00216)" xlink:href="#image0"></use>
-                        </pattern>
-                        <image id="image0" width="463" height="463" :xlink:href="loginImg"></image>
-                    </defs>
-                </svg>
-            </div>
-        </div>
-        <!-- <div id="login_container" style="transform: scale(.8);">123456</div> -->
-        <bind :callbackStatus=callbackStatus v-if="callbackStatus ===1"></bind>
-    </div>
-</template>
-<script>
-import { ref, watch, onMounted, getCurrentInstance } from "vue";
-import ddlogin from "./ddlogin.vue";
-import bind from "./bindPhone.vue";
-import { ElMessage } from "element-plus";
-import { useRouter } from "vue-router";
-import { useStore } from "vuex";
-import jwt_decode from "jwt-decode";
-export default {
-    components: {
-        ddlogin,
-        bind,
-    },
-    setup() {
-        let user = ref("");
-        let pwd = ref("");
-        let loginModel = ref(true);
-        let loginImg = ref(require("../assets/img/erweima.png"));
-        var userCode = "";
-        let callbackStatus = ref("");
-        let router = useRouter();
-        let { proxy } = getCurrentInstance();
-        const store = useStore();
-        console.log(store, "VUEX");
-        onMounted(() => {
-            console.log(window.location.href, "mounted!");
-            if (window.location.href.indexOf("?code") != -1) {
-                userCode = window.location.href.substring(
-                    window.location.href.indexOf("?") + 6,
-                    window.location.href.indexOf("&state")
-                );
-                console.log(userCode);
-                let sss = editState(userCode);
-                console.log(sss, "123456789");
-            }
-        });
-        //处理登录icon变化
-        watch(loginModel, () => {
-            loginImg.value =
-                loginModel.value == true
-                    ? (loginImg.value = require("../assets/img/erweima.png"))
-                    : (loginImg.value = require("../assets/img/mima.png"));
-        });
-        let { editState } = test(proxy);
-        function test(proxy) {
-            let editState = (res) => {
-                let datas = { code: res };
-                proxy.$api.Dinglogin(datas).then((res) => {
-                    console.log(res, "接口访问成功");
-                    callbackStatus.value = res.status;
-                    localStorage.setItem(
-                        "DingUser",
-                        JSON.stringify(res.dingDingBind)
-                    );
-                    res.status === 1
-                        ? ElMessage("请进行绑定醍摩豆账号操作")
-                        : res.status === 0
-                        ? ElMessage.error("登录错误,非架构内人员禁止使用")
-                        : res.status === 200
-                        ? (ElMessage.success("登录成功"),
-                          getOrganization(proxy),
-                          getTeachinfo(proxy, res.id_token),
-                          Allpermission(proxy),
-                          router.push("/home"))
-                        : ElMessage.error("登录异常");
-                });
-            };
-            return {
-                editState,
-            };
-        }
-        //获取组织架构
-        function getOrganization(proxy) {
-            console.log(proxy, "检查proxy");
-            proxy.$api.getorganization().then((res) => {
-                console.log(res, "组织架构返回的内容");
-                res.state === 200
-                    ? store.commit("ChangOrganization", res.deptlist)
-                    : "";
-            });
-        }
-        //醍摩豆或手机登录
-        function userlogin(proxy) {
-            let nonceNum = Math.floor(Math.random() * 10000);
-            console.log(nonceNum, "随机数");
-            let params = {
-                grant_type: "account",
-                client_id: "c7317f88-7cea-4e48-ac57-a16071f7b884",
-                nonce: "habook",
-                account: user.value,
-                password: pwd.value,
-            };
-            proxy.$api.loginUser(params).then((res) => {
-                console.log(res, "登录接口返回成功!");
-                res.error
-                    ? ElMessage.error("密码错误")
-                    : res.id_token
-                    ? (ElMessage.success("登录成功"),
-                      getTeachinfo(proxy, res.id_token),
-                      Allpermission(proxy),
-                      getOrganization(proxy))
-                    : //   router.push("/home"))
-                      ElMessage.error("登录失败");
-                // router.push("/home");
-            });
-        }
-        //获取教师个人信息
-        function getTeachinfo(proxy, param) {
-            let parameter = { id_token: param };
-            proxy.$api.teacherinfo(parameter).then((res) => {
-                console.log(res, "教室个人信息");
-                let jwt_authtoken = { jwt_user: jwt_decode(res.auth_token) };
-                res = Object.assign(res, jwt_authtoken);
-                res.status === 200 ? store.commit("getTeachdata", res) : [];
-            });
-        }
-        //获取所有权限表
-        function Allpermission(proxy) {
-            proxy.$api.getAllpermission().then((res) => {
-                console.log(res, "权限列表");
-                res.authorityBIList
-                    ? store.commit("getPermission", res.authorityBIList)
-                    : [];
-            });
-        }
-        return {
-            store,
-            proxy,
-            user,
-            pwd,
-            loginModel,
-            loginImg,
-            userCode,
-            editState,
-            callbackStatus,
-            userlogin,
-            router,
-            getTeachinfo,
-        };
-    },
-};
-</script>
-<style scoped>
-.backgorundbox {
-    background: url("../assets/img/background1.png") no-repeat;
-    background-size: cover;
-    width: 100vw;
-    height: 100vh;
-    position: relative;
-    /* filter: blur(2px); */
-}
-.loginbox {
-    position: absolute;
-    width: 550px;
-    height: auto;
-    top: 200px;
-    right: 110px;
-    border-radius: 10px;
-    box-shadow: 1px 1px 5px #ccc;
-}
-.usrpwd {
-    height: 330px;
-    text-align: center;
-}
-.logintitle {
-    text-align: center;
-    font-size: 20px;
-    color: #fff;
-    margin-bottom: 8%;
-    margin-top: 5%;
-}
-.userbox {
-    text-align: center;
-    width: 60%;
-    margin: 0 auto;
-    position: relative;
-}
-.none {
-    display: none;
-}
-.loginbtn {
-    position: absolute;
-    display: block;
-    right: 0px;
-    top: 0px;
-    width: 44px;
-    height: 44px;
-    line-height: 43px;
-}
-.not_has_more {
-    margin: 30px 0px 20px 0px;
-    line-height: 50px;
-    text-align: center;
-    position: relative;
-    height: 95px;
-    font-size: 14px;
-    font-family: PingFangSC-Regular, PingFang SC;
-    font-weight: 400;
-    color: rgba(140, 142, 165, 1);
-    line-height: 30px;
-}
-.not_has_more::after,
-.not_has_more::before {
-    position: absolute;
-    width: 54px;
-    height: 0.5px;
-    background: #dadada;
-    content: "";
-    top: 15px;
-    right: 28%;
-}
-.not_has_more::after {
-    left: 28%;
-}
-.ddlogin {
-    margin-top: 3%;
-}
-.cut {
-    position: absolute;
-    top: 0px;
-    right: 0px;
-}
-</style>
-<style>
-.userbox .el-input__inner {
-    height: 45px;
-    border-radius: 30px;
-}
-</style>
-

+ 0 - 9
TEAMModeBI/ClientApp副本/vue.config.js

@@ -1,9 +0,0 @@
-module.exports = {
-    devServer: {
-        overlay: {
-            warnings: false,
-            errors: false
-        },
-    },
-    lintOnSave: false, //关闭语法检查
-}