@newpeak/barista-cli 0.1.10 → 0.1.12
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/dist/index.js +1 -1
- package/package.json +7 -3
- package/docs/ARCHITECTURE.md +0 -184
- package/docs/COMMANDS.md +0 -352
- package/docs/COMMAND_DESIGN_SPEC.md +0 -840
- package/docs/INTEGRATION_NOTES.md +0 -270
- package/docs/commands/REFERENCE.md +0 -323
- package/docs/commands/arabica/auth/index.md +0 -296
- package/docs/commands/liberica/auth/index.md +0 -133
- package/docs/commands/liberica/calendar/DESIGN.md +0 -333
- package/docs/commands/liberica/client-contacts/create.md +0 -152
- package/docs/commands/liberica/client-contacts/delete.md +0 -123
- package/docs/commands/liberica/client-contacts/get.md +0 -133
- package/docs/commands/liberica/client-contacts/list.md +0 -143
- package/docs/commands/liberica/client-contacts/update.md +0 -158
- package/docs/commands/liberica/context/index.md +0 -60
- package/docs/commands/liberica/currency/create.md +0 -145
- package/docs/commands/liberica/currency/delete.md +0 -121
- package/docs/commands/liberica/currency/disable.md +0 -119
- package/docs/commands/liberica/currency/enable.md +0 -115
- package/docs/commands/liberica/currency/get.md +0 -118
- package/docs/commands/liberica/currency/list.md +0 -149
- package/docs/commands/liberica/currency/update.md +0 -141
- package/docs/commands/liberica/employees/create.md +0 -185
- package/docs/commands/liberica/employees/disable.md +0 -138
- package/docs/commands/liberica/employees/enable.md +0 -137
- package/docs/commands/liberica/employees/get.md +0 -153
- package/docs/commands/liberica/employees/list.md +0 -168
- package/docs/commands/liberica/employees/update.md +0 -180
- package/docs/commands/liberica/locations/create.md +0 -195
- package/docs/commands/liberica/locations/list.md +0 -171
- package/docs/commands/liberica/materials/create.md +0 -293
- package/docs/commands/liberica/materials/delete.md +0 -240
- package/docs/commands/liberica/materials/disable.md +0 -150
- package/docs/commands/liberica/materials/enable.md +0 -146
- package/docs/commands/liberica/materials/get.md +0 -188
- package/docs/commands/liberica/materials/list.md +0 -198
- package/docs/commands/liberica/materials/update.md +0 -250
- package/docs/commands/liberica/orgs/list.md +0 -62
- package/docs/commands/liberica/positions/list.md +0 -61
- package/docs/commands/liberica/roles/list.md +0 -67
- package/docs/commands/liberica/stock/ledger.md +0 -209
- package/docs/commands/liberica/stock/list.md +0 -165
- package/docs/commands/liberica/supplier-contacts/create.md +0 -152
- package/docs/commands/liberica/supplier-contacts/delete.md +0 -123
- package/docs/commands/liberica/supplier-contacts/get.md +0 -133
- package/docs/commands/liberica/supplier-contacts/list.md +0 -143
- package/docs/commands/liberica/supplier-contacts/update.md +0 -158
- package/docs/commands/liberica/teams/issues/close.md +0 -161
- package/docs/commands/liberica/teams/issues/create.md +0 -212
- package/docs/commands/liberica/teams/issues/delete.md +0 -179
- package/docs/commands/liberica/teams/issues/get.md +0 -167
- package/docs/commands/liberica/teams/issues/list.md +0 -182
- package/docs/commands/liberica/teams/issues/tests-design.md +0 -341
- package/docs/commands/liberica/teams/issues/update.md +0 -202
- package/docs/commands/liberica/teams/projects/create.md +0 -174
- package/docs/commands/liberica/teams/projects/delete.md +0 -180
- package/docs/commands/liberica/teams/projects/get.md +0 -150
- package/docs/commands/liberica/teams/projects/list.md +0 -179
- package/docs/commands/liberica/teams/projects/update.md +0 -175
- package/docs/commands/liberica/teams/tasks/create.md +0 -163
- package/docs/commands/liberica/teams/tasks/delete.md +0 -109
- package/docs/commands/liberica/teams/tasks/get.md +0 -121
- package/docs/commands/liberica/teams/tasks/list.md +0 -148
- package/docs/commands/liberica/teams/tasks/update.md +0 -158
- package/docs/commands/liberica/teams/work-logs/create.md +0 -151
- package/docs/commands/liberica/teams/work-logs/delete.md +0 -130
- package/docs/commands/liberica/teams/work-logs/get.md +0 -131
- package/docs/commands/liberica/teams/work-logs/list.md +0 -153
- package/docs/commands/liberica/teams/work-logs/update.md +0 -150
- package/docs/commands/liberica/transfer-in-forms/batch-delete.md +0 -157
- package/docs/commands/liberica/transfer-in-forms/batch-review.md +0 -157
- package/docs/commands/liberica/transfer-in-forms/batch-unreview.md +0 -157
- package/docs/commands/liberica/transfer-in-forms/create.md +0 -220
- package/docs/commands/liberica/transfer-in-forms/get.md +0 -221
- package/docs/commands/liberica/transfer-in-forms/list.md +0 -242
- package/docs/commands/liberica/transfer-in-forms/update.md +0 -185
- package/docs/commands/liberica/transfer-out-forms/batch-delete.md +0 -187
- package/docs/commands/liberica/transfer-out-forms/batch-review.md +0 -157
- package/docs/commands/liberica/transfer-out-forms/batch-unreview.md +0 -157
- package/docs/commands/liberica/transfer-out-forms/create.md +0 -280
- package/docs/commands/liberica/transfer-out-forms/get.md +0 -211
- package/docs/commands/liberica/transfer-out-forms/list.md +0 -233
- package/docs/commands/liberica/transfer-out-forms/update.md +0 -286
- package/docs/commands/liberica/uoms/create.md +0 -136
- package/docs/commands/liberica/uoms/delete.md +0 -119
- package/docs/commands/liberica/uoms/disable.md +0 -117
- package/docs/commands/liberica/uoms/enable.md +0 -115
- package/docs/commands/liberica/uoms/get.md +0 -119
- package/docs/commands/liberica/uoms/list.md +0 -155
- package/docs/commands/liberica/uoms/update.md +0 -148
- package/docs/commands/liberica/users/create.md +0 -170
- package/docs/commands/liberica/users/get.md +0 -151
- package/docs/commands/liberica/users/list.md +0 -175
- package/docs/commands/liberica/warehouses/create.md +0 -222
- package/docs/commands/liberica/warehouses/list.md +0 -184
- package/src/commands/arabica/auth/index.ts +0 -277
- package/src/commands/arabica/auth/login.ts +0 -5
- package/src/commands/arabica/auth/logout.ts +0 -5
- package/src/commands/arabica/auth/register.ts +0 -5
- package/src/commands/arabica/auth/status.ts +0 -5
- package/src/commands/arabica/index.ts +0 -23
- package/src/commands/auth.ts +0 -107
- package/src/commands/context.ts +0 -60
- package/src/commands/liberica/auth/index.ts +0 -176
- package/src/commands/liberica/calendar/index.ts +0 -13
- package/src/commands/liberica/calendar/list.ts +0 -214
- package/src/commands/liberica/calendar/set.ts +0 -130
- package/src/commands/liberica/client-contacts/create.ts +0 -115
- package/src/commands/liberica/client-contacts/delete.ts +0 -140
- package/src/commands/liberica/client-contacts/get.ts +0 -103
- package/src/commands/liberica/client-contacts/index.ts +0 -19
- package/src/commands/liberica/client-contacts/list.ts +0 -118
- package/src/commands/liberica/client-contacts/update.ts +0 -137
- package/src/commands/liberica/clients/create.ts +0 -122
- package/src/commands/liberica/clients/delete.ts +0 -125
- package/src/commands/liberica/clients/get.ts +0 -88
- package/src/commands/liberica/clients/index.ts +0 -19
- package/src/commands/liberica/clients/list.ts +0 -123
- package/src/commands/liberica/clients/update.ts +0 -103
- package/src/commands/liberica/context/index.ts +0 -43
- package/src/commands/liberica/currency/create.ts +0 -183
- package/src/commands/liberica/currency/delete.ts +0 -124
- package/src/commands/liberica/currency/disable.ts +0 -147
- package/src/commands/liberica/currency/enable.ts +0 -128
- package/src/commands/liberica/currency/get.ts +0 -91
- package/src/commands/liberica/currency/index.ts +0 -23
- package/src/commands/liberica/currency/list.ts +0 -140
- package/src/commands/liberica/currency/update.ts +0 -129
- package/src/commands/liberica/dict-types/get.ts +0 -74
- package/src/commands/liberica/dict-types/index.ts +0 -15
- package/src/commands/liberica/dict-types/list.ts +0 -118
- package/src/commands/liberica/dict-types/update.ts +0 -134
- package/src/commands/liberica/dicts/create.ts +0 -175
- package/src/commands/liberica/dicts/delete.ts +0 -107
- package/src/commands/liberica/dicts/get.ts +0 -80
- package/src/commands/liberica/dicts/index.ts +0 -19
- package/src/commands/liberica/dicts/list.ts +0 -114
- package/src/commands/liberica/dicts/update.ts +0 -116
- package/src/commands/liberica/employees/create.ts +0 -275
- package/src/commands/liberica/employees/delete.ts +0 -122
- package/src/commands/liberica/employees/disable.ts +0 -97
- package/src/commands/liberica/employees/enable.ts +0 -97
- package/src/commands/liberica/employees/get.ts +0 -115
- package/src/commands/liberica/employees/index.ts +0 -23
- package/src/commands/liberica/employees/list.ts +0 -131
- package/src/commands/liberica/employees/update.ts +0 -157
- package/src/commands/liberica/index.ts +0 -81
- package/src/commands/liberica/materials/create.ts +0 -199
- package/src/commands/liberica/materials/delete.ts +0 -105
- package/src/commands/liberica/materials/disable.ts +0 -148
- package/src/commands/liberica/materials/enable.ts +0 -129
- package/src/commands/liberica/materials/get.ts +0 -83
- package/src/commands/liberica/materials/index.ts +0 -23
- package/src/commands/liberica/materials/list.ts +0 -142
- package/src/commands/liberica/materials/update.ts +0 -125
- package/src/commands/liberica/mould/get.ts +0 -111
- package/src/commands/liberica/mould/index.ts +0 -17
- package/src/commands/liberica/mould/list.ts +0 -157
- package/src/commands/liberica/mould/set-status.ts +0 -99
- package/src/commands/liberica/mould/stock-in.ts +0 -165
- package/src/commands/liberica/operations/active.ts +0 -153
- package/src/commands/liberica/operations/batch-delete.ts +0 -131
- package/src/commands/liberica/operations/copy.ts +0 -138
- package/src/commands/liberica/operations/create.ts +0 -223
- package/src/commands/liberica/operations/deactive.ts +0 -152
- package/src/commands/liberica/operations/delete.ts +0 -128
- package/src/commands/liberica/operations/design.md +0 -587
- package/src/commands/liberica/operations/get.ts +0 -112
- package/src/commands/liberica/operations/index.ts +0 -27
- package/src/commands/liberica/operations/list.ts +0 -180
- package/src/commands/liberica/operations/update.ts +0 -218
- package/src/commands/liberica/orgs/index.ts +0 -34
- package/src/commands/liberica/positions/index.ts +0 -30
- package/src/commands/liberica/roles/index.ts +0 -59
- package/src/commands/liberica/stock/index.ts +0 -13
- package/src/commands/liberica/stock/ledger.ts +0 -159
- package/src/commands/liberica/stock/list.ts +0 -128
- package/src/commands/liberica/supplier-contacts/create.ts +0 -120
- package/src/commands/liberica/supplier-contacts/delete.ts +0 -88
- package/src/commands/liberica/supplier-contacts/get.ts +0 -94
- package/src/commands/liberica/supplier-contacts/index.ts +0 -19
- package/src/commands/liberica/supplier-contacts/list.ts +0 -130
- package/src/commands/liberica/supplier-contacts/update.ts +0 -127
- package/src/commands/liberica/suppliers/create.ts +0 -149
- package/src/commands/liberica/suppliers/delete.ts +0 -102
- package/src/commands/liberica/suppliers/disable.ts +0 -145
- package/src/commands/liberica/suppliers/enable.ts +0 -126
- package/src/commands/liberica/suppliers/get.ts +0 -86
- package/src/commands/liberica/suppliers/index.ts +0 -23
- package/src/commands/liberica/suppliers/list.ts +0 -134
- package/src/commands/liberica/suppliers/update.ts +0 -128
- package/src/commands/liberica/teams/index.ts +0 -17
- package/src/commands/liberica/teams/issues/close.ts +0 -104
- package/src/commands/liberica/teams/issues/create.ts +0 -254
- package/src/commands/liberica/teams/issues/delete.ts +0 -58
- package/src/commands/liberica/teams/issues/get.ts +0 -78
- package/src/commands/liberica/teams/issues/index.ts +0 -21
- package/src/commands/liberica/teams/issues/list.ts +0 -144
- package/src/commands/liberica/teams/issues/update.ts +0 -141
- package/src/commands/liberica/teams/projects/create.ts +0 -159
- package/src/commands/liberica/teams/projects/delete.ts +0 -58
- package/src/commands/liberica/teams/projects/get.ts +0 -87
- package/src/commands/liberica/teams/projects/index.ts +0 -19
- package/src/commands/liberica/teams/projects/list.ts +0 -147
- package/src/commands/liberica/teams/projects/update.ts +0 -117
- package/src/commands/liberica/teams/tasks/create.ts +0 -102
- package/src/commands/liberica/teams/tasks/delete.ts +0 -92
- package/src/commands/liberica/teams/tasks/get.ts +0 -64
- package/src/commands/liberica/teams/tasks/index.ts +0 -19
- package/src/commands/liberica/teams/tasks/list.ts +0 -102
- package/src/commands/liberica/teams/tasks/update.ts +0 -122
- package/src/commands/liberica/teams/work-logs/create.ts +0 -204
- package/src/commands/liberica/teams/work-logs/delete.ts +0 -58
- package/src/commands/liberica/teams/work-logs/get.ts +0 -87
- package/src/commands/liberica/teams/work-logs/index.ts +0 -19
- package/src/commands/liberica/teams/work-logs/list.ts +0 -141
- package/src/commands/liberica/teams/work-logs/update.ts +0 -120
- package/src/commands/liberica/transfer-in-forms/batch-delete.ts +0 -152
- package/src/commands/liberica/transfer-in-forms/batch-review.ts +0 -151
- package/src/commands/liberica/transfer-in-forms/batch-unreview.ts +0 -152
- package/src/commands/liberica/transfer-in-forms/create.ts +0 -179
- package/src/commands/liberica/transfer-in-forms/get.ts +0 -107
- package/src/commands/liberica/transfer-in-forms/index.ts +0 -23
- package/src/commands/liberica/transfer-in-forms/list.ts +0 -97
- package/src/commands/liberica/transfer-in-forms/update.ts +0 -213
- package/src/commands/liberica/transfer-out-forms/batch-delete.ts +0 -83
- package/src/commands/liberica/transfer-out-forms/batch-review.ts +0 -148
- package/src/commands/liberica/transfer-out-forms/batch-unreview.ts +0 -56
- package/src/commands/liberica/transfer-out-forms/create.ts +0 -194
- package/src/commands/liberica/transfer-out-forms/get.ts +0 -114
- package/src/commands/liberica/transfer-out-forms/index.ts +0 -23
- package/src/commands/liberica/transfer-out-forms/list.ts +0 -125
- package/src/commands/liberica/transfer-out-forms/update.ts +0 -197
- package/src/commands/liberica/uoms/create.ts +0 -134
- package/src/commands/liberica/uoms/delete.ts +0 -105
- package/src/commands/liberica/uoms/disable.ts +0 -148
- package/src/commands/liberica/uoms/enable.ts +0 -129
- package/src/commands/liberica/uoms/get.ts +0 -83
- package/src/commands/liberica/uoms/index.ts +0 -23
- package/src/commands/liberica/uoms/list.ts +0 -129
- package/src/commands/liberica/uoms/update.ts +0 -124
- package/src/commands/liberica/users/create.ts +0 -133
- package/src/commands/liberica/users/delete.ts +0 -49
- package/src/commands/liberica/users/disable.ts +0 -41
- package/src/commands/liberica/users/enable.ts +0 -30
- package/src/commands/liberica/users/get.ts +0 -46
- package/src/commands/liberica/users/index.ts +0 -27
- package/src/commands/liberica/users/list.ts +0 -68
- package/src/commands/liberica/users/me.ts +0 -42
- package/src/commands/liberica/users/reset-password.ts +0 -42
- package/src/commands/liberica/users/update.ts +0 -48
- package/src/commands/liberica/warehouses/create.ts +0 -204
- package/src/commands/liberica/warehouses/delete.ts +0 -112
- package/src/commands/liberica/warehouses/disable.ts +0 -174
- package/src/commands/liberica/warehouses/enable.ts +0 -174
- package/src/commands/liberica/warehouses/get.ts +0 -101
- package/src/commands/liberica/warehouses/index.ts +0 -25
- package/src/commands/liberica/warehouses/list.ts +0 -136
- package/src/commands/liberica/warehouses/locations/create.ts +0 -209
- package/src/commands/liberica/warehouses/locations/delete.ts +0 -116
- package/src/commands/liberica/warehouses/locations/disable.ts +0 -174
- package/src/commands/liberica/warehouses/locations/enable.ts +0 -174
- package/src/commands/liberica/warehouses/locations/get.ts +0 -84
- package/src/commands/liberica/warehouses/locations/index.ts +0 -23
- package/src/commands/liberica/warehouses/locations/list.ts +0 -140
- package/src/commands/liberica/warehouses/locations/update.ts +0 -135
- package/src/commands/liberica/warehouses/update.ts +0 -142
- package/src/core/api/client.ts +0 -4443
- package/src/core/auth/token-manager.ts +0 -183
- package/src/core/config/manager.ts +0 -164
- package/src/index.ts +0 -35
- package/src/types/calendar.ts +0 -36
- package/src/types/client-contact.ts +0 -78
- package/src/types/client.ts +0 -115
- package/src/types/currency.ts +0 -90
- package/src/types/dict.ts +0 -121
- package/src/types/employee.ts +0 -102
- package/src/types/index.ts +0 -93
- package/src/types/location.ts +0 -66
- package/src/types/material.ts +0 -61
- package/src/types/mould-stock-in.ts +0 -82
- package/src/types/mould.ts +0 -74
- package/src/types/operation.ts +0 -72
- package/src/types/org.ts +0 -25
- package/src/types/position.ts +0 -24
- package/src/types/stock.ts +0 -161
- package/src/types/supplier-contact.ts +0 -78
- package/src/types/supplier.ts +0 -66
- package/src/types/team-issue.ts +0 -94
- package/src/types/team-project.ts +0 -74
- package/src/types/team-task.ts +0 -98
- package/src/types/team-work-log.ts +0 -87
- package/src/types/transfer-in-form.ts +0 -265
- package/src/types/transfer-out-form.ts +0 -290
- package/src/types/uom.ts +0 -60
- package/src/types/user.ts +0 -64
- package/src/types/warehouse.ts +0 -82
|
@@ -1,250 +0,0 @@
|
|
|
1
|
-
# barista liberica materials update
|
|
2
|
-
|
|
3
|
-
更新物料信息。
|
|
4
|
-
|
|
5
|
-
## 2.1 命令元数据
|
|
6
|
-
|
|
7
|
-
| 字段 | 值 |
|
|
8
|
-
|------|-----|
|
|
9
|
-
| 完整命令 | `barista liberica materials update <materialId>` |
|
|
10
|
-
| 功能描述 | 更新物料信息 |
|
|
11
|
-
| HTTP方法 | POST |
|
|
12
|
-
| 是否需要认证 | ✅ 是 |
|
|
13
|
-
| 是否支持dry-run | ✅ 是 |
|
|
14
|
-
|
|
15
|
-
## 2.2 后端接口引用
|
|
16
|
-
|
|
17
|
-
### Controller位置
|
|
18
|
-
```
|
|
19
|
-
coffee-liberica-end/
|
|
20
|
-
└── facade/liberica-facade-enterprise/
|
|
21
|
-
└── src/main/java/com/newpeak/liberica/facade/enterprise/controller/master/
|
|
22
|
-
└── EnterpriseMaterialController.java
|
|
23
|
-
└── edit(@PostResource(path = "/edit", requiredPermission = true, requirePermissionCode = "EDIT_MASTER_MATERIAL"))
|
|
24
|
-
└── public ResponseData<?> edit(
|
|
25
|
-
@RequestHeader("X-TENANT-ID") Long tenantId,
|
|
26
|
-
@RequestBody @Validated(BaseRequest.edit.class) MasterMaterialRequest masterMaterialRequest
|
|
27
|
-
)
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
### Request DTO位置
|
|
31
|
-
```
|
|
32
|
-
coffee-liberica-end/
|
|
33
|
-
└── business/liberica-business-sales/sales-api/
|
|
34
|
-
└── src/main/java/com/newpeak/liberica/sales/api/pojo/request/
|
|
35
|
-
└── MasterMaterialRequest.java
|
|
36
|
-
├── materialId: Long (@NotNull on edit) — 必须提供
|
|
37
|
-
├── materialCode: String
|
|
38
|
-
├── materialNo: String
|
|
39
|
-
├── materialName: String
|
|
40
|
-
├── materialShortName: String
|
|
41
|
-
├── materialMaker: String
|
|
42
|
-
├── materialClass: String
|
|
43
|
-
├── materialType: String
|
|
44
|
-
├── materialUomCode: String
|
|
45
|
-
├── materialBarCode: String
|
|
46
|
-
├── enableSale: String (Y/N)
|
|
47
|
-
├── enablePurchase: String (Y/N)
|
|
48
|
-
├── enableSubMaterial: String (Y/N)
|
|
49
|
-
├── enableOutsourcing: String (Y/N)
|
|
50
|
-
├── enableDivision: String (Y/N)
|
|
51
|
-
├── productionPeriod: Integer
|
|
52
|
-
├── unitPrice: BigDecimal
|
|
53
|
-
├── currency: String
|
|
54
|
-
├── defaultWarehouse: String
|
|
55
|
-
├── defaultSupplier: String
|
|
56
|
-
├── defaultClient: String
|
|
57
|
-
├── safetyInventory: BigDecimal
|
|
58
|
-
├── longX: BigDecimal
|
|
59
|
-
├── wideY: BigDecimal
|
|
60
|
-
├── highZ: BigDecimal
|
|
61
|
-
├── thickness: BigDecimal
|
|
62
|
-
├── grossWeight: String
|
|
63
|
-
├── netWeight: String
|
|
64
|
-
├── color: String
|
|
65
|
-
└── remark: String
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
### Response DTO位置
|
|
69
|
-
```
|
|
70
|
-
coffee-liberica-end/
|
|
71
|
-
└── business/liberica-business-sales/sales-api/
|
|
72
|
-
└── src/main/java/com/newpeak/liberica/sales/api/pojo/response/
|
|
73
|
-
└── MasterMaterialResponse.java
|
|
74
|
-
├── materialId: Long
|
|
75
|
-
├── materialCode: String
|
|
76
|
-
├── materialNo: String
|
|
77
|
-
├── materialName: String
|
|
78
|
-
├── materialShortName: String
|
|
79
|
-
├── materialClass: String
|
|
80
|
-
├── materialType: String
|
|
81
|
-
├── materialUomCode: String
|
|
82
|
-
├── statusFlag: Integer (1=enable, 2=disable)
|
|
83
|
-
├── createTime: String
|
|
84
|
-
└── updateTime: String
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
## 2.3 CLI参数设计
|
|
88
|
-
|
|
89
|
-
### 命令结构
|
|
90
|
-
```
|
|
91
|
-
barista liberica materials update <materialId> [options]
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
### 位置参数
|
|
95
|
-
| 参数 | 类型 | 必填 | 说明 |
|
|
96
|
-
|------|------|------|------|
|
|
97
|
-
| materialId | string | ✅ | 物料ID (materialId) |
|
|
98
|
-
|
|
99
|
-
### 全局选项
|
|
100
|
-
| 选项 | 类型 | 说明 |
|
|
101
|
-
|------|------|------|
|
|
102
|
-
| `--env` | string | 目标环境(dev\|test\|prod-cn\|prod-jp) |
|
|
103
|
-
| `--tenant` | string | 租户代码 |
|
|
104
|
-
| `--dry-run` | boolean | 预览模式(不实际调用API) |
|
|
105
|
-
| `--json` | boolean | JSON输出 |
|
|
106
|
-
|
|
107
|
-
### 命令选项
|
|
108
|
-
| 选项 | 短选项 | 类型 | 必填 | 默认值 | 说明 | 对应DTO字段 |
|
|
109
|
-
|------|--------|------|------|--------|------|-------------|
|
|
110
|
-
| --name | -n | string | ⬜ | - | 物料名称 | materialName |
|
|
111
|
-
| --class | -c | string | ⬜ | - | 物料类别 | materialClass |
|
|
112
|
-
| --type | -t | string | ⬜ | - | 规格型号 | materialType |
|
|
113
|
-
| --unit | -u | string | ⬜ | - | 计量单位 | materialUomCode |
|
|
114
|
-
| --short-name | — | string | ⬜ | - | 物料简称 | materialShortName |
|
|
115
|
-
| --maker | — | string | ⬜ | - | 生产厂商 | materialMaker |
|
|
116
|
-
| --barcode | — | string | ⬜ | - | 条形码 | materialBarCode |
|
|
117
|
-
| --enable-sale | — | boolean | ⬜ | - | 可销售 | enableSale |
|
|
118
|
-
| --enable-purchase | — | boolean | ⬜ | - | 可采购 | enablePurchase |
|
|
119
|
-
| --enable-sub-material | — | boolean | ⬜ | - | 可为子件 | enableSubMaterial |
|
|
120
|
-
| --enable-outsourcing | — | boolean | ⬜ | - | 可委外 | enableOutsourcing |
|
|
121
|
-
| --enable-division | — | boolean | ⬜ | - | 可切割 | enableDivision |
|
|
122
|
-
| --production-period | — | number | ⬜ | - | 生产周期(天) | productionPeriod |
|
|
123
|
-
| --unit-price | — | number | ⬜ | - | 单价 | unitPrice |
|
|
124
|
-
| --currency | — | string | ⬜ | - | 币种 | currency |
|
|
125
|
-
| --default-warehouse | — | string | ⬜ | - | 默认仓库 | defaultWarehouse |
|
|
126
|
-
| --default-supplier | — | string | ⬜ | - | 默认供应商 | defaultSupplier |
|
|
127
|
-
| --default-client | — | string | ⬜ | - | 默认客户 | defaultClient |
|
|
128
|
-
| --safety-inventory | — | number | ⬜ | - | 安全库存 | safetyInventory |
|
|
129
|
-
| --long-x | — | number | ⬜ | - | 长 | longX |
|
|
130
|
-
| --wide-y | — | number | ⬜ | - | 宽 | wideY |
|
|
131
|
-
| --high-z | — | number | ⬜ | - | 高 | highZ |
|
|
132
|
-
| --thickness | — | number | ⬜ | - | 厚度 | thickness |
|
|
133
|
-
| --gross-weight | — | string | ⬜ | - | 毛重 | grossWeight |
|
|
134
|
-
| --net-weight | — | string | ⬜ | - | 净重 | netWeight |
|
|
135
|
-
| --color | — | string | ⬜ | - | 颜色 | color |
|
|
136
|
-
| --remark | -r | string | ⬜ | - | 备注 | remark |
|
|
137
|
-
|
|
138
|
-
**注意**:物料ID(materialId)为必填,通过位置参数 `<materialId>` 传入。后端处理部分更新,未提供的字段保持原值。
|
|
139
|
-
|
|
140
|
-
## 2.4 字段映射表
|
|
141
|
-
|
|
142
|
-
| CLI参数 | DTO字段 | 类型转换 | 验证规则 |
|
|
143
|
-
|---------|---------|----------|----------|
|
|
144
|
-
| <materialId> (位置参数) | materialId | string→Long | @NotNull |
|
|
145
|
-
| --name / -n | materialName | 直接传递 | max=255 |
|
|
146
|
-
| --class / -c | materialClass | 直接传递 | max=255 |
|
|
147
|
-
| --type / -t | materialType | 直接传递 | max=255 |
|
|
148
|
-
| --unit / -u | materialUomCode | 直接传递 | max=255 |
|
|
149
|
-
| --short-name | materialShortName | 直接传递 | max=255 |
|
|
150
|
-
| --maker | materialMaker | 直接传递 | max=255 |
|
|
151
|
-
| --barcode | materialBarCode | 直接传递 | max=255 |
|
|
152
|
-
| --enable-sale | enableSale | boolean→String | Y 或 N |
|
|
153
|
-
| --enable-purchase | enablePurchase | boolean→String | Y 或 N |
|
|
154
|
-
| --enable-sub-material | enableSubMaterial | boolean→String | Y 或 N |
|
|
155
|
-
| --enable-outsourcing | enableOutsourcing | boolean→String | Y 或 N |
|
|
156
|
-
| --enable-division | enableDivision | boolean→String | Y 或 N |
|
|
157
|
-
| --production-period | productionPeriod | number→Integer | - |
|
|
158
|
-
| --unit-price | unitPrice | number→BigDecimal | - |
|
|
159
|
-
| --currency | currency | 直接传递 | max=255 |
|
|
160
|
-
| --default-warehouse | defaultWarehouse | 直接传递 | max=255 |
|
|
161
|
-
| --default-supplier | defaultSupplier | 直接传递 | max=255 |
|
|
162
|
-
| --default-client | defaultClient | 直接传递 | max=255 |
|
|
163
|
-
| --safety-inventory | safetyInventory | number→BigDecimal | - |
|
|
164
|
-
| --long-x | longX | number→BigDecimal | - |
|
|
165
|
-
| --wide-y | wideY | number→BigDecimal | - |
|
|
166
|
-
| --high-z | highZ | number→BigDecimal | - |
|
|
167
|
-
| --thickness | thickness | number→BigDecimal | - |
|
|
168
|
-
| --gross-weight | grossWeight | 直接传递 | max=255 |
|
|
169
|
-
| --net-weight | netWeight | 直接传递 | max=255 |
|
|
170
|
-
| --color | color | 直接传递 | max=255 |
|
|
171
|
-
| --remark / -r | remark | 直接传递 | max=255 |
|
|
172
|
-
|
|
173
|
-
## 2.5 错误码引用
|
|
174
|
-
|
|
175
|
-
### ExceptionEnum位置
|
|
176
|
-
```
|
|
177
|
-
coffee-liberica-end/
|
|
178
|
-
└── business/liberica-business-sales/sales-api/
|
|
179
|
-
└── src/main/java/com/newpeak/liberica/sales/api/exception/enums/
|
|
180
|
-
└── MasterMaterialExceptionEnum.java
|
|
181
|
-
├── MASTER_MATERIAL_NOT_EXIST("01001512001", "租户物料不存在")
|
|
182
|
-
├── MASTER_MATERIAL_CODE_VALIDATE_NOT_EXIST_ERROR("01001512006", "指定{}不存在")
|
|
183
|
-
├── MASTER_MATERIAL_NAME_VALIDATE_NOT_EXIST_ERROR("01001512010", "指定{}不存在")
|
|
184
|
-
├── ENABLE_DIVISION_MATERIAL_NEED_WIDE_AND_LONG("01001512012", "可分割物料必须设置长和宽")
|
|
185
|
-
└── ENABLE_DIVISION_MATERIAL_NEED_WIDE_AND_LONG_GT_ZERO("01001512013", "可分割物料长和宽必须大于0")
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
### 已知错误码
|
|
189
|
-
| 错误码 | 错误消息 | 触发条件 |
|
|
190
|
-
|--------|----------|----------|
|
|
191
|
-
| 01001512001 | 租户物料不存在 | materialId 不存在或不属于当前租户 |
|
|
192
|
-
| 01001512006 | 指定xxx不存在 | 指定关联的物料编码不存在 |
|
|
193
|
-
| 01001512012 | 可分割物料必须设置长和宽 | 设置enableDivision=Y但未提供长宽 |
|
|
194
|
-
| 01001512013 | 可分割物料长和宽必须大于0 | 设置enableDivision=Y且长宽<=0 |
|
|
195
|
-
|
|
196
|
-
## 2.6 权限检查
|
|
197
|
-
|
|
198
|
-
| 检查项 | 位置 | 说明 |
|
|
199
|
-
|--------|------|------|
|
|
200
|
-
| PermissionConstants | `MasterMaterialPermissionConstants.EDIT_MASTER_MATERIAL` | Controller层 `@PostResource(requirePermissionCode = "EDIT_MASTER_MATERIAL")` |
|
|
201
|
-
|
|
202
|
-
## 2.7 实现要点
|
|
203
|
-
|
|
204
|
-
1. **materialId位置参数**:`<materialId>` 通过位置参数传入,映射到 `materialId` 字段
|
|
205
|
-
2. **请求体结构**:必须将 `materialId` 包含在请求体中,后端通过此ID定位记录
|
|
206
|
-
3. **部分更新**:只发送需要更新的字段,未提供的字段保持原值
|
|
207
|
-
4. **Dry-run支持**:使用 --dry-run 时构造请求体但不发送,显示预览信息
|
|
208
|
-
5. **后端验证**:edit() 方法调用 `masterMaterialBusiness.edit()`,后端会校验物料是否存在
|
|
209
|
-
|
|
210
|
-
## 2.8 示例用法
|
|
211
|
-
|
|
212
|
-
```bash
|
|
213
|
-
# 更新物料名称
|
|
214
|
-
barista liberica materials update 12345 --name "新产品名称"
|
|
215
|
-
|
|
216
|
-
# 更新物料类别和规格
|
|
217
|
-
barista liberica materials update 12345 \
|
|
218
|
-
--class "原材料" \
|
|
219
|
-
--type "ABC-001" \
|
|
220
|
-
--unit "KG"
|
|
221
|
-
|
|
222
|
-
# 更新价格信息
|
|
223
|
-
barista liberica materials update 12345 \
|
|
224
|
-
--unit-price 100.50 \
|
|
225
|
-
--currency "CNY"
|
|
226
|
-
|
|
227
|
-
# 启用可销售属性
|
|
228
|
-
barista liberica materials update 12345 --enable-sale true
|
|
229
|
-
|
|
230
|
-
# 同时更新多个字段
|
|
231
|
-
barista liberica materials update 12345 \
|
|
232
|
-
--name "新产品" \
|
|
233
|
-
--class "成品" \
|
|
234
|
-
--type "XYZ-999" \
|
|
235
|
-
--unit "PCS" \
|
|
236
|
-
--unit-price 299.99 \
|
|
237
|
-
--enable-sale true \
|
|
238
|
-
--enable-purchase true \
|
|
239
|
-
--remark "更新备注信息"
|
|
240
|
-
|
|
241
|
-
# Dry-run 预览
|
|
242
|
-
barista liberica materials update 12345 --name "新产品" --dry-run
|
|
243
|
-
|
|
244
|
-
# JSON 输出
|
|
245
|
-
barista liberica materials update 12345 --name "新产品" --json
|
|
246
|
-
|
|
247
|
-
# 物料不存在
|
|
248
|
-
barista liberica materials update 99999 --name "测试"
|
|
249
|
-
# 输出: Error: 租户物料不存在 (01001512001)
|
|
250
|
-
```
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
# Orgs Command Design
|
|
2
|
-
|
|
3
|
-
## Command Structure
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
barista liberica orgs <subcommand>
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
## Subcommands
|
|
10
|
-
|
|
11
|
-
### list
|
|
12
|
-
|
|
13
|
-
List all organizations (departments) in the system.
|
|
14
|
-
|
|
15
|
-
**Usage:**
|
|
16
|
-
```bash
|
|
17
|
-
barista liberica orgs list [options]
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
**Options:**
|
|
21
|
-
- `--json` - Output as JSON format
|
|
22
|
-
|
|
23
|
-
**Examples:**
|
|
24
|
-
```bash
|
|
25
|
-
# List all organizations
|
|
26
|
-
barista liberica orgs list
|
|
27
|
-
|
|
28
|
-
# Output as JSON
|
|
29
|
-
barista liberica orgs list --json
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
**API Endpoint:**
|
|
33
|
-
- `GET /api/enterprise/master/org/all`
|
|
34
|
-
|
|
35
|
-
**Implementation:**
|
|
36
|
-
```typescript
|
|
37
|
-
// src/commands/liberica/orgs/index.ts
|
|
38
|
-
// src/core/api/client.ts - listOrganizations()
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Output Format
|
|
42
|
-
|
|
43
|
-
| Field | Description |
|
|
44
|
-
|-------|-------------|
|
|
45
|
-
| id | Organization ID |
|
|
46
|
-
| name | Organization name |
|
|
47
|
-
|
|
48
|
-
## Known Organizations (Shanghai Tenant)
|
|
49
|
-
|
|
50
|
-
| ID | Name |
|
|
51
|
-
|----|------|
|
|
52
|
-
| 2006228218445156353 | 人事部 |
|
|
53
|
-
| 1890201570712793090 | 销售部 |
|
|
54
|
-
| 1890201570712793091 | 生产部 |
|
|
55
|
-
| 1890201570712793092 | 采购部 |
|
|
56
|
-
| 1890201570712793093 | 财务部 |
|
|
57
|
-
|
|
58
|
-
## Notes
|
|
59
|
-
|
|
60
|
-
- Organizations are company departments
|
|
61
|
-
- Used as reference for user management
|
|
62
|
-
- The `userOrgList.orgId` in user creation maps to these organization IDs
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
# Positions Command Design
|
|
2
|
-
|
|
3
|
-
## Command Structure
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
barista liberica positions <subcommand>
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
## Subcommands
|
|
10
|
-
|
|
11
|
-
### list
|
|
12
|
-
|
|
13
|
-
List all positions in the system.
|
|
14
|
-
|
|
15
|
-
**Usage:**
|
|
16
|
-
```bash
|
|
17
|
-
barista liberica positions list [options]
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
**Options:**
|
|
21
|
-
- `--json` - Output as JSON format
|
|
22
|
-
|
|
23
|
-
**Examples:**
|
|
24
|
-
```bash
|
|
25
|
-
# List all positions
|
|
26
|
-
barista liberica positions list
|
|
27
|
-
|
|
28
|
-
# Output as JSON
|
|
29
|
-
barista liberica positions list --json
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
**API Endpoint:**
|
|
33
|
-
- `GET /api/enterprise/master/position/all`
|
|
34
|
-
|
|
35
|
-
**Implementation:**
|
|
36
|
-
```typescript
|
|
37
|
-
// src/commands/liberica/positions/index.ts
|
|
38
|
-
// src/core/api/client.ts - listPositions()
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Output Format
|
|
42
|
-
|
|
43
|
-
| Field | Description |
|
|
44
|
-
|-------|-------------|
|
|
45
|
-
| id | Position ID |
|
|
46
|
-
| name | Position name |
|
|
47
|
-
|
|
48
|
-
## Known Positions (Shanghai Tenant)
|
|
49
|
-
|
|
50
|
-
| ID | Name |
|
|
51
|
-
|----|------|
|
|
52
|
-
| 2039948606182752257 | 总经理 |
|
|
53
|
-
| 2039948606186946562 | 部门经理 |
|
|
54
|
-
| 2039948606191140865 | 组长 |
|
|
55
|
-
|
|
56
|
-
## Notes
|
|
57
|
-
|
|
58
|
-
- Positions represent job titles within the organization
|
|
59
|
-
- The default system position ID is `1671418731163627522`
|
|
60
|
-
- Used as reference for user management
|
|
61
|
-
- The `userOrgList.positionId` in user creation maps to these position IDs
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
# Roles Command Design
|
|
2
|
-
|
|
3
|
-
## Command Structure
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
barista liberica roles <subcommand>
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
## Subcommands
|
|
10
|
-
|
|
11
|
-
### list
|
|
12
|
-
|
|
13
|
-
List all available roles in the system.
|
|
14
|
-
|
|
15
|
-
**Usage:**
|
|
16
|
-
```bash
|
|
17
|
-
barista liberica roles list [options]
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
**Options:**
|
|
21
|
-
- `--json` - Output as JSON format
|
|
22
|
-
|
|
23
|
-
**Examples:**
|
|
24
|
-
```bash
|
|
25
|
-
# List all roles
|
|
26
|
-
barista liberica roles list
|
|
27
|
-
|
|
28
|
-
# Output as JSON
|
|
29
|
-
barista liberica roles list --json
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
**API Endpoint:**
|
|
33
|
-
- `GET /api/enterprise/sysRole/list`
|
|
34
|
-
|
|
35
|
-
**Implementation:**
|
|
36
|
-
```typescript
|
|
37
|
-
// src/commands/liberica/roles/index.ts
|
|
38
|
-
// src/core/api/client.ts - listRoles()
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Output Format
|
|
42
|
-
|
|
43
|
-
| Field | Description |
|
|
44
|
-
|-------|-------------|
|
|
45
|
-
| ID | Role ID (e.g., 9000, 9001) |
|
|
46
|
-
| Role Code | System code (e.g., tenantAdmin, tenantEmployee) |
|
|
47
|
-
| Role Name | Display name (e.g., 租户管理员, 租户人员) |
|
|
48
|
-
| Status | Enabled or Disabled |
|
|
49
|
-
|
|
50
|
-
## Known Roles (Shanghai Tenant)
|
|
51
|
-
|
|
52
|
-
| ID | Code | Name |
|
|
53
|
-
|----|------|------|
|
|
54
|
-
| 9000 | tenantAdmin | 租户管理员 |
|
|
55
|
-
| 9001 | tenantEmployee | 租户人员 |
|
|
56
|
-
| 9100 | tenantKpiParticipant | 租户人事考核参与人 |
|
|
57
|
-
| 9101 | tenantHr | 租户人事 |
|
|
58
|
-
| 9102 | tenantDeptManager | 租户部门负责人 |
|
|
59
|
-
| 9103 | tenantKpiEvaluator | 租户人事考核评价人 |
|
|
60
|
-
| 9104 | tenantCeo | 租户首席执行官 |
|
|
61
|
-
| 9105 | tenantSales | 租户销售 |
|
|
62
|
-
| 9106 | tenantPurchase | 租户采购 |
|
|
63
|
-
|
|
64
|
-
## Notes
|
|
65
|
-
|
|
66
|
-
- Roles are used when creating users with `barista liberica users create -r <role-id>`
|
|
67
|
-
- Multiple roles can be specified as comma-separated IDs: `-r 9001,9105`
|
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
# 命令名称: barista liberica stock ledger
|
|
2
|
-
|
|
3
|
-
## 2.1 命令元数据
|
|
4
|
-
|
|
5
|
-
| 字段 | 值 |
|
|
6
|
-
|------|-----|
|
|
7
|
-
| 完整命令 | `barista liberica stock ledger` |
|
|
8
|
-
| 功能描述 | 查询出入库台账(分页列表+汇总) |
|
|
9
|
-
| HTTP方法 | GET |
|
|
10
|
-
| 是否需要认证 | 是 |
|
|
11
|
-
| 是否支持dry-run | 否 |
|
|
12
|
-
|
|
13
|
-
## 2.2 后端接口引用
|
|
14
|
-
|
|
15
|
-
### Controller位置
|
|
16
|
-
```
|
|
17
|
-
coffee-liberica-end/
|
|
18
|
-
└── facade/liberica-facade-enterprise/
|
|
19
|
-
└── src/main/java/com/newpeak/liberica/facade/enterprise/controller/master/
|
|
20
|
-
└── MasterStockController.java
|
|
21
|
-
├── commonStockJourneyPage(@GetResource(path = "/journey/page"))
|
|
22
|
-
│ └── public ResponseData<PageResult<StockJourneyResponse>> commonStockJourneyPage(
|
|
23
|
-
│ @RequestHeader("X-TENANT-ID") Long tenantId,
|
|
24
|
-
│ @ParameterObject StockJourneyQueryRequest stockJourneyQueryRequest
|
|
25
|
-
│ )
|
|
26
|
-
└── commonStockJourneyPageSummary(@GetResource(path = "/journey/page/summary"))
|
|
27
|
-
└── public ResponseData<StockJourneySummaryResponse> commonStockJourneyPageSummary(
|
|
28
|
-
@RequestHeader("X-TENANT-ID") Long tenantId,
|
|
29
|
-
@ParameterObject StockJourneyQueryRequest stockJourneyQueryRequest
|
|
30
|
-
)
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
### Request DTO位置
|
|
34
|
-
```
|
|
35
|
-
coffee-liberica-end/
|
|
36
|
-
└── business/liberica-business-stock/stock-api/
|
|
37
|
-
└── src/main/java/com/newpeak/liberica/stock/api/pojo/request/
|
|
38
|
-
└── StockJourneyQueryRequest.java
|
|
39
|
-
├── stockId: Long
|
|
40
|
-
├── stockFormCode: String
|
|
41
|
-
├── stockType: String
|
|
42
|
-
├── stockFlag: String
|
|
43
|
-
├── warehouseCode: String
|
|
44
|
-
├── materialCode: String
|
|
45
|
-
├── materialName: String
|
|
46
|
-
├── materialType: String
|
|
47
|
-
├── color: String
|
|
48
|
-
├── lotNo: String
|
|
49
|
-
├── lotCode: String
|
|
50
|
-
├── sourceType: String
|
|
51
|
-
├── sourceCode: String
|
|
52
|
-
├── stockDate: Date
|
|
53
|
-
├── stockDateCriteria: DateRange
|
|
54
|
-
└── postingMonth: Date
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### Response DTO位置
|
|
58
|
-
|
|
59
|
-
**列表项 DTO:**
|
|
60
|
-
```
|
|
61
|
-
coffee-liberica-end/
|
|
62
|
-
└── business/liberica-business-stock/stock-api/
|
|
63
|
-
└── src/main/java/com/newpeak/liberica/stock/api/pojo/response/
|
|
64
|
-
└── StockJourneyResponse.java
|
|
65
|
-
├── stockId: Long
|
|
66
|
-
├── stockFormCode: String
|
|
67
|
-
├── stockType: String
|
|
68
|
-
├── stockFlag: String
|
|
69
|
-
├── warehouseCode: String
|
|
70
|
-
├── materialCode: String
|
|
71
|
-
├── materialNo: String
|
|
72
|
-
├── materialName: String
|
|
73
|
-
├── materialType: String
|
|
74
|
-
├── color: String
|
|
75
|
-
├── longX: BigDecimal
|
|
76
|
-
├── wideY: BigDecimal
|
|
77
|
-
├── highZ: BigDecimal
|
|
78
|
-
├── sourceCode: String
|
|
79
|
-
├── sourceType: String
|
|
80
|
-
├── lotCode: String
|
|
81
|
-
├── lotNo: String
|
|
82
|
-
├── supplierLotNo: String
|
|
83
|
-
├── inboundCount: BigDecimal
|
|
84
|
-
├── outboundCount: BigDecimal
|
|
85
|
-
├── materialUomCode: String
|
|
86
|
-
├── unitPrice: BigDecimal
|
|
87
|
-
├── localCurrency: String
|
|
88
|
-
├── inboundAmount: BigDecimal
|
|
89
|
-
├── outboundAmount: BigDecimal
|
|
90
|
-
├── inboundDate: Date
|
|
91
|
-
├── stockDate: Date
|
|
92
|
-
├── outboundDate: Date
|
|
93
|
-
├── postingMonth: Date
|
|
94
|
-
└── remark: String
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**汇总 DTO:**
|
|
98
|
-
```
|
|
99
|
-
coffee-liberica-end/
|
|
100
|
-
└── business/liberica-business-stock/stock-api/
|
|
101
|
-
└── src/main/java/com/newpeak/liberica/stock/api/pojo/response/
|
|
102
|
-
└── StockJourneySummaryResponse.java
|
|
103
|
-
├── totalInboundCount: BigDecimal
|
|
104
|
-
├── totalOutboundCount: BigDecimal
|
|
105
|
-
├── totalInboundAmount: BigDecimal
|
|
106
|
-
└── totalOutboundAmount: BigDecimal
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
## 2.3 CLI参数设计
|
|
110
|
-
|
|
111
|
-
### 命令结构
|
|
112
|
-
```bash
|
|
113
|
-
barista liberica stock ledger [options]
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
### 全局选项
|
|
117
|
-
| 选项 | 类型 | 说明 |
|
|
118
|
-
|------|------|------|
|
|
119
|
-
| `--env` | string | 目标环境(dev/test/prod-cn/prod-jp) |
|
|
120
|
-
| `--tenant` | string | 租户代码(仅Liberica) |
|
|
121
|
-
| `--dry-run` | boolean | 预览模式 |
|
|
122
|
-
| `--json` | boolean | JSON输出 |
|
|
123
|
-
|
|
124
|
-
### 命令选项
|
|
125
|
-
| 选项 | 短选项 | 类型 | 必填 | 默认值 | 说明 | 对应DTO字段 |
|
|
126
|
-
|------|--------|------|------|--------|------|-------------|
|
|
127
|
-
| `--stock-id` | | string | 否 | - | 出入库ID | stockId |
|
|
128
|
-
| `--stock-form-code` | | string | 否 | - | 出入库单编码 | stockFormCode |
|
|
129
|
-
| `--stock-type` | | string | 否 | - | 出入库单类型 | stockType |
|
|
130
|
-
| `--stock-flag` | | string | 否 | - | 出入库标志(inbound/outbound) | stockFlag |
|
|
131
|
-
| `--warehouse-code` | -w | string | 否 | - | 仓库编码 | warehouseCode |
|
|
132
|
-
| `--material-code` | -m | string | 否 | - | 物料编码 | materialCode |
|
|
133
|
-
| `--material-name` | | string | 否 | - | 物料名称(支持模糊查询) | materialName |
|
|
134
|
-
| `--material-type` | -t | string | 否 | - | 物料规格 | materialType |
|
|
135
|
-
| `--color` | -c | string | 否 | - | 颜色 | color |
|
|
136
|
-
| `--lot-no` | -l | string | 否 | - | 批次号 | lotNo |
|
|
137
|
-
| `--lot-code` | | string | 否 | - | 系统批次号 | lotCode |
|
|
138
|
-
| `--source-type` | | string | 否 | - | 源单类型 | sourceType |
|
|
139
|
-
| `--source-code` | | string | 否 | - | 源单编码 | sourceCode |
|
|
140
|
-
| `--start-date` | | string | 否 | - | 出入库开始日期(YYYY-MM-DD) | stockDateCriteria.startDate |
|
|
141
|
-
| `--end-date` | | string | 否 | - | 出入库结束日期(YYYY-MM-DD) | stockDateCriteria.endDate |
|
|
142
|
-
| `--posting-month` | | string | 否 | - | 记账年月(YYYY-MM) | postingMonth |
|
|
143
|
-
| `--summary` | | boolean | 否 | false | 仅显示汇总数据 | 控制输出模式 |
|
|
144
|
-
| `--page` | -p | number | 否 | 1 | 页码 | pageNo |
|
|
145
|
-
| `--size` | -s | number | 否 | 20 | 每页条数 | pageSize |
|
|
146
|
-
|
|
147
|
-
## 2.4 字段映射表
|
|
148
|
-
|
|
149
|
-
| CLI参数 | DTO字段 | 类型转换 | 验证规则 |
|
|
150
|
-
|---------|---------|----------|----------|
|
|
151
|
-
| --stock-id | stockId | string→Long | 后端BigInteger,CLI使用string |
|
|
152
|
-
| --stock-form-code | stockFormCode | 直接传递 | - |
|
|
153
|
-
| --stock-type | stockType | 直接传递 | enum: STOCK_TYPE |
|
|
154
|
-
| --stock-flag | stockFlag | 直接传递 | enum: STOCK_FLAG |
|
|
155
|
-
| --warehouse-code | warehouseCode | 直接传递 | - |
|
|
156
|
-
| --material-code | materialCode | 直接传递 | - |
|
|
157
|
-
| --material-name | materialName | 直接传递 | - |
|
|
158
|
-
| --material-type | materialType | 直接传递 | - |
|
|
159
|
-
| --color | color | 直接传递 | - |
|
|
160
|
-
| --lot-no | lotNo | 直接传递 | - |
|
|
161
|
-
| --lot-code | lotCode | 直接传递 | - |
|
|
162
|
-
| --source-type | sourceType | 直接传递 | enum: source_type |
|
|
163
|
-
| --source-code | sourceCode | 直接传递 | - |
|
|
164
|
-
| --start-date | stockDateCriteria.startDate | string→Date | yyyy-MM-dd |
|
|
165
|
-
| --end-date | stockDateCriteria.endDate | string→Date | yyyy-MM-dd |
|
|
166
|
-
| --posting-month | postingMonth | string→Date | yyyy-MM |
|
|
167
|
-
| --page | pageNo | number-1 | 0-based分页 |
|
|
168
|
-
| --size | pageSize | number | >0 |
|
|
169
|
-
|
|
170
|
-
## 2.5 错误码引用
|
|
171
|
-
|
|
172
|
-
### ExceptionEnum位置
|
|
173
|
-
```
|
|
174
|
-
coffee-liberica-end/
|
|
175
|
-
└── business/liberica-business-stock/stock-api/
|
|
176
|
-
└── src/main/java/com/newpeak/liberica/stock/api/exception/enums/
|
|
177
|
-
├── StockJourneyExceptionEnum.java
|
|
178
|
-
│ ├── STOCK_JOURNEY_NOT_EXIST("...001", "租户出入库台账不存在")
|
|
179
|
-
│ └── CAN_NOT_DELETE_MATERIAL_WITH_USED_IN_STOCK("...002", "物料已在库存中使用,不能删除")
|
|
180
|
-
├── MasterStockExceptionEnum.java
|
|
181
|
-
│ ├── MASTER_STOCK_NOT_EXIST("...001", "租户库存不存在")
|
|
182
|
-
│ └── MASTER_STOCK_OUT_LOT_NOT_ENOUGH("...002", "租户成品出库单{}余量不够")
|
|
183
|
-
└── MasterWarehouseStockExceptionEnum.java
|
|
184
|
-
└── MASTER_WAREHOUSE_STOCK_NOT_EXIST("...001", "租户仓库库存不存在")
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
### 已知错误码示例
|
|
188
|
-
| 错误码 | 错误消息 | 触发条件 |
|
|
189
|
-
|--------|----------|----------|
|
|
190
|
-
| ...001 | 租户出入库台账不存在 | 查询的台账记录不存在 |
|
|
191
|
-
| ...001 | 租户库存不存在 | 查询的库存记录不存在 |
|
|
192
|
-
| ...002 | 租户成品出库单{}余量不够 | 出库操作余量不足 |
|
|
193
|
-
|
|
194
|
-
## 2.6 权限检查
|
|
195
|
-
|
|
196
|
-
| 检查项 | 位置 | 说明 |
|
|
197
|
-
|--------|------|------|
|
|
198
|
-
| 菜单权限 | `MasterStockController` 类上的 `@Menu` 注解 | `stock_journey` 菜单,要求 `tenantStock` 角色 |
|
|
199
|
-
| 接口访问 | Controller方法无单独 `@GetResource(requiredPermission = true)` | 通过菜单角色控制 |
|
|
200
|
-
|
|
201
|
-
## 2.7 实现要点
|
|
202
|
-
|
|
203
|
-
1. **双接口调用**:默认模式同时调用 `/journey/page/summary` 和 `/journey/page`,先显示汇总再显示列表
|
|
204
|
-
2. **Summary模式**:当传入 `--summary` 时,仅调用 `/journey/page/summary`,不请求列表数据
|
|
205
|
-
3. **分页转换**:CLI page 1 对应 API pageNo 0
|
|
206
|
-
4. **ID类型**:stockId 后端为 Long/BigInteger,CLI 统一使用 string 类型避免精度丢失
|
|
207
|
-
5. **日期格式**:--posting-month 使用 yyyy-MM 格式,转换为 Date 类型
|
|
208
|
-
6. **stockFlag映射**:inbound 对应入库记录,outbound 对应出库记录;后端 StockJourneyResponse 根据 inboundCount 是否为空自动推断 stockFlag
|
|
209
|
-
7. **输出格式**:默认表格输出,--json 返回结构化 JSON;汇总数据和列表数据在 JSON 中分层返回
|