diff --git a/src/component/ProductComponent.js b/src/component/ProductComponent.js
index 40a6a34..0f12656 100644
--- a/src/component/ProductComponent.js
+++ b/src/component/ProductComponent.js
@@ -15,9 +15,8 @@ export const ProductComponent = observer((props) => {
const {Option} = Select;
const history = useHistory();
const [idData, setIdData] = useState("");
- const [filterSupplier, setFilterSupplier] = useState(null);
- const [filterCategories, setFilterCategories] = useState(null);
- const [filterSubCategories, setFilterSubCategories] = useState(null);
+ const [filterSupplier, setFilterSupplier] = useState([]);
+ const [filterSubCategories, setFilterSubCategories] = useState([]);
const modalLoader = useContext(ModalLoaderContext);
const handleEditButton = (data) => {
@@ -163,17 +162,17 @@ export const ProductComponent = observer((props) => {
const handleRemoveFilter = async () => {
store.product.filterSupplier = null;
store.product.filterSubCategory = null;
- setFilterSupplier(null);
- setFilterCategories(null);
- setFilterSubCategories(null);
+ setFilterSupplier([]);
+ store.product.filterCategory = null;
+ setFilterSubCategories([]);
await store.product.getData();
store.product.visibleModalFilterProduct = false;
};
const handleCancelFilter = () => {
- setFilterSupplier(null);
- setFilterCategories(null);
- setFilterSubCategories(null);
+ setFilterSupplier([]);
+ store.product.filterCategory = null;
+ setFilterSubCategories([]);
store.product.visibleModalFilterProduct = false;
};
@@ -186,14 +185,24 @@ export const ProductComponent = observer((props) => {
store.product.visibleModalFilterProduct = false;
};
+ const handleFilterCategory = async (value) => {
+ if (value) {
+ store.product.filterCategory = value;
+ await store.product.getDataSubCategories();
+ } else {
+ store.product.filterCategory = null;
+ await store.product.getDataSubCategories();
+ }
+ };
+
const footerLayoutFilter = [
,
@@ -403,17 +412,18 @@ export const ProductComponent = observer((props) => {
Filter Supplier
@@ -422,19 +432,16 @@ export const ProductComponent = observer((props) => {
Filter Categories
@@ -443,17 +450,18 @@ export const ProductComponent = observer((props) => {
Filter Sub-Categories
diff --git a/src/pages/Product/Product.js b/src/pages/Product/Product.js
index 21539e1..95f4c34 100644
--- a/src/pages/Product/Product.js
+++ b/src/pages/Product/Product.js
@@ -21,7 +21,7 @@ export const Product = observer(() => {
await Promise.allSettled([
store.supplier.getData(),
store.category.getData(),
- store.category.getDataSubCategories(),
+ store.product.getDataSubCategories(),
]);
await store.product.getData();
modalLoader.setLoading(false);
diff --git a/src/store/product.js b/src/store/product.js
index e03b223..7c893de 100644
--- a/src/store/product.js
+++ b/src/store/product.js
@@ -21,7 +21,7 @@ export class Product {
pageSizeSubCategories = 10
dataSubCategories = [];
total_dataSubCategories = 0;
- filterByCategory = null;
+ filterCategory = null;
constructor(ctx) {
this.ctx = ctx;
@@ -44,7 +44,7 @@ export class Product {
async getDataSubCategories() {
try {
- const response = await http.get(`/product/sub-categories?category=${this.filterByCategory}&page=${this.pageSubCategories}&pageSize=${this.pageSizeSubCategories}`);
+ const response = await http.get(`/product/sub-categories?category=${this.filterCategory}&page=${this.pageSubCategories}&pageSize=${this.pageSizeSubCategories}`);
this.dataSubCategories = response.body.data.map((item, idx) => {
item.key = idx;
return item