@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
121 lines • 5.73 kB
JavaScript
import { PurchaseOrderReceiptListParamsSchema, PurchaseOrderReceiptListResponseSchema, PurchaseOrderReceiptGetResponseSchema, PurchaseOrderReceiptCreateRequestSchema, PurchaseOrderReceiptCreateResponseSchema, PurchaseOrderReceiptUpdateRequestSchema, PurchaseOrderReceiptUpdateResponseSchema, PurchaseOrderReceiptDeleteResponseSchema, } from '../schemas';
/**
* Creates the purchaseOrderReceipt resource methods
* OpenAPI Path: /purchase-order-receipt → purchaseOrderReceipt.*
* @description Methods for managing purchase order receipt documents for comprehensive receipt tracking and processing
*/
export function createPurchaseOrderReceiptResource(executeRequest) {
return {
/**
* Retrieve a list of purchase order receipt documents with optional filtering
* @description Returns purchase order receipts with pagination and filtering by PO number, status, or receipt date
* @fullPath api.nexus.purchaseOrderReceipt.list
* @service nexus
* @domain warehouse-management
* @dataMethod purchaseOrderReceiptData.list
* @discoverable true
*/
list: async (params) => {
return executeRequest({
method: 'GET',
path: '/purchase-order-receipt',
paramsSchema: PurchaseOrderReceiptListParamsSchema,
responseSchema: PurchaseOrderReceiptListResponseSchema,
}, params);
},
/**
* Retrieve details for a specific purchase order receipt document
* @description Returns complete details for a purchase order receipt including JSON data and tracking information
* @fullPath api.nexus.purchaseOrderReceipt.get
* @service nexus
* @domain warehouse-management
* @dataMethod purchaseOrderReceiptData.get
* @discoverable true
*/
get: async (purchaseOrderReceiptUid) => {
return executeRequest({
method: 'GET',
path: '/purchase-order-receipt/{purchaseOrderReceiptUid}',
responseSchema: PurchaseOrderReceiptGetResponseSchema,
}, undefined, { purchaseOrderReceiptUid: String(purchaseOrderReceiptUid) });
},
/**
* Create a new purchase order receipt document
* @description Creates a purchase order receipt document for comprehensive tracking and audit trail
* @fullPath api.nexus.purchaseOrderReceipt.create
* @service nexus
* @domain warehouse-management
* @dataMethod purchaseOrderReceiptData.create
* @discoverable true
*/
create: async (receiptData) => {
return executeRequest({
method: 'POST',
path: '/purchase-order-receipt',
paramsSchema: PurchaseOrderReceiptCreateRequestSchema,
responseSchema: PurchaseOrderReceiptCreateResponseSchema,
}, receiptData);
},
/**
* Update an existing purchase order receipt document
* @description Updates purchase order receipt status, properties, and tracking information
* @fullPath api.nexus.purchaseOrderReceipt.update
* @service nexus
* @domain warehouse-management
* @dataMethod purchaseOrderReceiptData.update
* @discoverable true
*/
update: async (purchaseOrderReceiptUid, updateData) => {
return executeRequest({
method: 'PUT',
path: '/purchase-order-receipt/{purchaseOrderReceiptUid}',
paramsSchema: PurchaseOrderReceiptUpdateRequestSchema,
responseSchema: PurchaseOrderReceiptUpdateResponseSchema,
}, updateData, { purchaseOrderReceiptUid: String(purchaseOrderReceiptUid) });
},
/**
* Soft delete a purchase order receipt document
* @description Marks a purchase order receipt as deleted by setting status code to 700
* @fullPath api.nexus.purchaseOrderReceipt.delete
* @service nexus
* @domain warehouse-management
* @dataMethod purchaseOrderReceiptData.delete
* @discoverable true
*/
delete: async (purchaseOrderReceiptUid) => {
return executeRequest({
method: 'DELETE',
path: '/purchase-order-receipt/{purchaseOrderReceiptUid}',
responseSchema: PurchaseOrderReceiptDeleteResponseSchema,
}, undefined, { purchaseOrderReceiptUid: String(purchaseOrderReceiptUid) });
},
};
}
/**
* Creates the purchaseOrderReceiptData resource methods (data-only versions)
*/
export function createPurchaseOrderReceiptDataResource(purchaseOrderReceipt) {
return {
list: async (params) => {
const response = await purchaseOrderReceipt.list(params);
return response.data;
},
get: async (purchaseOrderReceiptUid) => {
const response = await purchaseOrderReceipt.get(purchaseOrderReceiptUid);
return response.data;
},
create: async (receiptData) => {
const response = await purchaseOrderReceipt.create(receiptData);
return response.data;
},
update: async (purchaseOrderReceiptUid, updateData) => {
const response = await purchaseOrderReceipt.update(purchaseOrderReceiptUid, updateData);
return response.data;
},
delete: async (purchaseOrderReceiptUid) => {
const response = await purchaseOrderReceipt.delete(purchaseOrderReceiptUid);
return response.data;
},
};
}
//# sourceMappingURL=purchase-order-receipt.js.map