Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
22
议题
22
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-R7
提交
dc537899
提交
dc537899
编写于
6月 02, 2020
作者:
WodahsOrez
1
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
lxm--面板界面行为
上级
d4ea91ea
变更
4
显示空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
152 行增加
和
22 行删除
+152
-22
CONTROL-BASE.vue.ftl
@CONTROL/列表/CONTROL-BASE.vue.ftl
+31
-0
CONTROL.html.ftl
@CONTROL/列表/CONTROL.html.ftl
+10
-0
CONTROL-BASE.vue.ftl
@CONTROL/面板/CONTROL-BASE.vue.ftl
+107
-22
CONTROL.html.ftl
@CONTROL/面板/CONTROL.html.ftl
+4
-0
未找到文件。
@CONTROL/列表/CONTROL-BASE.vue.ftl
浏览文件 @
dc537899
...
...
@@ -93,6 +93,37 @@
*/
@Prop() public fetchAction!: string;
<#if view.getPSAppViewLogics?? && view.getPSAppViewLogics()??>
<#list view.getPSAppViewLogics() as logic>
<#if logic.getPFLogicCodeType() == 'APP_NEWDATA'>
/**
* 打开新建数据视图
*
* @type {any}
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
@Prop() public newdata: any;
</#if>
<#if logic.getPFLogicCodeType() == 'APP_OPENDATA'>
/**
* 打开编辑数据视图
*
* @type {any}
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
@Prop() public opendata: any;
</#if>
</#list>
</#if>
/**
* this引用
*
* @type {number}
* @memberof Main
*/
public thisRef: any = this;
/**
* 当前页
*
...
...
@CONTROL/列表/CONTROL.html.ftl
浏览文件 @
dc537899
...
...
@@ -8,6 +8,16 @@
<#if view.getViewType() == 'DELISTEXPVIEW'>
:isSelectFirstDefault="true"
</#if>
<#if view.getPSAppViewLogics?? && view.getPSAppViewLogics()??>
<#list view.getPSAppViewLogics() as logic>
<#if logic.getPFLogicCodeType() == 'APP_NEWDATA'>
:newdata="newdata"
</#if>
<#if logic.getPFLogicCodeType() == 'APP_OPENDATA'>
:opendata="opendata"
</#if>
</#list>
</#if>
</#assign>
<#ibizinclude>
../@MACRO/HTML/DEFAULT.html.ftl
...
...
@CONTROL/面板/CONTROL-BASE.vue.ftl
浏览文件 @
dc537899
...
...
@@ -17,10 +17,10 @@ import CodeListService from "@service/app/codelist-service";
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
getDatas(): any[] {
if (!this.
d
ata) {
if (!this.
panelD
ata) {
return [];
}
return [this.
d
ata];
return [this.
panelD
ata];
}
/**
...
...
@@ -33,6 +33,14 @@ import CodeListService from "@service/app/codelist-service";
return this.data;
}
/**
* 父级部件引用
*
* @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
@Prop() public parentRef?: any;
/**
* 面板数据对象
*
...
...
@@ -90,6 +98,14 @@ import CodeListService from "@service/app/codelist-service";
*/
public data:any = {};
/**
* 面板数据对象
*
* @type {*}
* @memberof Mob
*/
public panelData:any = null;
/**
* 监听数据对象
*
...
...
@@ -135,13 +151,46 @@ import CodeListService from "@service/app/codelist-service";
}
}
/**
* 计算面板数据
*
* @param codelistArray 代码表模型数组
* @memberof Mob
*/
public async computePanelData(){
let codelistArray:Array<any> = [];
let panelData:any = {};
if((this.dataModel.getDataItems instanceof Function) && this.dataModel.getDataItems().length >0){
this.dataModel.getDataItems().forEach((item:any) =>{
if(item.codelist){
codelistArray.push(item.codelist);
}
})
if(codelistArray.length >0){
let res:any = await this.getAllCodeList(codelistArray,true);
this.dataModel.getDataItems().forEach((item:any) =>{
if(item.codelist){
panelData[item.prop] = res.get(item.codelist.tag).get(this.data[item.name]);
}else{
panelData[item.prop] = this.data[item.name];
}
})
}else{
this.dataModel.getDataItems().forEach((item:any) =>{
panelData[item.prop] = this.data[item.name];
})
}
}
this.panelData = Object.assign(JSON.parse(JSON.stringify(this.inputData)),panelData);
}
/**
* 获取所有代码表
*
* @param codelistArray 代码表模型数组
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
public getAllCodeList(codelistArray:Array<any>):Promise<any>{
public getAllCodeList(codelistArray:Array<any>
,reverse:boolean = false
):Promise<any>{
return new Promise((resolve:any,reject:any) =>{
let codeListMap:Map<string,any> = new Map();
let promiseArray:Array<any> = [];
...
...
@@ -154,7 +203,11 @@ import CodeListService from "@service/app/codelist-service";
let tempCodeListMap:Map<number,any> = new Map();
if(codeList.length >0){
codeList.forEach((codeListItem:any) =>{
if(reverse){
tempCodeListMap.set(codeListItem.text,codeListItem.value);
}else{
tempCodeListMap.set(codeListItem.value,codeListItem.text);
}
})
}
codeListMap.set(item.tag,tempCodeListMap);
...
...
@@ -194,24 +247,6 @@ import CodeListService from "@service/app/codelist-service";
})
}
<#if ctrl.getAllPSPanelItems()??>
<#list ctrl.getAllPSPanelItems() as panelItem>
<#if panelItem.getItemType() == "BUTTON">
/**
* 面板 ${panelItem.getCaption()} 事件
*
* @memberof @memberof ${srfclassname('${ctrl.codeName}')}
*/
public ${panelItem.getName()}_click($event: any): void {
<#if panelItem.getPSUIAction?? && panelItem.getPSUIAction()??>
<#assign uiaction = panelItem.getPSUIAction()>
this.${ctrl.name}_${panelItem.getName()}_click(null, null, $event);
</#if>
}
</#if>
</#list>
</#if>
/**
* 界面行为
*
...
...
@@ -220,7 +255,8 @@ import CodeListService from "@service/app/codelist-service";
* @param {*} $event
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
public uiAction(row: any, tag: any, $event: any) {
public async uiAction(row: any, tag: any, $event: any) {
await this.computePanelData();
<#if ctrl.getPSAppViewLogics()??>
<#list ctrl.getPSAppViewLogics() as logic>
<#if logic.getPSAppViewUIAction().getPSUIAction()??>
...
...
@@ -233,6 +269,55 @@ import CodeListService from "@service/app/codelist-service";
</#if>
}
/**
* 打开编辑数据视图
*
* @type {any}
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
public opendata(args: any[],fullargs?:any[],params?: any, $event?: any, xData?: any){
if (this.parentRef.opendata && this.parentRef.opendata instanceof Function) {
this.parentRef.opendata(args,fullargs,params, $event, xData);
}
}
/**
* 打开新建数据视图
*
* @type {any}
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
public newdata(args: any[],fullargs?:any[], params?: any, $event?: any, xData?: any) {
if (this.parentRef.newdata && this.parentRef.newdata instanceof Function) {
this.parentRef.newdata(args,fullargs,params, $event, xData);
}
}
/**
* 删除
*
* @param {any[]} datas
* @returns {Promise<any>}
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
public async remove(datas: any[]): Promise<any> {
if (this.parentRef.remove && this.parentRef.remove instanceof Function) {
return this.parentRef.remove(datas);
}
}
/**
* 刷新
*
* @param {*} [opt={}]
* @memberof Main
*/
public refresh(opt: any = {}) {
if (this.parentRef.refresh && this.parentRef.refresh instanceof Function) {
this.parentRef.refresh(opt);
}
}
<#ibizinclude>
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
</#ibizinclude>
...
...
@CONTROL/面板/CONTROL.html.ftl
浏览文件 @
dc537899
<#assign content>
:parentRef="thisRef"
</#assign>
<#ibizinclude>
../@MACRO/HTML/DEFAULT.html.ftl
</#ibizinclude>
\ No newline at end of file
lxm1993
@lxm1993
被提及 issue
ibizvuer7plus#30 (closed)
·
6月 03, 2020
被提及 issue
ibizvuer7plus#30 (closed)
被提及 issue ibizvuer7plus#30
切换提交列表
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录