外键穿透的自定义点击事件
作者:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
protected onInitialized(formPresenter) {
formPresenter.getBean(BeanNames.EventController).on(InternalEvent.onCancel, this.cancel);
const isTemplateBill = this.isTemplateBill;
if (isTemplateBill) {
// 修改外键(项目project)的onClick的穿透的行为。当是计划模板时,穿透到项目模板。
const masterRenderController = this.formPresenter.getBean(BeanNames.MasterRendererController);
const billTypeId = this.getBillTypeId();
const options: ForeignKeyLinkRenderOption = {
onClick(params: ForeignKeyLinkClickParams) {
if (params.entityName === EN_Project){
const hash = appRouterHashManager.generateHash('ProjectTemplate', PageModeEnum.Form as any, {
mode: BizFormModeEnum.View,
copyId: params.id,
id: params.id,
data: {},
billTypeId,
});
proxyHistory.push(hash)
}
},
}
masterRenderController.add(NewForeignKeyLinkRender(options))
}
}
|
主要是第10行的onClick,可以重新定义外键穿透的默认的onClick。比如穿透到另一个entityName,或者搞一个弹窗。