Toggle navigation
Toggle navigation
This project
Loading...
Sign in
developOne
/
harmonyPool
Go to a project
Toggle navigation
Projects
Groups
Snippets
Help
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
liujian1_wd
2024-01-16 20:16:23 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
b6726126b13ee0fa448ac7386057854618472feb
b6726126
1 parent
70e1ec95
编排底层能力
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
73 additions
and
1 deletions
sight_harmony/wdComponent/oh-package.json5
sight_harmony/wdComponent/src/main/ets/repository/PageRepository.ets
sight_harmony/wdComponent/src/main/ets/viewmodel/PageViewModel.ets
sight_harmony/wdComponent/oh-package.json5
View file @
b672612
...
...
@@ -10,6 +10,7 @@
"wdConstant"
:
"file:../wdConstant"
,
"wdKit"
:
"file:../wdKit"
,
"wdBean"
:
"file:../wdBean"
,
"wdNetwork"
:
"file:../wdNetwork"
,
"wdRouter"
:
"file:../wdRouter"
}
}
...
...
sight_harmony/wdComponent/src/main/ets/repository/PageRepository.ets
0 → 100644
View file @
b672612
import { GroupDTO, NavigationBody } from 'wdBean';
import { WDHttp } from 'wdNetwork';
export class PageRepository {
static fetchNavigationDataApi(url: string) {
return WDHttp.Request.get<WDHttp.ResponseDTO<NavigationBody>>(url)
};
static fetchPageData(url: string) {
return WDHttp.Request.get<WDHttp.ResponseDTO<GroupDTO>>(url)
};
}
\ No newline at end of file
...
...
sight_harmony/wdComponent/src/main/ets/viewmodel/PageViewModel.ets
View file @
b672612
import { BottomNavBean, GroupDTO, NavigationBody } from 'wdBean';
import { Logger, ResourcesUtils } from 'wdKit';
import { ResponseDTO } from 'wdNetwork';
import { ResponseDTO, WDHttp } from 'wdNetwork';
import { PageRepository } from '../repository/PageRepository';
import http from '@ohos.net.http';
import { BusinessError } from '@ohos.base';
const TAG = 'PageViewModel';
...
...
@@ -24,6 +27,35 @@ export class PageViewModel {
return compRes.data.bottomNavList
}
static getNavData(url: string): Promise<NavigationBody> {
return new Promise<NavigationBody>((success, error) => {
Logger.info(TAG, `getNavData start`);
PageRepository.fetchNavigationDataApi(url).then((navResDTO: WDHttp.ResponseDTO<NavigationBody>) => {
if (!navResDTO) {
Logger.error(TAG, 'getNavData then navResDTO is empty');
error('navResDTO is empty');
return
}
if (navResDTO.code != http.ResponseCode.OK) {
Logger.error(TAG, `getNavData then code:${navResDTO.code}, message:${navResDTO.message}`);
error('navResDTO Response Code is failure');
return
}
if (!navResDTO.body?.bottomNavList) {
error('navResDTO list is empty');
return
}
// let navResStr = JSON.stringify(navResDTO);
Logger.info(TAG, "getNavData then,navResDTO.timeStamp:" + navResDTO.timeStamp);
let navigationBean = navResDTO.body
success(navigationBean);
}).catch((err: BusinessError) => {
Logger.error(TAG, `fetchNavigationDataApi catch, error.code : ${err.code}, error.message:${err.message}`);
error(err);
})
})
}
/**
* Get Group data.
*
...
...
@@ -38,8 +70,33 @@ export class PageViewModel {
Logger.info(TAG, `getCompList getResourcesJson compRes : ${JSON.stringify(compRes)}`);
return compRes.data
}
static getPageData(url: string): Promise<GroupDTO> {
return new Promise<GroupDTO>((success, error) => {
PageRepository.fetchPageData(url).then((resDTO: WDHttp.ResponseDTO<GroupDTO>) => {
if (!resDTO) {
Logger.error(TAG, 'getPageData then resDTO is empty');
error("page data is empty");
return
}
if (resDTO.code != http.ResponseCode.OK || !resDTO.body) {
Logger.error(TAG, `getPageData then code:${resDTO.code}, message:${resDTO.message}`);
error(`get page data error code:${resDTO.code}, message:${resDTO.message}`);
return
}
Logger.info(TAG, "getPageData then,resDTO.timeStamp:" + resDTO.timeStamp);
success(resDTO.body);
}).catch((err: BusinessError) => {
Logger.error(TAG, `getPageData catch, error.code : ${err.code}, error.message:${err.message}`);
error(err);
})
})
}
}
let pageViewModel = new PageViewModel();
export default pageViewModel as PageViewModel;
\ No newline at end of file
...
...
Please
register
or
login
to post a comment