fanmingyou3_wd

1.添加瀑布流组件,

2.适配折叠屏
1 import { GroupDTO } from 'wdBean'; 1 import { GroupDTO } from 'wdBean';
2 -import { LazyDataSource, Logger } from 'wdKit'; 2 +import { BreakpointConstants } from 'wdConstant';
  3 +import { BreakpointSystem, LazyDataSource, Logger } from 'wdKit';
3 import { PageViewModel } from '../viewmodel/PageViewModel'; 4 import { PageViewModel } from '../viewmodel/PageViewModel';
4 import { PageComponent } from './PageComponent'; 5 import { PageComponent } from './PageComponent';
5 6
@@ -8,10 +9,16 @@ const TAG = 'Index'; @@ -8,10 +9,16 @@ const TAG = 'Index';
8 @Entry 9 @Entry
9 @Component 10 @Component
10 struct Index { 11 struct Index {
  12 + private breakpointSystem: BreakpointSystem = new BreakpointSystem()
  13 + @StorageLink('currentBreakpoint') @Watch('watchCurrentBreakpoint') currentBreakpoint: string = BreakpointConstants.BREAKPOINT_XS;
11 @State groupList: LazyDataSource<GroupDTO> = new LazyDataSource(); 14 @State groupList: LazyDataSource<GroupDTO> = new LazyDataSource();
12 // @Prop groupList: GroupDTO[] = []; 15 // @Prop groupList: GroupDTO[] = [];
13 @State message: string = 'Hello Sight'; 16 @State message: string = 'Hello Sight';
14 17
  18 + watchCurrentBreakpoint() {
  19 + Logger.info(TAG, `watchCurrentBreakpoint, this.currentBreakpoint: ${this.currentBreakpoint}`);
  20 + }
  21 +
15 build() { 22 build() {
16 Column() { 23 Column() {
17 PageComponent({ groupList: this.groupList }) 24 PageComponent({ groupList: this.groupList })
@@ -19,6 +26,7 @@ struct Index { @@ -19,6 +26,7 @@ struct Index {
19 } 26 }
20 27
21 aboutToAppear() { 28 aboutToAppear() {
  29 + this.breakpointSystem.register()
22 // Logger.info(TAG, `aboutToAppear, this.currentTabIndex1: ${this.currentNavIndex}`); 30 // Logger.info(TAG, `aboutToAppear, this.currentTabIndex1: ${this.currentNavIndex}`);
23 // PageViewModel.getGroupDTO(); 31 // PageViewModel.getGroupDTO();
24 let groupDto = PageViewModel.getGroupDTO(getContext(this)) 32 let groupDto = PageViewModel.getGroupDTO(getContext(this))
@@ -28,6 +36,7 @@ struct Index { @@ -28,6 +36,7 @@ struct Index {
28 } 36 }
29 37
30 aboutToDisappear() { 38 aboutToDisappear() {
  39 + this.breakpointSystem.unregister()
31 Logger.info(TAG, 'aboutToDisappear'); 40 Logger.info(TAG, 'aboutToDisappear');
32 } 41 }
33 42
@@ -8,6 +8,7 @@ import { @@ -8,6 +8,7 @@ import {
8 LoadingComponent, 8 LoadingComponent,
9 SingleColumnComponent, 9 SingleColumnComponent,
10 SingleRow03Component, 10 SingleRow03Component,
  11 + WaterFlowComponent,
11 } from 'wdComponent'; 12 } from 'wdComponent';
12 import { CommonConstants } from 'wdConstant'; 13 import { CommonConstants } from 'wdConstant';
13 import { LazyDataSource, Logger, StringUtils } from 'wdKit'; 14 import { LazyDataSource, Logger, StringUtils } from 'wdKit';
@@ -56,6 +57,8 @@ export struct PageComponent { @@ -56,6 +57,8 @@ export struct PageComponent {
56 SingleColumnComponent({ compDTO: compDTO }) 57 SingleColumnComponent({ compDTO: compDTO })
57 } else if (compDTO.compStyle === CompStyle.Grid_Layout_01) { 58 } else if (compDTO.compStyle === CompStyle.Grid_Layout_01) {
58 GridLayout01Component({ dataList: compDTO.operDataList }) 59 GridLayout01Component({ dataList: compDTO.operDataList })
  60 + } else if (compDTO.compStyle === CompStyle.Masonry_Layout_01) {
  61 + WaterFlowComponent({ compDTO: compDTO })
59 } else { 62 } else {
60 // todo:组件未实现 / Component Not Implemented 63 // todo:组件未实现 / Component Not Implemented
61 Text(compDTO.compStyle) 64 Text(compDTO.compStyle)
@@ -9,6 +9,155 @@ @@ -9,6 +9,155 @@
9 "backgroundColor": "", 9 "backgroundColor": "",
10 "backgroundImgUrl": "", 10 "backgroundImgUrl": "",
11 "cityCode": "", 11 "cityCode": "",
  12 + "compStyle": "Carousel_Layout-01",
  13 + "compType": "CAROUSEL_LAYOUT",
  14 + "dataSourceRequest": [
  15 +
  16 + ],
  17 + "districtCode": "",
  18 + "extraData": "",
  19 + "hasAdInfo": 0,
  20 + "id": 31,
  21 + "imgSize": "",
  22 + "innerUrl": "",
  23 + "linkUrl": "",
  24 + "meddleDataList": [
  25 +
  26 + ],
  27 + "name": "为你推荐feed",
  28 + "objectId": "",
  29 + "objectTitle": "",
  30 + "objectType": null,
  31 + "operDataList": [
  32 + {
  33 + "cityCode": "",
  34 + "coverSize": "1920*1080",
  35 + "coverType": 1,
  36 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231219/image/live/297b5282d80b40e980cc4b0142d38475.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  37 + "description": "甘肃积石山6.2级地震新闻发布会",
  38 + "districtCode": "",
  39 + "endTime": "",
  40 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231219/image/live/297b5282d80b40e980cc4b0142d38475.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  41 + "heatValue": "",
  42 + "innerUrl": "",
  43 + "landscape": 1,
  44 + "lengthTime": null,
  45 + "linkUrl": "",
  46 + "openLikes": 0,
  47 + "openUrl": "http://livewatch-prod.aikan.pdnews.cn/tr_lud/5404912f99bf4703ab070752b507cc64_origin.m3u8?auth_key=1705628416-0-0-c7f5854d6cbe801578009bfa44757f0d",
  48 + "pageId": "",
  49 + "playUrls": [
  50 +
  51 + ],
  52 + "programAuth": "2004557",
  53 + "programId": "20000003744",
  54 + "programName": "",
  55 + "programSource": 5,
  56 + "programType": 2,
  57 + "provinceCode": "",
  58 + "rankingList": [
  59 +
  60 + ],
  61 + "showTitleEd": "",
  62 + "showTitleIng": "",
  63 + "showTitleNo": "",
  64 + "sortValue": null,
  65 + "startTime": "2023-12-19 09:00:00",
  66 + "subType": "",
  67 + "subtitle": "",
  68 + "title": "甘肃积石山县6.2级地震救援进行时",
  69 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231219/image/live/41e6079d95ff459a9adcf1a16ae0b004.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  70 + },
  71 + {
  72 + "cityCode": "",
  73 + "coverSize": "1920*1080",
  74 + "coverType": 1,
  75 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231206/image/live/f65ec0e2d5014cd2a282d039a0f804f7.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  76 + "description": "“大雪”至,冬意日浓。从冰封千里的纳木错到白雪皑皑的雪乡,从吉林绝美雾凇到毕棚沟雪山冰川,从崇礼惊险的滑雪盛宴到银装素裹的老君山,从延吉的民族风情到滕王阁的落霞孤鹜,看广州、惠州依然花开日暖,一起云游幅员辽阔的壮美神州!",
  77 + "districtCode": "",
  78 + "endTime": "",
  79 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231206/image/live/f65ec0e2d5014cd2a282d039a0f804f7.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  80 + "heatValue": "",
  81 + "innerUrl": "",
  82 + "landscape": 1,
  83 + "lengthTime": null,
  84 + "linkUrl": "",
  85 + "openLikes": 0,
  86 + "openUrl": "",
  87 + "pageId": "",
  88 + "playUrls": [
  89 +
  90 + ],
  91 + "programAuth": "2004557",
  92 + "programId": "20000003614",
  93 + "programName": "",
  94 + "programSource": 5,
  95 + "programType": 2,
  96 + "provinceCode": "",
  97 + "rankingList": [
  98 +
  99 + ],
  100 + "showTitleEd": "",
  101 + "showTitleIng": "",
  102 + "showTitleNo": "",
  103 + "sortValue": null,
  104 + "startTime": "2023-12-07 09:00:00",
  105 + "subType": "",
  106 + "subtitle": "",
  107 + "title": "雪花飞舞,漫天银色",
  108 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231206/image/live/bbe6d821e92b48919d90c7dadfd1f05a.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  109 + },
  110 + {
  111 + "cityCode": "",
  112 + "coverSize": "",
  113 + "coverType": 1,
  114 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231109/image/live/04906f6f09aa44a9be2a889eec88dc56.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  115 + "description": "秋意尚未尽消,冬日已翩然而至。秋冬之交的校园在你想象中是什么颜色的?人民日报新媒体文旅系列直播继续出发,联合国内9所高校发出漫步邀约,带你沉浸式云游青春高校,一起看秋末冬初的校园风光和大学生活。",
  116 + "districtCode": "",
  117 + "endTime": "",
  118 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231109/image/live/04906f6f09aa44a9be2a889eec88dc56.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  119 + "heatValue": "",
  120 + "innerUrl": "",
  121 + "landscape": 1,
  122 + "lengthTime": null,
  123 + "linkUrl": "",
  124 + "openLikes": 0,
  125 + "openUrl": "",
  126 + "pageId": "",
  127 + "playUrls": [
  128 +
  129 + ],
  130 + "programAuth": "2004557",
  131 + "programId": "20000003394",
  132 + "programName": "",
  133 + "programSource": 5,
  134 + "programType": 2,
  135 + "provinceCode": "",
  136 + "rankingList": [
  137 +
  138 + ],
  139 + "showTitleEd": "",
  140 + "showTitleIng": "",
  141 + "showTitleNo": "",
  142 + "sortValue": null,
  143 + "startTime": "2023-11-12 13:50:48",
  144 + "subType": "",
  145 + "subtitle": "",
  146 + "title": "跟着高校去旅行",
  147 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231109/image/live/102e6eb9356b4ef19405b04c1f6ff875.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  148 + }
  149 + ],
  150 + "pageId": null,
  151 + "posterSize": "",
  152 + "posterUrl": "",
  153 + "provinceCode": "",
  154 + "sortValue": 2,
  155 + "subType": ""
  156 + },
  157 + {
  158 + "backgroundColor": "",
  159 + "backgroundImgUrl": "",
  160 + "cityCode": "",
12 "compStyle": "Single_Row-03", 161 "compStyle": "Single_Row-03",
13 "compType": "SINGLE_ROW", 162 "compType": "SINGLE_ROW",
14 "dataSourceRequest": [ 163 "dataSourceRequest": [
@@ -702,15 +851,48 @@ @@ -702,15 +851,48 @@
702 "backgroundColor": "", 851 "backgroundColor": "",
703 "backgroundImgUrl": "", 852 "backgroundImgUrl": "",
704 "cityCode": "", 853 "cityCode": "",
705 - "compStyle": "Carousel_Layout-01",  
706 - "compType": "CAROUSEL_LAYOUT", 854 + "compStyle": "Label-03",
  855 + "compType": "LABEL",
  856 + "dataSourceRequest": [
  857 +
  858 + ],
  859 + "districtCode": "",
  860 + "extraData": "{\"titleIconUrl\":\"\",\"title\":\"精彩回放\"}",
  861 + "hasAdInfo": 0,
  862 + "id": 11,
  863 + "imgSize": "",
  864 + "innerUrl": "",
  865 + "linkUrl": "",
  866 + "meddleDataList": [
  867 +
  868 + ],
  869 + "name": "精彩回放标题",
  870 + "objectId": "",
  871 + "objectTitle": "",
  872 + "objectType": null,
  873 + "operDataList": [
  874 +
  875 + ],
  876 + "pageId": null,
  877 + "posterSize": "",
  878 + "posterUrl": "",
  879 + "provinceCode": "",
  880 + "sortValue": 5,
  881 + "subType": ""
  882 + },
  883 + {
  884 + "backgroundColor": "",
  885 + "backgroundImgUrl": "",
  886 + "cityCode": "",
  887 + "compStyle": "Single_Column-01",
  888 + "compType": "SINGLE_COLUMN",
707 "dataSourceRequest": [ 889 "dataSourceRequest": [
708 890
709 ], 891 ],
710 "districtCode": "", 892 "districtCode": "",
711 "extraData": "", 893 "extraData": "",
712 "hasAdInfo": 0, 894 "hasAdInfo": 0,
713 - "id": 31, 895 + "id": 12,
714 "imgSize": "", 896 "imgSize": "",
715 "innerUrl": "", 897 "innerUrl": "",
716 "linkUrl": "", 898 "linkUrl": "",
@@ -726,24 +908,24 @@ @@ -726,24 +908,24 @@
726 "cityCode": "", 908 "cityCode": "",
727 "coverSize": "1920*1080", 909 "coverSize": "1920*1080",
728 "coverType": 1, 910 "coverType": 1,
729 - "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231219/image/live/297b5282d80b40e980cc4b0142d38475.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
730 - "description": "甘肃积石山6.2级地震新闻发布会", 911 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  912 + "description": "随着生活水平的提高和女性乳腺疾病宣传的深入,很多女性朋友不再是“发现疾病后才去就医”,而是越来越重视乳腺的定期检查,而钼靶检查也因为其简便快速等优点被多数人选择。本次直播,复旦大学附属华山医院放射科技师王益芳将针对患者常问的相关问题进行解答。",
731 "districtCode": "", 913 "districtCode": "",
732 "endTime": "", 914 "endTime": "",
733 - "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231219/image/live/297b5282d80b40e980cc4b0142d38475.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg", 915 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
734 "heatValue": "", 916 "heatValue": "",
735 "innerUrl": "", 917 "innerUrl": "",
736 "landscape": 1, 918 "landscape": 1,
737 "lengthTime": null, 919 "lengthTime": null,
738 "linkUrl": "", 920 "linkUrl": "",
739 "openLikes": 0, 921 "openLikes": 0,
740 - "openUrl": "http://livewatch-prod.aikan.pdnews.cn/tr_lud/5404912f99bf4703ab070752b507cc64_origin.m3u8?auth_key=1705628416-0-0-c7f5854d6cbe801578009bfa44757f0d", 922 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/e77d054073f543ffbc8f296d4975189f_lud/5362.m3u8",
741 "pageId": "", 923 "pageId": "",
742 "playUrls": [ 924 "playUrls": [
743 925
744 ], 926 ],
745 "programAuth": "2004557", 927 "programAuth": "2004557",
746 - "programId": "20000003744", 928 + "programId": "20000003739",
747 "programName": "", 929 "programName": "",
748 "programSource": 5, 930 "programSource": 5,
749 "programType": 2, 931 "programType": 2,
@@ -755,21 +937,21 @@ @@ -755,21 +937,21 @@
755 "showTitleIng": "", 937 "showTitleIng": "",
756 "showTitleNo": "", 938 "showTitleNo": "",
757 "sortValue": null, 939 "sortValue": null,
758 - "startTime": "2023-12-19 09:00:00", 940 + "startTime": "2023-12-19 12:00:00",
759 "subType": "", 941 "subType": "",
760 "subtitle": "", 942 "subtitle": "",
761 - "title": "甘肃积石山县6.2级地震救援进行时",  
762 - "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231219/image/live/41e6079d95ff459a9adcf1a16ae0b004.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg" 943 + "title": "医点就通 | 关爱女性健康,聊聊乳腺钼靶检查",
  944 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/a51c97be4472435f919b9d347a69442d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
763 }, 945 },
764 { 946 {
765 "cityCode": "", 947 "cityCode": "",
766 - "coverSize": "1920*1080", 948 + "coverSize": "2271*1278",
767 "coverType": 1, 949 "coverType": 1,
768 - "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231206/image/live/f65ec0e2d5014cd2a282d039a0f804f7.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
769 - "description": "“大雪”至,冬意日浓。从冰封千里的纳木错到白雪皑皑的雪乡,从吉林绝美雾凇到毕棚沟雪山冰川,从崇礼惊险的滑雪盛宴到银装素裹的老君山,从延吉的民族风情到滕王阁的落霞孤鹜,看广州、惠州依然花开日暖,一起云游幅员辽阔的壮美神州!", 950 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  951 + "description": "“弦韵乌审,暖才于心”,通过马头琴管弦乐、原生态组合曲、传统民歌合唱、马头琴独奏等多种艺术表现形式,充分展现马头琴音乐的悠扬之美、力量之美,为高校师生带来一场别开生面的音乐盛宴。",
770 "districtCode": "", 952 "districtCode": "",
771 "endTime": "", 953 "endTime": "",
772 - "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231206/image/live/f65ec0e2d5014cd2a282d039a0f804f7.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg", 954 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
773 "heatValue": "", 955 "heatValue": "",
774 "innerUrl": "", 956 "innerUrl": "",
775 "landscape": 1, 957 "landscape": 1,
@@ -782,7 +964,7 @@ @@ -782,7 +964,7 @@
782 964
783 ], 965 ],
784 "programAuth": "2004557", 966 "programAuth": "2004557",
785 - "programId": "20000003614", 967 + "programId": "20000003702",
786 "programName": "", 968 "programName": "",
787 "programSource": 5, 969 "programSource": 5,
788 "programType": 2, 970 "programType": 2,
@@ -794,21 +976,21 @@ @@ -794,21 +976,21 @@
794 "showTitleIng": "", 976 "showTitleIng": "",
795 "showTitleNo": "", 977 "showTitleNo": "",
796 "sortValue": null, 978 "sortValue": null,
797 - "startTime": "2023-12-07 09:00:00", 979 + "startTime": "",
798 "subType": "", 980 "subType": "",
799 "subtitle": "", 981 "subtitle": "",
800 - "title": "雪花飞舞,漫天银色",  
801 - "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231206/image/live/bbe6d821e92b48919d90c7dadfd1f05a.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg" 982 + "title": "“弦韵乌审,暖才于心”中国•乌审马头琴交响乐团走进高校",
  983 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/d0326a10b7504a34964aff0962d5ad7d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
802 }, 984 },
803 { 985 {
804 "cityCode": "", 986 "cityCode": "",
805 - "coverSize": "", 987 + "coverSize": "600*338",
806 "coverType": 1, 988 "coverType": 1,
807 - "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231109/image/live/04906f6f09aa44a9be2a889eec88dc56.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
808 - "description": "秋意尚未尽消,冬日已翩然而至。秋冬之交的校园在你想象中是什么颜色的?人民日报新媒体文旅系列直播继续出发,联合国内9所高校发出漫步邀约,带你沉浸式云游青春高校,一起看秋末冬初的校园风光和大学生活。", 989 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  990 + "description": "国务院新闻办公室于2023年12月18日(星期一)下午3时举行国务院政策例行吹风会,请商务部副部长盛秋平和海关总署、市场监管总局、金融监管总局有关负责人介绍加快内外贸一体化发展有关情况,并答记者问。",
809 "districtCode": "", 991 "districtCode": "",
810 "endTime": "", 992 "endTime": "",
811 - "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231109/image/live/04906f6f09aa44a9be2a889eec88dc56.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg", 993 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
812 "heatValue": "", 994 "heatValue": "",
813 "innerUrl": "", 995 "innerUrl": "",
814 "landscape": 1, 996 "landscape": 1,
@@ -821,7 +1003,7 @@ @@ -821,7 +1003,7 @@
821 1003
822 ], 1004 ],
823 "programAuth": "2004557", 1005 "programAuth": "2004557",
824 - "programId": "20000003394", 1006 + "programId": "20000003737",
825 "programName": "", 1007 "programName": "",
826 "programSource": 5, 1008 "programSource": 5,
827 "programType": 2, 1009 "programType": 2,
@@ -833,189 +1015,7 @@ @@ -833,189 +1015,7 @@
833 "showTitleIng": "", 1015 "showTitleIng": "",
834 "showTitleNo": "", 1016 "showTitleNo": "",
835 "sortValue": null, 1017 "sortValue": null,
836 - "startTime": "2023-11-12 13:50:48",  
837 - "subType": "",  
838 - "subtitle": "",  
839 - "title": "跟着高校去旅行",  
840 - "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231109/image/live/102e6eb9356b4ef19405b04c1f6ff875.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"  
841 - }  
842 - ],  
843 - "pageId": null,  
844 - "posterSize": "",  
845 - "posterUrl": "",  
846 - "provinceCode": "",  
847 - "sortValue": 2,  
848 - "subType": ""  
849 - },  
850 - {  
851 - "backgroundColor": "",  
852 - "backgroundImgUrl": "",  
853 - "cityCode": "",  
854 - "compStyle": "Label-03",  
855 - "compType": "LABEL",  
856 - "dataSourceRequest": [  
857 -  
858 - ],  
859 - "districtCode": "",  
860 - "extraData": "{\"titleIconUrl\":\"\",\"title\":\"精彩回放\"}",  
861 - "hasAdInfo": 0,  
862 - "id": 11,  
863 - "imgSize": "",  
864 - "innerUrl": "",  
865 - "linkUrl": "",  
866 - "meddleDataList": [  
867 -  
868 - ],  
869 - "name": "精彩回放标题",  
870 - "objectId": "",  
871 - "objectTitle": "",  
872 - "objectType": null,  
873 - "operDataList": [  
874 -  
875 - ],  
876 - "pageId": null,  
877 - "posterSize": "",  
878 - "posterUrl": "",  
879 - "provinceCode": "",  
880 - "sortValue": 5,  
881 - "subType": ""  
882 - },  
883 - {  
884 - "backgroundColor": "",  
885 - "backgroundImgUrl": "",  
886 - "cityCode": "",  
887 - "compStyle": "Single_Column-02",  
888 - "compType": "SINGLE_COLUMN",  
889 - "dataSourceRequest": [  
890 -  
891 - ],  
892 - "districtCode": "",  
893 - "extraData": "",  
894 - "hasAdInfo": 0,  
895 - "id": 12,  
896 - "imgSize": "",  
897 - "innerUrl": "",  
898 - "linkUrl": "",  
899 - "meddleDataList": [  
900 -  
901 - ],  
902 - "name": "为你推荐feed",  
903 - "objectId": "",  
904 - "objectTitle": "",  
905 - "objectType": null,  
906 - "operDataList": [  
907 - {  
908 - "cityCode": "",  
909 - "coverSize": "1920*1080",  
910 - "coverType": 1,  
911 - "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
912 - "description": "随着生活水平的提高和女性乳腺疾病宣传的深入,很多女性朋友不再是“发现疾病后才去就医”,而是越来越重视乳腺的定期检查,而钼靶检查也因为其简便快速等优点被多数人选择。本次直播,复旦大学附属华山医院放射科技师王益芳将针对患者常问的相关问题进行解答。",  
913 - "districtCode": "",  
914 - "endTime": "",  
915 - "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
916 - "heatValue": "",  
917 - "innerUrl": "",  
918 - "landscape": 1,  
919 - "lengthTime": null,  
920 - "linkUrl": "",  
921 - "openLikes": 0,  
922 - "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/e77d054073f543ffbc8f296d4975189f_lud/5362.m3u8",  
923 - "pageId": "",  
924 - "playUrls": [  
925 -  
926 - ],  
927 - "programAuth": "2004557",  
928 - "programId": "20000003739",  
929 - "programName": "",  
930 - "programSource": 5,  
931 - "programType": 2,  
932 - "provinceCode": "",  
933 - "rankingList": [  
934 -  
935 - ],  
936 - "showTitleEd": "",  
937 - "showTitleIng": "",  
938 - "showTitleNo": "",  
939 - "sortValue": null,  
940 - "startTime": "2023-12-19 12:00:00",  
941 - "subType": "",  
942 - "subtitle": "",  
943 - "title": "医点就通 | 关爱女性健康,聊聊乳腺钼靶检查",  
944 - "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/a51c97be4472435f919b9d347a69442d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"  
945 - },  
946 - {  
947 - "cityCode": "",  
948 - "coverSize": "2271*1278",  
949 - "coverType": 1,  
950 - "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
951 - "description": "“弦韵乌审,暖才于心”,通过马头琴管弦乐、原生态组合曲、传统民歌合唱、马头琴独奏等多种艺术表现形式,充分展现马头琴音乐的悠扬之美、力量之美,为高校师生带来一场别开生面的音乐盛宴。",  
952 - "districtCode": "",  
953 - "endTime": "",  
954 - "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
955 - "heatValue": "",  
956 - "innerUrl": "",  
957 - "landscape": 1,  
958 - "lengthTime": null,  
959 - "linkUrl": "",  
960 - "openLikes": 0,  
961 - "openUrl": "",  
962 - "pageId": "",  
963 - "playUrls": [  
964 -  
965 - ],  
966 - "programAuth": "2004557",  
967 - "programId": "20000003702",  
968 - "programName": "",  
969 - "programSource": 5,  
970 - "programType": 2,  
971 - "provinceCode": "",  
972 - "rankingList": [  
973 -  
974 - ],  
975 - "showTitleEd": "",  
976 - "showTitleIng": "",  
977 - "showTitleNo": "",  
978 - "sortValue": null,  
979 - "startTime": "",  
980 - "subType": "",  
981 - "subtitle": "",  
982 - "title": "“弦韵乌审,暖才于心”中国•乌审马头琴交响乐团走进高校",  
983 - "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/d0326a10b7504a34964aff0962d5ad7d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"  
984 - },  
985 - {  
986 - "cityCode": "",  
987 - "coverSize": "600*338",  
988 - "coverType": 1,  
989 - "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
990 - "description": "国务院新闻办公室于2023年12月18日(星期一)下午3时举行国务院政策例行吹风会,请商务部副部长盛秋平和海关总署、市场监管总局、金融监管总局有关负责人介绍加快内外贸一体化发展有关情况,并答记者问。",  
991 - "districtCode": "",  
992 - "endTime": "",  
993 - "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",  
994 - "heatValue": "",  
995 - "innerUrl": "",  
996 - "landscape": 1,  
997 - "lengthTime": null,  
998 - "linkUrl": "",  
999 - "openLikes": 0,  
1000 - "openUrl": "",  
1001 - "pageId": "",  
1002 - "playUrls": [  
1003 -  
1004 - ],  
1005 - "programAuth": "2004557",  
1006 - "programId": "20000003737",  
1007 - "programName": "",  
1008 - "programSource": 5,  
1009 - "programType": 2,  
1010 - "provinceCode": "",  
1011 - "rankingList": [  
1012 -  
1013 - ],  
1014 - "showTitleEd": "",  
1015 - "showTitleIng": "",  
1016 - "showTitleNo": "",  
1017 - "sortValue": null,  
1018 - "startTime": "2023-12-18 15:09:00", 1018 + "startTime": "2023-12-18 15:09:00",
1019 "subType": "", 1019 "subType": "",
1020 "subtitle": "", 1020 "subtitle": "",
1021 "title": "国新办发布会|介绍加快内外贸一体化发展有关情况", 1021 "title": "国新办发布会|介绍加快内外贸一体化发展有关情况",
@@ -1821,6 +1821,860 @@ @@ -1821,6 +1821,860 @@
1821 "provinceCode": "", 1821 "provinceCode": "",
1822 "sortValue": 2, 1822 "sortValue": 2,
1823 "subType": "" 1823 "subType": ""
  1824 + },
  1825 + {
  1826 + "backgroundColor": "",
  1827 + "backgroundImgUrl": "",
  1828 + "cityCode": "",
  1829 + "compStyle": "Single_Column-02",
  1830 + "compType": "SINGLE_COLUMN",
  1831 + "dataSourceRequest": [
  1832 +
  1833 + ],
  1834 + "districtCode": "",
  1835 + "extraData": "",
  1836 + "hasAdInfo": 0,
  1837 + "id": 12,
  1838 + "imgSize": "",
  1839 + "innerUrl": "",
  1840 + "linkUrl": "",
  1841 + "meddleDataList": [
  1842 +
  1843 + ],
  1844 + "name": "为你推荐feed",
  1845 + "objectId": "",
  1846 + "objectTitle": "",
  1847 + "objectType": null,
  1848 + "operDataList": [
  1849 + {
  1850 + "cityCode": "",
  1851 + "coverSize": "1920*1080",
  1852 + "coverType": 1,
  1853 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1854 + "description": "随着生活水平的提高和女性乳腺疾病宣传的深入,很多女性朋友不再是“发现疾病后才去就医”,而是越来越重视乳腺的定期检查,而钼靶检查也因为其简便快速等优点被多数人选择。本次直播,复旦大学附属华山医院放射科技师王益芳将针对患者常问的相关问题进行解答。",
  1855 + "districtCode": "",
  1856 + "endTime": "",
  1857 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1858 + "heatValue": "",
  1859 + "innerUrl": "",
  1860 + "landscape": 1,
  1861 + "lengthTime": null,
  1862 + "linkUrl": "",
  1863 + "openLikes": 0,
  1864 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/e77d054073f543ffbc8f296d4975189f_lud/5362.m3u8",
  1865 + "pageId": "",
  1866 + "playUrls": [
  1867 +
  1868 + ],
  1869 + "programAuth": "2004557",
  1870 + "programId": "20000003739",
  1871 + "programName": "",
  1872 + "programSource": 5,
  1873 + "programType": 2,
  1874 + "provinceCode": "",
  1875 + "rankingList": [
  1876 +
  1877 + ],
  1878 + "showTitleEd": "",
  1879 + "showTitleIng": "",
  1880 + "showTitleNo": "",
  1881 + "sortValue": null,
  1882 + "startTime": "2023-12-19 12:00:00",
  1883 + "subType": "",
  1884 + "subtitle": "",
  1885 + "title": "医点就通 | 关爱女性健康,聊聊乳腺钼靶检查",
  1886 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/a51c97be4472435f919b9d347a69442d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  1887 + },
  1888 + {
  1889 + "cityCode": "",
  1890 + "coverSize": "2271*1278",
  1891 + "coverType": 1,
  1892 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1893 + "description": "“弦韵乌审,暖才于心”,通过马头琴管弦乐、原生态组合曲、传统民歌合唱、马头琴独奏等多种艺术表现形式,充分展现马头琴音乐的悠扬之美、力量之美,为高校师生带来一场别开生面的音乐盛宴。",
  1894 + "districtCode": "",
  1895 + "endTime": "",
  1896 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1897 + "heatValue": "",
  1898 + "innerUrl": "",
  1899 + "landscape": 1,
  1900 + "lengthTime": null,
  1901 + "linkUrl": "",
  1902 + "openLikes": 0,
  1903 + "openUrl": "",
  1904 + "pageId": "",
  1905 + "playUrls": [
  1906 +
  1907 + ],
  1908 + "programAuth": "2004557",
  1909 + "programId": "20000003702",
  1910 + "programName": "",
  1911 + "programSource": 5,
  1912 + "programType": 2,
  1913 + "provinceCode": "",
  1914 + "rankingList": [
  1915 +
  1916 + ],
  1917 + "showTitleEd": "",
  1918 + "showTitleIng": "",
  1919 + "showTitleNo": "",
  1920 + "sortValue": null,
  1921 + "startTime": "",
  1922 + "subType": "",
  1923 + "subtitle": "",
  1924 + "title": "“弦韵乌审,暖才于心”中国•乌审马头琴交响乐团走进高校",
  1925 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/d0326a10b7504a34964aff0962d5ad7d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  1926 + },
  1927 + {
  1928 + "cityCode": "",
  1929 + "coverSize": "600*338",
  1930 + "coverType": 1,
  1931 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1932 + "description": "国务院新闻办公室于2023年12月18日(星期一)下午3时举行国务院政策例行吹风会,请商务部副部长盛秋平和海关总署、市场监管总局、金融监管总局有关负责人介绍加快内外贸一体化发展有关情况,并答记者问。",
  1933 + "districtCode": "",
  1934 + "endTime": "",
  1935 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1936 + "heatValue": "",
  1937 + "innerUrl": "",
  1938 + "landscape": 1,
  1939 + "lengthTime": null,
  1940 + "linkUrl": "",
  1941 + "openLikes": 0,
  1942 + "openUrl": "",
  1943 + "pageId": "",
  1944 + "playUrls": [
  1945 +
  1946 + ],
  1947 + "programAuth": "2004557",
  1948 + "programId": "20000003737",
  1949 + "programName": "",
  1950 + "programSource": 5,
  1951 + "programType": 2,
  1952 + "provinceCode": "",
  1953 + "rankingList": [
  1954 +
  1955 + ],
  1956 + "showTitleEd": "",
  1957 + "showTitleIng": "",
  1958 + "showTitleNo": "",
  1959 + "sortValue": null,
  1960 + "startTime": "2023-12-18 15:09:00",
  1961 + "subType": "",
  1962 + "subtitle": "",
  1963 + "title": "国新办发布会|介绍加快内外贸一体化发展有关情况",
  1964 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/3160f19a3247405ea7151604fd87f0e7.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  1965 + },
  1966 + {
  1967 + "cityCode": "",
  1968 + "coverSize": "1600*900",
  1969 + "coverType": 1,
  1970 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/038c195d6dd84a47bb7962bd2e897c87.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1971 + "description": "云上看呆萌“滚滚”的日常,一起来看国宝大熊猫的精彩生活、搞笑瞬间和治愈时刻。",
  1972 + "districtCode": "",
  1973 + "endTime": "",
  1974 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/038c195d6dd84a47bb7962bd2e897c87.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  1975 + "heatValue": "",
  1976 + "innerUrl": "",
  1977 + "landscape": 1,
  1978 + "lengthTime": null,
  1979 + "linkUrl": "",
  1980 + "openLikes": 0,
  1981 + "openUrl": "",
  1982 + "pageId": "",
  1983 + "playUrls": [
  1984 +
  1985 + ],
  1986 + "programAuth": "2004557",
  1987 + "programId": "20000003715",
  1988 + "programName": "",
  1989 + "programSource": 5,
  1990 + "programType": 2,
  1991 + "provinceCode": "",
  1992 + "rankingList": [
  1993 +
  1994 + ],
  1995 + "showTitleEd": "",
  1996 + "showTitleIng": "",
  1997 + "showTitleNo": "",
  1998 + "sortValue": null,
  1999 + "startTime": "2023-12-18 10:38:00",
  2000 + "subType": "",
  2001 + "subtitle": "",
  2002 + "title": "云逛奇妙动物园:国宝大熊猫的欢乐日常",
  2003 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/b60fbd785822476daca4af0c8da4ce9a.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2004 + },
  2005 + {
  2006 + "cityCode": "",
  2007 + "coverSize": "942*530",
  2008 + "coverType": 1,
  2009 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/047cc7d270114b8da8ad1b98522741a7.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2010 + "description": "“老伴你帮我看看血压器是不是坏掉了,怎么两只手测量不一样呀?”高血压是一种常见的心血管疾病,如果血压没有得到有效控制,会增加心脑血管疾病的风险。正确测量血压对于掌握健康状况至关重要。本次直播,复旦大学附属华山医院护理部护师须倩雯将详细介绍正确的测量血压的步骤、测量前的准备工作,以及常见的测量误区。",
  2011 + "districtCode": "",
  2012 + "endTime": "",
  2013 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/047cc7d270114b8da8ad1b98522741a7.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2014 + "heatValue": "",
  2015 + "innerUrl": "",
  2016 + "landscape": 1,
  2017 + "lengthTime": null,
  2018 + "linkUrl": "",
  2019 + "openLikes": 0,
  2020 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/634c575b859d49f7bcf65bb318c84e86_lud/5346.m3u8",
  2021 + "pageId": "",
  2022 + "playUrls": [
  2023 +
  2024 + ],
  2025 + "programAuth": "2004557",
  2026 + "programId": "20000003723",
  2027 + "programName": "",
  2028 + "programSource": 5,
  2029 + "programType": 2,
  2030 + "provinceCode": "",
  2031 + "rankingList": [
  2032 +
  2033 + ],
  2034 + "showTitleEd": "",
  2035 + "showTitleIng": "",
  2036 + "showTitleNo": "",
  2037 + "sortValue": null,
  2038 + "startTime": "2023-12-18 12:00:38",
  2039 + "subType": "",
  2040 + "subtitle": "",
  2041 + "title": "医点就通 | 如何正确测量血压,你做对了吗?",
  2042 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/ce56e30873a64eb78659959519238d0a.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2043 + },
  2044 + {
  2045 + "cityCode": "",
  2046 + "coverSize": "1920*1080",
  2047 + "coverType": 1,
  2048 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/6f884c0982114592808ee3d7c25fb4d1.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2049 + "description": "乡村篮球菁英友谊赛将于12月17-18日在海南琼海举办。届时,村BA总决赛MVP李衍均、得分王吴中庆、栏板王、助攻王马鹏,沙溪跑车刘炜祺、山东飞人申守法,宁夏三营杨家三兄弟等村BA顶流将悉数登场;村BA功勋教练赵仁斌、姬晓现场指导;更有中国篮球名宿、96黄金一代球员巩晓彬,北京篮球名宿“玉面少侠”焦健,现身赛场,为乡村篮球代言。三分大战、技巧大战、扣篮大战也将精彩上演。",
  2050 + "districtCode": "",
  2051 + "endTime": "",
  2052 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/6f884c0982114592808ee3d7c25fb4d1.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2053 + "heatValue": "",
  2054 + "innerUrl": "",
  2055 + "landscape": 1,
  2056 + "lengthTime": null,
  2057 + "linkUrl": "",
  2058 + "openLikes": 0,
  2059 + "openUrl": "",
  2060 + "pageId": "",
  2061 + "playUrls": [
  2062 +
  2063 + ],
  2064 + "programAuth": "2004557",
  2065 + "programId": "20000003734",
  2066 + "programName": "",
  2067 + "programSource": 5,
  2068 + "programType": 2,
  2069 + "provinceCode": "",
  2070 + "rankingList": [
  2071 +
  2072 + ],
  2073 + "showTitleEd": "",
  2074 + "showTitleIng": "",
  2075 + "showTitleNo": "",
  2076 + "sortValue": null,
  2077 + "startTime": "2023-12-17 19:07:00",
  2078 + "subType": "",
  2079 + "subtitle": "",
  2080 + "title": "上视界 看村赛|星耀村BA 激情菁英赛",
  2081 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/405bb1303e2640d3931780122da0c9e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2082 + },
  2083 + {
  2084 + "cityCode": "",
  2085 + "coverSize": "1280*720",
  2086 + "coverType": 1,
  2087 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231214/image/live/0a1f327943984c02abfd335dbca80d03.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2088 + "description": "为深入贯彻党的二十大精神,落实《全面加强和改进新时代学生心理健康工作专项行动计划(2023-2025)和江苏省教育厅“润心”行动工作要求,健全社会心理服务体系体制机制的建设,提升社会公众心理健康意识和素养,充分发挥以乐润心,以心育德的重要功能。南京审计大学心理健康教育教学部与浦口区社会心理健康服务指导中心联合举办“以乐润心 因爱同行”音乐会。",
  2089 + "districtCode": "",
  2090 + "endTime": "",
  2091 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231214/image/live/0a1f327943984c02abfd335dbca80d03.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2092 + "heatValue": "",
  2093 + "innerUrl": "",
  2094 + "landscape": 1,
  2095 + "lengthTime": null,
  2096 + "linkUrl": "",
  2097 + "openLikes": 0,
  2098 + "openUrl": "",
  2099 + "pageId": "",
  2100 + "playUrls": [
  2101 +
  2102 + ],
  2103 + "programAuth": "2004557",
  2104 + "programId": "20000003662",
  2105 + "programName": "",
  2106 + "programSource": 5,
  2107 + "programType": 2,
  2108 + "provinceCode": "",
  2109 + "rankingList": [
  2110 +
  2111 + ],
  2112 + "showTitleEd": "",
  2113 + "showTitleIng": "",
  2114 + "showTitleNo": "",
  2115 + "sortValue": null,
  2116 + "startTime": "2023-12-17 19:03:18",
  2117 + "subType": "",
  2118 + "subtitle": "",
  2119 + "title": "《以乐润心 音爱同行 ——新年音乐会》",
  2120 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231214/image/live/66d2363592d5462b89972f558a97debe.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2121 + },
  2122 + {
  2123 + "cityCode": "",
  2124 + "coverSize": "942*530",
  2125 + "coverType": 1,
  2126 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/f59c2e841a9042819c052f142d2e6fa6.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2127 + "description": "“音为梦响 乐动华章”哈工大第二十五届校园十大歌手大赛决赛,27首歌曲唱响冬日的哈工大,邀你共同见证本届十大歌手的荣耀时刻。",
  2128 + "districtCode": "",
  2129 + "endTime": "",
  2130 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/f59c2e841a9042819c052f142d2e6fa6.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2131 + "heatValue": "",
  2132 + "innerUrl": "",
  2133 + "landscape": 1,
  2134 + "lengthTime": null,
  2135 + "linkUrl": "",
  2136 + "openLikes": 0,
  2137 + "openUrl": "",
  2138 + "pageId": "",
  2139 + "playUrls": [
  2140 +
  2141 + ],
  2142 + "programAuth": "2004557",
  2143 + "programId": "20000003730",
  2144 + "programName": "",
  2145 + "programSource": 5,
  2146 + "programType": 2,
  2147 + "provinceCode": "",
  2148 + "rankingList": [
  2149 +
  2150 + ],
  2151 + "showTitleEd": "",
  2152 + "showTitleIng": "",
  2153 + "showTitleNo": "",
  2154 + "sortValue": null,
  2155 + "startTime": "2023-12-17 18:56:00",
  2156 + "subType": "",
  2157 + "subtitle": "",
  2158 + "title": "“音为梦响 乐动华章”哈工大第二十五届校园十大歌手大赛决赛",
  2159 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/2cae8628c9e64aa8850b48c28f7aeb73.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2160 + },
  2161 + {
  2162 + "cityCode": "",
  2163 + "coverSize": "1920*1080",
  2164 + "coverType": 1,
  2165 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/4d307ca9d99e41cfb617404d669ef9be.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2166 + "description": "纺织在我国有着几千年的历史,作为传统产业具有重要地位。经过多年积累,我国逐步从纺织业大国成长为全球纺织业强国。从一根纤维到最后的成衣,国内已经形成了全球最完备的纺织产业链。纺织行业是国民经济与社会发展的支柱产业,是解决民生与美化生活的基础产业,是国际合作与融合发展的优势产业,正朝着“科技、时尚、绿色”方向不断发展。",
  2167 + "districtCode": "",
  2168 + "endTime": "",
  2169 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/4d307ca9d99e41cfb617404d669ef9be.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2170 + "heatValue": "",
  2171 + "innerUrl": "",
  2172 + "landscape": 1,
  2173 + "lengthTime": null,
  2174 + "linkUrl": "",
  2175 + "openLikes": 0,
  2176 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/f9ec8eda59174f4b8dc4d074ca8fd43d_lud/5327.m3u8",
  2177 + "pageId": "",
  2178 + "playUrls": [
  2179 +
  2180 + ],
  2181 + "programAuth": "2004557",
  2182 + "programId": "20000003710",
  2183 + "programName": "",
  2184 + "programSource": 5,
  2185 + "programType": 2,
  2186 + "provinceCode": "",
  2187 + "rankingList": [
  2188 +
  2189 + ],
  2190 + "showTitleEd": "",
  2191 + "showTitleIng": "",
  2192 + "showTitleNo": "",
  2193 + "sortValue": null,
  2194 + "startTime": "2023-12-17 19:00:00",
  2195 + "subType": "",
  2196 + "subtitle": "",
  2197 + "title": "我的青春主场|教育部公益直播课:纺织行业发展趋势和职业机会",
  2198 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/69f282dc5c524c60958728cea05c25cd.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2199 + },
  2200 + {
  2201 + "cityCode": "",
  2202 + "coverSize": "942*530",
  2203 + "coverType": 1,
  2204 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/3d6ce5810ded4e319e04ad92e0bb20bd.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2205 + "description": "近期一股强寒潮将从新疆开始自西向东、自北向南影响我国。深圳气温将出现断崖式下降,周末“小冰人”登场,急冻模式开启,17日最低气温降至10℃左右。深圳广电集团第一现场将与新疆、西藏、广西派驻记者连线,展示南北气温差异;同时,记者将登上深圳梧桐山测量山顶最低气温;气象局、医院、供电部门也作出相关提醒及防寒准备措施。",
  2206 + "districtCode": "",
  2207 + "endTime": "",
  2208 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/3d6ce5810ded4e319e04ad92e0bb20bd.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2209 + "heatValue": "",
  2210 + "innerUrl": "",
  2211 + "landscape": 1,
  2212 + "lengthTime": null,
  2213 + "linkUrl": "",
  2214 + "openLikes": 0,
  2215 + "openUrl": "",
  2216 + "pageId": "",
  2217 + "playUrls": [
  2218 +
  2219 + ],
  2220 + "programAuth": "2004557",
  2221 + "programId": "20000003726",
  2222 + "programName": "",
  2223 + "programSource": 5,
  2224 + "programType": 2,
  2225 + "provinceCode": "",
  2226 + "rankingList": [
  2227 +
  2228 + ],
  2229 + "showTitleEd": "",
  2230 + "showTitleIng": "",
  2231 + "showTitleNo": "",
  2232 + "sortValue": null,
  2233 + "startTime": "2023-12-17 08:06:38",
  2234 + "subType": "",
  2235 + "subtitle": "",
  2236 + "title": "今年最强寒潮来袭 深圳或开启急冻模式",
  2237 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/50b224ea12ec4c6f93563959ed4405dd.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg"
  2238 + }
  2239 + ],
  2240 + "pageId": null,
  2241 + "posterSize": "",
  2242 + "posterUrl": "",
  2243 + "provinceCode": "",
  2244 + "sortValue": 6,
  2245 + "subType": ""
  2246 + },
  2247 + {
  2248 + "backgroundColor": "",
  2249 + "backgroundImgUrl": "",
  2250 + "cityCode": "",
  2251 + "compStyle": "Masonry_Layout-01",
  2252 + "compType": "MASONRY_LAYOUT",
  2253 + "dataSourceRequest": [
  2254 +
  2255 + ],
  2256 + "districtCode": "",
  2257 + "extraData": "",
  2258 + "hasAdInfo": 0,
  2259 + "id": 12,
  2260 + "imgSize": "",
  2261 + "innerUrl": "",
  2262 + "linkUrl": "",
  2263 + "meddleDataList": [
  2264 +
  2265 + ],
  2266 + "name": "为你推荐feed",
  2267 + "objectId": "",
  2268 + "objectTitle": "",
  2269 + "objectType": null,
  2270 + "operDataList": [
  2271 + {
  2272 + "cityCode": "",
  2273 + "coverSize": "1920*1080",
  2274 + "coverType": 1,
  2275 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2276 + "description": "随着生活水平的提高和女性乳腺疾病宣传的深入,很多女性朋友不再是“发现疾病后才去就医”,而是越来越重视乳腺的定期检查,而钼靶检查也因为其简便快速等优点被多数人选择。本次直播,复旦大学附属华山医院放射科技师王益芳将针对患者常问的相关问题进行解答。",
  2277 + "districtCode": "",
  2278 + "endTime": "",
  2279 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/20f07cb26ccc41ed8c5ca9ffd88ff5e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2280 + "heatValue": "",
  2281 + "innerUrl": "",
  2282 + "landscape": 1,
  2283 + "lengthTime": null,
  2284 + "linkUrl": "",
  2285 + "openLikes": 0,
  2286 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/e77d054073f543ffbc8f296d4975189f_lud/5362.m3u8",
  2287 + "pageId": "",
  2288 + "playUrls": [
  2289 +
  2290 + ],
  2291 + "programAuth": "2004557",
  2292 + "programId": "20000003739",
  2293 + "programName": "",
  2294 + "programSource": 5,
  2295 + "programType": 2,
  2296 + "provinceCode": "",
  2297 + "rankingList": [
  2298 +
  2299 + ],
  2300 + "showTitleEd": "",
  2301 + "showTitleIng": "",
  2302 + "showTitleNo": "",
  2303 + "sortValue": null,
  2304 + "startTime": "2023-12-19 12:00:00",
  2305 + "subType": "",
  2306 + "subtitle": "",
  2307 + "title": "医点就通 | 关爱女性健康,聊聊乳腺钼靶检查",
  2308 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/a51c97be4472435f919b9d347a69442d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2309 + "screenType":"1"
  2310 + },
  2311 + {
  2312 + "cityCode": "",
  2313 + "coverSize": "2271*1278",
  2314 + "coverType": 1,
  2315 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2316 + "description": "“弦韵乌审,暖才于心”,通过马头琴管弦乐、原生态组合曲、传统民歌合唱、马头琴独奏等多种艺术表现形式,充分展现马头琴音乐的悠扬之美、力量之美,为高校师生带来一场别开生面的音乐盛宴。",
  2317 + "districtCode": "",
  2318 + "endTime": "",
  2319 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/f9b81f10f9d0430194f690a845c6912c.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2320 + "heatValue": "",
  2321 + "innerUrl": "",
  2322 + "landscape": 1,
  2323 + "lengthTime": null,
  2324 + "linkUrl": "",
  2325 + "openLikes": 0,
  2326 + "openUrl": "",
  2327 + "pageId": "",
  2328 + "playUrls": [
  2329 +
  2330 + ],
  2331 + "programAuth": "2004557",
  2332 + "programId": "20000003702",
  2333 + "programName": "",
  2334 + "programSource": 5,
  2335 + "programType": 2,
  2336 + "provinceCode": "",
  2337 + "rankingList": [
  2338 +
  2339 + ],
  2340 + "showTitleEd": "",
  2341 + "showTitleIng": "",
  2342 + "showTitleNo": "",
  2343 + "sortValue": null,
  2344 + "startTime": "",
  2345 + "subType": "",
  2346 + "subtitle": "",
  2347 + "title": "“弦韵乌审,暖才于心”中国•乌审马头琴交响乐团走进高校",
  2348 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/d0326a10b7504a34964aff0962d5ad7d.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2349 + "screenType":"2"
  2350 + },
  2351 + {
  2352 + "cityCode": "",
  2353 + "coverSize": "600*338",
  2354 + "coverType": 1,
  2355 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2356 + "description": "国务院新闻办公室于2023年12月18日(星期一)下午3时举行国务院政策例行吹风会,请商务部副部长盛秋平和海关总署、市场监管总局、金融监管总局有关负责人介绍加快内外贸一体化发展有关情况,并答记者问。",
  2357 + "districtCode": "",
  2358 + "endTime": "",
  2359 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/4f67db4b26f34ac5853cb2f25b55d1d4.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2360 + "heatValue": "",
  2361 + "innerUrl": "",
  2362 + "landscape": 1,
  2363 + "lengthTime": null,
  2364 + "linkUrl": "",
  2365 + "openLikes": 0,
  2366 + "openUrl": "",
  2367 + "pageId": "",
  2368 + "playUrls": [
  2369 +
  2370 + ],
  2371 + "programAuth": "2004557",
  2372 + "programId": "20000003737",
  2373 + "programName": "",
  2374 + "programSource": 5,
  2375 + "programType": 2,
  2376 + "provinceCode": "",
  2377 + "rankingList": [
  2378 +
  2379 + ],
  2380 + "showTitleEd": "",
  2381 + "showTitleIng": "",
  2382 + "showTitleNo": "",
  2383 + "sortValue": null,
  2384 + "startTime": "2023-12-18 15:09:00",
  2385 + "subType": "",
  2386 + "subtitle": "",
  2387 + "title": "国新办发布会|介绍加快内外贸一体化发展有关情况",
  2388 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231218/image/live/3160f19a3247405ea7151604fd87f0e7.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2389 + "screenType":"2"
  2390 + },
  2391 + {
  2392 + "cityCode": "",
  2393 + "coverSize": "1600*900",
  2394 + "coverType": 1,
  2395 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/038c195d6dd84a47bb7962bd2e897c87.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2396 + "description": "云上看呆萌“滚滚”的日常,一起来看国宝大熊猫的精彩生活、搞笑瞬间和治愈时刻。",
  2397 + "districtCode": "",
  2398 + "endTime": "",
  2399 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/038c195d6dd84a47bb7962bd2e897c87.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2400 + "heatValue": "",
  2401 + "innerUrl": "",
  2402 + "landscape": 1,
  2403 + "lengthTime": null,
  2404 + "linkUrl": "",
  2405 + "openLikes": 0,
  2406 + "openUrl": "",
  2407 + "pageId": "",
  2408 + "playUrls": [
  2409 +
  2410 + ],
  2411 + "programAuth": "2004557",
  2412 + "programId": "20000003715",
  2413 + "programName": "",
  2414 + "programSource": 5,
  2415 + "programType": 2,
  2416 + "provinceCode": "",
  2417 + "rankingList": [
  2418 +
  2419 + ],
  2420 + "showTitleEd": "",
  2421 + "showTitleIng": "",
  2422 + "showTitleNo": "",
  2423 + "sortValue": null,
  2424 + "startTime": "2023-12-18 10:38:00",
  2425 + "subType": "",
  2426 + "subtitle": "",
  2427 + "title": "云逛奇妙动物园:国宝大熊猫的欢乐日常",
  2428 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/b60fbd785822476daca4af0c8da4ce9a.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2429 + "screenType":"2"
  2430 + },
  2431 + {
  2432 + "cityCode": "",
  2433 + "coverSize": "942*530",
  2434 + "coverType": 1,
  2435 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/047cc7d270114b8da8ad1b98522741a7.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2436 + "description": "“老伴你帮我看看血压器是不是坏掉了,怎么两只手测量不一样呀?”高血压是一种常见的心血管疾病,如果血压没有得到有效控制,会增加心脑血管疾病的风险。正确测量血压对于掌握健康状况至关重要。本次直播,复旦大学附属华山医院护理部护师须倩雯将详细介绍正确的测量血压的步骤、测量前的准备工作,以及常见的测量误区。",
  2437 + "districtCode": "",
  2438 + "endTime": "",
  2439 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/047cc7d270114b8da8ad1b98522741a7.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2440 + "heatValue": "",
  2441 + "innerUrl": "",
  2442 + "landscape": 1,
  2443 + "lengthTime": null,
  2444 + "linkUrl": "",
  2445 + "openLikes": 0,
  2446 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/634c575b859d49f7bcf65bb318c84e86_lud/5346.m3u8",
  2447 + "pageId": "",
  2448 + "playUrls": [
  2449 +
  2450 + ],
  2451 + "programAuth": "2004557",
  2452 + "programId": "20000003723",
  2453 + "programName": "",
  2454 + "programSource": 5,
  2455 + "programType": 2,
  2456 + "provinceCode": "",
  2457 + "rankingList": [
  2458 +
  2459 + ],
  2460 + "showTitleEd": "",
  2461 + "showTitleIng": "",
  2462 + "showTitleNo": "",
  2463 + "sortValue": null,
  2464 + "startTime": "2023-12-18 12:00:38",
  2465 + "subType": "",
  2466 + "subtitle": "",
  2467 + "title": "医点就通 | 如何正确测量血压,你做对了吗?",
  2468 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/ce56e30873a64eb78659959519238d0a.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2469 + "screenType":"1"
  2470 + },
  2471 + {
  2472 + "cityCode": "",
  2473 + "coverSize": "1920*1080",
  2474 + "coverType": 1,
  2475 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/6f884c0982114592808ee3d7c25fb4d1.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2476 + "description": "乡村篮球菁英友谊赛将于12月17-18日在海南琼海举办。届时,村BA总决赛MVP李衍均、得分王吴中庆、栏板王、助攻王马鹏,沙溪跑车刘炜祺、山东飞人申守法,宁夏三营杨家三兄弟等村BA顶流将悉数登场;村BA功勋教练赵仁斌、姬晓现场指导;更有中国篮球名宿、96黄金一代球员巩晓彬,北京篮球名宿“玉面少侠”焦健,现身赛场,为乡村篮球代言。三分大战、技巧大战、扣篮大战也将精彩上演。",
  2477 + "districtCode": "",
  2478 + "endTime": "",
  2479 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/6f884c0982114592808ee3d7c25fb4d1.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2480 + "heatValue": "",
  2481 + "innerUrl": "",
  2482 + "landscape": 1,
  2483 + "lengthTime": null,
  2484 + "linkUrl": "",
  2485 + "openLikes": 0,
  2486 + "openUrl": "",
  2487 + "pageId": "",
  2488 + "playUrls": [
  2489 +
  2490 + ],
  2491 + "programAuth": "2004557",
  2492 + "programId": "20000003734",
  2493 + "programName": "",
  2494 + "programSource": 5,
  2495 + "programType": 2,
  2496 + "provinceCode": "",
  2497 + "rankingList": [
  2498 +
  2499 + ],
  2500 + "showTitleEd": "",
  2501 + "showTitleIng": "",
  2502 + "showTitleNo": "",
  2503 + "sortValue": null,
  2504 + "startTime": "2023-12-17 19:07:00",
  2505 + "subType": "",
  2506 + "subtitle": "",
  2507 + "title": "上视界 看村赛|星耀村BA 激情菁英赛",
  2508 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/405bb1303e2640d3931780122da0c9e3.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2509 + "screenType":"1"
  2510 + },
  2511 + {
  2512 + "cityCode": "",
  2513 + "coverSize": "1280*720",
  2514 + "coverType": 1,
  2515 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231214/image/live/0a1f327943984c02abfd335dbca80d03.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2516 + "description": "为深入贯彻党的二十大精神,落实《全面加强和改进新时代学生心理健康工作专项行动计划(2023-2025)和江苏省教育厅“润心”行动工作要求,健全社会心理服务体系体制机制的建设,提升社会公众心理健康意识和素养,充分发挥以乐润心,以心育德的重要功能。南京审计大学心理健康教育教学部与浦口区社会心理健康服务指导中心联合举办“以乐润心 因爱同行”音乐会。",
  2517 + "districtCode": "",
  2518 + "endTime": "",
  2519 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231214/image/live/0a1f327943984c02abfd335dbca80d03.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2520 + "heatValue": "",
  2521 + "innerUrl": "",
  2522 + "landscape": 1,
  2523 + "lengthTime": null,
  2524 + "linkUrl": "",
  2525 + "openLikes": 0,
  2526 + "openUrl": "",
  2527 + "pageId": "",
  2528 + "playUrls": [
  2529 +
  2530 + ],
  2531 + "programAuth": "2004557",
  2532 + "programId": "20000003662",
  2533 + "programName": "",
  2534 + "programSource": 5,
  2535 + "programType": 2,
  2536 + "provinceCode": "",
  2537 + "rankingList": [
  2538 +
  2539 + ],
  2540 + "showTitleEd": "",
  2541 + "showTitleIng": "",
  2542 + "showTitleNo": "",
  2543 + "sortValue": null,
  2544 + "startTime": "2023-12-17 19:03:18",
  2545 + "subType": "",
  2546 + "subtitle": "",
  2547 + "title": "《以乐润心 音爱同行 ——新年音乐会》",
  2548 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231214/image/live/66d2363592d5462b89972f558a97debe.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2549 + "screenType":"2"
  2550 + },
  2551 + {
  2552 + "cityCode": "",
  2553 + "coverSize": "942*530",
  2554 + "coverType": 1,
  2555 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/f59c2e841a9042819c052f142d2e6fa6.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2556 + "description": "“音为梦响 乐动华章”哈工大第二十五届校园十大歌手大赛决赛,27首歌曲唱响冬日的哈工大,邀你共同见证本届十大歌手的荣耀时刻。",
  2557 + "districtCode": "",
  2558 + "endTime": "",
  2559 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/f59c2e841a9042819c052f142d2e6fa6.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2560 + "heatValue": "",
  2561 + "innerUrl": "",
  2562 + "landscape": 1,
  2563 + "lengthTime": null,
  2564 + "linkUrl": "",
  2565 + "openLikes": 0,
  2566 + "openUrl": "",
  2567 + "pageId": "",
  2568 + "playUrls": [
  2569 +
  2570 + ],
  2571 + "programAuth": "2004557",
  2572 + "programId": "20000003730",
  2573 + "programName": "",
  2574 + "programSource": 5,
  2575 + "programType": 2,
  2576 + "provinceCode": "",
  2577 + "rankingList": [
  2578 +
  2579 + ],
  2580 + "showTitleEd": "",
  2581 + "showTitleIng": "",
  2582 + "showTitleNo": "",
  2583 + "sortValue": null,
  2584 + "startTime": "2023-12-17 18:56:00",
  2585 + "subType": "",
  2586 + "subtitle": "",
  2587 + "title": "“音为梦响 乐动华章”哈工大第二十五届校园十大歌手大赛决赛",
  2588 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231217/image/live/2cae8628c9e64aa8850b48c28f7aeb73.jpeg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2589 + "screenType":"1"
  2590 + },
  2591 + {
  2592 + "cityCode": "",
  2593 + "coverSize": "1920*1080",
  2594 + "coverType": 1,
  2595 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/4d307ca9d99e41cfb617404d669ef9be.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2596 + "description": "纺织在我国有着几千年的历史,作为传统产业具有重要地位。经过多年积累,我国逐步从纺织业大国成长为全球纺织业强国。从一根纤维到最后的成衣,国内已经形成了全球最完备的纺织产业链。纺织行业是国民经济与社会发展的支柱产业,是解决民生与美化生活的基础产业,是国际合作与融合发展的优势产业,正朝着“科技、时尚、绿色”方向不断发展。",
  2597 + "districtCode": "",
  2598 + "endTime": "",
  2599 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/4d307ca9d99e41cfb617404d669ef9be.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2600 + "heatValue": "",
  2601 + "innerUrl": "",
  2602 + "landscape": 1,
  2603 + "lengthTime": null,
  2604 + "linkUrl": "",
  2605 + "openLikes": 0,
  2606 + "openUrl": "https://cdnjdphoto.aikan.pdnews.cn/live/record/tr_lud/f9ec8eda59174f4b8dc4d074ca8fd43d_lud/5327.m3u8",
  2607 + "pageId": "",
  2608 + "playUrls": [
  2609 +
  2610 + ],
  2611 + "programAuth": "2004557",
  2612 + "programId": "20000003710",
  2613 + "programName": "",
  2614 + "programSource": 5,
  2615 + "programType": 2,
  2616 + "provinceCode": "",
  2617 + "rankingList": [
  2618 +
  2619 + ],
  2620 + "showTitleEd": "",
  2621 + "showTitleIng": "",
  2622 + "showTitleNo": "",
  2623 + "sortValue": null,
  2624 + "startTime": "2023-12-17 19:00:00",
  2625 + "subType": "",
  2626 + "subtitle": "",
  2627 + "title": "我的青春主场|教育部公益直播课:纺织行业发展趋势和职业机会",
  2628 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231215/image/live/69f282dc5c524c60958728cea05c25cd.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2629 + "screenType":"2"
  2630 + },
  2631 + {
  2632 + "cityCode": "",
  2633 + "coverSize": "942*530",
  2634 + "coverType": 1,
  2635 + "coverUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/3d6ce5810ded4e319e04ad92e0bb20bd.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2636 + "description": "近期一股强寒潮将从新疆开始自西向东、自北向南影响我国。深圳气温将出现断崖式下降,周末“小冰人”登场,急冻模式开启,17日最低气温降至10℃左右。深圳广电集团第一现场将与新疆、西藏、广西派驻记者连线,展示南北气温差异;同时,记者将登上深圳梧桐山测量山顶最低气温;气象局、医院、供电部门也作出相关提醒及防寒准备措施。",
  2637 + "districtCode": "",
  2638 + "endTime": "",
  2639 + "hImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/3d6ce5810ded4e319e04ad92e0bb20bd.jpg?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2640 + "heatValue": "",
  2641 + "innerUrl": "",
  2642 + "landscape": 1,
  2643 + "lengthTime": null,
  2644 + "linkUrl": "",
  2645 + "openLikes": 0,
  2646 + "openUrl": "",
  2647 + "pageId": "",
  2648 + "playUrls": [
  2649 +
  2650 + ],
  2651 + "programAuth": "2004557",
  2652 + "programId": "20000003726",
  2653 + "programName": "",
  2654 + "programSource": 5,
  2655 + "programType": 2,
  2656 + "provinceCode": "",
  2657 + "rankingList": [
  2658 +
  2659 + ],
  2660 + "showTitleEd": "",
  2661 + "showTitleIng": "",
  2662 + "showTitleNo": "",
  2663 + "sortValue": null,
  2664 + "startTime": "2023-12-17 08:06:38",
  2665 + "subType": "",
  2666 + "subtitle": "",
  2667 + "title": "今年最强寒潮来袭 深圳或开启急冻模式",
  2668 + "vImageUrl": "https://cdnjdphoto.aikan.pdnews.cn/sjbj-20231216/image/live/50b224ea12ec4c6f93563959ed4405dd.png?x-oss-process=image/resize,l_850/auto-orient,1/quality,q_95/format,jpg",
  2669 + "screenType":"1"
  2670 + }
  2671 + ],
  2672 + "pageId": null,
  2673 + "posterSize": "",
  2674 + "posterUrl": "",
  2675 + "provinceCode": "",
  2676 + "sortValue": 6,
  2677 + "subType": ""
1824 } 2678 }
1825 ], 2679 ],
1826 "id": 5, 2680 "id": 5,
@@ -9,6 +9,8 @@ export { ViewType } from './src/main/ets/enum/ViewType'; @@ -9,6 +9,8 @@ export { ViewType } from './src/main/ets/enum/ViewType';
9 9
10 export { DelayTimeEnum } from './src/main/ets/enum/DelayTimeEnum'; 10 export { DelayTimeEnum } from './src/main/ets/enum/DelayTimeEnum';
11 11
  12 +export { ScreenType } from './src/main/ets/enum/ScreenType';
  13 +
12 // entity 14 // entity
13 export { ItemDTO } from './src/main/ets/bean/ItemDTO'; 15 export { ItemDTO } from './src/main/ets/bean/ItemDTO';
14 16
@@ -32,4 +32,5 @@ export interface ContentDTO { @@ -32,4 +32,5 @@ export interface ContentDTO {
32 subtitle: string; 32 subtitle: string;
33 title: string; 33 title: string;
34 vImageUrl: string; 34 vImageUrl: string;
  35 + screenType: string;
35 } 36 }
  1 +/**
  2 + * 屏幕类型。1: 竖屏; 2: 横屏;
  3 + */
  4 +export const enum ScreenType {
  5 + PORTRAIT = "1", // 竖屏
  6 + LANDSCAPE = "2", // 横屏;
  7 +}
@@ -14,4 +14,6 @@ export { SingleRow03Component } from "./src/main/ets/components/SingleRow03Compo @@ -14,4 +14,6 @@ export { SingleRow03Component } from "./src/main/ets/components/SingleRow03Compo
14 14
15 export { SingleColumnComponent } from "./src/main/ets/components/SingleColumnComponent" 15 export { SingleColumnComponent } from "./src/main/ets/components/SingleColumnComponent"
16 16
17 -export { GridLayout01Component } from "./src/main/ets/components/GridLayout01Component"  
  17 +export { GridLayout01Component } from "./src/main/ets/components/GridLayout01Component"
  18 +
  19 +export { WaterFlowComponent } from "./src/main/ets/components/WaterFlowComponent"
1 import { CompDTO, ContentDTO, DelayTimeEnum } from 'wdBean'; 1 import { CompDTO, ContentDTO, DelayTimeEnum } from 'wdBean';
2 -import { CommonConstants } from 'wdConstant';  
3 -import { Logger } from 'wdKit'; 2 +import { BreakpointConstants, CommonConstants } from 'wdConstant';
  3 +import { BreakPointType, Logger } from 'wdKit';
4 import { CompUtils } from '../utils/CompUtils'; 4 import { CompUtils } from '../utils/CompUtils';
  5 +import { CarouselLayout01CardView } from './CardView';
5 import { EmptyComponent } from './EmptyComponent'; 6 import { EmptyComponent } from './EmptyComponent';
6 7
7 const TAG = 'BannerComponent'; 8 const TAG = 'BannerComponent';
@@ -13,7 +14,7 @@ const TAG = 'BannerComponent'; @@ -13,7 +14,7 @@ const TAG = 'BannerComponent';
13 */ 14 */
14 @Component 15 @Component
15 export struct BannerComponent { 16 export struct BannerComponent {
16 - @StorageLink('currentBreakpoint') @Watch('watchCurrentBreakpoint') currentBreakpoint: string = 'xs'; 17 + @StorageLink('currentBreakpoint') @Watch('watchCurrentBreakpoint') currentBreakpoint: string = BreakpointConstants.BREAKPOINT_XS;
17 @State compDTO: CompDTO = {} as CompDTO 18 @State compDTO: CompDTO = {} as CompDTO
18 19
19 watchCurrentBreakpoint() { 20 watchCurrentBreakpoint() {
@@ -47,7 +48,9 @@ export struct BannerComponent { @@ -47,7 +48,9 @@ export struct BannerComponent {
47 this.buildItemBanner01(item, index) 48 this.buildItemBanner01(item, index)
48 }) 49 })
49 } 50 }
50 - .displayCount(1) // 仅展示1个图片 51 + .margin({ left: $r('app.float.main_margin'), right: $r('app.float.main_margin') })
  52 + .padding({ bottom: 14 })
  53 + .displayCount(this.buildDisplayCount()) // 仅展示1个图片
51 .cachedCount(2) 54 .cachedCount(2)
52 .index(1) // The default index of Swiper. 55 .index(1) // The default index of Swiper.
53 .autoPlay(true) 56 .autoPlay(true)
@@ -70,9 +73,9 @@ export struct BannerComponent { @@ -70,9 +73,9 @@ export struct BannerComponent {
70 } 73 }
71 } 74 }
72 75
73 - // public buildDisplayCount(): number {  
74 - // return new BreakPointType({ xs: 1, sm: 1, md: 2, lg: 3 }).getValue(this.currentBreakpoint)  
75 - // } 76 + public buildDisplayCount(): number {
  77 + return new BreakPointType({ xs: 1, sm: 1, md: 2, lg: 3 }).getValue(this.currentBreakpoint)
  78 + }
76 79
77 /** 80 /**
78 * 组件项 81 * 组件项
@@ -81,57 +84,9 @@ export struct BannerComponent { @@ -81,57 +84,9 @@ export struct BannerComponent {
81 */ 84 */
82 @Builder 85 @Builder
83 buildItemBanner01(item: ContentDTO, index: number) { 86 buildItemBanner01(item: ContentDTO, index: number) {
84 - RelativeContainer() {  
85 - Image(item.hImageUrl)  
86 - .width(CommonConstants.FULL_PARENT)  
87 - .height(CommonConstants.FULL_PARENT)  
88 - .objectFit(ImageFit.Cover)  
89 - .borderRadius($r("app.float.border_radius_6"))  
90 - .alignRules({  
91 - top: { anchor: '__container__', align: VerticalAlign.Top },  
92 - left: { anchor: '__container__', align: HorizontalAlign.Start }  
93 - })  
94 - .id('img_cover')  
95 -  
96 - // if (item.topLeftTipImgUrl) {  
97 - // Image(item.topLeftTipImgUrl)  
98 - // .width(CompCornerUtil.getCornerWidth(this.currentBreakpoint))  
99 - // .aspectRatio(CompCornerUtil.ASPECT_RATIO_75_45)  
100 - // .margin({ left: 6 })  
101 - // .objectFit(ImageFit.Cover)  
102 - // .alignRules({  
103 - // top: { anchor: '__container__', align: VerticalAlign.Top },  
104 - // left: { anchor: '__container__', align: HorizontalAlign.Start }  
105 - // })  
106 - // .id('img_corner_top_Left')  
107 - // }  
108 -  
109 - Text(item.title)  
110 - .width(CommonConstants.FULL_PARENT)  
111 - .height(39)  
112 - .padding({ left: 8, right: 69, bottom: 8 })  
113 - .fontColor(Color.White)  
114 - .fontSize($r('app.float.font_size_16'))  
115 - .fontWeight(FontWeight.Medium)  
116 - .textAlign(TextAlign.Start)  
117 - .align(Alignment.Bottom)  
118 - .maxLines(CompUtils.MAX_LINES_1)  
119 - .textOverflow({ overflow: TextOverflow.Ellipsis })  
120 - .linearGradient({  
121 - direction: GradientDirection.Top, // 渐变方向:to Top/从下往上  
122 - colors: [[0x7508111A, 0.0], [0x7508111A, 0.3], [Color.Transparent, 1.0]]  
123 - })  
124 - .alignRules({  
125 - bottom: { anchor: '__container__', align: VerticalAlign.Bottom },  
126 - left: { anchor: '__container__', align: HorizontalAlign.Start }  
127 - })  
128 - .id('txt_name')  
129 - }  
130 - .width(CommonConstants.FULL_PARENT)  
131 - .aspectRatio(CompUtils.ASPECT_RATIO_2_1)  
132 - .hoverEffect(HoverEffect.Scale)  
133 - .onClick((event: ClickEvent) => {  
134 - Logger.info(TAG, `BannerComponent onClick event index: ${index}`); 87 + CarouselLayout01CardView({
  88 + item: item,
  89 + index: index
135 }) 90 })
136 } 91 }
137 } 92 }
1 -import { ContentDTO } from 'wdBean'; 1 +import { ContentDTO, ScreenType } from 'wdBean';
2 import { CommonConstants } from 'wdConstant'; 2 import { CommonConstants } from 'wdConstant';
3 import { Logger } from 'wdKit'; 3 import { Logger } from 'wdKit';
4 import { CompUtils } from '../utils/CompUtils'; 4 import { CompUtils } from '../utils/CompUtils';
5 5
6 -const TAG = 'CardView'; 6 +const TAG: string = 'CardView';
  7 +
  8 +/**
  9 + * 轮播组件样式:
  10 + * Carousel_Layout-01
  11 + * 卡片结构:上下结构
  12 + * 卡片宽度:充满父窗口
  13 + * 卡片高度,仅包含横板图片:图片高度由图片的宽度及宽高比决定,图片宽度占父窗口'100%',宽高比为16:9:
  14 + */
  15 +@Component
  16 +export struct CarouselLayout01CardView {
  17 + private item: ContentDTO = {} as ContentDTO;
  18 + private index: number = -1;
  19 +
  20 + build() {
  21 + RelativeContainer() {
  22 + Image(this.item.hImageUrl)
  23 + .width(CommonConstants.FULL_PARENT)
  24 + .height(CommonConstants.FULL_PARENT)
  25 + .objectFit(ImageFit.Cover)
  26 + .borderRadius($r("app.float.border_radius_6"))
  27 + .alignRules({
  28 + top: { anchor: '__container__', align: VerticalAlign.Top },
  29 + left: { anchor: '__container__', align: HorizontalAlign.Start }
  30 + })
  31 + .id('img_cover')
  32 +
  33 + // if (item.topLeftTipImgUrl) {
  34 + // Image(item.topLeftTipImgUrl)
  35 + // .width(CompCornerUtil.getCornerWidth(this.currentBreakpoint))
  36 + // .aspectRatio(CompCornerUtil.ASPECT_RATIO_75_45)
  37 + // .margin({ left: 6 })
  38 + // .objectFit(ImageFit.Cover)
  39 + // .alignRules({
  40 + // top: { anchor: '__container__', align: VerticalAlign.Top },
  41 + // left: { anchor: '__container__', align: HorizontalAlign.Start }
  42 + // })
  43 + // .id('img_corner_top_Left')
  44 + // }
  45 +
  46 + Text(this.item.title)
  47 + .width(CommonConstants.FULL_PARENT)
  48 + .height(39)
  49 + .padding({ left: 8, right: 69, bottom: 8 })
  50 + .fontColor(Color.White)
  51 + .fontSize($r('app.float.font_size_16'))
  52 + .fontWeight(FontWeight.Medium)
  53 + .textAlign(TextAlign.Start)
  54 + .align(Alignment.Bottom)
  55 + .maxLines(CompUtils.MAX_LINES_1)
  56 + .textOverflow({ overflow: TextOverflow.Ellipsis })
  57 + .linearGradient({
  58 + direction: GradientDirection.Top, // 渐变方向:to Top/从下往上
  59 + colors: [[0x7508111A, 0.0], [0x7508111A, 0.3], [Color.Transparent, 1.0]]
  60 + })
  61 + .borderRadius($r("app.float.border_radius_6"))
  62 + .alignRules({
  63 + bottom: { anchor: '__container__', align: VerticalAlign.Bottom },
  64 + left: { anchor: '__container__', align: HorizontalAlign.Start }
  65 + })
  66 + .id('txt_name')
  67 + }
  68 + .width(CommonConstants.FULL_PARENT)
  69 + .aspectRatio(CompUtils.ASPECT_RATIO_2_1)
  70 + .hoverEffect(HoverEffect.Scale)
  71 + .onClick((event: ClickEvent) => {
  72 + Logger.info(TAG, `BannerComponent onClick event index: ${this.index}`);
  73 + })
  74 + }
  75 +}
