clean code master plant sub section and master device
This commit is contained in:
@@ -1,18 +1,6 @@
|
||||
import React, { memo, useState, useEffect, useRef } from 'react';
|
||||
import { Table, Pagination, Row, Col, Card, Grid, Button, Typography, Tag, Segmented } from 'antd';
|
||||
import {
|
||||
PlusOutlined,
|
||||
FilterOutlined,
|
||||
EditOutlined,
|
||||
DeleteOutlined,
|
||||
EyeOutlined,
|
||||
SearchOutlined,
|
||||
FilePdfOutlined,
|
||||
AppstoreOutlined,
|
||||
TableOutlined,
|
||||
} from '@ant-design/icons';
|
||||
import { setFilterData } from './DataFilter';
|
||||
import CardDevice from '../../pages/master/device/component/CardDevice';
|
||||
import { AppstoreOutlined, TableOutlined } from '@ant-design/icons';
|
||||
import CardList from './CardList';
|
||||
|
||||
const { Text } = Typography;
|
||||
@@ -33,16 +21,12 @@ const TableList = memo(function TableList({
|
||||
const [gridLoading, setGridLoading] = useState(false);
|
||||
|
||||
const [data, setData] = useState([]);
|
||||
const [pagingResponse, setPagingResponse] = useState({
|
||||
totalData: 0,
|
||||
perPage: 0,
|
||||
totalPage: 0,
|
||||
});
|
||||
|
||||
const [pagination, setPagination] = useState({
|
||||
current: 1,
|
||||
limit: 10,
|
||||
total: 0,
|
||||
current_page: 1,
|
||||
current_limit: 10,
|
||||
total_limit: 0,
|
||||
total_page: 1,
|
||||
});
|
||||
|
||||
const [viewMode, setViewMode] = useState('card');
|
||||
@@ -50,20 +34,34 @@ const TableList = memo(function TableList({
|
||||
const { useBreakpoint } = Grid;
|
||||
|
||||
useEffect(() => {
|
||||
filter(1, 10);
|
||||
filter(1, pagination.current_limit);
|
||||
}, [triger]);
|
||||
|
||||
const filter = async (currentPage, pageSize) => {
|
||||
setGridLoading(true);
|
||||
|
||||
const paging = {
|
||||
page: currentPage,
|
||||
limit: pageSize,
|
||||
page: Number(currentPage),
|
||||
limit: Number(pageSize),
|
||||
};
|
||||
|
||||
const param = new URLSearchParams({ ...paging, ...queryParams });
|
||||
const resData = await getData(param);
|
||||
|
||||
setData(resData?.data ?? []);
|
||||
|
||||
const pagingData = resData?.paging;
|
||||
|
||||
if (pagingData) {
|
||||
setPagination((prev) => ({
|
||||
...prev,
|
||||
current_page: pagingData.current_page || 1,
|
||||
current_limit: pagingData.current_limit || 10,
|
||||
total_limit: pagingData.total_limit || 0,
|
||||
total_page: pagingData.total_page || 1,
|
||||
}));
|
||||
}
|
||||
|
||||
if (resData) {
|
||||
setTimeout(() => {
|
||||
setGridLoading(false);
|
||||
@@ -72,29 +70,6 @@ const TableList = memo(function TableList({
|
||||
setGridLoading(false);
|
||||
return;
|
||||
}
|
||||
|
||||
const dataToSet = resData.data?.data ?? resData.data ?? [];
|
||||
setData(dataToSet);
|
||||
setFilterData(dataToSet);
|
||||
|
||||
if (resData.status == 200) {
|
||||
const pagingData = resData.data?.paging;
|
||||
|
||||
if (pagingData) {
|
||||
setPagingResponse({
|
||||
totalData: pagingData.total || 0,
|
||||
perPage: pagingData.limit || 0,
|
||||
totalPage: pagingData.page_total || 0,
|
||||
});
|
||||
|
||||
setPagination((prev) => ({
|
||||
...prev,
|
||||
current: pagingData.page || 1,
|
||||
limit: pagingData.limit || 10,
|
||||
total: pagingData.total || 0,
|
||||
}));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const handlePaginationChange = (page, pageSize) => {
|
||||
@@ -146,8 +121,8 @@ const TableList = memo(function TableList({
|
||||
<Row justify="space-between" align="middle">
|
||||
<Col>
|
||||
<div>
|
||||
Menampilkan {pagingResponse.totalData} Data dari {pagingResponse.totalPage}{' '}
|
||||
Halaman
|
||||
Menampilkan {pagination.current_limit} data halaman{' '}
|
||||
{pagination.current_page} dari total {pagination.total_limit} data
|
||||
</div>
|
||||
</Col>
|
||||
<Col>
|
||||
@@ -155,9 +130,9 @@ const TableList = memo(function TableList({
|
||||
showSizeChanger
|
||||
onChange={handlePaginationChange}
|
||||
onShowSizeChange={handlePaginationChange}
|
||||
current={pagination.current}
|
||||
pageSize={pagination.limit}
|
||||
total={pagination.total}
|
||||
current={pagination.current_page}
|
||||
pageSize={pagination.current_limit}
|
||||
total={pagination.total_limit}
|
||||
/>
|
||||
</Col>
|
||||
</Row>
|
||||
|
||||
Reference in New Issue
Block a user