From 9c6795fd3c44e46cf3955fbfd8f8eeca23acb7a9 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期六, 08 十月 2022 00:31:51 +0800 Subject: [PATCH] 2022-10-08 --- src/tabviews/calendar/index.jsx | 98 ++++++++++++++++++++++-------------------------- 1 files changed, 45 insertions(+), 53 deletions(-) diff --git a/src/tabviews/calendar/index.jsx b/src/tabviews/calendar/index.jsx index c1f446a..cd7b465 100644 --- a/src/tabviews/calendar/index.jsx +++ b/src/tabviews/calendar/index.jsx @@ -1,6 +1,5 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' -import {connect} from 'react-redux' import { is, fromJS } from 'immutable' import { notification, Spin, Modal, Button } from 'antd' import moment from 'moment' @@ -22,7 +21,7 @@ const SubTabTable = asyncSpinComponent(() => import('@/tabviews/subtabtable')) const PagemsgComponent = asyncComponent(() => import('@/tabviews/zshare/pageMessage')) -class NormalTable extends Component { +class MkCalendar extends Component { static propTpyes = { param: PropTypes.any, // 鍏朵粬椤甸潰浼犻�掔殑鍙傛暟 MenuID: PropTypes.string, // 鑿滃崟Id @@ -40,7 +39,7 @@ config: {}, // 椤甸潰閰嶇疆淇℃伅锛屽寘鎷寜閽�佹悳绱€�佹樉绀哄垪銆佹爣绛剧瓑 userConfig: null, // 鐢ㄦ埛鑷畾涔夎缃� searchlist: null, // 鎼滅储鏉′欢 - arr_field: '', // 浣跨敤 sPC_Get_TableData 鏃剁殑鏌ヨ瀛楁闆� + arr_field: '', // 鏌ヨ瀛楁闆� setting: null, // 椤甸潰鍏ㄥ眬璁剧疆锛氭暟鎹簮銆佹寜閽強鏄剧ず鍒楀浐瀹氥�佷富閿瓑 data: null, // 鍒楄〃鏁版嵁闆� loading: false, // 鍒楄〃鏁版嵁鍔犺浇涓� @@ -48,13 +47,14 @@ visible: false, // 鏍囩椤垫帶鍒� triggerTime: '', // 鐐瑰嚮鏃堕棿 calendarYear: moment().format('YYYY'), // 鏃ュ巻骞翠唤 + hasReqFields: false } /** * @description 鑾峰彇椤甸潰閰嶇疆淇℃伅 */ async loadconfig () { - const { permAction, param } = this.props + const { param } = this.props let _param = { func: 'sPC_Get_LongParam', @@ -75,7 +75,7 @@ } // HS涓嶄娇鐢ㄨ嚜瀹氫箟璁剧疆 - if (result.LongParamUser && this.props.menuType !== 'HS') { + if (result.LongParamUser && !window.GLOB.mkHS) { try { // 閰嶇疆淇℃伅瑙f瀽 userConfig = JSON.parse(window.decodeURIComponent(window.atob(result.LongParamUser))) _curUserConfig = userConfig[this.props.MenuID] @@ -105,8 +105,8 @@ } // 鏉冮檺杩囨护 - if (this.props.menuType !== 'HS') { - if (config.tab && !permAction[config.tab.linkTab]) { + if (!window.GLOB.mkHS) { + if (config.tab && !window.GLOB.mkActions[config.tab.linkTab]) { config.tab = null } } @@ -119,22 +119,17 @@ config.easyCode = _curUserConfig.easyCode || config.easyCode || '' } - // 瀛楁鏉冮檺榛戝悕鍗曘�佸繀濉�佸瓧娈甸�忚 - let valid = true - let roleId = sessionStorage.getItem('role_id') || '' + config.search = Utils.initSearchVal(config.search) + + // 瀛楁閫忚 + let hasReqFields = false config.search = config.search.map(item => { - item.oriInitval = item.initval - if (['text', 'select', 'link'].includes(item.type) && param && param.$searchkey === item.field) { + if (param && ['text', 'select', 'link'].includes(item.type) && param.$searchkey === item.field) { item.initval = param.$searchval } - if (item.required === 'true' && !item.initval) { - valid = false - } - - if (!item.blacklist || item.blacklist.length === 0) return item - if (item.blacklist.filter(v => roleId.indexOf(v) > -1).length > 0) { - item.Hide = 'true' + if (item.required) { + hasReqFields = true } return item @@ -172,7 +167,6 @@ let userName = sessionStorage.getItem('User_Name') || '' let fullName = sessionStorage.getItem('Full_Name') || '' - let city = sessionStorage.getItem('city') || '' if (sessionStorage.getItem('isEditState') === 'true') { userName = sessionStorage.getItem('CloudUserName') || '' @@ -181,8 +175,7 @@ let regs = [ { reg: /@userName@/ig, value: `'${userName}'` }, - { reg: /@fullName@/ig, value: `'${fullName}'` }, - { reg: /@login_city@/ig, value: `'${city}'` } + { reg: /@fullName@/ig, value: `'${fullName}'` } ] regs.forEach(cell => { @@ -204,6 +197,7 @@ } this.setState({ + hasReqFields, BID: param && param.$BID ? param.$BID : '', loadingview: false, config: config, @@ -211,9 +205,9 @@ setting: config.setting, searchlist: config.search, arr_field: config.columns.map(item => item.field).join(','), - search: Utils.initMainSearch(config.search) // 鎼滅储鏉′欢鍒濆鍖栵紙鍚湁鏃堕棿鏍煎紡锛岄渶瑕佽浆鍖栵級 + search: Utils.initMainSearch(config.search) }, () => { - if (config.setting.onload !== 'false' && valid) { // 鍒濆鍖栧彲鍔犺浇 + if (config.setting.onload !== 'false') { this.loadmaindata() } }) @@ -234,12 +228,15 @@ * @description 涓昏〃鏁版嵁鍔犺浇 */ async loadmaindata () { - const { setting, search, BID } = this.state + const { setting, search, BID, hasReqFields } = this.state let param = '' - let requireFields = search.filter(item => item.required && (!item.value || item.value.length === 0)) - if (requireFields.length > 0) { - return + if (hasReqFields) { + let requireFields = search.filter(item => item.required && item.value === '') + + if (requireFields.length > 0) { + return + } } this.setState({ @@ -300,9 +297,11 @@ if (setting.interType === 'inner') { param.func = setting.innerFunc } else { - if (this.props.menuType === 'HS') { + if (window.GLOB.mkHS) { if (setting.sysInterface === 'true' && options.cloudServiceApi) { param.rduri = options.cloudServiceApi + param.userid = sessionStorage.getItem('CloudUserID') || '' + param.LoginUID = sessionStorage.getItem('CloudLoginUID') || '' } else if (setting.sysInterface !== 'true') { param.rduri = setting.interface } @@ -323,7 +322,7 @@ } /** - * @description 鑾峰彇绯荤粺瀛樺偍杩囩▼ sPC_Get_TableData 鐨勫弬鏁� + * @description 鑾峰彇绯荤粺瀛樺偍杩囩▼鐨勫弬鏁� */ getDefaultParam = () => { const { arr_field, search, setting, config, calendarYear } = this.state @@ -344,7 +343,15 @@ let regoptions = [] let userName = sessionStorage.getItem('User_Name') || '' let fullName = sessionStorage.getItem('Full_Name') || '' + let RoleID = sessionStorage.getItem('role_id') || '' + let departmentcode = sessionStorage.getItem('departmentcode') || '' + let organization = sessionStorage.getItem('organization') || '' + let mk_user_type = sessionStorage.getItem('mk_user_type') || '' + let nation = sessionStorage.getItem('nation') || '' + let province = sessionStorage.getItem('province') || '' let city = sessionStorage.getItem('city') || '' + let district = sessionStorage.getItem('district') || '' + let address = sessionStorage.getItem('address') || '' if (sessionStorage.getItem('isEditState') === 'true') { userName = sessionStorage.getItem('CloudUserName') || '' @@ -360,9 +367,6 @@ } }) regoptions.push({ - reg: new RegExp('@login_city@', 'ig'), - value: city - }, { reg: new RegExp('@userName@', 'ig'), value: userName }, { @@ -399,9 +403,9 @@ regoptions.forEach(item => { param.custom_script = param.custom_script.replace(item.reg, item.value) }) - - param.custom_script = `declare @ErrorCode nvarchar(50),@retmsg nvarchar(4000),@UserName nvarchar(50),@FullName nvarchar(50),@login_city nvarchar(50) - Select @ErrorCode='',@retmsg ='',@UserName='${userName}', @FullName='${fullName}', @login_city='${city}' + + param.custom_script = `declare @ErrorCode nvarchar(50),@retmsg nvarchar(4000),@UserName nvarchar(50),@FullName nvarchar(50),@RoleID nvarchar(512),@mk_departmentcode nvarchar(512),@mk_organization nvarchar(512),@mk_user_type nvarchar(20),@mk_nation nvarchar(50),@mk_province nvarchar(50),@mk_city nvarchar(50),@mk_district nvarchar(50),@mk_address nvarchar(100) + Select @ErrorCode='',@retmsg ='',@UserName='${userName}', @FullName='${fullName}', @RoleID='${RoleID}', @mk_departmentcode='${departmentcode}', @mk_organization='${organization}', @mk_user_type='${mk_user_type}', @mk_nation='${nation}', @mk_province='${province}', @mk_city='${city}', @mk_district='${district}', @mk_address='${address}' ${param.custom_script} ` @@ -421,7 +425,7 @@ } // 娴嬭瘯绯荤粺鎵撳嵃鏌ヨ璇彞 - if ((options.sysType === 'local' && !window.GLOB.systemType) || window.debugger === true) { + if (window.GLOB.debugger === true || (window.debugger === true && options.sysType !== 'cloud')) { param.custom_script && console.info(`${LText ? '' : '/*涓嶆墽琛岄粯璁ql*/\n'}${param.custom_script}`) LText && console.info(LText) } @@ -432,7 +436,7 @@ param.secretkey = Utils.encrypt(param.LText, param.timestamp) param.DateCount = '' - if (this.props.menuType === 'HS') { // 浜戠鏁版嵁楠岃瘉 + if (window.GLOB.mkHS) { // 浜戠鏁版嵁楠岃瘉 param.open_key = Utils.encryptOpenKey(param.secretkey, param.timestamp) } @@ -535,17 +539,16 @@ } render() { - const { menuType } = this.props const { BID, setting, searchlist, loadingview, viewlost, config, loading, data, triggerTime } = this.state return ( <div className="calendar-page" id={this.state.ContainerId}> {loadingview && <Spin size="large" />} {searchlist && searchlist.length > 0 ? - <MainSearch BID={BID} searchlist={searchlist} setting={setting} menuType={menuType} refreshdata={this.refreshbysearch}/> : null + <MainSearch BID={BID} searchlist={searchlist} setting={setting} refreshdata={this.refreshbysearch}/> : null } {config && config.calendar ? <CalendarComponent calendar={config.calendar} loading={loading} data={data} triggerDate={this.triggerDate} changeDate={this.changeDate}/> : null} - {menuType !== 'HS' ? <PagemsgComponent menu={{MenuName: this.props.MenuName, MenuNo: this.props.MenuNo}} config={config} dict={this.state.dict} /> : null} + {!window.GLOB.mkHS && window.GLOB.systemType !== 'production' ? <PagemsgComponent menu={{MenuName: this.props.MenuName, MenuNo: this.props.MenuNo}} config={config} dict={this.state.dict} /> : null} <Modal title={config.tab ? config.tab.label : ''} width={'80vw'} @@ -570,15 +573,4 @@ } } -const mapStateToProps = (state) => { - return { - menuType: state.editLevel, - permAction: state.permAction - } -} - -const mapDispatchToProps = () => { - return {} -} - -export default connect(mapStateToProps, mapDispatchToProps)(NormalTable) \ No newline at end of file +export default MkCalendar \ No newline at end of file -- Gitblit v1.8.0