import { FnAjax, useAjax } from '@/Hook/useAjax' import { Data, ListData, SysAdgroupsDTO } from '@/services/launchAdq' import { PromotedObjectType } from '@/services/launchAdq/enum' import { createSysAdgroups, getSysAdgroupsList } from '@/services/launchAdq/localAd' import { Col, Row, Input, Select, Button } from 'antd' import React, { useEffect, useState, useCallback } from 'react' import TableData from '../../../components/TableData' import AdModal from './modal' import tableConfig from './tableConfig' export interface ModalConfig { visible: boolean; title?: string; } function Ad() { // 变量 const [modalConfig, setModalConfig] = useState({ visible: false, title: '新建' }) const [oldsearchData, setOldsearchData] = useState(null) // api方法 const sysAdgroupsList: FnAjax | any> = useAjax((params) => getSysAdgroupsList(params),{formatResult:true}) const createSysAdgroup = useAjax((params) => createSysAdgroups(params)) // 初始获取列表 useEffect(() => { getList({ pageSize: 20, pageNum: 1 }) }, []) // 获取列表 const getList = useCallback((arg: { pageSize: number, pageNum: number, adgroupName?: string, promotedObjectType?: string }) => { Object.keys(arg).forEach(key => { !arg[key] && delete arg[key] }) if (JSON.stringify(arg) !== JSON.stringify(oldsearchData)) { setOldsearchData(arg) sysAdgroupsList.run(arg) } }, [oldsearchData]) // 设置变量 const handleModalConfig = useCallback((arg: ModalConfig) => { setModalConfig({ ...modalConfig, ...arg }) }, [modalConfig]) // submit const submit = useCallback((arg: any) => { console.log(arg) createSysAdgroup.run(arg).then(res => { if (res) { sysAdgroupsList.refresh() handleModalConfig({ visible: false }) } }) }, [sysAdgroupsList]) console.log('sysAdgroupsList',sysAdgroupsList) return
{ let value = e.target.value getList({ pageNum: 1, pageSize: 20, adgroupName: value }) }} onKeyDownCapture={(e: any) => { let key = e.key if (key === 'Enter') { let value = e.target.value getList({ pageNum: 1, pageSize: 20, adgroupName: value }) } }} onChange={(e) => { let value = e.target.value if (!value) { getList({ pageNum: 1, pageSize: 20, adgroupName: value }) } }} /> } onChange={(props: any) => { let { sortData, pagination } = props let { current, pageSize } = pagination getList({pageNum:current,pageSize}) }} // config={guanggao} // configName={'广告模板列表'} /> {modalConfig.visible && }
} export default Ad