| | |
| | | |
| | | // 字段透视 |
| | | triggerLink = (item, record) => { |
| | | const { tabviews, MenuID } = this.props |
| | | let tabmenu = item.linkThdMenu |
| | | let iframes = ['Main/Index', 'bda/rdt', 'Home/rdt'] |
| | | const { tabviews, MenuID, setting } = this.props |
| | | |
| | | if (tabmenu.LinkUrl === 'CommonTable') { |
| | | tabmenu.type = 'CommonTable' |
| | | } else if (tabmenu.LinkUrl === 'DataManage') { |
| | | tabmenu.type = 'DataManage' |
| | | } else if (tabmenu.LinkUrl && iframes.includes(tabmenu.LinkUrl.split('?')[0])) { |
| | | tabmenu.type = 'iframe' |
| | | } |
| | | |
| | | if (tabmenu.type !== 'iframe') { |
| | | try { |
| | | tabmenu.PageParam = JSON.parse(tabmenu.PageParam) |
| | | } catch (e) { |
| | | tabmenu.PageParam = {} |
| | | if (item.linkThdMenu) { |
| | | let tabmenu = item.linkThdMenu |
| | | let iframes = ['Main/Index', 'bda/rdt', 'Home/rdt'] |
| | | |
| | | if (tabmenu.LinkUrl === 'CommonTable') { |
| | | tabmenu.type = 'CommonTable' |
| | | } else if (tabmenu.LinkUrl === 'DataManage') { |
| | | tabmenu.type = 'DataManage' |
| | | } else if (tabmenu.LinkUrl && iframes.includes(tabmenu.LinkUrl.split('?')[0])) { |
| | | tabmenu.type = 'iframe' |
| | | } |
| | | tabmenu.type = tabmenu.PageParam.Template || tabmenu.type |
| | | } |
| | | |
| | | if (tabmenu.type !== 'iframe') { |
| | | try { |
| | | tabmenu.PageParam = JSON.parse(tabmenu.PageParam) |
| | | } catch (e) { |
| | | tabmenu.PageParam = {} |
| | | } |
| | | tabmenu.type = tabmenu.PageParam.Template || tabmenu.type |
| | | } |
| | | |
| | | tabmenu.param = { |
| | | searchkey: item.field, |
| | | searchval: record[item.field] || '', |
| | | BID: record[setting.primaryKey] |
| | | } |
| | | |
| | | tabmenu.selected = true |
| | | |
| | | let index = 0 |
| | | let isexit = false |
| | | let tabs = tabviews.map((tab, i) => { |
| | | tab.selected = false |
| | | |
| | | if (tab.MenuID === MenuID) { |
| | | index = i |
| | | } else if (tab.MenuID === tabmenu.MenuID) { |
| | | tab.param = tabmenu.param |
| | | tab.selected = true |
| | | isexit = true |
| | | } |
| | | |
| | | return tab |
| | | }) |
| | | |
| | | if (!isexit) { |
| | | tabs.splice(index + 1, 0, tabmenu) |
| | | } |
| | | |
| | | this.props.modifyTabview(tabs) |
| | | } else { |
| | | let src = item.linkurl |
| | | |
| | | tabmenu.param = { |
| | | searchkey: item.field, |
| | | searchval: record[item.field] || '' |
| | | } |
| | | |
| | | tabmenu.selected = true |
| | | |
| | | let index = 0 |
| | | let isexit = false |
| | | let tabs = tabviews.map((tab, i) => { |
| | | tab.selected = false |
| | | |
| | | if (tab.MenuID === MenuID) { |
| | | index = i |
| | | } else if (tab.MenuID === tabmenu.MenuID) { |
| | | tab.param = tabmenu.param |
| | | tab.selected = true |
| | | isexit = true |
| | | if (item.linkurl.indexOf('paramsmain/') > -1) { |
| | | try { |
| | | let _url = item.linkurl.split('paramsmain/')[0] + 'paramsmain/' |
| | | let _param = JSON.parse(window.decodeURIComponent(window.atob(item.linkurl.split('paramsmain/')[1]))) |
| | | let dataparam = { |
| | | searchkey: item.field, |
| | | searchval: record[item.field] || '', |
| | | BID: record[setting.primaryKey] |
| | | } |
| | | _param.UserID = sessionStorage.getItem('UserID') |
| | | _param.LoginUID = sessionStorage.getItem('LoginUID') |
| | | _param.User_Name = sessionStorage.getItem('User_Name') |
| | | _param.param = dataparam |
| | | src = _url + window.btoa(window.encodeURIComponent(JSON.stringify(_param))) |
| | | } catch { |
| | | console.warn('菜单参数解析错误!') |
| | | } |
| | | } |
| | | |
| | | return tab |
| | | }) |
| | | |
| | | if (!isexit) { |
| | | tabs.splice(index + 1, 0, tabmenu) |
| | | window.open(src) |
| | | } |
| | | |
| | | this.props.modifyTabview(tabs) |
| | | } |
| | | |
| | | getMark = (record, marks) => { |
| | |
| | | content = md5(content) |
| | | } |
| | | |
| | | if (item.linkThdMenu) { |
| | | if (item.linkThdMenu || item.linkurl) { |
| | | if (item.rowspan === 'true') { |
| | | return { |
| | | children: ( |
| | |
| | | content = md5(content) |
| | | } |
| | | |
| | | if (item.linkThdMenu) { |
| | | if (item.linkThdMenu || item.linkurl) { |
| | | return ( |
| | | <div className={className}> |
| | | <div className="baseboard link-menu" onDoubleClick={() => this.triggerLink(item, record)}></div> |