@bit-ui-libs/common
Version:
This library was generated with [Nx](https://nx.dev).
39 lines (32 loc) • 1.27 kB
text/typescript
import { BaseService, BaseServiceOptions } from '../api';
import { PagedRequest, PagedResponse } from '../common';
import {
AddInventoryItemRequest,
DeleteInventoryItemRequest,
Inventory,
InventoryItem,
InventoryItemRequest,
} from './inventory.service.interfaces';
export class InventoryService extends BaseService {
protected inventoryApiUrl: string;
protected inventoryItemApiUrl: string;
constructor(opts: BaseServiceOptions) {
super(opts);
this.inventoryApiUrl = `${this.apiUrl}/assets/v1/inventory`;
this.inventoryItemApiUrl = `${this.apiUrl}/assets/v1/inventory-item`;
}
getInventoryByOrgId(orgId: string) {
return this.get<Inventory>(`${this.inventoryApiUrl}/organization/${orgId}`);
}
addInventoryItem(req: AddInventoryItemRequest) {
return this.post<InventoryItem, AddInventoryItemRequest>(`${this.inventoryItemApiUrl}`, req);
}
getInventoryItem(req: PagedRequest<InventoryItemRequest>) {
return this.get<PagedResponse<InventoryItem>>(`${this.inventoryItemApiUrl}`, req);
}
deleteInventoryItem(req: DeleteInventoryItemRequest) {
return this.delete<void>(`${this.inventoryItemApiUrl}/${req.inventoryId}/archive/${req.qrCodeId}`, undefined, {
headers: { orgId: req.orgId },
});
}
}