whychdw
2021-05-11 90f00f2d20373981cd0ed0a8d78643a0bbe3d162
内容提交
3个文件已修改
2个文件已添加
13482 ■■■■■ 已修改文件
package-lock.json 13285 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/PageMenu.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/warn/incomingScreenWarnRule.vue 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/warn/warnManager.vue 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/routes.js 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package-lock.json
Diff too large
src/components/PageMenu.vue
@@ -59,7 +59,7 @@
                    <transition name="el-zoom-in-center">
                        <div class="menu-three-con" v-if="twoMenu.subMenus">
                            <div class="menu-three" v-for="(threeMenu,j) in twoMenu.subMenus" :key="j">
                                <div class="menu-title">
                                <div class="menu-title" @click="select(threeMenu)">
                                    <div class="left">
                                        <i v-if="threeMenu.icon" :class="threeMenu.icon"></i>
                                        <span class="text">{{ threeMenu.name }}</span>
src/pages/warn/incomingScreenWarnRule.vue
New file
@@ -0,0 +1,22 @@
<template>
    <flex-layout>
        <page-panel title="数据列表" class="flex-page-content" :border="true">
        </page-panel>
    </flex-layout>
</template>
<script>
import pagePanel from '@/components/pagePanel';
export default {
    name: "incomingScreenWarnRule",
    components: {
        pagePanel
    },
}
</script>
<style scoped>
</style>
src/pages/warn/warnManager.vue
New file
@@ -0,0 +1,156 @@
<template>
    <flex-layout>
        <page-panel class="page-list-banner" title="数据筛选" :border="true" slot="header">
            <template slot="btnGrp">
                <el-button type="primary" size="mini">高级筛选</el-button>
            </template>
            <div class="table-layout">
                <div class="table-row">
                    <!-- 查询条件 -->
                    <div class="table-cell text-right">告警内容</div>
                    <div class="table-cell">
                        <el-input type="text" v-model.trim="filters.content" size="small" placeholder="内容信息"></el-input>
                    </div>
                    <div class="table-cell text-right">试验类型</div>
                    <div class="table-cell">
                        <el-select size="small" v-model="filters.type">
                            <el-option label="全部" :value="null"></el-option>
                            <el-option
                                v-for="(item, index) in testTypes" :key="'job_' + index"
                                :label="item.value" :value="item.value">
                            </el-option>
                        </el-select>
                    </div>
                    <div class="table-cell text-right">时间范围</div>
                    <div class="table-cell">
                        <el-date-picker
                            v-model="filters.startTime" size="small"
                            class="time_box" type="date" placeholder="选择日期"
                            value-format="yyyy-MM-dd"></el-date-picker>
                        -
                        <el-date-picker
                            v-model="filters.endTime" size="small"
                            class="time_box" type="date" placeholder="选择日期"
                            value-format="yyyy-MM-dd"></el-date-picker>
                    </div>
                </div>
            </div>
            <div class="banner-btn-grp">
                <div class="el-pagination-btns">
                    <el-button type="primary" @click="getList" round size="mini" icon="el-icon-search">查询
                    </el-button>
                </div>
                <div class="el-pagination-btns">
                    <el-button type="warning" round size="mini" icon="el-icon-refresh-right">重置</el-button>
                </div>
            </div>
        </page-panel>
        <page-panel title="数据列表" class="flex-page-content">
            <template slot="btnGrp">
                <el-button type="primary" size="mini" icon="el-icon-upload2">导出</el-button>
                <el-button type="danger" size="mini" icon="el-icon-delete">清空</el-button>
            </template>
            <el-table
                stripe size="mini" header-row-class-name="header-primary"
                height="100%" :data="list"
                v-loading="loading" element-loading-background="rgba(0, 0, 0, 0.8)">
                <el-table-column
                    type="selection"
                    width="55">
                </el-table-column>
                <el-table-column
                    prop="startTime"
                    label="日志时间"
                    min-width="180px"
                    sortable
                    :resizable="false">
                </el-table-column>
                <el-table-column
                    prop="dev"
                    label="设备"
                    min-width="180px"
                    :resizable="false">
                </el-table-column>
                <el-table-column
                    prop="warnType"
                    label="告警类型"
                    min-width="180px"
                    :resizable="false">
                </el-table-column>
                <el-table-column
                    prop="warnLevel"
                    label="告警级别"
                    min-width="180px"
                    :resizable="false">
                </el-table-column>
                <el-table-column
                    prop="warnContent"
                    label="告警内容"
                    min-width="180px"
                    :resizable="false">
                </el-table-column>
                <el-table-column
                    prop="test"
                    label="对应试验"
                    min-width="180px"
                    :resizable="false">
                </el-table-column>
            </el-table>
        </page-panel>
        <div class="flex-page-footer" slot="footer">
            <el-pagination
                size="mini" :current-page="page.pageCurr" :page-sizes="[10, 20, 30, 50, 100]"
                :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="page.pageAll"
                @current-change="currentChange" @size-change="sizeChange"></el-pagination>
        </div>
    </flex-layout>
</template>
<script>
import pagePanel from '@/components/pagePanel';
export default {
    name: "warnManager",
    components: {
        pagePanel,
    },
    data() {
        return {
            page: {
                pageCurr: 1,
                pageSize: 10,
                pageAll: 0
            },
            loading: false,
            list: [],
            filters: {
                content: '',   //告警内容
                type: null,       // 试验类型
                startTime: '',
                endTime: '',
            },
            testTypes: [],      // 试验类型列表
        }
    },
    methods: {
        getList() {
        },
        currentChange(value) {
            this.page.pageCurr = value;
            this.getList();
        },
        sizeChange(value) {
            this.page.pageCurr = 1;
            this.page.pageSize = value;
            this.getList();
        }
    }
}
</script>
<style scoped>
.page-list-banner {
    margin-bottom: 10px;
}
</style>
src/router/routes.js
@@ -43,5 +43,20 @@
        name: 'userOperation',
        meta: {},
        component: (resolve) => require(['@/pages/user/userOperation.vue'], resolve),
    }, ]
    }, {
        path: 'warnManager',
        name: 'warnManager',
        meta: {
            name: '告警管理',
        },
        component: (resolve) => require(['@/pages/warn/warnManager.vue'], resolve),
    },
    {
        path: 'incomingScreenWarnRule',
        name: 'incomingScreenWarnRule',
        meta: {
            name: '进线屏告警规则',
        },
        component: (resolve) => require(['@/pages/warn/incomingScreenWarnRule.vue'], resolve),
    },]
}];