7 76
8 /** 77 /**
9 * 卡片结构:上下结构 78 * 卡片结构:上下结构
@@ -170,6 +239,7 @@ export struct SingleColumn02CardView { @@ -170,6 +239,7 @@ export struct SingleColumn02CardView {
170 } 239 }
171 .width(CommonConstants.FULL_PARENT) 240 .width(CommonConstants.FULL_PARENT)
172 .alignItems(VerticalAlign.Top) 241 .alignItems(VerticalAlign.Top)
  242 +
173 // .backgroundColor(Color.Orange) 243 // .backgroundColor(Color.Orange)
174 244
175 Text(this.item.description) 245 Text(this.item.description)
@@ -190,4 +260,102 @@ export struct SingleColumn02CardView { @@ -190,4 +260,102 @@ export struct SingleColumn02CardView {
190 Logger.info(TAG, `SingleColumn02CardView onClick event index: ${this.index}`); 260 Logger.info(TAG, `SingleColumn02CardView onClick event index: ${this.index}`);
191 }) 261 })
192 } 262 }
  263 +}
  264 +
  265 +/**
  266 + * 瀑布流组件样式:
  267 + * 卡片结构:上下结构
  268 + * 卡片宽度:充满父窗口
  269 + * 卡片高度,由3部分:
  270 + * 1.上部图片高度由图片的宽度及宽高比决定,上部图片宽度占父窗口'100%',宽高比为可能是3:4或16:9
  271 + * 2.两行title文字高度
  272 + * // 3.一行author头像及名称高度
  273 + */
  274 +@Component
  275 +export struct MasonryLayout01CardView {
  276 + private item: ContentDTO = {} as ContentDTO;
  277 + private index: number = -1;
  278 +
  279 + build() {
  280 + Column() {
  281 + RelativeContainer() {
  282 + // 1.海报图片/screenTyp(是高分辨率横图0,highLandscapeCover,还是高分辨率竖图1,highPortraitCover),根据宽高比设置图片参数及对应的图片
  283 + Image(this.item.screenType == ScreenType.PORTRAIT ? this.item.vImageUrl : this.item.hImageUrl)
  284 + .width(CommonConstants.FULL_PARENT)
  285 + .height(CommonConstants.FULL_PARENT)
  286 + .borderRadius($r("app.float.image_border_radius"))
  287 + .alignRules({
  288 + top: { anchor: '__container__', align: VerticalAlign.Top },
  289 + left: { anchor: '__container__', align: HorizontalAlign.Start }
  290 + })
  291 + .id('img_cover')
  292 +
  293 + // 2.腰线
  294 + if (this.item.startTime) {
  295 + Text(this.item.startTime)
  296 + .width(CommonConstants.FULL_PARENT)
  297 + .height(35)
  298 + .margin({ top: 8, right: 5 })
  299 + .fontColor(Color.White)
  300 + .fontSize($r('app.float.font_size_12'))
  301 + .fontWeight(FontWeight.Normal)
  302 + .textAlign(TextAlign.End)
  303 + .align(Alignment.Center)
  304 + .maxLines(CompUtils.MAX_LINES_1)// .backgroundColor(Color.Red)
  305 + .linearGradient({
  306 + direction: GradientDirection.Top, // 渐变方向:to Top/从下往上
  307 + colors: [[0x7508111A, 0.0], [0x7508111A, 0.3], [Color.Transparent, 1.0]]
  308 + })
  309 + .borderRadius($r("app.float.image_border_radius"))
  310 + .alignRules({
  311 + bottom: { anchor: 'img_cover', align: VerticalAlign.Bottom }
  312 + })
  313 + .id('txt_duration')
  314 + }
  315 + }
  316 + .width(CommonConstants.FULL_PARENT)
  317 + .aspectRatio(this.item.screenType == ScreenType.PORTRAIT ? CompUtils.ASPECT_RATIO_3_4 : CompUtils.ASPECT_RATIO_16_9)
  318 +
  319 + // 2.标题2行
  320 + Text(this.item.title)
  321 + .width(CommonConstants.FULL_PARENT)
  322 + .margin({ top: 4 })// .backgroundColor(Color.Brown)
  323 + .fontWeight(FontWeight.Normal)
  324 + .textAlign(TextAlign.Start)
  325 + .fontSize($r('app.float.font_size_14'))
  326 + .fontColor($r('app.color.color_666666'))
  327 + .maxLines(CompUtils.MAX_LINES_2)
  328 + .textOverflow({ overflow: TextOverflow.Ellipsis })
  329 +
  330 + // Row() {
  331 + // // 3.pugc短视频/1行:avator 头像/author:名称
  332 + // Image(this.item.avator)
  333 + // .width(20)
  334 + // .height(20)
  335 + // .margin({ left: 3, top: 4 })
  336 + // .borderRadius(10)
  337 + // // .backgroundColor(Color.Yellow)
  338 + //
  339 + // // Blank()
  340 + // Text(item.author)
  341 + // .margin({ left: 5, top: 4 })
  342 + // .fontColor(Color.White)
  343 + // .fontSize($r('app.float.font_size_12'))// .backgroundColor(Color.Red)
  344 + // .textOverflow({ overflow: TextOverflow.Ellipsis })
  345 + // .fontWeight(FontWeight.Medium)
  346 + // .textAlign(TextAlign.Start)
  347 + // .align(Alignment.Center)
  348 + // .maxLines(CompUtils.MAX_LINES_1)
  349 + // }
  350 + // .width(CommonConstants.FULL_PARENT)
  351 + // .justifyContent(FlexAlign.Start)
  352 + // .alignItems(VerticalAlign.Center)
  353 + }
  354 + // .padding({ bottom: 8, right: 4 })
  355 + // .backgroundColor(Color.Orange)
  356 + .hoverEffect(HoverEffect.Scale)
  357 + .onClick((event: ClickEvent) => {
  358 + Logger.info(TAG, `MasonryLayout01CardView onClick event index: ${this.index}`);
  359 + })
  360 + }
193 } 361 }
1 import { CompDTO, CompStyle, ContentDTO } from 'wdBean'; 1 import { CompDTO, CompStyle, ContentDTO } from 'wdBean';
2 -import { Logger } from 'wdKit'; 2 +import { BreakpointConstants } from 'wdConstant';
  3 +import { BreakPointType, Logger } from 'wdKit';
