王士厅

稿件 缺省图-内容找不到了,对应缺省页缺失。

@@ -50,6 +50,8 @@ export struct ImageAndTextPageComponent { @@ -50,6 +50,8 @@ export struct ImageAndTextPageComponent {
50 // @State operationButtonList: string[] = ['comment', 'collect', 'share'] 50 // @State operationButtonList: string[] = ['comment', 'collect', 'share']
51 @State operationButtonList: string[] = [] 51 @State operationButtonList: string[] = []
52 @State isNetConnected: boolean = true 52 @State isNetConnected: boolean = true
  53 + @State emptyType: number = 1 // 缺省图类型
  54 + @State detailContentEmpty: boolean = false
53 @State info: Area | null = null 55 @State info: Area | null = null
54 @State likeNum: number = 0 56 @State likeNum: number = 0
55 @State reachEndIncreament: number = 0 57 @State reachEndIncreament: number = 0
@@ -141,10 +143,10 @@ export struct ImageAndTextPageComponent { @@ -141,10 +143,10 @@ export struct ImageAndTextPageComponent {
141 this.reachEndIncreament += 1 143 this.reachEndIncreament += 1
142 }) 144 })
143 145
144 - if (!this.isNetConnected) { 146 + if (!this.isNetConnected || this.detailContentEmpty) {
145 EmptyComponent({ 147 EmptyComponent({
146 - emptyType: 1,  
147 - emptyButton: true, 148 + emptyType: this.emptyType,
  149 + emptyButton: this.emptyType === 1 ? true : false,
148 retry: () => { 150 retry: () => {
149 this.getDetail() 151 this.getDetail()
150 } 152 }
@@ -171,12 +173,14 @@ export struct ImageAndTextPageComponent { @@ -171,12 +173,14 @@ export struct ImageAndTextPageComponent {
171 // 发布时间 173 // 发布时间
172 Column() { 174 Column() {
173 Row() { 175 Row() {
174 - Image(this.contentDetailData?.rmhInfo ? $r('app.media.logo_rmh') : $r('app.media.logo_rmrb'))  
175 - .width(80)  
176 - .height(28)  
177 - Text(this.publishTime)  
178 - .fontColor($r('app.color.color_B0B0B0'))  
179 - .fontSize(13) 176 + if(this.isNetConnected && !this.detailContentEmpty) {
  177 + Image(this.contentDetailData?.rmhInfo ? $r('app.media.logo_rmh') : $r('app.media.logo_rmrb'))
  178 + .width(80)
  179 + .height(28)
  180 + Text(this.publishTime)
  181 + .fontColor($r('app.color.color_B0B0B0'))
  182 + .fontSize(13)
  183 + }
180 } 184 }
181 .width(CommonConstants.FULL_WIDTH) 185 .width(CommonConstants.FULL_WIDTH)
182 .height(32) 186 .height(32)
@@ -202,6 +206,9 @@ export struct ImageAndTextPageComponent { @@ -202,6 +206,9 @@ export struct ImageAndTextPageComponent {
202 206
203 private async getDetail() { 207 private async getDetail() {
204 this.isNetConnected = NetworkUtil.isNetConnected() 208 this.isNetConnected = NetworkUtil.isNetConnected()
  209 + if(!this.isNetConnected) {
  210 + this.emptyType = 1
  211 + }
205 let contentId: string = '' 212 let contentId: string = ''
206 let relId: string = '' 213 let relId: string = ''
207 let relType: string = '' 214 let relType: string = ''
@@ -219,6 +226,12 @@ export struct ImageAndTextPageComponent { @@ -219,6 +226,12 @@ export struct ImageAndTextPageComponent {
219 226
220 } 227 }
221 let detailBeans = await DetailViewModel.getDetailPageData(relId, contentId, relType) 228 let detailBeans = await DetailViewModel.getDetailPageData(relId, contentId, relType)
  229 + // 判断内容是否已下线,空数组表示下线
  230 + this.detailContentEmpty = detailBeans.length === 0 ? true : false
  231 + if(this.detailContentEmpty) {
  232 + this.emptyType = 18
  233 + }
  234 + console.log(TAG, JSON.stringify(detailBeans))
222 if (detailBeans && detailBeans.length > 0) { 235 if (detailBeans && detailBeans.length > 0) {
223 this.contentDetailData = detailBeans[0]; 236 this.contentDetailData = detailBeans[0];
224 let dateTime = 237 let dateTime =
@@ -66,7 +66,6 @@ export struct Card4Component { @@ -66,7 +66,6 @@ export struct Card4Component {
66 .textIndent(this.contentDTO.newTags?.length < 5 && this.contentDTO.newTags?.length > 2 ? 58 : 66 .textIndent(this.contentDTO.newTags?.length < 5 && this.contentDTO.newTags?.length > 2 ? 58 :
67 (this.contentDTO.newTags?.length != 0 && this.contentDTO.newTags?.length) || 67 (this.contentDTO.newTags?.length != 0 && this.contentDTO.newTags?.length) ||
68 this.contentDTO.objectType == '5' ? 30 : 0) 68 this.contentDTO.objectType == '5' ? 30 : 0)
69 - .alignContent(Alignment.TopStart)// 超出的部分显示省略号。  
70 //三图 69 //三图
71 Stack(){ 70 Stack(){
72 Row() { 71 Row() {
@@ -63,7 +63,6 @@ export struct Card9Component { @@ -63,7 +63,6 @@ export struct Card9Component {
63 .textIndent(this.contentDTO.newTags?.length < 5 && this.contentDTO.newTags?.length > 2 ? 58 : 63 .textIndent(this.contentDTO.newTags?.length < 5 && this.contentDTO.newTags?.length > 2 ? 58 :
64 (this.contentDTO.newTags?.length != 0 && this.contentDTO.newTags?.length) || 64 (this.contentDTO.newTags?.length != 0 && this.contentDTO.newTags?.length) ||
65 this.contentDTO.objectType == '5' ? 30 : 0) 65 this.contentDTO.objectType == '5' ? 30 : 0)
66 - .alignContent(Alignment.TopStart)  
67 66
68 } 67 }
69 // 大图 68 // 大图
@@ -23,18 +23,11 @@ export class DetailViewModel extends BaseViewModel { @@ -23,18 +23,11 @@ export class DetailViewModel extends BaseViewModel {
23 Logger.debug(TAG, 'getDetailPageData contentId: ' + contentId); 23 Logger.debug(TAG, 'getDetailPageData contentId: ' + contentId);
24 return new Promise<ContentDetailDTO[]>((success, error) => { 24 return new Promise<ContentDetailDTO[]>((success, error) => {
25 PageRepository.fetchDetailData(relId, contentId, relType).then((resDTO: ResponseDTO<ContentDetailDTO[]>) => { 25 PageRepository.fetchDetailData(relId, contentId, relType).then((resDTO: ResponseDTO<ContentDetailDTO[]>) => {
26 - if (!resDTO || !resDTO.data) {  
27 - Logger.error(TAG, 'getDetailPageData then resDTO is empty');  
28 - error('resDTO is empty');  
29 - return  
30 - }  
31 - if (resDTO.code != 0) {  
32 - Logger.error(TAG, `getDetailPageData then code:${resDTO.code}, message:${resDTO.message}`);  
33 - error('resDTO Response Code is failure');  
34 - return  
35 - }  
36 - Logger.info(TAG, "getDetailPageData then,resDTO.timeStamp:" + resDTO.timestamp);  
37 - success(resDTO.data); 26 + if(resDTO.data) {
  27 + success(resDTO.data)
  28 + } else {
  29 + success([] as ContentDetailDTO[])
  30 + };
38 }).catch((err: Error) => { 31 }).catch((err: Error) => {
39 Logger.error(TAG, `getDetailPageData catch, error.name : ${err.name}, error.message:${err.message}`); 32 Logger.error(TAG, `getDetailPageData catch, error.name : ${err.name}, error.message:${err.message}`);
40 error(err); 33 error(err);