import * as api from './api' import {dict, UserPageQuery, AddReq, DelReq, EditReq, compute, CreateCrudOptionsProps, CreateCrudOptionsRet} from '@fast-crud/fast-crud' import {inject, nextTick, ref} from 'vue' import {BaseColumn} from '/@/views/adManage/utils/commonTabColumn.js' export const createCrudOptions = function ({crudExpose, context}: CreateCrudOptionsProps): CreateCrudOptionsRet { const pageRequest = async (query: UserPageQuery) => { return await api.GetList(query) } const editRequest = async ({form, row}: EditReq) => { form.id = row.id return await api.UpdateObj(form) } const delRequest = async ({row}: DelReq) => { return await api.DelObj(row.id) } const addRequest = async ({form}: AddReq) => { return await api.AddObj(form) } //权限判定 const hasPermissions = inject('$hasPermissions') return { crudOptions: { table: { height: 600 }, container: { fixedHeight: false }, actionbar: { show: true, buttons: { add: { show: false } } }, search: { show: false }, toolbar: { buttons: { search: { show: true }, compact: { show: false } } }, request: { pageRequest, addRequest, editRequest, delRequest, }, rowHandle: { fixed: 'right', width: 80, buttons: { view: { show: false, }, edit: { iconRight: 'Edit', type: 'text', text: null // show: hasPermissions('dictionary:Update'), }, remove: { iconRight: 'Delete', type: 'text', text: null // show: hasPermissions('dictionary:Delete'), }, }, }, columns: { keywordText: { title: '关键词' }, matchType: { title: '匹配类型', type: 'dict-select', search: { show: true }, dict: dict({ data: [ {value: 'BROAD', label: '广泛匹配'}, {value: 'PHRASE', label: '词组匹配'}, {value: 'EXACT', label: '精准匹配'}, ] }) }, state: { title: '状态' }, bid: { title: '出价' }, 'campaign': { title: '广告活动' }, 'adGroup': { title: '广告组' } } } } }