diff --git a/src/components/FamilyAcc/FamilyManageTabs.jsx b/src/components/FamilyAcc/FamilyManageTabs.jsx
index e9e5832..63884ed 100644
--- a/src/components/FamilyAcc/FamilyManageTabs.jsx
+++ b/src/components/FamilyAcc/FamilyManageTabs.jsx
@@ -165,7 +165,7 @@ export default function FamilyManageTabs({
handlePrint={useHandlePrint}
/>
),
- Profile: ,
+ Profile: ,
};
// Default tab component
diff --git a/src/components/FamilyAcc/FamilyTable.jsx b/src/components/FamilyAcc/FamilyTable.jsx
index b908a73..836e023 100644
--- a/src/components/FamilyAcc/FamilyTable.jsx
+++ b/src/components/FamilyAcc/FamilyTable.jsx
@@ -139,8 +139,8 @@ export default function FamilyTable({
- {currentFamilyList?.map((familyMember) => {
- return ;
+ {currentFamilyList?.map((familyMember, index) => {
+ return ;
})}
diff --git a/src/components/FamilyAcc/Tabs/FamilyProfile.jsx b/src/components/FamilyAcc/Tabs/FamilyProfile.jsx
index 79e318b..2f928b7 100644
--- a/src/components/FamilyAcc/Tabs/FamilyProfile.jsx
+++ b/src/components/FamilyAcc/Tabs/FamilyProfile.jsx
@@ -1,11 +1,206 @@
-export default function FamilyProfile({ className }) {
+import { useState } from "react";
+import InputCom from "../../Helpers/Inputs/InputCom";
+import LoadingSpinner from "../../Spinners/LoadingSpinner";
+import usersService from "../../../services/UsersService";
+import { useNavigate } from "react-router-dom";
+
+export default function FamilyProfile({familyData, className }) {
+ const navigate = useNavigate()
+ const api = new usersService()
+
+ let [requestStatus, setRequestStatus] = useState({loading:false, status:false, message: ''})
+
+ let [updateDetails, setUpdateDetails] = useState({
+ family_uid: familyData.uid,
+ firstname: familyData.firstname,
+ lastname: familyData.lastname,
+ year: familyData.year,
+ month: familyData.month,
+ action: 22020
+ })
+
+ const handleChange = ({target:{name, value}})=>{
+ setUpdateDetails(prev => ({...prev, [name]:value}))
+ }
+
+ const updateFamily = () => {
+ setRequestStatus({loading:true, status:false, message: ''})
+ let {firstname, lastname, year, month} = updateDetails
+ if(!firstname || !lastname || !year || !month) {
+ setRequestStatus({loading:false, status:false, message: 'Please fill all fields'})
+ return setTimeout(()=>{
+ setRequestStatus({loading:false, status:false, message: ''})
+ }, 5000)
+ }
+
+ api.getFamilyUpdate(updateDetails).then(res=>{
+ if(res.data.internal_return < 0){
+ return setRequestStatus({loading:false, status:false, message: 'Failed, try again!'})
+ }
+ setRequestStatus({loading:false, status:true, message: 'Family account updated'})
+ setTimeout(()=>{
+ navigate('/acc-family', {replace:true})
+ }, 5000)
+ }).catch(error => {
+ setRequestStatus({loading:false, status:false, message: 'Unable to update, try again!'})
+ }).finally(()=>{
+ setTimeout(()=>{
+ setRequestStatus({loading:false, status:false, message: ''})
+ }, 5000)
+ })
+ }
+
return (
);
}
+
+
+
+
+function YearMonthDropdowns({
+ selectedYear,
+ selectedMonth,
+ handleChange
+}) {
+ // Get the current year
+ const currentYear = new Date().getFullYear();
+
+ // Generate an array of years from the current year to (currentYear - 19)
+ const years = Array.from({ length: 17 }, (_, index) => currentYear - index);
+
+ // Array of month names
+ // const months = [
+ // "January",
+ // "February",
+ // "March",
+ // "April",
+ // "May",
+ // "June",
+ // "July",
+ // "August",
+ // "September",
+ // "October",
+ // "November",
+ // "December",
+ // ];
+
+ const months = [
+ {id:'1', name:"January"},
+ {id:'2', name:"February"},
+ {id:'3', name:"March"},
+ {id:'4', name:"April"},
+ {id:'5', name:"May"},
+ {id:'6', name:"June"},
+ {id:'7', name:"July"},
+ {id:'8', name:"August"},
+ {id:'9', name:"September"},
+ {id:'10', name:"October"},
+ {id:'11', name:"November"},
+ {id:'12', name:"December"},
+ ];
+
+ return (
+
+
+
+
+
+ );
+}
+
diff --git a/src/services/UsersService.js b/src/services/UsersService.js
index 1cf3f75..e1670fd 100644
--- a/src/services/UsersService.js
+++ b/src/services/UsersService.js
@@ -578,13 +578,14 @@ class usersService {
return this.postAuxEnd("/familyadd", postData);
}
- getFamilyUpdate() {
+ getFamilyUpdate(reqdata) {
var postData = {
uuid: localStorage.getItem("uid"),
member_id: localStorage.getItem("member_id"),
sessionid: localStorage.getItem("session_token"),
page: 0,
limit: 100,
+ ...reqdata
};
return this.postAuxEnd("/familyupdate", postData);
}