outaozhen 4 rokov pred
rodič
commit
1731940604

+ 41 - 20
src/pages/Business/Attendance/index.tsx

@@ -3,9 +3,10 @@ import AttendanceMenu from '../Attendance/components/AttendanceMenu/attendanceMe
 import { useRequest } from 'umi'
 import Icon from '@/components/IconPark'
 import ConnectModal from '@/pages/Role/System/components/ConnectModal'
-import { Table,Tag } from 'antd'
+import { Table,Tag,Popconfirm } from 'antd'
 import {
-  fetchAttendanceList
+  fetchAttendanceList,
+  deleteAttendance
 } from '@/services/user/system'
 import Item from 'antd/lib/list/Item'
 
@@ -14,23 +15,58 @@ const Attendance = () => {
     id: '',
     attendanceList: []
   })
+
+  const { run: tryGetRoleStaffList } = useRequest(fetchAttendanceList, {
+    onSuccess: result => {
+      setState({ ...state, attendanceList: result })
+    }
+  })
+
+  const { run: trydeleteAttendance } = useRequest(
+    (id: string) => {
+      return deleteAttendance({ id })
+    },
+    {
+      manual: false,
+      onSuccess: () => {
+        tryGetRoleStaffList(state.id)
+      }
+    }
+  )
+  
+  useEffect(() => {
+    if (state.id) {
+      tryGetRoleStaffList(state.id)
+    }
+    return () => {
+      // formRef.current?.resetFields()
+    }
+  }, [state.id])
+
   const columns = [
     {
       title: '申请人名称',
       dataIndex: 'applicantStaffName',
-      width: '20%'
+      width: '10%'
     },
     {
       title: '申请对象',
       dataIndex: 'staff',
       align: 'left',
-      width: '50%',
+      width: '60%',
       render: (_,record) => (
         <>
           {record.staff.map((item, index) => (
             // console.log(item.staffName)
             <span key={index} className="zh-mg-bottom-5 zh-block">
-              <Tag closable>{item.staffName}</Tag>
+              <Tag closable={()=>trydeleteAttendance(item.staffId)}>{item.staffName}</Tag>
+              {/* <Popconfirm
+                title="确认删除吗?"
+                okText="确认"
+                cancelText="取消"
+                onConfirm={() => trydeleteAttendance(item.id)}>
+                <Tag closable="trydeleteAttendance">{item.staffName}</Tag>
+              </Popconfirm> */}
             </span>
           ))}
           <span className="hover:text-hex-886ab5 cursor-pointer text-purple-500">
@@ -51,21 +87,6 @@ const Attendance = () => {
     }
   ]
 
-  const { run: tryGetRoleStaffList } = useRequest(fetchAttendanceList, {
-    manual: false,
-    onSuccess: result => {
-      setState({ ...state, attendanceList: result })
-    }
-  })
-  useEffect(() => {
-    if (state.id) {
-      tryGetRoleStaffList(state.id)
-    }
-    return () => {
-      // formRef.current?.resetFields()
-    }
-  }, [state.id])
-
   return (
     <div className="h-full w-full flex flex-row">
       <AttendanceMenu />

+ 1 - 1
src/services/user/system.ts

@@ -16,7 +16,7 @@ export async function fetchAttendanceList(params: API.GetStaffListParams) {
 export async function deleteAttendance({ id }: { id: string }) {
   return request('/attendance/unlinkStaff', {
     method: 'POST',
-    data: { id }
+    data: { id,staffId }
   })
 }