|
@@ -0,0 +1,62 @@
|
|
|
+import { useAjax } from "@/Hook/useAjax"
|
|
|
+import { getAdAccountAllOfMember } from "@/services/launchAdq/adq"
|
|
|
+import { IdcardFilled } from "@ant-design/icons"
|
|
|
+import React, { useEffect, useState } from "react"
|
|
|
+import { useModel } from "umi"
|
|
|
+
|
|
|
+
|
|
|
+interface Props {
|
|
|
+ onChange?: (id?: number) => void
|
|
|
+}
|
|
|
+/**
|
|
|
+ * 选择组员左菜单
|
|
|
+ */
|
|
|
+const TeamMembers: React.FC<Props> = (props) => {
|
|
|
+
|
|
|
+ /*************************/
|
|
|
+ const [userAll, setUserAll] = useState([])
|
|
|
+ const [selectedArr, setSelectedArr] = useState([])
|
|
|
+
|
|
|
+ const userInfo = useModel('@@initialState', model => model.initialState?.currentUser)
|
|
|
+ const [userId, setUserId] = useState<any>(userInfo?.userId?.toString())
|
|
|
+ const allOfMember = useAjax(() => getAdAccountAllOfMember(), { formatResult: true })
|
|
|
+ /*************************/
|
|
|
+
|
|
|
+ /** 获取组员 */
|
|
|
+ useEffect(() => {
|
|
|
+ allOfMember.run().then(res => {
|
|
|
+ if (res?.data) {
|
|
|
+ let useAll: any = []
|
|
|
+ res?.data?.forEach((item: { key: { userId: any; nickName: any; }; value: any[]; }) => {
|
|
|
+ let obj = {
|
|
|
+ key: item.key.userId,
|
|
|
+ label: item.key.nickName,
|
|
|
+ icon: <IdcardFilled />,
|
|
|
+ }
|
|
|
+ if (item?.value) {
|
|
|
+ obj['childrenarr'] = item?.value?.map(item => {
|
|
|
+ return { key: item.accountId + '_' + item.id, label: item?.remark ? item.accountId + '_' + item?.remark : item.accountId }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ useAll.push(obj)
|
|
|
+ })
|
|
|
+ setUserAll(useAll)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }, [])
|
|
|
+
|
|
|
+ /** 选中的组员的子账号 */
|
|
|
+ useEffect(() => {
|
|
|
+ if (userAll.length > 0 && userId) {
|
|
|
+ let newArr: any = userAll?.filter((item: any) => item.key == userId)
|
|
|
+ setSelectedArr(newArr[0]?.childrenarr || [])
|
|
|
+ }
|
|
|
+ }, [userAll, userId])
|
|
|
+
|
|
|
+ return <div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+export default React.memo(TeamMembers)
|