feat: residues accounting

This commit is contained in:
2025-01-14 21:35:06 +04:00
parent fec6b13972
commit c45d2ac20a
74 changed files with 2994 additions and 28 deletions

View File

@@ -42,8 +42,10 @@ export type { ClientCreateRequest } from './models/ClientCreateRequest';
export type { ClientCreateResponse } from './models/ClientCreateResponse';
export type { ClientDeleteRequest } from './models/ClientDeleteRequest';
export type { ClientDeleteResponse } from './models/ClientDeleteResponse';
export type { ClientDetailedSchema } from './models/ClientDetailedSchema';
export type { ClientDetailsSchema } from './models/ClientDetailsSchema';
export type { ClientGetAllResponse } from './models/ClientGetAllResponse';
export type { ClientGetResponse } from './models/ClientGetResponse';
export type { ClientSchema } from './models/ClientSchema';
export type { ClientUpdateDetailsRequest } from './models/ClientUpdateDetailsRequest';
export type { ClientUpdateRequest } from './models/ClientUpdateRequest';
@@ -71,6 +73,13 @@ export type { CreatePositionRequest } from './models/CreatePositionRequest';
export type { CreatePositionResponse } from './models/CreatePositionResponse';
export type { CreatePriceCategoryRequest } from './models/CreatePriceCategoryRequest';
export type { CreatePriceCategoryResponse } from './models/CreatePriceCategoryResponse';
export type { CreateResidualBoxRequest } from './models/CreateResidualBoxRequest';
export type { CreateResidualBoxResponse } from './models/CreateResidualBoxResponse';
export type { CreateResidualPalletRequest } from './models/CreateResidualPalletRequest';
export type { CreateResidualPalletResponse } from './models/CreateResidualPalletResponse';
export type { CreateResidualProductRequest } from './models/CreateResidualProductRequest';
export type { CreateResidualProductResponse } from './models/CreateResidualProductResponse';
export type { CreateResidualProductSchema } from './models/CreateResidualProductSchema';
export type { CreateServiceKitSchema } from './models/CreateServiceKitSchema';
export type { CreateServicesKitRequest } from './models/CreateServicesKitRequest';
export type { CreateServicesKitResponse } from './models/CreateServicesKitResponse';
@@ -163,6 +172,9 @@ export type { DeletePositionRequest } from './models/DeletePositionRequest';
export type { DeletePositionResponse } from './models/DeletePositionResponse';
export type { DeletePriceCategoryRequest } from './models/DeletePriceCategoryRequest';
export type { DeletePriceCategoryResponse } from './models/DeletePriceCategoryResponse';
export type { DeleteResidualBoxResponse } from './models/DeleteResidualBoxResponse';
export type { DeleteResidualPalletResponse } from './models/DeleteResidualPalletResponse';
export type { DeleteResidualProductResponse } from './models/DeleteResidualProductResponse';
export type { DeleteShiftResponse } from './models/DeleteShiftResponse';
export type { DeleteShippingProductResponse } from './models/DeleteShippingProductResponse';
export type { DeleteShippingWarehouseRequest } from './models/DeleteShippingWarehouseRequest';
@@ -214,6 +226,8 @@ export type { GetProfitChartDataRequest } from './models/GetProfitChartDataReque
export type { GetProfitChartDataResponse } from './models/GetProfitChartDataResponse';
export type { GetProfitTableDataRequest } from './models/GetProfitTableDataRequest';
export type { GetProfitTableDataResponse } from './models/GetProfitTableDataResponse';
export type { GetResidualBoxResponse } from './models/GetResidualBoxResponse';
export type { GetResidualPalletResponse } from './models/GetResidualPalletResponse';
export type { GetServiceKitSchema } from './models/GetServiceKitSchema';
export type { GetTimeTrackingRecordsRequest } from './models/GetTimeTrackingRecordsRequest';
export type { GetTimeTrackingRecordsResponse } from './models/GetTimeTrackingRecordsResponse';
@@ -221,6 +235,8 @@ export type { GetTransactionTagsResponse } from './models/GetTransactionTagsResp
export type { GetWorkShiftsResponse } from './models/GetWorkShiftsResponse';
export type { GroupBillRequestSchema } from './models/GroupBillRequestSchema';
export type { HTTPValidationError } from './models/HTTPValidationError';
export type { LoadReceiptRequest } from './models/LoadReceiptRequest';
export type { LoadReceiptResponse } from './models/LoadReceiptResponse';
export type { ManageEmployeeRequest } from './models/ManageEmployeeRequest';
export type { ManageEmployeeResponse } from './models/ManageEmployeeResponse';
export type { MarketplaceCreateSchema } from './models/MarketplaceCreateSchema';
@@ -242,6 +258,7 @@ export type { PermissionSchema } from './models/PermissionSchema';
export type { PositionSchema } from './models/PositionSchema';
export type { ProductAddBarcodeRequest } from './models/ProductAddBarcodeRequest';
export type { ProductAddBarcodeResponse } from './models/ProductAddBarcodeResponse';
export type { ProductAndQuantitySchema } from './models/ProductAndQuantitySchema';
export type { ProductCreateRequest } from './models/ProductCreateRequest';
export type { ProductCreateResponse } from './models/ProductCreateResponse';
export type { ProductDeleteBarcodeImageResponse } from './models/ProductDeleteBarcodeImageResponse';
@@ -262,6 +279,11 @@ export type { ProductUploadImageResponse } from './models/ProductUploadImageResp
export type { ProfitChartDataItem } from './models/ProfitChartDataItem';
export type { ProfitTableDataItem } from './models/ProfitTableDataItem';
export type { ProfitTableGroupBy } from './models/ProfitTableGroupBy';
export type { ReceiptBoxSchema } from './models/ReceiptBoxSchema';
export type { ReceiptPalletSchema } from './models/ReceiptPalletSchema';
export type { ResidualBoxSchema } from './models/ResidualBoxSchema';
export type { ResidualPalletSchema } from './models/ResidualPalletSchema';
export type { ResidualProductSchema } from './models/ResidualProductSchema';
export type { RoleSchema } from './models/RoleSchema';
export type { ServiceCategoryPriceSchema } from './models/ServiceCategoryPriceSchema';
export type { ServiceCategoryReorderRequest } from './models/ServiceCategoryReorderRequest';
@@ -310,6 +332,9 @@ export type { UpdatePayRateRequest } from './models/UpdatePayRateRequest';
export type { UpdatePayRateResponse } from './models/UpdatePayRateResponse';
export type { UpdatePriceCategoryRequest } from './models/UpdatePriceCategoryRequest';
export type { UpdatePriceCategoryResponse } from './models/UpdatePriceCategoryResponse';
export type { UpdateResidualProductRequest } from './models/UpdateResidualProductRequest';
export type { UpdateResidualProductResponse } from './models/UpdateResidualProductResponse';
export type { UpdateResidualProductSchema } from './models/UpdateResidualProductSchema';
export type { UpdateServiceKitSchema } from './models/UpdateServiceKitSchema';
export type { UpdateServicesKitRequest } from './models/UpdateServicesKitRequest';
export type { UpdateServicesKitResponse } from './models/UpdateServicesKitResponse';
@@ -345,6 +370,7 @@ export { MarketplaceService } from './services/MarketplaceService';
export { PayrollService } from './services/PayrollService';
export { PositionService } from './services/PositionService';
export { ProductService } from './services/ProductService';
export { ResiduesService } from './services/ResiduesService';
export { RoleService } from './services/RoleService';
export { ServiceService } from './services/ServiceService';
export { ShippingService } from './services/ShippingService';

