IndexContent.ts 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. import { DataModel, transformArrayDataModel } from '@imengyu/js-request-transform';
  2. import { CommonContentApi } from '../CommonContent';
  3. export class IndexStats extends DataModel<IndexStats> {
  4. constructor() {
  5. super(IndexStats, "内容详情");
  6. this.setNameMapperCase('Camel', 'Snake');
  7. this._convertTable = {
  8. crData: { clientSide: 'forceArray' },
  9. minnanCr: { clientSide: 'forceArray' },
  10. historyData: { clientSide: 'forceArray' },
  11. inheritorData: { clientSide: 'forceArray' },
  12. ichData: { clientSide: 'forceArray' },
  13. ichCenter: { clientSide: 'forceArray' },
  14. villageData: { clientSide: 'forceArray' }
  15. }
  16. }
  17. crData: any;
  18. minnanCr: any;
  19. historyData: any;
  20. inheritorData: any;
  21. ichData: any;
  22. ichCenter: any;
  23. villageData: any;
  24. }
  25. export class IndexBanner extends DataModel<IndexBanner> {
  26. constructor() {
  27. super(IndexBanner, "首页轮播");
  28. this.setNameMapperCase('Camel', 'Snake');
  29. this._convertTable = {}
  30. }
  31. id = '';
  32. title = '';
  33. image = '';
  34. typeText = '';
  35. sceneText = '';
  36. openTypeText = '';
  37. statusText = '';
  38. }
  39. export class IndexTerminalConfig extends DataModel<IndexTerminalConfig> {
  40. constructor() {
  41. super(IndexTerminalConfig, "终端按钮配置");
  42. this.setNameMapperCase('Camel', 'Snake');
  43. this._convertTable = {}
  44. }
  45. id = '';
  46. name = '';
  47. images = [] as string[];
  48. pageJson = [] as {
  49. title: string,
  50. logo: string,
  51. page: string,
  52. }[];
  53. inheritorId = 0;
  54. ichId = 0;
  55. }
  56. export class IndexContentApi extends CommonContentApi {
  57. constructor() {
  58. super(undefined, 3, "闽南文化概况", 288);
  59. }
  60. async getStats() {
  61. return (await this.get('/volunteer/statistics/webData', '闽南文化首页数据统计', {
  62. }, IndexStats)).data as IndexStats
  63. }
  64. async getBanner() {
  65. return transformArrayDataModel<IndexBanner>(
  66. IndexBanner,
  67. (await this.get('/content/banner_function/getotherBanner', '首页轮播图列表', {
  68. open_type: 3,
  69. })).data as any,
  70. '首页轮播图列表'
  71. );
  72. }
  73. async bindMachineCode(userName: string, deviceCode: string) {
  74. return (await this.post('/resource/site_bind/bind/bindMachineCode', {
  75. username: userName,
  76. device_code: deviceCode,
  77. }, '绑定机器码')).data as any;
  78. }
  79. async getTerminalConfig(deviceCode: string) {
  80. return (await this.get('/resource/site_bind/getInfo/getTerminalConfig', '获取终端按钮配置', {
  81. device_code: deviceCode,
  82. }, IndexTerminalConfig)).data as IndexTerminalConfig
  83. }
  84. }
  85. export default new IndexContentApi();