3 import { SingleColumn01CardView, SingleColumn02CardView } from './CardView'; 4 import { SingleColumn01CardView, SingleColumn02CardView } from './CardView';
4 import { EmptyComponent } from './EmptyComponent'; 5 import { EmptyComponent } from './EmptyComponent';
5 6
@@ -13,6 +14,7 @@ const TAG = 'SingleColumn01Component'; @@ -13,6 +14,7 @@ const TAG = 'SingleColumn01Component';
13 */ 14 */
14 @Component 15 @Component
15 export struct SingleColumnComponent { 16 export struct SingleColumnComponent {
  17 + @StorageLink('currentBreakpoint') currentBreakpoint: string = BreakpointConstants.BREAKPOINT_XS;
16 @State compDTO: CompDTO = {} as CompDTO 18 @State compDTO: CompDTO = {} as CompDTO
17 private compStyle: string = CompStyle.Single_Column_01; 19 private compStyle: string = CompStyle.Single_Column_01;
18 20
@@ -48,13 +50,17 @@ export struct SingleColumnComponent { @@ -48,13 +50,17 @@ export struct SingleColumnComponent {
48 } 50 }
49 .margin({ left: $r('app.float.main_margin'), right: $r('app.float.main_margin'), bottom: 8 }) 51 .margin({ left: $r('app.float.main_margin'), right: $r('app.float.main_margin'), bottom: 8 })
50 .listDirection(Axis.Vertical) 52 .listDirection(Axis.Vertical)
51 - .lanes(1) // 行/列数,一列 53 + .lanes(this.buildLanes()) // 行/列数,一列
52 .scrollBar(BarState.Off) 54 .scrollBar(BarState.Off)
53 } else { 55 } else {
54 EmptyComponent({ emptyHeight: 100 }) 56 EmptyComponent({ emptyHeight: 100 })
55 } 57 }
56 } 58 }
57 59
  60 + public buildLanes(): number {
  61 + return new BreakPointType({ xs: 1, sm: 1, md: 2, lg: 2 }).getValue(this.currentBreakpoint)
  62 + }
  63 +
