import { api } from '../api' import { request } from 'umi' export interface ListType { // startTime?: string, // endTime?: string, timeUnit?: 'minute' | 'hour' | 'day',//时间维度 adgroup?: any,//广告ID campaign?: any,//计划ID accountId?: any,//广告账户 sysUserId?: any,//投手 pageNum?: number,//页数 pageSize?: number//条数 sortField?: string, // "排序字段" sort?: 'ASC' | 'DESC' // 排序方式 } /** 获取起量广告列表总表 */ export async function getPlanListApi(params: ListType) { Object.keys(params).forEach(key => { if (!params[key]) { delete params[key] } }) return request(`${api}/tencentMonitor/adControl/up/ad/list`, { method: 'POST', data: params }) } /** 获取起量广告列表明细 */ export async function getDetailListApi(params: ListType) { Object.keys(params).forEach(key => { if (!params[key]) { delete params[key] } }) return request(`${api}/tencentMonitor/adControl/up/ad/detail/list`, { method: 'POST', data: params }) } /** 获取起量广告列表5min */ export async function getMinuteListApi(params: ListType) { Object.keys(params).forEach(key => { if (!params[key]) { delete params[key] } }) return request(`${api}/tencentMonitor/adControl/up/ad/detail/list/minute`, { method: 'POST', data: params }) } /** 获取今日计划总消耗图谱 折线图 */ export async function getTotalCostApi(params: ListType) { Object.keys(params).forEach(key => { if (!params[key]) { delete params[key] } }) return request(`${api}/tencentMonitor/adControl/total/cost/list`, { method: 'GET', params }) } /** 获取计划消耗图谱 z柱状图 */ export async function getPlanCostApi(params: ListType) { Object.keys(params).forEach(key => { if (!params[key]) { delete params[key] } }) return request(`${api}/tencentMonitor/adControl/ad/cost/list`, { method: 'GET', params }) } /** 获取消耗速度详情(弹窗) */ export async function getCostSpeedApi(params: ListType) { Object.keys(params).forEach(key => { if (!params[key]) { delete params[key] } }) return request(`${api}/tencentMonitor/adControl/cost/speed/info`, { method: 'POST', data: params }) } /** 获取组员 */ export async function getUserGroupApi() { return request(`${api}/erp/userGroup/memberUser/`, { method: 'GET' }) } export interface allPlanProps { pageNum?: number, pageSize?: number, adSeat?: any[],// 广告位置 1 : 朋友圈信息流, 2 : 公众号文章底部, 3 : 公众号文中广告, 4 : 公众号文章视频贴片, 5 : 小程序banner广告, 6 : 激励式广告 createStartTime?: string, // 创建开始时间 createEndTime?: string, // 创建结束时间 adgroup?: string, // 广告ID & 广告名称 creativeIdOrName?: string, // 创意ID & 创意名称 creativeStatus?: 1 | 2 | 3, // 创意状态, 0或者null : 全部, 1 : 审核通过, 2 : 审核中, 3 : 未通过 dataStartTime?: string, // 数据结束日期(格式 : yyyy-MM-dd) dataEndTime?: string, // 数据结束日期(格式 : yyyy-MM-dd) followStatus?: 1 | 2, // 关注状态, 0或者null : 全部, 1 : 已关注, 2 : 未关注 mainBookList?: any[], // 主投书籍列表 accountId?: any, // 投放计划数据源, 账号 sysUserId?: any, // 投手id列表 campaign?: string, // 计划id或者计划名称 adStatus?: number, // 计划状态, 0或者null : 全部, 1 : 投放中, …依次递增 sortField?: string, // "排序字段" sort?: 'ASC' | 'DESC', // 排序方式 } /** 计划列表 */ export async function getAllPlanListApi(data: allPlanProps) { Object.keys(data).forEach(key => { if (!data[key]) { delete data[key] } }) return request(`${api}/tencentMonitor/adControl/all/ad/list`, { method: 'POST', data }) } /** 获取所有书籍 */ export async function getBookListAllApi() { return request(`${api}/erp/book/all`, { method: 'GET' }) } /** 下载 */ /** 下载起量广告总表 */ export async function downLoadUpAdApi(params: ListType) { return request(`${api}/tencentMonitor/adExcel/up/ad/list`, { method: 'POST', data: params, responseType: 'blob' }) } /** 下载单个广告明细表(小时) */ export async function downLoadDetailApi(params: ListType) { return request(`${api}/tencentMonitor/adExcel/up/ad/detail/list`, { method: 'POST', data: params, responseType: 'blob' }) } /** 下载单个广告明细表(5分钟) */ export async function downLoadDetailMinuteApi(params: ListType) { return request(`${api}/tencentMonitor/adExcel/up/ad/detail/list/minute`, { method: 'POST', data: params, responseType: 'blob' }) } /** 下载消耗速度详情(弹窗) */ export async function downLoadSpeedApi(params: ListType) { return request(`${api}/tencentMonitor/adExcel/cost/speed/info`, { method: 'POST', data: params, responseType: 'blob' }) } /** 下载计划列表 */ export async function downLoadAllAdListApi(data: allPlanProps) { Object.keys(data).forEach(key => { if (!data[key]) { delete data[key] } }) return request(`${api}/tencentMonitor/adExcel/all/ad/list`, { method: 'POST', data, responseType: 'blob' }) } // 监控数据源 // 查询分组 export async function getAdGroupListApi() { return request(`${api}/tencentMonitor/adGroup/list`, { method: 'GET' }) } // 查询分组 export async function addEditGroupApi(data: { groupName: string, id?: number, remark?: string }) { return request(`${api}/tencentMonitor/adGroup/add/or/update`, { method: 'POST', data }) } // 删除分组 export async function deleteAdGroupApi(params: { id: number }) { return request(`${api}/tencentMonitor/adGroup/delete`, { method: 'DELETE', params }) } // 分组账号查询 export interface AccountListProps { // beginDate?: string, // endDate?: string, groupId?: number, mpAppIdList?: string[], pitcherIdList?: string[], pageNum: number, pageSize: number } export async function getAccountListApi(data: AccountListProps) { Object.keys(data).forEach(key => { if (!data[key]) { delete data[key] } }) return request(`${api}/tencentMonitor/adGroup/accountList`, { method: 'POST', data }) } // 账号绑定或者解绑分组 export async function addDelAccountApi(data: { accountIdList: number[], groupId: number, type: 0 | 1 }) { return request(`${api}/tencentMonitor/adGroup/account/update`, { method: 'POST', data }) } /** * 获取广告账户 * @returns */ export async function getAdqAccountListApi() { return request(`${api}/adq/adAccount/allOfUser`, { method: 'Get' }) }