1
0
Files
gringotts/gringotts-frontend/components/permission/dialog-permission.js

109 lines
2.8 KiB
JavaScript

import './dialog-permission.css'
import {
apiGet,
apiPost,
formInputClearable,
formInputFileStatic,
horizontalFormOptions,
inputFileFormItemCommonOptions,
size100MB
} from "../constants.js";
import {resourceList} from "../../pages/index/tab-data.js";
function detailForm() {
return {
id: 'permission_form',
type: 'form',
...horizontalFormOptions(),
horizontal: {
left: 2,
},
body: [
{
type: 'hidden',
name: 'id',
},
{
type: 'picker',
name: 'targetId',
label: '数据资源',
required: true,
multiple: false,
size: 'md',
valueField: 'id',
labelField: 'name',
source: apiGet('${base}/data_resource/list'),
pickerSchema: {
...resourceList(),
}
},
{
type: 'textarea',
label: '确权说明',
name: 'description',
...formInputClearable,
},
formInputFileStatic('evidenceIds', '相关材料'),
{
visibleOn: '${!detail}',
type: 'input-file',
label: '相关材料',
name: 'evidenceIds',
multiple: true,
required: true,
extractValue: true,
...inputFileFormItemCommonOptions(undefined, size100MB),
}
]
}
}
export function permissionAddDialog() {
return {
actionType: 'dialog',
dialog: {
title: '新增确权申请',
size: 'md',
actions: [
{
type: 'reset',
label: '重置',
},
{
type: 'submit',
label: '确定',
level: 'primary',
}
],
body: {
debug: true,
...detailForm(),
api: apiPost('${base}/confirmation/save'),
data: {
add: true,
},
}
}
}
}
export function permissionDetailDialog() {
return {
actionType: 'dialog',
dialog: {
title: '新增确权申请',
size: 'md',
actions: [],
body: {
debug: true,
...detailForm(),
initApi: apiGet('${base}/confirmation/detail/${id}'),
static: true,
data: {
detail: true,
},
}
}
}
}