import React, { useState, useEffect } from 'react' import AttendanceMenu from './components/AttendanceMenu/attendanceMenu' import { useRequest } from 'umi' import Icon from '@/components/IconPark' import AddObjectModal from './components/AddObjectModal' import ApplicantModal from './components/ApplicantModal' import { Table, Tag, Popconfirm, Popover } from 'antd' import { fetchAttendanceList, unlinkAttendance, deleteAttendance } from '@/services/user/system' const Attendance = () => { const [state, setState] = useState({ id: '', attendanceList: [] }) const { run: tryGetRoleStaffList } = useRequest(fetchAttendanceList, { onSuccess: result => { setState({ ...state, attendanceList: result }) } }) const { run: tryunlinkAttendance } = useRequest( (params: API.LinkAttendance) => { return unlinkAttendance(params) }, { manual: true, onSuccess: () => { tryGetRoleStaffList(state.id) } } ) const { run: tryDeleteAttendance } = useRequest( (params: API.DeleteAttendance) => { return deleteAttendance(params) }, { manual: true, onSuccess: () => { tryGetRoleStaffList(state.id) } } ) useEffect(() => { if (state.id) { tryGetRoleStaffList(state.id) } return () => { // formRef.current?.resetFields() } }, [state.id]) const columns: ColumnsType = [ { title: '申请人名称', dataIndex: 'applicantStaffName', width: '15%' }, { title: '申请对象', dataIndex: 'staff', align: 'left', width: '70%', render: (_, record) => ( <> {record.staff.map(item => ( // console.log(item.staffName) tryunlinkAttendance({ staffId: item.staffId, id: record.id })}> {item.staffName} ))} ) }, { title: '操作', dataIndex: 'opreate', width: '10%', render: (_, record) => ( // console.log(record.id) tryDeleteAttendance({ id: record.id })}> ) } ] return (
'加班申请人'} columns={columns} dataSource={state.attendanceList} rowKey={row => row.id} /> ) } export default Attendance