@steedos-labs/content-compliance-bev 0.0.3 → 0.0.5
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/lib/actions/collection.d.ts +2 -0
- package/lib/actions/collection.js +26 -0
- package/lib/actions/collection.js.map +1 -0
- package/lib/actions/spotCheckMaterial.d.ts +20 -0
- package/lib/actions/spotCheckMaterial.js +543 -90
- package/lib/actions/spotCheckMaterial.js.map +1 -1
- package/lib/index.js +112 -33
- package/lib/index.js.map +1 -1
- package/lib/methods/approval_engine.js +182 -149
- package/lib/methods/approval_engine.js.map +1 -1
- package/lib/methods/content_hub.js +23 -38
- package/lib/methods/content_hub.js.map +1 -1
- package/lib/methods/material.js +6 -4
- package/lib/methods/material.js.map +1 -1
- package/lib/methods/task.d.ts +1 -1
- package/lib/methods/task.js +12 -20
- package/lib/methods/task.js.map +1 -1
- package/main/default/objects/pepsico_material/buttons/pepsico_material_approve.button.yml +10 -0
- package/main/default/objects/pepsico_material/buttons/pepsico_material_reject.button.yml +10 -0
- package/main/default/objects/pepsico_material/buttons/pepsico_material_spot_check.button.yml +1 -1
- package/main/default/objects/pepsico_material/buttons/pepsico_upload_supplement.button.yml +1 -0
- package/main/default/objects/pepsico_material/fields/approved_time.field.yml +5 -0
- package/main/default/objects/pepsico_material/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_material/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_material/fields/spot_check_pool_year_month.field.yml +9 -0
- package/main/default/objects/pepsico_material/fields/spot_check_type.field.yml +1 -1
- package/main/default/objects/pepsico_material/listviews/kol_midtier.listview.yml +3 -3
- package/main/default/objects/pepsico_material/listviews/spot_check.listview.yml +9 -5
- package/main/default/objects/pepsico_material/pepsico_material.object.yml +1 -1
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_submit.button.yml +4 -0
- package/main/default/objects/pepsico_material_approval/fields/approved_time.field.yml +5 -0
- package/main/default/objects/pepsico_material_approval/fields/internal_collaborator.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/material_owner.field.yml +2 -2
- package/main/default/objects/pepsico_material_approval/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_material_approval/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_material_approval/listviews/all.listview.yml +29 -15
- package/main/default/objects/pepsico_material_approval/listviews/collaboration.listview.yml +13 -9
- package/main/default/objects/pepsico_material_approval/listviews/handle.listview.yml +10 -3
- package/main/default/objects/pepsico_material_approval_data/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_material_approval_data/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_material_data/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_material_data/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_material_spot_check/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_material_spot_check/fields/modified_by.field.yml +1 -0
- package/main/default/objects/pepsico_spot_check_pool/buttons/send_mail.button.yml +39 -0
- package/main/default/objects/pepsico_spot_check_pool/fields/logs.field.yml +8 -0
- package/main/default/objects/pepsico_spot_check_pool/fields/mail_send.field.yml +8 -0
- package/main/default/objects/pepsico_spot_check_pool/fields/mail_send_date.field.yml +9 -0
- package/main/default/objects/pepsico_spot_check_pool/fields/micro_pepsico_material.field.yml +11 -0
- package/main/default/objects/pepsico_spot_check_pool/fields/mid_tier_pepsico_material.field.yml +11 -0
- package/main/default/objects/pepsico_spot_check_pool/fields/year_month.field.yml +8 -0
- package/main/default/objects/pepsico_spot_check_pool/listviews/all.listview.yml +18 -0
- package/main/default/objects/pepsico_spot_check_pool/pepsico_spot_check_pool.object.yml +27 -0
- package/main/default/objects/pepsico_spot_check_pool/permissions/admin.permission.yml +15 -0
- package/main/default/objects/pepsico_spot_check_pool/permissions/user.permission.yml +14 -0
- package/main/default/objects/pepsico_spot_check_report/fields/modified_by.field.yml +1 -1
- package/main/default/objects/pepsico_tag_increase/fields/modified.field.yml +1 -0
- package/main/default/objects/pepsico_tag_increase/fields/modified_by.field.yml +1 -0
- package/main/default/objects/permission_set/listviews/all.listview.yml +16 -21
- package/main/default/objects/permission_set/permission_set.object.yml +3 -1
- package/main/default/pages/pepsico_content_review_detail.page.amis.json +16 -4
- package/main/default/pages/pepsico_material_detail.page.amis.json +18 -0
- package/main/default/pages/pepsico_material_detail.page.yml +3 -0
- package/main/default/pages/pepsico_midtier_spot_check.page.amis.json +45 -17
- package/main/default/pages/pepsico_spot_check.page.amis.json +1 -2
- package/main/default/pages/pepsico_spot_check_dco.page.amis.json +1 -2
- package/main/default/permissionsets/pepsico_spot_check_users.permissionset.yml +9 -0
- package/main/default/tabs/pepsico_midtier_spot_check.tab.yml +1 -1
- package/main/default/tabs/pepsico_spot_check.tab.yml +1 -4
- package/main/default/triggers/pepsico_material_approval_changName.trigger.yml +9 -1
- package/main/default/triggers/pepsico_material_approval_change.trigger.yml +2 -2
- package/package.json +1 -1
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"className": "contents",
|
|
55
55
|
"items": {
|
|
56
56
|
"type": "service",
|
|
57
|
-
"id": "u:
|
|
57
|
+
"id": "u:pepsico_approval_task",
|
|
58
58
|
"api": {
|
|
59
59
|
"url": "/api/v6/data/pepsico_approval_task?skip=0&top=1000&fields=_id",
|
|
60
60
|
"requestAdaptor": "api.url = api.url + `&filters=${JSON.stringify([['pepsico_material_approval', '=', context.recordId],['approval_field', '=', 'approval_status'],['owner', '=', context.handler_guding[context.index]]])}`; return api;",
|
|
@@ -62,7 +62,10 @@
|
|
|
62
62
|
},
|
|
63
63
|
"body": {
|
|
64
64
|
"type": "service",
|
|
65
|
-
"id": "u:
|
|
65
|
+
"id": "u:pepsico_approval_task_material",
|
|
66
|
+
"data": {
|
|
67
|
+
"approval_status": "${approval_status}"
|
|
68
|
+
},
|
|
66
69
|
"api": {
|
|
67
70
|
"url": "/api/v6/data/pepsico_material?skip=0&top=1000&fields=_id,name,space",
|
|
68
71
|
"requestAdaptor": "api.url = api.url + `&filters=${JSON.stringify([['pepsico_material_approval', '=', context.recordId],['void_material', '!=', true]])}`; return api;",
|
|
@@ -97,7 +100,7 @@
|
|
|
97
100
|
"id": "u:9c1860a9b300",
|
|
98
101
|
"crudMode": "table",
|
|
99
102
|
"crudDataFilter": "crud.bulkActions = null;",
|
|
100
|
-
"adaptor": "
|
|
103
|
+
"adaptor": "window.completeMaterialDataSimple(payload, context.materialList)",
|
|
101
104
|
"requestAdaptor": "api.data.query = api.data.query.replace('filters: []', 'filters: ' + JSON.stringify([['pepsico_material_approval', '=', context.pepsico_material_approval],['approval_field', '=', 'approval_status'],['owner', '=', context.owner]])).replace('filters:[]', 'filters:'+JSON.stringify([['pepsico_material_approval', '=', context.pepsico_material_approval],['approval_field', '=', 'approval_status'],['owner', '=', context.owner]]))"
|
|
102
105
|
}
|
|
103
106
|
],
|
|
@@ -128,7 +131,16 @@
|
|
|
128
131
|
}
|
|
129
132
|
}
|
|
130
133
|
},
|
|
131
|
-
"visibleOn": "${approval_type === 'personnel_review' && review_status != 'draft'}"
|
|
134
|
+
"visibleOn": "${false && approval_type === 'personnel_review' && review_status != 'draft'}"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"type": "tpl",
|
|
138
|
+
"tpl": "<li class=\"col-span-1 flex rounded-md shadow-sm\">\n <div class=\"flex w-16 shrink-0 items-center justify-center rounded-l-md bg-private text-base font-medium text-white\">固定</div>\n <div class=\"flex flex-1 items-center justify-between truncate rounded-r-md border-b border-r border-t border-gray-200 bg-white\">\n <div class=\"flex-1 truncate px-4 py-2 text-sm\">\n <a href=\"#\" class=\"font-medium text-gray-900 hover:text-gray-600\">${(_display.handler_guding || _display.reviewer)|pick:label}</a>\n <p class=\"text-gray-500 m-0 h-5\"><span class='mr-4'>${CONCATENATE(IF(approval_materials_quantity, approval_materials_quantity, 0), ' / ', materials_quantity)}</span>${IFS(approval_status === true, '<i class=\"fa-solid fa-check\"></i>', approval_status === false, '<i class=\"fa-solid fa-xmark\"></i>', !approval_status, '')}</p>\n </div>\n </div>\n</li>",
|
|
139
|
+
"inline": true,
|
|
140
|
+
"wrapperComponent": "",
|
|
141
|
+
"id": "u:ec5fe1e3ac08",
|
|
142
|
+
"visibleOn": "${approval_type === 'personnel_review' && review_status != 'draft'}",
|
|
143
|
+
"editorState": "default"
|
|
132
144
|
},
|
|
133
145
|
{
|
|
134
146
|
"type": "tpl",
|
|
@@ -518,6 +518,24 @@
|
|
|
518
518
|
"headerClassName": "pb-2 bg-transparent border-none",
|
|
519
519
|
"bodyClassName": "px-0 pb-0",
|
|
520
520
|
"body": [
|
|
521
|
+
{
|
|
522
|
+
"type": "alert",
|
|
523
|
+
"editorState": "default",
|
|
524
|
+
"body": [
|
|
525
|
+
{
|
|
526
|
+
"type": "tpl",
|
|
527
|
+
"tpl": "提示:素材未通过商标检索",
|
|
528
|
+
"wrapperComponent": "",
|
|
529
|
+
"inline": false,
|
|
530
|
+
"id": "u:c1ef42dcf0a4",
|
|
531
|
+
"editorState": "default"
|
|
532
|
+
}
|
|
533
|
+
],
|
|
534
|
+
"level": "danger",
|
|
535
|
+
"className": "mb-1",
|
|
536
|
+
"id": "u:356998cc6f17",
|
|
537
|
+
"visibleOn": "${classification == '22335110412927067-22335110412927093' && is_trademark_checked == 'no'}"
|
|
538
|
+
},
|
|
521
539
|
{
|
|
522
540
|
"type": "rooms-provider",
|
|
523
541
|
"baseUrl": "${context.rootUrl}",
|
|
@@ -1,7 +1,49 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "page",
|
|
3
3
|
"title": "Welcome to Steedos",
|
|
4
|
+
"id": "page:spot_check",
|
|
5
|
+
"bodyClassName": "h-full p-0 sm:bg-gray-50",
|
|
6
|
+
"css": {
|
|
7
|
+
".listHeight": {
|
|
8
|
+
"height": "calc(100% - 80px)"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
4
11
|
"body": [
|
|
12
|
+
{
|
|
13
|
+
"type": "container",
|
|
14
|
+
"body": [
|
|
15
|
+
{
|
|
16
|
+
"type": "tpl",
|
|
17
|
+
"tpl": "<li class=\"col-span-1 flex rounded-md shadow-sm\">\n <div class=\"flex w-16 shrink-0 items-center justify-center rounded-l-md bg-private text-base font-medium text-white\">总数</div>\n <div class=\"flex flex-1 items-center justify-between truncate rounded-r-md border-b border-r border-t border-gray-200 bg-white\">\n <div class=\"flex-1 truncate px-4 py-2 text-sm\">\n <p class=\"text-gray-500 m-0 h-5\"><span class='mr-4'>${count}</span></p>\n </div>\n </div>\n</li>",
|
|
18
|
+
"inline": true,
|
|
19
|
+
"wrapperComponent": "",
|
|
20
|
+
"id": "u:65eac8efca60",
|
|
21
|
+
"editorState": "default"
|
|
22
|
+
},{
|
|
23
|
+
"type": "tpl",
|
|
24
|
+
"tpl": "<li class=\"col-span-1 flex rounded-md shadow-sm\">\n <div class=\"flex w-16 shrink-0 items-center justify-center rounded-l-md bg-private text-base font-medium text-white\">已抽查数</div>\n <div class=\"flex flex-1 items-center justify-between truncate rounded-r-md border-b border-r border-t border-gray-200 bg-white\">\n <div class=\"flex-1 truncate px-4 py-2 text-sm\">\n <p class=\"text-gray-500 m-0 h-5\"><span class='mr-4'>${IF(spot_count, spot_count, 0)}</span></p>\n </div>\n </div>\n</li>",
|
|
25
|
+
"inline": true,
|
|
26
|
+
"wrapperComponent": "",
|
|
27
|
+
"id": "u:1b743b2be88d",
|
|
28
|
+
"editorState": "default"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"type": "tpl",
|
|
32
|
+
"tpl": "<li class=\"col-span-1 flex rounded-md shadow-sm\">\n <div class=\"flex w-16 shrink-0 items-center justify-center rounded-l-md bg-private text-base font-medium text-white\">抽查率</div>\n <div class=\"flex flex-1 items-center justify-between truncate rounded-r-md border-b border-r border-t border-gray-200 bg-white\">\n <div class=\"flex-1 truncate px-4 py-2 text-sm\">\n <p class=\"text-gray-500 m-0 h-5\"><span class='mr-4'>${IF(count > 0, CONCATENATE(ROUND(IF(spot_count, spot_count, 0)/count * 100), '%'), '')}</span></p>\n </div>\n </div>\n</li>",
|
|
33
|
+
"inline": true,
|
|
34
|
+
"wrapperComponent": "",
|
|
35
|
+
"id": "u:1b743b2be88d",
|
|
36
|
+
"editorState": "default"
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"size": "none",
|
|
40
|
+
"wrapperBody": false,
|
|
41
|
+
"id": "u:364038776887",
|
|
42
|
+
"isFixedHeight": false,
|
|
43
|
+
"isFixedWidth": false,
|
|
44
|
+
"visibleOn": "${1==1}",
|
|
45
|
+
"className": "grid grid-cols-1 gap-5 sm:grid-cols-2 sm:gap-6 lg:grid-cols-5 sm:m-4 sm:sticky z-20"
|
|
46
|
+
},
|
|
5
47
|
{
|
|
6
48
|
"type": "steedos-object-listview",
|
|
7
49
|
"className": "listHeight",
|
|
@@ -12,11 +54,10 @@
|
|
|
12
54
|
"id": "u:ee75c526fe3d",
|
|
13
55
|
"crudMode": "table",
|
|
14
56
|
"ctx": {
|
|
15
|
-
"auto_open_filter": true
|
|
16
|
-
"formFactor": "LARGE"
|
|
57
|
+
"auto_open_filter": true
|
|
17
58
|
},
|
|
18
|
-
"requestAdaptor": "const _sfilters = JSON.parse(JSON.stringify(filters)); if(_sfilters.length > 0){_sfilters.push('and')};_sfilters.push(['
|
|
19
|
-
"adaptor": "var scope2 = context._scoped; scope2.doAction({actionType: \"setValue\", componentId: \"page:
|
|
59
|
+
"requestAdaptor": "const _sfilters = JSON.parse(JSON.stringify(filters)); if(_sfilters.length > 0){_sfilters.push('and')};_sfilters.push(['spot_checked_done', '=', true]); api.data.query = api.data.query.slice(0, -1) + ',spot_count:pepsico_material__count(filters: '+JSON.stringify(_sfilters)+')}'; ",
|
|
60
|
+
"adaptor": "var scope2 = context._scoped; scope2.doAction({actionType: \"setValue\", componentId: \"page:spot_check\", args: {value: {count: payload.data.count, spot_count: payload.data.spot_count}}})"
|
|
20
61
|
}
|
|
21
62
|
],
|
|
22
63
|
"regions": [
|
|
@@ -24,21 +65,8 @@
|
|
|
24
65
|
],
|
|
25
66
|
"data": {
|
|
26
67
|
"initialValues": {},
|
|
27
|
-
"appId": "builder",
|
|
28
68
|
"title": "",
|
|
29
69
|
"listName": "kol_midtier",
|
|
30
70
|
"showFieldsFilter": true
|
|
31
|
-
},
|
|
32
|
-
"id": "page:midtier_spot_check",
|
|
33
|
-
"bodyClassName": "h-full p-0 sm:bg-gray-50",
|
|
34
|
-
"css": {
|
|
35
|
-
".listHeight": {
|
|
36
|
-
"height": "calc(100% - 80px)"
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
"asideResizor": false,
|
|
40
|
-
"editorState": "default",
|
|
41
|
-
"pullRefresh": {
|
|
42
|
-
"disabled": true
|
|
43
71
|
}
|
|
44
72
|
}
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"ctx": {
|
|
57
57
|
"auto_open_filter": true
|
|
58
58
|
},
|
|
59
|
-
"requestAdaptor": "const _sfilters = JSON.parse(JSON.stringify(filters)); if(_sfilters.length > 0){_sfilters.push('and')};_sfilters.push(['
|
|
59
|
+
"requestAdaptor": "const _sfilters = JSON.parse(JSON.stringify(filters)); if(_sfilters.length > 0){_sfilters.push('and')};_sfilters.push(['spot_checked_done', '=', true]); api.data.query = api.data.query.slice(0, -1) + ',spot_count:pepsico_material__count(filters: '+JSON.stringify(_sfilters)+')}'; ",
|
|
60
60
|
"adaptor": "var scope2 = context._scoped; scope2.doAction({actionType: \"setValue\", componentId: \"page:spot_check\", args: {value: {count: payload.data.count, spot_count: payload.data.spot_count}}})"
|
|
61
61
|
}
|
|
62
62
|
],
|
|
@@ -65,7 +65,6 @@
|
|
|
65
65
|
],
|
|
66
66
|
"data": {
|
|
67
67
|
"initialValues": {},
|
|
68
|
-
"appId": "builder",
|
|
69
68
|
"title": "",
|
|
70
69
|
"listName": "spot_check",
|
|
71
70
|
"showFieldsFilter": true
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"auto_open_filter": true,
|
|
49
49
|
"formFactor": "LARGE"
|
|
50
50
|
},
|
|
51
|
-
"requestAdaptor": "const _sfilters = JSON.parse(JSON.stringify(filters)); if(_sfilters.length > 0){_sfilters.push('and')};_sfilters.push(['
|
|
51
|
+
"requestAdaptor": "const _sfilters = JSON.parse(JSON.stringify(filters)); if(_sfilters.length > 0){_sfilters.push('and')};_sfilters.push(['spot_checked_done', '=', true]); api.data.query = api.data.query.slice(0, -1) + ',spot_count:pepsico_material__count(filters: '+JSON.stringify(_sfilters)+')}'; ",
|
|
52
52
|
"adaptor": "var scope2 = context._scoped; scope2.doAction({actionType: \"setValue\", componentId: \"page:dco_spot_check\", args: {value: {count: payload.data.count, spot_count: payload.data.spot_count}}})"
|
|
53
53
|
}
|
|
54
54
|
],
|
|
@@ -57,7 +57,6 @@
|
|
|
57
57
|
],
|
|
58
58
|
"data": {
|
|
59
59
|
"initialValues": {},
|
|
60
|
-
"appId": "builder",
|
|
61
60
|
"title": "",
|
|
62
61
|
"listName": "dco_spot_check",
|
|
63
62
|
"showFieldsFilter": true
|
|
@@ -10,14 +10,11 @@ page: pepsico_spot_check
|
|
|
10
10
|
permissions:
|
|
11
11
|
- locked: false
|
|
12
12
|
permission: 'on'
|
|
13
|
-
permission_set:
|
|
13
|
+
permission_set: pepsico_spot_check_users
|
|
14
14
|
- locked: false
|
|
15
15
|
permission: 'on'
|
|
16
16
|
permission_set: admin
|
|
17
17
|
- locked: false
|
|
18
18
|
permission: 'off'
|
|
19
19
|
permission_set: user
|
|
20
|
-
- locked: false
|
|
21
|
-
permission: 'on'
|
|
22
|
-
permission_set: pepsico_spot_check_view
|
|
23
20
|
type: page
|
|
@@ -24,7 +24,15 @@ handler: |-
|
|
|
24
24
|
if (hasChanges) {
|
|
25
25
|
const updateData = {};
|
|
26
26
|
syncFields.forEach(field => {
|
|
27
|
-
|
|
27
|
+
if(field === 'product'){
|
|
28
|
+
try{
|
|
29
|
+
updateData[field] = _.first(_.split(record.product, '-'));
|
|
30
|
+
}catch(e){
|
|
31
|
+
console.log(e)
|
|
32
|
+
}
|
|
33
|
+
}else{
|
|
34
|
+
updateData[field] = record[field];
|
|
35
|
+
}
|
|
28
36
|
});
|
|
29
37
|
|
|
30
38
|
const mRecords = await objects.pepsico_material.find({
|
|
@@ -10,13 +10,13 @@ handler: |-
|
|
|
10
10
|
if(ctx.params.isInsert){
|
|
11
11
|
if(doc.approval_type === 'personnel_review'){
|
|
12
12
|
if(_.isEmpty(doc.reviewer)){
|
|
13
|
-
throw new Error('固定审核人缺失,
|
|
13
|
+
throw new Error('固定审核人缺失, 请确认审批单填写信息或联系管理员进行处理');
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
if(doc.approval_type === 'departmental_review'){
|
|
18
18
|
if(_.isEmpty(doc.ca_reviewer) && _.isEmpty(doc.legal_reviewer) && _.isEmpty(doc.ns_reviewer) && _.isEmpty(doc.sra_reviewer)){
|
|
19
|
-
throw new Error('审核人缺失,
|
|
19
|
+
throw new Error('审核人缺失, 请确认审批单填写信息或联系管理员进行处理');
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
}
|