|
@@ -170,6 +170,15 @@ const Member = observer((props: { parentId: string }) => {
|
|
|
MemberModel.bind = false;
|
|
MemberModel.bind = false;
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+ const unSelect = () => {
|
|
|
|
|
+ // Models.bindKeys = [];
|
|
|
|
|
+ MemberModel.unBindUsers = [];
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ const getSelectedRowsKey = (selectedRows) => {
|
|
|
|
|
+ return selectedRows.map((item) => item?.id).filter((item2) => !!item2 !== false);
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
|
setSearchParam({
|
|
setSearchParam({
|
|
|
terms: [{ column: 'id$in-dimension$org', value: props.parentId }],
|
|
terms: [{ column: 'id$in-dimension$org', value: props.parentId }],
|
|
@@ -178,6 +187,7 @@ const Member = observer((props: { parentId: string }) => {
|
|
|
// 初始化所有状态
|
|
// 初始化所有状态
|
|
|
Models.bindKeys = [];
|
|
Models.bindKeys = [];
|
|
|
Models.unBindKeys = [];
|
|
Models.unBindKeys = [];
|
|
|
|
|
+ MemberModel.unBindUsers = [];
|
|
|
}, [props.parentId]);
|
|
}, [props.parentId]);
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
@@ -196,6 +206,7 @@ const Member = observer((props: { parentId: string }) => {
|
|
|
defaultParam={[{ column: 'id$in-dimension$org', value: props.parentId }]}
|
|
defaultParam={[{ column: 'id$in-dimension$org', value: props.parentId }]}
|
|
|
onSearch={async (data) => {
|
|
onSearch={async (data) => {
|
|
|
actionRef.current?.reset?.();
|
|
actionRef.current?.reset?.();
|
|
|
|
|
+ unSelect();
|
|
|
setSearchParam(data);
|
|
setSearchParam(data);
|
|
|
}}
|
|
}}
|
|
|
// onReset={() => {
|
|
// onReset={() => {
|
|
@@ -227,10 +238,45 @@ const Member = observer((props: { parentId: string }) => {
|
|
|
}
|
|
}
|
|
|
return service.queryUser(params);
|
|
return service.queryUser(params);
|
|
|
}}
|
|
}}
|
|
|
|
|
+ tableAlertRender={({ selectedRowKeys }) => <div>已选择 {selectedRowKeys.length} 项</div>}
|
|
|
|
|
+ tableAlertOptionRender={() => {
|
|
|
|
|
+ return (
|
|
|
|
|
+ <a
|
|
|
|
|
+ onClick={() => {
|
|
|
|
|
+ unSelect();
|
|
|
|
|
+ }}
|
|
|
|
|
+ >
|
|
|
|
|
+ 取消选择
|
|
|
|
|
+ </a>
|
|
|
|
|
+ );
|
|
|
|
|
+ }}
|
|
|
rowSelection={{
|
|
rowSelection={{
|
|
|
selectedRowKeys: MemberModel.unBindUsers,
|
|
selectedRowKeys: MemberModel.unBindUsers,
|
|
|
- onChange: (selectedRowKeys, selectedRows) => {
|
|
|
|
|
- MemberModel.unBindUsers = selectedRows.map((item) => item.id);
|
|
|
|
|
|
|
+ // onChange: (selectedRowKeys, selectedRows) => {
|
|
|
|
|
+ // MemberModel.unBindUsers = selectedRows.map((item) => item.id);
|
|
|
|
|
+ // },
|
|
|
|
|
+ onSelect: (record, selected, selectedRows) => {
|
|
|
|
|
+ if (selected) {
|
|
|
|
|
+ MemberModel.unBindUsers = [
|
|
|
|
|
+ ...new Set([...MemberModel.unBindUsers, ...getSelectedRowsKey(selectedRows)]),
|
|
|
|
|
+ ];
|
|
|
|
|
+ } else {
|
|
|
|
|
+ MemberModel.unBindUsers = MemberModel.unBindUsers.filter(
|
|
|
|
|
+ (item) => item !== record.id,
|
|
|
|
|
+ );
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ onSelectAll: (selected, selectedRows, changeRows) => {
|
|
|
|
|
+ if (selected) {
|
|
|
|
|
+ MemberModel.unBindUsers = [
|
|
|
|
|
+ ...new Set([...MemberModel.unBindUsers, ...getSelectedRowsKey(selectedRows)]),
|
|
|
|
|
+ ];
|
|
|
|
|
+ } else {
|
|
|
|
|
+ const unChangeRowsKeys = getSelectedRowsKey(changeRows);
|
|
|
|
|
+ MemberModel.unBindUsers = MemberModel.unBindUsers
|
|
|
|
|
+ .concat(unChangeRowsKeys)
|
|
|
|
|
+ .filter((item) => !unChangeRowsKeys.includes(item));
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
}}
|
|
}}
|
|
|
params={searchParam}
|
|
params={searchParam}
|