5636d350 by yangwei
2 parents 56a12ec8 e6bc245e
Showing 77 changed files with 1449 additions and 515 deletions
###
# @Description:
# @Autor: renchao
# @LastEditTime: 2023-03-02 15:44:12
###
# just a flag
ENV = 'development'
NODE_ENV=development
......
/*
* @Description: 数据上报模块api文件
* @Autor: renchao
* @LastEditTime: 2023-03-01 16:33:08
* @LastEditTime: 2023-03-03 14:38:57
*/
/* 引入axios请求文件 */
import request from '@/utils/request'
......@@ -110,3 +110,16 @@ export function restartGenerateXml (bsmReport) {
method: 'post'
})
}
/**
* @description: 编辑报文头
* @param {*} data
* @author: renchao
*/
export function edit (data) {
return request({
url: urlHeader + 'edit',
method: 'post',
data
})
}
\ No newline at end of file
......
/*
* @Description: 登薄日志
* @Autor: renchao
* @LastEditTime: 2023-03-01 17:09:38
* @LastEditTime: 2023-03-02 13:45:53
*/
/* 引入请求文件 */
import request from '@/utils/request'
/* 引入配置文件 */
import SERVER from './config'
const urlHeader = SERVER.SERVERAPI + '/rest/sjsb/RecordLog/'
/**
* @description: 登簿日志分页
* @author: renchao
......@@ -35,4 +34,29 @@ export function getDetail (dbBsm) {
}
})
}
/**
* @description: 详情页面编辑
* @param {*} data
* @author: renchao
*/
export function edit (data) {
return request({
url: urlHeader + 'edit',
method: 'post',
data
})
}
/**
* @description: 登薄日志重新生成报文
* @param {*} dbBsm
* @author: renchao
*/
export function regenerateDbXml (dbBsm) {
return request({
url: urlHeader + 'regenerateDbXml',
method: 'get',
params: {
dbBsm: dbBsm
}
})
}
......
import request from '@/utils/request'
import SERVER from './config'
/**
* dataReceiveQuality
* @param startDate
* @param endDate
* @returns {AxiosPromise}
*/
export function dataReceiveQuality (startDate, endDate) {
return request({
url: SERVER.SERVERAPI + '/rest/statistics/Efficient/dataReceiveQuality?startDate='+startDate+'&endDate='+endDate,
method: 'post'
})
}
/**
* 空项率统计
* @returns {AxiosPromise}
* @param startDate
* @param endDate
*/
export function nonNullSta (startDate, endDate) {
return request({
url: SERVER.SERVERAPI + '/rest/statistics/Efficient/nonNullSta?startDate='+startDate+'&endDate='+endDate,
method: 'post'
})
}
/**
* 登簿质量统计
* @returns {AxiosPromise}
* @param startDate
* @param endDate
*/
export function registerBookQuality (startDate, endDate) {
return request({
url: SERVER.SERVERAPI + '/rest/statistics/Efficient/registerBookQuality?startDate='+startDate+'&endDate='+endDate,
method: 'post'
})
}
......@@ -46,7 +46,7 @@ export default {
sessionStorage.removeItem("token");
this.$store.dispatch("user/resetState");
this.$router.replace({
path: "/login",
path: "/login/jg",
query: {
redirect: this.$route.fullPath,
},
......
<template>
<el-menu router :default-active="activeMenu" mode="horizontal">
<!-- 权限菜单 -->
<sidebar-item v-for="route in permission_routes.slice(2, 5)" :key="route.path" :item="route"
<sidebar-item v-for="route in permission_routes.slice(3, 6)" :key="route.path" :item="route"
:base-path="route.path" />
<!-- 菜单全部展示 -->
<!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> -->
......@@ -9,16 +9,18 @@
</template>
<script>
import { mapGetters } from 'vuex'
import Logo from './Logo'
import SidebarItem from './SidebarItem'
import variables from '@/styles/variables.scss'
import { asyncRoutes } from '@/router'
export default {
import { mapGetters } from 'vuex'
import Logo from './Logo'
import SidebarItem from './SidebarItem'
import variables from '@/styles/variables.scss'
import { asyncRoutes } from '@/router'
export default {
components: { SidebarItem, Logo },
computed: {
...mapGetters(['permission_routes', 'sidebar']),
activeMenu () {
const route = this.$route
const { meta, path } = route
if (meta.activeMenu) {
......@@ -32,12 +34,15 @@ export default {
asyncRoutes () {
return asyncRoutes.slice(0, 3)
}
},
mounted () {
console.log("permission_routes", this.permission_routes);
}
}
}
</script>
<style scoped lang="scss">
.el-menu--horizontal {
.el-menu--horizontal {
display: flex;
background: none !important;
}
}
</style>
......
<!--
* @Author: xiaomiao 1158771342@qq.com
* @Date: 2023-01-10 09:03:06
* @LastEditors: xiaomiao 1158771342@qq.com
* @LastEditTime: 2023-03-08 10:45:43
* @FilePath: \监管系统\js-web-jianguan\src\layout\components\Sidebar\sidebarRight.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<template>
<el-menu router :default-active="activeMenu" mode="horizontal">
<!-- 权限菜单 -->
<sidebar-item v-for="route in permission_routes.slice(5, 8)" :key="route.path" :item="route"
<sidebar-item v-for="route in permission_routes.slice(6, 9)" :key="route.path" :item="route"
:base-path="route.path" />
<!-- 菜单全部展示 -->
<!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> -->
......@@ -9,12 +17,12 @@
</template>
<script>
import { mapGetters } from 'vuex'
import Logo from './Logo'
import SidebarItem from './SidebarItem'
import variables from '@/styles/variables.scss'
import { asyncRoutes } from '@/router'
export default {
import { mapGetters } from 'vuex'
import Logo from './Logo'
import SidebarItem from './SidebarItem'
import variables from '@/styles/variables.scss'
import { asyncRoutes } from '@/router'
export default {
components: { SidebarItem, Logo },
computed: {
...mapGetters(['permission_routes', 'sidebar']),
......@@ -33,35 +41,35 @@ export default {
return asyncRoutes.slice(3, 6)
}
}
}
}
</script>
<style scoped lang="scss">
.el-menu--horizontal {
.el-menu--horizontal {
display: flex;
background: none !important;
}
}
/deep/.el-menu-item:hover {
/deep/.el-menu-item:hover {
background: none;
font-weight: 700;
color: #fff !important;
}
}
/deep/.el-submenu__title {
/deep/.el-submenu__title {
color: #fff;
font-size: 18px;
}
}
/deep/.el-submenu__title:hover {
/deep/.el-submenu__title:hover {
background: none;
font-weight: 700;
font-size: 20px;
}
}
/deep/.el-menu--horizontal .el-menu-item:not(.is-disabled):focus {
/deep/.el-menu--horizontal .el-menu-item:not(.is-disabled):focus {
background: none;
color: #fff;
font-size: 20px;
font-weight: 700 !important;
}
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-03-07 09:15:01
-->
<template>
<div class="app-wrapper">
<div class="app-wrapper jgWrapper">
<navbar />
<div class="appMain">
<app-main />
......@@ -28,6 +33,9 @@ export default {
}
}
</script>
<style lang="scss">
@import "~@/styles/jgSidebar.scss";
</style>
<style lang="scss" scoped>
@import "~@/styles/mixin.scss";
......
......@@ -22,6 +22,6 @@ export default {
box-sizing: border-box;
flex: 1;
width: 100%;
margin-right: 15px;
// background-color: #ffffff;
}
</style>
......
......@@ -4,11 +4,7 @@
<div class="logo">
<img :src="require('@/image/logo.png')" alt="" />
</div>
<!-- <div class="backdrop">
<Breadcrumb />
</div> -->
<div class="right-menu">
<div class="dataView d-center pointer" @click="handleDataView">大屏展示</div>
<el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover" @command="handleCommand">
<div class="avatar-wrapper">
<span style="padding-right:10px">{{ name }}</span>
......@@ -24,10 +20,10 @@
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import Breadcrumb from './Breadcrumb'
import defaultSettings from '@/settings'
export default {
import { mapGetters } from 'vuex'
import Breadcrumb from './Breadcrumb'
import defaultSettings from '@/settings'
export default {
components: {
Breadcrumb
},
......@@ -54,10 +50,10 @@
}
}
}
}
}
</script>
<style lang="scss" scoped>
.navbar-con {
.navbar-con {
position: relative;
.logo {
......@@ -65,23 +61,14 @@
font-size: 26px;
font-weight: 700;
}
}
.dataView {
color: #fff;
width: 120px;
height: 32px;
background: url("../../image/dp.png");
background-size: cover;
margin-right: 20px;
}
}
.NoticeBar {
.NoticeBar {
position: absolute;
bottom: 0;
}
}
.el-dropdown-menu {
.el-dropdown-menu {
padding: 0 !important;
border: 1px solid #ebeef5;
box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
......@@ -114,21 +101,17 @@
background: #f6f7f9;
color: #4a4a4a;
}
}
}
.navbar {
.navbar {
height: $headerHeight;
overflow: hidden;
position: relative;
// background: linear-gradient(270deg, #148CEE 0%, #1870E3 100%); //默认颜色
// box-shadow: 0 1px 0px rgba(0, 21, 41, 0.08);
background: #0d1230;
background: #3D59C4;
display: flex;
align-items: center;
padding-right: 20px;
justify-content: space-between;
margin-bottom: 10px;
.header-logo {
width: 300px;
}
......@@ -246,5 +229,5 @@
}
}
}
}
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-03-06 16:18:21
-->
<template>
<div>
<el-scrollbar wrap-class="scrollbar-wrapper">
<el-menu router :default-active="activeMenu" :background-color="variables.menuBg" :text-color="variables.menuText"
:unique-opened="true" :active-text-color="variables.menuActiveText" :collapse-transition="false" mode="vertical">
<!-- 权限菜单 -->
<sidebar-item v-for="route in permission_routes" :key="route.path" :item="route" :base-path="route.path" />
<sidebar-item v-for="route in permission_routes.slice(3)" :key="route.path" :item="route"
:base-path="route.path" />
<!-- 菜单全部展示 -->
<!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> -->
</el-menu>
......@@ -13,20 +19,22 @@
</template>
<script>
import { mapGetters } from 'vuex'
import Logo from './Logo'
import defaultSettings from '@/settings'
import SidebarItem from './SidebarItem'
import variables from '@/styles/variables.scss'
import { asyncRoutes } from '@/router'
export default {
import { mapGetters } from 'vuex'
import Logo from './Logo'
import defaultSettings from '@/settings'
import SidebarItem from './SidebarItem'
import variables from '@/styles/variables.scss'
import { asyncRoutes } from '@/router'
export default {
components: { SidebarItem, Logo },
data () {
return {
title: defaultSettings.title
}
},
created () {
console.log(this.permission_routes);
},
computed: {
...mapGetters(['permission_routes', 'sidebar']),
activeMenu () {
......@@ -44,5 +52,5 @@
return asyncRoutes
}
}
}
}
</script>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-03-07 09:11:01
-->
<template>
<div class="app-wrapper">
<div class="app-wrapper scWrapper">
<navbar />
<div class="main-container">
<sidebar class="sidebar-container" />
......@@ -29,15 +34,17 @@ export default {
}
}
</script>
<style lang="scss" scoped>
<style lang="scss">
@import "~@/styles/mixin.scss";
@import '~@/styles/sbSidebar.scss';
.app-wrapper {
@include clearfix;
position: relative;
height: 100%;
width: 100%;
background-color: $containerbg;
// background-color: $containerbg;
padding: 0;
&.mobile.openSidebar {
position: fixed;
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-03-07 09:43:25
*/
import router from "./router";
import store from "./store";
import { getMenuInfo } from "@/api/user";
......@@ -13,16 +18,57 @@ router.beforeEach(async (to, from, next) => {
let hasAddDict = store.state.dict.addDict;
let hasUser = store.state.user.hasUser;
let hasAddRoute = store.state.permission.addRoutes;
if (to.path == "/login") {
if (to.path == "/login/sb") {
sessionStorage.removeItem("token");
next();
} else if (to.path !== "/login/jg") {
//判断token是否存在
const hasToken = sessionStorage.getItem("token");
if (hasToken) {
//请求用户信息
if (!hasUser) {
store.dispatch("user/getUserInfo");
}
if (hasAddRoute) {
next();
} else {
//请求菜单
const { result: getMenuData } = (await getMenuInfo()) || [];
const accessRoutes = await store.dispatch(
"permission/generateRoutes",
getMenuData
);
router.addRoutes([
...accessRoutes,
{ path: "*", redirect: "/404", hidden: true },
]);
const routeTo = Cookies.get("routerTo");
if (!hasAddDict) {
await store.dispatch("dict/generateDic");
}
if (routeTo && routeTo !== "/") {
next({ ...to, replace: true });
} else {
alert("上报")
next("/home");
}
}
} else {
next("/login/sb");
}
}
if (to.path == "/login/jg") {
sessionStorage.removeItem("token");
next();
} else if (to.path !== "/login/sb") {
//判断token是否存在
const hasToken = sessionStorage.getItem("token");
if (hasToken) {
//请求用户信息
if (!hasUser) {
store.dispatch("user/getUserInfo");
import("@/styles/public.scss");
}
if (hasAddRoute) {
next();
......@@ -44,11 +90,12 @@ router.beforeEach(async (to, from, next) => {
if (routeTo && routeTo !== "/") {
next({ ...to, replace: true });
} else {
alert("监管")
next("/home");
}
}
} else {
next("/login");
next("/login/jg");
}
}
NProgress.done();
......
......@@ -3,6 +3,8 @@ import Router from 'vue-router'
Vue.use(Router)
/* Layout */
import Layout from '@/layout'
// const p = 'layout1'
// const Layout = require('@/layout')
/* Router Modules */
// import componentsRouter from './modules/components'
export const constantRoutes = [
......@@ -22,9 +24,14 @@ export const constantRoutes = [
},
//登录
{
path: "/login",
name: "login",
component: () => import("@/views/login/index.vue"),
path: "/login/jg",
name: "loginjg",
component: () => import("@/views/loginjg/index.vue"),
},
{
path: "/login/sb",
name: "loginsb",
component: () => import("@/views/loginsb/index.vue"),
},
// 监管首页
{
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-03-07 09:38:47
*/
import { getUserInfo } from "@/api/user";
const state = {
hasUser: false,
......@@ -18,9 +23,6 @@ const actions = {
getUserInfo ({ commit }) {
return new Promise(async (resolve) => {
let { result: res } = await getUserInfo();
// require.ensure([], function (require) {
// require("@/assets/sass/smart-lift/index.scss");
// });
commit("SET_USERINFO", res);
resolve(true);
});
......
......@@ -60,6 +60,13 @@
}
}
.item-content-input {
/deep/.el-input__inner {
border: none !important;
text-align: right;
}
}
.regularHeight {
height: 80vh;
display: flex;
......
// cover some element-ui styles
.el-breadcrumb__inner,
.el-breadcrumb__inner a {
font-weight: 400 !important;
......@@ -531,29 +530,34 @@ tr:hover {
background-color: #031a46;
border: 1px solid #5f82c7;
.el-message-box__title{
.el-message-box__title {
color: white;
}
.el-message-box__content{
.el-message-box__content {
color: white;
}
}
// 上级菜单
// 上级菜单
.el-cascader__dropdown {
background-color: #031a46;
border: 1px solid #5f82c7;
}
.el-cascader-menu{
.el-cascader-menu {
color: white;
}
.el-radio
{
.el-cascader-menu:hover{
.el-radio {
.el-cascader-menu:hover {
color: white;
}
}
.el-cascader-node:not(.is-disabled):hover, .el-cascader-node:not(.is-disabled):focus {
.el-cascader-node:not(.is-disabled):hover,
.el-cascader-node:not(.is-disabled):focus {
background: #F5F7FA;
background-image: initial;
background-position-x: initial;
......
......@@ -2,7 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
@import './sidebar.scss';
// @import './sidebar.scss';
/* CSS 初始化 */
html,
......
#app {
.jgWrapper {
.main-container {
width: 100%;
height: calc(100% - 74px);
......
.tableClass {
/deep/.el-table {
.el-table {
border: none !important;
border-radius: 0 !important;
background-color: rgba(0, 0, 0, 0);
......@@ -40,6 +40,11 @@
}
//*****start*通用表单查询条件,列表样式******//
.bgc {
box-shadow: inset 0px 0px 8px 0px rgba(255, 255, 255, 0.5);
background-color: rgba(0, 0, 0, 0);
}
.from-clues {
height: 100%;
width: 100%;
......@@ -56,11 +61,11 @@
background-size: 100% 100%;
margin-top: 15px;
/deep/.el-form-item__label {
.el-form-item__label {
color: #E3F1FF;
}
/deep/.el-input__inner {
.el-input__inner {
background: #07388B;
border-radius: 2px;
color: #CEF8FF;
......@@ -114,16 +119,11 @@
//修改表头的背景颜色横向渐变色
@extend .tableClass;
/deep/.el-pagination__total {
.el-pagination__total {
color: #FFFFFF;
}
.bgc {
box-shadow: inset 0px 0px 8px 0px rgba(255, 255, 255, 0.5);
background-color: rgba(0, 0, 0, 0);
}
/deep/ .el-pagination {
.el-pagination {
.el-input__inner {
color: #FFFFFF;
border: none;
......@@ -142,14 +142,9 @@
color: #FFFFFF;
}
}
/deep/.btn-next,
/deep/.btn-prev {
@extend .bgc;
color: #FFFFFF;
}
}
.el-form--inline .el-form-item {
width: auto;
......@@ -167,10 +162,15 @@
}
}
.el-pagination.is-background .btn-prev,
.el-pagination.is-background .btn-next {
@extend .bgc;
color: #FFFFFF;
}
//*****end*通用表单查询条件,列表样式******//
/deep/.el-range-separator {
.el-range-separator {
line-height: 28px !important;
}
......@@ -202,7 +202,7 @@
// 修改弹框样式
.modifydialog {
/deep/.el-dialog__header {
.el-dialog__header {
text-align: center;
margin-bottom: 10px;
......@@ -211,36 +211,36 @@
}
}
/deep/.el-form-item__label {
.el-form-item__label {
color: white;
}
/deep/.el-input__inner {
.el-input__inner {
background-color: #07388b;
}
/deep/.el-input__inner {
.el-input__inner {
background: #07388b;
border-radius: 2px;
border: 1px solid #6bc1fc;
}
/deep/.el-textarea__inner {
.el-textarea__inner {
background: #07388b;
color: #fff;
}
/deep/.el-form-item__label {
.el-form-item__label {
color: #fff;
}
/deep/.el-dialog__headerbtn {
.el-dialog__headerbtn {
position: absolute;
top: 22px;
right: 30px;
}
/deep/.el-dialog__header {
.el-dialog__header {
text-align: center;
margin-bottom: 10px;
......@@ -252,23 +252,23 @@
// 角色配置
.roleconfiguration {
/deep/.el-dialog__body {
.el-dialog__body {
display: flex;
flex-direction: column;
}
/deep/ .el-tabs {
.el-tabs {
color: #cef8ff;
}
.sjmx {
/deep/.el-tabs__item {
.el-tabs__item {
height: 50px;
padding-top: 6px;
}
}
/deep/.el-tabs__item {
.el-tabs__item {
color: #cef8ff !important;
display: flex;
......@@ -286,35 +286,35 @@
background-size: 100% 100%;
}
/deep/.el-tabs__nav-scroll {
.el-tabs__nav-scroll {
background: none;
}
/deep/.el-tabs__nav {
.el-tabs__nav {
display: flex;
border: none !important;
}
/deep/.el-tabs__item.is-top {
.el-tabs__item.is-top {
border: 1px solid #dfe4ed;
border-top: 1px solid #dfe4ed;
border-bottom: 1px solid transparent;
}
/deep/.el-tabs__header {
.el-tabs__header {
border: none;
margin-bottom: 0;
}
/deep/.el-tabs__item.is-top:not(:last-child) {
.el-tabs__item.is-top:not(:last-child) {
margin-right: 5px;
}
/deep/.el-tabs__item.is-top {
.el-tabs__item.is-top {
background-color: none !important;
}
/deep/.el-tabs__item.is-active {
.el-tabs__item.is-active {
background: url("~@/image/tabitemse.png") no-repeat;
background-size: 100% 100%;
}
......@@ -344,7 +344,7 @@
border-top: none;
}
/deep/.editDialogBox {
.editDialogBox {
border-radius: 8px;
overflow: hidden;
min-width: 1228px;
......@@ -424,7 +424,7 @@
overflow: hidden;
}
/deep/.el-table {
.el-table {
background: none;
th.el-table__cell {
......@@ -440,5 +440,4 @@
}
}
}
}
\ No newline at end of file
......
.scWrapper {
.main-container {
width: 100%;
height: calc(100% - 74px);
transition: margin-left 0.28s;
display: flex;
}
.sidebar-container {
transition: width 0.28s;
width: $sideBarWidth !important;
font-size: 0px;
margin-right: 15px;
background: #121F41;
.horizontal-collapse-transition {
transition: 0s width ease-in-out, 0s padding-left ease-in-out,
0s padding-right ease-in-out;
}
.scrollbar-wrapper {
overflow-x: hidden !important;
margin-right: 0 !important;
&::-webkit-scrollbar {
display: none;
}
}
a {
display: inline-block;
width: 100%;
overflow: hidden;
}
.svg-icon {
margin-right: 5px;
}
.sub-el-icon {
margin-right: 12px;
margin-left: -2px;
}
.el-menu {
background-color: transparent !important;
border: none;
height: 100%;
width: 100% !important;
}
// menu hover
.el-menu--collapse .el-submenu__title,
.el-menu--collapse .submenu-title-noDropdown {
margin-left: 0px !important;
}
// 有子级
.el-submenu__title {
padding-left: 10px !important;
color: $menuText;
height: 42px;
background: linear-gradient(90deg, #013874 0%, #081B56 100%);
margin-bottom: 8px;
&:hover {
color: $subMenuActiveText !important;
background: linear-gradient(90deg, #1D66DC 0%, #081B56 100%);
.svg-icon,
i,
span {
color: $subMenuActiveText !important;
}
}
}
// 没有子级
.submenu-title-noDropdown {
color: $menuText;
padding-left: 20px;
margin-bottom: 8px;
background: linear-gradient(90deg, #013874 0%, #081B56 100%);
&:hover {
color: $menuActiveText !important;
background: linear-gradient(90deg, #1D66DC 0%, #081B56 100%);
.svg-icon {
color: #1ea6f8 !important;
}
i {
color: #1ea6f8 !important;
}
}
}
.submenu-title-noDropdown.is-active,
.el-submenu__title.is-active {
color: $menuActiveText;
background: linear-gradient(90deg, #1D66DC 0%, #081B56 100%);
.svg-icon {
color: #1ea6f8 !important;
}
i {
color: #1ea6f8 !important;
}
}
.submenu-title-noDropdown,
.el-submenu__title {
font-weight: 600;
font-size: $sideBarFontSize;
// margin: 0 10px;
>i {
color: $subMenuActiveText !important;
transform: rotate(90deg);
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
margin-right: 10px;
}
.svg-icon {
font-size: 18px;
margin-top: -5px;
}
}
.el-submenu.is-opened>.el-submenu__title .el-submenu__icon-arrow {
transform: rotateZ(0deg) !important;
-webkit-transform: rotateZ(0deg) !important;
-moz-transform: rotateZ(0deg) !important;
-ms-transform: rotateZ(0deg) !important;
-o-transform: rotateZ(0deg) !important;
}
.is-active>.el-submenu__title {
color: #fff !important;
}
& .nest-menu .el-submenu>.el-submenu__title,
& .el-submenu .el-menu-item {
&.is-active {
background-color: $subMenuHover !important;
color: $menuActiveText !important;
}
&:hover {
background-color: $subMenuHover !important;
color: $menuActiveText !important;
}
min-width: 130px !important;
background-color: transparent !important;
font-weight: 600;
font-size: $sideBarFontSize;
margin: 0 10px;
// border-radius: 6px;
}
}
.hideSidebar {
.sidebar-container {
width: 54px !important;
}
.submenu-title-noDropdown {
padding: 0 !important;
position: relative;
.el-tooltip {
padding: 0 !important;
.svg-icon {
margin-left: 16px;
}
.sub-el-icon {
margin-left: 19px;
}
}
}
.el-submenu {
overflow: hidden;
&>.el-submenu__title {
padding: 0 !important;
.svg-icon {
margin-left: 16px;
}
.sub-el-icon {
margin-left: 19px;
}
.el-submenu__icon-arrow {
display: none;
}
}
}
.el-menu--collapse {
.el-submenu {
&>.el-submenu__title {
&>span {
height: 0;
width: 0;
overflow: hidden;
visibility: hidden;
display: inline-block;
}
}
}
}
}
.el-menu--collapse .el-menu .el-submenu {
min-width: $sideBarWidth !important;
}
// mobile responsive
.mobile {
.main-container {
margin-left: 0px;
}
.sidebar-container {
transition: transform 0.28s;
width: $sideBarWidth !important;
}
&.hideSidebar {
.sidebar-container {
pointer-events: none;
transition-duration: 0.3s;
transform: translate3d(-$sideBarWidth, 0, 0);
}
}
}
.withoutAnimation {
.main-container,
.sidebar-container {
transition: none;
}
}
}
// when menu collapsed
.el-menu--vertical {
&>.el-menu {
.svg-icon {
margin-right: 16px;
}
.sub-el-icon {
margin-right: 12px;
margin-left: -2px;
}
}
.nest-menu .el-submenu>.el-submenu__title,
.el-menu-item {
width: calc(100% - 12px);
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
font-weight: 600 !important;
font-size: 15px !important;
background-color: $menuHover !important;
color: $menuText !important;
&:hover {
background-color: $menuHover !important;
opacity: .9;
.svg-icon,
i,
span {
color: $menuText;
}
}
}
// the scroll bar appears when the subMenu is too long
>.el-menu--popup {
max-height: 100vh;
overflow-y: auto;
background-color: #32ACFE !important;
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
min-width: 140px;
padding: 12px 0;
&::-webkit-scrollbar-track-piece {
background: #d3dce6;
}
&::-webkit-scrollbar {
width: 6px;
}
&::-webkit-scrollbar-thumb {
background: #99a9bf;
border-radius: 20px;
}
}
}
.el-submenu__title {
display: flex;
align-items: center;
}
.el-submenu__title span {
white-space: normal;
word-break: break-all;
line-height: 20px;
flex: 1;
padding-right: 20px;
}
.el-menu-item {
height: 42px;
display: flex;
align-items: center;
padding-right: 20px !important;
}
.el-menu-item span {
white-space: normal;
word-break: break-all;
line-height: 20px;
flex: 1;
}
\ No newline at end of file
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-03-07 09:35:10
*/
import Layout from '@/layout'
export default function filterAsyncRouter (routers) {
routers.forEach(item => {
......
......@@ -62,7 +62,7 @@ function handleErrorData(status) {
case 401:
Message.error("由于长时间未操作,请重新登录!");
router.replace({
path: "/login",
path: "/login/jg",
query: {
redirect: router.history.current.fullPath,
},
......
......@@ -260,3 +260,26 @@ function openDownloadDialog (url, saveName) {
}
aLink.dispatchEvent(event);
}
export function judgeListComplete (list) {
function judgeObjectComplete (obj) {
let flag = false
for (const key in obj) {
if (obj[key] == '' && key != 'index') {
flag = true
}
}
return flag
}
let isNotComplete = list.findIndex(item => {
return judgeObjectComplete(item) === true
})
if (isNotComplete > -1) {
return false
} else {
return true
}
}
......
......@@ -161,5 +161,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -152,6 +152,6 @@ export default {
</script>
<style scoped lang="scss">
// 引入表单整体样式
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -160,5 +160,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -169,5 +169,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -135,5 +135,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -201,5 +201,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -151,5 +151,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -157,6 +157,6 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -163,6 +163,6 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
@import "./index.scss";
</style>
......
......@@ -143,5 +143,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -148,5 +148,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -145,5 +145,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -160,5 +160,5 @@ export default {
</script>
<style scoped lang="scss">
// 引入表单整体样式
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -151,5 +151,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -143,5 +143,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -10,29 +10,16 @@
<el-row>
<el-col :span="4">
<el-form-item label="开始日期" prop="startTime">
<el-date-picker
type="date"
:clearable="false"
class="width100"
placeholder="开始日期"
:picker-options="pickerOptionsStart"
v-model="form.startTime"
value-format="yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker type="date" :clearable="false" class="width100" placeholder="开始日期"
:picker-options="pickerOptionsStart" v-model="form.startTime"
value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="结束日期" prop="endTime">
<el-date-picker
class="width100"
:clearable="false"
type="date"
placeholder="结束日期"
:picker-options="pickerOptionsEnd"
v-model="form.endTime"
value-format="yyyy-MM-dd HH:mm:ss"
@change="endTimeChange"
></el-date-picker>
<el-date-picker class="width100" :clearable="false" type="date" placeholder="结束日期"
:picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"
@change="endTimeChange"></el-date-picker>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
......@@ -57,7 +44,7 @@ import efficient from "@/api/efficient";
import { getFirstDayOfSeason, timeFormat } from "@/utils/operation";
export default {
name: "jktj",
data() {
data () {
return {
// 开始日期限制
pickerOptionsStart: {
......@@ -83,19 +70,19 @@ export default {
pieChartsData: [],
};
},
created() {},
mounted() {
created () { },
mounted () {
this.getProcessCounts();
},
computed: {
...mapGetters(["dicData"]),
},
methods: {
endTimeChange(val) {
endTimeChange (val) {
this.form.endTime = timeFormat(new Date(val), true);
},
//查询各区县办件数量
async getProcessCounts() {
async getProcessCounts () {
this.pieChartsData = [];
let { result: res } = await efficient.getProcessCounts(
this.form.startTime,
......@@ -121,7 +108,7 @@ export default {
});
},
// 重置
resetForm() {
resetForm () {
this.form = {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(), true),
......@@ -129,7 +116,7 @@ export default {
this.getProcessCounts();
},
//玫瑰图初始化
echartInit() {
echartInit () {
let _this = this;
// 基于准备好的dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById("myChart"));
......@@ -190,7 +177,7 @@ export default {
});
},
//柱图初始化
async barChartInit(recType) {
async barChartInit (recType) {
//请求recType对应业务的各区县数据
let { result: res } = await efficient.getProcessDays(
recType,
......@@ -325,7 +312,7 @@ export default {
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
.jktjDetail {
height: 100%;
......@@ -364,5 +351,5 @@ export default {
}
</style>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -10,47 +10,24 @@
<el-row>
<el-col :span="4">
<el-form-item label="行政区">
<el-select
v-model="form.qxdm"
class="width100"
clearable
placeholder="行政区"
>
<el-option
v-for="item in dicData['A20']"
:key="item.DCODE"
:label="item.DNAME"
:value="item.DCODE"
>
<el-select v-model="form.qxdm" class="width100" clearable placeholder="行政区">
<el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="开始日期" prop="startTime">
<el-date-picker
type="date"
:clearable="false"
class="width100"
placeholder="开始日期"
:picker-options="pickerOptionsStart"
v-model="form.startTime"
value-format="yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker type="date" :clearable="false" class="width100" placeholder="开始日期"
:picker-options="pickerOptionsStart" v-model="form.startTime"
value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="结束日期" prop="endTime">
<el-date-picker
type="date"
:clearable="false"
class="width100"
placeholder="结束日期"
:picker-options="pickerOptionsEnd"
v-model="form.endTime"
value-format="yyyy-MM-dd HH:mm:ss"
@change="endTimeChange"
></el-date-picker>
<el-date-picker type="date" :clearable="false" class="width100" placeholder="结束日期"
:picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"
@change="endTimeChange"></el-date-picker>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
......@@ -98,7 +75,7 @@ export default {
// 搜索表单
form: {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
endTime: timeFormat(new Date(), true),
qxdm: "",
},
};
......@@ -111,8 +88,8 @@ export default {
...mapGetters(["dicData"]),
},
methods: {
endTimeChange(val){
this.form.endTime = timeFormat(new Date(val),true)
endTimeChange (val) {
this.form.endTime = timeFormat(new Date(val), true)
},
async getSuucessRate () {
this.recTypeArr = [];
......@@ -137,7 +114,7 @@ export default {
resetForm () {
this.form = {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
endTime: timeFormat(new Date(), true),
qxdm: "",
};
this.getSuucessRate();
......@@ -231,7 +208,7 @@ export default {
color: "#fff",
fontSize: "16",
},
splitNumber:2,
splitNumber: 2,
axisLabel: {
formatter: "{value} %",
textStyle: {
......@@ -302,7 +279,7 @@ export default {
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
.jktjDetail {
height: 100%;
......@@ -337,5 +314,5 @@ export default {
}
</style>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -10,47 +10,24 @@
<el-row>
<el-col :span="4">
<el-form-item label="行政区">
<el-select
v-model="form.qxdm"
class="width100"
clearable
placeholder="行政区"
>
<el-option
v-for="item in dicData['A20']"
:key="item.DCODE"
:label="item.DNAME"
:value="item.DCODE"
>
<el-select v-model="form.qxdm" class="width100" clearable placeholder="行政区">
<el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="开始日期">
<el-date-picker
class="width100"
:clearable="false"
type="date"
placeholder="开始日期"
:picker-options="pickerOptionsStart"
v-model="form.startTime"
value-format="yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker class="width100" :clearable="false" type="date" placeholder="开始日期"
:picker-options="pickerOptionsStart" v-model="form.startTime"
value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="结束日期">
<el-date-picker
class="width100"
:clearable="false"
type="date"
placeholder="结束日期"
:picker-options="pickerOptionsEnd"
v-model="form.endTime"
value-format="yyyy-MM-dd HH:mm:ss"
@change="endTimeChange"
></el-date-picker>
<el-date-picker class="width100" :clearable="false" type="date" placeholder="结束日期"
:picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"
@change="endTimeChange"></el-date-picker>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
......@@ -98,13 +75,13 @@ export default {
// 搜索表单
form: {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
endTime: timeFormat(new Date(), true),
qxdm: "",
},
chartData:[]
chartData: []
};
},
mounted() {
mounted () {
// 查询业务量
this.getProcessCounts();
},
......@@ -112,10 +89,10 @@ export default {
...mapGetters(["dicData"]),
},
methods: {
endTimeChange(val){
this.form.endTime = timeFormat(new Date(val),true)
endTimeChange (val) {
this.form.endTime = timeFormat(new Date(val), true)
},
async getProcessCounts(){
async getProcessCounts () {
this.chartData = [];
let { result: res } = await efficient.getProcessCounts(
this.form.startTime,
......@@ -133,13 +110,13 @@ export default {
resetForm () {
this.form = {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
endTime: timeFormat(new Date(), true),
qxdm: ""
};
this.getProcessCounts();
},
//图表渲染
echartInit(chartArr) {
echartInit (chartArr) {
// 基于准备好的dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById("myChart"));
// 绘制图表
......@@ -158,7 +135,7 @@ export default {
xAxis: [
{
type: "category",
data: chartArr.map(item=>item.recTypeName),
data: chartArr.map(item => item.recTypeName),
axisLabel: {
interval: 0,
formatter: function (val) {
......@@ -221,7 +198,7 @@ export default {
},
},
barMaxWidth: '60',
data: chartArr.map(item=>item.counts),
data: chartArr.map(item => item.counts),
},
],
});
......@@ -230,7 +207,7 @@ export default {
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
.jktjDetail {
height: 100%;
......@@ -240,11 +217,13 @@ export default {
.rows {
margin-left: 100px;
}
.center {
line-height: 50vh;
text-align: center;
color:#b6b5b5
color: #b6b5b5
}
.echarts-box {
display: flex;
justify-content: center;
......@@ -263,5 +242,5 @@ export default {
}
</style>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -99,17 +99,17 @@
</template>
<script>
// 接收报文查询
// 引入表格头部数据
import data from "./data";
// 引入table混入方法
import tableMixin from "@/mixins/tableMixin.js";
import { getReceiveDataReportPage } from "@/api/dataReport.js";
// 引入详情弹框
import dataDetails from "@/components/EditDialog";
//引入日期处理方法
import { timeFormat } from "@/utils/operation";
export default {
// 接收报文查询
// 引入表格头部数据
import data from "./data";
// 引入table混入方法
import tableMixin from "@/mixins/tableMixin.js";
import { getReceiveDataReportPage } from "@/api/dataReport.js";
// 引入详情弹框
import dataDetails from "@/components/EditDialog";
//引入日期处理方法
import { timeFormat } from "@/utils/operation";
export default {
name: "jsbwcx",
mixins: [tableMixin],
// 注册组件
......@@ -189,14 +189,28 @@
render: (h, scope) => {
return (
<div>
{
scope.row.receiveState == 2 ?
<el-button
type="text"
style="color:#67C23A"
onClick={() => {
this.handleDetails(scope.row);
}}
>
修改
<i class="el-icon-d-arrow-right"></i>
</el-button> :
<el-button
type="primary"
type="text"
onClick={() => {
this.handleDetails(scope.row);
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
}
</div>
)
}
......@@ -225,7 +239,6 @@
getReceiveDataReportPage({ ...this.form, ...this.formData }).then(
(res) => {
if (res.code === 200) {
console.log("菜单列表", res);
let { total, records, current } = res.result;
this.tableData.total = total;
this.tableData.data = records ? records : [];
......@@ -276,12 +289,12 @@
}
},
}
}
}
</script>
<style scoped lang="scss">
// 引入表单整体样式
@import "~@/styles/public.scss";
// 引入当前css
@import "./index.scss";
// 引入表单整体样式
// // @import "~@/styles/public.scss";
// 引入当前css
@import "./index.scss";
</style>
......
......@@ -9,7 +9,7 @@
<el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password"
<el-input type="password" class="password" @keyup.enter.native="login('user')" v-model="user.password"
placeholder="请输入密码"></el-input>
</el-form-item>
<el-form-item class="login-btn">
......
<template>
<div class="bg">
<div class="login-inner-bg login">
<h2>{{ productName }}</h2>
<div class="user_style">
<h3>欢迎登录</h3>
<el-form :model="user" :rules="rules" ref="user" id="loginform" class="demo-ruleForm">
<el-form-item prop="account">
<el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password"
placeholder="请输入密码"></el-input>
</el-form-item>
<el-form-item class="login-btn">
<el-button type="primary" style="width: 100%" @click="login('user')">登录</el-button>
</el-form-item>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { loginIn } from "@/api/login.js";
import { api, getAction } from "@/api/manageApi";
export default {
name: "Login",
data () {
return {
user: {
account: "",
password: "",
checkStatus: false,
},
productName: "",
rules: {
account: [{ required: true, message: "请填写帐号", trigger: "blur" }],
password: [{ required: true, message: "请填写密码", trigger: "blur" }],
},
};
},
created () {
const params = {};
const queryOptions = {
conditionGroup: {
conditions: [
{
property: "code",
value: "BDCJGPT",
operator: "EQ",
},
],
queryRelation: "AND",
},
};
params.queryOptions = JSON.stringify(queryOptions);
//根据子系统code获取子系统详细信息
getAction(api.subsystem, params).then((res) => {
if (res.status === 1) {
this.productName = res.content[0].name;
this.$store.dispatch("products/setData", res.content[0]);
} else {
this.$message.error({ message: res.message, showClose: true });
}
});
},
mounted () {
// this.checkUserName();
},
methods: {
//记住用户名
checkUserName: function (flag) {
this.user.checkStatus = flag;
if (this.user.checkStatus) {
localStorage.setItem("accountId", this.user.account);
let name = localStorage.getItem("accountId");
if (name === "") {
return;
} else {
this.user.account = name;
}
} else {
this.user.account = localStorage.getItem("accountId");
}
},
login (user) {
var self = this;
this.$refs[user].validate((valid) => {
if (valid) {
loginIn(self.user.account, self.user.password)
.then((res) => {
if (res.status === 1) {
//存储token
sessionStorage.setItem("token", `Bearer ${res.content}`);
//登录成功后需判断有无重定向,没有重定向则跳转首页
this.$router.replace(this.$route.query.redirect || "/");
} else {
//错误处理
}
})
.catch((error) => {
// console.dir(error);
});
}
});
},
},
components: {},
};
</script>
<style scoped lang="scss">
.username,
.password {
position: relative;
&:before {
content: "";
display: block;
width: 16px;
height: 16px;
position: absolute;
left: 10px;
top: 7px;
background-size: 100% 100%;
}
/deep/ .el-input__inner {
text-indent: 24px;
border: 1px solid rgba(11, 161, 248, 0.4);
background-color: rgba(6, 135, 205, 0.3) !important;
}
}
.username::before {
background-image: url(../../image/username.png);
}
.password::before {
background-image: url(../../image/password.png);
}
.bg {
width: 100%;
height: 100%;
min-width: 1440px;
min-height: 560px;
background: url(../../image/loginBoxBg.png) no-repeat;
background-size: 100% 100%;
overflow: hidden;
position: relative;
}
.login-inner-bg {
background: url(../../image/loginBg.png) no-repeat;
width: 21.6%;
height: 43%;
min-width: 360px;
min-height: 380px;
top: 30%;
right: 20%;
position: absolute;
background-size: 100% 100%;
box-sizing: border-box;
padding: 56px;
h2 {
width: 100%;
font-size: 36px;
font-weight: 700;
color: #fff;
text-align: center;
white-space: nowrap;
position: absolute;
right: 0;
top: -70px;
background-image: linear-gradient(
180deg,
rgba(99, 163, 255, 1) 0,
rgba(99, 163, 255, 1) 0,
rgba(182, 220, 255, 1) 49.731445%,
rgba(114, 190, 255, 1) 100%,
rgba(114, 190, 255, 1) 100%
);
overflow-wrap: break-word;
color: rgba(255, 255, 255, 1);
font-size: 36px;
font-family: AlimamaShuHeiTi-Bold;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
}
.login {
.user_style {
h3 {
color: #fff;
font-size: 22px;
font-weight: normal;
text-align: center;
margin: 16px auto 34px;
font-weight: 400;
}
}
.btn {
width: 100%;
height: 6vh;
background-color: #00c2de;
border-radius: 5px;
font-size: 1.4vw;
color: #ffffff;
}
.btn:hover {
cursor: pointer;
background-color: #2d8cf0;
}
}
.login #loginform {
.el-form-item {
margin-bottom: 24px !important;
}
.login-btn {
margin-top: 40px !important;
}
.el-button {
font-size: 18px;
background: #0d8cc0 !important;
color: #ffffff !important;
cursor: pointer !important;
}
.el-input__inner {
width: 100% !important;
}
.el-checkbox__label {
color: #fff;
}
}
.inputUser .ivu-input {
padding: 6px 24px !important;
border: 1px solid #9f9f9f !important;
}
</style>
<template>
<div class="bg">
<div class="title">
<img src="../../image/bdclogo.png" alt="">
<h2>{{ productName }}</h2>
</div>
<div class="login-inner-bg login">
<div class="user_style">
<h3>用户登录</h3>
<el-form :model="user" :rules="rules" ref="user" id="loginform" class="demo-ruleForm">
<el-form-item prop="account">
<el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password"
placeholder="请输入密码" show-password></el-input>
</el-form-item>
<el-form-item prop="yz">
<el-input class="yz" @keyup.native="login('user')" v-model="user.yz"
placeholder="请输入验证码"></el-input>
</el-form-item>
<el-form-item class="login-btn">
<el-button type="primary" style="width: 100%" @click="login('user')">登录</el-button>
</el-form-item>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { loginIn } from "@/api/login.js";
import { api, getAction } from "@/api/manageApi";
export default {
name: "Login",
data () {
return {
user: {
account: "",
password: "",
yz: "",
checkStatus: false,
},
productName: "",
rules: {
account: [{ required: true, message: "请填写帐号", trigger: "blur" }],
password: [{ required: true, message: "请填写密码", trigger: "blur" }],
},
};
},
created () {
const params = {};
const queryOptions = {
conditionGroup: {
conditions: [
{
property: "code",
value: "BDCJGPT",
operator: "EQ",
},
],
queryRelation: "AND",
},
};
params.queryOptions = JSON.stringify(queryOptions);
//根据子系统code获取子系统详细信息
getAction(api.subsystem, params).then((res) => {
if (res.status === 1) {
this.productName = res.content[0].name;
this.$store.dispatch("products/setData", res.content[0]);
} else {
this.$message.error({ message: res.message, showClose: true });
}
});
},
mounted () {
// this.checkUserName();
},
methods: {
//记住用户名
checkUserName: function (flag) {
this.user.checkStatus = flag;
if (this.user.checkStatus) {
localStorage.setItem("accountId", this.user.account);
let name = localStorage.getItem("accountId");
if (name === "") {
return;
} else {
this.user.account = name;
}
} else {
this.user.account = localStorage.getItem("accountId");
}
},
login (user) {
var self = this;
this.$refs[user].validate((valid) => {
if (valid) {
loginIn(self.user.account, self.user.password)
.then((res) => {
if (res.status === 1) {
this.$store.dispatch('business/setInitRules', "layout1")
//存储token
sessionStorage.setItem("token", `Bearer ${res.content}`);
//登录成功后需判断有无重定向,没有重定向则跳转首页
this.$router.replace(this.$route.query.redirect || "/");
} else {
console.log(res);
this.$message.error({ message: res.message })
}
})
.catch((error) => {
// console.dir(error);
});
}
});
},
},
components: {},
};
</script>
<style scoped lang="scss">
.username,
.password,
.yz {
position: relative;
&:before {
content: "";
display: block;
width: 16px;
height: 16px;
position: absolute;
left: 10px;
top: 7px;
background-size: 100% 100%;
}
/deep/ .el-input__inner {
color: #000 !important;
text-indent: 24px;
// border: 1px solid rgba(11, 161, 248, 0.4);
// background-color: rgba(6, 135, 205, 0.3) !important;
}
}
.username::before {
background-image: url(../../image/userlogo.png);
}
.password::before {
background-image: url(../../image/passlogo.png);
}
.yz::before {
background-image: url(../../image/yzlogo.png);
}
.bg {
width: 100%;
height: 100%;
min-width: 1440px;
min-height: 560px;
background: url(../../image/loginBoxsb.png) no-repeat;
background-size: 100% 100%;
overflow: hidden;
position: relative;
}
.title {
width: 24%;
height: 6%;
top: 20%;
right: 38%;
position: absolute;
img {
width: 60px;
height: 60px;
top: 0%;
left: 2%;
position: absolute;
}
h2 {
top: 25%;
left: 22%;
position: absolute;
width: 383px;
height: 42px;
font-size: 28px;
font-weight: 600;
color: #ffffff;
text-shadow: 0px 4px 4px #002c95;
}
}
.login-inner-bg {
background: white;
width: 24.6%;
height: 47%;
min-width: 360px;
min-height: 380px;
top: 30%;
right: 38%;
position: absolute;
background-size: 100% 100%;
box-sizing: border-box;
padding: 56px;
}
.login {
.user_style {
h3 {
font-weight: normal;
text-align: center;
margin: -10px auto 28px;
font-weight: 400;
width: 125px;
height: 29px;
font-size: 20px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #333333;
}
}
.btn {
width: 100%;
height: 6vh;
background-color: #00c2de;
border-radius: 5px;
font-size: 1.4vw;
color: #000;
}
.btn:hover {
cursor: pointer;
background-color: #2d8cf0;
}
}
.login #loginform {
.el-form-item {
margin-bottom: 24px !important;
}
.login-btn {
margin-top: 30px !important;
}
.el-button {
font-size: 18px;
border-radius: 0;
background: #4162d8 !important;
color: #ffffff !important;
cursor: pointer !important;
}
.el-input__inner {
width: 100% !important;
}
.el-checkbox__label {
color: #fff;
}
}
.inputUser .ivu-input {
padding: 6px 24px !important;
border: 1px solid #9f9f9f !important;
}
</style>
......@@ -6,6 +6,10 @@
border-right: 1px solid #458ACF !important;
}
/deep/.el-table thead.is-group th.el-table__cell {
background-color: transparent !important;
}
/deep/.el-table--group::after,
.el-table--border::after {
width: 0 !important;
......
......@@ -164,7 +164,7 @@ export default {
</script>
<style scoped lang="scss">
// 引入表单整体样式
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
@import "../css/index.scss";
</style>
......
......@@ -155,7 +155,7 @@ export default {
</script>
<style scoped lang="scss">
// 引入表单整体样式
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
@import "../css/index.scss";
</style>
......
......@@ -148,7 +148,7 @@ export default {
</script>
<style scoped lang="scss">
// 引入表单整体样式
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
@import "../css/index.scss";
</style>
......
<!--
功能:结果
作者:calliope
-->
<template>
<div class='result'>
<p>响应xml</p>
<el-input type="textarea" disabled :rows="6" class="resulttext" placeholder="响应xml" v-model="REPMSGXML">
</el-input>
<p>错误信息</p>
<el-input type="textarea" disabled :rows="6" class="resulttext" placeholder="错误信息" v-model="ERRORINFO">
</el-input>
</div>
</template>
<script>
import { getReceiveDataReportResult } from "@/api/dataReport.js";
export default {
components: {},
props: {
formData: {
type: Object,
default: {}
}
},
data () {
return {
REPMSGXML: '',
ERRORINFO: '',
}
},
created () {
getReceiveDataReportResult(this.formData.bsmReport).then(res => {
let data = res.result
this.REPMSGXML = data.REPMSGXML
this.ERRORINFO = data.ERRORINFO
})
}
}
</script>
<style scoped lang='scss'>
@import '~@/styles/public.scss';
.result {
padding: 15px;
p {
color: #ffffff;
line-height: 26px;
font-size: 18px;
}
/deep/.el-textarea__inner {
min-height: 27vh !important;
background-color: #08346F !important;
color: #ffffff;
border: none !important;
}
}
</style>
......@@ -32,7 +32,7 @@ class data {
},
},
{
prop: 'ywh',
prop: 'YWH',
label: '业务号',
render: (h, scope) => {
return (
......@@ -41,43 +41,25 @@ class data {
}
},
{
prop: 'djlx',
prop: 'DJLX',
label: '登记类型',
render: (h, scope) => {
return (
<el-select class="width100" value={scope.row[scope.column.property]}
onChange={(val) => { scope.row[scope.column.property] = val }}>
{
store.getters.dicData['A21'].map(option => {
return (
<el-option label={option.DNAME} value={option.DCODE}></el-option>
)
})
}
</el-select>
<el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
)
}
},
{
prop: 'qllx',
prop: 'QLLX',
label: '权利类型',
render: (h, scope) => {
return (
<el-select class="width100" value={scope.row[scope.column.property]}
onChange={(val) => { scope.row[scope.column.property] = val }}>
{
store.getters.dicData['A8'].map(option => {
return (
<el-option label={option.DNAME} value={option.DCODE}></el-option>
)
})
}
</el-select>
<el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
)
}
},
{
prop: 'bdcdyh',
prop: 'BDCDYH',
label: '不动产单元号',
render: (h, scope) => {
return (
......@@ -86,7 +68,7 @@ class data {
}
},
{
prop: 'zszmh',
prop: 'ZSZMH',
label: '证书证明号',
render: (h, scope) => {
return (
......@@ -95,7 +77,7 @@ class data {
}
},
{
prop: 'sfsb',
prop: 'SFSB',
label: '是否上报',
render: (h, scope) => {
return (
......@@ -113,14 +95,14 @@ class data {
}
},
{
prop: 'bwid',
prop: 'BWID',
label: '报文ID',
render: (h, scope) => {
return (
<el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
)
}
},
}
]
}
}
......@@ -131,3 +113,4 @@ export {
}
......
......@@ -31,7 +31,7 @@ class data {
},
},
{
prop: 'ywh',
prop: 'YWH',
label: '业务号',
render: (h, scope) => {
return (
......@@ -40,7 +40,7 @@ class data {
}
},
{
prop: 'bdcdyh',
prop: 'BDCDYH',
label: '不动产单元号',
render: (h, scope) => {
return (
......@@ -49,7 +49,7 @@ class data {
}
},
{
prop: 'bwid',
prop: 'BWID',
label: '报文ID',
render: (h, scope) => {
return (
......@@ -67,3 +67,4 @@ export {
}
......
......@@ -192,13 +192,14 @@ class data {
return (
<div>
<el-button
size="mini"
type="primary"
type="text"
style="color:#67C23A"
onClick={() => {
vm.handleEdit(scope.row);
}}
>
编辑
修改
<i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
);
......
......@@ -154,6 +154,5 @@ export default {
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "./index.scss";
</style>
......
......@@ -156,15 +156,31 @@ export default {
render: (h, scope) => {
return (
<div>
{
scope.row.exchangeState == 2 ?
<el-button
size="mini"
type="primary"
type="text"
style="color:#67C23A"
onClick={() => {
this.handleDetail(scope.row);
}}
>
修改
<i class="el-icon-d-arrow-right"></i>
</el-button> :
<el-button
size="mini"
type="text"
onClick={() => {
this.handleDetail(scope.row);
}}
>
详情
<i class="el-icon-d-arrow-right"></i>
</el-button>
}
</div>
);
},
......@@ -219,7 +235,6 @@ export default {
</script>
<style scoped lang="scss">
// 引入页面公共样式
@import "~@/styles/public.scss";
@import "./index.scss";
</style>
......
......@@ -146,8 +146,7 @@ export default {
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
.editDialogBox-box {
margin: 14px 18px 30px 18px !important
}
......
<template>
<!-- 编辑 -->
<dialogBox submitForm="submitForm" class="tableClass" @closeDialog="closeDialog" @submitForm="handleSubmit"
width="60%" v-model="myValue" :isMain="true" title="字典信息">
<dialogBox submitForm="submitForm" class="tableClass" @closeDialog="closeDialog" @submitForm="handleSubmit" width="60%"
v-model="myValue" :isMain="true" title="字典信息">
<div class="editDialogBox-box ">
<el-form :model="ruleForm" ref="ruleForm" label-width="100px">
<el-row :gutter="20">
......@@ -17,9 +17,8 @@
</el-col>
</el-row>
</el-form>
<lb-table :column="column" class="loadingtext opacity-input" :heightNum="600" :key="key"
:expand-row-keys="keyList" row-key="dictid" :tree-props="{ children: 'children' }" :pagination="false"
:data="tableData">
<lb-table :column="column" class="loadingtext opacity-input" :heightNum="600" :key="key" :expand-row-keys="keyList"
row-key="dictid" :tree-props="{ children: 'children' }" :pagination="false" :data="tableData">
</lb-table>
</div>
</dialogBox>
......@@ -359,7 +358,7 @@ export default {
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
/deep/.el-radio {
margin-right: 5px !important;
......
......@@ -127,5 +127,5 @@ export default {
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -84,7 +84,7 @@
},
mounted () {
if (this.userInfo) {
this.getUserInfo(this.userInfo.id)
this.getUserInfo(this.userInfo)
}
this.sexList = [
{
......@@ -105,8 +105,8 @@
]
},
methods: {
getUserInfo (id) {
getAction(`${api.users}/${id}`).then((res) => {
getUserInfo (p) {
getAction(`${api.users}/${p.id}`).then((res) => {
if (res.status === 1) {
this.form = res.content
} else {
......@@ -136,12 +136,10 @@
.user-info {
margin: 0.1875rem 1.0417rem;
background: #ffffff;
max-height: 90%;
overflow-y: auto;
.form-wrapper {
padding: 24px 120px 0px;
padding: 0px 120px 0px;
.el-form-item {
margin-bottom: 24px;
/deep/.el-form-item__label {
color: #ffffff;
}
......@@ -152,9 +150,12 @@
border: 1px solid #6bc1fc;
}
}
.el-form-item--small.el-form-item {
margin-bottom: 16px;
}
}
.bottom-wrapper {
padding: 32px 120px 24px;
padding: 0px 120px 0px;
text-align: right;
}
}
......
<!--
* @Author: xiaomiao 1158771342@qq.com
* @Date: 2023-03-08 15:30:43
* @LastEditors: xiaomiao 1158771342@qq.com
* @LastEditTime: 2023-03-08 16:33:50
* @FilePath: \监管系统\js-web-jianguan\src\views\system\information copy\index.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<template>
<div class="information from-clues">
<div class="from-clues-header">
......@@ -13,7 +21,7 @@
</el-row>
</el-form>
</div>
<div class="from-clues-content">
<div class="from-clues-content boxin">
<div class="contentbox">
<base-set v-if="isshow" :userInfo="userData" />
<password-edit v-if="!isshow" :userInfo="userData" />
......@@ -61,9 +69,6 @@
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
.information {
.btnColRight {
margin-top: 20px;
}
/deep/.content {
.el-input__inner {
background: none;
......@@ -71,15 +76,10 @@
.user-info {
background: none;
}
.boxin {
height: 79%;
}
/deep/.el-tabs {
.el-tabs__content {
height: 100%;
width: 100%;
}
}
.contentbox {
height: 3.0854rem;
}
}
</style>
......
......@@ -69,13 +69,21 @@
userInfo: {
handler: function (val) {
if (val) {
this.userId = val.id
this.getid(val)
}
}
}
},
mounted () {
if (this.userInfo) {
this.getid(this.userInfo)
}
},
mounted () { },
methods: {
getid (val) {
this.userId = val.id
},
validatorConfirmPassword (rule, value, callback) {
const { newPassword } = this.form
if (value !== newPassword) {
......@@ -106,7 +114,6 @@
.user-info {
margin: 36px 200px;
background: #ffffff;
max-height: 90%;
overflow-y: auto;
.form-wrapper {
padding: 24px 120px 0px;
......
<template>
<div>
<Dialog
class="modifydialog"
:title="title"
:show.sync="visible"
:width="'767px'"
@close="close()">
<Dialog class="modifydialog" :title="title" :show.sync="visible" :width="'767px'" @close="close()">
<template slot="content">
<el-form ref="form" :model="form" :rules="rules">
<el-row :gutter="24">
......@@ -18,14 +13,8 @@
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="上级菜单:" label-width="124px">
<el-cascader
:key="menuKey"
v-model="form.parentId"
:options="parentMenuList"
:props="setProps"
placeholder="请选择上级菜单"
clearable
@change="handleChange" />
<el-cascader :key="menuKey" v-model="form.parentId" :options="parentMenuList" :props="setProps"
placeholder="请选择上级菜单" clearable @change="handleChange" />
</el-form-item>
</el-col>
......@@ -33,10 +22,7 @@
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="代码:" prop="code" label-width="124px">
<el-input
v-model="codeComputed"
placeholder="请输入菜单代码"
:disabled="type === 1" />
<el-input v-model="codeComputed" placeholder="请输入菜单代码" :disabled="type === 1" />
</el-form-item>
</el-col>
</el-row>
......@@ -50,28 +36,17 @@
<el-row :gutter="24">
<el-col :span="24">
<el-form-item label="浏览器跳转模式:" label-width="124px">
<el-select
v-model="form.jumpMode"
placeholder="请选择浏览器跳转模式">
<el-option
v-for="item in jumpModeList"
:key="item.value"
:label="item.name"
:value="item.value" />
<el-select v-model="form.jumpMode" placeholder="请选择浏览器跳转模式">
<el-option v-for="item in jumpModeList" :key="item.value" :label="item.name" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item
label="配置参数:"
label-width="124px"
class="form-item-mb0">
<el-form-item label="配置参数:" label-width="124px" class="form-item-mb0">
<!-- 配置参数 -->
<JsonEditor
:result-infos="form.metadata"
@getJsonString="getJsonString" />
<JsonEditor :result-infos="form.metadata" @getJsonString="getJsonString" />
</el-form-item>
</el-col>
</el-row>
......@@ -80,9 +55,7 @@
<template slot="footer">
<el-button class="cancel-button" @click="close()">取消</el-button>
<el-button
type="primary"
@click="submitForm()">保存</el-button>
<el-button type="primary" @click="submitForm()">保存</el-button>
</template>
</Dialog>
<!-- 图标列表 -->
......@@ -91,13 +64,13 @@
</template>
<script>
import Dialog from "@/components/Dialog/";
import { getParentMenuListAction } from '@/api/authorityManage'
import JsonEditor from '@/components/JsonEditors'
import IconList from '@/components/IconList'
import { validateCode } from '@/utils/validate';
import { api, httpAction } from '@/api/manageApi'
export default {
import Dialog from "@/components/Dialog/";
import { getParentMenuListAction } from '@/api/authorityManage'
import JsonEditor from '@/components/JsonEditors'
import IconList from '@/components/IconList'
import { validateCode } from '@/utils/validate';
import { api, httpAction } from '@/api/manageApi'
export default {
name: 'MenuModal',
components: {
IconList,
......@@ -256,8 +229,8 @@
this.visible = false
}
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
......@@ -13,29 +13,22 @@
</el-form>
</div>
<div class="from-clues-content">
<lb-table
:pagination="false"
:column="tableData.columns"
:data="tablelistData"
row-key="id"
default-expand-all
<lb-table :pagination="false" :column="tableData.columns" :data="tablelistData" row-key="id" default-expand-all
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
</lb-table>
</div>
<edit-dialog ref="dialogForm"
:product-id="productId"
:resource-category-id="resourceCategoryId"
<edit-dialog ref="dialogForm" :product-id="productId" :resource-category-id="resourceCategoryId"
@ok="reloadTableData" />
<!-- <authorizationdiglog ref="rolesForm" /> -->
</div>
</template>
<script>
// 定时任务
import data from "./data";
import { deleteAction, getAction, api } from "@/api/manageApi";
import EditDialog from "./edit-dialog.vue";
// import authorizationdiglog from "./authorizationdiglog.vue";
export default {
// 定时任务
import data from "./data";
import { deleteAction, getAction, api } from "@/api/manageApi";
import EditDialog from "./edit-dialog.vue";
// import authorizationdiglog from "./authorizationdiglog.vue";
export default {
name: "menus",
components: {
EditDialog,
......@@ -230,15 +223,17 @@
this.getTableList()
},
},
};
};
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
.btnColRight {
@import "~@/styles/mixin.scss";
// @import "~@/styles/public.scss";
.btnColRight {
margin-top: 20px;
}
/deep/.el-table__expand-icon {
}
/deep/.el-table__expand-icon {
color: #fff;
}
}
</style>
......
......@@ -8,12 +8,12 @@ class data extends filter {
{
prop: "name",
label: "角色名称",
width: 330
width: 130
},
{
prop: "type",
label: "类别",
width: 400
width: 200
},
{
prop: "description",
......
......@@ -13,14 +13,8 @@
</el-form>
</div>
<div class="from-clues-content">
<lb-table
:pagination="false"
@size-change="handleSizeChange"
@p-current-change="handleCurrentChange"
:column="tableData.columns"
:data="listdata"
:expand-row-keys="keyList"
row-key="dictid">
<lb-table :pagination="false" @size-change="handleSizeChange" @p-current-change="handleCurrentChange"
:column="tableData.columns" :data="listdata" :expand-row-keys="keyList" row-key="dictid">
</lb-table>
</div>
<EditDialog ref="addEditDialog" @ok="reloadTableData" />
......@@ -28,21 +22,21 @@
</div>
</template>
<script>
import {
import {
getUuid,
judgeSort,
realMove,
findParents,
removeTreeListItem,
} from "@/utils/operation";
import { getRolesById, getAuthorityListAction } from "@/api/authorityManage";
import { getUserRoles } from "@/api/personnelManage";
import data from "./data";
import { api, getAction, deleteAction } from "@/api/manageApi";
import tableMixin from "@/mixins/tableMixin.js";
import EditDialog from "./edit-dialog.vue";
import Roleslistdiglog from "./roleslistdiglog.vue";
export default {
} from "@/utils/operation";
import { getRolesById, getAuthorityListAction } from "@/api/authorityManage";
import { getUserRoles } from "@/api/personnelManage";
import data from "./data";
import { api, getAction, deleteAction } from "@/api/manageApi";
import tableMixin from "@/mixins/tableMixin.js";
import EditDialog from "./edit-dialog.vue";
import Roleslistdiglog from "./roleslistdiglog.vue";
export default {
name: "menus",
mixins: [tableMixin],
components: {
......@@ -111,7 +105,7 @@
.concat([
{
label: "排序",
width: 380,
width: 100,
render: (h, scope) => {
return (
<div>
......@@ -141,7 +135,7 @@
.concat([
{
label: "操作",
width: 380,
width: 280,
render: (h, scope) => {
return (
<div>
......@@ -212,12 +206,13 @@
</div>
);
},
}]),
},
]),
data: [],
}
},
};
},
created () {
this.getTableData();
this.getTableList()
......@@ -450,13 +445,14 @@
this.getTableData();
},
},
};
};
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
.btnColRight {
@import "~@/styles/mixin.scss";
// @import "~@/styles/public.scss";
.btnColRight {
margin-left: -30px;
margin-top: 20px;
}
}
</style>
......
......@@ -249,5 +249,5 @@ export default {
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
</style>
......
/*
* @Author: xiaomiao 1158771342@qq.com
* @Date: 2023-01-30 17:59:51
* @LastEditors: xiaomiao 1158771342@qq.com
* @LastEditTime: 2023-03-08 15:09:15
* @FilePath: \监管系统\js-web-jianguan\src\views\system\users\data\index.js
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/
import filter from '@/utils/filter.js'
class data extends filter {
constructor() {
......@@ -13,7 +21,7 @@ class data extends filter {
{
prop: "name",
label: "姓名",
width: 300
width: 100
},
{
prop: "loginName",
......
......@@ -109,7 +109,7 @@
},
{
label: "排序",
width: 280,
width: 100,
render: (h, scope) => {
return (
<div>
......
......@@ -199,6 +199,6 @@ export default {
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
// @import "~@/styles/public.scss";
@import "./index.scss";
</style>
......