wangliang_wd

feat:信息流屏蔽音频和活动

1 -import { PageDTO, CompDTO, PageInfoDTO } from 'wdBean'; 1 +import { PageDTO, CompDTO, PageInfoDTO, ContentDTO } from 'wdBean';
2 import { CompStyle, ViewType } from 'wdConstant/Index'; 2 import { CompStyle, ViewType } from 'wdConstant/Index';
3 import { CollectionUtils, DateTimeUtils, Logger } from 'wdKit'; 3 import { CollectionUtils, DateTimeUtils, Logger } from 'wdKit';
4 import { closeRefresh } from '../utils/PullDownRefresh'; 4 import { closeRefresh } from '../utils/PullDownRefresh';
@@ -58,7 +58,6 @@ export class PageHelper { @@ -58,7 +58,6 @@ export class PageHelper {
58 if (pageDto && pageDto.compList && pageDto.compList.length > 0) { 58 if (pageDto && pageDto.compList && pageDto.compList.length > 0) {
59 pageModel.viewType = ViewType.LOADED; 59 pageModel.viewType = ViewType.LOADED;
60 let sizeBefore: number = pageModel.compList.size(); 60 let sizeBefore: number = pageModel.compList.size();
61 - pageModel.compList.push(...pageDto.compList)  
62 if (pageDto.compList.length === pageModel.pageSize) { 61 if (pageDto.compList.length === pageModel.pageSize) {
63 pageModel.currentPage++; 62 pageModel.currentPage++;
64 pageModel.hasMore = true; 63 pageModel.hasMore = true;
@@ -66,6 +65,11 @@ export class PageHelper { @@ -66,6 +65,11 @@ export class PageHelper {
66 pageModel.hasMore = false; 65 pageModel.hasMore = false;
67 } 66 }
68 67
  68 + //移除音频 和 活动
  69 + this.removeComp(pageModel,pageDto)
  70 +
  71 + // pageModel.compList.push(...pageDto.compList)
  72 +
69 // TODO 暂时去掉互动数据,待优化。(主要是互动数据返回,如何渲染到ui上) 73 // TODO 暂时去掉互动数据,待优化。(主要是互动数据返回,如何渲染到ui上)
70 // TODO updateItems(sizeBefore, data),这里可能有时序问题,导致覆盖别的group数据,需要优化,考虑精准替换 74 // TODO updateItems(sizeBefore, data),这里可能有时序问题,导致覆盖别的group数据,需要优化,考虑精准替换
71 // 二次请求,批查互动数据 75 // 二次请求,批查互动数据
@@ -108,7 +112,11 @@ export class PageHelper { @@ -108,7 +112,11 @@ export class PageHelper {
108 pageModel.hasMore = false; 112 pageModel.hasMore = false;
109 } 113 }
110 let sizeBefore: number = pageModel.compList.size(); 114 let sizeBefore: number = pageModel.compList.size();
111 - pageModel.compList.push(...data.compList) 115 +
  116 + //移除音频 和 活动
  117 + this.removeComp(pageModel,data)
  118 + //
  119 + // pageModel.compList.push(...data.compList)
112 PageViewModel.getInteractData(data.compList).then((data: CompDTO[]) => { 120 PageViewModel.getInteractData(data.compList).then((data: CompDTO[]) => {
113 // 刷新,替换所有数据 121 // 刷新,替换所有数据
114 pageModel.compList.updateItems(sizeBefore, data) 122 pageModel.compList.updateItems(sizeBefore, data)
@@ -119,6 +127,23 @@ export class PageHelper { @@ -119,6 +127,23 @@ export class PageHelper {
119 promptAction.showToast({ message: err }); 127 promptAction.showToast({ message: err });
120 }) 128 })
121 } 129 }
  130 +
  131 + /**
  132 + * 移除comp
  133 + */
  134 + private removeComp(pageModel: PageModel, pageDto: PageDTO) {
  135 + let datas = pageDto.compList
  136 + for (let index = 0; index < datas.length; index++) {
  137 + const element = datas[index];
  138 + let contentInfo: ContentDTO = CollectionUtils.getElement(element.operDataList, 0);
  139 + //移除音频 和 活动
  140 + if (contentInfo && (contentInfo.objectType === '13' || contentInfo.objectType === '3')) {
  141 + Logger.debug(TAG, 'getGroupData 移除音频 和 活动');
  142 + }else {
  143 + pageModel.compList.push(element)
  144 + }
  145 + }
  146 + }
122 } 147 }
123 148
124 149