diff --git a/pc4mobx/hrm/components/SensitiveWordProcess.js b/pc4mobx/hrm/components/SensitiveWordProcess.js index 1e75731..cec07bb 100644 --- a/pc4mobx/hrm/components/SensitiveWordProcess.js +++ b/pc4mobx/hrm/components/SensitiveWordProcess.js @@ -36,8 +36,8 @@ export default class SensitiveWordProcess extends React.Component { const { senstiveWordProcessStore: { topStore, formStore: { form }, searchGroupProps, authorityStore } } = this.props; return ( - - + +
{form.render(searchGroupProps)}
diff --git a/pc4mobx/hrm/components/add/full.js b/pc4mobx/hrm/components/add/full.js index 0cfca33..f6bd5bc 100644 --- a/pc4mobx/hrm/components/add/full.js +++ b/pc4mobx/hrm/components/add/full.js @@ -173,7 +173,7 @@ class Full extends React.Component { labelCol={{ span: `${field.labelcol}` }} wrapperCol={{ span: `${field.fieldcol}` }}> {dom} - {field.domkey[0] == 'workcode' && } + {field.domkey[0] == 'workcode' && } , colSpan: 1, hide: hide diff --git a/pc4mobx/hrm/components/add/simple.js b/pc4mobx/hrm/components/add/simple.js index 4d10568..750ffb0 100644 --- a/pc4mobx/hrm/components/add/simple.js +++ b/pc4mobx/hrm/components/add/simple.js @@ -2,7 +2,7 @@ import React from 'react'; import { inject, observer } from 'mobx-react'; import { Button, Spin, Icon } from 'antd' import isEmpty from 'lodash/isEmpty' -import { WeaDialog, WeaSearchGroup, WeaTools, WeaNewScroll, WeaFormItem,WeaDialogFooter } from 'ecCom'; +import { WeaDialog, WeaSearchGroup, WeaTools, WeaNewScroll, WeaFormItem } from 'ecCom'; import { WeaSwitch } from 'comsMobx' import UploadAvatar from '../../../../pc4public/hrm/uploadAvatar' const getKey = WeaTools.getKey; @@ -18,19 +18,9 @@ class Simple extends React.Component { constructor(props) { super(props); this.state = { - time: new Date().getTime(), + time: new Date().getTime() } - this.deptInfo=null; } - - componentWillMount() { - const {location,hrmAdd } = this.props; - if (location && location.query && location.query.name) { - hrmAdd.isUsedAsSingle = true; - this.deptInfo = location.query; - } - } - componentWillReceiveProps (nextProps) { const { hrmAdd } = this.props; const { conditionInfo } = hrmAdd; @@ -46,7 +36,7 @@ class Simple extends React.Component { } componentDidUpdate () { const { hrmAdd } = this.props; - const { updateScroll,formSimple } = hrmAdd; + const { updateScroll } = hrmAdd; if (updateScroll) { if (this.refs.scrollBar) { setTimeout(() => { @@ -58,26 +48,9 @@ class Simple extends React.Component { setTimeout(() => { $(".input-tip").attr("title", $(".input-tip").text()) }, 0) - - if (this.deptInfo) { - const {id,name}= this.deptInfo; - formSimple.updateFields({ - departmentid:{ - value: id, - valueSpan: name, - valueObj: [ - { - id, - name - } - ] - } - }) - } } componentDidMount () { this.init(); - console.log(self.frameElement); } init = () => { @@ -146,7 +119,7 @@ class Simple extends React.Component { labelCol={{ span: `${field.labelcol}` }} wrapperCol={{ span: `${field.fieldcol}` }}> {dom} - {field.domkey[0] == 'workcode' && } + {field.domkey[0] == 'workcode' && } , colSpan: 1, hide: hide @@ -161,87 +134,36 @@ class Simple extends React.Component { render () { const { hrmAdd } = this.props; - const { title, loading,isUsedAsSingle,jobtitleVisible,formSimple,closeJobtitleDialog} = hrmAdd; + const { title, loading } = hrmAdd; let dialogHeight = window.innerHeight - 250; if (dialogHeight > 660) dialogHeight = 660; - - let scrollProps = {}; - if (!isUsedAsSingle) { - scrollProps.height = dialogHeight - } - - let com = this.getSearchs() - if (!isUsedAsSingle) { - return - - - {com} + return + + + {this.getSearchs()} - - }else{ - return ( -
-
{com}
- - { - jobtitleVisible && ( - { - const { - id, - jobtitlemark - } = datas; - - formSimple.updateFields({ - jobtitle: { - value: id, - valueSpan: jobtitlemark, - valueObj: [{ - id, - name: jobtitlemark - }] - } - }); - - closeJobtitleDialog(); - - } - } - url={'/spa/hrm/engine.html#/hrmengine/posts?type=0'} - visible={jobtitleVisible} - style={{ width: 600, height: 500 }} - /> - ) - } -
- ) - } +
} getBtns = () => { const { hrmAdd } = this.props; - const { canSave,isUsedAsSingle } = hrmAdd; + const { canSave } = hrmAdd; return [ - (!isUsedAsSingle &&
{i18n.button.fullModle()} + (
{i18n.button.fullModle()}
), (), - (!isUsedAsSingle && ), + (), ] return btns; } diff --git a/pc4mobx/hrm/components/card/Info.js b/pc4mobx/hrm/components/card/Info.js index e745163..7ca7fd7 100644 --- a/pc4mobx/hrm/components/card/Info.js +++ b/pc4mobx/hrm/components/card/Info.js @@ -223,7 +223,7 @@ class Main extends React.Component { labelCol={{span: `${window.HrmLabelCol}`}} wrapperCol={{span: `${window.HrmWrapperCol}`}}> {dom} - {field.domkey[0] == 'workcode' && } + {field.domkey[0] == 'workcode' && }
), colSpan: 1 }); @@ -274,7 +274,7 @@ class Main extends React.Component { labelCol={{span: `${window.HrmLabelCol}`}} wrapperCol={{span: `${window.HrmWrapperCol}`}}> {dom} - {field.domkey[0] == 'workcode' && } + {field.domkey[0] == 'workcode' && } ), colSpan: 2 }); diff --git a/pc4mobx/hrm/components/card/index.js b/pc4mobx/hrm/components/card/index.js index 48dec8f..00aefe5 100644 --- a/pc4mobx/hrm/components/card/index.js +++ b/pc4mobx/hrm/components/card/index.js @@ -14,8 +14,7 @@ import { WeaTab, WeaNewScroll, WeaAlertPage, - WeaAvatar, - WeaLeftRightLayout + WeaAvatar } from 'ecCom' import isEmpty from 'lodash/isEmpty' import * as mobx from 'mobx'; @@ -34,10 +33,8 @@ import { WeaPopoverHrm } from 'ecCom'; import TopButton from '../../coms/topButton'; -import { i18n } from '../../public/i18n'; -import { addContentPath } from '../../util/index.js' - -const TabPane = Tabs.TabPane; +import {i18n} from '../../public/i18n'; +import {addContentPath} from '../../util/index.js' const { ua } = WeaTools; const isIE9 = ua.browser === "IE" @@ -51,7 +48,7 @@ class Main extends React.Component { constructor(props) { super(props); this.state = { - weaWorkplanLoaded: false, + weaWorkplanLoaded:false, rightMenu: [] } } @@ -68,9 +65,9 @@ class Main extends React.Component { componentWillMount() { // 异步加载日程模块静态资源 - eventRegister.loadModule('f_workplan', () => { - this.setState({ weaWorkplanLoaded: true }); - }, () => { }); + eventRegister.loadModule('f_workplan', ()=> { + this.setState({weaWorkplanLoaded:true}); + }, ()=> {}); } componentDidMount() { @@ -96,7 +93,7 @@ class Main extends React.Component { }); } - setParentRightMenu = rightMenu => this.setState({ rightMenu }) + setParentRightMenu = rightMenu => this.setState({rightMenu}) getTabChildren() { const { @@ -118,22 +115,22 @@ class Main extends React.Component { if (tabKey === t.key) { if (t.isIframe) { isIframe = true; - if (t.key == 'iframe-9-workplansearch') { // 日程模块加载方式 + if(t.key == 'iframe-9-workplansearch'){ // 日程模块加载方式 const selectedUser = t.url.split('?')[1].split('&')[1].split('=')[1]; this.state.weaWorkplanLoaded && window.weaWorkplan && window.weaWorkplan.com ? - ifame = - : - '' - } else { - ifame = + ifame = + : + '' + }else{ + ifame = } } } }); return ( - - {isIframe ? ifame : children} - + + {isIframe ? ifame : children} + ); } render() { @@ -164,107 +161,100 @@ class Main extends React.Component { } } if (verified) { - if (hasRight) { + if(hasRight){ if (verified && isAdmin) { return ( - + ) } if (verified && !isAdmin) { - const avatarProps = { userId }; - if (info.requestParams) Object.assign(avatarProps, { requestParams: JSON.parse(info.requestParams) }); + const avatarProps = {userId}; + if(info.requestParams) Object.assign(avatarProps, {requestParams: JSON.parse(info.requestParams)}); return ( - { - this.tabsOnChange(v); - }} - tabPosition="left" - />} - > - -
- -
-
+ +
+ +
+
+ { + !isEmpty(info) && + { - !isEmpty(info) && - - { - info.shortname != null && info.shortname.trim().length > 0 ? -
{info.shortname}
- : - - {/* */} - - { - if (updateSuccess && result) { - result.requestParams && result.requestParams(userId); - setState({ updateSuccess: false }); - } - }} - /> - - - } - -
- {info.lastname} { - info.workcode ? - ( - ({info.workcode.indexOf('desensitization__') > -1 ? : info.workcode}) - ) - : - null - } - { - info.sex && + info.shortname != null && info.shortname.trim().length > 0 ? +
{info.shortname}
+ : + + {/* */} + + { + if(updateSuccess && result) { + result.requestParams && result.requestParams(userId); + setState({updateSuccess: false}); } -
- { - info.orginfo ? -
- : -
-   -
- } - - - + }} + /> + + } - -
- - {this.getTabChildren()} -
- {uploadPortrailAuth && } -
- - + +
+ {info.lastname} { + info.workcode ? + ( + ({info.workcode.indexOf('desensitization__') > -1 ? : info.workcode}) + ) + : + null + } + { + info.sex && + } +
+ { + info.orginfo ? +
+ : +
+   +
+ } + + + + } + +
+ { + this.tabsOnChange(v); + }} + /> + {this.getTabChildren()} +
+ {uploadPortrailAuth && } +
+ ) } - } else { + }else{ return ( -
- {i18n.message.authFailed()} +
+ {i18n.message.authFailed()}
- + ) } } @@ -275,7 +265,7 @@ class Main extends React.Component { const { hrmCard } = this.props; - this.setState({ rightMenu: [] }) + this.setState({rightMenu: []}) hrmCard.setTopButtons(null); hrmCard.setTopRightMenus(null); hrmCard.setTopShowDropIcon(false); diff --git a/pc4mobx/hrm/components/financeV2/Content.js b/pc4mobx/hrm/components/financeV2/Content.js index e454a5e..3edca6b 100644 --- a/pc4mobx/hrm/components/financeV2/Content.js +++ b/pc4mobx/hrm/components/financeV2/Content.js @@ -8,8 +8,8 @@ export default class Content extends Component{ render(){ return (
-
- + +
) } diff --git a/pc4mobx/hrm/components/financeV2/Form.js b/pc4mobx/hrm/components/financeV2/Form.js index 9d75f74..0539690 100644 --- a/pc4mobx/hrm/components/financeV2/Form.js +++ b/pc4mobx/hrm/components/financeV2/Form.js @@ -21,8 +21,8 @@ export default class Form extends Component{ } items.push({ com: ( - - + + ), col @@ -39,7 +39,7 @@ export default class Form extends Component{ groupArr.push( ( - + ) ); }); diff --git a/pc4mobx/hrm/components/financeV2/TableData.js b/pc4mobx/hrm/components/financeV2/TableData.js index 618c313..cc49df1 100644 --- a/pc4mobx/hrm/components/financeV2/TableData.js +++ b/pc4mobx/hrm/components/financeV2/TableData.js @@ -10,8 +10,8 @@ export default class TableData extends Component{ return (
- - + +
) } diff --git a/pc4mobx/hrm/components/financeV2/index.js b/pc4mobx/hrm/components/financeV2/index.js index 75e4e2c..c3b3270 100644 --- a/pc4mobx/hrm/components/financeV2/index.js +++ b/pc4mobx/hrm/components/financeV2/index.js @@ -30,15 +30,15 @@ export default class Finance extends Component{ let com; if(fromcard){ com = ( - - + + ) }else{ com = ( - - - + + + ) @@ -46,7 +46,7 @@ export default class Finance extends Component{ return (
- + {com}
diff --git a/pc4mobx/hrm/components/newOutside/Detailed.js b/pc4mobx/hrm/components/newOutside/Detailed.js index 48add2e..fafcb00 100644 --- a/pc4mobx/hrm/components/newOutside/Detailed.js +++ b/pc4mobx/hrm/components/newOutside/Detailed.js @@ -24,7 +24,8 @@ export default class Detailed extends Component { onChange = (params) => { const {newOutSide} = this.props; const {getData} = newOutSide; - if(params.dataScope =="0" || params.subcomId || params.resourceId || params.deptId || params.dataScope =="4" || params.allLevel){ + const flag = params.dataScope =="0" || params.subcomId || params.resourceId || params.deptId || params.dataScope =="4" || params.allLevel; + if(flag){ getData(params); } } diff --git a/pc4mobx/hrm/components/report/BarChart.js b/pc4mobx/hrm/components/report/BarChart.js index 8be6301..682b9db 100644 --- a/pc4mobx/hrm/components/report/BarChart.js +++ b/pc4mobx/hrm/components/report/BarChart.js @@ -40,7 +40,7 @@ class BarChart extends React.Component { } if (this.props.option !== nextProps.option) { - if (!this.isEmptyObject(nextProps.gridData) && !this.isEmptyObject(nextProps.option[0]) || !this.isEmptyObject(nextProps.option[1])) { + if (!this.isEmptyObject(nextProps.gridData) && !this.isEmptyObject(nextProps.option[0]) && !this.isEmptyObject(nextProps.option[1])) { this.setBarWidth(nextProps); } } @@ -78,21 +78,9 @@ class BarChart extends React.Component { t = 60; } let s = (h - (b + t)) / l; - - if (nextProps.option[0].series) { - nextProps.option[0].series[0].barWidth = s * 0.9; - } - if (nextProps.option[1].series) { - nextProps.option[1].series[0].barWidth = s * 0.9; - nextProps.option[1].series[0].label = { - normal:{ - color: "#333", - position: "top", - show: true - } - } - } + nextProps.option[0].series[0].barWidth = s * 0.9; + nextProps.option[1].series[0].barWidth = s * 0.9; this.setState({ optionL: nextProps.option[0], @@ -241,13 +229,14 @@ class BarChart extends React.Component { -
- this.chartAction(chart, 'left')}/> -
- {!Object.keys(optionL).length &&
-
-
{i18n.message.dataNone()}
-
} + {isChartsShow[0] ?
+ this.chartAction(chart, 'left')}/> +
+ :
+
+
{i18n.message.dataNone()}
+
+ }
@@ -266,13 +255,13 @@ class BarChart extends React.Component { -
- this.chartAction(chart, 'right')}/> -
- {!Object.keys(optionR).length &&
-
-
{i18n.message.dataNone()}
-
} + {isChartsShow[1] ?
+ this.chartAction(chart, 'right')}/> +
+ :
+
+
{i18n.message.dataNone()}
+
}
diff --git a/pc4mobx/hrm/components/report/ChangeRelatedReport.js b/pc4mobx/hrm/components/report/ChangeRelatedReport.js index e6617f7..21e9eb2 100644 --- a/pc4mobx/hrm/components/report/ChangeRelatedReport.js +++ b/pc4mobx/hrm/components/report/ChangeRelatedReport.js @@ -91,7 +91,6 @@ class ChangeRelatedReport extends React.Component { hrmChangeReport.pathToTitle(); hrmChangeReport.getCurWindowWidth(); hrmChangeReport.setColIdUnusualStatus(); - hrmChangeReport.optionReset(); } init() { diff --git a/pc4mobx/hrm/public/valhalla/components/importRelatedComponet/index.js b/pc4mobx/hrm/public/valhalla/components/importRelatedComponet/index.js index 6f14e9c..3f7da00 100644 --- a/pc4mobx/hrm/public/valhalla/components/importRelatedComponet/index.js +++ b/pc4mobx/hrm/public/valhalla/components/importRelatedComponet/index.js @@ -26,7 +26,7 @@ import { } from 'ecCom'; import ImportResult from './ImportResult' import ImportHistory from './ImportHistory' -import {addContentPath} from '../../../../util/index.js' +import {addContentPath} from '../../util/index.js' const getLabel = WeaLocaleProvider.getLabel; @observer diff --git a/pc4mobx/hrm/stores/add.js b/pc4mobx/hrm/stores/add.js index 376aa35..5728a54 100644 --- a/pc4mobx/hrm/stores/add.js +++ b/pc4mobx/hrm/stores/add.js @@ -62,7 +62,6 @@ export class HrmAdd { @observable searchsValue = "";//存储快捷搜索的值 showFormFields = []; @observable dialogDefShow = '';//默认弹窗控制变量 - @observable isUsedAsSingle = false; @action setSearchsValue = (v) => { this.searchsValue = v; @@ -574,17 +573,7 @@ export class HrmAdd { 'type': 'simple' }); } - let dialogMapper = top.window.dialogMapper; - - if (dialogMapper) { - for(let id in dialogMapper){ - let dialog = dialogMapper[id]; - dialog.close(); - dialog.callback({}); - } - }else{ this.update(); - } } else { message.warning(data.message); callback && callback(); diff --git a/pc4mobx/hrm/stores/changeReport.js b/pc4mobx/hrm/stores/changeReport.js index f6997c9..77ff600 100644 --- a/pc4mobx/hrm/stores/changeReport.js +++ b/pc4mobx/hrm/stores/changeReport.js @@ -325,7 +325,6 @@ export class HrmChangeReport { if (!this.dpId && !this.yearmonth && !this.contractTypeId && this.isEmptyObject(adSearchParams) && !this.singleSearchCondition) { p = { cmd: cmd, - yearmonth:this.deptDatas, ...this.params }; } diff --git a/pc4mobx/hrm/stores/secondaryVerify.js b/pc4mobx/hrm/stores/secondaryVerify.js index 6caf8db..d507448 100644 --- a/pc4mobx/hrm/stores/secondaryVerify.js +++ b/pc4mobx/hrm/stores/secondaryVerify.js @@ -166,10 +166,10 @@ export class HrmSecondaryVerify { const key = secondaryPwd1 ? 'secondaryPwd1' : 'newSecondaryPwd1'; form.validateForm().then(f => { if (f.isValid) { - // if (newSecondaryPwd1 && !isOldPwdPass) { - // form.showError('oldSecondaryPwd', getLabel('504374', "旧密码校验不通过!")); - // return; - // } + if (newSecondaryPwd1 && !isOldPwdPass) { + form.showError('oldSecondaryPwd', getLabel('504374', "旧密码校验不通过!")); + return; + } if (isEqualToLoginPass) { form.showError(key, getLabel('504375', "二次验证密码不能和登录密码相同")); diff --git a/pc4mobx/hrm/stores/spaGroup.js b/pc4mobx/hrm/stores/spaGroup.js index 4773db7..ef0ca27 100644 --- a/pc4mobx/hrm/stores/spaGroup.js +++ b/pc4mobx/hrm/stores/spaGroup.js @@ -772,7 +772,7 @@ class HrmSpaGroup { isSingle: false, onChange: datas => { this.memberIds = datas; - datas && this.saveDialogForm(); + this.saveDialogForm(); } } } diff --git a/pc4mobx/hrm/stores/systemCard.js b/pc4mobx/hrm/stores/systemCard.js index d898634..0738c5c 100644 --- a/pc4mobx/hrm/stores/systemCard.js +++ b/pc4mobx/hrm/stores/systemCard.js @@ -73,7 +73,7 @@ export class HrmSystemCard { this.getSearchCondition(); this.getTableInfo('1'); }else{ - // document.title = i18n.label.resourceCard() + document.title = i18n.label.resourceCard() } }); } @@ -128,7 +128,7 @@ export class HrmSystemCard { this.hrmName = data.hrmName; // this.form1 = new WeaForm(); // this.form1.initFormFields(data.condition); - // document.title = i18n.label.resourceCard() + '-' + data.hrmName; + document.title = i18n.label.resourceCard() + '-' + data.hrmName; }); } diff --git a/pc4mobx/hrm/style/add.less b/pc4mobx/hrm/style/add.less index f62f175..c94673b 100644 --- a/pc4mobx/hrm/style/add.less +++ b/pc4mobx/hrm/style/add.less @@ -82,12 +82,4 @@ } } } -} - -.hrm-addsimple-single{ - height: 100%; - & > div:first-child{ - height: calc(~"100% - 61px"); - overflow: auto; - } } \ No newline at end of file diff --git a/pc4mobx/hrm/util/loginUtilNew.js b/pc4mobx/hrm/util/loginUtilNew.js index f3abf29..e09a161 100644 --- a/pc4mobx/hrm/util/loginUtilNew.js +++ b/pc4mobx/hrm/util/loginUtilNew.js @@ -134,9 +134,28 @@ const loginSync = (params) => { } } - queryParams = toJS(queryParams) || {} ; - - const {appid,service} = queryParams ; + queryParams = toJS(queryParams); + if(queryParams && queryParams.appid && queryParams.service){ + queryParams.loginid=loginid; + queryParams.userpassword=userpasswordRsa; + queryParams.isRememberAccount = params.isRememberAccount ? '1':'0' ; + queryParams.isRememberPassword = params.isRememberPassword ? '1':'0' ; + queryParams.validatecode=validatecode; + queryParams.validateCodeKey=validateCodeKey ; + queryParams.languid=langid ; + let tmps = []; + jQuery("body").append(""); + let form = jQuery("form[name='ssoForm']") + form.attr("action", (window.ecologyContentPath||'')+'/login/VerifyLoginWeaversso.jsp'); + form.attr("method", "post"); + form.attr("style", "display:none"); + for (let key in queryParams) { + form.append(""); + } + //跳转到sso + form.submit(); + return; + } const {plugin} = params @@ -200,8 +219,6 @@ const loginSync = (params) => { logintype: logintype, messages: messages, isie: isIE9, - appid:appid, - service:service, ...plugin }).then((result) => { if ('access_token' in result && typeof result.access_token === 'string' && result.access_token !== '') { @@ -214,22 +231,11 @@ const loginSync = (params) => { userpassword = result.user_token; } - const onSuccess = () => { - if(success && typeof success == 'function'){ - success(loginid, userpassword, result); - } - } - - if (result.loginstatus == 'true') { - const {isRemoveSession} = result ; - if(isRemoveSession == '1'){ - onSuccess() ; - return ; - }else if (success && typeof success == 'function') { + if (success && typeof success == 'function') { message.destroy(); if(logintype==2){ - checkWeakPassword(()=>onSuccess()); + checkWeakPassword(()=>success(loginid, userpassword, result)); }else{ WeaTools.callApi('/api/hrm/login/remindLogin', 'POST', {logintype: logintype}).then((result) => { if (result.status == '1') { @@ -263,11 +269,11 @@ const loginSync = (params) => { return; }, onCancel() { - checkWeakPassword(()=>onSuccess()); + checkWeakPassword(()=>success(loginid, userpassword, result)); }, }); } else { - checkWeakPassword(()=>onSuccess()); + checkWeakPassword(()=>success(loginid, userpassword, result)); } } else { confirm({ @@ -286,7 +292,7 @@ const loginSync = (params) => { }); } } else { - checkWeakPassword(()=>onSuccess()); + checkWeakPassword(()=>success(loginid, userpassword, result)); } } } diff --git a/pc4mobx/hrmAttendance/components/Checking.js b/pc4mobx/hrmAttendance/components/Checking.js index 7963655..2da0a0a 100644 --- a/pc4mobx/hrmAttendance/components/Checking.js +++ b/pc4mobx/hrmAttendance/components/Checking.js @@ -1000,8 +1000,6 @@ class main extends React.Component { return content; }; - let e9headerHeight = $(".e9header-right").height() || 80; - let coms = [
{!hasRight && ( diff --git a/pc4mobx/hrmAttendance/components/originalPunchRecord/RadioGroup.js b/pc4mobx/hrmAttendance/components/originalPunchRecord/RadioGroup.js index af67cfe..1de8cd3 100644 --- a/pc4mobx/hrmAttendance/components/originalPunchRecord/RadioGroup.js +++ b/pc4mobx/hrmAttendance/components/originalPunchRecord/RadioGroup.js @@ -10,7 +10,6 @@ import { } from 'ecCom'; @inject('commonStore') -@inject('hrmOriginalPunchRecord') @observer export default class RadioGroup extends React.Component { constructor(props) { @@ -34,7 +33,7 @@ export default class RadioGroup extends React.Component { } = radioGroup; return ( - config.length > 0 && setRef(ref,'radioGroup')} onChange={this.props.hrmOriginalPunchRecord.onRadioGroupChangeHandle}/> + config.length > 0 && setRef(ref,'radioGroup')} onChange={params => this.handleRadioGroupChange(params)}/> ) } } \ No newline at end of file diff --git a/pc4mobx/hrmAttendance/components/shift/Calendar.js b/pc4mobx/hrmAttendance/components/shift/Calendar.js index b6f843f..fb258d0 100644 --- a/pc4mobx/hrmAttendance/components/shift/Calendar.js +++ b/pc4mobx/hrmAttendance/components/shift/Calendar.js @@ -51,9 +51,8 @@ export default class CalendarComs extends Component{ const d = date.getDayOfMonth(); const select = moment(date.time); calendarData = toJS(calendarData); - let formatDate = `${date.getYear()}-${(date.getMonth()+1+'').padLeft(2,0)}-${ (date.getDayOfMonth()+'').padLeft(2,0)}` - let data = calendarData[formatDate]; - let holiday = holidayData[formatDate]; + let data = calendarData[select.format('YYYY-MM-DD')]; + let holiday = holidayData[select.format('YYYY-MM-DD')]; let content = ( {holiday && {holiday.tip}} diff --git a/pc4mobx/hrmAttendance/components/vacationBalanceReportCopy/Table.js b/pc4mobx/hrmAttendance/components/vacationBalanceReportCopy/Table.js index 7f931e1..9f0f1c9 100644 --- a/pc4mobx/hrmAttendance/components/vacationBalanceReportCopy/Table.js +++ b/pc4mobx/hrmAttendance/components/vacationBalanceReportCopy/Table.js @@ -108,7 +108,7 @@ class Table extends React.Component { } = table; const { - // height: rgHeight + height: rgHeight } = radioGroup; const { @@ -121,8 +121,6 @@ class Table extends React.Component { leftMenuBarWidth, } = this.state; - const rgHeight = jquery(".wea-radio-group").height(); - //滚动区域的宽度 公式:窗口宽度 - (左侧菜单栏宽度 + GAP ) const PADDINGLEFT = 20; const scrollWidth = browserWidth - (leftMenuBarWidth + 2 * PADDINGLEFT); diff --git a/pc4mobx/hrmAttendance/stores/dailyReport.js b/pc4mobx/hrmAttendance/stores/dailyReport.js index e3524dc..1ac22a5 100644 --- a/pc4mobx/hrmAttendance/stores/dailyReport.js +++ b/pc4mobx/hrmAttendance/stores/dailyReport.js @@ -374,7 +374,6 @@ export class HrmAttendanceDailyReport extends HrmBaseStore { } break; } - this.showHasNotAccount = ((['4', '5', '6', '7', '9'].indexOf(params.status || '')) > -1); this.getKQReport(this.getQueryParams(1)); } diff --git a/pc4mobx/hrmAttendance/stores/monthReport4template.js b/pc4mobx/hrmAttendance/stores/monthReport4template.js index 43653b5..7e0e86c 100644 --- a/pc4mobx/hrmAttendance/stores/monthReport4template.js +++ b/pc4mobx/hrmAttendance/stores/monthReport4template.js @@ -399,7 +399,6 @@ class HrmAttendanceMonthReport4Template extends HrmBaseStore { displaySetting = {} rangeConditions = []; - custConditions = []; rangeKeys = {} @computed get radioGroupConfig(){ @@ -447,16 +446,15 @@ class HrmAttendanceMonthReport4Template extends HrmBaseStore { @action getCondition = async () => { const data = await api.getSearchCondition(); if(data.status == '1'){ - const {conditions = [], cusCondition = [], showColumns: cascader} = data; - let arr = [...conditions, ...cusCondition]; - this.cascader = cascader; + const {conditions, showColumns: cascader} = data; + this.cascader = cascader; this.rangeKeys = {}; - this.rangeConditions = arr.map(condition => { + this.rangeConditions = conditions.map(condition => { const {domkey} = condition; Object.assign(this.rangeKeys, {[domkey]: []}) let options = condition.options; let selectLinkageDatas = condition.selectLinkageDatas; - selectLinkageDatas && Object.keys(selectLinkageDatas).map(k => { + Object.keys(selectLinkageDatas).map(k => { const {conditionType, domkey: linkdomkey} = selectLinkageDatas[k]; this.rangeKeys[domkey].push(...linkdomkey); if(conditionType == 'BROWSER'){ @@ -645,7 +643,7 @@ class HrmAttendanceMonthReport4Template extends HrmBaseStore { } break; } - this.showHasNotAccount = ((['4', '5', '6', '7', '9'].indexOf(params.status || '')) > -1); + this.getKQReport(this.getQueryParams()); }catch(e){ diff --git a/pc4mobx/hrmAttendance/stores/originalPunchRecord.js b/pc4mobx/hrmAttendance/stores/originalPunchRecord.js index 1b436cd..5ec6240 100644 --- a/pc4mobx/hrmAttendance/stores/originalPunchRecord.js +++ b/pc4mobx/hrmAttendance/stores/originalPunchRecord.js @@ -36,11 +36,6 @@ class HrmOriginalPunchRecord { //*************头部************** @observable isNoAccountShow = false; - @action onRadioGroupChangeHandle = (params) => { - this.isNoAccountShow = ((['4', '5', '6', '7', '9'].indexOf(params.status || '')) > -1); - commonStore.exportActiveParams(params); - } - @action clickIcon = (bool) => { this.isNoAccountShow = bool; diff --git a/pc4mobx/hrmAttendance/stores/shift.js b/pc4mobx/hrmAttendance/stores/shift.js index 9f18faa..4e186e9 100644 --- a/pc4mobx/hrmAttendance/stores/shift.js +++ b/pc4mobx/hrmAttendance/stores/shift.js @@ -61,7 +61,6 @@ export class HrmShift { @action changeDateTabHandler = (key) => { this.dateTabkey = key; - this.getData(); } @action changeDateHandler = (v) => { diff --git a/pc4mobx/hrmAttendance/stores/vacationBalanceReportCopy.js b/pc4mobx/hrmAttendance/stores/vacationBalanceReportCopy.js index 0bb05bb..06557ea 100644 --- a/pc4mobx/hrmAttendance/stores/vacationBalanceReportCopy.js +++ b/pc4mobx/hrmAttendance/stores/vacationBalanceReportCopy.js @@ -280,7 +280,6 @@ class HrmVacationBalanceReportCopy { } @action exportActiveParams = (params) => { - this.isNoAccountShow = ((['4', '5', '6', '7', '9'].indexOf(params.status || '')) > -1); this.radioGroup.activeParams = params; this.chainCall(); diff --git a/pc4mobx/hrmAttendance/util/index.js b/pc4mobx/hrmAttendance/util/index.js index fdbbb42..2abbed0 100644 --- a/pc4mobx/hrmAttendance/util/index.js +++ b/pc4mobx/hrmAttendance/util/index.js @@ -500,7 +500,7 @@ export const getIconColor = type => { let res = {}; if (type == 'ALL') { res.color = '#2DB7F5'; - res.name = getLabel(82857, '全部'); + res.name = (window.e9_locale.userLanguage == "8") ? "All type" : getLabel(82857, '全部'); res.icon = 'icon-Human-resources-all'; } if (type == 'NORMAL') { @@ -522,31 +522,31 @@ export const getIconColor = type => { } if (type == 'ABSENT') { res.color = '#FC4B6C'; - res.name = getLabel('20085', "旷工"); + res.name = (window.e9_locale.userLanguage == "8") ? "Truancy" : getLabel('20085', "旷工"); res.bcolor = '#FFE6EB'; res.icon = 'icon-Human-resources-Absenteeism'; } if (type == 'NOSIGN') { res.color = '#BD10E0'; - res.name = getLabel('20086', "漏签"); + res.name = (window.e9_locale.userLanguage == "8") ? "Forget" :getLabel('20086', "漏签"); res.bcolor = '#FAECFD'; res.icon = 'icon-Human-resources-check'; } if (type == 'LEAVE') { res.color = '#2DB7F5'; - res.name = getLabel('670', "请假"); + res.name = (window.e9_locale.userLanguage == "8") ? "Leave" : getLabel('670', "请假"); res.bcolor = '#EFFAFF'; res.icon = 'icon-Human-resources-leave'; } if (type == 'EVECTION') { res.color = '#30BE3A'; - res.name = getLabel('20084', "出差"); + res.name = (window.e9_locale.userLanguage == "8") ? "Business Trip" :getLabel('20084', "出差"); res.bcolor = '#EFFAF0'; res.icon = 'icon-Human-resources-business-travel'; } if (type == 'OUTDAYS') { res.color = '#4F8CFF'; - res.name = getLabel('24058', "公出"); + res.name =(window.e9_locale.userLanguage == "8") ? "Business Out" : getLabel('24058', "公出"); res.bcolor = '#DFEBFF'; res.icon = 'icon-Human-resources-work'; } diff --git a/pc4public/portal/_rc/.editorconfig b/pc4public/portal/_rc/.editorconfig new file mode 100644 index 0000000..604c94e --- /dev/null +++ b/pc4public/portal/_rc/.editorconfig @@ -0,0 +1,9 @@ +# top-most EditorConfig file +root = true + +# Unix-style newlines with a newline ending every file +[*.{js,css}] +end_of_line = lf +insert_final_newline = true +indent_style = space +indent_size = 2 diff --git a/pc4public/portal/_rc/.gitignore b/pc4public/portal/_rc/.gitignore new file mode 100644 index 0000000..7e996ee --- /dev/null +++ b/pc4public/portal/_rc/.gitignore @@ -0,0 +1,30 @@ +*.iml +*.log +.idea/ +.ipr +.iws +*~ +~* +*.diff +*.patch +*.bak +.DS_Store +Thumbs.db +.project +.*proj +.svn/ +*.swp +*.swo +*.pyc +*.pyo +.build +node_modules +.cache +dist +assets/**/*.css +build +lib +es +coverage +yarn.lock +package-lock.json diff --git a/pc4public/portal/_rc/.travis.yml b/pc4public/portal/_rc/.travis.yml new file mode 100644 index 0000000..cc34e2a --- /dev/null +++ b/pc4public/portal/_rc/.travis.yml @@ -0,0 +1,32 @@ +language: node_js + +sudo: false + +notifications: + email: + - yiminghe@gmail.com + +node_js: +- 6.0.0 + +before_install: +- | + if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.md$)|(^(docs|examples))/' + then + echo "Only docs were updated, stopping build process." + exit + fi + npm install npm@3.x -g + phantomjs --version +script: +- | + if [ "$TEST_TYPE" = test ]; then + npm test + else + npm run $TEST_TYPE + fi +env: + matrix: + - TEST_TYPE=lint + - TEST_TYPE=test + - TEST_TYPE=coverage diff --git a/pc4public/portal/_rc/HISTORY.md b/pc4public/portal/_rc/HISTORY.md new file mode 100644 index 0000000..2d6aa60 --- /dev/null +++ b/pc4public/portal/_rc/HISTORY.md @@ -0,0 +1,92 @@ +# History +---- +## 7.0.2 / 2018-05-03 + +- Better aria-* attributes support. +- Improve Menu performance by avoiding unnecessary updates. +- Minor key shortcut bug fixes. +- Support passing props through to MenuItem list item + +## 6.0.0 / 2017-10-30 + +- Replace openSubMenuOnMouseEnter/closeSubMenuOnMouseLeave with triggerSubMenuAction +- Add subMenuCloseDelay and subMenuOpenDelay +- Refactor with rc-trigger + +## 5.1.0 / 2016-09-12 + +- Add dom for submenu arrow + +## 5.0.0 / 2016-08-19 + +- remove onOpen/onClose, support onOpenChange(openKeys: string[]) + +## 4.13.0 / 2016-07-22 + +- support submenu-selected + +## 4.12 / 2016-05-05 + +- make submenu active only title is hovered when inline + +## 4.11.0 / 2016-04-27 + +- add onMouseEnter/onTitleMouseLeave/onTitleClick/... + +## 4.10.0 / 2016-01-20 + +- use es6 export + +## 4.9.0 / 2015-12-25 +- add keyPath to onOpen/onClose argument info + +## 4.6.0 / 2015-09-16 +- add keyPath to onClick argument info + +## 4.5.0 / 2015-09-14 +- does not hide submenu when click(use onClick to set openKeys to [] if you want) + +## 4.4.0 / 2015-08-13 +- add openAnimation/openTransitionName prop + +## 4.3.0 / 2015-08-13 +- make selectedKeys openedKeys controllable +- add closeSubMenuOnMouseLeave/onOpen/onClose props + +## 4.1.0 / 2015-08-11 +- remove openOnHover for SubMenu +- add openSubMenuOnMouseEnter prop for Menu + +## 4.0.0 / 2015-08-10 + +- add props: mode (horizontal, vertical, inline) for Menu +- add defaultSelectedKeys, make selectedKeys controllable +- change param of onSelect onDeselect + +## 3.5.0 / 2015-08-06 + +add props: vertical/horizontal for Menu, align for SubMenu + +## 3.4.0 / 2015-06-17 + +`improved` [#9](https://github.com/react-component/menu/issues/9) allow not set key for menuitem + +`new` [#10](https://github.com/react-component/menu/issues/10) support MenuItemGroup + +## 3.3.0 / 2015-06-08 + +`new` add Menu.Divider Component + +## 3.1.0 / 2015-03-26 + +`improved` [#5](https://github.com/react-component/menu/issues/5) support selected and disabled for menuitem simultaneously + +## 3.0.0 / 2015-03-17 + +support react 0.13 and es6 + +## 2.2.0 / 2015-01-29 + +`new` [#3](https://github.com/react-component/menu/issues/3) support scrollIntoView if menu is scrollable + +`new` [#2](https://github.com/react-component/menu/issues/2) support multiple prop and onDeselect callback diff --git a/pc4public/portal/_rc/LICENSE.md b/pc4public/portal/_rc/LICENSE.md new file mode 100644 index 0000000..1f5a0d9 --- /dev/null +++ b/pc4public/portal/_rc/LICENSE.md @@ -0,0 +1,9 @@ +The MIT License (MIT) + +Copyright (c) 2014-present yiminghe + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/pc4public/portal/_rc/README.md b/pc4public/portal/_rc/README.md new file mode 100644 index 0000000..406f798 --- /dev/null +++ b/pc4public/portal/_rc/README.md @@ -0,0 +1,376 @@ +# rc-menu +--- + +react menu component. port from https://github.com/kissyteam/menu + + +[![NPM version][npm-image]][npm-url] +[![build status][travis-image]][travis-url] +[![Test coverage][coveralls-image]][coveralls-url] +[![gemnasium deps][gemnasium-image]][gemnasium-url] +[![node version][node-image]][node-url] +[![npm download][download-image]][download-url] + +[npm-image]: http://img.shields.io/npm/v/rc-menu.svg?style=flat-square +[npm-url]: http://npmjs.org/package/rc-menu +[travis-image]: https://img.shields.io/travis/react-component/menu.svg?style=flat-square +[travis-url]: https://travis-ci.org/react-component/menu +[coveralls-image]: https://img.shields.io/coveralls/react-component/menu.svg?style=flat-square +[coveralls-url]: https://coveralls.io/r/react-component/menu?branch=master +[gemnasium-image]: http://img.shields.io/gemnasium/react-component/menu.svg?style=flat-square +[gemnasium-url]: https://gemnasium.com/react-component/menu +[node-image]: https://img.shields.io/badge/node.js-%3E=_0.10-green.svg?style=flat-square +[node-url]: http://nodejs.org/download/ +[download-image]: https://img.shields.io/npm/dm/rc-menu.svg?style=flat-square +[download-url]: https://npmjs.org/package/rc-menu + + +## Screenshot + +![alt](https://tfsimg.alipay.com/images/T19vReXg0oXXXXXXXX.png) + + +## Usage + +```jsx +import Menu, {SubMenu, MenuItem} from 'rc-menu'; +ReactDOM.render( + 1 + + 2-1 + +, container); +``` + +## install + +[![rc-menu](https://nodei.co/npm/rc-menu.png)](https://npmjs.org/package/rc-menu) + +## API + +### Menu props + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
nametypedefaultdescription
classNameStringadditional css class of root dom node
modeStringverticalone of ["horizontal","inline","vertical-left","vertical-right"]
activeKeyObjectinitial and current active menu item's key.
defaultActiveFirstBooleanfalsewhether active first menu item when show if activeKey is not set or invalid
multipleBooleanfalsewhether allow multiple select
selectableBooleantrueallow selecting menu items
selectedKeysString[][]selected keys of items
defaultSelectedKeysString[][]initial selected keys of items
openKeysString[][]open keys of SubMenuItem
defaultOpenKeysString[][]initial open keys of SubMenuItem
onSelectfunction({key:String, item:ReactComponent, domEvent:Event, selectedKeys:String[]})called when select a menu item
onClickfunction({key:String, item:ReactComponent, domEvent:Event, keyPath: String[]})called when click a menu item
onOpenChange(openKeys:String[]) => voidcalled when open/close sub menu
onDeselectfunction({key:String, item:ReactComponent, domEvent:Event, selectedKeys:String[]})called when deselect a menu item. only called when allow multiple
triggerSubMenuActionEnum { hover, click }hoverwhich action can trigger submenu open/close
openAnimation{enter:function,leave:function}|Stringanimate when sub menu open or close. see rc-animate for object type.
openTransitionStringcss transitionName when sub menu open or close
subMenuOpenDelayNumber0delay time to show popup sub menu. unit: s
subMenuCloseDelayNumber0.1delay time to hide popup sub menu. unit: s
forceSubMenuRenderBooleanfalsewhether to render submenu even if it is not visible
getPopupContainerFunction(menuDOMNode): HTMLElement() => document.bodyWhere to render the DOM node of popup menu when the mode is horizontal or vertical
+ +### Menu.Item props + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
nametypedefaultdescription
classNameStringadditional css class of root dom node
disabledBooleanfalseno effect for click or keydown for this item
keyObjectcorresponding to activeKey
onMouseEnterFunction({eventKey, domEvent})
onMouseLeaveFunction({eventKey, domEvent})
+ + +### Menu.SubMenu props + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
nametypedefaultdescription
classNameStringadditional css class of root dom node
titleString/ReactElementsub menu's content
keyObjectcorresponding to activeKey
disabledBooleanfalseno effect for click or keydown for this item
onMouseEnterFunction({eventKey, domEvent})
onMouseLeaveFunction({eventKey, domEvent})
onTitleMouseEnterFunction({eventKey, domEvent})
onTitleMouseLeaveFunction({eventKey, domEvent})
onTitleClickFunction({eventKey, domEvent})
popupOffsetArrayThe offset of the popup submenu, in an x, y coordinate array. e.g.: `[0,15]`
+ +### Menu.Divider props + +none + +### Menu.ItemGroup props + + + + + + + + + + + + + + + + + + + + + + + + +
nametypedefaultdescription
titleString|React.Elementtitle of item group
childrenReact.Element[]MenuItems belonged to this group
+ +## Development + +``` +npm install +npm start +``` + +## Example + +http://localhost:8001/examples/index.md + +online example: http://react-component.github.io/menu/examples/ + + +## Test Case + +``` +npm test +npm run chrome-test +``` + +## Coverage + +``` +npm run coverage +``` + +open coverage/ dir + + +## License + +rc-menu is released under the MIT license. diff --git a/pc4public/portal/_rc/index.js b/pc4public/portal/_rc/index.js new file mode 100644 index 0000000..fd4d7e5 --- /dev/null +++ b/pc4public/portal/_rc/index.js @@ -0,0 +1 @@ +module.exports = require('./src/'); diff --git a/pc4public/portal/_rc/package.json b/pc4public/portal/_rc/package.json new file mode 100644 index 0000000..58d55b1 --- /dev/null +++ b/pc4public/portal/_rc/package.json @@ -0,0 +1,88 @@ +{ + "name": "rc-menu", + "version": "7.0.3", + "description": "menu ui component for react", + "keywords": [ + "react", + "react-component", + "menu", + "ui", + "react-menu" + ], + "files": [ + "es", + "lib", + "assets/*.css" + ], + "main": "./lib/index", + "module": "./es/index", + "homepage": "http://github.com/react-component/menu", + "maintainers": [ + "yiminghe@gmail.com", + "hualei5280@gmail.com" + ], + "repository": { + "type": "git", + "url": "git@github.com:react-component/menu.git" + }, + "bugs": { + "url": "http://github.com/react-component/menu/issues" + }, + "licenses": "MIT", + "config": { + "port": 8010 + }, + "scripts": { + "build": "rc-tools run build", + "compile": "rc-tools run compile --babel-runtime", + "gh-pages": "rc-tools run gh-pages", + "start": "rc-tools run server", + "start:preact": "DEMO_ENV=preact rmc-tools run server", + "pub": "rc-tools run pub --babel-runtime", + "lint": "rc-tools run lint", + "lint:fix": "rc-tools run lint --fix", + "test": "jest", + "prepublish": "rc-tools run guard", + "coverage": "jest --coverage && cat ./coverage/lcov.info | coveralls" + }, + "jest": { + "setupFiles": [ + "./tests/setup.js" + ], + "collectCoverageFrom": [ + "src/**/*" + ], + "snapshotSerializers": [ + "enzyme-to-json/serializer" + ], + "transform": { + "\\.jsx?$": "./node_modules/rc-tools/scripts/jestPreprocessor.js" + } + }, + "devDependencies": { + "coveralls": "^2.11.15", + "enzyme": "^3.0.0", + "enzyme-adapter-react-16": "^1.0.2", + "enzyme-to-json": "^3.0.1", + "jest": "^21.0.0", + "pre-commit": "1.x", + "rc-tools": "7.x", + "react": "^16.0.0", + "react-dom": "^16.0.0", + "react-test-renderer": "^16.0.0", + "rmc-tools": "^0.0.2" + }, + "dependencies": { + "babel-runtime": "6.x", + "classnames": "2.x", + "dom-scroll-into-view": "1.x", + "mini-store": "^1.1.0", + "prop-types": "^15.5.6", + "rc-animate": "2.x", + "rc-trigger": "^2.3.0", + "rc-util": "^4.1.0" + }, + "pre-commit": [ + "lint" + ] +} diff --git a/pc4public/portal/wea-custom-setting/index.js b/pc4public/portal/wea-custom-setting/index.js index 9fcec1e..3d5548a 100644 --- a/pc4public/portal/wea-custom-setting/index.js +++ b/pc4public/portal/wea-custom-setting/index.js @@ -12,8 +12,8 @@ class SettingButton extends React.Component { render() { return ( -
- +
+
); diff --git a/pc4public/portal/wea-custom-setting/style/index.css b/pc4public/portal/wea-custom-setting/style/index.css index ff6e560..f0d2016 100644 --- a/pc4public/portal/wea-custom-setting/style/index.css +++ b/pc4public/portal/wea-custom-setting/style/index.css @@ -1,10 +1,9 @@ .wea-custom-setting-btn { color: #b2b2b2; font-size: 16px; -} -.wea-custom-setting-btn i{ cursor: pointer; } -.wea-custom-setting-btn i:hover { + +.wea-custom-setting-btn:hover { color: #2db7f5; }