58 /** 64 /**
59 * 组件item 65 * 组件item
60 * @param programmeBean 66 * @param programmeBean
  1 +import { CompDTO, ContentDTO } from 'wdBean';
  2 +import { BreakPointType, Logger } from 'wdKit';
  3 +import { MasonryLayout01CardView } from './CardView';
  4 +import { EmptyComponent } from './EmptyComponent';
  5 +
  6 +const TAG = 'WaterFlowComponent';
  7 +
  8 +/**
  9 + * 瀑布流组件样式:
  10 + * 'Masonry_Layout-01', // 双列瀑布流/瀑布流卡:视频、直播、专题、活动
  11 + */
  12 +@Component
  13 +export struct WaterFlowComponent {
  14 + @StorageLink('currentBreakpoint') currentBreakpoint: string = 'XS';
  15 + @State compDTO: CompDTO = {} as CompDTO
  16 + readonly WATER_FLOW_COLUMNS_TEMPLATE_TWO: string = '1fr 1fr';
  17 + readonly WATER_FLOW_COLUMNS_TEMPLATE_FOUR: string = '1fr 1fr 1fr 1fr';
  18 +
  19 + aboutToAppear() {
  20 + Logger.info(TAG, `aboutToAppear, beanList:${this.compDTO?.operDataList?.length}, currentBreakpoint:${this.currentBreakpoint}`);
  21 + }
  22 +
  23 + aboutToDisappear() {
  24 + Logger.info(TAG, 'aboutToDisappear');
  25 + }
  26 +
  27 + onPageShow() {
  28 + Logger.info(TAG, 'onPageShow');
  29 + }
  30 +
  31 + onPageHide() {
  32 + Logger.info(TAG, 'onPageHide');
  33 + }
  34 +
  35 + onBackPress() {
  36 + Logger.info(TAG, 'onBackPress');
  37 + }
  38 +
  39 + build() {
  40 + if (this.compDTO && this.compDTO?.operDataList?.length > 0) {
  41 + WaterFlow({ footer: (): void => this.itemFoot() }) {
  42 + ForEach(this.compDTO?.operDataList, (item: ContentDTO, index: number) => {
  43 + FlowItem() {
  44 + this.buildFlowItemComponent(item, index)
  45 + }
  46 + })
  47 + }
  48 + .margin({ left: $r('app.float.main_margin'), right: $r('app.float.main_margin') })
  49 + .padding({ bottom: 14 })
  50 + .layoutDirection(FlexDirection.Column)
  51 + .columnsTemplate(this.buildColumnsTemplate())
  52 + .columnsGap(4)
  53 + .rowsGap(14)
  54 + } else {
  55 + EmptyComponent({ emptyHeight: 100 })
  56 + }
  57 + }
  58 +
  59 + public buildColumnsTemplate(): string {
  60 + return new BreakPointType({
  61 + xs: this.WATER_FLOW_COLUMNS_TEMPLATE_TWO,
  62 + sm: this.WATER_FLOW_COLUMNS_TEMPLATE_TWO,
  63 + md: this.WATER_FLOW_COLUMNS_TEMPLATE_FOUR,
  64 + lg: this.WATER_FLOW_COLUMNS_TEMPLATE_FOUR
  65 + }).getValue(this.currentBreakpoint)
  66 + }
  67 +
  68 + @Builder
  69 + itemFoot() {
  70 + Column() {
  71 + // Text($r('app.string.footer_text'))
  72 + // .fontColor(Color.Gray)
  73 + // .fontSize($r('app.float.font_size_10'))
  74 + // .width(CommonConstants.FULL_PARENT)
  75 + // .height(20)
  76 + // .textAlign(TextAlign.Center)
  77 + }
  78 + }
  79 +
  80 + @Builder
  81 + buildFlowItemComponent(item: ContentDTO, index: number) {
  82 + MasonryLayout01CardView({
  83 + item: item,
  84 + index: index
  85 + })
  86 + }
  87 +}
