From 43196aa8df393fa041f64098a9a6479d3da47bd3 Mon Sep 17 00:00:00 2001 From: wangyu Date: Fri, 6 Mar 2026 16:17:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=88=91=E7=9A=84=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AppScope/resources/base/element/string.json | 2 +- entry/src/main/ets/dialog/SimpleTipDialog.ets | 1 + entry/src/main/ets/dialog/TipDialog.ets | 100 ++-- entry/src/main/ets/entity/ConfigEntity.ets | 11 +- entry/src/main/ets/entity/HomeMenuEntity.ets | 23 - entry/src/main/ets/entity/MenuEntity.ets | 32 ++ .../main/ets/entity/WxVideoServiceEntity.ets | 5 + .../main/ets/manager/UserConfigManager.ets | 16 + entry/src/main/ets/net/Api.ets | 10 +- entry/src/main/ets/net/ApiService.ets | 13 +- entry/src/main/ets/pages/main/MainPage.ets | 8 +- .../src/main/ets/pages/main/home/HomePage.ets | 4 +- .../ets/pages/main/home/course/CoursePage.ets | 10 +- .../pages/main/home/link/TakeMaterialPage.ets | 48 +- .../home/link/material/AudioMaterialPage.ets | 29 +- .../home/link/material/ImageMaterialPage.ets | 29 +- .../home/link/material/TextMaterialPage.ets | 22 +- .../home/link/material/VideoMaterialPage.ets | 29 +- .../ets/pages/main/home/wx/WxVideoPage.ets | 277 +++++----- .../home/wx/material/WxImageMaterialPage.ets | 19 +- .../home/wx/material/WxVideoMaterialPage.ets | 23 +- .../src/main/ets/pages/main/mine/MinePage.ets | 486 ++++++++++-------- .../pages/main/mine/setting/SettingsPage.ets | 85 ++- .../main/mine/setting/about/AboutPage.ets | 2 +- .../ets/pages/main/record/AudioRecordPage.ets | 4 +- .../ets/pages/main/record/ImageRecordPage.ets | 4 +- .../main/ets/pages/main/record/RecordPage.ets | 137 ----- .../ets/pages/main/record/VideoRecordPage.ets | 4 +- .../main/ets/pages/video/VideoPlayerPage.ets | 6 +- entry/src/main/ets/pages/web/WebPage.ets | 11 - entry/src/main/ets/view/EmptyView.ets | 44 +- entry/src/main/ets/view/MaterialItemView.ets | 62 ++- entry/src/main/ets/view/TextItemChildView.ets | 10 +- entry/src/main/ets/view/TextItemView.ets | 4 +- ...iewModel.ets => TakeMaterialViewModel.ets} | 2 +- .../main/ets/viewModel/WxVideoViewModel.ets | 10 +- .../main/resources/base/element/color.json | 8 + .../resources/base/media/ic_arrow_dp16.png | Bin 454 -> 0 bytes .../resources/base/media/ic_arrow_dp16.webp | Bin 0 -> 378 bytes .../main/resources/base/media/ic_copy_id.webp | Bin 530 -> 550 bytes .../resources/base/media/ic_empty_audio.webp | Bin 10926 -> 0 bytes .../resources/base/media/ic_empty_data.webp | Bin 10570 -> 7936 bytes .../resources/base/media/ic_empty_image.webp | Bin 10098 -> 0 bytes .../resources/base/media/ic_empty_text.webp | Bin 10402 -> 0 bytes .../resources/base/media/ic_empty_video.webp | Bin 10612 -> 0 bytes .../main/resources/base/media/ic_link.webp | Bin 1188 -> 1116 bytes .../resources/base/media/ic_mine_icon1.png | Bin 0 -> 3581 bytes .../resources/base/media/ic_mine_icon1.webp | Bin 790 -> 0 bytes .../resources/base/media/ic_mine_icon2.png | Bin 0 -> 4315 bytes .../resources/base/media/ic_mine_icon2.webp | Bin 1014 -> 0 bytes .../resources/base/media/ic_mine_icon3.png | Bin 0 -> 2867 bytes .../resources/base/media/ic_mine_icon3.webp | Bin 892 -> 0 bytes .../resources/base/media/ic_mine_icon4.png | Bin 0 -> 3118 bytes .../resources/base/media/ic_mine_icon4.webp | Bin 990 -> 0 bytes .../resources/base/media/ic_mine_icon5.webp | Bin 948 -> 0 bytes .../resources/base/media/ic_mine_icon6.webp | Bin 588 -> 0 bytes .../resources/base/media/ic_mine_icon7.webp | Bin 808 -> 0 bytes .../resources/base/media/ic_mine_service.webp | Bin 0 -> 1244 bytes .../resources/base/media/ic_mine_setting.webp | Bin 0 -> 1580 bytes .../resources/base/media/ic_mine_top_bg.webp | Bin 41722 -> 48632 bytes .../base/media/ic_mine_vip_arrow.webp | Bin 0 -> 338 bytes .../resources/base/media/ic_mine_vip_bg.webp | Bin 2320 -> 5766 bytes .../resources/base/media/ic_mine_vip_tag.webp | Bin 0 -> 6894 bytes .../base/media/ic_playback_helper_arrow.webp | Bin 0 -> 552 bytes .../base/media/ic_take_material_course.webp | Bin 0 -> 422 bytes .../resources/base/media/ic_video_course.webp | Bin 0 -> 1052 bytes .../base/media/ic_video_helper_arrow.webp | Bin 0 -> 562 bytes .../base/media/ic_wx_video_course.png | Bin 2131 -> 0 bytes 68 files changed, 832 insertions(+), 758 deletions(-) delete mode 100644 entry/src/main/ets/entity/HomeMenuEntity.ets create mode 100644 entry/src/main/ets/entity/MenuEntity.ets create mode 100644 entry/src/main/ets/entity/WxVideoServiceEntity.ets delete mode 100644 entry/src/main/ets/pages/main/record/RecordPage.ets rename entry/src/main/ets/viewModel/{LinkRecognizeViewModel.ets => TakeMaterialViewModel.ets} (97%) delete mode 100644 entry/src/main/resources/base/media/ic_arrow_dp16.png create mode 100644 entry/src/main/resources/base/media/ic_arrow_dp16.webp delete mode 100644 entry/src/main/resources/base/media/ic_empty_audio.webp delete mode 100644 entry/src/main/resources/base/media/ic_empty_image.webp delete mode 100644 entry/src/main/resources/base/media/ic_empty_text.webp delete mode 100644 entry/src/main/resources/base/media/ic_empty_video.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_icon1.png delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon1.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_icon2.png delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon2.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_icon3.png delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon3.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_icon4.png delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon4.webp delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon5.webp delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon6.webp delete mode 100644 entry/src/main/resources/base/media/ic_mine_icon7.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_service.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_setting.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_vip_arrow.webp create mode 100644 entry/src/main/resources/base/media/ic_mine_vip_tag.webp create mode 100644 entry/src/main/resources/base/media/ic_playback_helper_arrow.webp create mode 100644 entry/src/main/resources/base/media/ic_take_material_course.webp create mode 100644 entry/src/main/resources/base/media/ic_video_course.webp create mode 100644 entry/src/main/resources/base/media/ic_video_helper_arrow.webp delete mode 100644 entry/src/main/resources/base/media/ic_wx_video_course.png diff --git a/AppScope/resources/base/element/string.json b/AppScope/resources/base/element/string.json index 3da3fac..c357dc4 100644 --- a/AppScope/resources/base/element/string.json +++ b/AppScope/resources/base/element/string.json @@ -18,7 +18,7 @@ }, { "name": "wx_video_course", - "value": "1、点击【添加助手】,自动跳转进入微信创建快存助手;\n2、进入微信视频号,选择视频分享至-客服消息-素材助手;\n3、返回【素材魔方APP】微信视频号页面,下拉刷新即可下载微信号视频;" + "value": "1、点击【添加助手】,自动跳转进入微信创建素材助手;\n2、进入微信视频号,选择视频分享至-客服消息-素材助手;\n3、返回【素材魔方APP】微信视频号页面,下拉刷新即可下载微信号视频;" }, { "name": "wx_playback_course", diff --git a/entry/src/main/ets/dialog/SimpleTipDialog.ets b/entry/src/main/ets/dialog/SimpleTipDialog.ets index 02f8917..46de116 100644 --- a/entry/src/main/ets/dialog/SimpleTipDialog.ets +++ b/entry/src/main/ets/dialog/SimpleTipDialog.ets @@ -18,6 +18,7 @@ function defaultBuilder(option: TipDialogOption) { Text(option.title) .fontColor($r('app.color.color_212226')) .fontSize(22) + .fontFamily('ysbth') .fontWeight(FontWeight.Medium) .visibility(StrUtil.isEmpty(option.title) ? Visibility.Hidden : Visibility.Visible) Text(option.content) diff --git a/entry/src/main/ets/dialog/TipDialog.ets b/entry/src/main/ets/dialog/TipDialog.ets index 7f37990..41df61e 100644 --- a/entry/src/main/ets/dialog/TipDialog.ets +++ b/entry/src/main/ets/dialog/TipDialog.ets @@ -12,58 +12,60 @@ export declare class TipDialogOption { @Builder function defaultBuilder(option: TipDialogOption) { - Column() { - Text(option.title) - .fontColor($r('app.color.color_90ffffff')) - .fontSize(18) - .fontWeight(FontWeight.Medium) - .visibility(StrUtil.isEmpty(option.title) ? Visibility.Hidden : Visibility.Visible) - Text(option.content) - .textAlign(TextAlign.Center) - .fontColor(StrUtil.isNotEmpty(option.title) ? $r('app.color.color_80ffffff') : $r('app.color.color_90ffffff')) - .fontSize(StrUtil.isNotEmpty(option.title) ? 14 : 18) - .fontWeight(StrUtil.isNotEmpty(option.title) ? FontWeight.Normal : FontWeight.Medium) - .textOverflow({ overflow: TextOverflow.Ellipsis }) - .ellipsisMode(EllipsisMode.END) - .margin({ left: 27, top: 12, right: 27 }) - .maxLines(5) - Row() { - Button(StrUtil.isNotEmpty(option.leftText) ? option.leftText : '取消', { type: ButtonType.Capsule, stateEffect: false }) - .fontColor($r('app.color.color_50ffffff')) - .fontSize(14) - .backgroundColor($r('app.color.color_333333')) - .layoutWeight(1) - .height(40) - .onClick(() => { - TipDialog.dismiss(); - if (option.callback?.cancel) { - option.callback?.cancel(); - } - }) - Blank().width(12) - Button(StrUtil.isNotEmpty(option.rightText) ? option.rightText : '确定', { type: ButtonType.Capsule, stateEffect: false }) - .fontColor(Color.White) - .fontSize(14) - .backgroundColor(Color.Transparent) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .layoutWeight(1) - .height(40) - .onClick(() => { - TipDialog.dismiss(); - if (option.callback?.confirm) { - option.callback?.confirm(); - } - }) + Stack({alignContent: Alignment.Top}) { + Image($r('app.media.ic_tip_dialog_top_bg')).width('100%').aspectRatio(2.72) + + Column() { + Text(option.title) + .fontColor($r('app.color.color_212226')) + .fontSize(22) + .fontFamily('ysbth') + .fontWeight(FontWeight.Medium) + .visibility(StrUtil.isEmpty(option.title) ? Visibility.Hidden : Visibility.Visible) + Text(option.content) + .textAlign(TextAlign.Center) + .fontColor(StrUtil.isNotEmpty(option.title) ? $r('app.color.color_727686') : $r('app.color.color_212226')) + .fontSize(StrUtil.isNotEmpty(option.title) ? 14 : 22) + .fontWeight(StrUtil.isNotEmpty(option.title) ? FontWeight.Normal : FontWeight.Medium) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .margin({ left: 27, top: 12, right: 27 }) + .maxLines(5) + Row(){ + Button(StrUtil.isNotEmpty(option.leftText) ? option.leftText : '取消', { type: ButtonType.Capsule, stateEffect: true }) + .width(110) + .height(40) + .fontColor($r('app.color.color_80859B')) + .fontSize(16) + .backgroundColor($r("app.color.color_f1f2f6")) + .margin({left: 20}) + .onClick(() => { + TipDialog.dismiss(); + if (option.callback?.cancel) { + option.callback?.cancel(); + } + }) + Blank().layoutWeight(1) + Button(StrUtil.isNotEmpty(option.rightText) ? option.rightText : '确定', { type: ButtonType.Capsule, stateEffect: true }) + .width(110) + .height(40) + .fontColor(Color.White) + .fontSize(16) + .backgroundColor($r("app.color.color_466afd")) + .margin({right: 20}) + .onClick(() => { + TipDialog.dismiss(); + if (option.callback?.confirm) { + option.callback?.confirm(); + } + }) + } + .margin({top: 20}) } - .padding({ left: 14, right: 14 }) - .margin({ top: 20 }) + .padding({ top: 20, bottom: 20 }) } - .padding({ top: 22, bottom: 22 }) .borderRadius(20) - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .width('80%') } diff --git a/entry/src/main/ets/entity/ConfigEntity.ets b/entry/src/main/ets/entity/ConfigEntity.ets index 942f7fb..e8264f6 100644 --- a/entry/src/main/ets/entity/ConfigEntity.ets +++ b/entry/src/main/ets/entity/ConfigEntity.ets @@ -30,19 +30,22 @@ export class ConfigEntity { wxVideoEnable: boolean = true; //视频号开关 @Expose({ name: 'client.wechat.video.playback.share.enable' }) - playbackEnable: boolean = true; //直播回放开关 + playbackEnable: boolean = true; // - @Expose({ name: 'client.course.wechat.video' }) + @Expose({ name: 'client.course.urlplay' }) + takeMaterialCourse: string = ""; //链接提取教程链接 + + @Expose({ name: 'client.course.sphplay' }) wxVideoCourse: string = ""; //视频号教程 - @Expose({ name: 'client.course.playback' }) + @Expose({ name: 'client.course.zbhfplay' }) wxPlaybackCourse: string = ""; //直播回放教程 @Expose({ name: 'client.playback.join.type' }) wxPlaybackJoinType: string = ""; //直播加群方式 @Type(() => WxVideoConfigEntity) - @Expose({ name: 'client.mp.share.config.kcsp' }) + @Expose({ name: 'client.mp.share.config.scmf' }) wxVideoConfig: WxVideoConfigEntity = new WxVideoConfigEntity() //直播回放小程序跳转配置 @Expose({ name: 'client.hmos.video.service.enable' }) //视频号助手是否可用 diff --git a/entry/src/main/ets/entity/HomeMenuEntity.ets b/entry/src/main/ets/entity/HomeMenuEntity.ets deleted file mode 100644 index b55148b..0000000 --- a/entry/src/main/ets/entity/HomeMenuEntity.ets +++ /dev/null @@ -1,23 +0,0 @@ -import { ArrayList } from "@kit.ArkTS"; - -export class HomeMenuEntity { - icon: Resource | null = null; - title: string = ""; - alias: string = ""; - - constructor(icon: Resource, title: string, alias: string) { - this.icon = icon; - this.title = title; - this.alias = alias; - } -} - -export function homeMenuList(): ArrayList { - let list = new ArrayList() - list.add(new HomeMenuEntity($r('app.media.ic_home_icon6'), "视频转音频", "videoToAudio")) - list.add(new HomeMenuEntity($r('app.media.ic_home_icon8'), "视频加水印", "addWatermark")) - list.add(new HomeMenuEntity($r('app.media.ic_home_icon5'), "视频转文字", "videoToText")) - list.add(new HomeMenuEntity($r('app.media.ic_home_icon9'), "长图拼接", "longImageMerge")) - list.add(new HomeMenuEntity($r('app.media.ic_home_icon10'), "更多功能", "moreTools")) - return list; -} \ No newline at end of file diff --git a/entry/src/main/ets/entity/MenuEntity.ets b/entry/src/main/ets/entity/MenuEntity.ets new file mode 100644 index 0000000..9b6e12b --- /dev/null +++ b/entry/src/main/ets/entity/MenuEntity.ets @@ -0,0 +1,32 @@ +import { ArrayList } from "@kit.ArkTS"; + +export class MenuEntity { + icon: Resource | null = null; + title: string = ""; + alias: string = ""; + + constructor(icon: Resource, title: string, alias: string) { + this.icon = icon; + this.title = title; + this.alias = alias; + } +} + +export function homeMenuList(): ArrayList { + let list = new ArrayList() + list.add(new MenuEntity($r('app.media.ic_home_icon6'), "视频转音频", "videoToAudio")) + list.add(new MenuEntity($r('app.media.ic_home_icon8'), "视频加水印", "addWatermark")) + list.add(new MenuEntity($r('app.media.ic_home_icon5'), "视频转文字", "videoToText")) + list.add(new MenuEntity($r('app.media.ic_home_icon9'), "长图拼接", "longImageMerge")) + list.add(new MenuEntity($r('app.media.ic_home_icon10'), "更多功能", "moreTools")) + return list; +} + +export function mineMenuList(): ArrayList { + let list = new ArrayList() + list.add(new MenuEntity($r('app.media.ic_mine_icon1'), "提取记录", "history")) + list.add(new MenuEntity($r('app.media.ic_mine_icon2'), "次数兑换", "diamond")) + list.add(new MenuEntity($r('app.media.ic_mine_icon3'), "意见反馈", "feedback")) + list.add(new MenuEntity($r('app.media.ic_mine_icon4'), "联系客服", "service")) + return list; +} \ No newline at end of file diff --git a/entry/src/main/ets/entity/WxVideoServiceEntity.ets b/entry/src/main/ets/entity/WxVideoServiceEntity.ets new file mode 100644 index 0000000..7892af6 --- /dev/null +++ b/entry/src/main/ets/entity/WxVideoServiceEntity.ets @@ -0,0 +1,5 @@ + +export class WxVideoServiceEntity { + corp_id: string = "" + link: string = "" +} \ No newline at end of file diff --git a/entry/src/main/ets/manager/UserConfigManager.ets b/entry/src/main/ets/manager/UserConfigManager.ets index 959f946..86e510c 100644 --- a/entry/src/main/ets/manager/UserConfigManager.ets +++ b/entry/src/main/ets/manager/UserConfigManager.ets @@ -69,6 +69,7 @@ class UserConfigManager { this.saveWxVideoEnable(config.config.wxVideoEnable); this.savePlaybackEnable(config.config.playbackEnable); this.saveLoginType(config.config.loginType); + this.saveTakeMaterialCourse(config.config.takeMaterialCourse); this.saveWxVideoCourse(config.config.wxVideoCourse); this.savePlaybackCourse(config.config.wxPlaybackCourse); this.saveWxPlaybackJoinType(config.config.wxPlaybackJoinType); @@ -242,6 +243,21 @@ class UserConfigManager { return new Array('phone'); } + /** + * 链接提取教程链接 + * @param url + */ + saveTakeMaterialCourse(url?: string) { + if (StrUtil.isNotEmpty(url)) { + PrefUtils.put('take_material_course', url!!); + } + } + + getTakeMaterialCourse(): string { + return PrefUtils.getString('take_material_course'); + } + + /** * 视频号教程链接 * @param url diff --git a/entry/src/main/ets/net/Api.ets b/entry/src/main/ets/net/Api.ets index d37197d..de00844 100644 --- a/entry/src/main/ets/net/Api.ets +++ b/entry/src/main/ets/net/Api.ets @@ -82,27 +82,27 @@ export class Api { /** * 链接提取 */ - static readonly MATERIAL_INFO = '/api/material'; + static readonly MATERIAL_INFO = '/api/mat/url'; /** * 视频号和直播回放提取 */ - static readonly WX_VIDEO = '/api/weixin/video/log'; + static readonly WX_VIDEO = '/api/wx'; /** * 跳转至微信发送视频号给客服 */ - static readonly WX_VIDEO_SERVICE = '/api/weixin/video/service' + static readonly WX_VIDEO_SERVICE = '/api/wx/service/url' /** * 绑定微信用户信息 */ - static readonly BIND_WX_USER_INFO = '/api/weixin/user/info' + static readonly BIND_WX_USER_INFO = '/api/wx/user/info' /** * 下载记录 */ - static readonly DOWNLOAD_HISTORY_LIST = '/api/material/log' + static readonly DOWNLOAD_HISTORY_LIST = '/api/mat/log' /** * 素材列表 diff --git a/entry/src/main/ets/net/ApiService.ets b/entry/src/main/ets/net/ApiService.ets index 2605da3..3d98415 100644 --- a/entry/src/main/ets/net/ApiService.ets +++ b/entry/src/main/ets/net/ApiService.ets @@ -275,7 +275,7 @@ class ApiService { * @returns */ analysisMaterial(logId: string): Promise { - const params: Record = { 'logid': logId } + const params: Record = { 'id': logId } return AxiosRequest.get(Api.MATERIAL_INFO, params) } @@ -283,9 +283,8 @@ class ApiService { * 获取视频号和直播回放 * @returns */ - wxVideoList(scene: string): Promise { - const params: Record = { 'v': 'v2', 'scene': scene } - return AxiosRequest.get(Api.WX_VIDEO, params) + wxVideoList(): Promise { + return AxiosRequest.get(Api.WX_VIDEO) } /** @@ -293,8 +292,8 @@ class ApiService { * @returns */ deleteWxVideo(logId: string): Promise { - const params: Record = { 'logId': logId } - return AxiosRequest.delete(Api.WX_VIDEO, params) + const params: Record = { 'id': logId } + return AxiosRequest.delete(Api.DOWNLOAD_HISTORY_LIST, params) } /** @@ -307,7 +306,7 @@ class ApiService { 'size': size, 'message': message } - return AxiosRequest.put(Api.MATERIAL_INFO, params) + return AxiosRequest.put(Api.DOWNLOAD_HISTORY_LIST, params) } /** diff --git a/entry/src/main/ets/pages/main/MainPage.ets b/entry/src/main/ets/pages/main/MainPage.ets index 11b71aa..1585920 100644 --- a/entry/src/main/ets/pages/main/MainPage.ets +++ b/entry/src/main/ets/pages/main/MainPage.ets @@ -1,7 +1,6 @@ import { router, window } from '@kit.ArkUI'; import { HomePage } from './home/HomePage'; import { MinePage } from './mine/MinePage'; -import { RecordPage } from './record/RecordPage'; import systemDateTime from '@ohos.systemDateTime'; import { ToastUtils } from '../../utils/ToastUtils'; import { AppUtil, PasteboardUtil, StrUtil } from '@pura/harmony-utils'; @@ -55,10 +54,9 @@ struct MainPage { onPageShow(): void { this.viewModel.userinfo(); - if (this.currentIndex === 1) { - AppUtil.getContext().eventHub.emit(EventConstants.RecordRefreshEvent); - } else if (this.currentIndex === 2) { + if (this.currentIndex === 3) { AppUtil.getContext().eventHub.emit(EventConstants.MineRefreshEvent); + AppUtil.getContext().eventHub.emit(EventConstants.RecordRefreshEvent); } this.checkPasteboard() } @@ -69,7 +67,7 @@ struct MainPage { AppUtil.getContext().eventHub.emit(EventConstants.MineRefreshEvent); }) AppUtil.getContext().eventHub.on(EventConstants.JumpToRecordEvent, (index: number) => { - this.tabController.changeIndex(1) + this.tabController.changeIndex(3) this.currentIndex = 1 }) } diff --git a/entry/src/main/ets/pages/main/home/HomePage.ets b/entry/src/main/ets/pages/main/home/HomePage.ets index cef80f1..e7909da 100644 --- a/entry/src/main/ets/pages/main/home/HomePage.ets +++ b/entry/src/main/ets/pages/main/home/HomePage.ets @@ -1,5 +1,5 @@ import { borderRadiuses } from '@kit.ArkUI'; -import { HomeMenuEntity, homeMenuList } from '../../../entity/HomeMenuEntity'; +import { MenuEntity, homeMenuList } from '../../../entity/MenuEntity'; import { NoticeEntity } from '../../../entity/NoticeEntity'; import { HomeViewModel } from '../../../viewModel/HomeViewModel'; import { AppUtil, WantUtil } from '@pura/harmony-utils'; @@ -323,7 +323,7 @@ export struct HomePage { .id('layout_top_menu') Grid() { - ForEach(homeMenuList().convertToArray(), (item: HomeMenuEntity) => { + ForEach(homeMenuList().convertToArray(), (item: MenuEntity) => { GridItem() { Column() { Image(item.icon) diff --git a/entry/src/main/ets/pages/main/home/course/CoursePage.ets b/entry/src/main/ets/pages/main/home/course/CoursePage.ets index 32fc070..1c5b22b 100644 --- a/entry/src/main/ets/pages/main/home/course/CoursePage.ets +++ b/entry/src/main/ets/pages/main/home/course/CoursePage.ets @@ -1,3 +1,4 @@ +import { ConfigManager } from '../../../../manager/UserConfigManager' import { TitleBar } from '../../../../view/TitleBar' @Entry @@ -5,14 +6,9 @@ import { TitleBar } from '../../../../view/TitleBar' struct CoursePage { build() { Column() { - TitleBar({title: '指导教程'}).width('100%') + TitleBar({title: '提取教程'}).width('100%') Scroll() { - Column() { - Image($r('app.media.ic_course1')) - Image($r('app.media.ic_course2')) - Image($r('app.media.ic_course3')) - } - .height('auto') + Image(ConfigManager.getTakeMaterialCourse()).width('100%').height('auto') } .layoutWeight(1) .scrollBar(BarState.Off) diff --git a/entry/src/main/ets/pages/main/home/link/TakeMaterialPage.ets b/entry/src/main/ets/pages/main/home/link/TakeMaterialPage.ets index f6b00ce..4a962a3 100644 --- a/entry/src/main/ets/pages/main/home/link/TakeMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/link/TakeMaterialPage.ets @@ -13,7 +13,7 @@ import { import { VipPermissionEntity } from '../../../../entity/VipPermissionEntity'; import { LoginManager } from '../../../../manager/LoginGlobalManager'; import { ToastUtils } from '../../../../utils/ToastUtils'; -import { LinkRecognizeViewModel } from '../../../../viewModel/LinkRecognizeViewModel'; +import { TakeMaterialViewModel } from '../../../../viewModel/TakeMaterialViewModel'; import { AudioMaterialPage } from './material/AudioMaterialPage'; import { ImageMaterialPage } from './material/ImageMaterialPage'; import { TextMaterialPage } from './material/TextMaterialPage'; @@ -47,7 +47,7 @@ struct TakeMaterialPage { @Local videoRowCount: number = 1; @Local imageRowCount: number = 1; - viewModel: LinkRecognizeViewModel = new LinkRecognizeViewModel(this.getUIContext()); + viewModel: TakeMaterialViewModel = new TakeMaterialViewModel(this.getUIContext()); tabController: TabsController = new TabsController(); titles: Array = ['视频', '图片', '音频', '文本']; @@ -460,7 +460,7 @@ struct TakeMaterialPage { Column() { Row() { Button({ type: ButtonType.Circle, stateEffect: true }) { - Image($r('app.media.ic_back')).width(24).height(24) + Image($r('app.media.ic_black_back')).width(24).height(24) } .width(40) .height(40) @@ -474,10 +474,11 @@ struct TakeMaterialPage { Image($r('app.media.ic_link')).width(18).height(18) TextInput({ placeholder: '请输入链接地址', text: this.inputText }) .layoutWeight(1) - .fontColor('#D6D6D6') + .fontColor($r('app.color.color_1a1a1a')) .fontSize(14) - .placeholderColor($r('app.color.color_30ffffff')) + .placeholderColor($r('app.color.color_999999')) .placeholderFont({ size: 14 }) + .backgroundColor(Color.Transparent) .onChange((value: string) => { this.inputText = value; }) @@ -485,17 +486,17 @@ struct TakeMaterialPage { .width(18) .height(18) .padding(2) + .margin({right: 5}) .visibility(StrUtil.isNotEmpty(this.inputText) ? Visibility.Visible : Visibility.None) .onClick(() => { this.inputText = ''; }) - Divider() - .vertical(true) - .strokeWidth(1) - .height(14) - .color($r('app.color.color_10ffffff')) - .margin({ left: 12, right: 12 }) - Text('获取').fontColor($r('app.color.color_80ffffff')).fontSize(14) + Button('获取', {type: ButtonType.Capsule ,stateEffect:true}) + .fontSize(14) + .width(64) + .height(32) + .margin({right: 4}) + .backgroundColor($r('app.color.color_466afd')) .onClick(() => { if (StrUtil.isNotEmpty(this.inputText)) { KeyboardUtil.hide() @@ -507,11 +508,11 @@ struct TakeMaterialPage { }) } .layoutWeight(1) - .height(34) + .height(40) .borderRadius(20) - .backgroundColor($r('app.color.color_333333')) - .margin({ left: 20, right: 16 }) - .padding({ left: 10, right: 10 }) + .backgroundColor(Color.White) + .margin({ left: 10, right: 16 }) + .padding({left: 10}) }.height(100).padding({ top: 50 }) Tabs({ barPosition: BarPosition.Start, controller: this.tabController }) { @@ -572,12 +573,9 @@ struct TakeMaterialPage { .tabBar(this.tabBuilder(this.titles[3], 3)) } .scrollable(false) - .onTabBarClick((index) => { + .onSelected((index: number) => { this.currentIndex = index; }) - /*.onSelected((index: number) => { - this.currentIndex = index; - })*/ .layoutWeight(1) } .width('100%') @@ -587,14 +585,16 @@ struct TakeMaterialPage { @Builder tabBuilder(title: string, targetIndex: number) { - Column() { + Stack() { + if (this.currentIndex === targetIndex) { + Image($r('app.media.ic_tab_indicator')).width(27).height(11).margin({top: 13}) + } Text(title) - .fontColor(this.currentIndex === targetIndex ? $r("app.color.color_466afd") : $r('app.color.color_50ffffff')) - .fontSize(this.currentIndex === targetIndex ? 17 : 14) + .fontColor(this.currentIndex === targetIndex ? $r("app.color.color_212226") : $r('app.color.color_5c5f6c')) + .fontSize(this.currentIndex === targetIndex ? 16 : 14) .fontWeight(this.currentIndex === targetIndex ? FontWeight.Medium : FontWeight.Regular) } .width('100%') .height(50) - .justifyContent(FlexAlign.Center) } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/main/home/link/material/AudioMaterialPage.ets b/entry/src/main/ets/pages/main/home/link/material/AudioMaterialPage.ets index 51c9c17..166d916 100644 --- a/entry/src/main/ets/pages/main/home/link/material/AudioMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/link/material/AudioMaterialPage.ets @@ -1,3 +1,4 @@ +import { RouterUrls } from '../../../../../common/RouterUrls'; import { AudioMaterial } from '../../../../../entity/MaterialInfoEntity'; import { ToastUtils } from '../../../../../utils/ToastUtils'; import { EmptyView, PageStatus } from '../../../../../view/EmptyView'; @@ -43,7 +44,7 @@ export struct AudioMaterialPage { Row() { Row() { Image(this.mediaList.every(item => item.isChecked) ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')).width(18).height(18) - Text('全选').fontColor($r('app.color.color_90ffffff')).fontSize(16).margin({ left: 7 }) + Text('全选').fontColor($r('app.color.color_1a1a1a')).fontSize(16).margin({ left: 7 }) } .onClick(() => { this.isCheckAll = !this.isCheckAll; @@ -57,9 +58,12 @@ export struct AudioMaterialPage { Button('转发', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .backgroundColor($r('app.color.color_333333')) - .fontColor($r('app.color.color_50ffffff')) .fontSize(15) + .fontColor($r('app.color.color_466afd')) + .fontWeight(FontWeight.Medium) + .borderWidth(1) + .borderColor($r('app.color.color_466afd')) + .backgroundColor(Color.Transparent) .onClick(() => { if (this.onShare) { const list = this.selectedItems(); @@ -76,12 +80,10 @@ export struct AudioMaterialPage { Button('保存', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .fontColor($r('app.color.color_90ffffff')) + .fontColor(Color.White) .fontSize(15) + .fontWeight(FontWeight.Medium) + .backgroundColor($r('app.color.color_466afd')) .margin({ left: 12 }) .onClick(() => { if (this.onSave) { @@ -94,7 +96,7 @@ export struct AudioMaterialPage { } }) } - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .padding({ left: 16, top: 10, @@ -106,8 +108,13 @@ export struct AudioMaterialPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_audio'), - noDataText: '暂无音频' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据', + noDataBtnText: '链接提取教程', + noDataBtnIcon: $r('app.media.ic_take_material_course'), + onBtnClick: () => { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.COURSE_PAGE}) + } }) } } diff --git a/entry/src/main/ets/pages/main/home/link/material/ImageMaterialPage.ets b/entry/src/main/ets/pages/main/home/link/material/ImageMaterialPage.ets index 1d25221..a9d5278 100644 --- a/entry/src/main/ets/pages/main/home/link/material/ImageMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/link/material/ImageMaterialPage.ets @@ -1,3 +1,4 @@ +import { RouterUrls } from '../../../../../common/RouterUrls'; import { ImageMaterial } from '../../../../../entity/MaterialInfoEntity'; import { ToastUtils } from '../../../../../utils/ToastUtils'; import { EmptyView, PageStatus } from '../../../../../view/EmptyView'; @@ -46,7 +47,7 @@ export struct ImageMaterialPage { Row() { Row() { Image(this.mediaList.every(item => item.isChecked) ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')).width(18).height(18) - Text('全选').fontColor($r('app.color.color_90ffffff')).fontSize(16).margin({ left: 7 }) + Text('全选').fontColor($r('app.color.color_1a1a1a')).fontSize(16).margin({ left: 7 }) } .onClick(() => { this.isCheckAll = !this.isCheckAll; @@ -60,9 +61,12 @@ export struct ImageMaterialPage { Button('转发', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .backgroundColor($r('app.color.color_333333')) - .fontColor($r('app.color.color_50ffffff')) .fontSize(15) + .fontColor($r('app.color.color_466afd')) + .fontWeight(FontWeight.Medium) + .borderWidth(1) + .borderColor($r('app.color.color_466afd')) + .backgroundColor(Color.Transparent) .onClick(() => { if (this.onShare) { const list = this.selectedItems(); @@ -79,12 +83,10 @@ export struct ImageMaterialPage { Button('保存', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .fontColor($r('app.color.color_90ffffff')) + .fontColor(Color.White) .fontSize(15) + .fontWeight(FontWeight.Medium) + .backgroundColor($r('app.color.color_466afd')) .margin({ left: 12 }) .onClick(() => { if (this.onSave) { @@ -97,7 +99,7 @@ export struct ImageMaterialPage { } }) } - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .padding({ left: 16, top: 10, @@ -109,8 +111,13 @@ export struct ImageMaterialPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_image'), - noDataText: '暂无图片' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据', + noDataBtnText: '链接提取教程', + noDataBtnIcon: $r('app.media.ic_take_material_course'), + onBtnClick: () => { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.COURSE_PAGE}) + } }) } } diff --git a/entry/src/main/ets/pages/main/home/link/material/TextMaterialPage.ets b/entry/src/main/ets/pages/main/home/link/material/TextMaterialPage.ets index d2090cc..c6e1f60 100644 --- a/entry/src/main/ets/pages/main/home/link/material/TextMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/link/material/TextMaterialPage.ets @@ -1,4 +1,5 @@ import { PasteboardUtil } from '@pura/harmony-utils'; +import { RouterUrls } from '../../../../../common/RouterUrls'; import { TextMaterial } from '../../../../../entity/MaterialInfoEntity'; import { ToastUtils } from '../../../../../utils/ToastUtils'; import { EmptyView, PageStatus } from '../../../../../view/EmptyView'; @@ -42,7 +43,7 @@ export struct TextMaterialPage { Row() { Row() { Image(this.mediaList.every(item => item.isChecked) ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')).width(18).height(18) - Text('全选').fontColor($r('app.color.color_90ffffff')).fontSize(16).margin({ left: 7 }) + Text('全选').fontColor($r('app.color.color_1a1a1a')).fontSize(16).margin({ left: 7 }) } .onClick(() => { this.isCheckAll = !this.isCheckAll; @@ -54,12 +55,10 @@ export struct TextMaterialPage { Button('复制文本', { type: ButtonType.Capsule, stateEffect: true }) .layoutWeight(1) .height(40) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .fontColor($r('app.color.color_90ffffff')) + .fontColor(Color.White) .fontSize(15) + .fontWeight(FontWeight.Medium) + .backgroundColor($r('app.color.color_466afd')) .margin({ left: 27 }) .onClick(() => { const list = this.selectedItems(); @@ -73,7 +72,7 @@ export struct TextMaterialPage { } }) } - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .padding({ left: 16, top: 10, @@ -85,8 +84,13 @@ export struct TextMaterialPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_text'), - noDataText: '暂无文本' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据', + noDataBtnText: '链接提取教程', + noDataBtnIcon: $r('app.media.ic_take_material_course'), + onBtnClick: () => { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.COURSE_PAGE}) + } }) } } diff --git a/entry/src/main/ets/pages/main/home/link/material/VideoMaterialPage.ets b/entry/src/main/ets/pages/main/home/link/material/VideoMaterialPage.ets index aef469a..fef7fec 100644 --- a/entry/src/main/ets/pages/main/home/link/material/VideoMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/link/material/VideoMaterialPage.ets @@ -1,3 +1,4 @@ +import { RouterUrls } from '../../../../../common/RouterUrls'; import { VideoMaterial } from '../../../../../entity/MaterialInfoEntity'; import { ToastUtils } from '../../../../../utils/ToastUtils'; import { EmptyView, PageStatus } from '../../../../../view/EmptyView'; @@ -46,7 +47,7 @@ export struct VideoMaterialPage { Row() { Row() { Image(this.mediaList.every(item => item.isChecked) ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')).width(18).height(18) - Text('全选').fontColor($r('app.color.color_90ffffff')).fontSize(16).margin({ left: 7 }) + Text('全选').fontColor($r('app.color.color_1a1a1a')).fontSize(16).margin({ left: 7 }) } .onClick(() => { this.isCheckAll = !this.isCheckAll; @@ -60,9 +61,12 @@ export struct VideoMaterialPage { Button('转发', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .backgroundColor($r('app.color.color_333333')) - .fontColor($r('app.color.color_50ffffff')) .fontSize(15) + .fontColor($r('app.color.color_466afd')) + .fontWeight(FontWeight.Medium) + .borderWidth(1) + .borderColor($r('app.color.color_466afd')) + .backgroundColor(Color.Transparent) .onClick(() => { if (this.onShare) { const list = this.selectedItems(); @@ -79,12 +83,10 @@ export struct VideoMaterialPage { Button('保存', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .fontColor($r('app.color.color_90ffffff')) + .fontColor(Color.White) .fontSize(15) + .fontWeight(FontWeight.Medium) + .backgroundColor($r('app.color.color_466afd')) .margin({ left: 12 }) .onClick(() => { if (this.onSave) { @@ -97,7 +99,7 @@ export struct VideoMaterialPage { } }) } - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .padding({ left: 16, top: 10, @@ -109,8 +111,13 @@ export struct VideoMaterialPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_video'), - noDataText: '暂无视频' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据', + noDataBtnText: '链接提取教程', + noDataBtnIcon: $r('app.media.ic_take_material_course'), + onBtnClick: () => { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.COURSE_PAGE}) + } }) } } diff --git a/entry/src/main/ets/pages/main/home/wx/WxVideoPage.ets b/entry/src/main/ets/pages/main/home/wx/WxVideoPage.ets index 9a3c9fe..1604b47 100644 --- a/entry/src/main/ets/pages/main/home/wx/WxVideoPage.ets +++ b/entry/src/main/ets/pages/main/home/wx/WxVideoPage.ets @@ -1,6 +1,6 @@ -import { AppUtil, FileUtil, ObjectUtil, - PasteboardUtil, - PermissionUtil, RandomUtil, StrUtil } from '@pura/harmony-utils'; +import { + AppUtil, FileUtil, ObjectUtil, PasteboardUtil, RandomUtil, StrUtil +} from '@pura/harmony-utils'; import { EventConstants } from '../../../../common/EventConstants'; import { RouterUrls } from '../../../../common/RouterUrls'; import { DownloadDialog, DownloadStatus } from '../../../../dialog/DownloadDialog'; @@ -15,7 +15,7 @@ import { ToastUtils } from '../../../../utils/ToastUtils'; import { TitleBar } from '../../../../view/TitleBar'; import { WxVideoViewModel } from '../../../../viewModel/WxVideoViewModel'; import { WxVideoMaterialPage } from './material/WxVideoMaterialPage'; -import { LevelMode, router } from '@kit.ArkUI'; +import { CommonModifier, LevelMode, router } from '@kit.ArkUI'; import { WxVideoEntity } from '../../../../entity/WxVideoEntity'; import { WxImageMaterialPage } from './material/WxImageMaterialPage'; import { OnWXResp, WXApi, WXEventHandler } from '../../../../utils/wechat/WXApiEventHandlerImpl'; @@ -23,46 +23,41 @@ import * as WxOpenSdk from '@tencent/wechat_open_sdk'; import { ErrCode, SendAuthResp } from '@tencent/wechat_open_sdk'; import { LoadingDialog } from '../../../../dialog/LoadingDialog'; import BuildProfile from 'BuildProfile'; -import { WxServiceEntity } from '../../../../entity/WxServiceEntity'; import { Constants } from '../../../../common/Constants'; import { EventReportGlobalManager } from '../../../../manager/EventReportGlobalManager'; import { TipDialog } from '../../../../dialog/TipDialog'; import { SimpleTipDialog } from '../../../../dialog/SimpleTipDialog'; import { JoinWxGroupCourseDialog } from '../../../../dialog/JoinWxGroupCourseDialog'; import { PrefUtils } from '../../../../utils/PrefUtils'; +import { WxVideoServiceEntity } from '../../../../entity/WxVideoServiceEntity'; @Entry @ComponentV2 struct WxVideoPage { + @Local tabBarModifier: CommonModifier = new CommonModifier() @Local isPlayback: boolean = false @Local currentIndex: number = 0; @Local isRefreshing: boolean = false; - @Local videoList: Array = []; @Local imageList: Array = []; - @Local videoRowCount: number = 1; @Local imageRowCount: number = 1; - viewModel: WxVideoViewModel = new WxVideoViewModel(this.getUIContext()); tabController: TabsController = new TabsController(); titles: Array = ['视频', '图片']; type: number = 0 - mediaDownloader?: MediaDownloader | null selectedList: Array = [] - cacheFileUris: Array = [] + cacheFileUris: Array = [] downloadIndex: number = 0 totalSize = 0 downloadStatus = DownloadStatus.DOWNLOADING - joinGroupDialogController?: CustomDialogController | null; - //从微信返回的回调 onWXResp: OnWXResp = (resp) => { //微信返回的数据 if (resp instanceof SendAuthResp && resp.state?.endsWith('video')) { - const authResult = JSON.stringify(resp ?? {}, null , 2); + const authResult = JSON.stringify(resp ?? {}, null, 2); const errCode = JSON.parse(authResult).errCode as number; if (errCode === ErrCode.ERR_OK) { const authCode = JSON.parse(authResult).code as string; @@ -97,13 +92,17 @@ struct WxVideoPage { const info = monitor.value()?.now as VipPermissionEntity; if (info.auth) { if (!LoginManager.isLogin()) { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.LOGIN_PAGE, params: {from: 1}}, router.RouterMode.Single) + this.getUIContext() + .getRouter() + .pushUrl({ url: RouterUrls.LOGIN_PAGE, params: { from: 1 } }, router.RouterMode.Single) return; } this.shareOrDownload() } else { if (!info.auth_ad) { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.VIP_PAGE, params: {origin: 'download_wechat_video'}}) + this.getUIContext() + .getRouter() + .pushUrl({ url: RouterUrls.VIP_PAGE, params: { origin: 'download_wechat_video' } }) EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_MEMBER_RECHARGE, 'download_wechat_video') return; } @@ -114,7 +113,7 @@ struct WxVideoPage { onErrorCodeChange(monitor: IMonitor) { const errorCode = monitor.value()?.now as number; if (errorCode === 12002 || errorCode === 12003 || errorCode === 12004) { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.RECHARGE_DIAMOND_PAGE}); + this.getUIContext().getRouter().pushUrl({ url: RouterUrls.RECHARGE_DIAMOND_PAGE }); EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_RECHARGE_DIAMOND, 'download_wechat_video') ToastUtils.show('钻石已用完') } @@ -128,8 +127,8 @@ struct WxVideoPage { @Monitor('viewModel.wxService') onWxServiceChange(monitor: IMonitor) { - const info = monitor.value()?.now as WxServiceEntity; - if (StrUtil.isEmpty(info.corpid) || StrUtil.isEmpty(info.address)) { + const info = monitor.value()?.now as WxVideoServiceEntity; + if (StrUtil.isEmpty(info.corp_id) || StrUtil.isEmpty(info.link)) { ToastUtils.show('获取客服信息错误') } else { ConfigManager.saveBindWxVideoHelper(true) @@ -149,6 +148,7 @@ struct WxVideoPage { aboutToAppear(): void { WXEventHandler.registerOnWXRespCallback(this.onWXResp) + this.tabBarModifier.align(Alignment.Start) this.initParams() this.checkBindStatus() } @@ -170,12 +170,14 @@ struct WxVideoPage { showSaveTip() { if (PrefUtils.getBoolean('show_save_tip', true)) { - SimpleTipDialog.show(this.getUIContext(), {title: '重要提示', content: '下载完成后需要您点击弹窗允许保存之后才能保存文件到相册', callback: { - confirm: () => { - this.viewModel.checkVip(); - PrefUtils.put('show_save_tip', false) + SimpleTipDialog.show(this.getUIContext(), { + title: '重要提示', content: '下载完成后需要您点击弹窗允许保存之后才能保存文件到相册', callback: { + confirm: () => { + this.viewModel.checkVip(); + PrefUtils.put('show_save_tip', false) + } } - }}) + }) } else { this.viewModel.checkVip() } @@ -197,17 +199,20 @@ struct WxVideoPage { shareMedia(media: MediaEntity) { let filePath = FileUtil.getCacheDirPath() + FileUtil.separator + media.initFileName() - if (FileUtil.accessSync(filePath) && FileUtil.isFile(filePath) && !(media.totalSize === 0 || media.currentLen !== media.totalSize)) { + if (FileUtil.accessSync(filePath) && FileUtil.isFile(filePath) && + !(media.totalSize === 0 || media.currentLen !== media.totalSize)) { this.shareFile(media) } else { - this.showDownloadDialog(media instanceof VideoMaterial && media.isMerge ? DownloadStatus.VIDEO_DOWNLOADING : DownloadStatus.DOWNLOADING) + this.showDownloadDialog(media instanceof VideoMaterial && media.isMerge ? DownloadStatus.VIDEO_DOWNLOADING : + DownloadStatus.DOWNLOADING) this.download(media, true) } } async downloadMedia(media: MediaEntity) { let filePath = FileUtil.getCacheDirPath() + FileUtil.separator + media.initFileName() - if (FileUtil.accessSync(filePath) && FileUtil.isFile(filePath) && !(media.totalSize === 0 || media.currentLen !== media.totalSize)) { + if (FileUtil.accessSync(filePath) && FileUtil.isFile(filePath) && + !(media.totalSize === 0 || media.currentLen !== media.totalSize)) { this.cacheFileUris.push(FileUtil.getUriFromPath(filePath)) if (this.downloadIndex < this.selectedList.length - 1) { this.downloadIndex++ @@ -228,7 +233,8 @@ struct WxVideoPage { this.isRefreshing = true } } else { - this.showDownloadDialog(media instanceof VideoMaterial && media.isMerge ? DownloadStatus.VIDEO_DOWNLOADING : DownloadStatus.DOWNLOADING) + this.showDownloadDialog(media instanceof VideoMaterial && media.isMerge ? DownloadStatus.VIDEO_DOWNLOADING : + DownloadStatus.DOWNLOADING) this.download(media) } } @@ -278,7 +284,7 @@ struct WxVideoPage { this.updateDownloadDialog(DownloadStatus.PROCESSING) } }, - onPause:() => { + onPause: () => { this.dismissDownloadDialog() }, onCancel: () => { @@ -313,32 +319,49 @@ struct WxVideoPage { showDownloadDialog(status: DownloadStatus = DownloadStatus.DOWNLOADING) { this.downloadStatus = status - DownloadDialog.show(this.getUIContext(), { status: status, totalSize: 0, progress: 0, totalCount: this.selectedList.length, index: this.downloadIndex, callback: { - confirm: () => { - if (this.downloadStatus === DownloadStatus.COMPLETED) { - EventReportGlobalManager.eventReport(EventConstants.DIALOG_GO_TO_VIEW, this.titles[this.currentIndex]) - AppUtil.getContext().eventHub.emit(EventConstants.JumpToRecordEvent, this.currentIndex) - this.getUIContext().getRouter().back() - } else { - //todo 后台下载 - } - }, - cancel: () => { - if (this.downloadStatus !== DownloadStatus.COMPLETED) { - if (this.mediaDownloader) { - this.mediaDownloader.cancel() - EventReportGlobalManager.eventReport(EventConstants.CANCEL_DOWNLOAD_VIDEO, this.selectedList[this.downloadIndex].url) + DownloadDialog.show(this.getUIContext(), { + status: status, + totalSize: 0, + progress: 0, + totalCount: this.selectedList.length, + index: this.downloadIndex, + callback: { + confirm: () => { + if (this.downloadStatus === DownloadStatus.COMPLETED) { + EventReportGlobalManager.eventReport(EventConstants.DIALOG_GO_TO_VIEW, this.titles[this.currentIndex]) + AppUtil.getContext().eventHub.emit(EventConstants.JumpToRecordEvent, this.currentIndex) + this.getUIContext().getRouter().back() + } else { + //todo 后台下载 + } + }, + cancel: () => { + if (this.downloadStatus !== DownloadStatus.COMPLETED) { + if (this.mediaDownloader) { + this.mediaDownloader.cancel() + EventReportGlobalManager.eventReport(EventConstants.CANCEL_DOWNLOAD_VIDEO, + this.selectedList[this.downloadIndex].url) + } + } else { + EventReportGlobalManager.eventReport(EventConstants.DIALOG_CONFIRM_SAVE_FILE, + this.titles[this.currentIndex]) } - } else { - EventReportGlobalManager.eventReport(EventConstants.DIALOG_CONFIRM_SAVE_FILE, this.titles[this.currentIndex]) } } - } }) + }) } - updateDownloadDialog(status: DownloadStatus = DownloadStatus.DOWNLOADING, totalSize: number = 0, progress: number = 0, isAudio: boolean = false) { + updateDownloadDialog(status: DownloadStatus = DownloadStatus.DOWNLOADING, totalSize: number = 0, progress: number = 0, + isAudio: boolean = false) { this.downloadStatus = status - DownloadDialog.update({ status: status, totalSize: totalSize, progress: progress, totalCount: this.selectedList.length, index: this.downloadIndex, isAudio: isAudio }) + DownloadDialog.update({ + status: status, + totalSize: totalSize, + progress: progress, + totalCount: this.selectedList.length, + index: this.downloadIndex, + isAudio: isAudio + }) } dismissDownloadDialog() { @@ -396,21 +419,24 @@ struct WxVideoPage { } checkBindStatus() { - if (this.isPlayback && !ConfigManager.isBindWxPlaybackHelper() || !this.isPlayback && !ConfigManager.isBindWxVideoHelper()) { + if (this.isPlayback && !ConfigManager.isBindWxPlaybackHelper() || + !this.isPlayback && !ConfigManager.isBindWxVideoHelper()) { if (LoginManager.getLastUserInfo()?.user_id !== LoginManager.getUserInfo()?.user_id) { - TipDialog.show(this.getUIContext(), {title: '提示', content: '系统检测到您更换了账号,请重新添加助手', callback: { - confirm: () => { - if (this.isPlayback || !ConfigManager.isWxVideoServiceEnable()) { - if (ConfigManager.getPlaybackJoinType() === "img") { - this.showJoinGroupCourseDialog() + TipDialog.show(this.getUIContext(), { + title: '提示', content: '系统检测到您更换了账号,请重新添加助手', callback: { + confirm: () => { + if (this.isPlayback || !ConfigManager.isWxVideoServiceEnable()) { + if (ConfigManager.getPlaybackJoinType() === "img") { + this.showJoinGroupCourseDialog() + } else { + this.wxAuth() + } } else { - this.wxAuth() + this.getWxServiceInfo() } - } else { - this.getWxServiceInfo() } } - }}) + }) } } } @@ -440,7 +466,7 @@ struct WxVideoPage { req.nonAutomatic = true; req.scope = 'snsapi_userinfo'; req.state = BuildProfile.BUNDLE_NAME + RandomUtil.getRandomInt(0, 1000) + '_video'; - req.transaction =''; + req.transaction = ''; await WXApi.sendReq(AppUtil.getContext(), req) EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_SHARE_WX_PLAYBACK, '前往微信分享直播回放') @@ -452,12 +478,12 @@ struct WxVideoPage { try { let wxVideoConfig = ConfigManager.getWxVideoConfig() if (wxVideoConfig != null && LoginManager.getUserInfo()) { - PasteboardUtil.setDataText(LoginManager.getUserInfo()!!.user_id) + PasteboardUtil.setDataText(`${LoginManager.getUserInfo()!!.user_id}|${Constants.APP_ID}`) - wxVideoConfig.id = LoginManager.getUserInfo()!!.user_id + wxVideoConfig.id = `${LoginManager.getUserInfo()!!.user_id}|${Constants.APP_ID}` let params = encodeURI(JSON.stringify(wxVideoConfig)).replace('+', '%20') let launchMiniProgramReq = new WxOpenSdk.LaunchMiniProgramReq() - launchMiniProgramReq.userName = Constants.MINI_PROGRAM_APP_ID //拉起的小程序的原始id + launchMiniProgramReq.userName = Constants.MINI_PROGRAM_APP_ID //拉起的小程序的原始id launchMiniProgramReq.path = `pages/index/index?path=share¶m=${params}` launchMiniProgramReq.miniprogramType = 0 //拉起小程序的类型 0-正式版 1-开发版 2-体验版 await WXApi.sendReq(AppUtil.getContext(), launchMiniProgramReq) @@ -482,10 +508,10 @@ struct WxVideoPage { * 跳转客服 * @param service */ - contactWxService(service: WxServiceEntity) { + contactWxService(service: WxVideoServiceEntity) { let req = new WxOpenSdk.OpenCustomerServiceChatReq() - req.corpId = service.corpid; // 企业ID - req.url = service.address; // 客服URL + req.corpId = service.corp_id; // 企业ID + req.url = service.link; // 客服URL WXApi.sendReq(AppUtil.getContext(), req) } @@ -502,12 +528,15 @@ struct WxVideoPage { Column() { TitleBar({ title: this.isPlayback ? '直播回放' : '视频号' }) - Stack({ alignContent: Alignment.TopStart }) { - Refresh({refreshing: this.isRefreshing}) { - Tabs({ barPosition: BarPosition.Start, controller: this.tabController }) { + Refresh({ refreshing: this.isRefreshing }) { + Stack({ alignContent: Alignment.TopEnd }) { + Tabs({ barPosition: BarPosition.Start, controller: this.tabController, barModifier: this.tabBarModifier }) { TabContent() { - WxVideoMaterialPage({mediaList: this.videoList, rowCount: this.videoRowCount, isPlayback: this.isPlayback, - onShare:(video) => { + WxVideoMaterialPage({ + mediaList: this.videoList, + rowCount: this.videoRowCount, + isPlayback: this.isPlayback, + onShare: (video) => { this.type = 0 this.selectedList.length = 0 this.selectedList.push(video) @@ -519,18 +548,24 @@ struct WxVideoPage { this.showSaveTip(); }, onItemDelete: (video) => { - TipDialog.show(this.getUIContext(), {title: '提示', content: this.isPlayback ? '确定删除该直播回放?' : '确定删除该视频号?', callback: { - confirm: () => { - this.viewModel.deleteWxVideo(video.logid) + TipDialog.show(this.getUIContext(), { + title: '提示', content: this.isPlayback ? '确定删除该直播回放?' : '确定删除该视频号?', callback: { + confirm: () => { + this.viewModel.deleteWxVideo(video.logid) + } } - }}) + }) } }) } + .tabBar(this.tabBuilder(this.titles[0], 0)) TabContent() { - WxImageMaterialPage({mediaList: this.imageList, rowCount: this.imageRowCount, isPlayback: this.isPlayback, - onShare:(image) => { + WxImageMaterialPage({ + mediaList: this.imageList, + rowCount: this.imageRowCount, + isPlayback: this.isPlayback, + onShare: (image) => { this.type = 0 this.selectedList.length = 0 this.selectedList.push(image) @@ -542,35 +577,27 @@ struct WxVideoPage { this.showSaveTip(); }, onItemDelete: (image) => { - TipDialog.show(this.getUIContext(), {title: '提示', content: this.isPlayback ? '确定删除该直播回放?' : '确定删除该视频号?', callback: { - confirm: () => { - this.viewModel.deleteWxVideo(image.logid) + TipDialog.show(this.getUIContext(), { + title: '提示', content: this.isPlayback ? '确定删除该直播回放?' : '确定删除该视频号?', callback: { + confirm: () => { + this.viewModel.deleteWxVideo(image.logid) + } } - }}) + }) } }) } + .tabBar(this.tabBuilder(this.titles[1], 1)) } .scrollable(false) - /*.onSelected((index: number) => { + .barMode(BarMode.Scrollable) + .onSelected((index: number) => { this.currentIndex = index; - })*/ - } - .onRefreshing(() => { - this.isRefreshing = true - this.viewModel.videoList(this.isPlayback ? 'playback' : 'wechatvideo') - }) - .refreshOffset(50) - .pullToRefresh(true) - - Row({ space: 40 }) { - ForEach(this.titles, (title: string, index) => { - this.tab(title, index); }) - Blank().layoutWeight(1) + Row() { - Image($r('app.media.ic_wx_video_course')).width(16).height(16) - Text('视频教程').fontColor($r('app.color.color_80ffffff')).fontSize(12).margin({ left: 4 }) + Image($r('app.media.ic_video_course')).width(16).height(16) + Text('视频教程').fontColor($r('app.color.color_212226')).fontSize(12).margin({ left: 4 }) } .onClick(() => { if (this.isPlayback) { @@ -579,24 +606,37 @@ struct WxVideoPage { this.getUIContext().getRouter().pushUrl({url: RouterUrls.VIDEO_PLAYER_PAGE, params: {uri: ConfigManager.getWxVideoCourse(), title: '视频教程'}}) } }) - }.padding({ left: 16, right: 16 }) - .margin({ top: 10 }) - }.layoutWeight(1) + .height(50) + .margin({ top: 3, right: 16 }) + } + } + .layoutWeight(1) + .onRefreshing(() => { + this.isRefreshing = true + this.viewModel.videoList() + }) + .refreshOffset(50) + .pullToRefresh(true) } Row() { - Image(this.isPlayback ? $r('app.media.ic_playback_helper') : $r('app.media.ic_video_helper')).width(26).height(26) - Text(this.isPlayback ? '添加直播\n回放助手' : '添加助手').margin({left: 6}).fontColor(Color.White).fontSize(12) - Image($r('app.media.ic_arrow_dp16')).width(16).height(16).margin({left: 2}) + Image(this.isPlayback ? $r('app.media.ic_playback_helper') : $r('app.media.ic_video_helper')) + .width(26) + .height(26) + Text(this.isPlayback ? '添加直播\n回放助手' : '添加助手') + .margin({ left: 6 }) + .fontColor(this.isPlayback ? '#FF9614' : '#008EFF') + .fontSize(12) + Image(this.isPlayback ? $r('app.media.ic_playback_helper_arrow') : $r('app.media.ic_video_helper_arrow')).width(16).height(16).margin({ left: 2 }) } .padding(8) - .backgroundColor($r('app.color.color_333333')) - .borderRadius({topLeft: 10, bottomLeft: 10}) + .backgroundColor(Color.White) + .borderRadius({ topLeft: 10, bottomLeft: 10 }) .alignRules({ - right: {anchor:'__container__', align: HorizontalAlign.End}, - bottom: {anchor:'__container__', align: VerticalAlign.Bottom}, + right: { anchor: '__container__', align: HorizontalAlign.End }, + bottom: { anchor: '__container__', align: VerticalAlign.Bottom }, }) - .margin({bottom: 100}) + .margin({ bottom: 100 }) .onClick(() => { if (this.isPlayback || !ConfigManager.isWxVideoServiceEnable()) { if (ConfigManager.getPlaybackJoinType() === "img") { @@ -615,19 +655,18 @@ struct WxVideoPage { } @Builder - tab(tabName: string, tabIndex: number) { - Row() { - Text(tabName) - .fontSize(this.currentIndex === tabIndex ? 17 : 14) - .fontWeight(this.currentIndex === tabIndex ? FontWeight.Medium : FontWeight.Regular) - .lineHeight(24) - .fontColor(tabIndex === this.currentIndex ? $r("app.color.color_466afd") : $r('app.color.color_50ffffff')) + tabBuilder(title: string, targetIndex: number) { + Stack() { + if (this.currentIndex === targetIndex) { + Image($r('app.media.ic_tab_indicator')).width(27).height(11).margin({ top: 13 }) + } + Text(title) + .fontColor(this.currentIndex === targetIndex ? $r("app.color.color_212226") : $r('app.color.color_5c5f6c')) + .fontSize(this.currentIndex === targetIndex ? 16 : 14) + .fontWeight(this.currentIndex === targetIndex ? FontWeight.Medium : FontWeight.Regular) } .width('auto') - .height('auto') - .onClick(() => { - this.tabController.changeIndex(tabIndex); - this.currentIndex = tabIndex; - }) + .height(50) + .margin({ left: targetIndex === 0 ? 16 : 40 }) } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/main/home/wx/material/WxImageMaterialPage.ets b/entry/src/main/ets/pages/main/home/wx/material/WxImageMaterialPage.ets index ac1fad9..e12349f 100644 --- a/entry/src/main/ets/pages/main/home/wx/material/WxImageMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/wx/material/WxImageMaterialPage.ets @@ -55,7 +55,7 @@ export struct WxImageMaterialPage { Row() { Image(this.mediaList.every(item => item.isChecked) ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')).width(18).height(18) - Text('全选').fontColor($r('app.color.color_90ffffff')).fontSize(16).margin({ left: 7 }) + Text('全选').fontColor($r('app.color.color_212226')).fontSize(16).margin({ left: 7 }) } .onClick(() => { this.isCheckAll = !this.isCheckAll; @@ -69,9 +69,12 @@ export struct WxImageMaterialPage { Button('转发', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .backgroundColor($r('app.color.color_333333')) - .fontColor($r('app.color.color_50ffffff')) .fontSize(15) + .fontColor($r('app.color.color_466afd')) + .fontWeight(FontWeight.Medium) + .borderWidth(1) + .borderColor($r('app.color.color_466afd')) + .backgroundColor(Color.Transparent) .onClick(() => { if (this.onShare) { const list = this.selectedItems(); @@ -88,12 +91,10 @@ export struct WxImageMaterialPage { Button('保存', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .fontColor($r('app.color.color_90ffffff')) + .fontColor(Color.White) .fontSize(15) + .fontWeight(FontWeight.Medium) + .backgroundColor($r('app.color.color_466afd')) .margin({ left: 12 }) .onClick(() => { if (this.onSave) { @@ -106,7 +107,7 @@ export struct WxImageMaterialPage { } }) } - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .padding({ left: 16, top: 10, diff --git a/entry/src/main/ets/pages/main/home/wx/material/WxVideoMaterialPage.ets b/entry/src/main/ets/pages/main/home/wx/material/WxVideoMaterialPage.ets index 8cf88c3..52af496 100644 --- a/entry/src/main/ets/pages/main/home/wx/material/WxVideoMaterialPage.ets +++ b/entry/src/main/ets/pages/main/home/wx/material/WxVideoMaterialPage.ets @@ -54,7 +54,7 @@ export struct WxVideoMaterialPage { Row() { Image(this.mediaList.every(item => item.isChecked) ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')).width(18).height(18) - Text('全选').fontColor($r('app.color.color_90ffffff')).fontSize(16).margin({ left: 7 }) + Text('全选').fontColor($r('app.color.color_212226')).fontSize(16).margin({ left: 7 }) } .onClick(() => { this.isCheckAll = !this.isCheckAll; @@ -68,9 +68,12 @@ export struct WxVideoMaterialPage { Button('转发', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .backgroundColor($r('app.color.color_333333')) - .fontColor($r('app.color.color_50ffffff')) .fontSize(15) + .fontColor($r('app.color.color_466afd')) + .fontWeight(FontWeight.Medium) + .borderWidth(1) + .borderColor($r('app.color.color_466afd')) + .backgroundColor(Color.Transparent) .onClick(() => { if (this.onShare) { const list = this.selectedItems(); @@ -87,12 +90,10 @@ export struct WxVideoMaterialPage { Button('保存', { type: ButtonType.Capsule, stateEffect: true }) .width(122) .height(40) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .fontColor($r('app.color.color_90ffffff')) + .fontColor(Color.White) .fontSize(15) + .fontWeight(FontWeight.Medium) + .backgroundColor($r('app.color.color_466afd')) .margin({ left: 12 }) .onClick(() => { if (this.onSave) { @@ -105,7 +106,7 @@ export struct WxVideoMaterialPage { } }) } - .backgroundColor($r('app.color.color_222222')) + .backgroundColor(Color.White) .padding({ left: 16, top: 10, @@ -129,9 +130,9 @@ export struct WxVideoMaterialPage { }) Column() { - Text('操作步骤:').fontColor($r('app.color.color_90ffffff')).fontSize(14) + Text('操作步骤:').fontColor($r('app.color.color_212226')).fontSize(14).fontWeight(FontWeight.Medium) Text(this.isPlayback ? $r('app.string.wx_playback_course') : $r('app.string.wx_video_course')) - .fontColor($r('app.color.color_50ffffff')) + .fontColor('#4D4F57') .fontSize(12) .lineHeight(20) .margin({ top: 9 }) diff --git a/entry/src/main/ets/pages/main/mine/MinePage.ets b/entry/src/main/ets/pages/main/mine/MinePage.ets index b91a5f6..825bc89 100644 --- a/entry/src/main/ets/pages/main/mine/MinePage.ets +++ b/entry/src/main/ets/pages/main/mine/MinePage.ets @@ -1,13 +1,11 @@ -import { AppUtil, FileUtil, FormatUtil, NumberUtil, PasteboardUtil, StrUtil } from '@pura/harmony-utils'; +import { AppUtil, PasteboardUtil, StrUtil } from '@pura/harmony-utils'; import { EventConstants } from '../../../common/EventConstants'; import { RouterUrls } from '../../../common/RouterUrls'; import { UserEntity } from '../../../entity/UserEntity'; import { LoginManager } from '../../../manager/LoginGlobalManager'; import { ToastUtils } from '../../../utils/ToastUtils'; -import { TextItemView } from '../../../view/TextItemView'; import MineViewModel from '../../../viewModel/MineViewModel'; -import { router } from '@kit.ArkUI'; -import { TipDialog } from '../../../dialog/TipDialog'; +import { CommonModifier, router } from '@kit.ArkUI'; import { fileIo, storageStatistics } from '@kit.CoreFileKit'; import { BusinessError } from '@kit.BasicServicesKit'; import { LoadingDialog } from '../../../dialog/LoadingDialog'; @@ -16,8 +14,12 @@ import { EventReportGlobalManager } from '../../../manager/EventReportGlobalMana import { WxServiceEntity } from '../../../entity/WxServiceEntity'; import { WXApi } from '../../../utils/wechat/WXApiEventHandlerImpl'; import * as WxOpenSdk from '@tencent/wechat_open_sdk'; -import { ScanUtil } from '@pura/picker_utils'; -import { scanCore } from '@kit.ScanKit'; +import { Constants } from '../../../common/Constants'; +import { MenuEntity, mineMenuList } from '../../../entity/MenuEntity'; +import { MediaAction, MediaType } from '../../../manager/MediaManager'; +import { VideoRecordPage } from '../record/VideoRecordPage'; +import { ImageRecordPage } from '../record/ImageRecordPage'; +import { AudioRecordPage } from '../record/AudioRecordPage'; @ComponentV2 export struct MinePage { @@ -26,11 +28,14 @@ export struct MinePage { @Local isLogin: boolean = LoginManager.isLogin(); @Local userinfo?: UserEntity; @Local diamondInfo?: DiamondDetailEntity - @Local cacheSize: number = 0 + @Local currentIndex: number = 0; + @Local tabBarModifier: CommonModifier = new CommonModifier() - scroller: Scroller = new Scroller(); + private viewModel: MineViewModel = new MineViewModel(this.getUIContext()); - viewModel: MineViewModel = new MineViewModel(this.getUIContext()); + private scroller: Scroller = new Scroller(); + private tabController: TabsController = new TabsController(); + private titles: Array = ['视频', '图片', '音频']; @Monitor('viewModel.userEntity') @@ -54,8 +59,8 @@ export struct MinePage { } aboutToAppear(): void { + this.tabBarModifier.align(Alignment.Start) this.initObserver(); - this.getCache() this.viewModel.userinfo(); this.viewModel.getDiamondInfo() } @@ -64,45 +69,9 @@ export struct MinePage { AppUtil.getContext().eventHub.on(EventConstants.MineRefreshEvent, () => { this.isLogin = LoginManager.isLogin(); this.viewModel.userinfo(); - this.getCache(); }); } - getCache() { - storageStatistics.getCurrentBundleStats((error: BusinessError, bundleStats: storageStatistics.BundleStats) => { - if (error) { - console.error('getCurrentBundleStats failed with error:' + JSON.stringify(error)); - } else { - console.info('getCurrentBundleStats successfully:' + JSON.stringify(bundleStats)); - this.cacheSize = bundleStats.cacheSize - } - }); - } - - // Clear cache - clearCache() { - LoadingDialog.show(this.getUIContext()) - let cacheDir = AppUtil.getContext().cacheDir; - fileIo.listFile(cacheDir).then((filenames) => { - for (let i = 0; i < filenames.length; i++) { - let dirPath = cacheDir + '/' + filenames[i]; - let isDirectory: boolean = false; - try { - isDirectory = fileIo.statSync(dirPath).isDirectory(); - } catch (e) { - console.error(JSON.stringify(e)); - } - if (isDirectory) { - fileIo.rmdirSync(dirPath); - } else { - fileIo.unlinkSync(dirPath); - } - } - }) - setTimeout(() => { this.getCache() }, 200) - LoadingDialog.dismiss() - } - /** * 跳转客服 * @param service @@ -119,27 +88,20 @@ export struct MinePage { Stack() { Image($r('app.media.ic_mine_top_bg')) .width('100%') - .aspectRatio(0.8) + .aspectRatio(1.465) .id('iv_top_bg') - Image(this.userinfo?.vip === 3 ? $r('app.media.ic_vip_bg2') : $r('app.media.ic_vip_bg1')) - .width('100%') - .aspectRatio(1.4) - .visibility(this.userinfo?.vip !== 1 ? Visibility.Visible : Visibility.Hidden) - .id('iv_vip_bg') - Column() { RelativeContainer() { Image(StrUtil.isNotEmpty(this.userinfo?.avater) ? this.userinfo?.avater : $r('app.media.ic_default_avatar')) .alignRules({ - left: { anchor: '__container__', align: HorizontalAlign.Start }, - right: { anchor: '__container__', align: HorizontalAlign.End } + left: { anchor: '__container__', align: HorizontalAlign.Start } }) - .margin({ top: 20 }) + .margin({left: 16 }) .padding(1) - .borderRadius(45) - .width(90) - .height(90) + .borderRadius(28) + .width(56) + .height(56) .backgroundColor(Color.White) .id('iv_avatar') .onClick(() => { @@ -151,26 +113,20 @@ export struct MinePage { } }) - Text('Hi! 快登录') + Text('点击登录') + .width(52) + .height(18) .fontColor(Color.White) - .fontSize(12) + .fontSize(10) .textAlign(TextAlign.Center) .alignRules({ - top: { anchor: '__container__', align: VerticalAlign.Top }, - left: { anchor: 'iv_avatar', align: HorizontalAlign.End } + left: { anchor: 'iv_avatar', align: HorizontalAlign.Start }, + right: { anchor: 'iv_avatar', align: HorizontalAlign.End }, + bottom: { anchor: 'iv_avatar', align: VerticalAlign.Bottom } }) - .padding({ - left: 6, - right: 6, - }) - .margin({ left: -25 }) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) - .borderRadius({ topLeft: 6, topRight: 6, bottomRight: 6 }) - .width('auto') - .height(24) + .margin({ bottom: -7 }) + .borderRadius(9) + .backgroundColor($r('app.color.color_466afd')) .visibility(this.isLogin ? Visibility.None : Visibility.Visible) .id('tv_nologin_tip') @@ -195,14 +151,14 @@ export struct MinePage { .id('tv_area') Text(StrUtil.isNotEmpty(this.userinfo?.name) ? this.userinfo?.name : '游客') - .fontColor($r('app.color.color_90ffffff')) - .fontSize(18) + .fontColor($r('app.color.color_212226')) + .fontSize(17) .fontWeight(FontWeight.Medium) - .margin({ top: 12 }) + .margin({ left: 12, top: 4 }) .alignRules({ - top: { anchor: 'iv_avatar', align: VerticalAlign.Bottom }, - left: { anchor: 'iv_avatar', align: HorizontalAlign.Start }, - right: { anchor: 'iv_avatar', align: HorizontalAlign.End } + top: { anchor: 'iv_avatar', align: VerticalAlign.Top }, + left: { anchor: 'iv_avatar', align: HorizontalAlign.End }, + bottom: { anchor: 'tv_user_id', align: VerticalAlign.Top} }) .width('auto') .height('auto') @@ -210,7 +166,7 @@ export struct MinePage { Row() { Text('ID:' + this.userinfo?.user_id) - .fontColor($r('app.color.color_999999')) + .fontColor('#53555D') .fontSize(14) .id('tv_user_id') Image($r('app.media.ic_copy_id')) @@ -221,164 +177,243 @@ export struct MinePage { .alignRules({ top: { anchor: 'tv_username', align: VerticalAlign.Bottom }, left: { anchor: 'tv_username', align: HorizontalAlign.Start }, - right: { anchor: 'tv_username', align: HorizontalAlign.End } + bottom: { anchor: 'iv_avatar', align: VerticalAlign.Bottom } }) - .margin({ top: 4 }) + .margin({ bottom: 4 }) .width('auto') .id('layout_copy_id') .onClick(() => { if (StrUtil.isNotEmpty(this.userinfo?.user_id)) { - PasteboardUtil.setDataTextSync(this.userinfo?.user_id!!) + PasteboardUtil.setDataTextSync(`${this.userinfo?.user_id!!}|${Constants.APP_ID}`) ToastUtils.show('复制成功') } }) - Image($r('app.media.ic_scan')).width(24).height(24) - .alignRules({ - top: {anchor: '__container__', align: VerticalAlign.Top}, - right: {anchor: '__container__', align: HorizontalAlign.End} - }) - .margin({ right: 20 }) - .onClick(() => { - try { - ScanUtil.startScanForResult({ scanTypes: [scanCore.ScanType.QR_CODE], enableMultiMode: true, enableAlbum: true}) - .then((result) => { - const code = result.originalValue - const array = code.split('-') - if (code.length === 36 && array.length === 5) { - this.getUIContext().getRouter().pushUrl({ url: RouterUrls.QRCODE_LOGIN_PAGE, params: { code: code }}) - } else { - ToastUtils.show('无效二维码') - } - }) - .catch(() => { - ToastUtils.show('此设备不支持二维码扫描') - }) - } catch (e) { - ToastUtils.show('此设备不支持二维码扫描') - } - }) - } - .margin({ top: 70 }) - .width('100%') - .height(180) - .id('layout_userinfo') - - Row() { - Column() { - Text(FormatUtil.getFormatFileSize(NumberUtil.toNumber(this.userinfo?.month_download_size!!))) - .fontColor($r('app.color.color_90ffffff')) - .fontSize(18) - .fontFamily('ddp500m') - .id('tv_month_size') - - Text('本月流量') - .fontColor($r("app.color.color_50ffffff")) - .fontSize(12) - .margin({ top: 4 }) + Row() { + Image($r('app.media.ic_mine_setting')).width(26).height(26) + .onClick(() => { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.SETTING_PAGE}); + EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_SYSTEM_SETTING) + }) } - .layoutWeight(1) - .onClick(() => { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.DOWNLOAD_HISTORY_PAGE}) - EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_DOWNLOAD_HISTORY) + .alignRules({ + bottom: {anchor: 'iv_avatar', align: VerticalAlign.Top}, + right: {anchor: '__container__', align: HorizontalAlign.End} }) - - Divider().vertical(true).color('#1affffff').strokeWidth(1).height(26) - - Column() { - Text(this.userinfo?.month_download_count) - .fontColor($r('app.color.color_90ffffff')) - .fontSize(18) - .fontFamily('ddp500m') - .id('tv_month_count') - - Text('本月下载') - .fontColor($r("app.color.color_50ffffff")) - .fontSize(12) - .margin({ top: 4 }) - } - .layoutWeight(1) - .onClick(() => { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.DOWNLOAD_HISTORY_PAGE}) - EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_DOWNLOAD_HISTORY) - }) - - Divider().vertical(true).color('#1affffff').strokeWidth(1).height(26) - - Column() { - Text('0') - .fontColor($r('app.color.color_90ffffff')) - .fontSize(18) - .fontFamily('ddp500m') - .id('tv_task_count') - - Text('下载任务') - .fontColor($r("app.color.color_50ffffff")) - .fontSize(12) - .margin({ top: 4 }) - } - .layoutWeight(1) - .visibility(Visibility.None) + .margin({ right: 20 }) } - .padding({ top: 9, bottom: 9 }) + .margin({ top: 100 }) .width('100%') - .height('auto') - .id('layout_download_info') + .height(70) RelativeContainer() { - Text(this.userinfo?.vip === 1 ? '素材魔方·会员' : this.userinfo?.vip_name) - .fontColor($r('app.color.color_90ffffff')) - .fontSize(18) - .fontWeight(FontWeight.Bold) - .fontFamily('almmsht') - .id('tv_vip_name') - .alignRules({ - bottom: { anchor: '__container__', align: VerticalAlign.Center } - }) + Stack() { + Image($r('app.media.ic_mine_vip_bg')).width('100%').aspectRatio(5.01) + } + .padding({left: 12, right: 12}) + .alignRules({ + bottom: { anchor: '__container__', align: VerticalAlign.Bottom} + }) + .id('layout_bg') - Text(this.userinfo?.vip === 1 ? '点击成为会员解锁所有功能' : this.userinfo?.vip === 2 ? this.userinfo.vip_expire + ' 会员到期' : '享受永久会员专属权益') - .fontColor($r('app.color.color_60ffffff')) - .fontSize(14) - .margin({ top: 8 }) - .id('tv_vip_expire') - .alignRules({ - top: { anchor: '__container__', align: VerticalAlign.Center } - }) + Image($r('app.media.ic_mine_vip_tag')).width(74).height(69).id('iv_vip_tag') - Button(this.userinfo?.vip === 1 ? '立即开通' : this.userinfo?.vip === 2 ? '立即续费' : '永久会员' , { type: ButtonType.Capsule, stateEffect: true }) - .fontColor('#291966') - .fontSize(14) - .fontWeight(FontWeight.Medium) - .alignRules({ - top: { anchor: '__container__', align: VerticalAlign.Top }, - bottom: { anchor: '__container__', align: VerticalAlign.Bottom }, - right: { anchor: '__container__', align: HorizontalAlign.End } - }) + Column() { + Row() { + Text(this.userinfo?.vip === 1 ? '会员办理' : this.userinfo?.vip_name) + .fontSize(18) + .fontFamily('ysbth') + .blendMode(BlendMode.DST_IN, BlendApplyType.OFFSCREEN) + } .linearGradient({ - colors: [['#D4C4F9', 0.0], ['#E9E6F9', 1.0]], - direction: GradientDirection.Top - }) - .width(88) - .height(32) - .visibility(this.userinfo?.vip === 3 ? Visibility.None : Visibility.Visible) - .id('btn_to_vip') - .onClick(() => { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.VIP_PAGE, params: {origin: 'center'}}) - EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_MEMBER_RECHARGE, 'center') + direction: GradientDirection.Right, + colors: [['#FBF1DE', 0.0], ['#C59F78', 1.0]] }) + .blendMode(BlendMode.SRC_OVER, BlendApplyType.OFFSCREEN) + + Text(this.userinfo?.vip === 1 ? '开通会员解锁所有功能' : this.userinfo?.vip === 2 ? this.userinfo.vip_expire + ' 会员到期' : '享受永久会员专属权益') + .fontColor('#FBF1DE') + .fontSize(13) + } + .alignRules({ + left: { anchor: 'iv_vip_tag', align: HorizontalAlign.End}, + top: { anchor: 'layout_bg', align: VerticalAlign.Top }, + bottom: { anchor: 'layout_bg', align: VerticalAlign.Bottom } + }) + .margin({bottom: 12}) + .alignItems(HorizontalAlign.Start) + .justifyContent(FlexAlign.Center) + + Button({ type: ButtonType.Capsule, stateEffect: true }) { + Row() { + Text(this.userinfo?.vip === 1 ? '开通会员' : this.userinfo?.vip === 2 ? '立即续费' : '永久会员').fontColor('#8F6131').fontSize(14).fontWeight(FontWeight.Medium) + Image($r('app.media.ic_mine_vip_arrow')).width(14).height(14).margin({left: 1}) + } + } + .alignRules({ + top: { anchor: 'layout_bg', align: VerticalAlign.Top }, + bottom: { anchor: 'layout_bg', align: VerticalAlign.Bottom }, + right: { anchor: 'layout_bg', align: HorizontalAlign.End } + }) + .linearGradient({ + colors: [['#FFCD9E', 0.0], ['#FFEFDE', 1.0]], + direction: GradientDirection.Top + }) + .width('auto') + .height(30) + .margin({right: 28, bottom: 12}) + .padding({left: 9, top: 6, right: 7, bottom: 6}) + .visibility(this.userinfo?.vip === 3 ? Visibility.None : Visibility.Visible) + .id('btn_to_vip') + .onClick(() => { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.VIP_PAGE, params: {origin: 'center'}}) + EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_MEMBER_RECHARGE, 'center') + }) } - .margin({ left: 16, top: 10, right: 16 }) - .padding({ left: 16, right: 16 }) - .backgroundImage($r('app.media.ic_mine_vip_bg')) - .backgroundImageSize({ width: '100%' }) - .aspectRatio(4.28) - .id('layout_vip_info') + .width('100%') + .aspectRatio(4.464) + + Stack({alignContent: Alignment.Top}) { + Row() + .width('100%') + .aspectRatio(3.348) + .linearGradient({ + colors: [['#FFFFFF', 0.0], ['#F3F5F9', 1.0]], + direction: GradientDirection.Bottom + }) + .borderRadius({ topLeft: 10, topRight: 10}) + + Column() { + Text('常用工具').fontColor($r('app.color.color_212226')).fontSize(16).fontWeight(FontWeight.Medium).margin({top: 20}) + + Grid() { + ForEach(mineMenuList().convertToArray(), (item: MenuEntity) => { + GridItem() { + Column() { + Image(item.icon) + .width(26) + .height(26) + Text(item.title) + .fontColor($r('app.color.color_212226')) + .fontSize(12) + .margin({ top: 8 }) + } + .alignItems(HorizontalAlign.Center) + } + .width('25%') + .onClick(() => { + switch (item.alias) { + case 'history': { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.DOWNLOAD_HISTORY_PAGE}); + EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_DOWNLOAD_HISTORY, 'center') + break + } + case 'diamond': { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.RECHARGE_DIAMOND_PAGE}); + EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_RECHARGE_DIAMOND, 'center') + break + } + case 'feedback': { + this.getUIContext().getRouter().pushUrl({url: RouterUrls.FEEDBACK_PAGE}); + EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_FEEDBACK, 'center') + break + } + case 'service': { + if (!WXApi.isWXAppInstalled()) { + ToastUtils.show('未安装微信客户端,请先下载安装微信客户端'); + return; + } + this.viewModel.getWxService() + break + } + } + }) + }) + } + .maxCount(4) + .layoutDirection(GridDirection.Row) + .backgroundColor(Color.White) + .borderRadius(8) + .padding({top: 16, bottom: 16}) + .margin({top: 10}) + } + .width('100%') + .padding({left: 12, right: 12}) + .alignItems(HorizontalAlign.Start) + } + .margin({top: -12}) Column() { + Row() { + Text('我的相册') + .fontColor($r('app.color.color_212226')) + .fontSize(16) + .fontWeight(FontWeight.Medium) + .textAlign(TextAlign.Start) + .layoutWeight(1) + + Text(this.currentIndex === 2 ? '文件管理/我的手机/Download/素材魔方' : '文件管理/我的手机/Download/图库') + .fontColor($r('app.color.color_999999')) + .fontSize(12) + .onClick(() => { + + }) + } + .margin({left:12, top: 27, right: 12}) + + Stack({alignContent: Alignment.TopEnd}) { + Tabs({ barPosition: BarPosition.Start, controller: this.tabController, barModifier: this.tabBarModifier }) { + TabContent() { + VideoRecordPage() + } + .tabBar(this.tabBuilder(this.titles[0], 0)) + + TabContent() { + ImageRecordPage() + } + .tabBar(this.tabBuilder(this.titles[1], 1)) + + TabContent() { + AudioRecordPage() + } + .tabBar(this.tabBuilder(this.titles[2], 2)) + } + .scrollable(false) + .barMode(BarMode.Scrollable) + .onTabBarClick((index) => { + this.currentIndex = index; + }) + + Row() { + Image($r('app.media.ic_clear_record')).width(11).height(13) + Text('全部清空').fontColor($r('app.color.color_999999')).fontSize(12).margin({left: 4}) + } + .height(50) + .margin({ top: 3, right: 16 }) + .onClick(() => { + switch (this.currentIndex) { + case 0: { + AppUtil.getContext().eventHub.emit(EventConstants.MediaActionEvent, MediaType.VIDEO, MediaAction.CLEAR) + } + case 1: { + AppUtil.getContext().eventHub.emit(EventConstants.MediaActionEvent, MediaType.IMAGE, MediaAction.CLEAR) + } + case 2: { + AppUtil.getContext().eventHub.emit(EventConstants.MediaActionEvent, MediaType.AUDIO, MediaAction.CLEAR) + } + } + }) + .visibility(this.currentIndex === 2 ? Visibility.Visible : Visibility.None) + } + } + .width('100%') + .height('100%') + + /*Column() { TextItemView({ image: $r("app.media.ic_mine_icon1"), leftText: '免单挑战' }) .height(60) .id('item_challenge') - .visibility(/*this.showChallenge ? Visibility.Visible : Visibility.None*/Visibility.None) + .visibility(*//*this.showChallenge ? Visibility.Visible : Visibility.None*//*Visibility.None) TextItemView({ image: $r("app.media.ic_mine_icon2"), leftText: '兑换钻石' }) .height(60) .id('item_diamond') @@ -392,7 +427,7 @@ export struct MinePage { TextItemView({ image: $r("app.media.ic_mine_icon4"), leftText: '分享APP' }) .height(60) .id('item_share') - .visibility(/*this.showShare ? Visibility.Visible : Visibility.None*/Visibility.None) + .visibility(*//*this.showShare ? Visibility.Visible : Visibility.None*//*Visibility.None) TextItemView({ image: $r("app.media.ic_mine_icon5"), leftText: '联系客服' }).height(60).id('item_service') .onClick(() => { if (!WXApi.isWXAppInstalled()) { @@ -419,8 +454,7 @@ export struct MinePage { } .margin({ top: 16, left: 16, right: 16 }) .backgroundColor('#1E1D24') - .borderRadius(8) - .id('layout_menu') + .borderRadius(8)*/ Blank().layoutWeight(1) } @@ -433,4 +467,20 @@ export struct MinePage { .height('100%') .backgroundColor($r('app.color.window_background')) } + + @Builder + tabBuilder(title: string, targetIndex: number) { + Stack() { + if (this.currentIndex === targetIndex) { + Image($r('app.media.ic_tab_indicator')).width(27).height(11).margin({ top: 13 }) + } + Text(title) + .fontColor(this.currentIndex === targetIndex ? $r("app.color.color_212226") : $r('app.color.color_5c5f6c')) + .fontSize(this.currentIndex === targetIndex ? 16 : 14) + .fontWeight(this.currentIndex === targetIndex ? FontWeight.Medium : FontWeight.Regular) + } + .width('auto') + .height(50) + .margin({ left: targetIndex === 0 ? 12 : 30 }) + } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/main/mine/setting/SettingsPage.ets b/entry/src/main/ets/pages/main/mine/setting/SettingsPage.ets index 62bb71d..b2521bc 100644 --- a/entry/src/main/ets/pages/main/mine/setting/SettingsPage.ets +++ b/entry/src/main/ets/pages/main/mine/setting/SettingsPage.ets @@ -1,4 +1,4 @@ -import { AppUtil } from '@pura/harmony-utils' +import { AppUtil, FileUtil } from '@pura/harmony-utils' import { EventConstants } from '../../../../common/EventConstants' import { RouterUrls } from '../../../../common/RouterUrls' import { TipDialog } from '../../../../dialog/TipDialog' @@ -10,12 +10,18 @@ import { TitleBar } from '../../../../view/TitleBar' import { SettingsViewModel } from '../../../../viewModel/SettingsViewModel' import { router } from '@kit.ArkUI' import { EventReportGlobalManager } from '../../../../manager/EventReportGlobalManager' +import { fileIo, storageStatistics } from '@kit.CoreFileKit' +import { BusinessError } from '@kit.BasicServicesKit' +import { LoadingDialog } from '../../../../dialog/LoadingDialog' +import { TextItemView } from '../../../../view/TextItemView' @Entry @ComponentV2 struct SettingsPage { viewModel: SettingsViewModel = new SettingsViewModel(this.getUIContext()); + @Local cacheSize: number = 0 + @Monitor('viewModel.destroy') onDestroy(monitor: IMonitor) { EventReportGlobalManager.eventReport(EventConstants.CANCEL_ACCOUNT) @@ -23,6 +29,46 @@ struct SettingsPage { ToastUtils.show('账户已注销'); } + aboutToAppear(): void { + this.getCache() + } + + getCache() { + storageStatistics.getCurrentBundleStats((error: BusinessError, bundleStats: storageStatistics.BundleStats) => { + if (error) { + console.error('getCurrentBundleStats failed with error:' + JSON.stringify(error)); + } else { + console.info('getCurrentBundleStats successfully:' + JSON.stringify(bundleStats)); + this.cacheSize = bundleStats.cacheSize + } + }); + } + + // Clear cache + clearCache() { + LoadingDialog.show(this.getUIContext()) + let cacheDir = AppUtil.getContext().cacheDir; + fileIo.listFile(cacheDir).then((filenames) => { + for (let i = 0; i < filenames.length; i++) { + let dirPath = cacheDir + '/' + filenames[i]; + let isDirectory: boolean = false; + try { + isDirectory = fileIo.statSync(dirPath).isDirectory(); + } catch (e) { + console.error(JSON.stringify(e)); + } + if (isDirectory) { + fileIo.rmdirSync(dirPath); + } else { + fileIo.unlinkSync(dirPath); + } + } + }) + setTimeout(() => { this.getCache() }, 200) + LoadingDialog.dismiss() + } + + logout() { LoginManager.saveLastUserInfo(LoginManager.getUserInfo()!!); ConfigManager.saveBindWxPlaybackHelper(false); @@ -34,30 +80,42 @@ struct SettingsPage { build() { Column() { - TitleBar({ title: '设置' }).width('100%') + TitleBar({ title: '设置' }).width('100%').backgroundColor(Color.White) Scroll() { Column() { - TextItemChildView({ text: '意见反馈' }).height(60).margin({ left: 16, right: 16 }) - .onClick(() => { - this.getUIContext().getRouter().pushUrl({url: RouterUrls.FEEDBACK_PAGE}) - EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_FEEDBACK, 'center') - }) - TextItemChildView({ text: '账号绑定' }).height(60).margin({ left: 16, right: 16 }) + TextItemChildView({ text: '账号绑定' }).height(60).padding({ left: 16, right: 16 }) + .backgroundColor(Color.White) .onClick(() => { this.getUIContext().getRouter().pushUrl({url: RouterUrls.BIND_ACCOUNT_PAGE}); EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_ACCOUNT_BIND) }) - TextItemChildView({ text: '账号管理' }).height(60).margin({ left: 16, right: 16 }) + TextItemChildView({ text: '账号管理' }).height(60).padding({ left: 16, right: 16 }) + .backgroundColor(Color.White) .onClick(() => { this.getUIContext().getRouter().pushUrl({url: RouterUrls.MANAGE_ACCOUNT_PAGE}); EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_ACCOUNT_MANAGE) }) - TextItemChildView({ text: '关于我们' }).height(60).margin({ left: 16, right: 16 }) + Divider().strokeWidth(10).color($r('app.color.color_eff2f7')) + TextItemChildView({ text: '清除缓存', rightText: FileUtil.getFormatFileSize(this.cacheSize) }).height(60) + .backgroundColor(Color.White) + .padding({ left: 16, right: 16 }) + .onClick(() => { + if (this.cacheSize > 0) { + TipDialog.show(this.getUIContext(), {title: '提示', content: '确定清除缓存?', callback: { + confirm: () => { + this.clearCache() + } + }}) + } + }) + TextItemChildView({ text: '关于我们' }).height(60).padding({ left: 16, right: 16 }) + .backgroundColor(Color.White) .onClick(() => { this.getUIContext().getRouter().pushUrl({url: RouterUrls.ABOUT_PAGE}); EventReportGlobalManager.eventReport(EventConstants.JUMP_TO_ABOUT_US) }) - TextItemChildView({ text: '注销账号' }).height(60).margin({ left: 16, right: 16 }) + TextItemChildView({ text: '注销账号' }).height(60).padding({ left: 16, right: 16 }) + .backgroundColor(Color.White) .onClick(() => { TipDialog.show(this.getUIContext(), {title: '提示', content: '为了您的账户安全,注销账户后将会永久清除与该账户相关的所有信息,服务器不再保存', callback: { confirm: () => { @@ -77,10 +135,7 @@ struct SettingsPage { .fontColor(Color.White) .fontSize(15) .fontWeight(FontWeight.Medium) - .linearGradient({ - colors: [['#F62C6C', 0.0], ['#FC4F54', 1.0]], - direction: GradientDirection.Right - }) + .backgroundColor($r('app.color.color_466afd')) .width('100%') .height(46) .onClick(() => { diff --git a/entry/src/main/ets/pages/main/mine/setting/about/AboutPage.ets b/entry/src/main/ets/pages/main/mine/setting/about/AboutPage.ets index b746816..14bb0a5 100644 --- a/entry/src/main/ets/pages/main/mine/setting/about/AboutPage.ets +++ b/entry/src/main/ets/pages/main/mine/setting/about/AboutPage.ets @@ -12,7 +12,7 @@ struct AboutPage { TitleBar({ title: '关于' }).width('100%') Image($r('app.media.ic_login_logo')).width(100).height(100).margin({ top: 100 }) Text($r('app.string.app_name')) - .fontColor(Color.White) + .fontColor($r('app.color.color_1a1a1a')) .fontSize(16) .fontWeight(FontWeight.Medium) .margin({ top: 16 }) diff --git a/entry/src/main/ets/pages/main/record/AudioRecordPage.ets b/entry/src/main/ets/pages/main/record/AudioRecordPage.ets index 76d3760..9dec617 100644 --- a/entry/src/main/ets/pages/main/record/AudioRecordPage.ets +++ b/entry/src/main/ets/pages/main/record/AudioRecordPage.ets @@ -78,8 +78,8 @@ export struct AudioRecordPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_audio'), - noDataText: '暂无音频' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据' }) } } diff --git a/entry/src/main/ets/pages/main/record/ImageRecordPage.ets b/entry/src/main/ets/pages/main/record/ImageRecordPage.ets index 3ce8b2f..92f711a 100644 --- a/entry/src/main/ets/pages/main/record/ImageRecordPage.ets +++ b/entry/src/main/ets/pages/main/record/ImageRecordPage.ets @@ -93,8 +93,8 @@ export struct ImageRecordPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_image'), - noDataText: '暂无图片' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据' }) } } diff --git a/entry/src/main/ets/pages/main/record/RecordPage.ets b/entry/src/main/ets/pages/main/record/RecordPage.ets deleted file mode 100644 index 8ab72d4..0000000 --- a/entry/src/main/ets/pages/main/record/RecordPage.ets +++ /dev/null @@ -1,137 +0,0 @@ -import { TitleBar } from '../../../view/TitleBar'; -import { ImageRecordPage } from './ImageRecordPage'; -import { VideoRecordPage } from './VideoRecordPage'; -import { AppUtil } from '@pura/harmony-utils'; -import { EventConstants } from '../../../common/EventConstants'; -import { MediaAction, MediaType } from '../../../manager/MediaManager'; -import { AudioRecordPage } from './AudioRecordPage'; -import { CommonModifier } from '@kit.ArkUI'; - -@ComponentV2 -export struct RecordPage { - @Consumer() recordIndex: number = 0; - @Local tabBarModifier: CommonModifier = new CommonModifier() - @Local currentIndex: number = 0; - @Local indicatorLeftMargin: number = 0; - @Local indicatorWidth: number = 0; - @Local tabsWidth: number = 0; - - tabController: TabsController = new TabsController(); - titles: Array = ['视频', '图片', '音频']; - - aboutToAppear(): void { - this.initObserver() - this.tabBarModifier.align(Alignment.Start) - } - - initObserver() { - AppUtil.getContext().eventHub.on(EventConstants.MediaActionEvent, (type: MediaType, action: MediaAction) => { - if (action === MediaAction.ADD) { - switch (type) { - case MediaType.VIDEO: { - if (this.currentIndex !== 0) { - this.tabController.changeIndex(0) - this.currentIndex = 0 - } - break - } - case MediaType.IMAGE: { - if (this.currentIndex !== 1) { - this.tabController.changeIndex(1) - this.currentIndex = 1 - } - break - } - case MediaType.AUDIO: { - if (this.currentIndex !== 2) { - this.tabController.changeIndex(2) - this.currentIndex = 2 - } - break - } - } - } - }) - } - - @Builder - tabBuilder(title: string, tabIndex: number) { - Text(title) - .width('auto') - .height(50) - .fontColor(this.currentIndex === tabIndex ? $r("app.color.color_466afd") : $r('app.color.color_50ffffff')) - .fontSize(this.currentIndex === tabIndex ? 17 : 14) - .fontWeight(this.currentIndex === tabIndex ? FontWeight.Medium : FontWeight.Regular) - .margin({ left: tabIndex === 0 ? 16 : 40 }) - } - - build() { - Column() { - TitleBar({title: '我的记录', showBack: false}) - Stack({alignContent: Alignment.TopEnd}) { - Tabs({ barPosition: BarPosition.Start, controller: this.tabController, barModifier: this.tabBarModifier }) { - TabContent() { - VideoRecordPage() - } - .tabBar(this.tabBuilder(this.titles[0], 0)) - - TabContent() { - ImageRecordPage() - } - .tabBar(this.tabBuilder(this.titles[1], 1)) - - TabContent() { - AudioRecordPage() - } - .tabBar(this.tabBuilder(this.titles[2], 2)) - } - .scrollable(false) - .barMode(BarMode.Scrollable) - .onTabBarClick((index) => { - this.currentIndex = index; - }) - - Row() { - Image($r('app.media.ic_clear_record')).width(16).height(16) - Text('全部清空').fontColor($r('app.color.color_80ffffff')).fontSize(12).margin({left: 4}) - } - .height(50) - .margin({ top: 3, right: 16 }) - .onClick(() => { - switch (this.currentIndex) { - case 0: { - AppUtil.getContext().eventHub.emit(EventConstants.MediaActionEvent, MediaType.VIDEO, MediaAction.CLEAR) - } - case 1: { - AppUtil.getContext().eventHub.emit(EventConstants.MediaActionEvent, MediaType.IMAGE, MediaAction.CLEAR) - } - case 2: { - AppUtil.getContext().eventHub.emit(EventConstants.MediaActionEvent, MediaType.AUDIO, MediaAction.CLEAR) - } - } - }) - .visibility(this.currentIndex === 2 ? Visibility.Visible : Visibility.None) - }.layoutWeight(1) - } - .width('100%') - .height('100%') - .backgroundColor($r('app.color.window_background')) - } - - @Builder - tab(tabName: string, tabIndex: number) { - Row() { - Text(tabName) - .fontSize(this.currentIndex === tabIndex ? 17 : 14) - .fontWeight(this.currentIndex === tabIndex ? FontWeight.Medium : FontWeight.Regular) - .lineHeight(24) - .fontColor(tabIndex === this.currentIndex ? $r("app.color.color_466afd") : $r('app.color.color_50ffffff')) - } - .width('auto') - .height('auto') - .onClick(() => { - this.tabController.changeIndex(tabIndex); - this.currentIndex = tabIndex; - }) - } -} \ No newline at end of file diff --git a/entry/src/main/ets/pages/main/record/VideoRecordPage.ets b/entry/src/main/ets/pages/main/record/VideoRecordPage.ets index 6dff1d2..a818923 100644 --- a/entry/src/main/ets/pages/main/record/VideoRecordPage.ets +++ b/entry/src/main/ets/pages/main/record/VideoRecordPage.ets @@ -93,8 +93,8 @@ export struct VideoRecordPage { EmptyView({ status: this.mediaList.length > 0 ? PageStatus.GONE : PageStatus.NO_DATA, - noDataImage: $r('app.media.ic_empty_video'), - noDataText: '暂无视频' + noDataImage: $r('app.media.ic_empty_data'), + noDataText: '暂无数据' }) } } diff --git a/entry/src/main/ets/pages/video/VideoPlayerPage.ets b/entry/src/main/ets/pages/video/VideoPlayerPage.ets index b7195c9..80289b5 100644 --- a/entry/src/main/ets/pages/video/VideoPlayerPage.ets +++ b/entry/src/main/ets/pages/video/VideoPlayerPage.ets @@ -60,7 +60,7 @@ struct VideoPlayerPage { build() { Column() { - TitleBar().width('100%') + TitleBar({isDark: true}).width('100%') RelativeContainer() { Video({ @@ -70,7 +70,7 @@ struct VideoPlayerPage { }) .width('100%') .height('100%') - .backgroundColor($r('app.color.window_background')) + .backgroundColor(Color.Black) .controls(false) // 设置是否显示默认控制条 .autoPlay(true) // 设置是否自动播放 .loop(false) // 设置是否循环播放 @@ -204,6 +204,6 @@ struct VideoPlayerPage { } .width('100%') .height('100%') - .backgroundColor($r('app.color.window_background')) + .backgroundColor(Color.Black) } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/web/WebPage.ets b/entry/src/main/ets/pages/web/WebPage.ets index 8e8e71b..73c0af6 100644 --- a/entry/src/main/ets/pages/web/WebPage.ets +++ b/entry/src/main/ets/pages/web/WebPage.ets @@ -13,20 +13,9 @@ struct WebPage { @Local url: string = ''; aboutToAppear(): void { - this.windowStage.getMainWindowSync().setWindowSystemBarProperties({ - statusBarColor: '#00000000', - statusBarContentColor: '#000000' - }); this.initParams(); } - aboutToDisappear(): void { - this.windowStage.getMainWindowSync().setWindowSystemBarProperties({ - statusBarColor: '#00000000', - statusBarContentColor: '#ffffff' - }); - } - initParams() { const params = this.getUIContext().getRouter().getParams() as Record; if (params) { diff --git a/entry/src/main/ets/view/EmptyView.ets b/entry/src/main/ets/view/EmptyView.ets index 0e88861..034e7b9 100644 --- a/entry/src/main/ets/view/EmptyView.ets +++ b/entry/src/main/ets/view/EmptyView.ets @@ -13,33 +13,35 @@ export struct EmptyView { @Param noDataImage: Resource = $r('app.media.ic_empty_data'); @Param noDataText: string = '暂无数据'; @Param noDataBtnText: string = '' - + @Param noDataBtnIcon?: Resource = undefined @Param onBtnClick?: () => void = undefined; build() { Stack() { Column() { - Image(this.noDataImage).width(162).height(162).margin({ top: -50 }) - Text(this.noDataText).fontColor($r('app.color.color_999999')).fontSize(12).margin({ top: 10 }) - Button(this.noDataBtnText) - .height(30) - .fontColor($r("app.color.color_466afd")) - .fontSize(14) - .borderRadius(20) - .borderWidth(1) - .borderColor($r("app.color.color_466afd")) - .backgroundColor(Color.Transparent) - .padding({ - left: 10, - right: 10 - }) - .margin({ top: 24 }) - .visibility(StrUtil.isNotEmpty(this.noDataBtnText) ? Visibility.Visible : Visibility.Hidden) - .onClick(() => { - if (this.onBtnClick) { - this.onBtnClick(); + Image(this.noDataImage).width(160).height(160).margin({ top: -50 }) + Text(this.noDataText).fontColor($r('app.color.color_999999')).fontSize(12) + Button({ type: ButtonType.Capsule, stateEffect: true }) { + Row() { + if (this.noDataBtnIcon) { + Image(this.noDataBtnIcon).width(22).height(22) } - }) + Text(this.noDataBtnText).fontColor(Color.White).fontSize(16).fontWeight(FontWeight.Medium) + } + } + .height(46) + .backgroundColor($r('app.color.color_466afd')) + .padding({ + left: 22, + right: 22 + }) + .margin({ top: 40 }) + .visibility(StrUtil.isNotEmpty(this.noDataBtnText) ? Visibility.Visible : Visibility.Hidden) + .onClick(() => { + if (this.onBtnClick) { + this.onBtnClick(); + } + }) }.visibility(this.status === PageStatus.NO_DATA ? Visibility.Visible : Visibility.None) Column() { diff --git a/entry/src/main/ets/view/MaterialItemView.ets b/entry/src/main/ets/view/MaterialItemView.ets index dbb9b94..2ebdc22 100644 --- a/entry/src/main/ets/view/MaterialItemView.ets +++ b/entry/src/main/ets/view/MaterialItemView.ets @@ -1,3 +1,4 @@ +import { RouterUrls } from '../common/RouterUrls'; import { AudioMaterial, ImageMaterial, TextMaterial, VideoMaterial } from '../entity/MaterialInfoEntity'; @ComponentV2 @@ -13,7 +14,7 @@ export struct VideoMaterialItemView { Image(this.media?.thumb) .width('100%') .height('100%') - .borderRadius(6) + .borderRadius({topLeft: 10, topRight: 10}) .backgroundColor($r('app.color.color_222222')) .id('iv_thumb') @@ -26,7 +27,7 @@ export struct VideoMaterialItemView { }) .onClick(() => { if (this.media?.play) { - + this.getUIContext().getRouter().pushUrl({url: RouterUrls.VIDEO_PLAYER_PAGE, params: {uri: this.media.url}}) } }) @@ -40,15 +41,17 @@ export struct VideoMaterialItemView { .margin({ top: 6, right: 6 }) Stack() { - Image($r('app.media.ic_delete_material')).height(18).width(18) + Image($r('app.media.ic_delete_material')).height(16).width(16) } - .width('100%') - .height(34) + .width(30) + .height(30) + .borderRadius(15) + .backgroundBlurStyle(BlurStyle.Thin, { colorMode: ThemeColorMode.LIGHT }) .alignRules({ - bottom: {anchor: '__container__', align: VerticalAlign.Bottom} + top: {anchor: '__container__', align: VerticalAlign.Top}, + left: {anchor: '__container__', align: HorizontalAlign.Start} }) - .borderRadius({ bottomLeft: 6, bottomRight: 6 }) - .backdropBlur(20) + .margin({top: 6, left: 6}) .visibility(this.isWxVideo ? Visibility.Visible : Visibility.None) .onClick(() => { if (this.onDelete) { @@ -59,14 +62,15 @@ export struct VideoMaterialItemView { Text(this.media?.title) .textAlign(TextAlign.Center) - .fontColor($r('app.color.color_50ffffff')) + .fontColor($r('app.color.color_1a1a1a')) .fontSize(12) - .maxLines(2) + .maxLines(1) .textOverflow({ overflow: TextOverflow.Ellipsis }) .ellipsisMode(EllipsisMode.END) - .margin({ top: 10 }) - .visibility(this.isWxVideo ? Visibility.None : Visibility.Visible) + .padding({left: 8, top: 10, right: 8, bottom: 10}) } + .backgroundColor(Color.White) + .borderRadius(10) } } @@ -97,15 +101,17 @@ export struct ImageMaterialItemView { .margin({ top: 6, right: 6 }) Stack() { - Image($r('app.media.ic_delete_material')).height(18).width(18) + Image($r('app.media.ic_delete_material')).height(16).width(16) } - .width('100%') - .height(34) + .width(30) + .height(30) + .borderRadius(15) + .backgroundBlurStyle(BlurStyle.Thin, { colorMode: ThemeColorMode.LIGHT }) .alignRules({ - bottom: {anchor: '__container__', align: VerticalAlign.Bottom} + top: {anchor: '__container__', align: VerticalAlign.Top}, + left: {anchor: '__container__', align: HorizontalAlign.Start} }) - .borderRadius({ bottomLeft: 6, bottomRight: 6 }) - .backdropBlur(20) + .margin({top: 6, left: 6}) .visibility(this.isWxVideo ? Visibility.Visible : Visibility.None) .onClick(() => { if (this.onDelete) { @@ -125,7 +131,7 @@ export struct AudioMaterialItemView { Row() { Text(this.media?.title) .layoutWeight(1) - .fontColor($r('app.color.color_90ffffff')) + .fontColor($r('app.color.color_212226')) .fontSize(15) .maxLines(2) .textOverflow({ overflow: TextOverflow.Ellipsis }) @@ -133,13 +139,13 @@ export struct AudioMaterialItemView { Image(this.media?.isChecked ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')) .width(18).height(18).margin({ left: 10 }) } - .borderRadius(6) - .backgroundColor($r('app.color.color_222222')) + .borderRadius(10) + .backgroundColor(Color.White) .padding({ left: 12, - top: 16, + top: 14, right: 12, - bottom: 16 + bottom: 14 }) } } @@ -152,19 +158,19 @@ export struct TextMaterialItemView { Row() { Text(this.media?.desc) .layoutWeight(1) - .fontColor($r('app.color.color_90ffffff')) + .fontColor($r('app.color.color_212226')) .fontSize(14) Image(this.media?.isChecked ? $r('app.media.ic_check_true') : $r('app.media.ic_check_false')) .width(18).height(18).margin({ left: 10 }) } - .borderRadius(6) - .backgroundColor($r('app.color.color_222222')) + .borderRadius(10) + .backgroundColor(Color.White) .padding({ left: 12, - top: 16, + top: 14, right: 12, - bottom: 16 + bottom: 14 }) } } \ No newline at end of file diff --git a/entry/src/main/ets/view/TextItemChildView.ets b/entry/src/main/ets/view/TextItemChildView.ets index e964aa5..89875e2 100644 --- a/entry/src/main/ets/view/TextItemChildView.ets +++ b/entry/src/main/ets/view/TextItemChildView.ets @@ -1,16 +1,22 @@ @ComponentV2 export struct TextItemChildView { @Param text: string = ''; + @Param rightText: string = ''; @Param divider: boolean = true; build() { Column() { Row() { Text(this.text) - .fontColor($r('app.color.color_90ffffff')) + .fontColor($r('app.color.color_1a1a1a')) .fontSize(14) .layoutWeight(1) + Text(this.rightText) + .fontColor($r('app.color.color_666666')) + .fontSize(15) + .margin({ right: 1 }) + Image($r('app.media.ic_arrow_dp16')) .width(16) .height(16) @@ -18,7 +24,7 @@ export struct TextItemChildView { .layoutWeight(1) Divider() - .color($r('app.color.color_10ffffff')) + .color($r('app.color.color_eff2f7')) .strokeWidth(1) .visibility(this.divider ? Visibility.Visible : Visibility.None) } diff --git a/entry/src/main/ets/view/TextItemView.ets b/entry/src/main/ets/view/TextItemView.ets index 352dd08..113c1d2 100644 --- a/entry/src/main/ets/view/TextItemView.ets +++ b/entry/src/main/ets/view/TextItemView.ets @@ -14,13 +14,13 @@ export struct TextItemView { .visibility(this.image ? Visibility.Visible : Visibility.None) Text(this.leftText) - .fontColor($r('app.color.color_80ffffff')) + .fontColor($r('app.color.color_1a1a1a')) .fontSize(15) .layoutWeight(1) .margin({ left: 10 }) Text(this.rightText) - .fontColor(Color.White) + .fontColor($r('app.color.color_666666')) .fontSize(15) .margin({ right: 1 }) diff --git a/entry/src/main/ets/viewModel/LinkRecognizeViewModel.ets b/entry/src/main/ets/viewModel/TakeMaterialViewModel.ets similarity index 97% rename from entry/src/main/ets/viewModel/LinkRecognizeViewModel.ets rename to entry/src/main/ets/viewModel/TakeMaterialViewModel.ets index 84bdb79..ce6fcf2 100644 --- a/entry/src/main/ets/viewModel/LinkRecognizeViewModel.ets +++ b/entry/src/main/ets/viewModel/TakeMaterialViewModel.ets @@ -6,7 +6,7 @@ import { ToastUtils } from '../utils/ToastUtils'; import { BaseViewModel } from './BaseViewModel'; @ObservedV2 -export class LinkRecognizeViewModel extends BaseViewModel { +export class TakeMaterialViewModel extends BaseViewModel { @Trace materialInfo?: MaterialInfoEntity; @Trace analysisInfo?: MaterialInfoEntity; @Trace permissionInfo?: VipPermissionEntity; diff --git a/entry/src/main/ets/viewModel/WxVideoViewModel.ets b/entry/src/main/ets/viewModel/WxVideoViewModel.ets index d3e47df..be11175 100644 --- a/entry/src/main/ets/viewModel/WxVideoViewModel.ets +++ b/entry/src/main/ets/viewModel/WxVideoViewModel.ets @@ -1,7 +1,7 @@ import { plainToInstance } from 'class-transformer'; import { VipPermissionEntity } from '../entity/VipPermissionEntity'; -import { WxServiceEntity } from '../entity/WxServiceEntity'; import { WxVideoEntity } from '../entity/WxVideoEntity'; +import { WxVideoServiceEntity } from '../entity/WxVideoServiceEntity'; import { apiService } from '../net/ApiService'; import { ToastUtils } from '../utils/ToastUtils'; import { BaseViewModel } from './BaseViewModel'; @@ -12,13 +12,13 @@ export class WxVideoViewModel extends BaseViewModel { @Trace deleteVideo?: object; @Trace permissionInfo?: VipPermissionEntity; @Trace errorCode: number = 0; - @Trace wxService?: WxServiceEntity + @Trace wxService?: WxVideoServiceEntity @Trace wxUserinfo?: object - async videoList(scene: string) { + async videoList() { this.showLoading() try { - const result = await apiService.wxVideoList(scene) + const result = await apiService.wxVideoList() if (result.isSuccess()) { this.wxVideo = plainToInstance(WxVideoEntity, result.data); } else { @@ -81,7 +81,7 @@ export class WxVideoViewModel extends BaseViewModel { try { const result = await apiService.wxVideoService() if (result.isSuccess()) { - this.wxService = plainToInstance(WxServiceEntity, result.data) + this.wxService = plainToInstance(WxVideoServiceEntity, result.data) } else { ToastUtils.show(result.message, true) } diff --git a/entry/src/main/resources/base/element/color.json b/entry/src/main/resources/base/element/color.json index fb2cdde..18a7487 100644 --- a/entry/src/main/resources/base/element/color.json +++ b/entry/src/main/resources/base/element/color.json @@ -40,6 +40,14 @@ "name": "color_1b1b1b", "value": "#1B1B1B" }, + { + "name": "color_5c5f6c", + "value": "#5C5F6C" + }, + { + "name": "color_eff2f7", + "value": "#EFF2F7" + }, { diff --git a/entry/src/main/resources/base/media/ic_arrow_dp16.png b/entry/src/main/resources/base/media/ic_arrow_dp16.png deleted file mode 100644 index c592d54af29cb835230f68ab796c0fe512ab95f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 454 zcmV;%0XhDOP)Px$fJsC_RA@u(nafHAF$_RY)NgR5qKG2u|9^xF5yXx74I*B_ySkA;2L>5*9!+9p zx}Kpq&1q>;q46P&$Il9ooxw#JP}KuqCnCEnkXZn#x({3dhrlQBBqEy(h`9i#z%{T} zg5Cmmz(zzg5@a%fs@gxc`sd#Q{Qw?;*GP!T02Z{Wo&Yz1snj0^aW5k8QCXM^VCvig zM?H4V(Qhm?LP8# wr$DpMtYgc_i0@pk(-DDpbF2W7t35Q=7t}8XKyG1)ivR!s07*qoM6N<$f{=>6!~g&Q diff --git a/entry/src/main/resources/base/media/ic_arrow_dp16.webp b/entry/src/main/resources/base/media/ic_arrow_dp16.webp new file mode 100644 index 0000000000000000000000000000000000000000..75775dba066a5727bc90048edb59f955cf6eca4a GIT binary patch literal 378 zcmV-=0fqijNk&F;0RRA3MM6+kP&il$0000G0000l001ul06|PpNP++W00D4Y+qR;N z`%EKPL<6(}A!QIb`A`aNXiN=mH^L5{MT8=^jg$^744mi>##ad$afNJj5;gYn09uwF&h2d#!1zHji;8)1Ap)?bRxb^{!43+ z!&b9?u}Anlh3`Rn&+>cx%aH+AP&gpU0001R2LPP`Dlh;r06vjCmq(?eq9HCRn6MHF zX#f?#6n1&RTD>wOQlGAn2v>IIBaCDa*0dTQsVBcP5@Xx<>fWCXLxXedl^yf{+=7YfU>UR!pC9!?8}dLUSDRb^_iiOX zU9n)!LJ|9PD`(!0heg+Aenv0jQ%#UvHp7Z@CF^?xE YO#Db(RX@FT{3cvK|1{UUf7Jp204Z#w1^@s6 literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_copy_id.webp b/entry/src/main/resources/base/media/ic_copy_id.webp index 9fc7d7bc879b5340d5acea46558b127d1d474d34..1acd382c910ed92b76cf1bf1cf38a9fe27870b31 100644 GIT binary patch delta 192 zcmV;x06+hd1f~Q9Qb|Te9+0e`Fj0058$0G$CUDgY_~K6x&YN2H>mp*Y9@kPiuG z4aB8*S?J0Tf7t_{J=aSTsJ-3~{O=Qb|Te3b6%o0e_eP006KB0G$CUDgY_~K7BBfN57*Xp*Y>R1Mm-t zX#*Go^Z)^5V)*%i3(7`=W>eAWHloanX!#{@0RHJLumE{B@q1OL-mSQgn^6pQCJatD z%lvs&1poN0pZ~>hUQkFJx=h!~<3;{3^87Oi9cXB|f*HWp$$qt#{#;s;bAL9g20002WEKk1x diff --git a/entry/src/main/resources/base/media/ic_empty_audio.webp b/entry/src/main/resources/base/media/ic_empty_audio.webp deleted file mode 100644 index 84992dd23c05a4ca3ee3455134e34510aacc59d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10926 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 AaR2}S diff --git a/entry/src/main/resources/base/media/ic_empty_data.webp b/entry/src/main/resources/base/media/ic_empty_data.webp index 1604f152c3484d50ec718eee90e1811e418fd148..6c945ad068b60245818fe31589fbfc9aa491540b 100644 GIT binary patch literal 7936 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 literal 10570 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 U_)4jbsJ%p9+q(Q;u=!v6Khxqv-T(jq diff --git a/entry/src/main/resources/base/media/ic_empty_image.webp b/entry/src/main/resources/base/media/ic_empty_image.webp deleted file mode 100644 index 74a6d194cd0abb4240806c0f8de6a45e9bac57a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10098 zcmYj$18^N&u<(tO8{4+6Hn_3XB#o^mY1CNFjc?4xwr#UPW7~Eb`|mez-u&;(!OZT= z?jG!(#TPkgX&ZU~Kubzo^{c9YHV^;+VEh~VQ2%u?MO9f{A^-sDs@pC-*?jebl$#pX0Q+c121ps zD27&R+awqwP=fU|_M1XnlCRAXBChBh$}2wI8_1e)6Hff3Wze>w2T6aLtSqcf%jJmt z)FkxVw*l#?f(>8L$W;H{fV%C3P(AVj#rh2CcLq6T*sui{DbQI$h42rL<8rJeJEXrD z)pOVr61JRBS;&-fQB11wxl2x9r zC`$X28X2ek6!t7c7NZDUpJo}bn0Vzs4DCiA9txult>}7SQ^eiG+;bs)9Ri1BS(v|YJX2d`V$#z6@O z(nPTA{F>{f9hC@Z{4SB`O-s7&f@tJ z=!7%`OQKr|K2VxkUW19B9tBW`6wop8jdrg+gzor$#_)HGh(26iu4*01gnCPvy@X59 zg>4qeBV0ftj7gm%fYm^2I@B0^3~n_Sg}iLfCb%IcOCfE-c5EQ z>uqcyIci|Rvo=NWIbS|Cn5&%w283JBg+<*Rh-jgaj^8a_-Vb(qVv7Y-0;m;Ip8DJu zHs4E}8y##yx=T$|Wfg6(MaB2xMC}Ocrs%U^MOoBp_&2Q~!>>AiMxPNIKcSdav9k*1 z@F)xz0rR$uJ9qiKGJS`pi09EGCq>dUfZt%{VntQerhwdlxVPI$d7^%@8(7Gxj0Et< zL_EbQkQ*Tt49R_{t7Zn8;XIuT18%cud#~aV1Kup8UxmAWD4~jZGq~x}V}a*Yf__Ti zG;qN>@d`9H_B&A^YPk~joY9DPvxP_3!*bqUkaQZ~s(H*6V1btpj|qA!&i*piin zVZxvO>iZ;brEs}$%*cCe?>ff%_tO-DQ2ow?V7Gt!NAlN^ zrmT|TrGiFTtwkI*AmNIf3{)tSk80p3!$#^k`*&8t>a-Zk>S4eoac{`TBECl48VBob zx+HW>XqfhpqNO)sNXxVOn#d`k6x&I-d5pS5Hx-Qbrd;e@Jnuqk$k^v~z8_t90oh4J zaR^yNUR5ZnhBRVlpOGT1#=JxvN4_po|S6-K^s zD^QIw5TOlM6X(N}0c%bRi^6dB7D#TYk=Xsq?N5&e?Tjf`O;a4vc?s6e15(_iQm#V@ z)>JeKL8G;daw8?801GYA~J~WDo>`#zSqeURPi3v7N+h1xJ_(K}fzd0HL zf;904+-in8g*|uXJzE(Crf73OE!UBI%e*$p(wvJw;0mc(hH+fvS_^p#mlT2zz+4)S zFJWwB6pp=GYko8>b|Ss_LUYc_o+8j(SY6w?(r{QhL~+l97Tmow3O5C`0G%xbRA4ea zHLzgzEK^|;x8-czeoBNMa;54!*)5YEFFO3 z-sY~qOagR#+(|QxZ}5QszzZ6DIQ_9dNS3gBc|1Ema(oWSeSVRl@k=G8Q_9L9-)HAQ z5JY+NdWSX}xWRwEdxe{@LhF|k^b_+;?RT_iAZOH0vcO8s>6$PRsGG0yxaJ{=844WY z)}m@bbSAh=2U@vzBJzj+vC<;TpS;1Z%c>)^VvZz#cY@HU>g;h0Fy~no{)B{CX@$@@ zX8j2;qjl~U1V(OrmmBsb>-SXamEUAoD#vEbAv)kBNguW7%5}U9mscY=;5x(ADE~8P zGRJKJ*30^{M5F}zg?@^375<%A0_o4EO{T;t*kb^}QMLqJx7l;={nPvQY2#?8M^TmxLTkfw(aG?*Q zPRSO&P&rDsA&3IyVShtx$(pLAw>q3U124m2m5pw$V5FdrI4c9IC4Y^f&3-B`WAa~~ z`ScoHf(2rp6L_>J$F_qb3Z2IdAZb`hwxB}$COpG0pbG!RS4{GjoW%*?YP4yrhI>Es z%0AHCi6iS=>d+Q$-0@>=EL6$~G@8|5n`$y5nYxC;0G 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 DNt-2h diff --git a/entry/src/main/resources/base/media/ic_empty_text.webp b/entry/src/main/resources/base/media/ic_empty_text.webp deleted file mode 100644 index be715ef076e3cbfe6cff0cae79257791b43907fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10402 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 Mix>a^000000Jjve)Bpeg diff --git a/entry/src/main/resources/base/media/ic_empty_video.webp b/entry/src/main/resources/base/media/ic_empty_video.webp deleted file mode 100644 index 063aa195baa293843effed6f879f1c351d5fec08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10612 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®af;FrjkMel2Dl*2d+Gp#@b_?o<*e6W=3gKY)H&0qNF4DR+j4MPN zQxik}BvD$EuY|fS(e5W7YeoL^qlB*&8TS&-Pq(uW#h4x+B1XXr1FWP7xb5@BfJbNO z`7lemKb`ClX2C_O7DO!NjD9C0SMA06=%(Uq`E-J1o#7KLn%|mRz7AJb1J=ipQ-H}~ zp!g^em&ACgj%Ed3M)a<21i@@w${WG*9NovouL$fXzl0Ua89aT~o&Wk<2O~c(#%f`a z7egtIN{~i5OcUiYM}9c^ht27I%?}RQ)C#1cHF;um>lw0`lPoCYUa_cC%LNfTpH)$V z;ycS_UyQ6BkggIUG}Jn@Nb{NHLt#4Li!{q}%3%=XxFZI^sjx>mg8U~`DfWM|F0NlF zj~gm5Xj3BF$Gpxs&b~-`wCidM+5rND(GYE^h2jH^T-i5AtZZYCS=J~r)|TQ+x{XQ; z8jI;TEElxryke_JnGfBJZDgt(psk;}%SyPV3DrVmblVS@ zsXx2V2p)SVB{z{BP}NpR*@R&DpgA<%)|JkQxh|XQoM8ajkqNZC_Oh7UDU@R{gc;Y$ z`+F%b`!BcbonIkPMQ~sl#>OsboL_eEh(ck;asadjR@GFfoG!L z{_lE;wvpjiyWyEkPRJ(A#>}27(xfnA?)Ju3M3RUsqmbq=LK>`T&;^M4F;f*|3=*V+ zEgKdx9$j()<0JCzyToo^6v(*i3zr*KQjMyFs3(gNzi07vv;?n^9lBfpnN7wtV1xem}yEg9TJk}7;jB=Kb zawQRMKNTr69Bnc<{Uka4M>S`q_d}XwMu=f~EQ|E;wt*4EX~Jsk3q~B~Lgu5r$ZWGn zvb^Y}4G5W8fE+P$Ou!_M$^x4=_5V;LtCOdNHWHZN?P&lYmdmLU*~GL>(ZNGoNxBB$SCrTI1G=ptZXZ-H@lQf+k&d-h(w z?6+M3NlMZaF9gFYU~iJL0ZC#+=45rg9Qd$@j@n)?)88Rdw*MYe_vg)9t^10B>&;wf zitri4C2QT*`LwBNw0X2y*%5$@=OKjbMi3?qp3JVz$BHhux0}fkE5W_;190sYyiQGL zlEi#GrVY8Pa?}t;{2^5DNEP7P>F@A`iOBEtK&trbWyV8mJlh}kJbCC)Pcj?p9*2-O@{g$TH;T3v^iXGsc68kp zB}O;WtBWO`k!e~rt}7*^-5by6$ml7vg8&sNt}mIW@vBb?=s=s7-!i=ULt3+A^s!vg zDQiuZZ;pc&q-tSjutg6ErtHsjY9b;_H;Id_M^W2YT^xqdux)BugZJLeMTxgQwC`2+ z^4d~)u@FH4Td~A=KKt^LCFb4Cn|r-;?|JoBn^-(-Y@9&oLiYknbl5nbk42kf^3w_a z7*B)Eb3Lu%@VOedN|Y8-$dj+ttfWJ5iVb#gP;I-r=oSB;Uz#+lD-frD#Jp*cTdAo^X9)*GSj=b1wl$}nOVnlMyt;BHrn4Oi3GUW)O08p=_F_6M|*Z2)P?sMe+UOg-AkW>gwDvRa&?y) zN>dGDJ?!1)C?zmuKWN->eP>h^m{v-z8Y) zC?A+r$3>Yk7&&M9GP$2d{PqJZC|OFEY;N4aa6ar@9CnRDEYwcdQVbStJ0RVhoQu#^C;1q)z3in{k_Skbt0B@ZYh8;d{_Vw{;kt91Z#nZ^PkzCKm;>ZX$wx;FTI6kq`U`4b_rKv3BNU!M9vI1>==1;otNs@9x8$8lQ-2}AhKJs8 z+jY1AmPod8m|-*Um|T+O9jbJkcmNGt^Iv~8L_yJhA^cTH{E!xsge33;$(#Tyn|7Hi zH*^30M)nDZnk9tCu&lM=KCp$4k!XnO pYA@gWJ~hIB`IkTc%vZrYI}|J6;?cxo-Cdge=0^v8y*$*w002fokjwx8 delta 363 zcmV-x0hIpS2&4%GQb|TeoUsK(1AkTl008g_0G$CUHUKsNK9M+&DpXG!??Sy#Lf&$XLjHB zq9AIXeGb$(Y(Oq@-hnIsZd_}$Xc~^s!`7~D;Ev_jNoqn*oNOjh+GTWAn>6WsQb;2T zUhbwRO3<|7SFgjG3y0q@#0Rm&kpK4E(UQigtFq&dtN;JzGIb+CH-6@PgF?}JwuJJo J1a|-c000^9vFQK+ diff --git a/entry/src/main/resources/base/media/ic_mine_icon1.png b/entry/src/main/resources/base/media/ic_mine_icon1.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a673dd8b9a0d1f368eeccc6271d16f9a0f369b GIT binary patch literal 3581 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 Di){Fa literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_mine_icon1.webp b/entry/src/main/resources/base/media/ic_mine_icon1.webp deleted file mode 100644 index 75ae310721a55036e06492cbc567882644d2b7ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 790 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 k`HU45T(AEF|07@0_y#N3J diff --git a/entry/src/main/resources/base/media/ic_mine_icon3.png b/entry/src/main/resources/base/media/ic_mine_icon3.png new file mode 100644 index 0000000000000000000000000000000000000000..9460f7576782b8089b104d1ddbcccbe242cdba0f GIT binary patch literal 2867 zcmV-33(WM1P)jO8%8G3I-lNUZ2Clq(U|+A-H;iGe z)1~-KbHMw6uo4iTN5E;UPZ@L?px9VY*lQsZNShzr*L7voOe!4LNY3k4yheqT9d^6j zt_pAULz*MJo&f#=2ou;|KUQl(Ftwthrovj~)N2iIphsf5eChOY`O=6PG}vyBDS=~X zB`BP~6@Y8mfrnUKtjS6-k)D;ywRXDxBY|=?0?Yt{nJ8(sU3endqr6n#=kwhL!r8>> z2G-kH?TF5e{uvIRZRc&qWJn`9M%2fqfQ086SjiPbR3oGu2| O0Jc?Yk=#%x!Zl0 zI~s*Qu(ij#uf^^F9Olcnm54rK^`B3Q(73oF7*bw4abB2@pe(v|&I64?8q^>}oA=!1&H{MYG%6 zn-5)Sm;Sxl>9O$y@>TA+j5SUO;0uz{ziAVyksnufy+qRB9FD^8AYeV8DTkqR2|&$~ z%%*DHJqw=Zb<|VB?b%xSE=pViejUwo}L&Cw%nVNz%mjV2fHP;>vm=ak4Zv z8~|T1g$8g0Nj$q_nPUUk{3Hb~8kN6bJ6~sw7lI&Cv_2GS`G^aW9`@WOtx{V@Lxm9Q zxYH`uIN=lANhp33?gwwh6(pIk49@HI_94KrCjFlj0w)B6!HlkqCUz6Eh>)S(Lqaa& zLbH3xupnCFXoF?`MvQSC+hQ49ax z0=ZO#v{_rXV%VfSsVvLj5VgAjp^u^W(}cMB;K74m8uGKABEOxj&OO8$8sAsKTalQUlWu5i3oL@I8mRD40yN@aDM&GW`x4CR zV_!~#Qz7qCp?@C{ex=T`QTe&*1W5Y%j^()9SeEH@PJ?s(7w!YZml;A|R->GiBqk63 zs`jR_ARFnN1gE06BkO38)a1K>aEA$q(?Bpc+8_Sf*oe}kJmXn82Tnmdb9-zAX;K9m z&0=b28QQ!^r&yJ0Of40#V;SPHCZ4SFXkkw3n?+S}w`kS!FBh8nbOFOtr9VfFbau$^$ z-~-$yKBk7CF3C3{=g-XFoaR6z+e%4t0$jL&6rjY>MD&i3k$L{LeNUxylo@E86W}_X zu49O>nU7Ba-7G(qHLs7a|T>G4=UNdDk^F`{rmS%h`d~@ zpPL$7c~#Zj9-$KPtB76LlS=YF#{;fGH;eVO^W4wtoN}hDFKx8J)Waq zQ;F;8O$)BFvQh;Qz7-D$E2WH>JtN0gfR}A#&qV9X6dxhtzetv#H7^ zL&>OQY{ZRunuv2y^MkDDuTx)z(N43X6N16RjNjU z`iM*aF5AtBWCWc0%MXzphyX=bd7a%|S42dQ7lGGRC);5th|2aqYh^_b!TOCWi! zIKZ*w6gx6&ZV8;^H5xGSxe*Z^W}T`Ctp>D_%l^&U69B_R@NtxAlizP1EiNo9?#sTJ z2wHmi&=R-^e|XMFc;MzAgYUfk_5rt;Sch#*&b?7xpTL*vY#x2jWmA<+)Wj3-t#Eex zBekyU32&tHada{8GrYa7SOVA4(GdlplP10OcHJ6Q6Te9jfO33$leTn6Q$b@kb-S{; z6tDTV5+bPg>WqG$b~q#-t1&wx2ue@3X2RzUHi^&*A9j}@=((QH|-$v)EIV&g%Tw?&xc&QRd*jrLkVmwAL`&b57 zTH0qHpQZm8JK>@BAffXI#{67O`+UAqp07Cy0>-(SN1E8XZ{NPOUaFuvBtR8SxE$WT z2*)K5UUa*wzcFNpwUErkc3I!>l~EFn!6G(nHopa`iVr z!+Qm>U_FOy?ooAfMJv2jPot2V5n;TkPbk;9-FKJ`2-E5+Gih+1va(Njh9FP$<+DiJV`=Pk~c8Z8q{aI~nPLx&;5wgd7_RwY<;P z`8@M?5@HLS>Ytw`I)lN$8$fajkM{$dm()<_`aLBl_)1tGjTVevkNm4ep{b z84R}kF&4p*e2>S^qqLv%Z8^g2GAwk8uaHeZ^aSaVsT~~$5}v)2aUfN27i_6zJlNX& zf+lDb0)3B1;2KnKgI_4^(XTK8e82(KSvqRNHBC+l2Ag-PsU}sg(gNje{;c)TKK9R2Fr{002ovPDHLkV1k!6awGr% literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_mine_icon3.webp b/entry/src/main/resources/base/media/ic_mine_icon3.webp deleted file mode 100644 index 2be894927c35c56f3e3e7a6a3a6d6a180033fe96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 892 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 IM6N<$f^^ac6#xJL literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_mine_icon4.webp b/entry/src/main/resources/base/media/ic_mine_icon4.webp deleted file mode 100644 index f8af9b8595efd12445f94a79c01af0c6a3d735f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 990 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 W|HlzQ{{n(CS(~Fg{!ZM%u zvFJG+E-HAH7jHwIVUwShQKI55c z9El7pgjdeAy!4lyC-Y`n?jB(+xW{X3+pztMFZ+ zz}FJ9ac#8ERDwq}(=p9#sgFB}lHxAI`XG~4a3NMw2%kxx8 zNe^I^GVR|0Co77?RvhrtGSV#e3gYi3nyJi}(%$DOt8rUCbU=HRz*g{l+LNTLYYDgE zQklSm@HSafwlBhAC2$=)Qw|2;f_u)-(+r|UPERrj?J+N3laW`&lX!#4?cPmcy2={= zr8pTq;8&@^N;n^*8{fvuR2jXYs?1;&T!__8Xya92;S5}su+^cB@HX1LklS$9i2)v3 zCI!2t^{a;|PNY16pF`a0_Ri0j94EA?t-#CuyDvf8>D~Hg@b$p%-Me?+_E3Lh_rCi+ z=v)%)go;|zfk4mB1m$e_u+Q#QO^8&E$BaLG)78^clU3jr09H^qAW{GT08j-0odGI5 z06YLbfijavr6VDsHRu4K5D94j7TiXhwt4riiE7(a=D%uD;zc@LVY+%?0R1ul|IiuV a`IXQA(ng4!|Ns2~ARnM7|NQ)b0001`0U_uB diff --git a/entry/src/main/resources/base/media/ic_mine_icon7.webp b/entry/src/main/resources/base/media/ic_mine_icon7.webp deleted file mode 100644 index 243d33cec115fff4f9ee349474e87f077bbbd041..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 808 zcmV+@1K0dgNk&E>0{{S5MM6+kP&il$0000G0000x0027x06|PpNS*=!00EF~+qNM| zQB`f*wr$(CZQHi3C)+MF6_Jtavm(zuH?#E^5e@{nO`Fpg)qtuuIREv^s#MveO65~V z`?))gpEPRU@2FkC|O`ft;c|OeQ*o2 zI&CQgLOpEATpWYY;!K^Vt{;HMRV`@p8r&6XQ$30yJUdg*HXk0=(Ysm>JgKYyMHfPo z9X)lQ086w~zXRN^W-|+O!cfpg$+R$dZ5$g_djec9uN#U-;BR*9)HentV=^=>@ZeP= z$5ID@TQw9kD1zvsOaqnc)i%-M6S$Mils^Z&6#t@J%hhi@64}RlR~18Hl?U18yP-wk z4ihJP?Y9H~M9#F8>@?>#biz^8@nI-wS?2;t>&*Ehwkk{A1NEd!K6Kqu283#(f zzW;x|Xt%c#<0cNpS3D@f^(4aM@^BH(Ki(?MOX zA3XFKQTQo&s<6k0o8nwP1?EdW>iCe`Ey+aHa|xI%#^^8b>j^ab0fm(%#sD{k37Zmz zV-guxfe8ZL^WcFau>{y8xagG+4@FnYfOP`h(t+iZ8`6`I>B$vfg5^hYx+Z_*tmz{i z0w1yYp=-e9dfFe_ZTcan+I#Ren%CsWz?zJJx2vK+mux8MtJn)Iq=VXJ+6&Fidm)v3 zu(fdy_EYWsq4M7UuG{-fUIY8f=`yFbB6D(%_mnedbs%%nm31G%outm#hAGL|nrX`R zK8kFY*Sy=#it530N;=PFZMCM_dk~sreGdJd&fTWecUS5=Ly=`?$XpVGu(qpo3w9Oz zj&#GSBU!2Q2itCDsScK%(7uZv(RR_oCp}Wrf#+yDa5}s9f4v-5P&go50001x1^}G_ zDm(x@06uXlk4L1Up&>iqkPZoH2yg%_ZTbQ901mBg7q4U{>%DT2c8J~{#fJN?Kp9$1 ml6(Uo0RF!|ulRKa-NmkxYT8lj{}AjCx0R3lL!k@47ytm5277k^ diff --git a/entry/src/main/resources/base/media/ic_mine_service.webp b/entry/src/main/resources/base/media/ic_mine_service.webp new file mode 100644 index 0000000000000000000000000000000000000000..4ddae687c1c69b9aa132f4b8e697fd1c6700b86f GIT binary patch literal 1244 zcmV<21S9)WNk&H01ONb6MM6+kP&il$0000G0000@002z@06|PpNSgxy00E$e{r}lk z`=woaiYRT8JHTk{(u;rt2aWMATHh{v% zx-$AJbpTa2hs4n)w=V_AJswo$;`IOv&d|hR?VKe5E6-G9rydrt;W|wm*KXSaSnVp* zxUm|jc{(UA>aW!U$xD<7%mio}5?8}r0fuNQ+-w1h4iT4+Sp#s60^uP*-A5s}!r$kC zPG#<$um)IvinxC1R$$qI?mbiu3=6qeJ`G6T4U0o?Nj3ed)qeaP;!0aOoBjixvxc7(5jxVkS`lvAts96%9H~hmB zf)4EQvq|GU)fh?R*&lW<>F6QYRb;pg=zDkxMw`61^1nyzos$8`CKD-3Ei08sWC1pv zVDC48IZxbh-Q!uc%xAB=;i)*l2lf^L>5DXxBT{OmP8QLw$O6OcZ3O1-D;_vSL=IR2 zROuzn+{Y{XR{`tG{bl1nn)UY919SKF$^nakMIl>rfXqdj2Tm4|%S>RL*!~`1))O~e z_jnfQp^o|NbvHa22l&+9=_vp+kw{rUD|M_?B9R5ydXl}0)_H8!-KtLG`9EUz1Yt~pm`oW+#qWd4--~q8BZMQda0QG-{#FHmA zt=gVUCX+d)=GEJs zD9n8(EFOKX#(~;j4iAb~A2Ca?s#mr7je?(F6xOH{s(6+oplnmx zUMSLSU)+6Tor%g1Kmh*xofyM^|KSIB>`pktol^FRiH?L@%mfSg<}TO10;~VYpkE~L zm#%TJa*%R2YV0^c@^1t{#s62gRNuH&=V4UBze!tTIS{@Ep@6i5Z zxLypO@AA?OVn=sTkN!?{Jc*ahv}ZwguVcjc?BF-~dDA?eCx9&0#~`gueCg)-bCqfQ G0001Td1mz`w(`P(Av$k#9wr$(CZQHhOoVD%UF?y;|_5Mh@DqVf}FCr#@{68-QWGvQs%%p*h za)i161%!9o@!qNckdv;?uITAvo}C`1LZ$L^O9of+EqX$M*4TbwqN|iz6$6ge^KHCc zB5c7oI~*#>U#$*+#A5{ny$M0hUxBS8TN<3B%Lp%6GNsMDPY^b&JQCR#THK`29P`@ zgXlaV{g4MT*fGnC5{^-0-m)Oy?G@&BLK{|Wj{w?LxP&;hS0d@ILA9Acqfl@^I^4aJ{Q@;W~rAr}B3 zsiR2rT=P2se96h9Z~}GIkLcQM5~U30F&F@pN`zUYutuo_W<>=rb zQ;}^}O1T=Q3tuybGN}Myp5a57?!96_chQBv#9=$=xxU1qp{GPWb=S{CRlaG|V?UzO zeH*2e(oa8CH32|rO;i_51%Pp`F_enQt}gN}wM$iT{Y<4EN2&YcD0Ny@8AUf!sOQld zj#DR9l?7c<5B;dP-0DmZsjVCe>Y);)^io$!qDFAYtu4T+%_9x~J_oDuIt~E#!g?@5 z8(BhOONb+%u`+d2bddtTDa)oHmd~_g0I=65`su9BXPF)JyKXt7Oj(-T1g#to(os`& zB=?^TC~;37{*b}^R$XuzA%6@*wY{+$QD2@{fSu~6fsg`^Wp&DzdPHkuN-}Bl`AyBz zB;;G3phntV-k@m!mFT8TI72Ul;ULhm#HNb2sdAFu{e^|Njg{P-l6BHc8BFtnKz_un*liY+?{kd&ym~&jfh~>nCr(W_^P55ecvC-6 z;Nn;20vwvJmnF`2udpGW1@o?|qBf!8x_Gc{xBG?>9s1RI$b$T9ok@#n#ZMXRgptuA z(Wm?5Pj(8xtCmK=kr>?RJ=jX@-Yi7FhN3IuSg;>xo9%080Grm2HBE>kGc7{AKFbE0rh0oBU4?09H^q zAWi`Q01ycPodGIN08Riti8z)=r6ZytGd69Qpb-gaYJ&5UUz}|HFJ+pwF(x}|Q51<}jAns@X>!^B3^J?`s^-~a&OMEC6g literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_mine_top_bg.webp b/entry/src/main/resources/base/media/ic_mine_top_bg.webp index d00bee7feebc13895d6016ae5c5e915128dce6b5..15da82d94ca1e1c0781b95ffdd6ca187c79ad17a 100644 GIT binary patch literal 48632 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 z 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 Lr$@0qPyhe`!d^!2 literal 41722 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

f=r*4D-eY=TEcV2M{4kv1|t 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 diff --git a/entry/src/main/resources/base/media/ic_mine_vip_arrow.webp b/entry/src/main/resources/base/media/ic_mine_vip_arrow.webp new file mode 100644 index 0000000000000000000000000000000000000000..d4a35a6a1299b060eaf6cdbd0716bbb8684174bc GIT binary patch literal 338 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

1>=irT<_bE=R@m81 zw5@Tz-!@_QPbY+}72z}X7l)g4_oG(UgQLE0e##oidgWOl2kvjfNwB13&Emzxz`Q!> zwwYhRtwb5-wUCGpee=&zXr&T``-!m!|AB0<k@Mnyi!SGDaJ^wDV zpM_ZrhgDDESqv~2)`N>+ylDTmy9xXHRewWGC5z#K{b4#&Ut*Gor2=>bnk~rY-9(F0Z^a4h0 zuNJCSa7}@g$Z?Vq=SncPRh=#a`iw_WQ0QsPY5@~POofTayqGq#Qh&dX?nzYTGr${4 znOt-X4LzgCI#y(k)x`+I)*&mHfdXpJq_sUL0O2*heBgclId)0D%7i DUXdpC literal 2320 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 literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_take_material_course.webp b/entry/src/main/resources/base/media/ic_take_material_course.webp new file mode 100644 index 0000000000000000000000000000000000000000..214ef210fc2be2e7a4b68c27e5300d979f848ffc GIT binary patch literal 422 zcmV;X0a^Z1Nk&GV0RRA3MM6+kP&il$0000G0000%002P%06|PpNF@OP00DrrZQJqY zt8Lr%Y#UQo+mmg#ai)xE|Ac2-qiwgrGv9j=>YGOTxcGVj-k@oxBD+&srJRkvR2?z-A z(j*4=hX<5zMVrkUE*0MLBmugQdoxRAc?1so1ztv{S_qyL5F; z{Awcu#~4tZ!O`rQAff+lQg#lHP&CY530c_A>6xOZYyQYa zf#e{vdMSa|JY>dYe1W3;JUwIx|8I%)aOjC?Ty&JW zp`kgRXaJB8326WT*fl}vSkEf_#6DEfDK^3u;qn9wXY!Tc0R6N7`lvRa^LA4H6;Me3 Q{ZA|Z^*9GN*291R0M~4_!2kdN literal 0 HcmV?d00001 diff --git a/entry/src/main/resources/base/media/ic_video_course.webp b/entry/src/main/resources/base/media/ic_video_course.webp new file mode 100644 index 0000000000000000000000000000000000000000..2c5548da5d600a7192994685c41f8f18a4ea5315 GIT binary patch literal 1052 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