# 訂單管理工具 API ###### tags: `API` ``` 主旨: 訂單管理工具 API 更新日期: 2021-08-19 版本: prototype 作者: Ya-Sheng Chen (Rock) ``` --- ### 查詢 主/子訂單 #### 需擁有身份: * 無 #### 規格: * URL: /order/fetch-records * Method: POST * Headers: Content-Type: application/json #### Request Body 範例: | Parameter | Example | Description | | --------- | --------------------- | ------------------------ | | page | 0 | 顯示頁次,從 0 起算 | | per | 10 | 每頁撈回筆數,預設為10筆 | | order | dict(k : 1 or -1) | 排序 | | filter | `{ColumnName: value}` | 篩選 | 備註: >- 日期篩選= 'date_col' : {'start':'2021-08-01', 'end':'2021-08-12'} `R 查詢動作` ``` { 'pages':0, 'per':2, 'order':{ 'customer_id':-1, }, 'filter':{ "customer_id": "", "billing_date": "", "estimated_delivery_date": {"start":"2021-06-01","end":"2021-06-02"}, "billing_status": "" } } ``` #### `Response Status`: ``` 200 OK: 呼叫API成功,內部動作完成的回應需判斷Body 400 Bad Request: 參數組成錯誤 501 Not Implemented: API處理過程發生錯誤 ``` #### `Response Body` 範例: | Parameter | Example | Description | | --------- | ------- | -------------- | | Data | JSON | 回傳交易所陣列 | | Success | True | 動作成功 | ``` {'Count': 1, 'Data': [{'created_at': 'Thu, 12 Aug 2021 17:47:40 GMT', 'customer_id': 5, 'customer_order_nums': '4200247509', 'deleted_at': None, 'end_customer_id': 52, 'end_customer_name': '華碩', 'left_quantity': None, 'name': '華碩', 'order_id': 2, 'sub_order': [{...},{...}]}, 'total_quantity': 18218, 'updated_at': None},{...}], 'Page': 0, 'Per': 2, 'Success': True} ``` --- ### CRUD 動態操作 #### 需擁有身份: * 無 #### 規格: * URL: /order/order * Method: POST * Headers: Content-Type: application/json #### `Request Body` 範例: | Parameter | Example | Description | | ------------------- | ---------------------------------- | ------------ | | action | `C` 新增 `U`更新 `R` 查詢 `D` 刪除 | CRUD動作 | | target | `TableName` | 表格名稱 | | filter (`U` or `D`) | `{ColumnName: value}` | 篩選 | | data (`C` or `U`) | `{ColumnName: value,col:val…}` | 新增or更新值 | `C 新增動作` ``` create_data = { 'action':'C', 'target':'end_customers_list', 'data': {'customer_id':'2', 'end_customer_name':'居易'} } ``` `R 查詢動作` ``` Retrieve_data = { 'action':'R', 'target':'end_customers_list', 'filter': {} } ``` `U 更新動作` ``` update_data = { 'action':'U', 'target':'end_customers_list', 'filter':{"end_customer_id": "53"}, 'data': {'end_customer_name': '居易(艾新科)'} } ``` `D 刪除動作` ``` { 'action':'D', 'target':'end_customers_list', 'filter':{ "end_customer_id": "53"} } ``` #### `Response Status`: ``` 200 OK: 呼叫API成功,內部動作完成的回應需判斷Body 400 Bad Request: 參數組成錯誤 501 Not Implemented: API處理過程發生錯誤 ``` #### `Response Body` 範例: | Parameter | Example | Description | | -------- | -------- | -------- | | Success | True | 動作成功 | ``` {'Success': True} ``` --- ### 客戶資料取得 #### 需擁有身份: * 無 #### 規格: * URL: /order/fetch-customer * Method: GET * Headers: Content-Type: application/json #### `Response Status`: ``` 200 OK: 呼叫API成功,內部動作完成的回應需判斷Body 400 Bad Request: 參數組成錯誤 501 Not Implemented: API處理過程發生錯誤 ``` #### `Response Body` 範例: | Parameter | Example | Description | | --------- | ------- | ----------- | | Success | True | 動作成功 | | data | [{…},{…}] | 客戶資訊 | ``` {'Success': True, 'data': [{'cases': [], 'created_at': '2021-08-16 14:55:32', 'customer_id': '1', 'customer_key': 'HS', 'customer_name': '華碩電腦股份有限公司', 'deleted_at': 'None', 'end_customers': [], 'name': '華碩', 'tax_id_nums': 'None', 'updated_at': '2021-08-16 14:55:32'}] } ```