import { useAjax } from '@/Hook/useAjax' import { PromotedObjectType } from '@/services/launchAdq/enum' import { Col, Row, Input, Select, message } from 'antd' import React, { useEffect, useCallback } from 'react' import TableData from '../../components/TableData' import tableConfig from './tableConfig' import { getAdqAdcreativeList, putAdqTargetingSyncAll } from '@/services/launchAdq/adq' type Props = { accountId: string, adAccountId: string, userId: string, queryParmas: { accountId?: string,//账户ID campaignId?: string,//计划ID adgroupId?: string,//广告ID adcreativeId?: string,//创意ID pageId?: string,//落地页ID targetingId?: string,//定向ID} }, tableIdClick: (props: { activeKey: string, parma: { accountId?: string,//账户ID campaignId?: string,//计划ID adgroupId?: string,//广告ID adcreativeId?: string,//创意ID pageId?: string,//落地页ID targetingId?: string,//定向ID } }) => void } function Creative(props: Props) { let { accountId, adAccountId,userId,tableIdClick } = props // api方法 const listAjax = useAjax((params) => getAdqAdcreativeList(params), { formatResult: true }) const syncAjax = useAjax((adAccountId) => putAdqTargetingSyncAll(adAccountId)) console.log('创意=====》') useEffect(() => { getList({ pageNum: 1, pageSize: 20 }) }, [accountId,userId]) // 获取列表 const getList = useCallback((params: { pageNum: number; pageSize: number; accountId?: string; adcreativeName?: string; }) => { if (!params.adcreativeName || params.adcreativeName !== listAjax?.params[0]?.adcreativeName) { !params.adcreativeName && delete params.adcreativeName listAjax.run({ ...params,userId, accountId }) } }, [accountId,userId,listAjax]) // 同步 const sync = useCallback(() => { if(!adAccountId){ message.error('请先选择要同步的广点通账号!') return } syncAjax.run(adAccountId).then(res => { console.log(res) res && listAjax.refresh() res ? message.success('同步成功!') : message.error('同步失败!') }) }, [adAccountId, listAjax]) return