yangys
2024-01-16 30ab871400e5064bc38085ef64931b8dc1f64fb9
Merge branch 'master' of http://www.beijingsoft.cn:9090/r/mdc-front
已修改5个文件
已添加3个文件
154 ■■■■ 文件已修改
src/container/home/Welcome.vue 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/container/home/index.vue 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/container/home/nav-li-active.png 补丁 | 查看 | 原始文档 | blame | 历史
src/container/home/nav-li.png 补丁 | 查看 | 原始文档 | blame | 历史
src/container/list/border.png 补丁 | 查看 | 原始文档 | blame | 历史
src/container/list/index.vue 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/styles/index.scss 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/login/index.vue 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/container/home/Welcome.vue
@@ -1,11 +1,12 @@
<!--
 * @Date: 2024-01-04 23:08:48
 * @LastEditors: Sneed
 * @LastEditTime: 2024-01-05 23:52:01
 * @FilePath: /belleson-frontend/Users/mache/Documents/demo/mdc/src/views/home/Welcome.vue
 * @LastEditTime: 2024-01-16 22:02:41
 * @FilePath: /belleson-frontend/Users/mache/Documents/demo/mdc/src/container/home/Welcome.vue
-->
<template>
        <div class="container">
    <div class="container">
        <img class="bg" src="./earth.png" alt="">
        <div class="welcome">
            admin您好,欢迎使用千文科技MDC展示系统
        </div>
