提交 55f29b6a 编写于 作者: Mosher's avatar Mosher

update:更新

上级 89ea9d11
...@@ -2,29 +2,10 @@ ...@@ -2,29 +2,10 @@
<#if ctrl.render??> <#if ctrl.render??>
${ctrl.render.code} ${ctrl.render.code}
<#else> <#else>
<div class = "drtab<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>"> <div class="app-dr-tab<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<tabs :animated='false' class='app-dr-tab' name='${ctrl.getCodeName()?lower_case}' @on-click="tabPanelClick"> <div v-for="(item, index) in items" :class="{ 'app-dr-tab-item': true, 'dr-tab-item': true, 'is-disabled': item.disabled, 'is-active': selection.id === item.id">
<#list ctrl.getRootItem().getAllItems() as dritem> <span class="text">{{ item.text }}</span>
<tab-pane <#if dritem_index == 0>v-if="isShowSlot"</#if> :index='${dritem_index?c}' name='${dritem.getId()?lower_case}' tab='${ctrl.getCodeName()?lower_case}' class='' :disabled='items[${dritem_index?c}].disabled'
label='${dritem.text}'>
<#if dritem.getId()?lower_case == 'form'>
<div class='main-data'>
<slot></slot>
</div> </div>
<#else>
<component
v-if="Object.is(this.selection.id, '${dritem.getId()?lower_case}') && this.selection.view && !Object.is(this.selection.view.viewname, '')"
:is="selection.view.viewname"
class="viewcontainer2"
:viewdata="JSON.stringify(selection.data)"
:viewparam="JSON.stringify(selection.param)"
:viewDefaultUsage="false"
:key="this.$util.createUUID()">
</component>
</#if>
</tab-pane>
</#list>
</tabs>
</div> </div>
</#if> </#if>
</template> </template>
...@@ -59,7 +40,7 @@ ...@@ -59,7 +40,7 @@
* @type {*} * @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
public formData:any; public formData: any;
/** /**
* 获取多项数据 * 获取多项数据
...@@ -105,33 +86,23 @@ ...@@ -105,33 +86,23 @@
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
public items: any[] = [ public items: any[] = [
<#list ctrl.getRootItem().getAllItems() as dritem> <#if ctrl.getPSDEDRTabPages?? && ctrl.getPSDEDRTabPages()??>
{ <#list ctrl.getPSDEDRTabPages() as item>
index: ${dritem_index?c},
id: '${dritem.getId()?lower_case}',
name: '${dritem.getId()?lower_case}',
text: '${dritem.text}',
disabled: false,
},
</#list>
];
/**
* 关系栏数据项导航参数集合
*
* @type {any[]}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public navParamsArray:Array<any> = [
<#if ctrl.getPSDEDRCtrlItems?? && ctrl.getPSDEDRCtrlItems()??>
<#list ctrl.getPSDEDRCtrlItems() as appdeDrCtrlItem>
{ {
id:'${appdeDrCtrlItem.getName()?lower_case}', id: '${item.getId()?lower_case}',
localContext:<#if appdeDrCtrlItem.getPSNavigateContexts?? && appdeDrCtrlItem.getPSNavigateContexts()??><@getNavigateContext appdeDrCtrlItem /><#else>null</#if>, name: '${item.getId()?lower_case}',
localViewParam:<#if appdeDrCtrlItem.getPSNavigateParams?? && appdeDrCtrlItem.getPSNavigateParams()??><@getNavigateParams appdeDrCtrlItem /><#else>null</#if> text: '${item.getCaption()}',
}<#if appdeDrCtrlItem_has_next>,</#if> disabled: true,
</#list> navView: '<#if item.getPSAppView?? && item.getPSAppView()??>${srffilepath2(item.getPSAppView().codeName)}</#if>',
<#if drItem.getPSSysImage()??>
iconcls: '${item.getPSSysImage().getCssClass()}',
icon: '${item.getPSSysImage().getImagePath()}',
</#if> </#if>
localContext: <#if item.getPSNavigateContexts?? && item.getPSNavigateContexts()??><@getNavigateContext item /><#else>null</#if>,
localViewParam: <#if item.getPSNavigateParams?? && item.getPSNavigateParams()??><@getNavigateParams item /><#else>null</#if>
}
</#list>
</#if>
]; ];
/** /**
...@@ -149,7 +120,7 @@ ...@@ -149,7 +120,7 @@
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
public selectFirst(){ public selectFirst(){
if(this.items.length>0){ if (this.items.length > 0){
this.isShowSlot?this.tabPanelClick(this.items[0].name):this.items.length>1?this.tabPanelClick(this.items[1].name):()=>{}; this.isShowSlot?this.tabPanelClick(this.items[0].name):this.items.length>1?this.tabPanelClick(this.items[1].name):()=>{};
} }
} }
...@@ -173,9 +144,6 @@ ...@@ -173,9 +144,6 @@
} }
}); });
} }
this.$nextTick(() => {
this.$emit('selectionchange', [this.items[0]]);
});
} }
/** /**
...@@ -228,22 +196,6 @@ ...@@ -228,22 +196,6 @@
return undefined; return undefined;
} }
/**
* 设置关系项状态
*
* @param {boolean} state
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public setItemDisabled(state: boolean): void {
this.items.forEach((item: any) => {
if (Object.is(item.name, 'form')) {
item.disabled = false;
} else {
item.disabled = state;
}
});
}
/** /**
* 获取数据项 * 获取数据项
* *
...@@ -260,33 +212,16 @@ ...@@ -260,33 +212,16 @@
return null; return null;
} }
/** public handleFormDataChange(data: any) {
* 初始化导航参数 this.formData = data;
* if (data && Object.is(data.srfuf, '1')) {
* @param {*} drItem this.items.forEach((item: any) => {
* @memberof ${srfclassname('${ctrl.codeName}')}Base item.disabled = false;
*/ })
public initNavParam(drItem:any){ } else {
let returnNavParam:any = {}; this.items.forEach((item: any) => {
if(drItem && drItem.id){ item.disabled = true;
let curDRItem:any = this.navParamsArray.find((item:any) =>{
return Object.is(item.id,drItem.id);
}) })
if(curDRItem){
let localContext:any = curDRItem.localContext;
let localViewParam:any = curDRItem.localViewParam;
if(localContext && Object.keys(localContext).length >0){
let _context:any = this.$util.computedNavData(this.formData,this.context,this.viewparams,localContext);
returnNavParam.localContext = _context;
}
if(localViewParam && Object.keys(localViewParam).length >0){
let _params:any = this.$util.computedNavData(this.formData,this.context,this.viewparams,localViewParam);
returnNavParam.localViewParam = _params;
}
return returnNavParam;
}else{
return null;
}
} }
} }
...@@ -297,28 +232,28 @@ ...@@ -297,28 +232,28 @@
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
public tabPanelClick($event: any): void { public tabPanelClick($event: any): void {
const item = this.getItem($event); // const item = this.getItem($event);
if (Object.is(item.id, this.selection.id)) { // if (Object.is(item.id, this.selection.id)) {
return; // return;
} // }
this.$emit('selectionchange', [item]); // this.$emit('selectionchange', [item]);
let localNavParam:any = this.initNavParam(item); // let localNavParam:any = this.initNavParam(item);
const refview = this.getDRTabItem({ nodetype: item.id }); // const refview = this.getDRTabItem({ nodetype: item.id });
this.selection = {}; // this.selection = {};
const _context: any = { ...JSON.parse(JSON.stringify(this.context)) }; // const _context: any = { ...JSON.parse(JSON.stringify(this.context)) };
if(localNavParam && localNavParam.localContext){ // if(localNavParam && localNavParam.localContext){
Object.assign(_context,localNavParam.localContext); // Object.assign(_context,localNavParam.localContext);
} // }
Object.assign(_context,{srfparentdename:this.parentName,srfparentkey:_context[this.parentName.toLowerCase()]}); // Object.assign(_context,{srfparentdename:this.parentName,srfparentkey:_context[this.parentName.toLowerCase()]});
const _params: any = {}; // const _params: any = {};
if(localNavParam && localNavParam.localViewParam){ // if(localNavParam && localNavParam.localViewParam){
Object.assign(_params,localNavParam.localViewParam); // Object.assign(_params,localNavParam.localViewParam);
} // }
if (refview && refview.parentdatajo) { // if (refview && refview.parentdatajo) {
Object.assign(_context, refview.parentdatajo); // Object.assign(_context, refview.parentdatajo);
Object.assign(this.selection, { view: { viewname: refview.viewname }, data: _context, param: _params }); // Object.assign(this.selection, { view: { viewname: refview.viewname }, data: _context, param: _params });
} // }
Object.assign(this.selection, item); // Object.assign(this.selection, item);
} }
<#ibizinclude> <#ibizinclude>
......
...@@ -9,11 +9,9 @@ ...@@ -9,11 +9,9 @@
</template> </template>
</#assign> </#assign>
</#if> </#if>
<#ibizinclude> <#ibizinclude>
./VIEW_CAPTION_DATAINFO.vue.ftl ./VIEW_CAPTION_DATAINFO.vue.ftl
</#ibizinclude> </#ibizinclude>
<#-- BEGIN:视图顶部视图消息 --> <#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8> <@ibizindent blank=8>
<#ibizinclude> <#ibizinclude>
...@@ -22,18 +20,40 @@ ...@@ -22,18 +20,40 @@
</@ibizindent> </@ibizindent>
<#-- END:视图顶部视图消息 --> <#-- END:视图顶部视图消息 -->
<div class="content-container"> <div class="content-container">
<#-- BEGIN:视图内容区视图消息 --> <#-- BEGIN:视图内容区视图消息 -->
<@ibizindent blank=8> <@ibizindent blank=8>
<#ibizinclude> <#ibizinclude>
./View_Pos_Body_Msgs.vue.ftl ./View_Pos_Body_Msgs.vue.ftl
</#ibizinclude> </#ibizinclude>
</@ibizindent> </@ibizindent>
<#-- END:视图内容区视图消息 --> <#-- END:视图内容区视图消息 -->
<#if view.hasPSControl('drtab')> <div class="edit-view3">
<@ibizindent blank=8> <div class="edit-view3-drheader">
<span :class="{ 'dr-tab-item': true, 'is-active': drItem && drItem.id !== 'form' }" @click="handleDrTabChange"><#if view.getPSControl('drtab').getEditItemCaption?? && view.getPSControl('drtab').getEditItemCaption()??>${view.getPSControl('drtab').getEditItemCaption()}</#if></span>
<#if view.hasPSControl('drtab')>
<@ibizindent blank=8>
${P.getCtrlCode('drtab', 'CONTROL.html').code} ${P.getCtrlCode('drtab', 'CONTROL.html').code}
</@ibizindent> </@ibizindent>
</#if> </#if>
</div>
<div class="edit-view3-content">
<div class="edit-view3-content__form" :style="drItem && drItem.id !== 'form' ? 'display: none;' : ''">
<#if view.hasPSControl('form')>
<@ibizindent blank=8>
${P.getCtrlCode('form', 'CONTROL.html').code}
</@ibizindent>
</#if>
</div>
<component
class="view-container2"
v-if="drItem && drItem.id && drItem.id !== 'form'"
:is="drItem.navView"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(drItem.srfnavdata.context)"
:viewparam="JSON.stringify(drItem.srfnavdata.viewparams)">
</component>
</div>
</div>
</div> </div>
<#-- BEGIN:视图底部视图消息 --> <#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8> <@ibizindent blank=8>
......
...@@ -13,29 +13,38 @@ ...@@ -13,29 +13,38 @@
</@ibizindent> </@ibizindent>
<#-- END:视图顶部视图消息 --> <#-- END:视图顶部视图消息 -->
<div class="content-container"> <div class="content-container">
<#-- BEGIN:视图内容区视图消息 --> <#-- BEGIN:视图内容区视图消息 -->
<@ibizindent blank=8> <@ibizindent blank=8>
<#ibizinclude> <#ibizinclude>
../@MACRO/View_Pos_Body_Msgs.vue.ftl ./View_Pos_Body_Msgs.vue.ftl
</#ibizinclude> </#ibizinclude>
</@ibizindent> </@ibizindent>
<#-- END:视图内容区视图消息 --> <#-- END:视图内容区视图消息 -->
<#if view.hasPSControl('form')> <div class="edit-view4">
<@ibizindent blank=8> <div class="edit-view4-form">
${P.getCtrlCode('form', 'CONTROL.html').code} <#if view.hasPSControl('form')>
</@ibizindent> <@ibizindent blank=8>
</#if> ${P.getCtrlCode('form', 'CONTROL.html').code}
<#if view.getAllPSControls()??> </@ibizindent>
<#list view.getAllPSControls() as ctrl> </#if>
<#if ctrl.getControlType() != "TOOLBAR" && ctrl.getControlType() != "FORM">
<#if P.getCtrlCode(ctrl, 'CONTROL.html')??> </div>
<@ibizindent blank=12> <div class="edit-view4-content">
${P.getCtrlCode(ctrl, 'CONTROL.html').code} <#if view.hasPSControl('drtab')>
</@ibizindent> <@ibizindent blank=8>
</#if> ${P.getCtrlCode('drtab', 'CONTROL.html').code}
</#if> </@ibizindent>
</#list> </#if>
</#if> <component
class="view-container2"
v-if="drItem && !drItem.disabled"
:is="drItem.navView"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(drItem.srfnavdata.context)"
:viewparam="JSON.stringify(drItem.srfnavdata.viewparams)">
</component>
</div>
</div>
</div> </div>
<#-- BEGIN:视图底部视图消息 --> <#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8> <@ibizindent blank=8>
......
...@@ -16,7 +16,16 @@ ...@@ -16,7 +16,16 @@
* @type {*} * @type {*}
* @memberof ${srfclassname('${view.name}')}Base * @memberof ${srfclassname('${view.name}')}Base
*/ */
public selection: any = {}; public drItem: any = {};
/**
* 处理分页项变化
*
* @memberof ${srfclassname('${view.name}')}Base
*/
public handleDrTabChange() {
}
<#ibizinclude> <#ibizinclude>
./VIEW_BOTTOM-BASE.vue.ftl ./VIEW_BOTTOM-BASE.vue.ftl
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* @type {*} * @type {*}
* @memberof ${srfclassname('${view.name}')}Base * @memberof ${srfclassname('${view.name}')}Base
*/ */
public selection: any = {}; public drItem: any = {};
</#assign> </#assign>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册