Skip to content

Commit b0b40e9

Browse files
author
GeorgeZhang2035
committed
temp storga
1 parent e5ae8a1 commit b0b40e9

File tree

1 file changed

+47
-3
lines changed

1 file changed

+47
-3
lines changed
Lines changed: 47 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,47 @@
1-
export interface MutipleSelectProp {
2-
3-
}
1+
import { Button } from '@blueprintjs/core'
2+
3+
import { FC, useMemo } from 'react'
4+
5+
import { useSheet } from '../../SheetProvider'
6+
import { useOperatorFilterProvider } from '../SheetOperatorFilterProvider'
7+
8+
export interface MutipleSelectProp {}
9+
10+
export const MutipleSelect: FC<MutipleSelectProp> = () => {
11+
const {
12+
operatorFiltered: { data: operatorFilteredData },
13+
} = useOperatorFilterProvider()
14+
const { existedOperators } = useSheet()
15+
16+
const { cancelAllDisabled, selectAllDisabled } = useMemo(() => {
17+
console.log('111')
18+
const existedOperatorsNames = existedOperators.map(({ name }) => name)
19+
return {
20+
cancelAllDisabled: !operatorFilteredData.some(({ name }) =>
21+
existedOperatorsNames.includes(name),
22+
),
23+
selectAllDisabled: operatorFilteredData.every(({ name }) =>
24+
existedOperatorsNames.includes(name),
25+
),
26+
}
27+
}, [existedOperators, operatorFilteredData])
28+
29+
return (
30+
<div className="flex justify-center content-center">
31+
<Button
32+
minimal
33+
icon="circle"
34+
disabled={cancelAllDisabled}
35+
title={`取消选择全部${existedOperators.length}位干员`}
36+
onClick={cancelAll}
37+
/>
38+
<Button
39+
minimal
40+
icon="selection"
41+
title={`全选${operatorFilteredData.length}位干员`}
42+
disabled={selectAllDisabled}
43+
onClick={selectAll}
44+
/>
45+
</div>
46+
)
47+
}

0 commit comments

Comments
 (0)