Feat : nút back, fix logic giữ fill

uat
Quy_FE 3 months ago
parent 768b2317bc
commit db60b90bc4
  1. 57
      src/_screens/criteria/criteria-manage/index.js
  2. 38
      src/_screens/home/admin/index.js
  3. 7
      src/_screens/home/headmaster/index.js

@ -249,38 +249,39 @@ export default function CriteriaManage() {
statusCriteriaSelected.value
);
useEffect(async() => {
const savedState = sessionStorage.getItem('criteriaManageState');
if (savedState) {
const state = JSON.parse(savedState);
setSearchText(state.searchText);
setListIdSelected(state.listIdSelected);
setProvinceSelect(state.provinceSelect);
setDistrictSelect(state.districtSelect);
setStatusCriteriaSelected(state.statusCriteriaSelected);
if(state.endPointSave){
const res = await apiCaller(state.endPointSave, "GET");
if (res?.status) {
setListData(res?.data);
setIsFiltered(true);
setListIdSelected([]);
}
useEffect(async() => {
const savedState = sessionStorage.getItem('criteriaManageState');
if (savedState) {
const state = JSON.parse(savedState);
setSearchText(state.searchText);
setListIdSelected(state.listIdSelected);
setProvinceSelect(state.provinceSelect);
setDistrictSelect(state.districtSelect);
setStatusCriteriaSelected(state.statusCriteriaSelected);
setendPointSave(state.endPointSave)
if(state.endPointSave){
const res = await apiCaller(state.endPointSave, "GET");
if (res?.status) {
setListData(res?.data);
setIsFiltered(true);
setListIdSelected([]);
}
sessionStorage.removeItem('criteriaManageState');
}
}, []);
sessionStorage.removeItem('criteriaManageState');
}
}, []);
const saveCurrentState = () => {
const currentState = {
searchText,
listIdSelected,
provinceSelect,
districtSelect,
statusCriteriaSelected,
endPointSave,
};
sessionStorage.setItem('criteriaManageState', JSON.stringify(currentState));
const saveCurrentState = () => {
const currentState = {
searchText,
listIdSelected,
provinceSelect,
districtSelect,
statusCriteriaSelected,
endPointSave,
};
sessionStorage.setItem('criteriaManageState', JSON.stringify(currentState));
};
return (
<div className="flex-1">

@ -37,6 +37,8 @@ export default function AdminHome() {
const [isLoading, setIsLoading] = useState(false);
const [listSchool, setListSchool] = useState([]);
const [isSearched, setIsSearched] = useState(false);
const [endPointSave, setendPointSave] = useState(null)
const dispatch = useDispatch();
const isFilterSchool = typeFilter === LIST_TYPE_FILTER_ADMIN_HOME[0]?.value;
@ -60,6 +62,13 @@ export default function AdminHome() {
const endPoint = `/api_organization/get_organization${
queryParams.length ? `?${queryParams.join("&")}` : ""
}`;
setendPointSave(endPoint)
dispatch({
type: TYPE_DISPATCH.SET_END_POINT,
payload: {
endPoint:endPoint
},
})
const res = await apiCaller(endPoint, "GET");
setIsLoading(false);
if (res?.status) {
@ -172,6 +181,7 @@ export default function AdminHome() {
};
const handleClickSchoolItem = (item) => {
saveCurrentState()
history.push(replacePathParams(PATH.home.detailSchool, {schoolId: item?.organization_id}) +
"?school_name=" +
encodeURIComponent(item?.organization_name));
@ -206,6 +216,34 @@ export default function AdminHome() {
getProvinceList();
}, []);
useEffect(async() => {
const savedState = sessionStorage.getItem('adminState');
if (savedState) {
const state = JSON.parse(savedState);
setSearchTextSchool(state.searchTextSchool);
setProvinceSelect(state.provinceSelect);
setDistrictSelect(state.districtSelect);
setendPointSave(state.endPointSave)
if(state.endPointSave){
const res = await apiCaller(state.endPointSave, "GET");
if (res?.status) {
setListSchool(res?.data);
}
}
sessionStorage.removeItem('adminState');
}
}, []);
const saveCurrentState = () => {
const currentState = {
searchTextSchool,
provinceSelect,
districtSelect,
endPointSave,
};
sessionStorage.setItem('adminState', JSON.stringify(currentState));
};
return (
<div className="flex-1">
<Header icon={renderIconHome({ color: "#4D4D4D" })} title={"Trang chủ"} />

@ -197,6 +197,13 @@ export default function HeadmasterHome() {
<div className="container-page-header container-page-sidebar">
<div className="headmaster-home-container bg-main-img">
<div className="headmaster-home-left-side">
<div style={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}>
<PrimaryButton style={{ alignSelf: "center", justifyContent:'flex end', marginRight:30 }} onClick={()=>{
history.goBack()
}}>
Quay lại
</PrimaryButton>
</div>
<div className="headmaster-home-overview">
<p className="headmaster-home-overview-title">
Mức độ hoàn thành của trường

Loading…
Cancel
Save