View File

@@ -0,0 +1,19 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { BarcodeTemplateSchema } from './BarcodeTemplateSchema';
import type { ClientDetailsSchema } from './ClientDetailsSchema';
import type { ResidualBoxSchema } from './ResidualBoxSchema';
import type { ResidualPalletSchema } from './ResidualPalletSchema';
export type ClientDetailedSchema = {
id: number;
name: string;
companyName: string;
barcodeTemplate?: (BarcodeTemplateSchema | null);
comment?: (string | null);
details?: (ClientDetailsSchema | null);
pallets?: Array<ResidualPalletSchema>;
boxes?: Array<ResidualBoxSchema>;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ClientDetailedSchema } from './ClientDetailedSchema';
export type ClientGetResponse = {
client: ClientDetailedSchema;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type CreateResidualBoxRequest = {
clientId: (number | null);
palletId: (number | null);
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type CreateResidualBoxResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,8 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type CreateResidualPalletRequest = {
clientId: number;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type CreateResidualPalletResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { CreateResidualProductSchema } from './CreateResidualProductSchema';
export type CreateResidualProductRequest = {
data: CreateResidualProductSchema;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type CreateResidualProductResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,11 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type CreateResidualProductSchema = {
productId: (number | null);
quantity: (number | null);
palletId: (number | null);
boxId: (number | null);
};

View File

@@ -7,6 +7,7 @@ export type DealGeneralInfoSchema = {
name: string;
isDeleted: boolean;
isCompleted: boolean;
isAccounted: boolean;
comment: string;
shippingWarehouse?: (string | null);
deliveryDate?: (string | null);

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type DeleteResidualBoxResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type DeleteResidualPalletResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type DeleteResidualProductResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,10 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ResidualBoxSchema } from './ResidualBoxSchema';
export type GetResidualBoxResponse = {
box: ResidualBoxSchema;
clientId: number;
};

View File

@@ -0,0 +1,10 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ResidualPalletSchema } from './ResidualPalletSchema';
export type GetResidualPalletResponse = {
pallet: ResidualPalletSchema;
clientId: number;
};

View File

@@ -0,0 +1,12 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ReceiptBoxSchema } from './ReceiptBoxSchema';
import type { ReceiptPalletSchema } from './ReceiptPalletSchema';
export type LoadReceiptRequest = {
pallets: Array<ReceiptPalletSchema>;
boxes: Array<ReceiptBoxSchema>;
clientId: number;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type LoadReceiptResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type ProductAndQuantitySchema = {
productId: (number | null);
quantity: (number | null);
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ProductAndQuantitySchema } from './ProductAndQuantitySchema';
export type ReceiptBoxSchema = {
products: Array<ProductAndQuantitySchema>;
};

View File

@@ -0,0 +1,11 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ProductAndQuantitySchema } from './ProductAndQuantitySchema';
import type { ReceiptBoxSchema } from './ReceiptBoxSchema';
export type ReceiptPalletSchema = {
products: Array<ProductAndQuantitySchema>;
boxes: Array<ReceiptBoxSchema>;
};

View File

@@ -0,0 +1,13 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ResidualProductSchema } from './ResidualProductSchema';
export type ResidualBoxSchema = {
id: number;
createdAt: string;
palletId: (number | null);
clientId: (number | null);
residualProducts: Array<ResidualProductSchema>;
};

View File

@@ -0,0 +1,13 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ResidualBoxSchema } from './ResidualBoxSchema';
import type { ResidualProductSchema } from './ResidualProductSchema';
export type ResidualPalletSchema = {
id: number;
createdAt: string;
boxes: Array<ResidualBoxSchema>;
residualProducts: Array<ResidualProductSchema>;
};

