diff --git a/pc4mobx/organization/components/NewAndEditDialog.js b/pc4mobx/organization/components/NewAndEditDialog.js index 51a984e..91bab48 100644 --- a/pc4mobx/organization/components/NewAndEditDialog.js +++ b/pc4mobx/organization/components/NewAndEditDialog.js @@ -72,6 +72,9 @@ export default class NewAndEditDialog extends React.Component { if (moduleName == 'staff' && data.planId) { bindChangeEnvent(data); } + if (moduleName == 'managerDetach' && data.managerType) { + bindChangeEnvent(data); + } }; onBlur = data => { diff --git a/pc4mobx/organization/components/detach/ManagerDetach.js b/pc4mobx/organization/components/detach/ManagerDetach.js index bca09d9..544de24 100644 --- a/pc4mobx/organization/components/detach/ManagerDetach.js +++ b/pc4mobx/organization/components/detach/ManagerDetach.js @@ -9,7 +9,8 @@ import { WeaTab, WeaFormItem, WeaRightMenu, - WeaAlertPage + WeaAlertPage, + WeaBrowser } from 'ecCom' import { Row, @@ -234,9 +235,13 @@ export default class ManagerDetach extends React.Component { reRenderColumns(columns) { let _this = this; - // columns.forEach((c, index) => { - - // }) + columns.forEach((c, index) => { + if (c.dataIndex == 'manager_type') { + c.render = function (text, record) { + return record.manager_type == "0" ? '人员' : '角色' + } + }; + }) } doDetachSwitch(checked) { @@ -430,10 +435,12 @@ export default class ManagerDetach extends React.Component { isFormInit={form.isFormInit} loading={dialogLoading} isEdit={isEdit} - height={200} + height={220} conditionLen={1} save={() => this.handleSave()} onCancel={() => managerDetach.setVisible(false)} + moduleName='managerDetach' + bindChangeEnvent={val => managerDetach.updateConditions(val)} /> ) diff --git a/pc4mobx/organization/stores/job.js b/pc4mobx/organization/stores/job.js index ebf88df..a180536 100644 --- a/pc4mobx/organization/stores/job.js +++ b/pc4mobx/organization/stores/job.js @@ -75,6 +75,7 @@ export class JobStore { @action initData() { this.getHasRight(); + this.getTableInfo(); //this.refresh(); // this.getCopyForm(); // this.getMergeForm(); diff --git a/pc4mobx/organization/stores/jobgrade.js b/pc4mobx/organization/stores/jobgrade.js index c4e27c0..8f67913 100644 --- a/pc4mobx/organization/stores/jobgrade.js +++ b/pc4mobx/organization/stores/jobgrade.js @@ -69,7 +69,7 @@ export class JobGradeStore { @action initData = () => { this.selectedTreeNodeInfo = null; - this.treeConfig.treeExpandKeys.length = 0; + //this.treeConfig.treeExpandKeys.length = 0; Api.getTree().then(res => { if (res.code === 200) { if (res.data.length > 0) { diff --git a/pc4mobx/organization/stores/joblevel.js b/pc4mobx/organization/stores/joblevel.js index f164ef1..5f949b8 100644 --- a/pc4mobx/organization/stores/joblevel.js +++ b/pc4mobx/organization/stores/joblevel.js @@ -68,7 +68,7 @@ export class JobLevelStore { @action initData = () => { this.selectedTreeNodeInfo = null; - this.treeConfig.treeExpandKeys.length = 0; + //this.treeConfig.treeExpandKeys.length = 0; Api.getTree().then(res => { if (res.code === 200) { if (res.data.length > 0) { diff --git a/pc4mobx/organization/stores/managerDetach.js b/pc4mobx/organization/stores/managerDetach.js index 3af8f26..87a998a 100644 --- a/pc4mobx/organization/stores/managerDetach.js +++ b/pc4mobx/organization/stores/managerDetach.js @@ -28,6 +28,7 @@ export class ManagerDetachStore { @observable topMenu = [] @observable rightMenu = []; @observable condition = []; + fcondition = []; @observable searchCondition = []; @observable isEdit = true; @observable isNew = true; @@ -93,10 +94,16 @@ export class ManagerDetachStore { }) } - @action("新建删除") save() { + @action("新建保存") save() { let params = { ...this.form.getFormParams() }; + if (params.managerType == "0" && params.ecManager == "") { + return message.error("管理员字段必填"); + } + if (params.managerType == "1" && params.roleId == "") { + return message.error("角色字段必填"); + } this.form.validateForm().then(f => { if (f.isValid) { Api.add(params).then(response => { @@ -152,6 +159,7 @@ export class ManagerDetachStore { Api.getForm(params).then(res => { if (res.code === 200) { this.setDialogLoadingStatus(false); + res.data.condition && this.setFcondition(res.data.condition); res.data.condition && this.setCondition(res.data.condition); res.data.condition && this.form.initFormFields(res.data.condition); } else { @@ -213,6 +221,39 @@ export class ManagerDetachStore { }); } + updateConditions(data) { + this.form.updateFields({ + ecManager: { + value: '' + }, + roleId: { + value: '' + } + }); + const type = data.managerType.value; + debugger + this.condition = this.fcondition; + switch(type) { + case '0': + this.condition[0].items = this.condition[0].items.filter(item => { + if(item.domkey[0] == 'ecManager'){ + item.viewAttr = 3; + } + return item.domkey[0] != 'roleId'; + }); + break; + case '1': + this.condition[0].items = this.condition[0].items.filter(item => { + if(item.domkey[0] == 'roleId'){ + item.viewAttr = 3; + } + return item.domkey[0] != 'ecManager'; + }) + } + this.setCondition(this.condition); + this.form.initFormFields(this.condition); + } + setSearchCondition(condition) { this.searchCondition = condition; } @@ -299,4 +340,8 @@ export class ManagerDetachStore { this.hasRight = bool; } + setFcondition(condition) { + this.fcondition = condition; + } + } \ No newline at end of file