1
0
Files
gringotts/gringotts-frontend/components/ware/dialog-ware.js
lanyuanxiaoyao 420651c073 feat(web): 实现文件上传和下载功能
- 在 DataFileController 中添加文件上传和下载接口- 更新 WareController 中的图标处理逻辑
- 在 DataFile 实体中添加文件类型字段
- 更新 DataFileService 中的文件信息更新方法
- 在前端组件中添加文件上传和下载相关配置
2024-12-17 10:31:34 +08:00

156 lines
4.3 KiB
JavaScript

import './dialog-ware.css'
import {apiGet, apiPost, formInputClearable, horizontalFormOptions, information,} from "../constants.js";
import {resourceList} from '../../pages/index/tab-data.js'
import {resourceDetailDialog} from '../resource/dialog-resource.js'
function detailForm() {
return {
debug: information.debug,
type: 'form',
...horizontalFormOptions(),
horizontal: {
left: 2,
},
body: [
{
type: 'hidden',
name: 'id',
},
{
type: 'input-image',
name: 'icon',
label: '图标',
required: true,
receiver: apiPost("${base}/upload"),
autoFill: {
iconId: '${id}',
}
},
{
type: 'picker',
name: 'resourceId',
label: '数据资源',
required: true,
multiple: false,
size: 'md',
valueField: 'id',
labelField: 'name',
source: apiGet('${base}/data_resource/list_no_ware'),
pickerSchema: {
...resourceList(),
},
staticSchema: {
type: 'tpl',
tpl: "<span class='text-primary' style='cursor: pointer'>${resourceName}</span>",
onEvent: {
click: {
actions: [
{
actionType: 'dialog',
...resourceDetailDialog('resourceId'),
}
]
}
}
}
},
{
type: 'input-text',
name: 'name',
label: '商品名称',
maxLength: 10,
showCounter: true,
required: true,
...formInputClearable,
},
{
type: 'textarea',
name: 'description',
label: '商品简介',
required: true,
...formInputClearable,
showCounter: true,
trimContents: true,
minRows: 2,
maxRows: 2,
},
{
type: 'input-rich-text',
name: 'content',
label: '商品详情',
required: true,
receiver: '',
options: {
min_height: 300,
}
}
]
}
}
export function wareAddDialog() {
return {
actionType: 'dialog',
dialog: {
title: '上架数据产品',
size: 'md',
actions: [
{
type: 'reset',
label: '重置',
},
{
type: 'submit',
label: '确定',
level: 'primary',
}
],
body: {
...detailForm(),
api: apiPost(`\${base}/ware/save`),
}
}
}
}
export function wareDetailDialog() {
return {
actionType: 'dialog',
dialog: {
title: '确权申请详情',
size: 'md',
body: {
...detailForm(),
initApi: apiGet(`\${base}/ware/detail/\${id}`),
static: true,
}
}
}
}
export function wareEditeDialog() {
return {
actionType: 'dialog',
dialog: {
title: '确权申请详情',
size: 'md',
actions: [
{
type: 'reset',
label: '重置',
},
{
type: 'submit',
label: '确定',
level: 'primary',
}
],
body: {
...detailForm(),
api: apiPost(`\${base}/ware/save`),
initApi: apiGet(`\${base}/ware/detail/\${${field}}`),
},
}
}
}