| | |
| | | border: 1px solid rgba(0, 0, 0, 0.07); |
| | | background: rgba(0, 0, 0, 0); |
| | | } |
| | | .ant-modal-footer { |
| | | .ant-btn:not(.ant-btn-primary):active, .ant-btn:not(.ant-btn-primary).active, .ant-btn:not(.ant-btn-primary):hover, .ant-btn:not(.ant-btn-primary):focus { |
| | | color: var(--mk-sys-color7); |
| | | border-color: var(--mk-sys-color7); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 设置模态框样式,规定最大最小高度,重置滚动条 |
| | |
| | | border: 1px solid rgba(0, 0, 0, 0.07); |
| | | background: rgba(0, 0, 0, 0); |
| | | } |
| | | |
| | | .ant-modal-footer { |
| | | .ant-btn:not(.ant-btn-primary):active, .ant-btn:not(.ant-btn-primary).active, .ant-btn:not(.ant-btn-primary):hover, .ant-btn:not(.ant-btn-primary):focus { |
| | | color: var(--mk-sys-color7); |
| | | border-color: var(--mk-sys-color7); |
| | | } |
| | | .ant-btn-primary { |
| | | background-color: var(--mk-sys-color); |
| | | border-color: var(--mk-sys-color); |
| | | } |
| | | } |
| | | } |
| | | .moveable-modal { |
| | | overflow-x: hidden!important; |
| | |
| | | // color9 9阶色 |
| | | // color10 10阶色 |
| | | @mixin viewstyle($color1, $color2, $color3, $color4, $color5, $color6, $color7) { |
| | | #root > .mk-main-view { |
| | | >.mk-tabview-wrap { |
| | | >.content-header { |
| | | >.ant-tabs { |
| | | >.ant-tabs-bar { |
| | | .ant-tabs-tab:hover { |
| | | color: $color5; |
| | | } |
| | | .ant-tabs-tab.ant-tabs-tab-active { |
| | | color: $color6; |
| | | } |
| | | .ant-tabs-ink-bar { |
| | | background-color: $color6; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | >.mk-breadview-wrap { |
| | | >.ant-breadcrumb { |
| | | .anticon-redo:hover, .anticon-home:hover { |
| | | color: $color5; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .custom-data-card-box, .custom-prop-card-box { |
| | | .data-zoom.radio.active, .data-zoom.checkbox.active { |
| | | .mk-card:not(.active):not(.selected):hover { |
| | |
| | | } |
| | | } |
| | | } |
| | | .normal-group-wrap { |
| | | .print-button:hover, .print-button:focus, .print-button:active { |
| | | color: $color5; |
| | | } |
| | | } |
| | | // 搜索栏 |
| | | .mk-search-wrap { |
| | | >.ant-row { |
| | | .ant-col.search-button { |
| | | .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):active, .ant-btn:not(.ant-btn-primary):not(.ant-btn-link).active, .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):hover, .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):focus { |
| | | color: $color7; |
| | | border-color: $color7; |
| | | } |
| | | .ant-btn-primary { |
| | | background-color: $color6; |
| | | border-color: $color6; |
| | | } |
| | | .ant-btn-link { |
| | | color: $color6; |
| | | } |
| | | } |
| | | } |
| | | .advanced-list { |
| | | .advance-value { |
| | | color: $color6; |
| | | } |
| | | } |
| | | } |
| | | // 表格 |
| | | .normal-data-table, .normal-custom-table, .edit-custom-table { |
| | | table { |
| | |
| | | > tr.ant-table-row-selected.mk-row-active:not(.background):hover .ant-table-column-sort { |
| | | background-color: $color3; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // 弹窗按钮 |
| | | .popview-modal { |
| | | .ant-modal-footer { |
| | | .ant-btn:not(.ant-btn-primary):active, .ant-btn:not(.ant-btn-primary).active, .ant-btn:not(.ant-btn-primary):hover, .ant-btn:not(.ant-btn-primary):focus { |
| | | color: $color7; |
| | | border-color: $color7; |
| | | } |
| | | } |
| | | } |
| | | // 表单弹窗 |
| | | .action-modal { |
| | | .ant-modal-footer { |
| | | .ant-btn:not(.ant-btn-primary):active, .ant-btn:not(.ant-btn-primary).active, .ant-btn:not(.ant-btn-primary):hover, .ant-btn:not(.ant-btn-primary):focus { |
| | | color: $color7; |
| | | border-color: $color7; |
| | | } |
| | | .ant-btn-primary { |
| | | background-color: $color6; |
| | | border-color: $color6; |
| | | } |
| | | } |
| | | } |
| | |
| | | color: $color6; |
| | | } |
| | | |
| | | .custom-tab-form-box .mk-normal-form-title.mkbtn { |
| | | .form-title { |
| | | color: $color6; |
| | | border-color: $color6; |
| | | } |
| | | .form-title.active { |
| | | background: $color6; |
| | | color: #ffffff; |
| | | } |
| | | } |
| | | .ant-input-search .ant-input-group-addon .ant-input-search-button { |
| | | background-color: $color6; |
| | | border-color: $color6; |
| | |
| | | const { tabview, hasNavBar } = this.state |
| | | |
| | | return ( |
| | | <section id="mk-breadview-wrap" className="mk-breadview-wrap"> |
| | | <section id="mk-tabgroup-wrap" className="mk-breadview-wrap"> |
| | | {hasNavBar && tabview ? <Breadcrumb separator=""> |
| | | <Breadcrumb.Item> |
| | | <HomeOutlined onClick={this.gotoHome} /> |
| | |
| | | cursor: pointer; |
| | | margin-right: 5px; |
| | | } |
| | | .anticon-redo:hover, .anticon-home:hover { |
| | | color: var(--mk-sys-color5); |
| | | } |
| | | .ant-breadcrumb-link + .ant-breadcrumb-separator { |
| | | display: none; |
| | | } |
| | | } |
| | | >.commontable, >.calendar-page { |
| | | >.commontable { |
| | | padding-left: 15px; |
| | | padding-right: 15px; |
| | | } |
| | | >.commontable, >.calendar-page { |
| | | > .mk-search-wrap { |
| | | padding-left: 0; |
| | | padding-right: 0; |
| | |
| | | |
| | | window.GLOB.mkThdMenus = [...thdMenuList, {MenuID: 'home_page_id', EasyCode: '', MenuName: 'home', type: 'CustomPage'}] |
| | | |
| | | if (_menu) { // 延时打开,防止标签组未完成加载 |
| | | setTimeout(() => { |
| | | MKEmitter.emit('modifyTabs', _menu) |
| | | }, 200) |
| | | if (_menu) { |
| | | this.openTab(_menu, 0) |
| | | } |
| | | MKEmitter.emit('mkMenuLoaded') |
| | | }) |
| | | |
| | | // 获取角色权限, edition_type 接口版本控制 ''、'Y'、'A' |
| | |
| | | }) |
| | | } |
| | | |
| | | MKEmitter.emit('mkActionLoaded') |
| | | window.GLOB.mkActions = _permAction |
| | | }) |
| | | }, 50) |
| | | } |
| | | |
| | | openTab = (menu, times) => { |
| | | if (times > 50) return |
| | | times++ |
| | | |
| | | let tabgroup = document.getElementById('mk-tabgroup-wrap') |
| | | |
| | | if (window.GLOB.mkActions.loaded && tabgroup) { |
| | | MKEmitter.emit('modifyTabs', menu) |
| | | } else { |
| | | setTimeout(() => { |
| | | this.openTab(times) |
| | | }, 200) |
| | | } |
| | | } |
| | | |
| | | getMenulist = (result) => { |
| | | let thdMenuList = [] |
| | | let menulist = [] |
| | |
| | | const { tabviews, activeId } = this.state |
| | | |
| | | return ( |
| | | <section className={'mk-tabview-wrap' + (this.props.collapse ? ' collapsed' : '')}> |
| | | <section id="mk-tabgroup-wrap" className={'mk-tabview-wrap' + (this.props.collapse ? ' collapsed' : '')}> |
| | | <div className="content-header"> |
| | | {tabviews && tabviews.length > 0 && |
| | | <Tabs activeKey={activeId}> |
| | |
| | | } |
| | | } |
| | | .ant-tabs-tab:hover { |
| | | color: var(--mk-sys-color5); |
| | | span.tab-control .anticon-close { |
| | | display: inline-block; |
| | | } |
| | |
| | | display: inline-block; |
| | | } |
| | | } |
| | | .ant-tabs-tab.ant-tabs-tab-active { |
| | | color: var(--mk-sys-color); |
| | | } |
| | | .ant-tabs-ink-bar { |
| | | background-color: var(--mk-sys-color); |
| | | } |
| | | } |
| | | >.ant-tabs-content { |
| | | height: 100%; |
| | |
| | | import moment from 'moment' |
| | | |
| | | // import Api from '@/api' |
| | | import asyncComponent from './asyncButtonComponent' |
| | | import asyncElementComponent from '@/utils/asyncComponent' |
| | | import asyncComponent from '@/utils/asyncComponent' |
| | | import { getMark } from '@/utils/utils.js' |
| | | import MkIcon from '@/components/mk-icon' |
| | | import Encrypts from '@/components/encrypts' |
| | |
| | | const FuncMegvii = asyncComponent(() => import('@/tabviews/zshare/actionList/funcMegvii')) |
| | | const FuncZip = asyncComponent(() => import('@/tabviews/zshare/actionList/funczip')) |
| | | const EditLine = asyncComponent(() => import('@/tabviews/zshare/actionList/editLine')) |
| | | const BarCode = asyncElementComponent(() => import('@/components/barcode')) |
| | | const QrCode = asyncElementComponent(() => import('@/components/qrcode')) |
| | | const MkProgress = asyncElementComponent(() => import('@/components/mkProgress')) |
| | | const BarCode = asyncComponent(() => import('@/components/barcode')) |
| | | const QrCode = asyncComponent(() => import('@/components/qrcode')) |
| | | const MkProgress = asyncComponent(() => import('@/components/mkProgress')) |
| | | const Video = asyncComponent(() => import('@/components/video')) |
| | | const MkPicture = asyncComponent(() => import('@/components/mkPicture')) |
| | | const PicRadio = { |
| | |
| | | .mk-normal-form-title.mkbtn { |
| | | .form-title { |
| | | background: #ffffff; |
| | | color: #1890ff; |
| | | border: 1px solid #1890ff; |
| | | color: var(--mk-sys-color); |
| | | border: 1px solid var(--mk-sys-color); |
| | | transition: all 0.3s; |
| | | } |
| | | .form-title.active { |
| | | background: #1890ff; |
| | | background: var(--mk-sys-color); |
| | | color: #ffffff; |
| | | } |
| | | .form-title:first-child { |
| | |
| | | border: 0; |
| | | background: transparent; |
| | | } |
| | | .print-button:hover, .print-button:focus, .print-button:active { |
| | | color: var(--mk-sys-color5); |
| | | } |
| | | |
| | | .group-header { |
| | | position: relative; |
| | |
| | | |
| | | import Api from '@/api' |
| | | import asyncComponent from '@/utils/asyncComponent' |
| | | import MKEmitter from '@/utils/events.js' |
| | | import './index.scss' |
| | | |
| | | const DefaultHome = asyncComponent(() => import('./defaulthome')) |
| | |
| | | state = { |
| | | loading: true, |
| | | background: sessionStorage.getItem('home_background'), |
| | | waitMenu: true, |
| | | waitAction: true, |
| | | waiting: true, |
| | | view: '' |
| | | } |
| | | |
| | | componentDidMount () { |
| | | this.loadHomeConfig() |
| | | if (window.GLOB.mkThdMenus.length > 0) { |
| | | this.setState({ |
| | | waitMenu: false |
| | | }) |
| | | } else { |
| | | MKEmitter.addListener('mkMenuLoaded', this.mkMenuLoaded) |
| | | } |
| | | if (window.GLOB.mkActions.loaded) { |
| | | this.setState({ |
| | | waitAction: false |
| | | }) |
| | | } else { |
| | | MKEmitter.addListener('mkActionLoaded', this.mkActionLoaded) |
| | | } |
| | | |
| | | this.check(0) |
| | | } |
| | | |
| | | /** |
| | |
| | | this.setState = () => { |
| | | return |
| | | } |
| | | MKEmitter.removeListener('mkMenuLoaded', this.mkMenuLoaded) |
| | | MKEmitter.removeListener('mkActionLoaded', this.mkActionLoaded) |
| | | } |
| | | |
| | | mkMenuLoaded = () => { |
| | | this.setState({ |
| | | waitMenu: false |
| | | }) |
| | | } |
| | | check = (times) => { |
| | | times++ |
| | | |
| | | mkActionLoaded = () => { |
| | | if ((window.GLOB.mkThdMenus.length > 0 && window.GLOB.mkActions.loaded) || times > 50) { |
| | | this.setState({ |
| | | waitAction: false |
| | | waiting: false |
| | | }) |
| | | } else { |
| | | setTimeout(() => { |
| | | this.check(times) |
| | | }, 200) |
| | | } |
| | | } |
| | | |
| | | loadHomeConfig = () => { |
| | |
| | | if (!config || !config.enabled) { |
| | | this.setState({ |
| | | loading: false, |
| | | waitMenu: false, |
| | | waitAction: false, |
| | | waiting: false, |
| | | view: 'default' |
| | | }) |
| | | } else { |
| | |
| | | } else { |
| | | this.setState({ |
| | | loading: false, |
| | | waitMenu: false, |
| | | waitAction: false, |
| | | waiting: false, |
| | | view: 'default' |
| | | }) |
| | | } |
| | | } else { |
| | | this.setState({ |
| | | loading: false, |
| | | waitMenu: false, |
| | | waitAction: false, |
| | | waiting: false, |
| | | view: 'default' |
| | | }) |
| | | notification.warning({ |
| | |
| | | } |
| | | |
| | | render() { |
| | | const { loading, waitAction, waitMenu, view, background } = this.state |
| | | const { loading, waiting, view, background } = this.state |
| | | |
| | | if (loading || waitAction || waitMenu) { |
| | | if (loading || waiting) { |
| | | return (<div className="home-loading-view" style={{background: background}}><Spin className="home-box-spin" size="large" /></div>) |
| | | } else if (view === 'custom') { |
| | | return (<CustomPage MenuID={this.props.MenuID} MenuName="首页"/>) |
| | |
| | | transform: rotate(180deg); |
| | | } |
| | | } |
| | | .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):active, .ant-btn:not(.ant-btn-primary):not(.ant-btn-link).active, .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):hover, .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):focus { |
| | | color: var(--mk-sys-color7); |
| | | border-color: var(--mk-sys-color7); |
| | | } |
| | | .ant-btn-primary { |
| | | background-color: var(--mk-sys-color); |
| | | border-color: var(--mk-sys-color); |
| | | } |
| | | .ant-btn-link { |
| | | color: var(--mk-sys-color); |
| | | } |
| | | } |
| | | .advanced-list { |
| | | font-size: 13px; |
| | |
| | | padding: 2px; |
| | | } |
| | | } |
| | | .advance-value { |
| | | color: var(--mk-sys-color); |
| | | } |
| | | } |
| | | .ant-calendar-picker-clear, .ant-calendar-picker-icon { |
| | | right: 8px; |
| | |
| | | localStorage.removeItem('getSysPermission') |
| | | localStorage.removeItem('sysPermissions') |
| | | |
| | | if (window.GLOB.mkActions) { |
| | | if (window.GLOB.mkActions && window.GLOB.mkActions.loaded) { |
| | | this.setState({loading: false}) |
| | | } else { |
| | | this.getPermRole() |