@steedos-labs/content-compliance 0.7.21 → 0.8.1
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.md +61 -0
- package/dist/index.js +1 -1
- package/lib/actions/__tests__/downloadFieldZip.test.d.ts +1 -0
- package/lib/actions/__tests__/downloadFieldZip.test.js +154 -0
- package/lib/actions/__tests__/downloadFieldZip.test.js.map +1 -0
- package/lib/actions/approvalCc.d.ts +7 -0
- package/lib/actions/approvalCc.js +35 -0
- package/lib/actions/approvalCc.js.map +1 -0
- package/lib/actions/downloadFieldZip.d.ts +9 -0
- package/lib/actions/downloadFieldZip.js +155 -0
- package/lib/actions/downloadFieldZip.js.map +1 -0
- package/lib/actions/index.d.ts +1 -0
- package/lib/actions/index.js +1 -0
- package/lib/actions/index.js.map +1 -1
- package/lib/index.js +157 -0
- package/lib/index.js.map +1 -1
- package/lib/methods/__tests__/approvalCc.test.d.ts +1 -0
- package/lib/methods/__tests__/approvalCc.test.js +180 -0
- package/lib/methods/__tests__/approvalCc.test.js.map +1 -0
- package/lib/methods/__tests__/voidMaterialReasonMetadata.test.d.ts +1 -0
- package/lib/methods/__tests__/voidMaterialReasonMetadata.test.js +61 -0
- package/lib/methods/__tests__/voidMaterialReasonMetadata.test.js.map +1 -0
- package/lib/methods/approval_cc.d.ts +15 -0
- package/lib/methods/approval_cc.js +170 -0
- package/lib/methods/approval_cc.js.map +1 -0
- package/lib/methods/approval_engine.js +21 -8
- package/lib/methods/approval_engine.js.map +1 -1
- package/lib/methods/consts.d.ts +1 -0
- package/lib/methods/consts.js.map +1 -1
- package/lib/methods/index.d.ts +1 -0
- package/lib/methods/index.js +1 -0
- package/lib/methods/index.js.map +1 -1
- package/lib/methods/notification.d.ts +2 -0
- package/lib/methods/notification.js +135 -14
- package/lib/methods/notification.js.map +1 -1
- package/lib/methods/pls.d.ts +19 -0
- package/lib/methods/pls.js +332 -29
- package/lib/methods/pls.js.map +1 -1
- package/main/default/applications/pepsico_content_review.app.yml +0 -4
- package/main/default/objects/pepsico_approval_cc_log/fields/action.field.yml +11 -0
- package/main/default/objects/pepsico_approval_cc_log/fields/approval_name.field.yml +6 -0
- package/main/default/objects/pepsico_approval_cc_log/fields/cc_user.field.yml +7 -0
- package/main/default/objects/pepsico_approval_cc_log/fields/operator.field.yml +7 -0
- package/main/default/objects/pepsico_approval_cc_log/fields/pepsico_material_approval.field.yml +7 -0
- package/main/default/objects/pepsico_approval_cc_log/fields/space.field.yml +6 -0
- package/main/default/objects/pepsico_approval_cc_log/listviews/all.listview.yml +19 -0
- package/main/default/objects/pepsico_approval_cc_log/pepsico_approval_cc_log.object.yml +16 -0
- package/main/default/objects/pepsico_approval_cc_log/permissions/admin.permission.yml +13 -0
- package/main/default/objects/pepsico_approval_cc_log/permissions/user.permission.yml +13 -0
- package/main/default/objects/pepsico_km_pls/fields/brand.field.yml +10 -0
- package/main/default/objects/pepsico_km_pls/fields/content.field.yml +1 -1
- package/main/default/objects/pepsico_km_pls/fields/created.field.yml +1 -1
- package/main/default/objects/pepsico_km_pls/fields/created_by.field.yml +1 -0
- package/main/default/objects/pepsico_km_pls/fields/enable.field.yml +0 -1
- package/main/default/objects/pepsico_km_pls/fields/father_nutrient.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_km_pls/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_km_pls/fields/name.field.yml +2 -3
- package/main/default/objects/pepsico_km_pls/fields/net_content.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/nrv_percent.field.yml +7 -0
- package/main/default/objects/pepsico_km_pls/fields/nutrient.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/nutrient_value.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/package_type.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/pls_file.field.yml +1 -1
- package/main/default/objects/pepsico_km_pls/fields/product.field.yml +3 -2
- package/main/default/objects/pepsico_km_pls/fields/product_standard.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/serving_amount.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/serving_desc.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls/fields/shelf_life.field.yml +7 -0
- package/main/default/objects/pepsico_km_pls/fields/storage_condition.field.yml +9 -0
- package/main/default/objects/pepsico_km_pls/fields/tag.field.yml +3 -3
- package/main/default/objects/pepsico_km_pls/fields/taste.field.yml +1 -1
- package/main/default/objects/pepsico_km_pls/fields/unit.field.yml +7 -0
- package/main/default/objects/pepsico_km_pls/listviews/all.listview.yml +13 -3
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_activate.button.js +6 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_activate.button.yml +110 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_batch_upload_pls.button.yml +147 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_deactivate.button.js +6 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_deactivate.button.yml +110 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_extract_rules.button.js +6 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/pepsico_extract_rules.button.yml +110 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/standard_delete.button.js +9 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/standard_delete.button.yml +1 -0
- package/main/default/objects/pepsico_km_pls_file/buttons/standard_new.button.yml +3 -0
- package/main/default/objects/pepsico_km_pls_file/fields/ai_extract.field.yml +1 -2
- package/main/default/objects/pepsico_km_pls_file/fields/brand.field.yml +10 -0
- package/main/default/objects/pepsico_km_pls_file/fields/created.field.yml +2 -2
- package/main/default/objects/pepsico_km_pls_file/fields/created_by.field.yml +2 -2
- package/main/default/objects/pepsico_km_pls_file/fields/is_active.field.yml +7 -0
- package/main/default/objects/pepsico_km_pls_file/fields/issue_date.field.yml +8 -0
- package/main/default/objects/pepsico_km_pls_file/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_km_pls_file/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_km_pls_file/fields/name.field.yml +5 -5
- package/main/default/objects/pepsico_km_pls_file/fields/pepsico_material.field.yml +1 -1
- package/main/default/objects/pepsico_km_pls_file/fields/pepsico_material_approval.field.yml +1 -1
- package/main/default/objects/pepsico_km_pls_file/fields/pls_file.field.yml +4 -4
- package/main/default/objects/pepsico_km_pls_file/fields/product.field.yml +2 -1
- package/main/default/objects/pepsico_km_pls_file/fields/product_name.field.yml +10 -0
- package/main/default/objects/pepsico_km_pls_file/fields/rule_count.field.yml +16 -0
- package/main/default/objects/pepsico_km_pls_file/fields/sku.field.yml +10 -0
- package/main/default/objects/pepsico_km_pls_file/fields/version.field.yml +9 -0
- package/main/default/objects/pepsico_km_pls_file/listviews/all.listview.yml +10 -2
- package/main/default/objects/pepsico_km_pls_file/pepsico_km_pls_file.object.yml +2 -1
- package/main/default/objects/pepsico_km_pls_file/permissions/pepsico_approve.permission.yml +10 -1
- package/main/default/objects/pepsico_km_pls_file/permissions/pepsico_approve_cooperate.permission.yml +10 -1
- package/main/default/objects/pepsico_material/buttons/pepsico_nullify_material.button.yml +114 -37
- package/main/default/objects/pepsico_material/buttons/pepsico_onedrive_edit_material.button.yml +1 -1
- package/main/default/objects/pepsico_material/buttons/pepsico_update_material.button.yml +1 -0
- package/main/default/objects/pepsico_material/fields/void_at.field.yml +11 -0
- package/main/default/objects/pepsico_material/fields/void_by.field.yml +12 -0
- package/main/default/objects/pepsico_material/fields/void_material.field.yml +2 -2
- package/main/default/objects/pepsico_material/fields/void_reason.field.yml +12 -0
- package/main/default/objects/pepsico_material/pepsico_material.object.yml +3 -0
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_cc.button.yml +113 -0
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_confirm_online.button.yml +19 -2
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_material_upload.button.yml +19 -2
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_postpone_review.button.yml +18 -0
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_urgent_review.button.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/cc_users.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/pre_ca_reviewer.field.yml +3 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_legal_reviewer.field.yml +3 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_ns_reviewer.field.yml +3 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_reviewer.field.yml +3 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_sra_reviewer.field.yml +3 -1
- package/main/default/triggers/pepsico_km_pls_file_active_sync.trigger.yml +31 -0
- package/main/default/triggers/pepsico_km_pls_file_title_update.trigger.yml +35 -0
- package/main/default/triggers/pepsico_km_pls_product_name_update.trigger.yml +1 -1
- package/main/default/triggers/pepsico_material_void_reason_required.trigger.yml +24 -0
- package/package.json +1 -1
- package/main/default/imports/pepsico_km_pls.import.yml +0 -17
- package/main/default/triggers/pepsico_km_pls_file_product_name_update.trigger.yml +0 -50
package/README.md
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# @steedos-labs/content-compliance(内容审核系统)
|
|
2
|
+
|
|
3
|
+
PepsiCo 内容审核 / 物料审批系统的核心 Steedos 包:审批引擎、物料、AI 审核、OneDrive 同步、PLS 知识库扫描、抽检、通知与定时任务。
|
|
4
|
+
|
|
5
|
+
> 构建说明:修改 `src/**` 后必须 `yarn build`(`package.service.js` 加载的是编译产物 `lib/`)。
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 管理员手动接口(浏览器直接访问)
|
|
10
|
+
|
|
11
|
+
以下接口用于对 **PLS 知识库(`pepsico_km_pls_file`)** 的历史数据做一次性维护。
|
|
12
|
+
|
|
13
|
+
**执行前提:**
|
|
14
|
+
|
|
15
|
+
- 以**空间管理员(space admin)**身份登录系统(非管理员访问会返回 `{"error":"没有权限"}`)。
|
|
16
|
+
- 直接在**已登录的浏览器**中打开下面的地址即可(均为 `GET`,无需参数)。
|
|
17
|
+
- 接口**可重复执行**:已处理/无需变更的记录会自动跳过,重复访问是安全的。
|
|
18
|
+
- 将地址中的 `<域名>` 替换为实际环境域名,例如 UAT:`https://ccsuat.pepsico.com.cn`。
|
|
19
|
+
|
|
20
|
+
### 1. 回填 PLS 记录标题(从「PLS原始文件查看」提取文件名到「标题」)
|
|
21
|
+
|
|
22
|
+
把每条 `pepsico_km_pls_file` 记录的 **PLS原始文件查看**(`pls_file`)字段所对应文件的文件名,提取(去掉 `.pdf` 后缀)写入该记录的 **标题**(`name`)字段。用于补齐 `pepsico_km_pls_file_title_update` 触发器上线前、标题缺失或不一致的历史数据。
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
GET https://<域名>/api/pepsico-content/pls-file/backfill-title
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
浏览器返回示例:
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
{ "历史记录总数": 123, "更新标题数量": 100, "跳过数量": 23 }
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
- `历史记录总数`:扫描的记录总数。
|
|
35
|
+
- `更新标题数量`:本次实际写入新标题的记录数。
|
|
36
|
+
- `跳过数量`:无文件、取不到文件名,或标题已一致而跳过的记录数。
|
|
37
|
+
|
|
38
|
+
### 2. 重置「AI规则已提取」为 false
|
|
39
|
+
|
|
40
|
+
把所有 `pepsico_km_pls_file` 记录的 **AI规则已提取**(`ai_extract`)字段全部置为 `false`(已经是 `false` 的记录会跳过,最终所有记录均为 `false`)。
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
GET https://<域名>/api/pepsico-content/pls-file/reset-ai-extract
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
浏览器返回示例:
|
|
47
|
+
|
|
48
|
+
```json
|
|
49
|
+
{ "记录总数": 42, "重置数量": 42 }
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
- `记录总数`:本次需要处理(原值不为 `false`)的记录数。
|
|
53
|
+
- `重置数量`:实际置为 `false` 的记录数。
|
|
54
|
+
|
|
55
|
+
> 实现见 `src/methods/pls.ts`(`backfillPLSFileTitles`、`resetPLSFileAIExtract`),路由注册见 `src/index.ts`。
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 其它接口与定时任务
|
|
60
|
+
|
|
61
|
+
其余手动接口、定时任务、外部 AI 服务对接、PLS 规则提取等说明见仓库根目录 [README.md](../../README.md) 的「手动执行 / PLS规则提取接口」章节,以及各 `AI-*.md` 设计文档(入口 [AI-DOCUMENTATION-INDEX.md](../../AI-DOCUMENTATION-INDEX.md))。
|