@@ -3,6 +3,10 @@ @@ -3,6 +3,10 @@
3 { 3 {
4 "name": "shared_desc", 4 "name": "shared_desc",
5 "value": "基础自定义组件库" 5 "value": "基础自定义组件库"
  6 + },
  7 + {
  8 + "name": "footer_text",
  9 + "value": "已经到底了"
6 } 10 }
7 ] 11 ]
8 } 12 }
1 -export { CommonConstants } from './src/main/ets/constants/CommonConstants';  
  1 +export { CommonConstants } from './src/main/ets/constants/CommonConstants';
  2 +
  3 +export { BreakpointConstants } from './src/main/ets/constants/BreakpointConstants';
  1 +/**
  2 + * Constants for breakpoint.
  3 + */
  4 +export class BreakpointConstants {
  5 + /**
  6 + * Breakpoints that represent smaller device types.
  7 + * 最小宽度
  8 + */
  9 + static readonly BREAKPOINT_XS: string = 'xs';
  10 + /**
  11 + * Breakpoints that represent small device types.
  12 + * 小宽度
  13 + */
  14 + static readonly BREAKPOINT_SM: string = 'sm';
  15 + /**
  16 + * Breakpoints that represent middle device types.
  17 + * 中等宽度
  18 + */
  19 + static readonly BREAKPOINT_MD: string = 'md';
  20 + /**
  21 + * Breakpoints that represent large device types.
  22 + * 大宽度
  23 + */
  24 + static readonly BREAKPOINT_LG: string = 'lg';
  25 + /**
  26 + * Breakpoints that represent extra-large device types.
  27 + * 特大宽度
  28 + */
  29 + // static readonly BREAKPOINT_XL: string = 'xl';
  30 + /**
  31 + * Breakpoints that represent extra-extra-large device types.
  32 + * 超大宽度
  33 + */
  34 + // static readonly BREAKPOINT_XXL: string = 'xxl';
  35 +}
