@newpeak/barista-cli 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +714 -0
- package/README.ja.md +708 -0
- package/README.md +68 -0
- package/README.vi.md +714 -0
- package/dist/commands/liberica/index.d.ts.map +1 -1
- package/dist/commands/liberica/index.js +4 -0
- package/dist/commands/liberica/index.js.map +1 -1
- package/dist/commands/liberica/materials/create.d.ts.map +1 -1
- package/dist/commands/liberica/materials/create.js +35 -9
- package/dist/commands/liberica/materials/create.js.map +1 -1
- package/dist/commands/liberica/orgs/index.d.ts.map +1 -1
- package/dist/commands/liberica/orgs/index.js.map +1 -1
- package/dist/commands/liberica/users/create.d.ts.map +1 -1
- package/dist/commands/liberica/users/create.js +1 -0
- package/dist/commands/liberica/users/create.js.map +1 -1
- package/dist/commands/liberica/warehouses/create.d.ts +3 -0
- package/dist/commands/liberica/warehouses/create.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/create.js +196 -0
- package/dist/commands/liberica/warehouses/create.js.map +1 -0
- package/dist/commands/liberica/warehouses/delete.d.ts +3 -0
- package/dist/commands/liberica/warehouses/delete.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/delete.js +111 -0
- package/dist/commands/liberica/warehouses/delete.js.map +1 -0
- package/dist/commands/liberica/warehouses/disable.d.ts +3 -0
- package/dist/commands/liberica/warehouses/disable.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/disable.js +173 -0
- package/dist/commands/liberica/warehouses/disable.js.map +1 -0
- package/dist/commands/liberica/warehouses/enable.d.ts +3 -0
- package/dist/commands/liberica/warehouses/enable.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/enable.js +173 -0
- package/dist/commands/liberica/warehouses/enable.js.map +1 -0
- package/dist/commands/liberica/warehouses/get.d.ts +3 -0
- package/dist/commands/liberica/warehouses/get.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/get.js +90 -0
- package/dist/commands/liberica/warehouses/get.js.map +1 -0
- package/dist/commands/liberica/warehouses/index.d.ts +3 -0
- package/dist/commands/liberica/warehouses/index.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/index.js +23 -0
- package/dist/commands/liberica/warehouses/index.js.map +1 -0
- package/dist/commands/liberica/warehouses/list.d.ts +3 -0
- package/dist/commands/liberica/warehouses/list.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/list.js +101 -0
- package/dist/commands/liberica/warehouses/list.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/create.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/create.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/create.js +199 -0
- package/dist/commands/liberica/warehouses/locations/create.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/delete.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/delete.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/delete.js +115 -0
- package/dist/commands/liberica/warehouses/locations/delete.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/disable.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/disable.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/disable.js +173 -0
- package/dist/commands/liberica/warehouses/locations/disable.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/enable.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/enable.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/enable.js +173 -0
- package/dist/commands/liberica/warehouses/locations/enable.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/get.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/get.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/get.js +73 -0
- package/dist/commands/liberica/warehouses/locations/get.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/index.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/index.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/index.js +21 -0
- package/dist/commands/liberica/warehouses/locations/index.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/list.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/list.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/list.js +104 -0
- package/dist/commands/liberica/warehouses/locations/list.js.map +1 -0
- package/dist/commands/liberica/warehouses/locations/update.d.ts +3 -0
- package/dist/commands/liberica/warehouses/locations/update.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/locations/update.js +128 -0
- package/dist/commands/liberica/warehouses/locations/update.js.map +1 -0
- package/dist/commands/liberica/warehouses/update.d.ts +3 -0
- package/dist/commands/liberica/warehouses/update.d.ts.map +1 -0
- package/dist/commands/liberica/warehouses/update.js +143 -0
- package/dist/commands/liberica/warehouses/update.js.map +1 -0
- package/dist/core/api/client.d.ts +16 -0
- package/dist/core/api/client.d.ts.map +1 -1
- package/dist/core/api/client.js +286 -0
- package/dist/core/api/client.js.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +4 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/location.d.ts +53 -0
- package/dist/types/location.d.ts.map +1 -0
- package/dist/types/location.js +2 -0
- package/dist/types/location.js.map +1 -0
- package/dist/types/warehouse.d.ts +68 -0
- package/dist/types/warehouse.d.ts.map +1 -0
- package/dist/types/warehouse.js +2 -0
- package/dist/types/warehouse.js.map +1 -0
- package/docs/commands/liberica/locations/create.md +195 -0
- package/docs/commands/liberica/locations/list.md +171 -0
- package/docs/commands/liberica/warehouses/create.md +222 -0
- package/docs/commands/liberica/warehouses/list.md +184 -0
- package/package.json +1 -1
- package/src/commands/liberica/index.ts +4 -0
- package/src/commands/liberica/materials/create.ts +32 -9
- package/src/commands/liberica/orgs/index.ts +0 -1
- package/src/commands/liberica/users/create.ts +1 -0
- package/src/commands/liberica/warehouses/create.ts +204 -0
- package/src/commands/liberica/warehouses/delete.ts +112 -0
- package/src/commands/liberica/warehouses/disable.ts +174 -0
- package/src/commands/liberica/warehouses/enable.ts +174 -0
- package/src/commands/liberica/warehouses/get.ts +101 -0
- package/src/commands/liberica/warehouses/index.ts +25 -0
- package/src/commands/liberica/warehouses/list.ts +136 -0
- package/src/commands/liberica/warehouses/locations/create.ts +209 -0
- package/src/commands/liberica/warehouses/locations/delete.ts +116 -0
- package/src/commands/liberica/warehouses/locations/disable.ts +174 -0
- package/src/commands/liberica/warehouses/locations/enable.ts +174 -0
- package/src/commands/liberica/warehouses/locations/get.ts +84 -0
- package/src/commands/liberica/warehouses/locations/index.ts +23 -0
- package/src/commands/liberica/warehouses/locations/list.ts +140 -0
- package/src/commands/liberica/warehouses/locations/update.ts +135 -0
- package/src/commands/liberica/warehouses/update.ts +142 -0
- package/src/core/api/client.ts +396 -0
- package/src/index.ts +1 -3
- package/src/types/index.ts +4 -4
- package/src/types/location.ts +66 -0
- package/src/types/warehouse.ts +82 -0
package/src/core/api/client.ts
CHANGED
|
@@ -43,6 +43,18 @@ import {
|
|
|
43
43
|
} from '../../types/currency.js';
|
|
44
44
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
45
45
|
import { ApiResponse, Material, MaterialApiResponse, MaterialQueryParams, MaterialRequest } from '../../types/material.js';
|
|
46
|
+
import {
|
|
47
|
+
WarehouseQueryParams,
|
|
48
|
+
WarehouseApiResponse,
|
|
49
|
+
CreateWarehouseRequest,
|
|
50
|
+
UpdateWarehouseRequest,
|
|
51
|
+
} from '../../types/warehouse.js';
|
|
52
|
+
import {
|
|
53
|
+
LocationQueryParams,
|
|
54
|
+
LocationApiResponse,
|
|
55
|
+
CreateLocationRequest,
|
|
56
|
+
UpdateLocationRequest,
|
|
57
|
+
} from '../../types/location.js';
|
|
46
58
|
|
|
47
59
|
export interface LoginResponse {
|
|
48
60
|
token: string;
|
|
@@ -1561,6 +1573,312 @@ export const apiClient = {
|
|
|
1561
1573
|
}
|
|
1562
1574
|
},
|
|
1563
1575
|
|
|
1576
|
+
async listWarehouses(
|
|
1577
|
+
environment: Environment,
|
|
1578
|
+
tenant: string,
|
|
1579
|
+
params: WarehouseQueryParams
|
|
1580
|
+
): Promise<WarehouseApiResponse> {
|
|
1581
|
+
try {
|
|
1582
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1583
|
+
if (!token) {
|
|
1584
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1585
|
+
}
|
|
1586
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1587
|
+
client.setAuthToken(token);
|
|
1588
|
+
const response = await client.getClient().get<WarehouseApiResponse>(
|
|
1589
|
+
'/api/enterprise/purchases/warehouse/page',
|
|
1590
|
+
{ params }
|
|
1591
|
+
);
|
|
1592
|
+
return response.data;
|
|
1593
|
+
} catch (error) {
|
|
1594
|
+
return handleApiErrorWarehouse(error);
|
|
1595
|
+
}
|
|
1596
|
+
},
|
|
1597
|
+
|
|
1598
|
+
async getWarehouse(
|
|
1599
|
+
environment: Environment,
|
|
1600
|
+
tenant: string,
|
|
1601
|
+
warehouseId: string
|
|
1602
|
+
): Promise<WarehouseApiResponse> {
|
|
1603
|
+
try {
|
|
1604
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1605
|
+
if (!token) {
|
|
1606
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1607
|
+
}
|
|
1608
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1609
|
+
client.setAuthToken(token);
|
|
1610
|
+
const response = await client.getClient().get<WarehouseApiResponse>(
|
|
1611
|
+
`/api/enterprise/purchases/warehouse/detail?warehouseId=${warehouseId}`
|
|
1612
|
+
);
|
|
1613
|
+
return response.data;
|
|
1614
|
+
} catch (error) {
|
|
1615
|
+
return handleApiErrorWarehouse(error);
|
|
1616
|
+
}
|
|
1617
|
+
},
|
|
1618
|
+
|
|
1619
|
+
async createWarehouse(
|
|
1620
|
+
environment: Environment,
|
|
1621
|
+
tenant: string,
|
|
1622
|
+
data: CreateWarehouseRequest
|
|
1623
|
+
): Promise<WarehouseApiResponse> {
|
|
1624
|
+
try {
|
|
1625
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1626
|
+
if (!token) {
|
|
1627
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1628
|
+
}
|
|
1629
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1630
|
+
client.setAuthToken(token);
|
|
1631
|
+
const response = await client.getClient().post<WarehouseApiResponse>(
|
|
1632
|
+
'/api/enterprise/purchases/warehouse/add',
|
|
1633
|
+
data
|
|
1634
|
+
);
|
|
1635
|
+
return response.data;
|
|
1636
|
+
} catch (error) {
|
|
1637
|
+
return handleApiErrorWarehouse(error);
|
|
1638
|
+
}
|
|
1639
|
+
},
|
|
1640
|
+
|
|
1641
|
+
async updateWarehouse(
|
|
1642
|
+
environment: Environment,
|
|
1643
|
+
tenant: string,
|
|
1644
|
+
data: UpdateWarehouseRequest
|
|
1645
|
+
): Promise<WarehouseApiResponse> {
|
|
1646
|
+
try {
|
|
1647
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1648
|
+
if (!token) {
|
|
1649
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1650
|
+
}
|
|
1651
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1652
|
+
client.setAuthToken(token);
|
|
1653
|
+
const response = await client.getClient().post<WarehouseApiResponse>(
|
|
1654
|
+
'/api/enterprise/purchases/warehouse/edit',
|
|
1655
|
+
data
|
|
1656
|
+
);
|
|
1657
|
+
return response.data;
|
|
1658
|
+
} catch (error) {
|
|
1659
|
+
return handleApiErrorWarehouse(error);
|
|
1660
|
+
}
|
|
1661
|
+
},
|
|
1662
|
+
|
|
1663
|
+
async deleteWarehouse(
|
|
1664
|
+
environment: Environment,
|
|
1665
|
+
tenant: string,
|
|
1666
|
+
warehouseId: string
|
|
1667
|
+
): Promise<WarehouseApiResponse> {
|
|
1668
|
+
try {
|
|
1669
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1670
|
+
if (!token) {
|
|
1671
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1672
|
+
}
|
|
1673
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1674
|
+
client.setAuthToken(token);
|
|
1675
|
+
const response = await client.getClient().post<WarehouseApiResponse>(
|
|
1676
|
+
'/api/enterprise/purchases/warehouse/delete',
|
|
1677
|
+
{ warehouseId }
|
|
1678
|
+
);
|
|
1679
|
+
return response.data;
|
|
1680
|
+
} catch (error) {
|
|
1681
|
+
return handleApiErrorWarehouse(error);
|
|
1682
|
+
}
|
|
1683
|
+
},
|
|
1684
|
+
|
|
1685
|
+
async batchEnableWarehouses(
|
|
1686
|
+
environment: Environment,
|
|
1687
|
+
tenant: string,
|
|
1688
|
+
warehouseIds: string[]
|
|
1689
|
+
): Promise<WarehouseApiResponse> {
|
|
1690
|
+
try {
|
|
1691
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1692
|
+
if (!token) {
|
|
1693
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1694
|
+
}
|
|
1695
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1696
|
+
client.setAuthToken(token);
|
|
1697
|
+
const response = await client.getClient().post<WarehouseApiResponse>(
|
|
1698
|
+
'/api/enterprise/purchases/warehouse/batchActive',
|
|
1699
|
+
{ warehouseIdList: warehouseIds }
|
|
1700
|
+
);
|
|
1701
|
+
return response.data;
|
|
1702
|
+
} catch (error) {
|
|
1703
|
+
return handleApiErrorWarehouse(error);
|
|
1704
|
+
}
|
|
1705
|
+
},
|
|
1706
|
+
|
|
1707
|
+
async batchDisableWarehouses(
|
|
1708
|
+
environment: Environment,
|
|
1709
|
+
tenant: string,
|
|
1710
|
+
warehouseIds: string[]
|
|
1711
|
+
): Promise<WarehouseApiResponse> {
|
|
1712
|
+
try {
|
|
1713
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1714
|
+
if (!token) {
|
|
1715
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1716
|
+
}
|
|
1717
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1718
|
+
client.setAuthToken(token);
|
|
1719
|
+
const response = await client.getClient().post<WarehouseApiResponse>(
|
|
1720
|
+
'/api/enterprise/purchases/warehouse/batchDeActive',
|
|
1721
|
+
{ warehouseIdList: warehouseIds }
|
|
1722
|
+
);
|
|
1723
|
+
return response.data;
|
|
1724
|
+
} catch (error) {
|
|
1725
|
+
return handleApiErrorWarehouse(error);
|
|
1726
|
+
}
|
|
1727
|
+
},
|
|
1728
|
+
|
|
1729
|
+
async listLocations(
|
|
1730
|
+
environment: Environment,
|
|
1731
|
+
tenant: string,
|
|
1732
|
+
params: LocationQueryParams
|
|
1733
|
+
): Promise<LocationApiResponse> {
|
|
1734
|
+
try {
|
|
1735
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1736
|
+
if (!token) {
|
|
1737
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1738
|
+
}
|
|
1739
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1740
|
+
client.setAuthToken(token);
|
|
1741
|
+
const response = await client.getClient().get<LocationApiResponse>(
|
|
1742
|
+
'/api/enterprise/purchases/warehouse/location/page',
|
|
1743
|
+
{ params }
|
|
1744
|
+
);
|
|
1745
|
+
return response.data;
|
|
1746
|
+
} catch (error) {
|
|
1747
|
+
return handleApiErrorLocation(error);
|
|
1748
|
+
}
|
|
1749
|
+
},
|
|
1750
|
+
|
|
1751
|
+
async getLocation(
|
|
1752
|
+
environment: Environment,
|
|
1753
|
+
tenant: string,
|
|
1754
|
+
warehouseLocationId: string
|
|
1755
|
+
): Promise<LocationApiResponse> {
|
|
1756
|
+
try {
|
|
1757
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1758
|
+
if (!token) {
|
|
1759
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1760
|
+
}
|
|
1761
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1762
|
+
client.setAuthToken(token);
|
|
1763
|
+
const response = await client.getClient().get<LocationApiResponse>(
|
|
1764
|
+
`/api/enterprise/purchases/warehouse/location/detail?warehouseLocationId=${warehouseLocationId}`
|
|
1765
|
+
);
|
|
1766
|
+
return response.data;
|
|
1767
|
+
} catch (error) {
|
|
1768
|
+
return handleApiErrorLocation(error);
|
|
1769
|
+
}
|
|
1770
|
+
},
|
|
1771
|
+
|
|
1772
|
+
async createLocation(
|
|
1773
|
+
environment: Environment,
|
|
1774
|
+
tenant: string,
|
|
1775
|
+
data: CreateLocationRequest
|
|
1776
|
+
): Promise<LocationApiResponse> {
|
|
1777
|
+
try {
|
|
1778
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1779
|
+
if (!token) {
|
|
1780
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1781
|
+
}
|
|
1782
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1783
|
+
client.setAuthToken(token);
|
|
1784
|
+
const response = await client.getClient().post<LocationApiResponse>(
|
|
1785
|
+
'/api/enterprise/purchases/warehouse/location/add',
|
|
1786
|
+
data
|
|
1787
|
+
);
|
|
1788
|
+
return response.data;
|
|
1789
|
+
} catch (error) {
|
|
1790
|
+
return handleApiErrorLocation(error);
|
|
1791
|
+
}
|
|
1792
|
+
},
|
|
1793
|
+
|
|
1794
|
+
async updateLocation(
|
|
1795
|
+
environment: Environment,
|
|
1796
|
+
tenant: string,
|
|
1797
|
+
data: UpdateLocationRequest
|
|
1798
|
+
): Promise<LocationApiResponse> {
|
|
1799
|
+
try {
|
|
1800
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1801
|
+
if (!token) {
|
|
1802
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1803
|
+
}
|
|
1804
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1805
|
+
client.setAuthToken(token);
|
|
1806
|
+
const response = await client.getClient().post<LocationApiResponse>(
|
|
1807
|
+
'/api/enterprise/purchases/warehouse/location/edit',
|
|
1808
|
+
data
|
|
1809
|
+
);
|
|
1810
|
+
return response.data;
|
|
1811
|
+
} catch (error) {
|
|
1812
|
+
return handleApiErrorLocation(error);
|
|
1813
|
+
}
|
|
1814
|
+
},
|
|
1815
|
+
|
|
1816
|
+
async deleteLocation(
|
|
1817
|
+
environment: Environment,
|
|
1818
|
+
tenant: string,
|
|
1819
|
+
warehouseLocationId: string
|
|
1820
|
+
): Promise<LocationApiResponse> {
|
|
1821
|
+
try {
|
|
1822
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1823
|
+
if (!token) {
|
|
1824
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1825
|
+
}
|
|
1826
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1827
|
+
client.setAuthToken(token);
|
|
1828
|
+
const response = await client.getClient().post<LocationApiResponse>(
|
|
1829
|
+
'/api/enterprise/purchases/warehouse/location/delete',
|
|
1830
|
+
{ warehouseLocationId }
|
|
1831
|
+
);
|
|
1832
|
+
return response.data;
|
|
1833
|
+
} catch (error) {
|
|
1834
|
+
return handleApiErrorLocation(error);
|
|
1835
|
+
}
|
|
1836
|
+
},
|
|
1837
|
+
|
|
1838
|
+
async batchEnableLocations(
|
|
1839
|
+
environment: Environment,
|
|
1840
|
+
tenant: string,
|
|
1841
|
+
warehouseLocationIds: string[]
|
|
1842
|
+
): Promise<LocationApiResponse> {
|
|
1843
|
+
try {
|
|
1844
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1845
|
+
if (!token) {
|
|
1846
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1847
|
+
}
|
|
1848
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1849
|
+
client.setAuthToken(token);
|
|
1850
|
+
const response = await client.getClient().post<LocationApiResponse>(
|
|
1851
|
+
'/api/enterprise/purchases/warehouse/location/batchActive',
|
|
1852
|
+
{ warehouseLocationIdList: warehouseLocationIds }
|
|
1853
|
+
);
|
|
1854
|
+
return response.data;
|
|
1855
|
+
} catch (error) {
|
|
1856
|
+
return handleApiErrorLocation(error);
|
|
1857
|
+
}
|
|
1858
|
+
},
|
|
1859
|
+
|
|
1860
|
+
async batchDisableLocations(
|
|
1861
|
+
environment: Environment,
|
|
1862
|
+
tenant: string,
|
|
1863
|
+
warehouseLocationIds: string[]
|
|
1864
|
+
): Promise<LocationApiResponse> {
|
|
1865
|
+
try {
|
|
1866
|
+
const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
|
|
1867
|
+
if (!token) {
|
|
1868
|
+
return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
|
|
1869
|
+
}
|
|
1870
|
+
const client = createAPIClient('liberica' as Service, environment, tenant);
|
|
1871
|
+
client.setAuthToken(token);
|
|
1872
|
+
const response = await client.getClient().post<LocationApiResponse>(
|
|
1873
|
+
'/api/enterprise/purchases/warehouse/location/batchDeActive',
|
|
1874
|
+
{ warehouseLocationIdList: warehouseLocationIds }
|
|
1875
|
+
);
|
|
1876
|
+
return response.data;
|
|
1877
|
+
} catch (error) {
|
|
1878
|
+
return handleApiErrorLocation(error);
|
|
1879
|
+
}
|
|
1880
|
+
},
|
|
1881
|
+
|
|
1564
1882
|
};
|
|
1565
1883
|
|
|
1566
1884
|
function handleApiError(error: unknown): EmployeeApiResponse {
|
|
@@ -1758,6 +2076,84 @@ function handleApiErrorUom(error: unknown): UomApiResponse {
|
|
|
1758
2076
|
};
|
|
1759
2077
|
}
|
|
1760
2078
|
|
|
2079
|
+
function handleApiErrorWarehouse(error: unknown): WarehouseApiResponse {
|
|
2080
|
+
if (axios.isAxiosError(error)) {
|
|
2081
|
+
const axiosError = error as AxiosError<Record<string, unknown>>;
|
|
2082
|
+
const responseData = axiosError.response?.data;
|
|
2083
|
+
if (responseData) {
|
|
2084
|
+
const success = responseData.success as boolean | undefined;
|
|
2085
|
+
if (success === false) {
|
|
2086
|
+
const code = responseData.code as string | undefined;
|
|
2087
|
+
const message = responseData.message as string | undefined;
|
|
2088
|
+
const errorObj = responseData.error as { code?: string; message?: string } | undefined;
|
|
2089
|
+
if (!errorObj && (code || message)) {
|
|
2090
|
+
return {
|
|
2091
|
+
success: false,
|
|
2092
|
+
error: {
|
|
2093
|
+
code: code || 'API_ERROR',
|
|
2094
|
+
message: message || 'API error occurred',
|
|
2095
|
+
},
|
|
2096
|
+
};
|
|
2097
|
+
}
|
|
2098
|
+
}
|
|
2099
|
+
return responseData as unknown as WarehouseApiResponse;
|
|
2100
|
+
}
|
|
2101
|
+
return {
|
|
2102
|
+
success: false,
|
|
2103
|
+
error: {
|
|
2104
|
+
code: 'NETWORK_ERROR',
|
|
2105
|
+
message: axiosError.message || 'Network error occurred',
|
|
2106
|
+
},
|
|
2107
|
+
};
|
|
2108
|
+
}
|
|
2109
|
+
return {
|
|
2110
|
+
success: false,
|
|
2111
|
+
error: {
|
|
2112
|
+
code: 'UNKNOWN_ERROR',
|
|
2113
|
+
message: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
2114
|
+
},
|
|
2115
|
+
};
|
|
2116
|
+
}
|
|
2117
|
+
|
|
2118
|
+
function handleApiErrorLocation(error: unknown): LocationApiResponse {
|
|
2119
|
+
if (axios.isAxiosError(error)) {
|
|
2120
|
+
const axiosError = error as AxiosError<Record<string, unknown>>;
|
|
2121
|
+
const responseData = axiosError.response?.data;
|
|
2122
|
+
if (responseData) {
|
|
2123
|
+
const success = responseData.success as boolean | undefined;
|
|
2124
|
+
if (success === false) {
|
|
2125
|
+
const code = responseData.code as string | undefined;
|
|
2126
|
+
const message = responseData.message as string | undefined;
|
|
2127
|
+
const errorObj = responseData.error as { code?: string; message?: string } | undefined;
|
|
2128
|
+
if (!errorObj && (code || message)) {
|
|
2129
|
+
return {
|
|
2130
|
+
success: false,
|
|
2131
|
+
error: {
|
|
2132
|
+
code: code || 'API_ERROR',
|
|
2133
|
+
message: message || 'API error occurred',
|
|
2134
|
+
},
|
|
2135
|
+
};
|
|
2136
|
+
}
|
|
2137
|
+
}
|
|
2138
|
+
return responseData as unknown as LocationApiResponse;
|
|
2139
|
+
}
|
|
2140
|
+
return {
|
|
2141
|
+
success: false,
|
|
2142
|
+
error: {
|
|
2143
|
+
code: 'NETWORK_ERROR',
|
|
2144
|
+
message: axiosError.message || 'Network error occurred',
|
|
2145
|
+
},
|
|
2146
|
+
};
|
|
2147
|
+
}
|
|
2148
|
+
return {
|
|
2149
|
+
success: false,
|
|
2150
|
+
error: {
|
|
2151
|
+
code: 'UNKNOWN_ERROR',
|
|
2152
|
+
message: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
2153
|
+
},
|
|
2154
|
+
};
|
|
2155
|
+
}
|
|
2156
|
+
|
|
1761
2157
|
function handleApiErrorCurrency(error: unknown): CurrencyApiResponse {
|
|
1762
2158
|
if (axios.isAxiosError(error)) {
|
|
1763
2159
|
const axiosError = error as AxiosError<Record<string, unknown>>;
|
package/src/index.ts
CHANGED
|
@@ -15,11 +15,9 @@ async function main(): Promise<void> {
|
|
|
15
15
|
program
|
|
16
16
|
.name('barista')
|
|
17
17
|
.description('Barista CLI - Bridge between AI agents and Liberica/Arabica')
|
|
18
|
-
.version('0.1.
|
|
18
|
+
.version('0.1.7')
|
|
19
19
|
.option('-e, --env <environment>', 'Target environment (dev|test|prod-cn|prod-jp)')
|
|
20
20
|
.option('-t, --tenant <tenant>', 'Target tenant (for Liberica)')
|
|
21
|
-
.option('--dry-run', 'Execute in dry-run mode')
|
|
22
|
-
.option('--json', 'Output as JSON')
|
|
23
21
|
.option('--debug', 'Enable debug mode');
|
|
24
22
|
|
|
25
23
|
program.addCommand(createContextCommand());
|
package/src/types/index.ts
CHANGED
|
@@ -74,8 +74,8 @@ export * from './employee.js';
|
|
|
74
74
|
export * from './org.js';
|
|
75
75
|
export * from './position.js';
|
|
76
76
|
export type { Uom, CreateUomRequest, UpdateUomRequest, UomQueryParams, UomListResponse, UomApiResponse, UomStatusFlag } from './uom.js';
|
|
77
|
-
export type { Supplier, SupplierListResponse, SupplierQueryParams, SupplierApiResponse } from './supplier.js';
|
|
78
|
-
export type {
|
|
79
|
-
export type { ClientListResponse, MasterClientCompactResponse, ClientQueryParams, ClientApiResponse } from './client.js';
|
|
80
|
-
export type { MasterClientResponse, CreateClientRequest, UpdateClientRequest } from './client.js';
|
|
77
|
+
export type { Supplier, SupplierListResponse, SupplierQueryParams, SupplierApiResponse, CreateSupplierRequest, UpdateSupplierRequest } from './supplier.js';
|
|
78
|
+
export type { ClientListResponse, MasterClientCompactResponse, ClientQueryParams, ClientApiResponse, MasterClientResponse, CreateClientRequest, UpdateClientRequest } from './client.js';
|
|
81
79
|
export type { ApiResponse, Material, MaterialRequest, MaterialQueryParams, MaterialListResponse, MaterialApiResponse, MaterialStatusFlag } from './material.js';
|
|
80
|
+
export type { Warehouse, WarehouseListResponse, WarehouseQueryParams, WarehouseApiResponse, CreateWarehouseRequest, UpdateWarehouseRequest } from './warehouse.js';
|
|
81
|
+
export type { WarehouseLocation, LocationListResponse, LocationQueryParams, LocationApiResponse, CreateLocationRequest, UpdateLocationRequest } from './location.js';
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
// Status flag literal type
|
|
2
|
+
export type StatusFlag = 1 | 2;
|
|
3
|
+
|
|
4
|
+
// Full WarehouseLocation entity
|
|
5
|
+
export interface WarehouseLocation {
|
|
6
|
+
warehouseLocationId: string;
|
|
7
|
+
warehouseId: string;
|
|
8
|
+
warehouseLocationCode: string;
|
|
9
|
+
warehouseLocationName: string;
|
|
10
|
+
warehouseLocationType?: string;
|
|
11
|
+
capacity?: number;
|
|
12
|
+
remark?: string;
|
|
13
|
+
statusFlag: StatusFlag;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// Request for creating location (add endpoint)
|
|
17
|
+
export interface CreateLocationRequest {
|
|
18
|
+
warehouseId: string;
|
|
19
|
+
warehouseLocationCode: string;
|
|
20
|
+
warehouseLocationName: string;
|
|
21
|
+
warehouseLocationType?: string;
|
|
22
|
+
capacity?: number;
|
|
23
|
+
remark?: string;
|
|
24
|
+
status?: StatusFlag;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Request for updating location (edit endpoint)
|
|
28
|
+
export interface UpdateLocationRequest {
|
|
29
|
+
warehouseLocationId: string;
|
|
30
|
+
warehouseLocationName?: string;
|
|
31
|
+
warehouseLocationType?: string;
|
|
32
|
+
capacity?: number;
|
|
33
|
+
remark?: string;
|
|
34
|
+
status?: StatusFlag;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Query params for list/pagination
|
|
38
|
+
export interface LocationQueryParams {
|
|
39
|
+
pageNo?: number;
|
|
40
|
+
pageSize?: number;
|
|
41
|
+
warehouseId: string;
|
|
42
|
+
status?: StatusFlag;
|
|
43
|
+
warehouseLocationCode?: string;
|
|
44
|
+
warehouseLocationName?: string;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// Paginated response wrapper (PageResult from Roses framework)
|
|
48
|
+
export interface PageResult<T> {
|
|
49
|
+
totalRows: number;
|
|
50
|
+
pageSize: number;
|
|
51
|
+
pageNo: number;
|
|
52
|
+
rows: T[];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// List response type
|
|
56
|
+
export interface LocationListResponse extends PageResult<WarehouseLocation> {}
|
|
57
|
+
|
|
58
|
+
// API response wrapper
|
|
59
|
+
export interface LocationApiResponse {
|
|
60
|
+
success: boolean;
|
|
61
|
+
data?: WarehouseLocation | LocationListResponse;
|
|
62
|
+
error?: {
|
|
63
|
+
code: string;
|
|
64
|
+
message: string;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// Status flag literal type
|
|
2
|
+
export type StatusFlag = 1 | 2;
|
|
3
|
+
|
|
4
|
+
// Full Warehouse entity
|
|
5
|
+
export interface Warehouse {
|
|
6
|
+
warehouseId: string;
|
|
7
|
+
warehouseCode: string;
|
|
8
|
+
warehouseName: string;
|
|
9
|
+
warehouseType?: string;
|
|
10
|
+
warehouseClasses?: string;
|
|
11
|
+
address?: string;
|
|
12
|
+
contact?: string;
|
|
13
|
+
phone?: string;
|
|
14
|
+
manager?: string;
|
|
15
|
+
enableLocation?: boolean | string;
|
|
16
|
+
enableNegativeInventory?: boolean | string;
|
|
17
|
+
remark?: string;
|
|
18
|
+
statusFlag: StatusFlag;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// Request for creating warehouse (add endpoint)
|
|
22
|
+
// NOTE: enableLocation/enableNegativeInventory must be "1"/"0" strings (backend Y/N format)
|
|
23
|
+
export interface CreateWarehouseRequest {
|
|
24
|
+
warehouseCode: string;
|
|
25
|
+
warehouseName: string;
|
|
26
|
+
warehouseType?: string;
|
|
27
|
+
warehouseClasses?: string;
|
|
28
|
+
address?: string;
|
|
29
|
+
contact?: string;
|
|
30
|
+
phone?: string;
|
|
31
|
+
manager?: string;
|
|
32
|
+
enableLocation?: string;
|
|
33
|
+
enableNegativeInventory?: string;
|
|
34
|
+
remark?: string;
|
|
35
|
+
status?: StatusFlag;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Request for updating warehouse (edit endpoint)
|
|
39
|
+
export interface UpdateWarehouseRequest {
|
|
40
|
+
warehouseId: string;
|
|
41
|
+
warehouseName?: string;
|
|
42
|
+
warehouseType?: string;
|
|
43
|
+
warehouseClasses?: string;
|
|
44
|
+
address?: string;
|
|
45
|
+
contact?: string;
|
|
46
|
+
phone?: string;
|
|
47
|
+
manager?: string;
|
|
48
|
+
enableLocation?: string;
|
|
49
|
+
enableNegativeInventory?: string;
|
|
50
|
+
remark?: string;
|
|
51
|
+
status?: StatusFlag;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// Query params for list/pagination
|
|
55
|
+
export interface WarehouseQueryParams {
|
|
56
|
+
pageNo?: number;
|
|
57
|
+
pageSize?: number;
|
|
58
|
+
status?: StatusFlag;
|
|
59
|
+
warehouseCode?: string;
|
|
60
|
+
warehouseName?: string;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// Paginated response wrapper (PageResult from Roses framework)
|
|
64
|
+
export interface PageResult<T> {
|
|
65
|
+
totalRows: number;
|
|
66
|
+
pageSize: number;
|
|
67
|
+
pageNo: number;
|
|
68
|
+
rows: T[];
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// List response type
|
|
72
|
+
export interface WarehouseListResponse extends PageResult<Warehouse> {}
|
|
73
|
+
|
|
74
|
+
// API response wrapper
|
|
75
|
+
export interface WarehouseApiResponse {
|
|
76
|
+
success: boolean;
|
|
77
|
+
data?: Warehouse | WarehouseListResponse;
|
|
78
|
+
error?: {
|
|
79
|
+
code: string;
|
|
80
|
+
message: string;
|
|
81
|
+
};
|
|
82
|
+
}
|