Merge pull request 'feature/cl' (#50) from feature/cl into dev

Reviewed-on: http://221.226.25.34:3000/liang.cheng/trunk/pulls/50
This commit is contained in:
liang.cheng 2024-06-14 16:27:48 +08:00
commit 24460c6cf9
35 changed files with 400 additions and 661 deletions

View File

@ -2,7 +2,8 @@ import {
WeaNewScroll,
WeaSearchGroup,
WeaMoreButton,
WeaDialog
WeaDialog,
WeaLocaleProvider
} from 'ecCom'
import {
inject,
@ -33,6 +34,7 @@ import { addContentPath } from '../util/index.js'
const Step = Steps.Step;
const Dragger = Upload.Dragger;
const WeaTable = WeaTableNew.WeaTable;
const getLabel = WeaLocaleProvider.getLabel;
@inject("importDialog")
@ -43,7 +45,7 @@ export default class ImportDialog extends React.Component {
this.state = {
width: 800,
height: 600,
title: '数据导入',
title: i18n.label.dataImport(),
}
}
@ -150,7 +152,7 @@ export default class ImportDialog extends React.Component {
} = this.state;
const buttons = [
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => this.next()}>{current === steps.length - 1 ? '关闭' : '开始导入'}</Button>),
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => this.next()}>{current === steps.length - 1 ? getLabel(547584,"关闭") : `${i18n.label.startImport()}`}</Button>),
];
@ -176,7 +178,7 @@ export default class ImportDialog extends React.Component {
>
<div style={{ marginTop: 24 }}>
<Steps current={current}>
{steps.map((s, i) => <Step key={i} title={s.title} description={s.description} />)}
{steps.map((s, i) => <Step key={i} title={getLabel(s.key,s.value)} description={s.description} />)}
</Steps>
</div>
<div style={{ padding: 24 }}>
@ -194,8 +196,8 @@ export default class ImportDialog extends React.Component {
<p className="ant-upload-drag-icon">
<Icon type="inbox" />
</p>
<p className="ant-upload-text">点击或将文件拖拽到此区域上传</p>
<p className="ant-upload-hint">支持单个或批量上传严禁上传公司内部资料及其他违禁文件</p>
<p className="ant-upload-text">{i18n.label.importTip1()}</p>
<p className="ant-upload-hint">{i18n.label.importTip2()}</p>
</div>
</Dragger>
{this.getForm()}
@ -221,7 +223,7 @@ export default class ImportDialog extends React.Component {
/>
}
<WeaDialog
title="导入进度"
title={i18n.label.importProgress()}
onCancel={() => importDialog.pvisable = false}
visible={pvisable}
style={{ width: 300, height: 50 }}

View File

@ -1,5 +1,5 @@
import React, { Component } from "react";
import { WeaRightMenu, WeaTab, WeaTop } from "ecCom";
import { WeaRightMenu, WeaTab, WeaTop,WeaLocaleProvider } from "ecCom";
import { inject, observer } from "mobx-react";
import { Button } from "antd";
import PermissionItem from "./permissionItem";
@ -8,6 +8,9 @@ import CustomItem from "./customItem";
import { i18n } from "../../public/i18n";
import { renderNoright } from "../../util";
const getLabel = WeaLocaleProvider.getLabel;
@inject("columnSetting")
@observer
class ColumnSetting extends Component {
@ -22,7 +25,7 @@ class ColumnSetting extends Component {
getTopMenuBtns = () => {
return [
<Button type="primary" onClick={this.save}>保存</Button>
<Button type="primary" onClick={this.save}>{getLabel('547360', "保存")}</Button>
];
};
getDropMenuDatas = () => {
@ -30,7 +33,7 @@ class ColumnSetting extends Component {
{
key: "save",
icon: <i className="icon-coms-Preservation"/>,
content: "保存"
content: getLabel('547360', "保存")
}
];
};
@ -68,7 +71,7 @@ class ColumnSetting extends Component {
datas={[{
key: "save",
icon: <i className="icon-coms-Preservation"/>,
content: "保存"
content: getLabel('547360', "保存")
}]}
onClick={key => (key && this[key]())}
>

View File

@ -154,6 +154,7 @@ export default class Company extends React.Component {
company
} = this.props;
confirm({
width: '500px',
title: i18n.confirm.defaultTitle(),
content: this.getTransferForm(),
okText: i18n.button.ok(),
@ -163,7 +164,7 @@ export default class Company extends React.Component {
},
onCancel() {
return false;
},
}
});
}
@ -350,22 +351,22 @@ export default class Company extends React.Component {
<Menu.Item key="1" disabled={record.isUsed === 0 ? false : true} style={record.isUsed === 0 ? { display: 'block' } : { display: 'none' }}>
<a href='javascript:void(0);' onClick={() => {
_this.doDel(record.id)
}}>删除</a>
}}>{i18n.button.delete()}</a>
</Menu.Item>
<Menu.Item key="2">
<a href='javascript:void(0);' onClick={() => {
_this.select(record.id)
}}>联查部门</a>
}}>{i18n.button.joinDept()}</a>
</Menu.Item>
<Menu.Item key="3">
<a href='javascript:void(0);' onClick={() => {
_this.view(record.id)
}}>查看</a>
}}>{i18n.button.view()}</a>
</Menu.Item>
<Menu.Item key="4">
<a href='javascript:void(0);' onClick={() => {
_this.transfer(record.id)
}}>转移</a>
}}>{i18n.button.transfer()}</a>
</Menu.Item>
{/* <Menu.Item key="5">
<a href='javascript:void(0);' onClick={() => { _this.version(record) }}>另存为版本</a>
@ -541,7 +542,7 @@ export default class Company extends React.Component {
onChange(current) {
},
showTotal(total) {
return `${total}`
return `${i18n.label.total()} ${total} ${i18n.label.items()}`
}
};

View File

@ -98,12 +98,12 @@ export default class NewPopconfirm extends React.Component {
const a = form.getFormParams();
const buttons = [
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => {
save();this.setState({value:form.getFormParams().moveType})
}} disabled={loading}>{i18n.button.ok()}</Button>),
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => {
this.setState({value:form.getFormParams().moveType});onCancel()
}} disabled={loading}>{i18n.button.cancel()}</Button>)
];
save();this.setState({value:form.getFormParams().moveType})
}} disabled={loading}>{i18n.button.ok()}</Button>),
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => {
this.setState({value:form.getFormParams().moveType});onCancel()
}} disabled={loading}>{i18n.button.cancel()}</Button>)
];
return (
<WeaDialog ecId={`${this && this.props && this.props.ecId || ''}_WeaDialog@1txk5f`}
@ -112,18 +112,17 @@ this.setState({value:form.getFormParams().moveType});onCancel()
iconBgcolor="#217346"
visible={visible}
closable={true}
hasScroll={true}
onCancel={() => {
this.setState({value:"0"});onCancel()
}}
this.setState({value:"0"});onCancel()
}}
buttons={buttons}
style={{ width: width, height: height }}
style={{ width: width, height: height}}
>
{
loading ? <div className='hrm-loading-center-small'>
<Spin ecId={`${this && this.props && this.props.ecId || ''}_Spin@4ygl4a`} spinning={loading}></Spin>
</div>
: this.getForm()
: <div style={{padding:'20px',width:'100%',height:'100%'}}>{this.getForm()}</div>
}
</WeaDialog>
)

View File

@ -198,12 +198,13 @@ export default class Department extends React.Component {
let keys = id == undefined ? toJS(selectedRowKeys).toString() : id;
department.setIds(keys);
confirm({
width:'550px',
title: i18n.confirm.defaultTitle(),
content: this.getCopyForm(),
okText: i18n.button.ok(),
cancelText: i18n.button.cancel(),
onOk() {
department.copy()
department.copy();
},
onCancel() {
return false;
@ -396,32 +397,32 @@ export default class Department extends React.Component {
<Menu.Item key="0">
<a href='javascript:void(0);' onClick={() => {
_this.view(record.id)
}}>查看</a>
}}>{i18n.button.view()}</a>
</Menu.Item>
<Menu.Item key="1" disabled={record.isUsed === 0 ? false : true} style={record.isUsed === 0 ? { display: 'block' } : { display: 'none' }}>
<a href='javascript:void(0);' onClick={() => {
_this.doDel(record.id)
}}>删除</a>
}}>{i18n.button.delete()}</a>
</Menu.Item>
<Menu.Item key="2">
<a href='javascript:void(0);' onClick={() => {
_this.merge(record.id)
}}>合并</a>
}}>{i18n.button.merge()}</a>
</Menu.Item>
<Menu.Item key="3">
<a href='javascript:void(0);' onClick={() => {
_this.transfer(record.id)
}}>转移</a>
}}>{i18n.button.transfer()}</a>
</Menu.Item>
<Menu.Item key="4">
<a href='javascript:void(0);' onClick={() => {
_this.select(record.id)
}}>联查岗位</a>
}}>{i18n.button.associateJob()}</a>
</Menu.Item>
<Menu.Item key="5">
<a href='javascript:void(0);' onClick={() => {
_this.copy(record.id)
}}>复制</a>
}}>{i18n.button.copy()}</a>
</Menu.Item>
{/* <Menu.Item key="6">
<a href='javascript:void(0);' onClick={() => { _this.version(record) }}>另存为版本</a>
@ -653,7 +654,7 @@ export default class Department extends React.Component {
onChange(current) {
},
showTotal(total) {
return `${total}`
return `${i18n.label.total()} ${total} ${i18n.label.items()}`
}
};
@ -692,7 +693,7 @@ export default class Department extends React.Component {
}}
onSearchChange={val => this.onSearchChange(val)}
/>
<Spin size="large" spinning={exSpinning} tip="正在导出请稍候...." className="hrm-loading-center-small"/>
<Spin size="large" spinning={exSpinning} tip={getLabel(547647,'正在导出请稍候....')} className="hrm-loading-center-small"/>
{
init ? <div className='hrm-new-weatable-spin'>
<Spin ecId={`${this && this.props && this.props.ecId || ''}_Spin@4ygl4a`} spinning={init}></Spin>
@ -748,8 +749,8 @@ export default class Department extends React.Component {
form={form1}
isFormInit={form1.isFormInit}
loading={confirmLoading}
height={100}
width={320}
height={150}
width={650}
isMerge={isMerge}
defaultValue={"0"}
save={() => this.PopconfirmSave()}

View File

@ -245,7 +245,7 @@ export default class ManagerDetach extends React.Component {
} = this.props;
confirm({
title: i18n.confirm.defaultTitle(),
content: (checked == true) ? "确定启用组织管理分权吗" : "确定取消组织管理分权",
content: (checked == true) ? `${i18n.message.checkOnDetach()}` : `${i18n.message.checkOffDetach()}`,
okText: i18n.button.ok(),
cancelText: i18n.button.cancel(),
onOk() {
@ -387,7 +387,7 @@ export default class ManagerDetach extends React.Component {
onClick={key => this.handleMenuClick(key)}
>
<div style={{"width":"100%","height":"50px","lineHeight":"50px"}}>
<span style={{"marginLeft":"20px","fontWeight":"bold"}}>启用组织管理分权:</span>
<span style={{"marginLeft":"20px","fontWeight":"bold"}}>{i18n.label.enableDetach()}:</span>
<Switch style={{"marginLeft":"20px"}} checked={isDetach == "true" ? true : false} onChange={checked => this.doDetachSwitch(checked)} />
</div>
<WeaTop ecId={`${this && this.props && this.props.ecId || ''}_WeaTop@bj98s7`}

View File

@ -65,7 +65,7 @@ export default class QtxConfig extends React.Component {
let obj = {
key: item.menuFun,
icon: <i className={`${item.menuIcon}`} />,
content: item.menuName,
content: item.menuFun == 'save' ? getLabel('547360', "保存") : getLabel('547396', "单点登录"),
}
menus.push(obj);
})
@ -81,7 +81,9 @@ export default class QtxConfig extends React.Component {
let btns = [];
topMenu.map((item, i) => {
btns.push(<Button type='primary' onClick={() => { this[item.menuFun] && this[item.menuFun](); }}>{item.menuName}</Button>);
btns.push(<Button type='primary' onClick={() => {
this[item.menuFun] && this[item.menuFun]();
}}>{item.menuFun == 'save' ? getLabel('547360', "保存") : getLabel('547396', "单点登录")}</Button>);
});
return btns;
}
@ -111,14 +113,14 @@ export default class QtxConfig extends React.Component {
arr.push(<Col ecId={`${this && this.props && this.props.ecId || ''}_Col@4cc308@${index}`} offset={1}>
<div style={{ marginTop: 20 }}>
<WeaFormItem ecId={`${this && this.props && this.props.ecId || ''}_WeaFormItem@u6ex85@${index}`}
label={`${field.label}`}
label={getLabel('547394', "是否开启数据库配置")}
labelCol={{ span: `${field.labelcol}` }}
wrapperCol={{ span: `${field.fieldcol}` }}>
{<WeaSwitch ecId={`${this && this.props && this.props.ecId || ''}_WeaSwitch@p7d3td@${index}`} fieldConfig={field} form={configForm} formParams={formParams} />}
{<WeaHelpfulTip
style={{"marginLeft":"20px"}}
ecId={`${this && this.props && this.props.ecId || ""}_WeaHelpfulTip@4vdvfp@${index}`}
title="未启用的情况下,企通学配置信息将从qtx_sso_login.properties配置文件中读取" />}
title={getLabel(547634, "未启用的情况下,企通学配置信息将从qtx_sso_login.properties配置文件中读取")} />}
</WeaFormItem>
</div>
</Col>)
@ -139,26 +141,32 @@ export default class QtxConfig extends React.Component {
<div ref='page' style={{ height: '100%' }}>
<WeaRightMenu ecId={`${this && this.props && this.props.ecId || ''}_WeaRightMenu@k6oc4u`}
datas={this.getDropMenuDatas()}
onClick={key => { this[key] && this[key]() }}
onClick={key => {
this[key] && this[key]()
}}
>
<WeaTop ecId={`${this && this.props && this.props.ecId || ''}_WeaTop@bj98s7`}
title={"企通学配置自定义"}
title={getLabel(547393, "企通学配置自定义")}
icon={<i className='icon-coms-hrm' />}
iconBgcolor='#217346'
loading={true}
buttons={this.getTopMenuBtns()}
showDropIcon={true}
dropMenuDatas={this.getDropMenuDatas()}
onDropMenuClick={(key) => { this[key] && this[key]() }}
onDropMenuClick={(key) => {
this[key] && this[key]()
}}
>
<WeaSearchGroup ecId={`${this && this.props && this.props.ecId || ''}_WeaSearchGroup@ddy3vv`} needTigger={false} showGroup={true} title={getLabel(82751, "基础设置")}>
{this.getFormItems()}
</WeaSearchGroup>
<WeaSearchGroup ecId={`${this && this.props && this.props.ecId || ''}_WeaSearchGroup@s8pupj`} needTigger={false} showGroup={true} title={getLabel(-1, "数据库设置")}>
<WeaSearchGroup ecId={`${this && this.props && this.props.ecId || ''}_WeaSearchGroup@s8pupj`} needTigger={false} showGroup={true} title={getLabel(547395, "数据库设置")}>
<WeaTableEdit
ecId={`${this && this.props && this.props.ecId || ""}_WeaTableEdit@7rorir`}
ref={el => {this.tableEdit = el}}
ref={el => {
this.tableEdit = el
}}
draggable
deleteConfirm
showCopy={false}

View File

@ -67,7 +67,7 @@ export default class QuickSearch extends React.Component {
let obj = {
key: item.menuFun,
icon: <i className={`${item.menuIcon}`} />,
content: item.menuName,
content: getLabel('547360', "保存"),
}
menus.push(obj);
})
@ -83,7 +83,9 @@ export default class QuickSearch extends React.Component {
let btns = [];
topMenu.map((item, i) => {
btns.push(<Button type='primary' onClick={() => {this[item.menuFun] && this[item.menuFun]();}}>{item.menuName}</Button>);
btns.push(<Button type='primary' onClick={() => {
this[item.menuFun] && this[item.menuFun]();
}}>{getLabel('547360', "保存")}</Button>);
});
return btns;
}
@ -106,7 +108,7 @@ export default class QuickSearch extends React.Component {
arr.push(<Col ecId={`${this && this.props && this.props.ecId || ''}_Col@4cc308@${index}`} offset={1}>
<div style={{ marginTop: 20 }}>
<WeaFormItem ecId={`${this && this.props && this.props.ecId || ''}_WeaFormItem@u6ex85@${index}`}
label={`${field.label}`}
label={`${getLabel('547592', "快捷搜索条件")}`}
labelCol={{ span: `${field.labelcol}` }}
wrapperCol={{ span: `${field.fieldcol}` }}>
{<WeaSwitch ecId={`${this && this.props && this.props.ecId || ''}_WeaSwitch@p7d3td@${index}`} fieldConfig={field} form={quickSearchForm} formParams={formParams} />}
@ -134,7 +136,7 @@ export default class QuickSearch extends React.Component {
let { quickSearchData } = quickSearch;
let datas = quickSearchData.datas;
if(datas.length>=8){
message.error(getLabel('387795',"最多只能添加8项"));
message.error(getLabel('547622',"最多只能添加8项"));
return;
}
let time = new Date().getTime();
@ -146,8 +148,8 @@ export default class QuickSearch extends React.Component {
key: "new_" + time,
fieldid: fieldid,
customname: customname,
range: type == '1' ? getLabel('387636', "内容自定义") : getLabel('387637', "字段本身值"),
condition: type == '1' ? getLabel('68', "设置") : '',
range: type == '1' ? getLabel('547623', "内容自定义") : getLabel('547624', "字段本身值"),
condition: type == '1' ? getLabel('547625', "设置") : '',
orderid: 0,
type: type,
isdetailtable: isdetailtable
@ -161,12 +163,12 @@ export default class QuickSearch extends React.Component {
const { quickSearch } = this.props;
let { qcSelectedRowKeys } = quickSearch;
if (qcSelectedRowKeys.length <= 0) {
message.error(getLabel(22346, '请选择要删除的信息', 'label'));
message.error(getLabel(547626, '请选择要删除的信息'));
return;
}
const that = this;
Modal.confirm({
title: getLabel(83601, '您确认要删除选中的记录吗?'),
title: getLabel(547627, '您确认要删除选中的记录吗?'),
onOk() {
let { datas } = quickSearch.quickSearchData;
datas = toJS(datas);
@ -221,24 +223,28 @@ export default class QuickSearch extends React.Component {
<div ref='page' style={{ height: '100%' }}>
<WeaRightMenu ecId={`${this && this.props && this.props.ecId || ''}_WeaRightMenu@k6oc4u`}
datas={this.getDropMenuDatas()}
onClick={key => {this[key] && this[key]()}}
onClick={key => {
this[key] && this[key]()
}}
>
<WeaTop ecId={`${this && this.props && this.props.ecId || ''}_WeaTop@bj98s7`}
title={"快捷搜索自定义"}
title={i18n.label.quickSearchCustom()}
icon={<i className='icon-coms-hrm' />}
iconBgcolor='#217346'
loading={true}
buttons={this.getTopMenuBtns()}
showDropIcon={true}
dropMenuDatas={this.getDropMenuDatas()}
onDropMenuClick={(key) => {this[key] && this[key]()}}
onDropMenuClick={(key) => {
this[key] && this[key]()
}}
>
<WeaNewScroll ecId={`${this && this.props && this.props.ecId || ''}_WeaNewScroll@weabdm`}>
<WeaSearchGroup ecId={`${this && this.props && this.props.ecId || ''}_WeaSearchGroup@ddy3vv`} needTigger={false} showGroup={true} title={getLabel(82751, "基础设置")}>
{this.getFormItems()}
</WeaSearchGroup>
<WeaSearchGroup ecId={`${this && this.props && this.props.ecId || ''}_WeaSearchGroup@s8pupj`} needTigger={false} showGroup={true} title={getLabel(384165, "条件字段")}>
<WeaSearchGroup ecId={`${this && this.props && this.props.ecId || ''}_WeaSearchGroup@s8pupj`} needTigger={false} showGroup={true} title={getLabel(547593, "条件字段")}>
<WeaTab ecId={`${this && this.props && this.props.ecId || ''}_WeaTab@sxnhjh`}
keyParam="key" //主键
buttons={this.getSearchButton()}

View File

@ -117,7 +117,9 @@ export default class QuickSearchDetail extends React.Component {
const Height = $(".wea-dialog-body")[0] && $(".wea-dialog-body")[0].style.height;
const buttons = [
<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@va8uvk@save`} onClick={() => this.save()} type="primary">{getLabel(86, "保存")}</Button>,
<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@edy7ux@closeDialog`} onClick={() => { this.closeDialog() }}>{getLabel(309, "关闭")}</Button>
<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@edy7ux@closeDialog`} onClick={() => {
this.closeDialog()
}}>{getLabel(309, "关闭")}</Button>
]
return (
<WeaDialog ecId={`${this && this.props && this.props.ecId || ''}_WeaDialog@d0kgwh`} style={{ width: 800, height: 550 }}
@ -157,21 +159,21 @@ class QuickSearchTableEdit extends React.Component{
getColumns = () => {
let columnArray = [
{
title: getLabel(195, "名称"), dataIndex: "customname", key: "customname", width: "40%",
title: getLabel(547517, "名称"), dataIndex: "customname", key: "customname", width: "40%",
com: [{ label: '', type: 'INPUT', key: 'customname', viewAttr: 3, otherParams: { isBase64: true, inputType: "multilang" } }]
},
{
title: <div>
{getLabel(387588, "内容自定义条件")}&nbsp;
{getLabel(547379, "内容自定义条件")}&nbsp;
<WeaHelpfulTip ecId={`${this && this.props && this.props.ecId || ''}_WeaHelpfulTip@6znscx@condition`}
width = {196} //如果要自定义宽度,在这里设置
title={getLabel('526162','数值关系: 下限值 <= 数值 < 上限值') }
title={getLabel('547630','数值关系: 下限值 <= 数值 < 上限值') }
/>
</div>, dataIndex: "condition", key: "condition", width: "40%",
com: [{ label: '', type: 'SCOP', key: 'condition', viewAttr: 3 }]
},
{
title: getLabel(88, "顺序"), dataIndex: "orderid", key: "orderid", width: "20%",
title: getLabel(547631, "顺序"), dataIndex: "orderid", key: "orderid", width: "20%",
com: [{ label: '', type: 'INPUTNUMBER', key: 'orderid', viewAttr: 2, otherParams: { max: 999, step: 1 } }]
}
];

View File

@ -24,30 +24,30 @@ export default class QuickSearchTableEdit extends React.Component {
getColumns = () => {
let columnArray = [
{
title: getLabel(261, "字段"), dataIndex: "fieldid", key: "fieldid", width: "18%",
title: getLabel(547376, "字段"), dataIndex: "fieldid", key: "fieldid", width: "18%",
com: [{ label: '', type: 'SELECT', isLink: true, key: 'fieldid', options: [] }]
},
{
title: getLabel(195, "名称"), dataIndex: "customname", key: "customname", width: "18%",
title: getLabel(547517, "名称"), dataIndex: "customname", key: "customname", width: "18%",
com: [{
label: '', type: 'INPUT', key: 'customname', viewAttr: 2, otherParams: { isBase64: true, inputType: "multilang" }
}]
},
{
title: getLabel(389518, "查询范围"), dataIndex: "range", key: "range", width: "8%",
title: getLabel(547378, "查询范围"), dataIndex: "range", key: "range", width: "8%",
com: [{ label: '', type: 'INPUT', key: 'range', viewAttr: 1 }]
},
{
title: getLabel(387588, "内容自定义条件"), dataIndex: "condition", key: "condition", width: "15%",
title: getLabel(547379, "内容自定义条件"), dataIndex: "condition", key: "condition", width: "15%",
com: [{ label: '', type: 'BUTTON', key: 'condition', viewAttr: 1 }]
}, {
title: getLabel(21657, "显示模式"), dataIndex: "showmodel", key: "showmodel", width: "15%",
title: getLabel(547380, "显示模式"), dataIndex: "showmodel", key: "showmodel", width: "15%",
com: [{
label: '',
type: 'SELECT',
key: 'showmodel',
viewAttr: 1,
options: [ { key: '0', showname: getLabel(19852, '平铺') },]
options: [ { key: '0', showname: getLabel(547637, '平铺') },]
}]
}
];
@ -73,8 +73,8 @@ export default class QuickSearchTableEdit extends React.Component {
} else {
const { key, isLink = false, viewAttr = 2, type = 'INPUT', width, otherParams = {}, detailtype = 1, options = [] } = c;
const _type = type.toUpperCase();
record.range = record.type == '1' ? getLabel('387636', "内容自定义") : getLabel('387637', "字段本身值");
record.condition = record.type == '1' ? getLabel('68', "设置") : '';
record.range = record.type == '1' ? getLabel('547623', "内容自定义") : getLabel('547624', "字段本身值");
record.condition = record.type == '1' ? getLabel('547625', "设置") : '';
if (_type === 'INPUT') {
_com.push(<WeaInput ecId={`${this && this.props && this.props.ecId || ''}_WeaInput@gedh14@${idn}`}
style={{ minWidth: 60 }}

View File

@ -352,17 +352,17 @@ export default class Job extends React.Component {
<Menu.Item key="0">
<a href='javascript:void(0);' onClick={() => {
_this.view(record.id)
}}>查看</a>
}}>{i18n.button.view()}</a>
</Menu.Item>
<Menu.Item key="1">
<a href='javascript:void(0);' onClick={() => {
_this.doDel(record.id)
}}>删除</a>
}}>{i18n.button.delete()}</a>
</Menu.Item>
<Menu.Item key="2">
<a href='javascript:void(0);' onClick={() => {
_this.select(record.id)
}}>联查人员</a>
}}>{i18n.button.joinPerson()}</a>
</Menu.Item>
{/* <Menu.Item key="3">
<a href='javascript:void(0);' onClick={() => { _this.merge(record.id) }}>合并</a>
@ -601,7 +601,7 @@ export default class Job extends React.Component {
onChange(current) {
},
showTotal(total) {
return `${total}`
return `${i18n.label.total()} ${total} ${i18n.label.items()}`
}
};
@ -689,6 +689,7 @@ export default class Job extends React.Component {
icon='icon-coms-hrm'
iconBgcolor='#217346'
title={"添加岗位"}
hasScroll={true}
callback={
datas => {
const {

View File

@ -42,7 +42,6 @@ export default class LogView extends React.Component {
this.state = ({
height: 502,
width: 1075,
dialogTitle: '日志查看',
showSearchAd: false,
//**** */
detailDialogTitle: "",
@ -81,7 +80,7 @@ export default class LogView extends React.Component {
c.render = function (text, record) {
return <a href='javascript:void(0);' className="common" onClick={() => {
_this.doView(record)
}}>查看</a>
}}>{i18n.label.view()}</a>
}
};
})
@ -161,12 +160,12 @@ export default class LogView extends React.Component {
} = this.props, {
tableStore, conditionNum
} = logViewStore, {
height, dialogTitle, width, showSearchAd, detailDialogTitle, detailVisible,record
height, width, showSearchAd, detailDialogTitle, detailVisible,record
} = this.state;
return (
<div>
<WeaDialog ecId={`${this && this.props && this.props.ecId || ''}_WeaDialog@1txk5f`}
title={dialogTitle}
title={i18n.label.logView()}
icon="icon-coms-currency"
iconBgcolor="#217346"
visible={visible}
@ -212,7 +211,7 @@ export default class LogView extends React.Component {
<div className='content' style={{ "padding": "20px","height": "100%" }}>
<div style={{ "height": "40%","overflow-x": "auto"}} dangerouslySetInnerHTML={{ __html: record.message }} ></div>
{/* <WeaProgress percent={100} strokeColor="#217346" /> */}
<div style={{"marginTop":"20px","fontSize":"20px","color":"#217346"}}>原始参数查看</div>
<div style={{"marginTop":"20px","fontSize":"20px","color":"#217346"}}>{i18n.label.voParameters()}</div>
<div dangerouslySetInnerHTML={{ __html: record.params_str }} style={{"overflow-x": "auto","height":"50%","marginTop":"20px"}}></div>
</div>

View File

@ -9,7 +9,8 @@ import {
import {
WeaTop,
WeaAlertPage,
WeaBrowser
WeaBrowser,
WeaLocaleProvider
} from 'ecCom'
import {
Spin,
@ -23,6 +24,7 @@ import { addContentPath } from '../../util/index.js';
import StepDialog from './stepDialog';
import { renderNoright } from '../../util';
const getLabel = WeaLocaleProvider.getLabel;
@inject("newImport")
@ -30,10 +32,7 @@ import { renderNoright } from '../../util';
export default class newImport extends React.Component {
constructor(props) {
super(props);
this.state = ({
title: '数据导入',
})
}
componentDidMount() {
@ -53,11 +52,52 @@ export default class newImport extends React.Component {
} = this.props, {
isMouseOver,
curIndex,
cardConfig,
setMouseStatus,
} = newImport;
let arr = [];
const cardConfig = [
{
"subTitle": getLabel(547211,'分部设置'),
"bgColor": "#92B75B",
"icon": "icon-coms-Department-number",
"title": getLabel(547332,'分部'),
"linkName": getLabel(547207,'分部导入'),
"url": "/spa/organization/static/index.html#/main/organization/company"
},
{
"subTitle": getLabel(547212,'部门设置'),
"bgColor": "#92B75B",
"icon": "icon-coms-Department-number",
"title": getLabel(547331,'部门'),
"linkName": getLabel(547208,'部门导入'),
"url": "/spa/organization/static/index.html#/main/organization/department"
},
// {
// "subTitle": "岗位设置",
// "bgColor": "#49B2FE",
// "icon": "icon-coms-hrm",
// "title": "岗位",
// "linkName": "岗位体系导入",
// "url": "/spa/organization/static/index.html#/main/organization/job"
// },
{
"subTitle": getLabel(547213,'组织维护'),
"bgColor": "#51A39A",
"icon": "icon-coms-crm",
"title": getLabel(547205,'人员'),
"linkName": getLabel(547209,'人员导入'),
"url": "/spa/organization/static/index.html#/main/organization/resource"
},
{
"subTitle": getLabel(547214,'等级设置'),
"bgColor": "rgb(230, 168, 69)",
"icon": "icon-portal-kpi-o",
"title": getLabel(547210,'职等职级导入'),
"linkName": getLabel(547206,'职等职级'),
"url": "/spa/organization/static/index.html#/main/organization/rankscheme"
},
]
cardConfig.map((c, index) => {
arr.push(<div className='hrm-card-out' style={(index == 0 || index == 4) ? { marginLeft: 0 } : {}} onMouseEnter={() => setMouseStatus(index, true)} onMouseLeave={() => setMouseStatus(index, false)}>
@ -129,9 +169,7 @@ export default class newImport extends React.Component {
} = this.props, {
visible,
hasRight
} = newImport, {
title,
} = this.state;
} = newImport;
if (hasRight === false) {
return renderNoright();
@ -139,7 +177,7 @@ export default class newImport extends React.Component {
return (
hasRight && <WeaTop ecId={`${this && this.props && this.props.ecId || ''}_WeaTop@sp0zb8`}
title={title}
title={i18n.label.dataImport()}
icon={<i className='icon-coms-hrm' />}
iconBgcolor='#217346'
loading={true}

View File

@ -6,7 +6,8 @@ import {
WeaSelect,
WeaUpload,
WeaDialog,
WeaInput
WeaInput,
WeaLocaleProvider
} from 'ecCom'
import {
Spin,
@ -33,11 +34,11 @@ import {
import { addContentPath } from '../../util/index.js'
import { toJS } from 'mobx';
const WeaTable = WeaTableNew.WeaTable;
const getLabel = WeaLocaleProvider.getLabel;
@inject("newImport")
@observer
export default class StepDialog extends React.Component {
export default class StepContent extends React.Component {
constructor(props) {
super(props);
this.state = {
@ -239,7 +240,7 @@ export default class StepDialog extends React.Component {
{
current == 0 &&
<div>
<p style={{"color":"red","fontSize":"15px"}}>注意:右侧列表默认加载的为必填字段!</p>
<p style={{"color":"red","fontSize":"15px"}}>{getLabel(547646,'注意:右侧列表默认加载的为必填字段!')}</p>
<WeaTransfer
data={toJS(data)}
selectedKeys={toJS(selectedKeys)}
@ -275,7 +276,7 @@ export default class StepDialog extends React.Component {
/>
}
<WeaDialog
title="导入进度"
title={i18n.label.importProgress()}
onCancel={() => newImport.pvisable = false}
visible={pvisable}
style={{ width: 300, height: 50 }}

View File

@ -2,7 +2,8 @@ import {
WeaNewScroll,
WeaSearchGroup,
WeaMoreButton,
WeaDialog
WeaDialog,
WeaLocaleProvider
} from 'ecCom'
import {
inject,
@ -27,6 +28,7 @@ import {
const Step = Steps.Step;
import StepContent from './stepContent';
import "../../style/common.less";
const getLabel = WeaLocaleProvider.getLabel;
@inject("newImport")
@observer
@ -36,7 +38,7 @@ export default class StepDialog extends React.Component {
this.state = {
width: 800,
height: 600,
title: '数据导入',
title: i18n.label.dataImport(),
}
}
@ -72,10 +74,17 @@ export default class StepDialog extends React.Component {
height,
title
} = this.state;
const buttons = [
((current === 0 || current === steps.length - 1) ? '' : <Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => this.up()}>上一步</Button>),
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => this.next()}>{current === steps.length - 1 ? '关闭' : i18n.button.nextStep()}</Button>),
((current === 0 || current === steps.length - 1) ? '' : <Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => this.up()}>{getLabel(547218,'上一步')}</Button>),
(<Button ecId={`${this && this.props && this.props.ecId || ''}_Button@jd6baw`} type="primary" onClick={() => this.next()}>{current === steps.length - 1 ? i18n.button.close() : i18n.button.nextStep()}</Button>),
];
const labelSteps = [
{ title: `${getLabel(547216,'设置导入字段')}`},
{ title: `${getLabel(547217,'获取导入模板')}`},
{ title: `${getLabel(547221,'导入结果')}`}
];
return (
<WeaDialog ecId={`${this && this.props && this.props.ecId || ''}_WeaDialog@1txk5f`}
@ -93,7 +102,7 @@ export default class StepDialog extends React.Component {
>
<div style={{ marginTop: 24 }}>
<Steps current={current}>
{steps.map((s, i) => <Step key={i} title={s.title} description={s.description} />)}
{labelSteps.map((s, i) => <Step key={i} title={s.title} description={s.description} />)}
</Steps>
</div>
<div style={{ padding: 24 }}>

View File

@ -401,7 +401,7 @@ export default class JobGrade extends React.Component {
const treeCom = (
hasRight && <WeaLeftTree ecId={`${this && this.props && this.props.ecId || ''}_WeaLeftTree@ifgbi1`}
datas={data}
searchLabel={"等级方案"}
searchLabel={i18n.label.schemeName()}
onSelect={onSelectedTreeNode}
selectedKeys={selectedKeys}
onExpand={onExpand}

View File

@ -395,7 +395,7 @@ export default class JobLevel extends React.Component {
const treeCom = (
<WeaLeftTree ecId={`${this && this.props && this.props.ecId || ''}_WeaLeftTree@ifgbi1`}
datas={data}
searchLabel={"等级方案"}
searchLabel={i18n.label.schemeName()}
onSelect={onSelectedTreeNode}
selectedKeys={selectedKeys}
onExpand={onExpand}

View File

@ -2,7 +2,7 @@ import React, {Component} from 'react';
import {observer} from 'mobx-react';
import {WeaRadioGroup, WeaLocaleProvider} from 'ecCom';
import classnames from 'classnames';
const getLabel = WeaLocaleProvider.getLabel;
@observer
export default class GroupList extends Component{
@ -18,7 +18,7 @@ export default class GroupList extends Component{
'icon-coms-up-001': showRadioGroup
})
const label = showRadioGroup ? '隐藏条件' : '显示条件';
const label = showRadioGroup ? getLabel(547233,'隐藏条件') : getLabel(547232,'显示条件');
return (
<div ref={dom => setDomRef(dom, 'tab')}>

View File

@ -10,7 +10,8 @@ import {
WeaFormItem,
WeaRightMenu,
WeaLeftRightLayout,
WeaOrgTree
WeaOrgTree,
WeaLocaleProvider
} from 'ecCom'
import {
Row,
@ -35,11 +36,13 @@ import SearchPanelDialog from '../SearchPanelDialog';
import { renderNoright } from '../../util';
import { exportWord } from '../mhtmlToWord'
const Option = Select.Option;
const toJS = mobx.toJS;
const confirm = Modal.confirm;
const getLabel = WeaLocaleProvider.getLabel;
@inject('personnelResume')
@observer
@ -165,15 +168,15 @@ export default class PersonnelResume extends React.Component {
btns.push(<Select showSearch
style={{ width: 115 }}
placeholder="请选择模板"
defaultValue="人员简历模板"
placeholder={getLabel(547660,'请选择模板')}
defaultValue={getLabel(547252,'人员简历模板')}
optionFilterProp="children"
notFoundContent="无法找到"
size="large"
onChange={this.handleChange()}
>
<Option value="1">人员简历模板</Option>
<Option value="2">人员晋升模板</Option>
<Option value="1">{getLabel(547252,'人员简历模板')}</Option>
<Option value="2">{getLabel(547253,'人员晋升模板')}</Option>
</Select>)
topMenu.map((item, i) => {
@ -255,7 +258,7 @@ export default class PersonnelResume extends React.Component {
resumeList
} = personnelResume;
exportWord({
filename:`人员简历-${resumeList.lastName}`,
filename:`${getLabel(547238,'人员简历')}-${resumeList.lastName}`,
selector:"#personnel-resume",
style:`.title {
font-size: 18px;

View File

@ -11,7 +11,8 @@ import {
WeaRightMenu,
WeaAlertPage,
WeaNewScrollPagination,
WeaSlideModal
WeaSlideModal,
WeaLocaleProvider
} from 'ecCom'
import {
Row,
@ -43,6 +44,7 @@ import isEmpty from 'lodash/isEmpty'
const toJS = mobx.toJS;
const confirm = Modal.confirm;
const getLabel = WeaLocaleProvider.getLabel;
@inject('resourceCard')
@observer
@ -253,9 +255,9 @@ export default class ResourceCard extends React.Component {
<span className='value'>{data.user.phone}</span>
</div>
<div style={{ marginTop: '10px' }}>
<span className='label'>账号类型:</span>
<span className='label'>{getLabel(547239,'账号类型')}:</span>
<span className='value'>{data.user.accountType}</span>
<span className='label'>状态:</span>
<span className='label'>{getLabel(547240,'状态')}:</span>
<span className='value'>{data.user.status}</span>
</div>
</div>
@ -274,7 +276,7 @@ export default class ResourceCard extends React.Component {
{
data.buttons.length > 3 ? <Dropdown overlay={menu}>
<Button style={{ marginLeft: 8 }} className='item'>
更多操作 <Icon type="down" />
{getLabel(547658,'更多操作')} <Icon type="down" />
</Button>
</Dropdown> : ''
}
@ -288,7 +290,7 @@ export default class ResourceCard extends React.Component {
}}>
<img src="/hrm/hrm_e9/image/workflow.png" alt="" />
<div>
<p>流程总数</p>
<p>{getLabel(547241,'流程总数')}</p>
<p>{data.statistical.workflowCount}</p>
</div>
</Col>
@ -297,7 +299,7 @@ export default class ResourceCard extends React.Component {
}}>
<img src="/hrm/hrm_e9/image/doc.png" alt="" />
<div >
<p>文档总数</p>
<p>{getLabel(547243,'文档总数')}</p>
<p>{data.statistical.docCount}</p>
</div>
</Col>
@ -306,7 +308,7 @@ export default class ResourceCard extends React.Component {
}}>
<img src="/hrm/hrm_e9/image/custom.png" alt="" />
<div>
<p>我的客户</p>
<p>{getLabel(547244,'我的客户')}</p>
<p>{data.statistical.cusCount}</p>
</div>
</Col>
@ -315,7 +317,7 @@ export default class ResourceCard extends React.Component {
}}>
<img src="/hrm/hrm_e9/image/cowork.png" alt="" />
<div>
<p>我的协作</p>
<p>{getLabel(547245,'我的协作')}</p>
<p>{data.statistical.collaborationCount}</p>
</div>
</Col>
@ -324,7 +326,7 @@ export default class ResourceCard extends React.Component {
}}>
<img src="/hrm/hrm_e9/image/weibo.png" alt="" />
<div>
<p>微博总数</p>
<p>{getLabel(547246,'我的协作')}</p>
<p>{data.statistical.weiboCount}</p>
</div>
</Col>
@ -361,7 +363,7 @@ export default class ResourceCard extends React.Component {
height={100}
direction={'right'}
measure={'%'}
content={!isEmpty(versionList) ? <VersionsSlider versionList={versionList} handleChange={val => resourceCard.changeVersion(val)}/> : <div style={{"textAlign":"center","color":"red","fontSize":"20px","marginTop": "50px"}}> 暂无历史版本 </div>}
content={!isEmpty(versionList) ? <VersionsSlider versionList={versionList} handleChange={val => resourceCard.changeVersion(val)}/> : <div style={{"textAlign":"center","color":"red","fontSize":"20px","marginTop": "50px"}}> {getLabel(547659,'暂无历史版本')} </div>}
onClose={this.onClose}
onAnimationEnd={() => console.log('onAnimationEnd')} />
</WeaNewScrollPagination>

View File

@ -4,7 +4,8 @@ import {
import {
WeaDialog,
WeaFormItem,
WeaInput
WeaInput,
WeaLocaleProvider
} from 'ecCom';
import Customization from './Customization';
import {
@ -15,6 +16,7 @@ import {
i18n
} from '../../public/i18n';
const confirm = Modal.confirm;
const getLabel = WeaLocaleProvider.getLabel;
@observer
export default class SearchCustomDialog extends React.Component {
@ -31,10 +33,10 @@ export default class SearchCustomDialog extends React.Component {
} = store;
confirm({
title: "存为模板",
title: getLabel(547548,'存为模板'),
content:
<WeaFormItem ecId={`${this && this.props && this.props.ecId || ''}_WeaFormItem@62kt85`}
label="列定制模板名称"
label= {getLabel(547581,'列定制模板名称')}
labelCol={{ span: 10 }}
wrapperCol={{ span: 14 }}>
<WeaInput ecId={`${this && this.props && this.props.ecId || ''}_WeaInput@j9bmvw`} viewAttr="3" value={customTemplateName} {...window.inputType} onChange={v => store.customTemplateName = v} />
@ -60,9 +62,9 @@ export default class SearchCustomDialog extends React.Component {
searchTemplateName
} = store;
const buttons = [
<Button type='primary' onClick={()=> search ? store.saveHrmSearchUserDefine() : store.saveCustomDefine()}>保存</Button>,
<Button type='primary' onClick={()=> this.saveCustomTemplate()}>存为模板</Button>,
<Button type='primary' onClick={()=> store.getEditTable()}>模板管理</Button>
<Button type='primary' onClick={()=> search ? store.saveHrmSearchUserDefine() : store.saveCustomDefine()}>{getLabel(547360,'保存')}</Button>,
<Button type='primary' onClick={()=> this.saveCustomTemplate()}>{getLabel(547548,'存为模板')}</Button>,
<Button type='primary' onClick={()=> store.getEditTable()}>{getLabel(547582,'模板管理')}</Button>
]
@ -72,7 +74,7 @@ export default class SearchCustomDialog extends React.Component {
{...searchDialog}
buttons={search ? buttons.slice(0, 1) : buttons}
initLoadCss
title={search ? '常用条件定制':'列定制'}
title={search ? getLabel(547549,'常用条件定制') : getLabel(547136,'显示列定制')}
>
<Customization store={store}/>
</WeaDialog>

View File

@ -14,7 +14,8 @@ import {
WeaOrgTree,
WeaDropdown,
WeaSelect,
WeaSearchGroup
WeaSearchGroup,
WeaLocaleProvider
} from 'ecCom'
import {
Row,
@ -47,6 +48,7 @@ const toJS = mobx.toJS;
const confirm = Modal.confirm;
const WeaTable = WeaTableNew.WeaTable;
const { ButtonSelect } = WeaDropdown;
const getLabel = WeaLocaleProvider.getLabel;
@inject('resource')
@inject('datasImport')
@ -181,11 +183,11 @@ export default class Resource extends React.Component {
const datas = [
{
key: "1", show: (<span>全部导出</span>), text: "", selected: true
key: "1", show: (<span>{i18n.button.allExport()}</span>), text: `${i18n.button.allExport()}`, selected: true
},
{
key: "2", show: (<span>批量导出</span>), text: ""
key: "2", show: (<span>{i18n.button.batchExport()}</span>), text: `${i18n.button.batchExport()}`
}
];
btns.push(<ButtonSelect
@ -196,7 +198,7 @@ export default class Resource extends React.Component {
resource.export();
}
if (key == "2") {
tableStore.selectedRowKeysAllPages.length > 0 ? resource.export() : message.error("请选择需要导出的数据")
tableStore.selectedRowKeysAllPages.length > 0 ? resource.export() : message.error(`${i18n.message.checkExport()}`)
}
}}
menuOnClick={(key, e) => key == '1' ? tableStore.selectedRowKeysAllPages = [] : ''}
@ -237,15 +239,15 @@ export default class Resource extends React.Component {
window.open("/spa/hrm/index_mobx.html#/main/hrm/add", "_blank")
}
import() {
const {
datasImport
} = this.props;
datasImport.visible = true;
datasImport.title = i18n.button.importResource();
datasImport.importType = 'resource';
datasImport.getImportForm();
}
// import() {
// const {
// datasImport
// } = this.props;
// datasImport.visible = true;
// datasImport.title = i18n.button.importResource();
// datasImport.importType = 'resource';
// datasImport.getImportForm();
// }
getDropMenuDatas() {
const {
@ -300,10 +302,10 @@ export default class Resource extends React.Component {
} = resource;
confirm({
title: "存为模板",
title: getLabel(547548,'存为模板'),
content:
<WeaFormItem ecId={`${this && this.props && this.props.ecId || ''}_WeaFormItem@62kt85`}
label="搜索模板名称"
label= {getLabel(547654,'搜索模板名称')}
labelCol={{ span: 10 }}
wrapperCol={{ span: 14 }}>
<WeaInput ecId={`${this && this.props && this.props.ecId || ''}_WeaInput@j9bmvw`} viewAttr="3" value={searchTemplateName} {...window.inputType} onChange={v => resource.searchTemplateName = v} />
@ -441,7 +443,7 @@ export default class Resource extends React.Component {
arr.push(<Row style={{ marginTop: 20 }}>
<Col offset={1} span={2}><span style={{ "lineHeight": "30px", "color": "red" }}>选择过滤模板</span></Col>
<Col offset={1} span={2}><span style={{ "lineHeight": "30px", "color": "red" }}>{getLabel(547655,'模板选择')}</span></Col>
<Col span={6} offset={1}>
<WeaSelect
style={{ width: "100%" }}
@ -452,7 +454,7 @@ export default class Resource extends React.Component {
}}
/>
</Col>
<Col offset={1} span={2}><Button onClick={() => resource.deleteSearchTemplate()}>删除模板</Button></Col>
<Col offset={1} span={2}><Button onClick={() => resource.deleteSearchTemplate()}>{getLabel(547656,'删除模板 ')}</Button></Col>
</Row>)
isFormInit && defaultCondition.map((c, i) => {
@ -533,17 +535,19 @@ export default class Resource extends React.Component {
searchType={['base', 'advanced']}
showSearchAd={isPanelShow}
searchsBaseValue={this.isEmptyObject(form2.getFormParams()) ? lastName : form2.getFormParams().lastName}
searchsBasePlaceHolder='请输入姓名'
searchsBasePlaceHolder=''
setShowSearchAd={bool => store.setPanelStatus(bool)}
hideSearchAd={() => store.setPanelStatus(false)}
searchsAd={isPanelShow ? this.getPanelComponents() : <div></div>}
advanceHeight={Math.ceil(conditionNum / 2) * 52 + 20}
hasMask={false}
buttonsAd={this.getTabBtn()}
onSearch={() => {store.hideRadioGroup();store.getTableInfo();}}
onSearch={() => {
store.hideRadioGroup();store.getTableInfo();
}}
onSearchChange={val => this.onSearchChange(val)}
/>
<Spin size="large" spinning={exSpinning} tip="正在导出请稍候...." className="hrm-loading-center-small"/>
<Spin size="large" spinning={exSpinning} tip={getLabel(547647,'正在导出请稍候....')} className="hrm-loading-center-small"/>
{enable && <GroupList ecId={`${this && this.props && this.props.ecId || ''}_GroupList@2le78y`} store={store} />}
<WeaTable ecId={`${this && this.props && this.props.ecId || ''}_WeaTable@pgmg3x`}
comsWeaTableStore={tableStore}

View File

@ -10,7 +10,8 @@ import {
WeaFormItem,
WeaRightMenu,
WeaLeftRightLayout,
WeaOrgTree
WeaOrgTree,
WeaLocaleProvider
} from 'ecCom'
import {
Row,
@ -39,7 +40,7 @@ import SelectTag from '../SelectTag'
const toJS = mobx.toJS;
const confirm = Modal.confirm;
const WeaTable = WeaTableNew.WeaTable;
const getLabel = WeaLocaleProvider.getLabel;
@inject('staff')
@inject('importDialog')
@ -247,7 +248,7 @@ export default class Staff extends React.Component {
};
if (c.dataIndex == 'staff_desc') {
c.render = function (text, record) {
return <span>{`编制数:${record.staff_num} / 在编数:${record.permanent_num} / 冻结数:${record.freeze_num}/ 状态:${record.lack_statusspan}`}</span>
return <span>{`${getLabel(547345,'编制数')}: ${record.staff_num} / ${getLabel(547346,'在编数')}: ${record.permanent_num} / ${getLabel(547347,'冻结数')}: ${record.freeze_num}/ ${getLabel(547240,'状态')} :${record.lack_statusspan}`}</span>
}
};
})

View File

@ -2,6 +2,7 @@ import React from "react";
import Route from "react-router/lib/Route";
import { message } from "antd";
import { WeaLocaleProvider } from "ecCom";
import { Provider } from 'mobx-react';
import Home from "./components/Home";
import RankScheme from "./components/postionrank/RankScheme";
import JobLevel from "./components/postionrank/JobLevel";

View File

@ -2,7 +2,7 @@ import {
WeaLocaleProvider
} from 'ecCom';
const getLabel = WeaLocaleProvider.getLabel;
//gai
export const i18n = {
module: {
elseSetting: () => getLabel(20824, '其他设置'),
@ -123,55 +123,78 @@ export const i18n = {
sequenceName: () => getLabel(547147, '岗位序列'),
newSequence: () => getLabel(547148, '新建岗位序列'),
editSequence: () => getLabel(547149, '编辑岗位序列'),
groupInfo: () => getLabel(385936, '总部'),
editGroup: () => getLabel(386247, '编辑总部'),
officeName: () => getLabel(385936, '职务管理'),
groupInfo: () => getLabel(547169, '总部'),
editGroup: () => getLabel(547170, '编辑总部'),
//页面未使用
officeName: () => getLabel(547527, '职务管理'),
newOfficeName: () => getLabel(386246, '新建职务信息'),
editOfficeName: () => getLabel(386247, '编辑职务信息'),
newOfficeClassifyName: () => getLabel(386246, '新建职务分类'),
editOfficeClassifyName: () => getLabel(386246, '编辑职务分类'),
branchNumSetting: () => getLabel(386246, '分部编号设置'),
deptNumSetting: () => getLabel(386246, '部门编号设置'),
postNumSetting: () => getLabel(386246, '岗位编号设置'),
userNumSetting: () => getLabel(386246, '人员编号设置'),
companyName: () => getLabel(385937, '分部'),
newCompany: () => getLabel(385937, '新增分部'),
viewCompany: () => getLabel(385937, '分部信息'),
updateCompany: () => getLabel(385937, '修改分部信息'),
staffSchemeName: () => getLabel(385936, '编制方案'),
newStaffScheme: () => getLabel(386246, '新建编制方案'),
ediStaffScheme: () => getLabel(386247, '编辑编制方案'),
staffName: () => getLabel(385936, '编制上报'),
newStaff: () => getLabel(386246, '新建编制'),
editStaff: () => getLabel(386247, '编辑编制'),
changeStaff: () => getLabel(386247, '编制变更'),
jobName: () => getLabel(385936, '岗位'),
newJob: () => getLabel(386246, '新增岗位'),
editJobInfo: () => getLabel(386247, '修改岗位信息'),
jobsInfo: () => getLabel(386247, '岗位信息'),
branchNumSetting: () => getLabel(538759, '分部编号设置'),
deptNumSetting: () => getLabel(538762, '部门编号设置'),
postNumSetting: () => getLabel(538763, '岗位编号设置'),
userNumSetting: () => getLabel(538764, '人员编号设置'),
companyName: () => getLabel(547178, '分部管理'),
newCompany: () => getLabel(547179, '新增分部'),
viewCompany: () => getLabel(547180, '分部信息'),
updateCompany: () => getLabel(547527, '修改分部信息'),
staffSchemeName: () => getLabel(547459, '编制方案'),
newStaffScheme: () => getLabel(547528, '新建编制方案'),
ediStaffScheme: () => getLabel(547529, '编辑编制方案'),
staffName: () => getLabel(547342, '编制上报'),
newStaff: () => getLabel(547530, '新建编制信息'),
editStaff: () => getLabel(547531, '编辑编制信息'),
changeStaff: () => getLabel(547532, '编制信息变更'),
jobName: () => getLabel(547198, '岗位管理'),
newJob: () => getLabel(547199, '新增岗位'),
editJobInfo: () => getLabel(547200, '修改岗位信息'),
jobsInfo: () => getLabel(547201, '岗位信息'),
deptManage: () => getLabel(547116, '部门管理'),
newDept: () => getLabel(386246, '新增部门'),
mergeDept:()=> getLabel(386246, '合并部门'),
transferDept:()=> getLabel(386246, '转移部门'),
selectDept:()=> getLabel(386246, '联查部门'),
editDept:()=> getLabel(386246, '修改部门信息'),
typeName: () => getLabel(129927, '类型名称'),
ResourceName: () => getLabel(385936, '人员'),
newPeople: () => getLabel(386246, '新建人员'),
resourceMange: () => getLabel(386246, '花名册'),
resourceBasicInfo: () => getLabel(386246, '人员信息'),
newResourceBasicInfo: () => getLabel(386246, '新建人员资料'),
newResourceBasicType: () => getLabel(386246, '新建人员资料类型'),
editResourceBasicInfo: () => getLabel(386246, '编辑人员资料'),
editResourceBasicType: () => getLabel(386246, '编辑人员资料类型'),
forbidden: () => getLabel(531114, '已封存'),
mangerDetachName: () => getLabel(385936, '模块管理分权'),
newManagerDetach: () => getLabel(386246, '新建模块管理分权'),
editManagerDetach: () => getLabel(386247, '编辑模块管理分权'),
columnPermission:() => getLabel(386247, '栏目权限管理'),
columnCustom:() => getLabel(386247, '栏目功能定义'),
cardColumnSet:() => getLabel(386247, '人员卡片栏目设置'),
personnelResume:() => getLabel(386247, '人员简历'),
newDept: () => getLabel(547533, '新增部门'),
mergeDept:()=> getLabel(547534, '合并部门'),
transferDept:()=> getLabel(547535, '转移部门'),
selectDept:()=> getLabel(547536, '联查部门'),
editDept:()=> getLabel(547537, '修改部门信息'),
typeName: () => getLabel(547372, '类型名称'),
ResourceName: () => getLabel(547205, '人员'),
newPeople: () => getLabel(547443, '新建人员'),
resourceMange: () => getLabel(547538, '花名册'),
resourceBasicInfo: () => getLabel(547539, '人员信息'),
newResourceBasicInfo: () => getLabel(547540, '新建人员资料'),
newResourceBasicType: () => getLabel(547541, '新建人员资料类型'),
editResourceBasicInfo: () => getLabel(547542, '编辑人员资料'),
editResourceBasicType: () => getLabel(547543, '编辑人员资料类型'),
forbidden: () => getLabel(547489, '已封存'),
mangerDetachName: () => getLabel(547402, '模块管理分权'),
newManagerDetach: () => getLabel(547404, '新建模块管理分权'),
editManagerDetach: () => getLabel(547544, '编辑模块管理分权'),
columnPermission:() => getLabel(547384, '栏目权限管理'),
columnCustom:() => getLabel(547385, '栏目功能定义'),
cardColumnSet:() => getLabel(547381, '人员卡片栏目设置'),
personnelResume:() => getLabel(547238, '人员简历'),
logView:() => getLabel(547576, '日志查看'),
view:() => getLabel(547490, '查看'),
voParameters:() => getLabel(547577, '原始参数查看'),
dataImport:() => getLabel(547215, '数据导入'),
importResult:() => getLabel(547221, '导入结果'),
startImport:() => getLabel(547583, '开始导入'),
importProgress:() => getLabel(547222, '导入进度'),
previousStep:() => getLabel(547218, '上一步'),
uploadFiles:() => getLabel(547227, '上传文件'),
importTip1:() => getLabel(547229, '点击或将文件拖拽到此区域上传'),
importTip2:() => getLabel(547230, '支持单个或批量上传,严禁上传公司内部资料及其他违禁文件'),
total:() => getLabel(547523, '共'),
items:() => getLabel(547524, '条'),
addjob:() => getLabel(547610, '添加岗位'),
enableDetach:() => getLabel(547403, '启用组织管理分权'),
quickSearchCustom:() => getLabel(547373, '快捷搜索自定义'),
quickSearch:() => getLabel(547374, '快捷搜索条件'),
authorizationGroup: () => getLabel(492, '权限组'),
allAuthorization: () => getLabel(33363, '全部权限'),
@ -258,7 +281,6 @@ export const i18n = {
modifyMatrix: () => getLabel(383963, '编辑矩阵'),
matrixMaintenance: () => getLabel(383964, '矩阵维护者'),
orderId: () => getLabel(15486, '序号'),
total: () => getLabel(18609, '共'),
dataSourceCount: () => getLabel(30690, '条数据'),
screen: () => getLabel(126129, '筛选'),
screenInfo: () => getLabel(385323, '筛选此列数据'),
@ -655,7 +677,7 @@ export const i18n = {
duties: () => getLabel(15855, "所属职务"),
postAbbreviation: () => getLabel(382413, "岗位简称"),
viewRefs: () => getLabel('33364', "查看引用"),
view: () => getLabel('33564', "查看"),
addRoleRefs: () => getLabel('387114', "添加角色引用"),
multiDeleteRefs: () => getLabel('387113', "批量删除引用"),
newSysadmin: () => getLabel(387059, '新建管理员'),
@ -868,13 +890,25 @@ export const i18n = {
'531692': () => getLabel('531692', '说明:总部节点的人员编号设置主要用于新建分部时将总部的编号设置自动复制给新分部,不用于全局的开关控制,实际根据各分部的开关独立控制。'),
},
button: {
back: () => getLabel(1290, '返回'),
createType: () => getLabel(30131, '新建类型'),
editTypeInfo: () => getLabel(32732, '编辑类型'),
nextStep:() => getLabel(30131, '下一步'),
version:() => getLabel(30131, '查看历史版本'),
saveTemplate:() => getLabel(30131, '存为模板'),
conditionSet:() => getLabel(30131, '常用条件定制'),
back: () => getLabel(547545, '返回'),
createType: () => getLabel(547367, '新建类型'),
editTypeInfo: () => getLabel(547369, '编辑类型'),
nextStep:() => getLabel(547219, '下一步'),
version:() => getLabel(547546, '查看历史版本'),
saveTemplate:() => getLabel(547548, '存为模板'),
conditionSet:() => getLabel(547549, '常用条件定制'),
delete: () => getLabel(547492, '删除'),
joinDept: () => getLabel(547536, '联查部门'),
view: () => getLabel(547490, '查看'),
transfer: () => getLabel(547594, '转移'),
merge: () => getLabel(547194, '合并'),
associateJob: () => getLabel(547496, '联查岗位'),
copy:() => getLabel(547196, '复制'),
joinPerson:() => getLabel(547609, '联查人员'),
allExport:() => getLabel(547187, '全部导出'),
batchExport:() => getLabel(547611, '批量导出'),
ssoLogin:() => getLabel(547396, '单点登录'),
batchOpen: () => getLabel(534249, '批量解锁'),
collect: () => getLabel(28111, '收藏'),
@ -886,9 +920,7 @@ export const i18n = {
cancel: () => getLabel(32694, '取消'),
create: () => getLabel(365, '新建'),
remove: () => getLabel(20230, '移除'),
delete: () => getLabel(131966, '删除'),
modify: () => getLabel(93, '编辑'),
transfer: () => getLabel(80, '转移'),
multiRemove: () => getLabel(383696, '批量移除'),
multiDelete: () => getLabel(32136, '批量删除'),
save: () => getLabel(30986, '保存'),
@ -901,7 +933,6 @@ export const i18n = {
childInfoMaintain: () => getLabel(384280, '子信息维护'),
editChildInfo: () => getLabel(32732, '编辑子信息'),
add: () => getLabel(131201, '添加'),
copy: () => getLabel(77, '复制'),
log: () => getLabel(83, '日志'),
replace: () => getLabel(84563, '替换'),
columnVisibleSetting: () => getLabel(32535, '显示列定制'),
@ -969,9 +1000,9 @@ export const i18n = {
deleteImg: () => getLabel('16075', "删除图片")
},
confirm: {
forbiddenTag: () => getLabel(-131329, '确定禁用该记录吗'),
enableTag: () => getLabel(-131328, '确定启用该记录吗'),
recoverConfirm: () => getLabel(-131310, '确定恢复该记录吗'),
forbiddenTag: () => getLabel(547193, '确定禁用该记录吗'),
enableTag: () => getLabel(547550, '确定启用该记录吗'),
recoverConfirm: () => getLabel(547551, '确定恢复该记录吗'),
defaultTitle: () => getLabel(131329, '信息确认'),
removeGroupInfo: () => getLabel(383053, '删除分组,该分组下的字段将显示到“基本信息”分组中,确定要删除吗?'),
@ -1025,6 +1056,16 @@ export const i18n = {
moveFieldConfirm: () => getLabel('388100', "确定要移动所选择的记录到分组{params}吗?")
},
message: {
checkFile: () => getLabel(547587, '请上传需要导入的文件!'),
checkFileContent: () => getLabel(547588, '文件导入失败请检查Excel文件内容是否正确!'),
checkCopyDept: () => getLabel(547263, '请指定需要复制的公司/分部'),
checkExport: () => getLabel(547612, '请选择需要导出的数据'),
checkOnDetach: () => getLabel(547620, '确定启用组织管理分权吗'),
checkOffDetach: () => getLabel(547621, '确定取消组织管理分权吗'),
checkResume: () => getLabel(547657, '简历模板加载失败'),
authFailed: () => getLabel(2012, '对不起,您暂时没有权限!'),
actionError: () => getLabel(132200, '操作失败!'),
opSuccess: () => getLabel(30700, '操作成功'),

View File

@ -3,13 +3,15 @@ import { action, computed, extendObservable, observable } from "mobx";
import HrmBaseStore from "./baseStore";
import { WeaTableNew } from "comsMobx";
import { message } from "antd";
import { WeaHelpfulTip, WeaInputLocale } from "ecCom";
import { WeaHelpfulTip, WeaInputLocale,WeaLocaleProvider } from "ecCom";
import { cloneDeep, has, indexOf, isEmpty, remove, uniq } from "lodash";
import { i18n } from "../public/i18n";
import * as Api from "../apis/columnSetting";
import { validDBKeys } from "../util";
import { saveFieldDefinedInfo } from "../apis/columnSetting";
const getLabel = WeaLocaleProvider.getLabel;
const getCurrentLabel = WeaInputLocale.getCurrentLabel;
const { TableStore } = WeaTableNew;
@ -115,10 +117,10 @@ export class ColumnSetting {
<span style={{ marginLeft: 10 }}>
<WeaHelpfulTip
ecId={`${this && this.props && this.props.ecId || ""}_WeaHelpfulTip@4vdvfp@${index}`}
title="自定义页面链接地址可以为外网地址http://www.baidu.com
title={getLabel('547383',`自定义页面链接地址可以为外网地址http://www.baidu.com
也可以是内部地址/test.jsp可以带上参数传参像这样/test.jsp?a=1&b=2
也可以写占位符{#id}传人员id像这样/test.jsp?a=1&b={#id}&mypara2={#id}
即使不写占位符默认也会收到1个固定的参数hrmResourceID=人员id"/>
即使不写占位符默认也会收到1个固定的参数hrmResourceID=人员id`)}/>
</span>
</span>;
} else if (c.key === "itemnum") {
@ -127,8 +129,7 @@ export class ColumnSetting {
<span style={{ marginLeft: 10 }}>
<WeaHelpfulTip
ecId={`${this && this.props && this.props.ecId || ""}_WeaHelpfulTip@wotuuk@${index}`}
title="填写类的全路径例如com.engine.hrm.cmd.hrmcarditem.GetTabNumDemoCmd,类中包含execute方法返回int型数据
填写不正确的路径并启用对应tab页title将会出现error字样"/>
title={getLabel('547382', "填写类的全路径例如com.engine.hrm.cmd.hrmcarditem.GetTabNumDemoCmd,类中包含execute方法返回int型数据。 填写不正确的路径并启用对应tab页title将会出现error字样。")}/>
</span>
</span>;
}
@ -178,9 +179,9 @@ export class ColumnSetting {
<span style={{ marginLeft: 10 }}>
<WeaHelpfulTip
ecId={`${this && this.props && this.props.ecId || ""}_WeaHelpfulTip@4vdvfp@${index}`}
title="页面链接地址可以为外网地址http://www.baidu.com
title={getLabel('547638', `页面链接地址可以为外网地址http://www.baidu.com
也可以是内部地址/test.jsp可以带上参数传参像这样/test.jsp?a=1&b=2
也可以写占位符${id}传人员id像这样/test.jsp?a=1&b=${id}&mypara2=${id}"/>
也可以写占位符${id}传人员id像这样/test.jsp?a=1&b=${id}&mypara2=${id}`)}/>
</span>
</span>;
}

View File

@ -42,7 +42,7 @@ export class DepartmentStore {
@observable copyCondition = [];
@observable isPanelShow = false; //高级搜索面板
@observable form = new WeaForm();
@observable form1 = new WeaForm(); //新增主表表单
@observable form1 = new WeaForm(); //合并 转移
@observable form2 = new WeaForm(); //复制表单
@observable departmentName = '';
@observable conditionNum = 4;

View File

@ -47,9 +47,9 @@ import {
/********************* importDialog *********************/
steps = [
{ title: '上传文件'},
{ title: '导入结果' }
@observable steps = [
{ key: 547227,value:'上传文件'},
{ key: 547221,value:'导入结果'},
];
@observable importType = '';
@ -96,7 +96,7 @@ import {
@action("开始导入") startImport() {
if(this.filelist.length == 0) {
message.error("请上传需要导入的文件!")
message.error(`${i18n.message.checkFile()}`)
this.current = this.current - 1;
return;
}
@ -123,7 +123,7 @@ import {
}else {
clearInterval(this.interval);
this.pvisable = false;
message.error("文件导入失败")
message.error(`${i18n.message.checkFileContent()}`)
}
})
}

View File

@ -37,6 +37,9 @@ import {
import {
findIndex
} from 'lodash';
import {WeaLocaleProvider } from "ecCom";
const getLabel = WeaLocaleProvider.getLabel;
export class NewImportStore {
@ -54,48 +57,7 @@ export class NewImportStore {
}
/********************* cardConfig *********************/
cardConfig = [
{
"subTitle": "分部设置",
"bgColor": "#92B75B",
"icon": "icon-coms-Department-number",
"title": "分部",
"linkName": "分部导入",
"url": "/spa/organization/static/index.html#/main/organization/company"
},
{
"subTitle": "部门设置",
"bgColor": "#92B75B",
"icon": "icon-coms-Department-number",
"title": "部门",
"linkName": "部门导入",
"url": "/spa/organization/static/index.html#/main/organization/department"
},
// {
// "subTitle": "岗位设置",
// "bgColor": "#49B2FE",
// "icon": "icon-coms-hrm",
// "title": "岗位",
// "linkName": "岗位体系导入",
// "url": "/spa/organization/static/index.html#/main/organization/job"
// },
{
"subTitle": "组织维护",
"bgColor": "#51A39A",
"icon": "icon-coms-crm",
"title": "人员",
"linkName": "人员导入",
"url": "/spa/organization/static/index.html#/main/organization/resource"
},
{
"subTitle": "等级设置",
"bgColor": "rgb(230, 168, 69)",
"icon": "icon-portal-kpi-o",
"title": "职等职级",
"linkName": "职等职级导入",
"url": "/spa/organization/static/index.html#/main/organization/rankscheme"
},
]
@observable isMouseOver = false;
@observable curIndex = '';
@ -213,7 +175,7 @@ export class NewImportStore {
@action("开始导入") startImport() {
if(this.filelist.length == 0) {
message.error("请上传需要导入的文件!")
message.error(`${i18n.message.checkFile()}`)
this.current = this.current - 1;
return;
}
@ -243,7 +205,7 @@ export class NewImportStore {
}else {
clearInterval(this.interval);
this.pvisable = false;
message.error("文件导入失败")
message.error(`${i18n.message.checkFileContent()}`)
}
})
}

View File

@ -39,196 +39,6 @@ export class PersonnelResumeStore {
@observable params = {};
@observable condition = [];
@observable dialogLoading = true;
// @observable resumeList = {
// lastName: '徐凤年',
// sex: '男',
// birthday: '1999-10-10',
// image:'',
// native: '上海',
// politics: '党员',
// department: '财务部',
// marriage: '已婚',
// jobtitle: '剑道第一人',
// companystartdate: '2020-12-31',
// workstartdate: '2011-10-10',
// idCard: '3409871298377483992',
// address: '江苏省南京市雨花台区润和创智中心',
// telephone: '19823045643',
// email: '16378324@163.com',
// selfStatement:'本人性格开朗,秦武大帝转世,世间武道的第一人',
// tables: [
// {
// title: '二、社会保险及住房公积金缴纳情况(单位/元)',
// columns: [
// {
// name: '首次参保时间',
// colspans: 2,
// rowspans: 1
// },
// {
// name: '养老保险',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '医疗保险',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '失业保险',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '住房公积金',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '企业年金',
// colspans: 1,
// rowspans: 1
// },
// ],
// datas: [
// [{
// value: '2022-10-02',
// colspans: 2,
// rowspans: 1
// }, {
// value: '80',
// colspans: 1,
// rowspans: 1
// },
// {
// value: '36',
// colspans: 1,
// rowspans: 1
// }, {
// value: '360',
// colspans: 1,
// rowspans: 1
// }, {
// value: '180',
// colspans: 1,
// rowspans: 1
// }, {
// value: '20000',
// colspans: 2,
// rowspans: 1
// }]
// ]
// },
// {
// title: '三、家庭成员信息(包括父母、配偶、子女)',
// columns: [
// {
// name: '关系',
// colspans: 2,
// rowspans: 1
// },
// {
// name: '姓名',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '工作单位及职务',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '联系电话',
// colspans: 1,
// rowspans: 1
// },
// {
// name: '住址',
// colspans: 2,
// rowspans: 1
// }
// ],
// datas: [
// [
// {
// value: '父子',
// colspans: 2,
// rowspans: 1
// }, {
// value: '徐晓',
// colspans: 1,
// rowspans: 1
// },
// {
// value: '北凉王',
// colspans: 1,
// rowspans: 1
// }, {
// value: '1589756859',
// colspans: 1,
// rowspans: 1
// }, {
// value: '江苏省南京市北凉军营',
// colspans: 2,
// rowspans: 1
// }
// ],
// [
// {
// value: '母子',
// colspans: 2,
// rowspans: 1
// }, {
// value: '吴素',
// colspans: 1,
// rowspans: 1
// },
// {
// value: '北凉王妃',
// colspans: 1,
// rowspans: 1
// }, {
// value: '15897566487',
// colspans: 1,
// rowspans: 1
// }, {
// value: '江苏省南京市北凉龙雀军团',
// colspans: 2,
// rowspans: 1
// }
// ],
// [
// {
// value: '女儿',
// colspans: 2,
// rowspans: 1
// }, {
// value: '徐念凉',
// colspans: 1,
// rowspans: 1
// },
// {
// value: '北凉公主',
// colspans: 1,
// rowspans: 1
// }, {
// value: '15897566587',
// colspans: 1,
// rowspans: 1
// }, {
// value: '莽荒之地',
// colspans: 2,
// rowspans: 1
// }
// ]
// ]
// }
// ]
// }
@observable defaultShowLeft = true;
@ -270,7 +80,7 @@ export class PersonnelResumeStore {
this.resumeList = res.data;
} else {
clearInterval(this.interval);
message.warning("简历模板加载失败");
message.warning(`${i18n.message.checkResume()}`);
}
}, error => {
message.warning(error.msg);

View File

@ -35,7 +35,7 @@ export class QtxConfigStore {
{
domkey: ['isopenconfig'],
conditionType: 'SWITCH',
label: getLabel('-1', "是否开启数据库配置"),
label: getLabel('547394', "是否开启数据库配置"),
labelcol: 5,
fieldcol: 19,
viewAttr: 3,
@ -76,7 +76,7 @@ export class QtxConfigStore {
setTableEditDatas = (e) => {
if(e.length > 1) {
e.pop();
message.error("默认只能添加一条配置数据!!!")
message.error(getLabel(547632, "默认只能添加一条配置数据!!!"))
}
extendObservable(this.editTableData, {
datas: e
@ -85,7 +85,7 @@ export class QtxConfigStore {
@action("保存页面") saveQtxConfigInfo = () => {
if(this.editTableData.datas.length == 0) {
return message.error("至少保存一条配置数据!!")
return message.error(getLabel(547633, "至少保存一条配置数据!!"))
}
let editTable = JSON.stringify(this.editTableData.datas[0]);
API.saveQtxConfigInfo({
@ -119,13 +119,13 @@ export class QtxConfigStore {
/**===========================buttons=========================== */
rightMenu = [
@observable rightMenu = [
{
"isBatch": "0",
"isTop": "1",
"menuFun": "save",
"menuIcon": "icon-coms-Preservation",
"menuName": "保存",
"menuName": getLabel('547360', "保存"),
"type": "BTN_save"
},
{
@ -133,17 +133,17 @@ export class QtxConfigStore {
"isTop": "0",
"menuFun": "login",
"menuIcon": "icon-coms-link",
"menuName": "单点登录",
"menuName": getLabel('547396', "单点登录"),
"type": "BTN_link"
}
];
topMenu = [
@observable topMenu = [
{
"isBatch": "1",
"isTop": "1",
"menuFun": "save",
"menuIcon": "icon-coms-Preservation",
"menuName": "保存",
"menuName": getLabel('547360', "保存"),
"type": "BTN_save"
},
{
@ -151,7 +151,7 @@ export class QtxConfigStore {
"isTop": "1",
"menuFun": "login",
"menuIcon": "icon-coms-link",
"menuName": "单点登录",
"menuName": `${i18n.button.ssoLogin()}`,
"type": "BTN_link"
}
]

View File

@ -42,7 +42,7 @@ export class QuickSearchStore {
{
domkey: ['isquicksearch'],
conditionType: 'SWITCH',
label: getLabel('387493', "快捷搜索条件"),
label: getLabel('547592', "快捷搜索条件"),
labelcol: 5,
fieldcol: 19,
viewAttr: 3,
@ -90,7 +90,7 @@ export class QuickSearchStore {
let formparm = this.quickSearchForm.getFormParams();
if (!this.checkQuickSearchData()) {
message.error(getLabel('387954', "条件字段不能重复"));
message.error(getLabel('547628', "条件字段不能重复"));
return;
}
let id = this.quickSearchData.setting.id;
@ -190,7 +190,7 @@ export class QuickSearchStore {
if ((minnum != '' && minnum != undefined)
&& (maxnum != '' && maxnum != undefined)
&& (parseFloat(minnum) > parseFloat(maxnum))) {
message.error(getLabel('382783', "请填写正确的区间"));
message.error(getLabel('547629', "请填写正确的区间"));
result = false;
return;
}
@ -200,31 +200,23 @@ export class QuickSearchStore {
/**===========================buttons=========================== */
rightMenu = [
@observable rightMenu = [
{
"isBatch": "0",
"isTop": "1",
"menuFun": "save",
"menuIcon": "icon-coms-Preservation",
"menuName": "保存",
"menuName": getLabel('547360', "保存"),
"type": "BTN_save"
},
// {
// "isBatch": "0",
// "isTop": "0",
// "menuFun": "log",
// "menuIcon": "icon-coms-Print-log",
// "menuName": "日志",
// "type": "BTN_log"
// }
];
topMenu = [
@observable topMenu = [
{
"isBatch": "1",
"isTop": "1",
"menuFun": "save",
"menuIcon": "icon-coms-Preservation",
"menuName": "保存",
"menuName": getLabel('547360', "保存"),
"type": "BTN_save"
}
]

View File

@ -25,6 +25,7 @@ import {
import { getSecondPath } from '../util/index'
import { cloneDeep, isEmpty, trim } from 'lodash';
const getLabel = WeaLocaleProvider.getLabel;
const toJS = mobx.toJS;
const {
TableStore
@ -62,7 +63,9 @@ export class ResourceStore {
@observable enable = false;
@observable _showRadioGroup = false;
@computed get showRadioGroup() { return this._showRadioGroup }
@computed get showRadioGroup() {
return this._showRadioGroup
}
set showRadioGroup(v) {
this._showRadioGroup = v;
setTimeout(() => {
@ -72,8 +75,12 @@ export class ResourceStore {
domRef = {};
@observable _reCalculateTableHeight = new Date().getTime();
@computed get reCalculateTableHeight() { return this._reCalculateTableHeight }
set reCalculateTableHeight(v) { this._reCalculateTableHeight = v }
@computed get reCalculateTableHeight() {
return this._reCalculateTableHeight
}
set reCalculateTableHeight(v) {
this._reCalculateTableHeight = v
}
@computed get tableHeihgt() {
this.reCalculateTableHeight;
const topHeight = this.domRef.top && this.domRef.top.refs.content ? this.domRef.top.refs.content.clientHeight : 0;
@ -327,9 +334,9 @@ export class ResourceStore {
@action("列定制保存") saveCustomDefine = () => {
if (this.customTemplateId == '-1') {
message.error("默认模板不能修改,将返回默认模板列");
}
message.error(getLabel(547650,'默认模板不能修改,将返回默认模板列'));
}
const params = {
columns: this.transfer.transferKeys,
templateId: this.customTemplateId
@ -342,8 +349,6 @@ export class ResourceStore {
}, error => {
message.warning(error.msg);
})
}
@action("高级搜索模板切换") changeSearchTemplate(v) {
@ -413,7 +418,7 @@ export class ResourceStore {
@action("搜索模板保存") saveTemplate = () => {
if (this.searchTemplateName == '') {
message.error("搜索模板名称不能为空");
message.error(getLabel(547651,'搜索模板的名称不能为空'));
} else {
const fields = [];
this.defaultCondition.forEach((c, idx) => {
@ -444,7 +449,7 @@ export class ResourceStore {
@action("常用定制列模板保存") saveCustomTemplate = () => {
if (this.customTemplateName == '') {
message.error("列定制模板名称不能为空");
message.error(getLabel(547652,'列定制模板的名称不能为空'));
} else {
const params = {
showname: this.customTemplateName,
@ -471,7 +476,7 @@ export class ResourceStore {
@action("搜索模板删除") deleteSearchTemplate = () => {
if (this.searchTemplateId == -1) {
return message.error("默认模板不可删除");
return message.error(getLabel(547653,'默认模板不可删除'));
}
Api.deleteSearchTemplate({ id: this.searchTemplateId }).then(response => {
return response.json()
@ -509,7 +514,7 @@ export class ResourceStore {
} = this.transfer;
return (
<div className="trasfer-header">
<span>待选</span>
<span>{getLabel(547648,'待选')}</span>
<WeaInputSearch
style={this.inputSearchStyle}
value={transferleftIptVal}
@ -531,7 +536,7 @@ export class ResourceStore {
} = this.transfer;
return (
<div className="trasfer-header">
<span>已选</span>
<span>{getLabel(547649,'已选')}</span>
<WeaInputSearch
style={this.inputSearchStyle}
value={transferRightIptVal}
@ -611,7 +616,7 @@ export class ResourceStore {
};
@observable temlateManageDialog = {
title: '模板管理',
title: getLabel(547582,'模板管理'),
visible: false,
hasScroll: true,
icon: 'icon-coms-hrm',
@ -621,7 +626,7 @@ export class ResourceStore {
width: 500,
height: 650
},
buttons: [<Button type='primary' onClick={() => this.updateCustomTemplate()}>保存</Button>]
buttons: [<Button type='primary' onClick={() => this.updateCustomTemplate()}>{getLabel(547360,'保存')}</Button>]
}
@computed get editTableParams() {
@ -662,7 +667,7 @@ export class ResourceStore {
Api.updateCustomTemplate(params).then(res => {
let { code, msg } = res;
if (code === 200) {
message.success(msg || "操作成功");
message.success(msg || getLabel(30700,'操作成功'));
this.getEditTable();
this.customization();
} else {

View File

@ -90,164 +90,6 @@ export class ResourceCardStore {
setVersionList(obj) {
this.versionList = obj;
}
/************** json数据*****************/
// @observable data = {
// buttons:[
// {
// name:'编辑卡片',
// url:'http://www.com/${id}?userid=${id}',
// sysDefault:0
// },
// ]
// user: {
// id:23,
// image: "",
// name: "萧言",
// sex:"0",
// email: "1546584672@qq.com",
// phone: "18822349878",
// belongTo: "主账号",
// status: "正式"
// },
// statistical: {
// workflowCount:190,
// docCount:134,
// cusCount:28,
// collaborationCount:28,
// weiboCount:166
// },
// formItems:[
// {
// id:'userInfo',
// title:'员工信息',
// items:[
// {
// fieldId:'姓名',
// fieldValue:'萧言'
// },{
// fieldId:'性别',
// fieldValue:'男'
// },{
// fieldId:'出生日期',
// fieldValue:'1987年9月1日'
// },{
// fieldId:'个人邮箱',
// fieldValue:'1546875925@qq.com'
// },{
// fieldId:'电话号码',
// fieldValue:'18925689752'
// },{
// fieldId:'岗位级别',
// fieldValue:'-'
// },{
// fieldId:'职务信息',
// fieldValue:'产品运营'
// }
// ]
// },
// {
// id:'workInfo',
// title:'工作信息',
// items:[
// {
// fieldId:'姓名',
// fieldValue:'萧言'
// },{
// fieldId:'性别',
// fieldValue:'男'
// },{
// fieldId:'出生日期',
// fieldValue:'1987年9月1日'
// },{
// fieldId:'个人邮箱',
// fieldValue:'1546875925@qq.com'
// },{
// fieldId:'姓名',
// fieldValue:'萧言'
// },{
// fieldId:'性别',
// fieldValue:'男'
// },{
// fieldId:'出生日期',
// fieldValue:'1987年9月1日'
// },{
// fieldId:'个人邮箱',
// fieldValue:'1546875925@qq.com'
// },{
// fieldId:'姓名',
// fieldValue:'萧言'
// },{
// fieldId:'性别',
// fieldValue:'男'
// },{
// fieldId:'出生日期',
// fieldValue:'1987年9月1日'
// },{
// fieldId:'个人邮箱',
// fieldValue:'1546875925@qq.com'
// }
// ]
// },
// {
// id:'educationInfo',
// title:'教育经历',
// items:[
// {
// fieldId:'本科',
// fieldValue:'南京大学'
// },{
// fieldId:'研究生',
// fieldValue:'北京大学'
// },{
// fieldId:'毕业时间',
// fieldValue:'1987-09-21'
// },{
// fieldId:'获得奖项',
// fieldValue:'优秀毕业生'
// },{
// fieldId:'备注',
// fieldValue:'无'
// }
// ]
// }
// ],
// anchorList:[
// {
// id:'userInfo',
// title:'员工信息'
// },
// {
// id:'workInfo',
// title:'工作信息'
// },
// {
// id:'educationInfo',
// title:'教育经历'
// },
// {
// id:'comp',
// title:'分部扩展页'
// },
// {
// id:'dept',
// title:'部门扩展页'
// }
// ],
// iframeList: [
// {
// id:"comp",
// title:"分部管理",
// url:'/spa/organization/static/index.html#/main/organization/companyExtend/7'
// },
// {
// id:"dept",
// title:"部门管理",
// url:'/spa/organization/static/index.html#/main/organization/company'
// },
// ]
// }
}

View File

@ -88,6 +88,9 @@
.new-edit-wrapper{
.wea-select, .ant-select{
width: 100%;
};
.wea-new-scroll {
padding-bottom: 30px;
}
}