1.2.0 β€’ Published 10 months ago

etrest v1.2.0

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

npm.io

πŸ“š ETRest - Rest library for Etendo secure web services module. 🌐

πŸ“„ Documentation

You can see the code reference here

πŸ”¬ Run tests

It's important to run tests before making changes in the Etendo module. πŸ‘¨β€πŸ’»

$ yarn test

πŸš€ Release to npm

You should increment the version number of the package.json file and run the following commands.

$ yarn build
$ npm publish --tag next --access public

πŸ“ Examples

import { OBRest } from "etrest";

let criteria = OBRest.getInstance().createCriteria("Organization");

πŸš€ Initialize app

import { OBRest } from "obrest";

OBRest.init("http://localhost:8080");

πŸ” Login with username and password / token

The app should be initialized before login πŸ’»

await OBRest.loginWithUserAndPassword("admin", "admin"); //Make a request to get token

OBRest.loginWithToken("your_token"); //only set token

πŸ“‹ Create criterias

The user should be logged before get data. πŸ—‚οΈ

let criteria = OBRest.getInstance().createCriteria("Product");

criteria.add(Restriction.equals("name", "Cerveza Lager 0,5L"));

//make a request to get the products list
criteria.list();

//make a request to get only the first result
criteria.uniqueResult();

πŸ’¬ Check the code reference for more information about Restrictions πŸ’¬

✏️ Create/Update objects

The user should be logged before create data. πŸ†•πŸ“

let myProduct = {
    "_entityName":"Product", // this field is required.
    "searchKey": "ES/1234",
    "name": "Test product with OBRest.js",
    "description": "This is a test product created using OBRest.js",
    "uOM": "100",
    "salesRepresentative": "100",
    "summaryLevel": false,
    "stocked": true,
    "purchase": true,
    "sale": true,
    "productCategory": "DC7F246D248B4C54BFC5744D5C27704F",
    "volume": 0,
    "weight": 0,
    "taxCategory": "E020A69A1E784DC39BE57C41D6D5DB4E"
}


let refreshedProduct = await OBRest.getInstance().save(myProduct); //this method save the object in etendo and return a promise with the saved object.

// you can save a objects list too
let refreshedProductList = await OBRest.getInstance().saveList([myProduct]); //this method save the objects in etendo and return a promise with the saved list.

πŸ’¬ It is always better to save lists than individual objects πŸ“₯πŸ’Ύ

πŸ—‘οΈ Remove objects

The user should be logged before delete data. 🚫

let myProduct = {
    "_entityName":"Product", // this field is required.
    "searchKey": "ES/1234",
    "name": "Test product with OBRest.js",
    "description": "This is a test product created using OBRest.js",
    "uOM": "100",
    "salesRepresentative": "100",
    "summaryLevel": false,
    "stocked": true,
    "purchase": true,
    "sale": true,
    "productCategory": "DC7F246D248B4C54BFC5744D5C27704F",
    "volume": 0,
    "weight": 0,
    "taxCategory": "E020A69A1E784DC39BE57C41D6D5DB4E"
}


let refreshedProduct = await OBRest.getInstance().remove(myProduct); //this method save the object in etendo and return a promise with the saved object.

// you can remove a objects list too❗
let refreshedProductList = await OBRest.getInstance().removeList([myProduct]); //this method remove the objects in etendo and return a promise with the removed list.

It is always better to remove lists than individual objects πŸ“πŸ“€

1.2.0

10 months ago

1.1.24

10 months ago