mirror of
https://gitlab.com/mbugroup/lti-web-client.git
synced 2026-05-23 23:05:46 +00:00
829 lines
21 KiB
TypeScript
829 lines
21 KiB
TypeScript
import { sleep } from '@/lib/helper';
|
|
import { BaseApiService } from '@/services/api/base';
|
|
import { BaseApiResponse } from '@/types/api/api-general';
|
|
|
|
import {
|
|
CreateTransferToLayingPayload,
|
|
TransferToLaying,
|
|
UpdateTransferToLayingPayload,
|
|
} from '@/types/api/production/transfer-to-laying';
|
|
import { FlockWithKandangs } from '@/types/api/master-data/flock';
|
|
|
|
// TODO: delete this dummy data
|
|
const GET_ALL_TRANSFER_TO_LAYING_DUMMY_DATA: BaseApiResponse<
|
|
TransferToLaying[]
|
|
> = {
|
|
code: 200,
|
|
status: 'success',
|
|
message: 'Successfully get all transfer to laying data!',
|
|
meta: {
|
|
page: 1,
|
|
limit: 10,
|
|
total_pages: 1,
|
|
total_results: 8,
|
|
},
|
|
data: [
|
|
{
|
|
id: 201,
|
|
transfer_date: '2025-10-10',
|
|
flock_source: { id: 1, name: 'Flock A' },
|
|
flock_destination: { id: 10, name: 'Laying House 1' },
|
|
quantity: 1200,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 11,
|
|
name: 'KDG-11',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 101,
|
|
name: 'Farm Alpha',
|
|
address: 'Jl. Raya Alpha No. 1',
|
|
area: { id: 1001, name: 'Area Utara' },
|
|
},
|
|
pic: {
|
|
id: 501,
|
|
id_user: 501,
|
|
email: 'rina@farm.co',
|
|
name: 'Rina Setiawan',
|
|
},
|
|
created_user: {
|
|
id: 9001,
|
|
id_user: 9001,
|
|
email: 'admin@farm.co',
|
|
name: 'System Admin',
|
|
},
|
|
created_at: '2025-09-01T08:00:00Z',
|
|
updated_at: '2025-10-01T08:00:00Z',
|
|
},
|
|
quantity: 600,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 12,
|
|
name: 'KDG-12',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 101,
|
|
name: 'Farm Alpha',
|
|
address: 'Jl. Raya Alpha No. 1',
|
|
area: { id: 1001, name: 'Area Utara' },
|
|
},
|
|
pic: {
|
|
id: 502,
|
|
id_user: 502,
|
|
email: 'budi@farm.co',
|
|
name: 'Budi Hartono',
|
|
},
|
|
created_user: {
|
|
id: 9002,
|
|
id_user: 9002,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-08-25T08:00:00Z',
|
|
updated_at: '2025-09-20T08:00:00Z',
|
|
},
|
|
quantity: 600,
|
|
},
|
|
],
|
|
reason: 'Start laying cycle',
|
|
created_user: {
|
|
id: 9100,
|
|
id_user: 9100,
|
|
email: 'planner@farm.co',
|
|
name: 'Planning',
|
|
},
|
|
created_at: '2025-10-10T06:00:00Z',
|
|
updated_at: '2025-10-10T06:00:00Z',
|
|
},
|
|
{
|
|
id: 202,
|
|
transfer_date: '2025-10-11',
|
|
flock_source: { id: 2, name: 'Flock B' },
|
|
flock_destination: { id: 10, name: 'Laying House 1' },
|
|
quantity: 950,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 13,
|
|
name: 'KDG-13',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 102,
|
|
name: 'Farm Beta',
|
|
address: 'Jl. Melati 2',
|
|
area: { id: 1002, name: 'Area Selatan' },
|
|
},
|
|
pic: {
|
|
id: 503,
|
|
id_user: 503,
|
|
email: 'sari@farm.co',
|
|
name: 'Sari Wulandari',
|
|
},
|
|
created_user: {
|
|
id: 9003,
|
|
id_user: 9003,
|
|
email: 'system@farm.co',
|
|
name: 'System',
|
|
},
|
|
created_at: '2025-09-05T08:00:00Z',
|
|
updated_at: '2025-10-02T08:00:00Z',
|
|
},
|
|
quantity: 500,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 14,
|
|
name: 'KDG-14',
|
|
status: 'MAINTENANCE',
|
|
location: {
|
|
id: 102,
|
|
name: 'Farm Beta',
|
|
address: 'Jl. Melati 2',
|
|
area: { id: 1002, name: 'Area Selatan' },
|
|
},
|
|
pic: {
|
|
id: 504,
|
|
id_user: 504,
|
|
email: 'agus@farm.co',
|
|
name: 'Agus Pratama',
|
|
},
|
|
created_user: {
|
|
id: 9003,
|
|
id_user: 9003,
|
|
email: 'system@farm.co',
|
|
name: 'System',
|
|
},
|
|
created_at: '2025-07-15T08:00:00Z',
|
|
updated_at: '2025-09-15T08:00:00Z',
|
|
},
|
|
quantity: 450,
|
|
},
|
|
],
|
|
reason: 'Capacity balancing',
|
|
created_user: {
|
|
id: 9101,
|
|
id_user: 9101,
|
|
email: 'planner@farm.co',
|
|
name: 'Planning',
|
|
},
|
|
created_at: '2025-10-11T06:00:00Z',
|
|
updated_at: '2025-10-11T06:00:00Z',
|
|
},
|
|
{
|
|
id: 203,
|
|
transfer_date: '2025-10-12',
|
|
flock_source: { id: 3, name: 'Flock C' },
|
|
flock_destination: { id: 11, name: 'Laying House 2' },
|
|
quantity: 1100,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 21,
|
|
name: 'KDG-21',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 103,
|
|
name: 'Farm Gamma',
|
|
address: 'Dusun Gamma',
|
|
area: { id: 1003, name: 'Area Timur' },
|
|
},
|
|
pic: {
|
|
id: 505,
|
|
id_user: 505,
|
|
email: 'dewi@farm.co',
|
|
name: 'Dewi Lestari',
|
|
},
|
|
created_user: {
|
|
id: 9004,
|
|
id_user: 9004,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-10T08:00:00Z',
|
|
updated_at: '2025-10-05T08:00:00Z',
|
|
},
|
|
quantity: 700,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 22,
|
|
name: 'KDG-22',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 103,
|
|
name: 'Farm Gamma',
|
|
address: 'Dusun Gamma',
|
|
area: { id: 1003, name: 'Area Timur' },
|
|
},
|
|
pic: {
|
|
id: 506,
|
|
id_user: 506,
|
|
email: 'hadi@farm.co',
|
|
name: 'Hadi Santoso',
|
|
},
|
|
created_user: {
|
|
id: 9004,
|
|
id_user: 9004,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-12T08:00:00Z',
|
|
updated_at: '2025-10-06T08:00:00Z',
|
|
},
|
|
quantity: 400,
|
|
},
|
|
],
|
|
reason: 'Align age group',
|
|
created_user: {
|
|
id: 9102,
|
|
id_user: 9102,
|
|
email: 'scheduler@farm.co',
|
|
name: 'Scheduler',
|
|
},
|
|
created_at: '2025-10-12T06:00:00Z',
|
|
updated_at: '2025-10-12T06:00:00Z',
|
|
},
|
|
{
|
|
id: 204,
|
|
transfer_date: '2025-10-13',
|
|
flock_source: { id: 1, name: 'Flock A' },
|
|
flock_destination: { id: 12, name: 'Laying House 3' },
|
|
quantity: 800,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 15,
|
|
name: 'KDG-15',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 101,
|
|
name: 'Farm Alpha',
|
|
address: 'Jl. Raya Alpha No. 1',
|
|
area: { id: 1001, name: 'Area Utara' },
|
|
},
|
|
pic: {
|
|
id: 507,
|
|
id_user: 507,
|
|
email: 'nadia@farm.co',
|
|
name: 'Nadia Putri',
|
|
},
|
|
created_user: {
|
|
id: 9001,
|
|
id_user: 9001,
|
|
email: 'admin@farm.co',
|
|
name: 'System Admin',
|
|
},
|
|
created_at: '2025-08-01T08:00:00Z',
|
|
updated_at: '2025-09-28T08:00:00Z',
|
|
},
|
|
quantity: 800,
|
|
},
|
|
],
|
|
reason: 'Open capacity in LH3',
|
|
created_user: {
|
|
id: 9103,
|
|
id_user: 9103,
|
|
email: 'opslead@farm.co',
|
|
name: 'Ops Lead',
|
|
},
|
|
created_at: '2025-10-13T06:00:00Z',
|
|
updated_at: '2025-10-13T06:00:00Z',
|
|
},
|
|
{
|
|
id: 205,
|
|
transfer_date: '2025-10-14',
|
|
flock_source: { id: 4, name: 'Flock D' },
|
|
flock_destination: { id: 11, name: 'Laying House 2' },
|
|
quantity: 650,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 23,
|
|
name: 'KDG-23',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 104,
|
|
name: 'Farm Delta',
|
|
address: 'Jl. Delta 4',
|
|
area: { id: 1004, name: 'Area Barat' },
|
|
},
|
|
pic: {
|
|
id: 508,
|
|
id_user: 508,
|
|
email: 'yoga@farm.co',
|
|
name: 'Yoga Prabowo',
|
|
},
|
|
created_user: {
|
|
id: 9005,
|
|
id_user: 9005,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-20T08:00:00Z',
|
|
updated_at: '2025-10-10T08:00:00Z',
|
|
},
|
|
quantity: 350,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 24,
|
|
name: 'KDG-24',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 104,
|
|
name: 'Farm Delta',
|
|
address: 'Jl. Delta 4',
|
|
area: { id: 1004, name: 'Area Barat' },
|
|
},
|
|
pic: {
|
|
id: 509,
|
|
id_user: 509,
|
|
email: 'mega@farm.co',
|
|
name: 'Mega Anggraini',
|
|
},
|
|
created_user: {
|
|
id: 9005,
|
|
id_user: 9005,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-21T08:00:00Z',
|
|
updated_at: '2025-10-10T08:00:00Z',
|
|
},
|
|
quantity: 300,
|
|
},
|
|
],
|
|
reason: 'Fill remaining LH2 slots',
|
|
created_user: {
|
|
id: 9104,
|
|
id_user: 9104,
|
|
email: 'scheduler@farm.co',
|
|
name: 'Scheduler',
|
|
},
|
|
created_at: '2025-10-14T06:00:00Z',
|
|
updated_at: '2025-10-14T06:00:00Z',
|
|
},
|
|
{
|
|
id: 206,
|
|
transfer_date: '2025-10-15',
|
|
flock_source: { id: 2, name: 'Flock B' },
|
|
flock_destination: { id: 12, name: 'Laying House 3' },
|
|
quantity: 720,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 16,
|
|
name: 'KDG-16',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 102,
|
|
name: 'Farm Beta',
|
|
address: 'Jl. Melati 2',
|
|
area: { id: 1002, name: 'Area Selatan' },
|
|
},
|
|
pic: {
|
|
id: 510,
|
|
id_user: 510,
|
|
email: 'rizky@farm.co',
|
|
name: 'Rizky Maulana',
|
|
},
|
|
created_user: {
|
|
id: 9003,
|
|
id_user: 9003,
|
|
email: 'system@farm.co',
|
|
name: 'System',
|
|
},
|
|
created_at: '2025-08-12T08:00:00Z',
|
|
updated_at: '2025-10-01T08:00:00Z',
|
|
},
|
|
quantity: 420,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 17,
|
|
name: 'KDG-17',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 102,
|
|
name: 'Farm Beta',
|
|
address: 'Jl. Melati 2',
|
|
area: { id: 1002, name: 'Area Selatan' },
|
|
},
|
|
pic: {
|
|
id: 511,
|
|
id_user: 511,
|
|
email: 'tia@farm.co',
|
|
name: 'Tia Safitri',
|
|
},
|
|
created_user: {
|
|
id: 9003,
|
|
id_user: 9003,
|
|
email: 'system@farm.co',
|
|
name: 'System',
|
|
},
|
|
created_at: '2025-08-18T08:00:00Z',
|
|
updated_at: '2025-10-01T08:00:00Z',
|
|
},
|
|
quantity: 300,
|
|
},
|
|
],
|
|
reason: 'Stage-by-stage transfer',
|
|
created_user: {
|
|
id: 9105,
|
|
id_user: 9105,
|
|
email: 'opslead@farm.co',
|
|
name: 'Ops Lead',
|
|
},
|
|
created_at: '2025-10-15T06:00:00Z',
|
|
updated_at: '2025-10-15T06:00:00Z',
|
|
},
|
|
{
|
|
id: 207,
|
|
transfer_date: '2025-10-16',
|
|
flock_source: { id: 5, name: 'Flock E' },
|
|
flock_destination: { id: 10, name: 'Laying House 1' },
|
|
quantity: 500,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 18,
|
|
name: 'KDG-18',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 105,
|
|
name: 'Farm Epsilon',
|
|
address: 'Kp. Epsilon',
|
|
area: { id: 1005, name: 'Area Tengah' },
|
|
},
|
|
pic: {
|
|
id: 512,
|
|
id_user: 512,
|
|
email: 'lukas@farm.co',
|
|
name: 'Lukas Aditya',
|
|
},
|
|
created_user: {
|
|
id: 9006,
|
|
id_user: 9006,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-01T08:00:00Z',
|
|
updated_at: '2025-10-12T08:00:00Z',
|
|
},
|
|
quantity: 250,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 19,
|
|
name: 'KDG-19',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 105,
|
|
name: 'Farm Epsilon',
|
|
address: 'Kp. Epsilon',
|
|
area: { id: 1005, name: 'Area Tengah' },
|
|
},
|
|
pic: {
|
|
id: 513,
|
|
id_user: 513,
|
|
email: 'maya@farm.co',
|
|
name: 'Maya Kartika',
|
|
},
|
|
created_user: {
|
|
id: 9006,
|
|
id_user: 9006,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-03T08:00:00Z',
|
|
updated_at: '2025-10-12T08:00:00Z',
|
|
},
|
|
quantity: 250,
|
|
},
|
|
],
|
|
reason: 'Trial batch',
|
|
created_user: {
|
|
id: 9106,
|
|
id_user: 9106,
|
|
email: 'planner@farm.co',
|
|
name: 'Planning',
|
|
},
|
|
created_at: '2025-10-16T06:00:00Z',
|
|
updated_at: '2025-10-16T06:00:00Z',
|
|
},
|
|
{
|
|
id: 208,
|
|
transfer_date: '2025-10-17',
|
|
flock_source: { id: 6, name: 'Flock F' },
|
|
flock_destination: { id: 13, name: 'Laying House 4' },
|
|
quantity: 1300,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 25,
|
|
name: 'KDG-25',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 106,
|
|
name: 'Farm Zeta',
|
|
address: 'Jl. Zeta 6',
|
|
area: { id: 1006, name: 'Area Tenggara' },
|
|
},
|
|
pic: {
|
|
id: 514,
|
|
id_user: 514,
|
|
email: 'rara@farm.co',
|
|
name: 'Rara Pertiwi',
|
|
},
|
|
created_user: {
|
|
id: 9007,
|
|
id_user: 9007,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-07T08:00:00Z',
|
|
updated_at: '2025-10-13T08:00:00Z',
|
|
},
|
|
quantity: 700,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 26,
|
|
name: 'KDG-26',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 106,
|
|
name: 'Farm Zeta',
|
|
address: 'Jl. Zeta 6',
|
|
area: { id: 1006, name: 'Area Tenggara' },
|
|
},
|
|
pic: {
|
|
id: 515,
|
|
id_user: 515,
|
|
email: 'doni@farm.co',
|
|
name: 'Doni Firmansyah',
|
|
},
|
|
created_user: {
|
|
id: 9007,
|
|
id_user: 9007,
|
|
email: 'ops@farm.co',
|
|
name: 'Ops Bot',
|
|
},
|
|
created_at: '2025-09-09T08:00:00Z',
|
|
updated_at: '2025-10-13T08:00:00Z',
|
|
},
|
|
quantity: 600,
|
|
},
|
|
],
|
|
reason: 'Open new house',
|
|
created_user: {
|
|
id: 9107,
|
|
id_user: 9107,
|
|
email: 'scheduler@farm.co',
|
|
name: 'Scheduler',
|
|
},
|
|
created_at: '2025-10-17T06:00:00Z',
|
|
updated_at: '2025-10-17T06:00:00Z',
|
|
},
|
|
],
|
|
};
|
|
|
|
// TODO: delete this dummy data
|
|
const FLOCK_SOURCE_DUMMY_DATA: BaseApiResponse<FlockWithKandangs[]> = {
|
|
code: 200,
|
|
status: 'success',
|
|
message: 'Get all projectflocks successfully',
|
|
meta: {
|
|
page: 1,
|
|
limit: 10,
|
|
total_pages: 1,
|
|
total_results: 2,
|
|
},
|
|
data: [
|
|
{
|
|
id: 2,
|
|
name: 'Flock Banten',
|
|
totalQuantity: 300,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 3,
|
|
name: 'Cikaum 1',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 1,
|
|
name: 'Singaparna',
|
|
address: 'Tasik',
|
|
area: {
|
|
id: 1,
|
|
name: 'test area',
|
|
},
|
|
},
|
|
pic: {
|
|
id: 1,
|
|
id_user: 1,
|
|
email: 'admin@mbugroup.id',
|
|
name: 'Super Admin',
|
|
},
|
|
},
|
|
quantity: 100,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 4,
|
|
name: 'Cikaum 2',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 1,
|
|
name: 'Singaparna',
|
|
address: 'Tasik',
|
|
area: {
|
|
id: 1,
|
|
name: 'test area',
|
|
},
|
|
},
|
|
pic: {
|
|
id: 1,
|
|
id_user: 1,
|
|
email: 'admin@mbugroup.id',
|
|
name: 'Super Admin',
|
|
},
|
|
},
|
|
quantity: 150,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 5,
|
|
name: 'Cikaum 3',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 1,
|
|
name: 'Singaparna',
|
|
address: 'Tasik',
|
|
area: {
|
|
id: 1,
|
|
name: 'test area',
|
|
},
|
|
},
|
|
pic: {
|
|
id: 1,
|
|
id_user: 1,
|
|
email: 'admin@mbugroup.id',
|
|
name: 'Super Admin',
|
|
},
|
|
},
|
|
quantity: 50,
|
|
},
|
|
],
|
|
},
|
|
|
|
{
|
|
id: 3,
|
|
name: 'Flock Priangan',
|
|
totalQuantity: 200,
|
|
kandangs: [
|
|
{
|
|
kandang: {
|
|
id: 3,
|
|
name: 'Cikaum 1',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 1,
|
|
name: 'Singaparna',
|
|
address: 'Tasik',
|
|
area: {
|
|
id: 1,
|
|
name: 'Priangan',
|
|
},
|
|
},
|
|
pic: {
|
|
id: 1,
|
|
id_user: 1,
|
|
email: 'admin@mbugroup.id',
|
|
name: 'Super Admin',
|
|
},
|
|
},
|
|
quantity: 100,
|
|
},
|
|
{
|
|
kandang: {
|
|
id: 4,
|
|
name: 'Cikaum 2',
|
|
status: 'ACTIVE',
|
|
location: {
|
|
id: 1,
|
|
name: 'Singaparna',
|
|
address: 'Tasik',
|
|
area: {
|
|
id: 1,
|
|
name: 'test area',
|
|
},
|
|
},
|
|
pic: {
|
|
id: 1,
|
|
id_user: 1,
|
|
email: 'admin@mbugroup.id',
|
|
name: 'Super Admin',
|
|
},
|
|
},
|
|
quantity: 100,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
};
|
|
|
|
export class TransferToLayingService extends BaseApiService<
|
|
TransferToLaying,
|
|
CreateTransferToLayingPayload,
|
|
UpdateTransferToLayingPayload
|
|
> {
|
|
constructor(basePath: string = '') {
|
|
super(basePath);
|
|
}
|
|
|
|
// TODO: remove dummy data and integrate to real API
|
|
override async getAllFetcher(
|
|
endpoint: string
|
|
): Promise<BaseApiResponse<TransferToLaying[]>> {
|
|
// return await httpClientFetcher<BaseApiResponse<T[]>>(endpoint);
|
|
|
|
await sleep(750);
|
|
|
|
return GET_ALL_TRANSFER_TO_LAYING_DUMMY_DATA;
|
|
}
|
|
|
|
// TODO: remove dummy data and integrate to real API
|
|
async getFlockSource(): Promise<
|
|
BaseApiResponse<FlockWithKandangs[]> | undefined
|
|
> {
|
|
try {
|
|
// const getFlockSourcePath = `${this.basePath}/${flockSourcePath}`;
|
|
// const getSingleRes = await httpClient<FlockSourceType>(getFlockSourcePath);
|
|
// return getSingleRes;
|
|
|
|
await sleep(500);
|
|
|
|
return FLOCK_SOURCE_DUMMY_DATA;
|
|
} catch (error) {
|
|
// if (axios.isAxiosError<BaseApiResponse<T>>(error)) {
|
|
// return error.response?.data;
|
|
// }
|
|
|
|
return undefined;
|
|
}
|
|
}
|
|
|
|
// TODO: remove dummy data and integrate to real API
|
|
async bulkApprove(
|
|
ids: number[]
|
|
): Promise<BaseApiResponse<{ message: string }> | undefined> {
|
|
try {
|
|
await sleep(750);
|
|
|
|
return {
|
|
code: 200,
|
|
status: 'success',
|
|
message: 'Berhasil approve data transfer ke laying!',
|
|
data: {
|
|
message: 'Berhasil approve data transfer ke laying!',
|
|
},
|
|
};
|
|
} catch (error) {
|
|
// if (axios.isAxiosError<BaseApiResponse<T>>(error)) {
|
|
// return error.response?.data;
|
|
// }
|
|
|
|
return undefined;
|
|
}
|
|
}
|
|
|
|
// TODO: remove dummy data and integrate to real API
|
|
async bulkReject(
|
|
ids: number[]
|
|
): Promise<BaseApiResponse<{ message: string }> | undefined> {
|
|
try {
|
|
await sleep(750);
|
|
|
|
return {
|
|
code: 200,
|
|
status: 'success',
|
|
message: 'Berhasil reject data transfer ke laying!',
|
|
data: {
|
|
message: 'Berhasil reject data transfer ke laying!',
|
|
},
|
|
};
|
|
} catch (error) {
|
|
// if (axios.isAxiosError<BaseApiResponse<T>>(error)) {
|
|
// return error.response?.data;
|
|
// }
|
|
|
|
return undefined;
|
|
}
|
|
}
|
|
}
|
|
|
|
export const TransferToLayingApi = new TransferToLayingService('');
|