@@ -6,4 +6,6 @@ export { StringUtils } from './src/main/ets/utils/StringUtils' @@ -6,4 +6,6 @@ export { StringUtils } from './src/main/ets/utils/StringUtils'
6 6
7 export { BasicDataSource } from './src/main/ets/utils/BasicDataSource'; 7 export { BasicDataSource } from './src/main/ets/utils/BasicDataSource';
8 8
9 -export { LazyDataSource } from './src/main/ets/utils/LazyDataSource'  
  9 +export { LazyDataSource } from './src/main/ets/utils/LazyDataSource'
  10 +
  11 +export { BreakpointSystem, BreakPointType } from './src/main/ets/utils/BreakPointSystem';
  1 +import mediaQuery from '@ohos.mediaquery';
  2 +import { Logger } from './Logger';
  3 +
  4 +const TAG = 'BreakPointSystem';
  5 +
  6 +interface Breakpoint {
  7 + name: string
  8 + size: number
  9 + mediaQueryListener?: mediaQuery.MediaQueryListener
  10 +}
  11 +
  12 +// 响应式布局:"phone","tablet","2in1"
  13 +// https://docs.openharmony.cn/pages/v4.0/zh-cn/application-dev/key-features/multi-device-app-dev/responsive-layout.md/
  14 +declare interface BreakPointTypeOption<T> {
  15 + xs: T; // [0, 320) (最小宽度-类型设备) // Wearable/可穿戴设备
  16 + sm: T; // [320,600) (小宽度-类型设备) // Phone/折叠设备当前折叠状态为折叠FOLDED/手机(HUAWEI Mate 40 Pro & NOH-AN00)/折叠后345.6vp
  17 + md: T; // [600,840) (中等宽度-类型设备) // Fold/折叠设备当前折叠状态为完全展开EXPANDED/折叠手机(HUAWEI Mate X5 & ALT-AL10)/展开后711.68vp
  18 + lg: T; // [840,1080) (大宽度-类型设备) // Tablet/2in1(PC与Tablet二合一产品)/TV/Car/PC/laptop
  19 + // xl?: T; // [1080,1440) (特大宽度-类型设备) // TV/如4K电视
  20 + // xxl?:T; //[1440,+8) (超大宽度-类型设备) // TV/如8K以上(8K/16K)电视
  21 +}
  22 +
  23 +export class BreakpointSystem {
  24 + // 上次通知的断点
  25 + private lastBreakpoint: string = ''
  26 + private breakpoints: Breakpoint[] = [
  27 + { name: 'xs', size: 0 },
  28 + { name: 'sm', size: 320 },
  29 + { name: 'md', size: 600 }, // 520vp
  30 + { name: 'lg', size: 840 }
  31 + ]
  32 +
  33 + private updateCurrentBreakpoint(breakpoint: string): void {
  34 + Logger.info(TAG, 'updateCurrentBreakpoint lastBreakpoint: ' + this.lastBreakpoint + ", breakpoint:" + breakpoint)
  35 + if (this.lastBreakpoint !== breakpoint) {
  36 + this.lastBreakpoint = breakpoint
  37 + AppStorage.setOrCreate<string>('currentBreakpoint', breakpoint)
  38 + // AppStorage.setOrCreate<string>(BreakpointConstants.CURRENT_BREAKPOINT, this.currentBreakpoint);
  39 + Logger.info(TAG, 'on current Breakpoint: ' + this.lastBreakpoint)
  40 + }
  41 + }
  42 +
  43 + public register() {
  44 + this.breakpoints.forEach((breakpoint: Breakpoint, index) => {
  45 + let condition: string
  46 + if (index === this.breakpoints.length - 1) {
  47 + condition = '(' + breakpoint.size + 'vp<=width' + ')'
  48 + } else {
  49 + condition = '(' + breakpoint.size + 'vp<=width<' + this.breakpoints[index + 1].size + 'vp)'
  50 + }
  51 + Logger.info(TAG, "register matchMediaSync condition:" + condition);
  52 + breakpoint.mediaQueryListener = mediaQuery.matchMediaSync(condition)
  53 + breakpoint.mediaQueryListener.on('change', (mediaQueryResult) => {
  54 + // Logger.info(TAG, "register change mediaQueryResult:" + JSON.stringify(mediaQueryResult));
  55 + if (mediaQueryResult.matches) {
  56 + // Logger.info(TAG, "register breakpoint.name:" + JSON.stringify(breakpoint.name));
  57 + this.updateCurrentBreakpoint(breakpoint.name)
  58 + }
  59 + })
  60 + })
  61 + }
  62 +
  63 + public unregister() {
  64 + this.breakpoints.forEach((breakpoint: Breakpoint) => {
  65 + if (breakpoint.mediaQueryListener) {
  66 + breakpoint.mediaQueryListener.off('change')
  67 + }
  68 + })
  69 + }
  70 +}
  71 +
  72 +export class BreakPointType<T> {
  73 + options: BreakPointTypeOption<T>
  74 +
  75 + constructor(option: BreakPointTypeOption<T>) {
  76 + this.options = option
  77 + }
  78 +
  79 + getValue(currentBreakPoint: string): T {
  80 + // return this.options[currentBreakPoint] as T;
  81 + // Logger.info(TAG, "getValue this.options:" + JSON.stringify(this.options));
  82 + if (currentBreakPoint === 'xs') {
  83 + return this.options.xs
  84 + } else if (currentBreakPoint === 'sm') {
  85 + return this.options.sm
  86 + } else if (currentBreakPoint === 'md') {
  87 + return this.options.md
  88 + } else if (currentBreakPoint === 'lg') {
  89 + return this.options.lg
  90 + // } else if (currentBreakPoint === 'xl') {
  91 + // return this.options.xl
  92 + // } else if (currentBreakPoint === 'xxl') {
  93 + // return this.options.xxl
  94 + } else {
  95 + // return undefined
  96 + return this.options.sm
  97 + }
  98 + }
  99 +}
  100 +