import { addNoticeApi, deleteNoticeApi, editNoticeApi, getNoticesListApi, getNoticesDetailApi } from '@/api/notice' import { exportProjectListApi } from '@/api/project' import { IFormItem } from '@/types/form' import { getNoticeListItemData } from '@/types/response' export const apis = { add: addNoticeApi, edit: editNoticeApi, delete: deleteNoticeApi, list: getNoticesListApi, export: exportProjectListApi, detail: getNoticesDetailApi } // 新增、修改的表单 export const addFormItems: IFormItem[] = [ { label: '公告内容', type: 'textarea', field: 'content', placeholder: '', rule: [{ required: true, message: '请输入公告内容', trigger: 'blur' }] }, { label: '发布时间', type: 'datetime', field: 'issueTime', placeholder: '', rule: [{ required: true, message: '请输入公告内容', trigger: 'blur' }], format: 'YYYY-MM-DD HH:mm:ss', valueFormat: 'YYYY-MM-DD HH:mm:ss', disabledDate: (val: Date) => { return val.getTime() < Date.now() } }, { label: '是否启用', type: 'select', field: 'isEnabled', placeholder: '请选择', rule: [{ required: true, message: '请输入公告内容', trigger: 'blur' }], options: [ { label: '是', value: true }, { label: '否', value: false } ] } ] // 新增、修改的表单绑定值 export const addForms = { content: undefined, issueTime: undefined, isEnabled: true } // 搜索的表单绑定值 export const SEARCH_DEFAULT_OPTION = { content: undefined, isEnabled: undefined, startIssueTime: undefined, endIssueTime: undefined } // 搜索的表单内容 export const searchFormItems: IFormItem[] = [ { label: '公告内容', type: 'input', field: 'content', placeholder: '', rule: [] }, { label: '是否启用', type: 'select', field: 'isEnabled', placeholder: '请选择', options: [ { label: '是', value: true }, { label: '否', value: false } ] }, { label: '发布时间范围', type: 'dateRange', field: 'startIssueTime', placeholder: '', rule: [] } ] // table columns export const tableColumns = [ { prop: 'content', label: '公告内容' }, { prop: 'issueTime', label: '发布时间', width: '180' }, { label: '是否启用', formatter(row, column, cellValue, index) { return row.isEnabled ? '是' : '否' } } ] export interface types { item: getNoticeListItemData | Record }