index.ts 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905
  1. import { AxiosPromise } from "axios";
  2. import axios from "./config";
  3. // NOTE: 暂时使用ts-ignore忽略module not exported的问题
  4. // @ts-ignore
  5. import {
  6. IUser,
  7. IList,
  8. IDeliveryBook,
  9. IOfficialSimple,
  10. IBookSearchResult,
  11. ADpushSimple,
  12. IOfficials,
  13. ADPlanItem,
  14. deliveryPlanItem,
  15. IPlatform,
  16. adPlanLog,
  17. adPlanCount,
  18. PlanBack,
  19. RegisterData,
  20. FinanceData,
  21. AdGroupData,
  22. AdgroupList,
  23. IUserAdmin,
  24. AccountPlanConfig,
  25. IGZHItem,
  26. IDomainItem,
  27. IPBookItem,
  28. } from "#/api";
  29. /**
  30. * 登录
  31. * @param userData 用户信息
  32. */
  33. export const doLogin = <T>(userData: T): AxiosPromise<IUser> => {
  34. return axios.post("/login", userData);
  35. };
  36. /**
  37. * 书籍搜素
  38. * @param key_word
  39. * @param page
  40. */
  41. export const getDeliveryBookList = (
  42. query: Partial<{
  43. official_name: string;
  44. book_name: string;
  45. page: number;
  46. }> = { page: 1 }
  47. ): AxiosPromise<IList<IDeliveryBook>> => {
  48. return axios("/getUserDeliveryBooks", {
  49. params: query,
  50. });
  51. };
  52. /**
  53. * 获取公众号 - 无分页 用作于下拉
  54. */
  55. export const getOfficialSimpleAccount = (): AxiosPromise<IOfficialSimple[]> => {
  56. return axios("/simpleUserOfficialAccounts");
  57. };
  58. /**
  59. * 通过书名搜索书籍
  60. * @param key_word
  61. * @param page
  62. */
  63. export const getBooksByName = (
  64. key_word: string,
  65. page = 1
  66. ): AxiosPromise<IList<IBookSearchResult>> => {
  67. return axios("/searchBooks", { params: { key_word, page } });
  68. };
  69. /**
  70. * @description: 获取广告投放列表
  71. */
  72. export const getAdPushList = (
  73. query: Partial<{
  74. email: string;
  75. account_name: string;
  76. account_id: string;
  77. advertiser_id: string;
  78. page: number;
  79. }> = { page: 1 }
  80. ): AxiosPromise<IList<ADpushSimple>> => {
  81. return axios("/ad/userAdAdvertisers", { params: query });
  82. };
  83. /**
  84. * 获取公众号列表
  85. * @param query
  86. */
  87. export const getOfficialAccounts = (query: {
  88. official_name: string;
  89. platform: string;
  90. page: number;
  91. report_module: any;
  92. report_status: any;
  93. }): AxiosPromise<IList<IOfficials>> => {
  94. return axios("/userOfficialAccounts", { params: query });
  95. };
  96. /**
  97. * 获取公众号列表
  98. * @param query
  99. */
  100. export const getADPlanlist = (
  101. query: Partial<{
  102. ad_id: string;
  103. advertiser_id: string;
  104. campaign_id: string;
  105. status: string;
  106. begin_date: any;
  107. end_date: any;
  108. cost_order: number;
  109. page: number;
  110. }> = { page: 1 }
  111. ): AxiosPromise<IList<ADPlanItem>> => {
  112. return axios("/ad/adData", { params: query });
  113. };
  114. /**
  115. * @description: 获取投放数据列表
  116. */
  117. export const getDeliveryStatList = (
  118. query: Partial<{
  119. start_time: string;
  120. end_time: string;
  121. official_name: string;
  122. book_name: string;
  123. page: number;
  124. day_num: number;
  125. }> = { page: 1 }
  126. ): AxiosPromise<any> => {
  127. return axios("/delivery/stat", { params: query });
  128. };
  129. /*
  130. * 获取平台列表
  131. */
  132. export const getPlatforms = (): AxiosPromise<IPlatform[]> => {
  133. return axios("/simplePlatforms");
  134. };
  135. /**
  136. * 添加投放书籍
  137. * @param data
  138. */
  139. export const addDeliveryBook = (data: {
  140. delivery_bid: string | number;
  141. official_id: string | number;
  142. platform: string;
  143. }) => {
  144. return axios.post("/addDeliveryBook", data);
  145. };
  146. /**
  147. * 退出登录
  148. */
  149. export const logout = () => {
  150. return axios("/logout");
  151. };
  152. /**
  153. * 停止投放书籍
  154. * @param id 记录id
  155. */
  156. export const onStopDeliveryBook = (id: number) => {
  157. return axios("/stopDeliveryBook", { params: { id } });
  158. };
  159. /**
  160. * 自定义列
  161. * @param null
  162. */
  163. export const getCustomColumn = () => {
  164. return axios("/ad/adFields");
  165. };
  166. /**
  167. * @description: 获取更多投放数据
  168. */
  169. export const getDeliveryMoreStatList = (
  170. query: Partial<{
  171. official_id: number;
  172. start_time: string;
  173. end_time: string;
  174. official_name: string;
  175. book_name: string;
  176. page: number;
  177. }> = { page: 1 }
  178. ): AxiosPromise<IList<any>> => {
  179. return axios("/delivery/moreStat", { params: query });
  180. };
  181. /* 广告授权
  182. * @param null
  183. */
  184. export const getAdauth = () => {
  185. return axios("/oauth/accountGrant");
  186. };
  187. /* 广告预算修改
  188. * @param null
  189. */
  190. export const adChangeMoney = (data: {
  191. ad_id: string | number;
  192. budget: string | number;
  193. }) => {
  194. return axios.post("/ad/updateAdBudget", data);
  195. };
  196. /* 广告出价修改
  197. * @param null
  198. */
  199. export const adChangeCrem = (data: {
  200. ad_id: string | number;
  201. bid: string | number;
  202. }) => {
  203. return axios.post("/api/updateAdBid", data);
  204. };
  205. /* 修改广告状态
  206. * @param null
  207. */
  208. export const statusChange = (data: {
  209. ad_id: string | number;
  210. status: string;
  211. }) => {
  212. return axios.post("/ad/updateAdStatus", data);
  213. };
  214. /* 获取操作日志
  215. * @param null
  216. */
  217. export const opertaroLog = (
  218. query: Partial<{
  219. begin_time: string;
  220. end_time: string;
  221. page: number;
  222. ad_id: string;
  223. }> = { page: 1 }
  224. ): AxiosPromise<IList<adPlanLog>> => {
  225. return axios("/ad/adOptLogs", { params: query });
  226. };
  227. /* 获取广告状态
  228. * @param null
  229. */
  230. export const getAddStatus = (): AxiosPromise<any> => {
  231. return axios("/ad/adStatus");
  232. };
  233. //广告计划字段
  234. export const getAdplanTable = (query: {
  235. field: string;
  236. }): AxiosPromise<Array<{
  237. desc: string;
  238. name: string;
  239. }>> => {
  240. return axios("/ad/adStatFields", { params: query });
  241. };
  242. //广告计划字段
  243. export const getAdplanData = (query: {
  244. field: string;
  245. begin_date: string;
  246. end_date: string;
  247. ids: string;
  248. page: number;
  249. }): AxiosPromise<any> => {
  250. return axios("/ad/adStats", { params: query });
  251. };
  252. //获取计划的回传配置
  253. export const getAdBackPlan = (query: {
  254. ad_lid: string;
  255. back_platform: string;
  256. }): AxiosPromise<any> => {
  257. return axios("/getReportConfig", { params: query });
  258. };
  259. //设置回传配置
  260. export const setBackConfig = (data: {
  261. id: string | number;
  262. back_on: number;
  263. rate: number;
  264. condition: string;
  265. price: number;
  266. float_rate: string | number;
  267. }) => {
  268. return axios.post("/setReportConfig", data);
  269. };
  270. /**
  271. * @description: 获取广告投放列表
  272. */
  273. export const getRegisterData = (
  274. query: Partial<{
  275. ad_lid: number;
  276. back_platform: string;
  277. is_paid: number;
  278. show_all: number;
  279. page: number;
  280. }> = { page: 1 }
  281. ): AxiosPromise<IList<RegisterData>> => {
  282. return axios("/getAdMatchUsers", { params: query });
  283. };
  284. //强制回传
  285. export const setMustUpback = (data: {
  286. uid: string | number;
  287. platform: string;
  288. report_type: string;
  289. }) => {
  290. return axios.post("/forceReport", data);
  291. };
  292. //广告统计字段
  293. export const getAdStatus = (): AxiosPromise<Array<{
  294. desc: string;
  295. name: string;
  296. }>> => {
  297. return axios("/ad/adStatOptFields");
  298. };
  299. //广告统计tab
  300. export const getDesignList = (query: {
  301. day_num: number;
  302. }): AxiosPromise<Array<{
  303. desc: string;
  304. name: string;
  305. }>> => {
  306. return axios("/delivery/getDeliveryStatFields", { params: query });
  307. };
  308. //财务数据
  309. export const getFinanceList = (
  310. query: Partial<{
  311. start_ymd: string;
  312. end_ymd: string;
  313. page: number;
  314. advertiser_id: string;
  315. }> = { page: 1 }
  316. ): AxiosPromise<IList<FinanceData>> => {
  317. return axios("/ad/adFinanceStat", { params: query });
  318. };
  319. //广告组数据
  320. export const getAdgroupList = (
  321. query: Partial<{
  322. advertiser_id: string;
  323. account_id: string;
  324. campaign_id: string;
  325. is_enable: any;
  326. begin_date: string;
  327. end_date: string;
  328. page: number;
  329. uids: string;
  330. }> = { page: 1 }
  331. ): AxiosPromise<IList<AdGroupData>> => {
  332. return axios("/ad/adCampaigns", { params: query });
  333. };
  334. //修改广告组状态
  335. export const setGroupStatus = (data: {
  336. campaign_id: string | number;
  337. status: string | number;
  338. }) => {
  339. return axios.post("/ad/updateCampaignStatus", data);
  340. };
  341. //广告组账户列表
  342. export const getAdgroupData = (
  343. query: Partial<{
  344. advertiser_id: string | number;
  345. account_id: string | number;
  346. page: number;
  347. begin_date: string;
  348. end_date: string;
  349. uids: string;
  350. }> = { page: 1 }
  351. ): AxiosPromise<IList<AdgroupList>> => {
  352. return axios("/ad/adAdvertisers", { params: query });
  353. };
  354. //更新账户日预算
  355. export const setGroupDay = (data: {
  356. advertiser_id: string | number;
  357. budget_mode: string;
  358. budget?: number | string;
  359. }) => {
  360. return axios.post("/ad/updateAdvertiserBudget", data);
  361. };
  362. //获取自定义所有列
  363. export const getCoustomClomuns = (): any => {
  364. return axios("/ad/getFields");
  365. };
  366. //设置站点回传比例
  367. export const setChannelRate = (data: {
  368. rate: string | number;
  369. channel_id: string;
  370. }) => {
  371. return axios.post("/setChannelConfig", data);
  372. };
  373. //保存自定义列
  374. export const setCoustomClomuns = (data: any): any => {
  375. return axios.post("/ad/saveFields", { fields: data });
  376. };
  377. //获取组统计
  378. export const ALLadGroupData = (
  379. query: Partial<{
  380. advertiser_id: string | number;
  381. campaign_id: string | number;
  382. end_date: string;
  383. begin_date: string;
  384. cost_order: number;
  385. uids: string;
  386. }>
  387. ) => {
  388. return axios("/ad/adCampaignSum", { params: query });
  389. };
  390. //获取🐖统计
  391. export const ALLAcountGroupData = (
  392. query: Partial<{
  393. advertiser_id: string | number;
  394. campaign_id: string | number;
  395. begin_date: string;
  396. end_date: string;
  397. cost_order: number;
  398. uids: string;
  399. }>
  400. ) => {
  401. return axios("/ad/adAdvertiserSum", { params: query });
  402. };
  403. //获取广告计划汇总
  404. export const getadDataSum = (
  405. query: Partial<{
  406. advertiser_id: string | number;
  407. campaign_id: string | number;
  408. ad_id: number;
  409. begin_date: string;
  410. end_date: string;
  411. cost_order: number;
  412. status: number | string;
  413. }>
  414. ) => {
  415. return axios("/ad/adSumData", { params: query });
  416. };
  417. //设置回传付费最低金额
  418. export const setBackMinimum = (data: {
  419. advertiser_id: string;
  420. back_min_price: number | string;
  421. }) => {
  422. return axios.post("/setAdAdvertiserBackMinPrice", data);
  423. };
  424. /* 修改广告状态
  425. * @param null
  426. */
  427. export const statusAdChange = (data: {
  428. advertiser_id: string | number;
  429. is_enable: string | number;
  430. }) => {
  431. return axios("/ad/updateAdvertiserStatus", { params: data });
  432. };
  433. /**
  434. * 获取权限用户列表
  435. * @returns
  436. */
  437. export const getAuthorUser = (): AxiosPromise<IUserAdmin> => {
  438. return axios("/userInfo");
  439. };
  440. // 获取公众号回传配置
  441. export const getOfficialBackConfig = (
  442. channel_id: number
  443. ): AxiosPromise<AccountPlanConfig> => {
  444. return axios("/channel/reportConfig", { params: { channel_id } });
  445. };
  446. // 保存公众号回传配置
  447. export const setOfficialBackConfig = (data: any) => {
  448. return axios.post("/channel/setReportConfig", data);
  449. };
  450. // 切换公众号回传方式
  451. export const onUpdateOfficialReportType = (
  452. channel_id: number,
  453. report_module: string
  454. ) => {
  455. return axios.post("/channel/switchReportModule", {
  456. channel_id,
  457. report_module,
  458. });
  459. };
  460. /**
  461. * 获取落地页列表
  462. * @returns
  463. */
  464. export const getLandingPageList = (data: {
  465. page: number | 1;
  466. title?: string;
  467. link_source?: string;
  468. gzh_name?: string;
  469. start_time?: string;
  470. end_time?: string;
  471. status?: number;
  472. }) => {
  473. return axios("/landingPage/list", { params: data });
  474. };
  475. /**
  476. * 删除落地页
  477. * @returns
  478. */
  479. export const landingDelete = (data: { id: string | number }) => {
  480. return axios("/landingPage/delete", { params: data });
  481. };
  482. /**
  483. * 落地页 创建落地页
  484. * @returns
  485. */
  486. export const landingAdd = (data: any) => {
  487. return axios.post("/landingPage/add", data);
  488. };
  489. /**
  490. * 落地页书籍列表
  491. * @returns
  492. */
  493. export const landingBook = (data: {
  494. book_name?: string;
  495. official_name?: string;
  496. }) => {
  497. return axios("/landingPage/books", { params: data });
  498. };
  499. /**
  500. * 生成落地页
  501. * @returns
  502. */
  503. export const setLandingBook = (data: any) => {
  504. return axios.post("/landingPage/setLink", data);
  505. };
  506. /**
  507. * 落地页章节列表
  508. * @returns
  509. */
  510. export const landingCharpter = (data: { bid?: string }) => {
  511. return axios("/landingPage/chapters", { params: data });
  512. };
  513. /**
  514. * 落地页我得图片
  515. * @returns
  516. */
  517. export const landingMypic = (data: any) => {
  518. return axios("/landingPage/myDocuments", { params: data });
  519. };
  520. /**
  521. * 落地页保存封面
  522. * @returns
  523. */
  524. export const landingSaveMypic = (url: string) => {
  525. return axios("/landingPage/uploadDocument", { params: { link: url } });
  526. };
  527. /**
  528. * 落地页 编辑
  529. * @returns
  530. */
  531. export const landingEdit = (data: any) => {
  532. return axios.post("/landingPage/edit", data);
  533. };
  534. /**
  535. * 落地页 提交审核
  536. * @returns
  537. */
  538. export const landingSubmit = (data: { id: string | number }) => {
  539. return axios("/landingPage/submit", { params: data });
  540. };
  541. /*
  542. * 获取落地页公众号列表
  543. * @returns
  544. */
  545. export const getLandingOfficials = (): AxiosPromise<IList<IGZHItem>> => {
  546. return axios("/landingPage/getGzh");
  547. };
  548. /**
  549. * 获取落地页域名列表
  550. * @returns
  551. */
  552. export const getLandingDomains = (): AxiosPromise<IList<IDomainItem>> => {
  553. return axios("/landingPage/domain");
  554. };
  555. /**
  556. * 获取落地页详情
  557. * @returns
  558. */
  559. export const getLandingInfo = (id: string): AxiosPromise<any> => {
  560. return axios("/landingPage/info", { params: { id } });
  561. };
  562. /**
  563. * 获取落地页推广书籍列表
  564. * @param official_name
  565. * @param book_name
  566. * @returns
  567. */
  568. export const getLandingBooks = (
  569. official_name?: string,
  570. book_name?: string
  571. ): AxiosPromise<IList<IPBookItem>> => {
  572. return axios("/landingPage/books", {
  573. params: {
  574. official_name,
  575. book_name,
  576. page_size: 999,
  577. },
  578. });
  579. };
  580. /**
  581. * 获取封面列表
  582. * @param type
  583. * @param category
  584. * @returns
  585. */
  586. export const getLandingPic = (type?: any, category?: any, page?: any): any => {
  587. return axios("/landingPage/documents", {
  588. params: {
  589. type,
  590. category,
  591. page,
  592. },
  593. });
  594. };
  595. /**
  596. * 图片上传
  597. * @param file
  598. * @param type
  599. * @returns
  600. */
  601. export const onUpload = (
  602. file: File,
  603. type: string
  604. ): AxiosPromise<{ url: string }> => {
  605. const formData = new FormData();
  606. formData.append("file", file);
  607. formData.append("type", type);
  608. return axios.post("/landingPage/upload", formData);
  609. };
  610. /**
  611. * 模板列表
  612. * @param type
  613. * @param category
  614. * @returns
  615. */
  616. export const getLandingTempalte = (): any => {
  617. return axios("/landingPage/bodyTemplates");
  618. };
  619. /**
  620. * 修改密码
  621. * @param opasswd
  622. * @param new_passwd
  623. * @param new_passwd_repeat
  624. * @returns
  625. */
  626. export const changePwdApi = (data: {
  627. opasswd: string;
  628. new_passwd: string;
  629. new_passwd_repeat: string;
  630. }): any => {
  631. return axios.post("/user/resetPassword", data);
  632. };
  633. /**
  634. * 模板列表
  635. * @param campaign_id
  636. * @param budget_mode
  637. * @returns
  638. */
  639. export const changeAdgroupBudget = (data: {
  640. campaign_id: string;
  641. budget_mode: string;
  642. budget: number;
  643. }): any => {
  644. return axios.post("/ad/updateCampaignBudget", data);
  645. };
  646. /**
  647. * 财务统计
  648. * @param campaign_id
  649. * @param budget_mode
  650. * @returns
  651. */
  652. export const getFinanceSum = (
  653. query: Partial<{
  654. start_ymd: string;
  655. end_ymd: string;
  656. page: number;
  657. advertiser_id: string;
  658. }>
  659. ): any => {
  660. return axios("/ad/adFinanceStatSum", { params: query });
  661. };
  662. /**
  663. * 获取推广链接列表
  664. * @returns
  665. */
  666. export const getPromotionList = (data: {
  667. book_name: string;
  668. channel_name: string;
  669. channel_id: string | number;
  670. page: number
  671. }) => {
  672. // return axios("/yuewen/promotions", { params: data });
  673. return axios(`/yuewen/promotions?book_name=${data.book_name}&channel_name=${data.channel_name}&channel_id=${data.channel_id}&page=${data.page}`);
  674. };
  675. /**
  676. * 删除推广信息
  677. * @param channel_id
  678. */
  679. export const deletePromotion = (
  680. query: { channel_id: number }
  681. ): any => {
  682. return axios("/yuewen/deletePromotion", { params: query });
  683. };
  684. //添加推广链接
  685. export const addPromotionLInk = (data: {
  686. channel_id: string | number;
  687. channel_name: string;
  688. book_name: string;
  689. }) => {
  690. return axios.post("/yuewen/createPromotion", data);
  691. };
  692. //修改回传配置
  693. export const updateReportConfig = (data: {
  694. channel_id: string | number;
  695. rate: number
  696. }) => {
  697. return axios.post("/yuewen/updateReportConfig", data);
  698. };
  699. /**
  700. * 获取用户数据
  701. * @param channel_id
  702. */
  703. export const getUserData = (
  704. query: { channel_id: number | string, page: number, is_paid?: number }
  705. ): any => {
  706. return axios("/yuewen/registerUsers", { params: query });
  707. };
  708. /**
  709. * 用户数据强制回传
  710. * @param uid
  711. */
  712. export const forceReport = (
  713. query: { uid: number | string }
  714. ): any => {
  715. return axios("/yuewen/forceReport", { params: query });
  716. };
  717. // 素材库相关接口
  718. /**
  719. * 获取视频列表
  720. * @param
  721. */
  722. export const getVideoList = (
  723. query: {
  724. is_pubic: number | string, page: number, video_name?: string, video_type?: string, book_name?: string,
  725. demander?: string, editor?: string, uploader?: string,
  726. }
  727. ): any => {
  728. return axios("/video/list", { params: query });
  729. };
  730. /**
  731. * 获取图片列表
  732. * @param
  733. */
  734. export const getImageList = (
  735. query: {
  736. is_pubic: number | string, page: number, image_name?: string, image_type?: string, book_name?: string,
  737. demander?: string, editor?: string, uploader?: string,
  738. }
  739. ): any => {
  740. return axios("/image/list", { params: query });
  741. };
  742. /**
  743. * 删除视频
  744. * @param
  745. */
  746. export const deleteVideo = (
  747. query: {
  748. ids: string
  749. }
  750. ): any => {
  751. return axios("/video/delete", { params: query });
  752. };
  753. /**
  754. * 删除图片
  755. * @param
  756. */
  757. export const deleteImage = (
  758. query: {
  759. ids: string
  760. }
  761. ): any => {
  762. return axios("/image/delete", { params: query });
  763. };
  764. /**
  765. * 上传视频
  766. * @data
  767. */
  768. export const uploadVideo = (data: {
  769. video: any,
  770. is_public: number | string,
  771. duration: number | string,
  772. width: number | string,
  773. height: number | string,
  774. }) => {
  775. // return axios.post("/video/upload", data);
  776. return axios({
  777. method: 'post',
  778. url: '/video/upload',
  779. data,
  780. headers: {
  781. 'Content-Type': 'multipart/form-data',
  782. "contentType": false,
  783. }
  784. })
  785. };
  786. /**
  787. * 上传图片
  788. * @data
  789. */
  790. export const uploadImage = (data: {
  791. image: any,
  792. is_public: number | string,
  793. }) => {
  794. // return axios.post("/image/upload", data);
  795. return axios({
  796. method: 'post',
  797. url: '/image/upload',
  798. data,
  799. headers: {
  800. 'Content-Type': 'multipart/form-data'
  801. }
  802. })
  803. };
  804. /**
  805. * 获取广告主列表用于推送
  806. * @param
  807. */
  808. export const getAdvertiser = (
  809. ): any => {
  810. return axios("/ad/advertiser/all");
  811. };
  812. /**
  813. * 推送素材
  814. * @param
  815. */
  816. export const pushMaterial = (
  817. query: {
  818. material_id: string | number,
  819. advertiser_id: string | number,
  820. }
  821. ): any => {
  822. return axios("/material/sync", { params: query });
  823. };