feat : update member

Deskripsi:
- update api member
- update type member
- update list member
- update create member
- update edit member
- update active and non active

No Issue
This commit is contained in:
lukman
2024-08-12 11:59:44 +08:00
parent 655df62dc6
commit 43c4690a28
23 changed files with 619 additions and 592 deletions

View File

@@ -1,30 +1,34 @@
import { IEditDataMember, IFormMember, IStatusmember } from "./type_member";
export const funGetAllmember = async (path?: string) => {
const response = await fetch(`/api/member${(path) ? path : ''}`, { next: { tags: ['member'] } });
const response = await fetch(`/api/user${(path) ? path : ''}`, { next: { tags: ['member'] } });
return await response.json().catch(() => null);
}
export const funGetRoleUser= async (path?: string) => {
const response = await fetch(`/api/role-user${(path) ? path : ''}`, { next: { tags: ['member'] } });
return await response.json().catch(() => null);
}
export const funGetOneMember = async (path: string) => {
const response = await fetch(`/api/member/${path}`);
const response = await fetch(`/api/user/${path}`);
return await response.json().catch(() => null);
}
export const funCreateMember = async (data: IFormMember) => {
if (data.name.length < 3)
return { success: false, message: 'Minimal 3 karakter' }
return { success: false, message: 'Name minimal 3 karakter' }
if (data.email.length < 3)
return { success: false, message: 'Minimal 3 karakter' }
return { success: false, message: 'Email minimal 3 karakter' }
if (data.phone.length < 10)
return { success: false, message: 'Minimal 10 karakter' }
return { success: false, message: 'Phone minimal 10 karakter' }
if (data.nik.length == 16)
if (data.nik.length < 16)
return { success: false, message: 'NIK harus 16 karakter' }
const response = await fetch("/api/member", {
const response = await fetch("/api/user", {
method: "POST",
headers: {
"Content-Type": "application/json",
@@ -37,7 +41,7 @@ export const funCreateMember = async (data: IFormMember) => {
export const funEditStatusMember = async (path: string, data: IStatusmember) => {
const response = await fetch(`/api/member/${path}`, {
const response = await fetch(`/api/user/${path}`, {
method: "DELETE",
headers: {
"Content-Type": "application/json",
@@ -53,7 +57,7 @@ export const funEditMember = async (path: string, data: IEditDataMember) => {
if (data.name.length < 3)
return { success: false, message: 'Minimal 3 karakter' }
const response = await fetch(`/api/member/${path}`, {
const response = await fetch(`/api/user/${path}`, {
method: "PUT",
headers: {
"Content-Type": "application/json",

View File

@@ -1,13 +1,13 @@
export interface IListMember {
id: string,
isActive: boolean
nik: string,
name: string,
phone: string,
nik: string,
email: string,
phone: string,
gender: string,
group: string,
position: string,
group: string,
isActive: boolean
}
export interface IFormMember {
@@ -46,4 +46,8 @@ export interface IEditDataMember {
export interface IDataROleMember {
id: string;
name: string;
}
export interface IMember{
id: string
}