tachybase_todo/packages/plugins/@nocobase/plugin-sample-shop-events
chenos dfb940e091
feat: node >= 18 (#3066)
* feat: node >= 18

* fix: release version

* chore(versions): test publish packages xxx

* fix: gitignore
2023-11-20 19:35:30 +08:00
..
src feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00
.npmignore feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00
client.d.ts feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00
client.js feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00
package.json feat: node >= 18 (#3066) 2023-11-20 19:35:30 +08:00
README.md feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00
server.d.ts feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00
server.js feat: new plugin manager, supports adding plugins through UI (#2430) 2023-09-12 22:39:23 +08:00

Hooks for simple shop scenario

Register

yarn pm add sample-shop-hooks

Activate

yarn pm enable sample-shop-hooks

Launch the app

# for development
yarn dev

# for production
yarn build
yarn start

Connect to the API

Products API

# create a product
curl -X POST -H "Content-Type: application/json" -d '{"title": "iPhone 14 Pro", "price": 7999, "enabled": true, "inventory": 1}' "http://localhost:13000/api/products"

Orders API

# create a order
curl -X POST -H "Content-Type: application/json" -d '{"productId": 1, "quantity": 1, "totalPrice": 0, "userId": 2}' 'http://localhost:13000/api/orders'
# {"id": <id>, "status": 0, "productId": 1, "quantity": 1, "totalPrice": 7999, "userId": 1}

# create an expired delivery to watch schedule task
curl -X POST -H "Content-Type: application/json" -d '{"orderId": 1, "provider": "SF", "trackingNumber": "123456789", "userId": 2, "createdAt": "2022-09-01T00:00:00Z"}' 'http://localhost:13000/api/deliveries'