Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 

80 Zeilen
2.4 KiB

  1. // material-ui
  2. // import {
  3. // GridActionsCellItem,
  4. // } from "@mui/x-data-grid";
  5. import {FiDataGrid} from "components/FiDataGrid";
  6. //import EditIcon from '@mui/icons-material/Edit';
  7. import {useState, useEffect} from "react";
  8. import {useNavigate} from "react-router-dom";
  9. import { GET_GROUP_LIST_PATH } from "utils/ApiPathConst";
  10. import { clickableLink} from 'utils/CommonFunction';
  11. // ==============================|| EVENT TABLE ||============================== //
  12. export default function UserGroupTable({searchCriteria}) {
  13. const [_searchCriteria, set_searchCriteria] = useState(searchCriteria);
  14. const navigate = useNavigate()
  15. useEffect(() => {
  16. set_searchCriteria(searchCriteria);
  17. }, [searchCriteria]);
  18. // const handleEditClick = (id) => () => {
  19. // navigate('/userGroup/'+ id);
  20. // };
  21. const columns = [
  22. // {
  23. // field: 'actions',
  24. // type: 'actions',
  25. // headerName: 'Actions',
  26. // width: 100,
  27. // cellClassName: 'actions',
  28. // getActions: ({id}) => {
  29. // return [
  30. // <GridActionsCellItem
  31. // key="OutSave"
  32. // icon={<EditIcon/>}
  33. // label="Edit"
  34. // className="textPrimary"
  35. // onClick={handleEditClick(id)}
  36. // color="primary"
  37. // />]
  38. // },
  39. // },
  40. {
  41. id: 'groupName',
  42. field: 'name',
  43. headerName: 'User Group Name',
  44. flex: 1,
  45. renderCell: (params) => {
  46. return clickableLink('/userGroup/'+ params.row.id, params.row.name);
  47. },
  48. },
  49. {
  50. id: 'description',
  51. field: 'description',
  52. headerName: 'User Group Description',
  53. flex: 1,
  54. },
  55. ];
  56. function handleRowDoubleClick(params) {
  57. navigate('/userGroup/'+ params.id);
  58. }
  59. return (
  60. <div style={{height: "fit-content", width: '100%'}}>
  61. <FiDataGrid
  62. columns={columns}
  63. customPageSize={10}
  64. pageSizeOptions={[10, 15, 20]}
  65. onRowDoubleClick={handleRowDoubleClick}
  66. doLoad={{
  67. url: GET_GROUP_LIST_PATH,
  68. params: _searchCriteria,
  69. }}
  70. />
  71. </div>
  72. );
  73. }