Showing
7 changed files
with
413 additions
and
33 deletions
| @@ -217,6 +217,11 @@ export class HttpUrlUtils { | @@ -217,6 +217,11 @@ export class HttpUrlUtils { | ||
| 217 | static readonly SEARCH_RESULT_COUNT_DATA_PATH: string = "/api/rmrb-search-api/zh/c/count?keyword="; | 217 | static readonly SEARCH_RESULT_COUNT_DATA_PATH: string = "/api/rmrb-search-api/zh/c/count?keyword="; |
| 218 | 218 | ||
| 219 | /** | 219 | /** |
| 220 | + * 搜索结果 显示list 详情 | ||
| 221 | + */ | ||
| 222 | + static readonly SEARCH_RESULT_LIST_DATA_PATH: string = "/api/rmrb-search-api/zh/c/search"; | ||
| 223 | + | ||
| 224 | + /** | ||
| 220 | * 早晚报列表 | 225 | * 早晚报列表 |
| 221 | * 根据页面id获取页面楼层列表 | 226 | * 根据页面id获取页面楼层列表 |
| 222 | * https://pdapis.pdnews.cn/api/rmrb-bff-display-zh/display/zh/c/pageInfo?pageId=28927 | 227 | * https://pdapis.pdnews.cn/api/rmrb-bff-display-zh/display/zh/c/pageInfo?pageId=28927 |
| @@ -645,6 +650,11 @@ export class HttpUrlUtils { | @@ -645,6 +650,11 @@ export class HttpUrlUtils { | ||
| 645 | return url | 650 | return url |
| 646 | } | 651 | } |
| 647 | 652 | ||
| 653 | + static getSearchResultListDataUrl() { | ||
| 654 | + let url = HttpUrlUtils._hostUrl + HttpUrlUtils.SEARCH_RESULT_LIST_DATA_PATH | ||
| 655 | + return url | ||
| 656 | + } | ||
| 657 | + | ||
| 648 | // static getYcgCommonHeaders(): HashMap<string, string> { | 658 | // static getYcgCommonHeaders(): HashMap<string, string> { |
| 649 | // let headers: HashMap<string, string> = new HashMap<string, string>() | 659 | // let headers: HashMap<string, string> = new HashMap<string, string>() |
| 650 | // | 660 | // |
| @@ -128,7 +128,7 @@ export struct SearchComponent { | @@ -128,7 +128,7 @@ export struct SearchComponent { | ||
| 128 | * @param content | 128 | * @param content |
| 129 | */ | 129 | */ |
| 130 | getSearchHistoryResData(content:string,index:number){ | 130 | getSearchHistoryResData(content:string,index:number){ |
| 131 | - //删除单挑记录 | 131 | + //删除单条记录 |
| 132 | SearcherAboutDataModel.delSearchSingleHistoryData(index) | 132 | SearcherAboutDataModel.delSearchSingleHistoryData(index) |
| 133 | this.isClickedHistory = true | 133 | this.isClickedHistory = true |
| 134 | this.searchResData(content) | 134 | this.searchResData(content) |
| @@ -149,33 +149,6 @@ export struct SearchComponent { | @@ -149,33 +149,6 @@ export struct SearchComponent { | ||
| 149 | this.getSearchResultCountData() | 149 | this.getSearchResultCountData() |
| 150 | } | 150 | } |
| 151 | 151 | ||
| 152 | - getSearchResultCountData() { | ||
| 153 | - SearcherAboutDataModel.getSearchResultCountData(encodeURI(this.searchText),getContext(this)).then((value) => { | ||
| 154 | - if (value != null) { | ||
| 155 | - this.count = [] | ||
| 156 | - if(value.allTotal!=0){ | ||
| 157 | - this.count.push("全部") | ||
| 158 | - } | ||
| 159 | - if(value.cmsTotal!=0){ | ||
| 160 | - this.count.push("精选") | ||
| 161 | - } | ||
| 162 | - if(value.rmhTotal!=0){ | ||
| 163 | - this.count.push("人民号") | ||
| 164 | - } | ||
| 165 | - if(value.videoTotal!=0){ | ||
| 166 | - this.count.push("视频") | ||
| 167 | - } | ||
| 168 | - if(value.activityTotal!=0){ | ||
| 169 | - this.count.push("活动") | ||
| 170 | - } | ||
| 171 | - } | ||
| 172 | - }).catch((err: Error) => { | ||
| 173 | - console.log(TAG, JSON.stringify(err)) | ||
| 174 | - }) | ||
| 175 | - } | ||
| 176 | - | ||
| 177 | - | ||
| 178 | - | ||
| 179 | /** | 152 | /** |
| 180 | * 点击联想搜索列表回调 | 153 | * 点击联想搜索列表回调 |
| 181 | * @param content | 154 | * @param content |
| @@ -291,4 +264,30 @@ export struct SearchComponent { | @@ -291,4 +264,30 @@ export struct SearchComponent { | ||
| 291 | .padding({ left: '31lpx' }) | 264 | .padding({ left: '31lpx' }) |
| 292 | .alignItems(VerticalAlign.Center) | 265 | .alignItems(VerticalAlign.Center) |
| 293 | } | 266 | } |
| 267 | + | ||
| 268 | + | ||
| 269 | + getSearchResultCountData() { | ||
| 270 | + SearcherAboutDataModel.getSearchResultCountData(encodeURI(this.searchText),getContext(this)).then((value) => { | ||
| 271 | + if (value != null) { | ||
| 272 | + this.count = [] | ||
| 273 | + if(value.allTotal!=0){ | ||
| 274 | + this.count.push("全部") | ||
| 275 | + } | ||
| 276 | + if(value.cmsTotal!=0){ | ||
| 277 | + this.count.push("精选") | ||
| 278 | + } | ||
| 279 | + if(value.rmhTotal!=0){ | ||
| 280 | + this.count.push("人民号") | ||
| 281 | + } | ||
| 282 | + if(value.videoTotal!=0){ | ||
| 283 | + this.count.push("视频") | ||
| 284 | + } | ||
| 285 | + if(value.activityTotal!=0){ | ||
| 286 | + this.count.push("活动") | ||
| 287 | + } | ||
| 288 | + } | ||
| 289 | + }).catch((err: Error) => { | ||
| 290 | + console.log(TAG, JSON.stringify(err)) | ||
| 291 | + }) | ||
| 292 | + } | ||
| 294 | } | 293 | } |
| @@ -20,7 +20,7 @@ export struct SearchResultComponent{ | @@ -20,7 +20,7 @@ export struct SearchResultComponent{ | ||
| 20 | Tabs({ barPosition: BarPosition.Start, controller: this.controller }) { | 20 | Tabs({ barPosition: BarPosition.Start, controller: this.controller }) { |
| 21 | ForEach(this.count, (item: string, index: number ) => { | 21 | ForEach(this.count, (item: string, index: number ) => { |
| 22 | TabContent(){ | 22 | TabContent(){ |
| 23 | - SearchResultContentComponent() | 23 | + SearchResultContentComponent({keywords:this.searchText,searchType:item}) |
| 24 | }.tabBar(this.TabBuilder(index,item)) | 24 | }.tabBar(this.TabBuilder(index,item)) |
| 25 | }, (item: string, index: number) => index.toString()) | 25 | }, (item: string, index: number) => index.toString()) |
| 26 | } | 26 | } |
| 1 | +import { ContentDTO, FullColumnImgUrlDTO, InteractDataDTO, RmhInfoDTO, VideoInfoDTO } from 'wdBean/Index' | ||
| 2 | +import { LiveInfoDTO } from 'wdBean/src/main/ets/bean/detail/LiveInfoDTO' | ||
| 3 | +import { VoiceInfoDTO } from 'wdBean/src/main/ets/bean/detail/VoiceInfoDTO' | ||
| 4 | +import { LazyDataSource, StringUtils } from 'wdKit/Index' | ||
| 5 | +import SearcherAboutDataModel from '../../model/SearcherAboutDataModel' | ||
| 6 | +import { CardParser } from '../CardParser' | ||
| 7 | +import { ListHasNoMoreDataUI } from '../reusable/ListHasNoMoreDataUI' | ||
| 8 | + | ||
| 1 | const TAG = "SearchResultContentComponent" | 9 | const TAG = "SearchResultContentComponent" |
| 2 | 10 | ||
| 3 | @Component | 11 | @Component |
| 4 | export struct SearchResultContentComponent{ | 12 | export struct SearchResultContentComponent{ |
| 13 | + @State keywords:string = "" | ||
| 14 | + @State searchType:string = "" | ||
| 15 | + @State data: LazyDataSource<ContentDTO> = new LazyDataSource(); | ||
| 16 | + @State count:number = 0; | ||
| 17 | + @State isLoading:boolean = false | ||
| 18 | + @State hasMore:boolean = true | ||
| 19 | + curPageNum:number = 1; | ||
| 20 | + | ||
| 5 | 21 | ||
| 6 | aboutToAppear(): void { | 22 | aboutToAppear(): void { |
| 23 | + if(this.searchType == "全部"){ | ||
| 24 | + this.searchType = "all" | ||
| 25 | + }else if(this.searchType == "精选"){ | ||
| 26 | + this.searchType = "cms" | ||
| 27 | + }else if(this.searchType == "人民号"){ | ||
| 28 | + this.searchType = "rmh" | ||
| 29 | + }else if(this.searchType == "视频"){ | ||
| 30 | + this.searchType = "video" | ||
| 31 | + }else if(this.searchType == "活动"){ | ||
| 32 | + this.searchType = "activity" | ||
| 33 | + } | ||
| 7 | 34 | ||
| 35 | + this.keywords = encodeURI(this.keywords) | ||
| 36 | + this.getNewSearchResultData() | ||
| 8 | } | 37 | } |
| 9 | 38 | ||
| 39 | + getNewSearchResultData(){ | ||
| 40 | + this.isLoading = true | ||
| 41 | + if(this.hasMore){ | ||
| 42 | + SearcherAboutDataModel.getSearchResultListData("20",`${this.curPageNum}`,this.searchType,this.keywords,getContext(this)).then((value)=>{ | ||
| 43 | + if (!this.data || value.list.length == 0){ | ||
| 44 | + this.hasMore = false | ||
| 45 | + }else{ | ||
| 46 | + value.list.forEach((value)=>{ | ||
| 47 | + | ||
| 48 | + let photos:FullColumnImgUrlDTO[] = [] | ||
| 49 | + if(value.data.appStyle === 4){ | ||
| 50 | + value.data.appStyleImages.split("&&").forEach((value)=>{ | ||
| 51 | + photos.push({url:value} as FullColumnImgUrlDTO) | ||
| 52 | + }) | ||
| 53 | + } | ||
| 54 | + | ||
| 55 | + //TODO 48 个赋值 | ||
| 56 | + let contentDTO:ContentDTO = { | ||
| 57 | + appStyle:value.data.appStyle+"", | ||
| 58 | + cityCode:value.data.cityCode, | ||
| 59 | + coverSize:"", | ||
| 60 | + coverType:-1, | ||
| 61 | + coverUrl:value.data.appStyleImages.split("&&")[0], | ||
| 62 | + description:value.data.description, | ||
| 63 | + districtCode:value.data.districtCode, | ||
| 64 | + endTime:value.data.endTime, | ||
| 65 | + hImageUrl:"", | ||
| 66 | + heatValue:"", | ||
| 67 | + innerUrl:"", | ||
| 68 | + landscape:Number.parseInt(value.data.landscape), | ||
| 69 | + // lengthTime:null, | ||
| 70 | + linkUrl:value.data.linkUrl, | ||
| 71 | + openLikes:Number.parseInt(value.data.openLikes), | ||
| 72 | + openUrl:"", | ||
| 73 | + pageId:value.data.pageId, | ||
| 74 | + programAuth:"", | ||
| 75 | + programId:"", | ||
| 76 | + programName:"", | ||
| 77 | + programSource:-1, | ||
| 78 | + programType:-1, | ||
| 79 | + provinceCode:value.data.provinceCode, | ||
| 80 | + showTitleEd:value.data.showTitleEd, | ||
| 81 | + showTitleIng:value.data.showTitleIng, | ||
| 82 | + showTitleNo:value.data.showTitleNo, | ||
| 83 | + startTime:value.data.startTime, | ||
| 84 | + subType:"", | ||
| 85 | + subtitle:"", | ||
| 86 | + title:value.data.title, | ||
| 87 | + vImageUrl:"", | ||
| 88 | + screenType:"", | ||
| 89 | + source:StringUtils.isEmpty(value.data.creatorName)?value.data.sourceName:value.data.creatorName, | ||
| 90 | + objectId:"", | ||
| 91 | + objectType:value.data.type, | ||
| 92 | + channelId:value.data.channelId, | ||
| 93 | + relId:value.data.relId, | ||
| 94 | + relType:value.data.relType, | ||
| 95 | + newsTitle:value.data.titleLiteral,// 有颜色,目前没做 | ||
| 96 | + publishTime:value.data.publishTime, | ||
| 97 | + visitorComment:-1, | ||
| 98 | + fullColumnImgUrls:photos, | ||
| 99 | + newsSummary:"", | ||
| 100 | + hasMore:-1, | ||
| 101 | + slideShows:[], | ||
| 102 | + voiceInfo:{} as VoiceInfoDTO, | ||
| 103 | + tagWord:-1, | ||
| 104 | + isSelect:true, | ||
| 105 | + rmhInfo:{} as RmhInfoDTO, | ||
| 106 | + photoNum:-1, | ||
| 107 | + liveInfo:{} as LiveInfoDTO, | ||
| 108 | + videoInfo:{ | ||
| 109 | + videoDuration:Number.parseInt(value.data.duration) | ||
| 110 | + } as VideoInfoDTO, | ||
| 111 | + interactData:{} as InteractDataDTO | ||
| 112 | + } | ||
| 113 | + | ||
| 114 | + this.data.push(contentDTO) | ||
| 115 | + }) | ||
| 116 | + this.data.notifyDataReload() | ||
| 117 | + this.count = this.data.totalCount() | ||
| 118 | + if (this.data.totalCount() < value.totalCount) { | ||
| 119 | + this.curPageNum++ | ||
| 120 | + }else { | ||
| 121 | + this.hasMore = false | ||
| 122 | + } | ||
| 123 | + } | ||
| 124 | + }).catch((err:Error)=>{ | ||
| 125 | + console.log(TAG,JSON.stringify(err)) | ||
| 126 | + }) | ||
| 127 | + } | ||
| 128 | + this.isLoading = false | ||
| 129 | + } | ||
| 10 | 130 | ||
| 11 | 131 | ||
| 12 | build() { | 132 | build() { |
| 133 | + Column() { | ||
| 134 | + if(this.count == 0){ | ||
| 135 | + ListHasNoMoreDataUI({style:2}) | ||
| 136 | + }else{ | ||
| 137 | + //List | ||
| 138 | + List({ space: '6lpx' }) { | ||
| 139 | + LazyForEach(this.data, (item: ContentDTO, index: number) => { | ||
| 140 | + ListItem() { | ||
| 141 | + CardParser({contentDTO:item}) | ||
| 142 | + } | ||
| 143 | + .onClick(()=>{ | ||
| 144 | + //TODO 跳转 | ||
| 145 | + }) | ||
| 146 | + }, (item: ContentDTO, index: number) => index.toString()) | ||
| 13 | 147 | ||
| 148 | + //没有更多数据 显示提示 | ||
| 149 | + if(!this.hasMore){ | ||
| 150 | + ListItem(){ | ||
| 151 | + ListHasNoMoreDataUI() | ||
| 152 | + } | ||
| 153 | + } | ||
| 154 | + }.cachedCount(4) | ||
| 155 | + .scrollBar(BarState.Off) | ||
| 156 | + .margin({top:'23lpx',left:'23lpx',right:'23lpx'}) | ||
| 157 | + .layoutWeight(1) | ||
| 158 | + .onReachEnd(()=>{ | ||
| 159 | + console.log(TAG,"触底了"); | ||
| 160 | + if(!this.isLoading){ | ||
| 161 | + //加载分页数据 | ||
| 162 | + this.getNewSearchResultData() | ||
| 163 | + } | ||
| 164 | + }) | ||
| 165 | + } | ||
| 166 | + } | ||
| 167 | + .backgroundColor($r('app.color.white')) | ||
| 168 | + .height('100%') | ||
| 169 | + .width('100%') | ||
| 14 | } | 170 | } |
| 15 | } | 171 | } |
| @@ -5,6 +5,7 @@ import HashMap from '@ohos.util.HashMap'; | @@ -5,6 +5,7 @@ import HashMap from '@ohos.util.HashMap'; | ||
| 5 | import { SearchHistoryItem } from '../viewmodel/SearchHistoryItem'; | 5 | import { SearchHistoryItem } from '../viewmodel/SearchHistoryItem'; |
| 6 | import { SearchHotContentItem } from '../viewmodel/SearchHotContentItem'; | 6 | import { SearchHotContentItem } from '../viewmodel/SearchHotContentItem'; |
| 7 | import { SearchResultCountItem } from '../viewmodel/SearchResultCountItem'; | 7 | import { SearchResultCountItem } from '../viewmodel/SearchResultCountItem'; |
| 8 | +import { SearchResultContentData } from '../viewmodel/SearchResultContentData'; | ||
| 8 | 9 | ||
| 9 | const TAG = "SearcherAboutDataModel" | 10 | const TAG = "SearcherAboutDataModel" |
| 10 | 11 | ||
| @@ -35,6 +36,11 @@ class SearcherAboutDataModel{ | @@ -35,6 +36,11 @@ class SearcherAboutDataModel{ | ||
| 35 | public async putSearchHistoryData(content:string){ | 36 | public async putSearchHistoryData(content:string){ |
| 36 | let history = SPHelper.default.getSync(this.SEARCH_HISTORY_KEY,"[]") as string | 37 | let history = SPHelper.default.getSync(this.SEARCH_HISTORY_KEY,"[]") as string |
| 37 | this.searchHistoryData = JSON.parse(history) | 38 | this.searchHistoryData = JSON.parse(history) |
| 39 | + this.searchHistoryData.forEach((element,index) => { | ||
| 40 | + if (element.searchContent == content) { | ||
| 41 | + this.searchHistoryData.splice(index,1) | ||
| 42 | + } | ||
| 43 | + }); | ||
| 38 | this.searchHistoryData.splice(0,0,new SearchHistoryItem(content)) | 44 | this.searchHistoryData.splice(0,0,new SearchHistoryItem(content)) |
| 39 | await SPHelper.default.saveSync(this.SEARCH_HISTORY_KEY, JSON.stringify(this.searchHistoryData)); | 45 | await SPHelper.default.saveSync(this.SEARCH_HISTORY_KEY, JSON.stringify(this.searchHistoryData)); |
| 40 | } | 46 | } |
| @@ -234,6 +240,45 @@ class SearcherAboutDataModel{ | @@ -234,6 +240,45 @@ class SearcherAboutDataModel{ | ||
| 234 | return compRes.data | 240 | return compRes.data |
| 235 | } | 241 | } |
| 236 | 242 | ||
| 243 | + /** | ||
| 244 | + * 搜索结果 展示列表 | ||
| 245 | + */ | ||
| 246 | + getSearchResultListData(pageSize:string,pageNum:string,searchType:string,keyword:string,context: Context): Promise<SearchResultContentData> { | ||
| 247 | + return new Promise<SearchResultContentData>((success, error) => { | ||
| 248 | + Logger.info(TAG, `getSearchResultListData start`); | ||
| 249 | + this.fetchSearchResultListData(pageSize,pageNum,searchType,keyword).then((navResDTO: ResponseDTO<SearchResultContentData>) => { | ||
| 250 | + if (!navResDTO || navResDTO.code != 0) { | ||
| 251 | + success(this.getSearchResultListDataLocal(context)) | ||
| 252 | + return | ||
| 253 | + } | ||
| 254 | + Logger.info(TAG, "getSearchResultListData then,SearchResultListResDTO.timeStamp:" + navResDTO.timestamp); | ||
| 255 | + let navigationBean = navResDTO.data as SearchResultContentData | ||
| 256 | + success(navigationBean); | ||
| 257 | + }).catch((err: Error) => { | ||
| 258 | + Logger.error(TAG, `getSearchResultListData catch, error.name : ${err.name}, error.message:${err.message}`); | ||
| 259 | + success(this.getSearchResultListDataLocal(context)) | ||
| 260 | + }) | ||
| 261 | + }) | ||
| 262 | + } | ||
| 263 | + | ||
| 264 | + fetchSearchResultListData(pageSize:string,pageNum:string,searchType:string,keyword:string) { | ||
| 265 | + let url = HttpUrlUtils.getSearchResultListDataUrl() + `?pageSize=${pageSize}&pageNum=${pageNum}&searchType=${searchType}&keyword=${keyword}` | ||
| 266 | + let headers: HashMap<string, string> = HttpUrlUtils.getCommonHeaders(); | ||
| 267 | + return WDHttp.get<ResponseDTO<SearchResultContentData>>(url, headers) | ||
| 268 | + }; | ||
| 269 | + | ||
| 270 | + async getSearchResultListDataLocal(context: Context): Promise<SearchResultContentData> { | ||
| 271 | + Logger.info(TAG, `getSearchResultListDataLocal start`); | ||
| 272 | + let compRes: ResponseDTO<SearchResultContentData> | null = await ResourcesUtils.getResourcesJson<ResponseDTO<SearchResultContentData>>(context,'search_result_list_data.json' ); | ||
| 273 | + if (!compRes || !compRes.data) { | ||
| 274 | + Logger.info(TAG, `getSearchResultListDataLocal compRes is empty`); | ||
| 275 | + return new SearchResultContentData() | ||
| 276 | + } | ||
| 277 | + Logger.info(TAG, `getSearchResultListDataLocal getResourcesJsonSync compRes : ${JSON.stringify(compRes)}`); | ||
| 278 | + return compRes.data | ||
| 279 | + } | ||
| 280 | + | ||
| 281 | + | ||
| 237 | } | 282 | } |
| 238 | 283 | ||
| 239 | const searcherAboutDataModel = SearcherAboutDataModel.getInstance() | 284 | const searcherAboutDataModel = SearcherAboutDataModel.getInstance() |
| 1 | -import { ContentDTO } from 'wdBean/Index' | ||
| 2 | 1 | ||
| 3 | -export interface SearchResultContentItem{ | ||
| 4 | - data:ContentDTO | ||
| 5 | - resultType:string | 2 | +export class SearchResultContentItem{ |
| 3 | + data:SearchDescription = new SearchDescription() | ||
| 4 | + resultType:string = "" | ||
| 5 | +} | ||
| 6 | + | ||
| 7 | +class SearchDescription{ | ||
| 8 | + likeEnable: string = "" | ||
| 9 | + previewUri: string = "" | ||
| 10 | + firstFrameImageBucket: string = "" | ||
| 11 | + appImg: string = "" | ||
| 12 | + onlineStatus: string = "" | ||
| 13 | + createUserName: string = "" | ||
| 14 | + contentCheck: string = "" | ||
| 15 | + type: string = "" | ||
| 16 | + titleOsst: string = "" | ||
| 17 | + coverHImageBucket: string = "" | ||
| 18 | + shareImageUri: string = "" | ||
| 19 | + searchTypeInt: string = "" | ||
| 20 | + authIcon: string = "" | ||
| 21 | + id: string = "" | ||
| 22 | + newOld: string = "" | ||
| 23 | + seoTags: string = "" | ||
| 24 | + publishTime: string = "" | ||
| 25 | + feedControl: string = "" | ||
| 26 | + saveType: string = "" | ||
| 27 | + userTypeInt: string = "" | ||
| 28 | + userOrigin: string = "" | ||
| 29 | + creatorType: string = "" | ||
| 30 | + planStartTime: string = "" | ||
| 31 | + waresSwitch: string = "" | ||
| 32 | + introductionLiteral: string = "" | ||
| 33 | + topicType: string = "" | ||
| 34 | + hotFlag: string = "" | ||
| 35 | + coverUrl: string = "" | ||
| 36 | + itemId: string = "" | ||
| 37 | + titleEn: string = "" | ||
| 38 | + matrixId: string = "" | ||
| 39 | + tplId: string = "" | ||
| 40 | + joinActivity: string = "" | ||
| 41 | + status: string = "" | ||
| 42 | + headerPhotoUrl: string = "" | ||
| 43 | + zhSearch: string = "" | ||
| 44 | + activityControl: string = "" | ||
| 45 | + city: string = "" | ||
| 46 | + showTitleIng: string = "" | ||
| 47 | + shareFlag: string = "" | ||
| 48 | + creatorName: string = "" | ||
| 49 | + className: string = "" | ||
| 50 | + showTitleNo: string = "" | ||
| 51 | + liveSwitch: string = "" | ||
| 52 | + likesStyle: string = "" | ||
| 53 | + dataKey: string = "" | ||
| 54 | + search: string = "" | ||
| 55 | + puserId: string = "" | ||
| 56 | + top: string = "" | ||
| 57 | + titleLiteral: string = "" | ||
| 58 | + countryCode: string = "" | ||
| 59 | + startTime: string = "" | ||
| 60 | + shareDescription: string = "" | ||
| 61 | + channelId: string = "" | ||
| 62 | + openComment: string = "" | ||
| 63 | + creatorClassify: string = "" | ||
| 64 | + previewBucket: string = "" | ||
| 65 | + picCount: string = "" | ||
| 66 | + recommendControl: string = "" | ||
| 67 | + creatorNameLiteral: string = "" | ||
| 68 | + subjects: string = "" | ||
| 69 | + updateUser: string = "" | ||
| 70 | + i: string = "" | ||
| 71 | + updateTime: string = "" | ||
| 72 | + userId: string = "" | ||
| 73 | + showTitleEd: string = "" | ||
| 74 | + authTo: string = "" | ||
| 75 | + rmhPlatformInt: string = "" | ||
| 76 | + giftEnable: string = "" | ||
| 77 | + titleEnosst: string = "" | ||
| 78 | + shareCoverUrl: string = "" | ||
| 79 | + deleted: string = "" | ||
| 80 | + zhOperateFlag: string = "" | ||
| 81 | + shareTitle: string = "" | ||
| 82 | + scrollUpdated: string = "" | ||
| 83 | + createTime: string = "" | ||
| 84 | + creatorBan: string = "" | ||
| 85 | + publishTimeInt: string = "" | ||
| 86 | + organization: string = "" | ||
| 87 | + channelName: string = "" | ||
| 88 | + createUser: string = "" | ||
| 89 | + currentPoliticsFlag: string = "" | ||
| 90 | + endTime: string = "" | ||
| 91 | + sourceId: string = "" | ||
| 92 | + country: string = "" | ||
| 93 | + secondClassify: string = "" | ||
| 94 | + createUserId: string = "" | ||
| 95 | + firstFrameImageUri: string = "" | ||
| 96 | + pubTime: string = "" | ||
| 97 | + openLikes: string = "" | ||
| 98 | + contentText: string = "" | ||
| 99 | + relType: string = "" | ||
| 100 | + authImg: string = "" | ||
| 101 | + roomId: string = "" | ||
| 102 | + nameLiteral: string = "" | ||
| 103 | + mainControl: string = "" | ||
| 104 | + coverVImageBucket: string = "" | ||
| 105 | + linkUrl: string = "" | ||
| 106 | + openDownload: string = "" | ||
| 107 | + zhChannelPageImg: string = "" | ||
| 108 | + appStandImg: string = "" | ||
| 109 | + shareSummary: string = "" | ||
| 110 | + firstPublishTimeInt: string = "" | ||
| 111 | + rmhPlatform: string = "" | ||
| 112 | + creatorNameOsst: string = "" | ||
| 113 | + searchType: string = "" | ||
| 114 | + author: string = "" | ||
| 115 | + askAnswerFlag: string = "" | ||
| 116 | + seoTagName: string = "" | ||
| 117 | + weight: string = "" | ||
| 118 | + pageId: string = "" | ||
| 119 | + firstPublishTime: string = "" | ||
| 120 | + coverVImageUri: string = "" | ||
| 121 | + publishType: string = "" | ||
| 122 | + isVr: string = "" | ||
| 123 | + name: string = "" | ||
| 124 | + shareUrl: string = "" | ||
| 125 | + userType: string = "" | ||
| 126 | + firstProcessTime: string = "" | ||
| 127 | + hasRecord: string = "" | ||
| 128 | + shareTitleOsst: string = "" | ||
| 129 | + classify: string = "" | ||
| 130 | + itemType: string = "" | ||
| 131 | + nameOsst: string = "" | ||
| 132 | + districtCode: string = "" | ||
| 133 | + hidden: string = "" | ||
| 134 | + cityCode: string = "" | ||
| 135 | + liveType: string = "" | ||
| 136 | + appStyleImages: string = "" | ||
| 137 | + titleShow: string = "" | ||
| 138 | + cornerMark: string = "" | ||
| 139 | + creatorId: string = "" | ||
| 140 | + levelScore: string = "" | ||
| 141 | + description: string = "" | ||
| 142 | + liveStartTime: string = "" | ||
| 143 | + likeStyle: string = "" | ||
| 144 | + title: string = "" | ||
| 145 | + content: string = "" | ||
| 146 | + platform: string = "" | ||
| 147 | + duration: string = "0" | ||
| 148 | + shareDescriptionLiteral: string = "" | ||
| 149 | + createTimeInt: string = "" | ||
| 150 | + liveEndTime: string = "" | ||
| 151 | + topicTemplate: string = "" | ||
| 152 | + barrageEnable: string = "" | ||
| 153 | + introduction: string = "" | ||
| 154 | + notice: string = "" | ||
| 155 | + shareTitleLiteral: string = "" | ||
| 156 | + coverHImageUri: string = "" | ||
| 157 | + relId: string = "" | ||
| 158 | + classCode: string = "" | ||
| 159 | + grayScale: string = "" | ||
| 160 | + appStyle: number = -1 | ||
| 161 | + authTitle: string = "" | ||
| 162 | + provinceCode: string = "" | ||
| 163 | + tenancy: string = "" | ||
| 164 | + platformId: string = "" | ||
| 165 | + classSubName: string = "" | ||
| 166 | + recommended: string = "" | ||
| 167 | + descriptionLiteral: string = "" | ||
| 168 | + banControl: string = "" | ||
| 169 | + auditingStatus: string = "" | ||
| 170 | + planEndTime: string = "" | ||
| 171 | + speakControl: string = "" | ||
| 172 | + sourceName: string = "" | ||
| 173 | + shareImageBucket: string = "" | ||
| 174 | + landscape: string = "" | ||
| 175 | + | ||
| 6 | 176 | ||
| 7 | } | 177 | } |
This diff could not be displayed because it is too large.
-
Please register or login to post a comment