import {wareAddDialog, wareDetailDialog, wareEditeDialog} from "../../components/ware/dialog-ware.js"; import { apiGet, crudCommonOptions, mappingField, operationField, permissionStateMapping, timeField } from "../../components/constants.js"; function listColumns() { return { columns: [ { name: 'name', label: '名称', width: 200, }, { name: 'description', label: '描述', }, { visibleOn: '${!public}', ...mappingField('state', '状态', permissionStateMapping) }, timeField('createdTime', '创建时间'), operationField('操作', undefined, [ { type: 'action', label: '查看', level: 'link', ...wareDetailDialog(), }, { visibleOn: "${state === 'CHECKING'}", type: 'action', label: '撤销', level: 'link', confirmTitle: '确认撤销', confirmText: '确认撤销名称为「${name}」的确权申请吗?', actionType: 'ajax', api: apiGet('${base}/ware/retract/${id}'), }, { visibleOn: "${state === 'DRAFT' || state === 'REJECT'}", type: 'action', label: '提交', level: 'link', confirmTitle: '确认提交', confirmText: '确认提交名称为「${name}」的确权申请吗?', actionType: 'ajax', api: apiGet('${base}/ware/submit/${id}'), }, { visibleOn: "${!public}", type: 'dropdown-button', level: 'link', icon: 'fa fa-ellipsis-h', hideCaret: true, trigger: 'hover', buttons: [ { disabledOn: "${state !== 'DRAFT'}", type: 'action', label: '编辑', level: 'link', ...wareEditeDialog(), }, { disabledOn: "${state === 'CHECKING'}", type: 'action', label: "删除", confirmTitle: '确认删除', confirmText: '确认删除名称为「${name}」的确权申请吗?删除后对应的数据资源处于未确权状态。', actionType: 'ajax', api: apiGet('${base}/ware/remove/${id}'), }, ] }, ]), ] } } export function tabMarket() { return { title: '数据市场', icon: 'fa fa-store', reload: true, body: [ { type: 'tabs', tabs: [ { title: '公开数据', body: { type: 'crud', api: apiGet('${base}/ware/list_public'), ...crudCommonOptions(), headerToolbar: [ 'reload', ], data: { public: true }, ...listColumns(), } }, { title: '我的数据', body: { type: 'crud', api: apiGet('${base}/ware/list'), ...crudCommonOptions(), headerToolbar: [ 'reload', { type: 'action', label: '', icon: 'fa fa-plus', ...wareAddDialog() }, ], ...listColumns(), } }, ] } ] } }