View File

@@ -0,0 +1,13 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ProductSchema } from './ProductSchema';
export type ResidualProductSchema = {
id: number;
quantity: number;
product: ProductSchema;
palletId: (number | null);
boxId: (number | null);
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { UpdateResidualProductSchema } from './UpdateResidualProductSchema';
export type UpdateResidualProductRequest = {
data: UpdateResidualProductSchema;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type UpdateResidualProductResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type UpdateResidualProductSchema = {
productId: (number | null);
quantity: (number | null);
};

View File

@@ -7,6 +7,7 @@ import type { ClientCreateResponse } from '../models/ClientCreateResponse';
import type { ClientDeleteRequest } from '../models/ClientDeleteRequest';
import type { ClientDeleteResponse } from '../models/ClientDeleteResponse';
import type { ClientGetAllResponse } from '../models/ClientGetAllResponse';
import type { ClientGetResponse } from '../models/ClientGetResponse';
import type { ClientUpdateDetailsRequest } from '../models/ClientUpdateDetailsRequest';
import type { ClientUpdateRequest } from '../models/ClientUpdateRequest';
import type { ClientUpdateResponse } from '../models/ClientUpdateResponse';
@@ -66,6 +67,27 @@ export class ClientService {
url: '/client/get-all',
});
}
/**
* Get Client
* @returns ClientGetResponse Successful Response
* @throws ApiError
*/
public static getClient({
clientId,
}: {
clientId: number,
}): CancelablePromise<ClientGetResponse> {
return __request(OpenAPI, {
method: 'GET',
url: '/client/get/{client_id}',
path: {
'client_id': clientId,
},
errors: {
422: `Validation Error`,
},
});
}
/**
* Create Client
* @returns ClientCreateResponse Successful Response

View File

@@ -0,0 +1,258 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { CreateResidualBoxRequest } from '../models/CreateResidualBoxRequest';
import type { CreateResidualBoxResponse } from '../models/CreateResidualBoxResponse';
import type { CreateResidualPalletRequest } from '../models/CreateResidualPalletRequest';
import type { CreateResidualPalletResponse } from '../models/CreateResidualPalletResponse';
import type { CreateResidualProductRequest } from '../models/CreateResidualProductRequest';
import type { CreateResidualProductResponse } from '../models/CreateResidualProductResponse';
import type { DeleteResidualBoxResponse } from '../models/DeleteResidualBoxResponse';
import type { DeleteResidualPalletResponse } from '../models/DeleteResidualPalletResponse';
import type { DeleteResidualProductResponse } from '../models/DeleteResidualProductResponse';
import type { GetResidualBoxResponse } from '../models/GetResidualBoxResponse';
import type { GetResidualPalletResponse } from '../models/GetResidualPalletResponse';
import type { LoadReceiptRequest } from '../models/LoadReceiptRequest';
import type { LoadReceiptResponse } from '../models/LoadReceiptResponse';
import type { UpdateResidualProductRequest } from '../models/UpdateResidualProductRequest';
import type { UpdateResidualProductResponse } from '../models/UpdateResidualProductResponse';
import type { CancelablePromise } from '../core/CancelablePromise';
import { OpenAPI } from '../core/OpenAPI';
import { request as __request } from '../core/request';
export class ResiduesService {
/**
* Get Pallet
* @returns GetResidualPalletResponse Successful Response
* @throws ApiError
*/
public static getResidualPallet({
palletId,
}: {
palletId: number,
}): CancelablePromise<GetResidualPalletResponse> {
return __request(OpenAPI, {
method: 'GET',
url: '/residues/pallet/{pallet_id}',
path: {
'pallet_id': palletId,
},
errors: {
422: `Validation Error`,
},
});
}
/**
* Delete Pallet
* @returns DeleteResidualPalletResponse Successful Response
* @throws ApiError
*/
public static deleteResidualPallet({
palletId,
}: {
palletId: number,
}): CancelablePromise<DeleteResidualPalletResponse> {
return __request(OpenAPI, {
method: 'DELETE',
url: '/residues/pallet/{pallet_id}',
path: {
'pallet_id': palletId,
},
errors: {
422: `Validation Error`,
},
});
}
/**
* Create Pallet
* @returns CreateResidualPalletResponse Successful Response
* @throws ApiError
*/
public static createResidualPallet({
requestBody,
}: {
requestBody: CreateResidualPalletRequest,
}): CancelablePromise<CreateResidualPalletResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/residues/pallet',
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
/**
* Create Residual Product
* @returns CreateResidualProductResponse Successful Response
* @throws ApiError
*/
public static createResidualProduct({
requestBody,
}: {
requestBody: CreateResidualProductRequest,
}): CancelablePromise<CreateResidualProductResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/residues/product',
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
/**
* Update Residual Product
* @returns UpdateResidualProductResponse Successful Response
* @throws ApiError
*/
public static updateResidualProduct({
residualProductId,
requestBody,
}: {
residualProductId: number,
requestBody: UpdateResidualProductRequest,
}): CancelablePromise<UpdateResidualProductResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/residues/product/{residual_product_id}',
path: {
'residual_product_id': residualProductId,
},
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
/**
* Delete Residual Product
* @returns DeleteResidualProductResponse Successful Response
* @throws ApiError
*/
public static deleteResidualProduct({
residualProductId,
}: {
residualProductId: number,
}): CancelablePromise<DeleteResidualProductResponse> {
return __request(OpenAPI, {
method: 'DELETE',
url: '/residues/product/{residual_product_id}',
path: {
'residual_product_id': residualProductId,
},
errors: {
422: `Validation Error`,
},
});
}
/**
* Get Box
* @returns GetResidualBoxResponse Successful Response
* @throws ApiError
*/
public static getResidualBox({
boxId,
}: {
boxId: number,
}): CancelablePromise<GetResidualBoxResponse> {
return __request(OpenAPI, {
method: 'GET',
url: '/residues/box/{box_id}',
path: {
'box_id': boxId,
},
errors: {
422: `Validation Error`,
},
});
}
/**
* Delete Box
* @returns DeleteResidualBoxResponse Successful Response
* @throws ApiError
*/
public static deleteResidualBox({
boxId,
}: {
boxId: number,
}): CancelablePromise<DeleteResidualBoxResponse> {
return __request(OpenAPI, {
method: 'DELETE',
url: '/residues/box/{box_id}',
path: {
'box_id': boxId,
},
errors: {
422: `Validation Error`,
},
});
}
/**
* Create Box
* @returns CreateResidualBoxResponse Successful Response
* @throws ApiError
*/
public static createResidualBox({
requestBody,
}: {
requestBody: CreateResidualBoxRequest,
}): CancelablePromise<CreateResidualBoxResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/residues/box',
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
/**
* Receipt
* @returns LoadReceiptResponse Successful Response
* @throws ApiError
*/
public static receipt({
requestBody,
}: {
requestBody: LoadReceiptRequest,
}): CancelablePromise<LoadReceiptResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/residues/receipt',
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
/**
* Generate Pdf
* @returns any Successful Response
* @throws ApiError
*/
public static getPdf({
palletIds = '',
boxIds = '',
}: {
palletIds?: string,
boxIds?: string,
}): CancelablePromise<any> {
return __request(OpenAPI, {
method: 'GET',
url: '/residues/pdf/',
query: {
'pallet_ids': palletIds,
'box_ids': boxIds,
},
errors: {
422: `Validation Error`,
},
});
}
}