@@ -13,15 +14,22 @@
</template>
<style lang="scss" scoped>
    .container {
    position: absolute;
    top: 0;
    left: 50%;
    width: 60%;
    transform: translateX(-50%);
    height: 100%;
    background-image: url('./earth.png');
    // background-image: url('./earth.png');
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    .bg {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        max-width: 100%;;
        max-height: 100%;
    }
}
    .welcome {
        width: 100%;
src/container/home/index.vue
@@ -2,13 +2,13 @@
    <Home>
        <template slot="menu">
            <div class="menu-container">
                <ul>
                <ul class="nav">
                    <li v-for="item in navs" :key="item.id" :class="activeId === item.id ? 'active' : ''" @click="goTo(item)">
                        <span>
                            {{ item.label }}
                            <i class="el-icon-caret-bottom" v-show="item.children && item.children.length > 0"></i>
                        </span>
                        <ul v-if="activeId === item.id && showSub">
                        <ul class="nav-sub" v-if="item.children && item.children.length > 0 && activeId === item.id && showSub">
                            <li v-for="child in item.children" @click="goTo(child)">{{ child.label }}</li>
                        </ul>
                    </li>
@@ -37,12 +37,14 @@
                {
                    label: '状态监控',
                    pathName: '',
                    id: 1
                    id: 1,
                    chilren: []
                },
                {
                    label: '大屏展示',
                    pathName: 'preview',
                    id: 2,
                    chilren: []
                },
                {
                    label: '车间地图',
@@ -116,11 +118,13 @@
                {
                    label: '班次设置',
                    id: 7,
                    chilren: []
                },
                {
                    label: '工件信息',
                    pathName: 'component',
                    id: 8,
                    chilren: []
                },
                {
                    label: '更多菜单',
@@ -147,6 +151,45 @@
    },
    computed: {
        ...mapGetters(['userInfo','workshopList'])
    },
    watch: {
        workshopList() {
            this.$set(this.navs,3 ,{
                ...this.navs[3],
                children: this.workshopList.map(item => {
                    return {
                        label: item.name,
                        value: item.id,
                        pathName: 'workshop',
                        params: {
                            id: item.id
                        },
                        query: {
                            name: item.name
                        }
                    }
                })
            })
        }
    },
    created () {
        this.$set(this.navs, 3 ,{
            ...this.navs[3],
            children: this.workshopList.map(item => {
                    return {
                        label: item.name,
                        value: item.id,
                        pathName: 'workshop',
                        params: {
                            id: item.id
                        },
                        query: {
                            name: item.name
                        }
                    }
                })
        })
        // this.navs[3].children = workshopList
    },
    methods: {
        logout() {
@@ -189,9 +232,14 @@
        list-style: none;
        display: flex;
        & > li {
            width: 112px;
            height: 40px;
            line-height: 38px;
            text-align: center;
            cursor: pointer;
            background: #27394E;
            padding: 0 12px;
            // background: #27394E;
            background: url('./nav-li.png') 100% 100% no-repeat;
            background-size: contain;
            white-space: nowrap;
            text-overflow: ellipsis;
            position: relative;
@@ -202,9 +250,12 @@
            // user-select:none;
        }
        & > li.active {
            & > ul {
            background: url('./nav-li-active.png') 100% 100% no-repeat;
            background-size: contain;
            & > ul.nav-sub {
                padding: 0;
                margin: 0;
                margin-top: 5px;
                padding-inline: 0;
                list-style: none;
                min-width: 100%;
src/container/home/nav-li-active.png
src/container/home/nav-li.png
src/container/list/border.png
src/container/list/index.vue
@@ -1,7 +1,7 @@
<!--
 * @Date: 2024-01-06 17:40:19
 * @LastEditors: Sneed
 * @LastEditTime: 2024-01-13 11:07:32
 * @LastEditTime: 2024-01-16 22:13:59
 * @FilePath: /belleson-frontend/Users/mache/Documents/demo/mdc/src/container/list/index.vue
-->
<template>
@@ -88,7 +88,6 @@
        height: 100%;
        overflow: auto;
        .table {
            .el-table::before {
                background-color: transparent;
            }
@@ -104,9 +103,12 @@
                border-bottom: none;
                padding: 0;
            }
            .el-table__fixed-right::before, .el-table__fixed::before {
                background: transparent;
            }
            .el-table td, .el-table--striped .el-table__body tr.el-table__row--striped td,.el-table--enable-row-hover .el-table__body tr:hover>td{
                color: #E6E5E5;
                // border-bottom: none;
                border-bottom: none;
                background: transparent;
                background-color: transparent;
                // padding: 0;
@@ -159,21 +161,42 @@
</style>
<style lang="scss" scoped>
    .list {
        padding: 30px;
    }
    .search {
        margin: 20px 30px;
        // margin: 20px 30px;
        padding: 30px 0px;
        min-height: 160px;
        display: flex;
        flex-wrap: wrap;
        background: url('./search.png') center center  no-repeat;
        background-size: cover;
        position: relative;
    }
    .search:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 4px;
        background: url('./border.png') 100% 100%  no-repeat;
        background-size: contain;
    }
    .search:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 4px;
        background: url('./border.png') 100% 100%  no-repeat;
        background-size: contain;
    }
    .table {
        margin-top: 20px;
        margin-bottom: 30px;
        padding: 20px 30px;
        padding: 20px 0px;
        background: transparent;
        overflow: auto;
        .pagination {
src/styles/index.scss
@@ -108,4 +108,10 @@
}
.el-button--primary.active {
  background-color: #5DD1FC!important;
}
.el-form-item__content {
  line-height: 40px;
}
.el-form-item {
  margin-bottom: 22px;
}
src/views/login/index.vue
@@ -17,34 +17,13 @@
          placeholder="请输入密码"></el-input>
          <span class="show-pwd" @click="showPwd"><svg-icon icon-class="eye" v-show="pwdType==='password'"/><svg-icon icon-class="eyeopen" v-show="pwdType!=='password'"/></span>
      </el-form-item>
      <el-form-item style="text-align: center;margin-top: 30px">
      <el-form-item class="login-btn" style="text-align: center;">
        <div class="btn" :loading="loading" @click="handleLogin">
          登录
        </div>
      </el-form-item>
    </el-form>
    <p class="compName">千文科技</p><el-form class="login-form" autoComplete="on" :model="loginForm" :rules="loginRules" ref="loginForm" label-position="left">
      <el-form-item prop="username" class="username">
        <span class="svg-container svg-container_login">
          <svg-icon icon-class="user" />
        </span>
        <el-input  name="username" type="text" v-model="loginForm.username" autoComplete="on" placeholder="请输入用户名" />
      </el-form-item>
      <el-form-item prop="password" class="username">
        <span class="svg-container">
          <svg-icon icon-class="password"></svg-icon>
        </span>
        <el-input name="password" :type="pwdType" @keyup.enter.native="handleLogin" v-model="loginForm.password" autoComplete="off"
          placeholder="请输入密码"></el-input>
          <span class="show-pwd" @click="showPwd"><svg-icon icon-class="eye" v-show="pwdType==='password'"/><svg-icon icon-class="eyeopen" v-show="pwdType!=='password'"/></span>
      </el-form-item>
      <el-form-item style="text-align: center;margin-top: 30px">
        <div class="btn" :loading="loading" @click="handleLogin">
          登录
        </div>
      </el-form-item>
    </el-form>
    <p class="compName">千文科技</p>
    <p class="compName">Copyright ©  2023 江苏千文科技有限公司   版权所有</p>
    </template>
  </Home>
  <!-- <div class="login-container">
@@ -311,4 +290,7 @@
    text-align: center;
    font-size: 70%;
  }
  .login-btn {
    margin-top: 30px;
  }
</style>