feat(ywq): 新增授权关系功能

- 添加授权关系列表和新增授权医生页面
- 实现授权请求的处理逻辑
- 优化刷新组件,支持分页加载
- 修复确认对话框的返回逻辑
这个提交包含在:
徐勤民 2024-10-26 19:35:48 +08:00
父节点 3a34fc48b8
当前提交 6e5dfee898
共有 2 个文件被更改,包括 44 次插入34 次删除

查看文件

@ -176,7 +176,8 @@ export class ToolsHelper {
* 弹出Confirm弹窗
* @param options
*/
static showConfirmDialog(options: ConfirmOptions) {
static showConfirmDialog(options: ConfirmOptions): Promise<void> {
return new Promise((reject) => {
try {
promptAction.showDialog({
alignment: 1,
@ -201,9 +202,11 @@ export class ToolsHelper {
ToolsHelper.showMessage(err.message)
})
} catch (error) {
reject()
let message = (error as BusinessError).message
ToolsHelper.showMessage(message)
}
})
}
public static mapDialog = new HashMap<string, number>()
@ -345,7 +348,7 @@ export class ToolsHelper {
});
}
private static getUniqueId(fun: Function): string {
static getUniqueId(fun: Function): string {
if (!ToolsHelper.uniqueIdMap.has(fun)) {
ToolsHelper.uniqueIdMap.set(fun, ToolsHelper.getUuid());
}

查看文件

@ -7,7 +7,9 @@ type ItemType = (string | number | Object)
export struct RefreshView {
@Link isLoading: boolean
@Prop data: Array<object>
onLoadMore?: () => void
@Require keyGenerator?: (item: ESObject, index: number) => string
pageSize: number = 10
onLoadMore?: (pageNum: number) => void
onRefresh?: () => void
private startY: number = 0
private endY: number = 0
@ -15,7 +17,7 @@ export struct RefreshView {
private _openMore: boolean = false
aboutToAppear(): void {
// this.onRefresh && this.onRefresh()
this.onRefresh && this.onRefresh()
}
// 使用父组件@Builder装饰的方法初始化子组件@BuilderParam
@ -30,7 +32,7 @@ export struct RefreshView {
ListItem() {
this.customBuilderParam(item, index)
}
}, (index: number) => index.toString())
}, (item: ESObject, index: number) => this.keyGenerator!(item, index))
}
.onTouch((event: TouchEvent) => {
const e1 = event.touches[0]
@ -48,13 +50,18 @@ export struct RefreshView {
case TouchType.Up:
this.endY = e1.y
if (this.endY - this.startY < -100 && this._openMore) {
this.onLoadMore && this.onLoadMore()
const v = this.data && (this.data.length % this.pageSize) === 0
if (v) {
this.onLoadMore && this.onLoadMore(Math.floor(this.data.length / this.pageSize))
} else {
ToolsHelper.showMessage('没有更多数据了')
}
}
break
}
})
.onScrollIndex((first: number, last: number) => {
this.lastNum = last
this.lastNum = last + 1
})
.width('100%')
.height('100%')