Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-Mob-R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-Mob-R7
提交
724a1452
提交
724a1452
编写于
8月 10, 2020
作者:
Neuromancer255
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
列表导航调整
上级
b2e54f9b
变更
9
显示空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
407 行增加
和
0 行删除
+407
-0
CONTROL-BASE.template.ftl
@CONTROL/列表导航栏/CONTROL-BASE.template.ftl
+25
-0
CONTROL-BASE.vue.ftl
@CONTROL/列表导航栏/CONTROL-BASE.vue.ftl
+353
-0
CONTROL.html.ftl
@CONTROL/列表导航栏/CONTROL.html.ftl
+7
-0
CONTROL.less.ftl
@CONTROL/列表导航栏/CONTROL.less.ftl
+4
-0
CONTROL.vue.ftl
@CONTROL/列表导航栏/CONTROL.vue.ftl
+4
-0
template.properties
@CONTROL/列表导航栏/template.properties
+2
-0
%CTRL_PKGPATH%-listexpbar-base.vue.ftl
...KGPATH%-listexpbar/%CTRL_PKGPATH%-listexpbar-base.vue.ftl
+4
-0
%CTRL_PKGPATH%-listexpbar.less.ftl
...RL_PKGPATH%-listexpbar/%CTRL_PKGPATH%-listexpbar.less.ftl
+4
-0
%CTRL_PKGPATH%-listexpbar.vue.ftl
...TRL_PKGPATH%-listexpbar/%CTRL_PKGPATH%-listexpbar.vue.ftl
+4
-0
未找到文件。
@CONTROL/列表导航栏/CONTROL-BASE.template.ftl
0 → 100644
浏览文件 @
724a1452
<template>
<div class="app-mob-treeexpbar <#if ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<#if ctrl.render??>
${ctrl.render.code}
<#else>
<div class="treeexpbar-container">
<#if ctrl.getPSDETree()??>
<#assign tree = ctrl.getPSDETree()/>
${P.getCtrlCode(tree, 'CONTROL.html').code}
</#if>
<component
v-if="selection.view && !Object.is(this.selection.view.viewname, '')"
:is="selection.view.viewname"
class="viewcontainer2"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(selection.data)"
@viewdataschange="onViewDatasChange"
@viewdatasactivated="viewDatasActivated"
@viewload="onViewLoad">
</component>
</div>
</#if>
</div>
</template>
\ No newline at end of file
@CONTROL/列表导航栏/CONTROL-BASE.vue.ftl
0 → 100644
浏览文件 @
724a1452
<#ibizinclude>
./CONTROL-BASE.template.ftl
</#ibizinclude>
<#ibizinclude>
../@MACRO/CONTROL/CONTROL_HEADER-BASE.vue.ftl
</#ibizinclude>
<#if view.getPSAppViewLogics?? && view.getPSAppViewLogics()??>
<#list view.getPSAppViewLogics() as logic>
<#if logic.getPFLogicCodeType() == 'APP_NEWDATA'>
/**
* 打开新建数据视图
*
* @type {any}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
@Prop() public newdata: any;
</#if>
<#if logic.getPFLogicCodeType() == 'APP_OPENDATA'>
/**
* 打开编辑数据视图
*
* @type {any}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
@Prop() public opendata: any;
</#if>
</#list>
</#if>
/**
* 视图唯一标识
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
@Prop() public viewUID!:string;
/**
* 是否单选
*
* @public
* @type {(boolean)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public isSingleSelect:boolean = true;
/**
* 呈现模式,可选值:horizontal或者vertical
*
* @public
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public showMode:string ="<#if view.getSideBarLayout()?? && view.getSideBarLayout() == "LEFT">horizontal<#else>vertical</#if>";
/**
* 控件宽度
*
* @type {number}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public ctrlWidth:number = <#if ctrl.getWidth()??>${ctrl.getWidth()?c}<#else>0</#if>;
/**
* 控件高度
*
* @type {number}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public ctrlHeight: number = <#if ctrl.getHeight()??>${ctrl.getHeight()?c}<#else>0</#if>;
/**
* 搜素值
*
* @public
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public searchText:string = "";
/**
* 分割宽度
*
* @type {number}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public split: number = 0.5;
<#if ctrl.getXDataPSControl()??>
<#assign xDataControl = ctrl.getXDataPSControl() />
/**
* 导航视图名称
*
* @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navViewName: string = "<#if xDataControl.getNavPSAppView()??><#assign navPSAppView = xDataControl.getNavPSAppView() />${srffilepath2(navPSAppView.getCodeName())}</#if>";
/**
* 导航视图参数
*
* @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navViewParam: string = '<#if xDataControl.getNavViewParamJO()??>${xDataControl.getNavViewParamJO()}</#if>';
/**
* 导航过滤项
*
* @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navFilter: string = "<#if xDataControl.getNavFilter()??>${xDataControl.getNavFilter()}</#if>";
<#-- /**
* 导航关系
*
* @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navPSDer: string = "<#if xDataControl.getNavPSDER()??>n_${xDataControl.getNavPSDER().getPSPickupDEField().getCodeName()?lower_case}_eq</#if>"; -->
/**
* 导航上下文参数
*
* @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navigateContext:any = <#if xDataControl.getPSNavigateContexts?? && xDataControl.getPSNavigateContexts()??><@getNavigateContext xDataControl /><#else>null</#if>;
/**
* 导航视图参数
*
* @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navigateParams:any = <#if xDataControl.getPSNavigateParams?? && xDataControl.getPSNavigateParams()??><@getNavigateParams xDataControl /><#else>null</#if>;
</#if>
/**
* 显示处理提示
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
@Prop({ default: true }) public showBusyIndicator!: boolean;
<#if ctrl.getPSControls()??>
<#assign controls = ctrl.getPSControls()/>
<#list controls as singleControl>
<#if singleControl.getControlType() == "TOOLBAR">
${P.getCtrlCode(singleControl, 'CONTROL.vue').code}
</#if>
</#list>
</#if>
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public getDatas(): any[] {
return [];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public getData(): any {
return null;
}
/**
* 选中数据
*
* @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public selection: any = {};
/**
* split值变化事件
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public onSplitChange() {
if(this.split){
this.$store.commit("setViewSplit",{viewUID:this.viewUID,viewSplit:this.split});
}
}
/**
* Vue声明周期(组件初始化完毕)
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public created() {
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public afterCreated(){
if (this.viewState) {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
<#if ctrl.getXDataPSControl?? && ctrl.getXDataPSControl()??>
<#assign xDataControl = ctrl.getXDataPSControl() />
this.viewState.next({ tag: '${xDataControl.getName()}', action: action, data: data });
</#if>
});
}
}
/**
* 执行mounted后的逻辑
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public afterMounted(){
if(this.$store.getters.getViewSplit(this.viewUID)){
this.split = this.$store.getters.getViewSplit(this.viewUID);
}else{
let containerWidth:number = (document.getElementById("${ctrl.getCodeName()?lower_case}") as any).offsetWidth;
let containerHeight:number = (document.getElementById("${ctrl.getCodeName()?lower_case}") as any).offsetHeight;
if(Object.is(this.showMode,'horizontal')){
if(this.ctrlWidth){
this.split = this.ctrlWidth/containerWidth;
}
}else{
if(this.ctrlHeight){
this.split = this.ctrlHeight/containerHeight;
}
}
this.$store.commit("setViewSplit",{viewUID:this.viewUID,viewSplit:this.split});
}
}
/**
* Vue声明周期(组件渲染完毕)
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public mounted() {
this.afterMounted();
}
/**
* vue 生命周期
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public destroyed() {
this.afterDestroy();
}
/**
* 执行destroyed后的逻辑
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public afterDestroy() {
if (this.viewStateEvent) {
this.viewStateEvent.unsubscribe();
}
<#if destroyed_block??>
${destroyed_block}
</#if>
}
/**
* ${ctrl.name}的选中数据事件
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public ${ctrl.name}_selectionchange(args: any [], tag?: string, $event2?: any): void {
let tempContext:any = {};
let tempViewParam:any = {};
if (args.length === 0) {
return ;
}
const arg:any = args[0];
if(this.context){
Object.assign(tempContext,JSON.parse(JSON.stringify(this.context)));
}
<#if ctrl.getXDataPSControl()??>
<#assign xDataControl = ctrl.getXDataPSControl()/>
<#if xDataControl.getPSAppDataEntity()??>
<#assign curDataEntity = xDataControl.getPSAppDataEntity()/>
Object.assign(tempContext,{'${curDataEntity.getCodeName()?lower_case}':arg['${curDataEntity.getCodeName()?lower_case}']});
Object.assign(tempContext,{srfparentdename:'${curDataEntity.getCodeName()}',srfparentkey:arg['${curDataEntity.getCodeName()?lower_case}']});
if(this.navFilter && !Object.is(this.navFilter,"")){
Object.assign(tempViewParam,{[this.navFilter]:arg['${curDataEntity.getCodeName()?lower_case}']});
}
if(this.navPSDer && !Object.is(this.navPSDer,"")){
Object.assign(tempViewParam,{[this.navPSDer]:arg['${curDataEntity.getCodeName()?lower_case}']});
}
</#if>
</#if>
if(this.navigateContext && Object.keys(this.navigateContext).length >0){
let _context:any = this.$util.computedNavData(arg,tempContext,tempViewParam,this.navigateContext);
Object.assign(tempContext,_context);
}
if(this.navigateParams && Object.keys(this.navigateParams).length >0){
let _params:any = this.$util.computedNavData(arg,tempContext,tempViewParam,this.navigateParams);
Object.assign(tempViewParam,_params);
}
this.selection = {};
Object.assign(this.selection, { view: { viewname: this.navViewName },context:tempContext,viewparam:tempViewParam});
this.$forceUpdate();
}
/**
* ${ctrl.name}的load完成事件
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public ${ctrl.name}_load(args:any, tag?: string, $event2?: any){
this.$emit('load',args);
}
/**
* 执行搜索
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public onSearch($event:any) {
<#if ctrl.getPSDEList()??>
<#assign list = ctrl.getPSDEList()/>
this.viewState.next({ tag: '${list.name}', action: "load", data: {query : this.searchText}});
</#if>
}
<#ibizinclude>
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
</#ibizinclude>
<#ibizinclude>
../@MACRO/CONTROL/CONTROL-BASE.style.ftl
</#ibizinclude>
\ No newline at end of file
@CONTROL/列表导航栏/CONTROL.html.ftl
0 → 100644
浏览文件 @
724a1452
<#-- content -->
<#assign content>
</#assign>
<#ibizinclude>
../@MACRO/HTML/DEFAULT.html.ftl
</#ibizinclude>
@CONTROL/列表导航栏/CONTROL.less.ftl
0 → 100644
浏览文件 @
724a1452
<#ibizinclude>
../@MACRO/CSS/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
@CONTROL/列表导航栏/CONTROL.vue.ftl
0 → 100644
浏览文件 @
724a1452
<#ibizinclude>
../@MACRO/CONTROL/CONTROL.vue.ftl
</#ibizinclude>
\ No newline at end of file
@CONTROL/列表导航栏/template.properties
0 → 100644
浏览文件 @
724a1452
CTRLTYPE
=
LISTEXPBAR
\ No newline at end of file
APP/src/widgets/%DE_PKGPATH%/%CTRL_PKGPATH%-listexpbar/%CTRL_PKGPATH%-listexpbar-base.vue.ftl
0 → 100644
浏览文件 @
724a1452
<#ibiztemplate>
TARGET=PSAPPVIEWCTRL_LISTEXPBAR
</#ibiztemplate>
${P.getCtrlCode('CONTROL-BASE.vue').code}
\ No newline at end of file
APP/src/widgets/%DE_PKGPATH%/%CTRL_PKGPATH%-listexpbar/%CTRL_PKGPATH%-listexpbar.less.ftl
0 → 100644
浏览文件 @
724a1452
<#ibiztemplate>
TARGET=PSAPPVIEWCTRL_LISTEXPBAR
</#ibiztemplate>
${P.getCtrlCode('CONTROL.less').code}
\ No newline at end of file
APP/src/widgets/%DE_PKGPATH%/%CTRL_PKGPATH%-listexpbar/%CTRL_PKGPATH%-listexpbar.vue.ftl
0 → 100644
浏览文件 @
724a1452
<#ibiztemplate>
TARGET=PSAPPVIEWCTRL_LISTEXPBAR
</#ibiztemplate>
${P.getCtrlCode('CONTROL.vue').code}
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录