feat(ywq): 新增授权签名功能
- 添加授权签名相关页面和逻辑 - 新增授权数据模型和接口 - 优化医生选择和授权流程 - 添加授权协议和确认页面
这个提交包含在:
父节点
7e68e4eae4
当前提交
9351da99b1
@ -15,7 +15,8 @@ import { SZYXLocalStorageKeys } from '../utils/SZYXLocalStorageKeys';
|
|||||||
@Component
|
@Component
|
||||||
export struct XWebview {
|
export struct XWebview {
|
||||||
// 手机号
|
// 手机号
|
||||||
@State url: string = (router.getParams() as XWebParams).url
|
@State url?: string = (router.getParams() as XWebParams).url
|
||||||
|
@State content?: string = (router.getParams() as XWebParams).content
|
||||||
@State title?: string = (router.getParams() as XWebParams).title
|
@State title?: string = (router.getParams() as XWebParams).title
|
||||||
@State closeTag?: string = (router.getParams() as XWebParams).closeTag
|
@State closeTag?: string = (router.getParams() as XWebParams).closeTag
|
||||||
@State showMenu: boolean = (router.getParams() as XWebParams).showMenu ?? false
|
@State showMenu: boolean = (router.getParams() as XWebParams).showMenu ?? false
|
||||||
@ -26,6 +27,23 @@ export struct XWebview {
|
|||||||
|
|
||||||
aboutToAppear(): void {
|
aboutToAppear(): void {
|
||||||
SZYXLocalStorageHelper.storage.setOrCreate(SZYXLocalStorageKeys.XWebViewCLose, undefined)
|
SZYXLocalStorageHelper.storage.setOrCreate(SZYXLocalStorageKeys.XWebViewCLose, undefined)
|
||||||
|
if (this.content) {
|
||||||
|
try {
|
||||||
|
this.controller.loadData(this.content,
|
||||||
|
"text/html",
|
||||||
|
"UTF-8")
|
||||||
|
} catch (e) {
|
||||||
|
ToolsHelper.showAlertDialog({
|
||||||
|
title: '警告',
|
||||||
|
msg: e.message ?? '加载内容失败',
|
||||||
|
action: {
|
||||||
|
onClick: () => {
|
||||||
|
router.back()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
aboutToDisappear(): void {
|
aboutToDisappear(): void {
|
||||||
@ -38,7 +56,9 @@ export struct XWebview {
|
|||||||
if (this.controller.accessBackward()) {
|
if (this.controller.accessBackward()) {
|
||||||
this.controller.backward()
|
this.controller.backward()
|
||||||
} else {
|
} else {
|
||||||
ToolsHelper.doubleAndExit()
|
ToolsHelper.doubleAndExit(() => {
|
||||||
|
router.back()
|
||||||
|
})
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@ -95,7 +115,7 @@ export struct XWebview {
|
|||||||
.visibility(this.progress > 95 || this.progress == 0 ? Visibility.None : Visibility.Visible)
|
.visibility(this.progress > 95 || this.progress == 0 ? Visibility.None : Visibility.Visible)
|
||||||
.width('100%')
|
.width('100%')
|
||||||
|
|
||||||
Web({ src: this.url, controller: this.controller })
|
Web({ src: this.url ?? 'www.example.com', controller: this.controller })
|
||||||
.width('100%')
|
.width('100%')
|
||||||
.height('100%')
|
.height('100%')
|
||||||
.visibility(this.errorInfo == null ? Visibility.Visible : Visibility.None)
|
.visibility(this.errorInfo == null ? Visibility.Visible : Visibility.None)
|
||||||
|
|||||||
@ -143,6 +143,19 @@ export class WindowHelper {
|
|||||||
WindowHelper._windowClass.setSpecificSystemBarEnabled('navigationIndicator', true);
|
WindowHelper._windowClass.setSpecificSystemBarEnabled('navigationIndicator', true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置状态栏内容颜色
|
||||||
|
* #ffffff
|
||||||
|
* 不可以用white这种
|
||||||
|
*/
|
||||||
|
static setStatusBar(color: string) {
|
||||||
|
if (WindowHelper._windowClass) {
|
||||||
|
WindowHelper._windowClass.setWindowSystemBarProperties({
|
||||||
|
statusBarContentColor: color,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -6,7 +6,8 @@ const XWebview = import('../pages/XWebview');
|
|||||||
|
|
||||||
|
|
||||||
export interface XWebParams {
|
export interface XWebParams {
|
||||||
url: string
|
url?: string
|
||||||
|
content?: string
|
||||||
title?: string
|
title?: string
|
||||||
showMenu?: boolean
|
showMenu?: boolean
|
||||||
closeTag?:string
|
closeTag?:string
|
||||||
|
|||||||
@ -17,6 +17,8 @@ export struct SafeView {
|
|||||||
@Prop isImmersive: boolean
|
@Prop isImmersive: boolean
|
||||||
// 设置导航栏标题
|
// 设置导航栏标题
|
||||||
@Prop titleText: ResourceStr
|
@Prop titleText: ResourceStr
|
||||||
|
// 设置导航栏标题颜色
|
||||||
|
@Prop titleColor: ResourceColor
|
||||||
// 设置导航栏背景色
|
// 设置导航栏背景色
|
||||||
@Prop backgroundColorNav: ResourceColor
|
@Prop backgroundColorNav: ResourceColor
|
||||||
// 设置导航栏背景色
|
// 设置导航栏背景色
|
||||||
@ -26,6 +28,8 @@ export struct SafeView {
|
|||||||
@Prop opacitys: number | Resource
|
@Prop opacitys: number | Resource
|
||||||
// 是否显示返回按钮
|
// 是否显示返回按钮
|
||||||
@Prop hideBack: boolean
|
@Prop hideBack: boolean
|
||||||
|
// 是否显示返回按钮
|
||||||
|
@Prop hideNavBar: boolean
|
||||||
/**
|
/**
|
||||||
* 是否显示左侧角标,存在onClickLeft时生效
|
* 是否显示左侧角标,存在onClickLeft时生效
|
||||||
*/
|
*/
|
||||||
@ -59,6 +63,7 @@ export struct SafeView {
|
|||||||
.width('100%')
|
.width('100%')
|
||||||
.height('100%')
|
.height('100%')
|
||||||
|
|
||||||
|
if (!this.hideNavBar) {
|
||||||
Row()
|
Row()
|
||||||
.height(WindowHelper.topRectHeight)
|
.height(WindowHelper.topRectHeight)
|
||||||
.width('100%')
|
.width('100%')
|
||||||
@ -85,7 +90,7 @@ export struct SafeView {
|
|||||||
|
|
||||||
Text(this.titleText ?? '')
|
Text(this.titleText ?? '')
|
||||||
.maxLines(1)
|
.maxLines(1)
|
||||||
.fontColor('#11102C')
|
.fontColor(this.titleColor ?? '#11102C')
|
||||||
.fontSize(16)
|
.fontSize(16)
|
||||||
.fontWeight(FontWeight.Medium)
|
.fontWeight(FontWeight.Medium)
|
||||||
.ellipsisMode(EllipsisMode.CENTER)
|
.ellipsisMode(EllipsisMode.CENTER)
|
||||||
@ -186,6 +191,7 @@ export struct SafeView {
|
|||||||
.margin({
|
.margin({
|
||||||
top: WindowHelper.topRectHeight
|
top: WindowHelper.topRectHeight
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
Column() {
|
Column() {
|
||||||
LoadingProgress()
|
LoadingProgress()
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户