Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
22
议题
22
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-R7
提交
cc40f218
提交
cc40f218
编写于
9月 24, 2020
作者:
ibiz4j
2
浏览文件
操作
浏览文件
下载
差异文件
合并分支 'dev' 到 'master'
Dev 查看合并请求
!4
上级
f95af3d5
014e7bf1
变更
35
隐藏空白字符变更
内嵌
并排
正在显示
35 个修改的文件
包含
416 行增加
和
35 行删除
+416
-35
CONTROL-BASE.vue.ftl
@CONTROL/列表导航/CONTROL-BASE.vue.ftl
+20
-0
CONTROL-BASE.vue.ftl
@CONTROL/卡片视图导航/CONTROL-BASE.vue.ftl
+20
-0
CONTROL.vue#ITEM_DEUIACTION.ftl
@CONTROL/工具栏/CONTROL.vue#ITEM_DEUIACTION.ftl
+4
-3
CONTROL.less.ftl
@CONTROL/搜索栏/CONTROL.less.ftl
+1
-0
CONTROL-BASE.vue.ftl
@CONTROL/日历导航/CONTROL-BASE.vue.ftl
+20
-0
CONTROL-BASE.vue.ftl
@CONTROL/树视图导航栏/CONTROL-BASE.vue.ftl
+20
-0
CONTROL-BASE.vue#DETAIL_FORMPAGE.ftl
@CONTROL/表单/CONTROL-BASE.vue#DETAIL_FORMPAGE.ftl
+0
-1
SERVICE.ts.ftl
@CONTROL/表格/SERVICE.ts.ftl
+21
-0
CONTROL-BASE.vue.ftl
@CONTROL/表格导航/CONTROL-BASE.vue.ftl
+20
-0
DEFAULT.vue.ftl
@CONTROL/视图布局面板/@MACRO/DEFAULT.vue.ftl
+15
-0
WIZARD.vue.ftl
@CONTROL/视图布局面板/@MACRO/WIZARD.vue.ftl
+15
-0
VIEW.less.ftl
@CONTROL/视图布局面板/实体分页导航视图/VIEW.less.ftl
+7
-2
VIEW.less.ftl
@CONTROL/视图布局面板/实体分页搜索视图/VIEW.less.ftl
+10
-0
VIEW.less.ftl
@CONTROL/视图布局面板/实体向导视图/VIEW.less.ftl
+8
-2
VIEW.less.ftl
@CONTROL/视图布局面板/实体图表视图/VIEW.less.ftl
+4
-0
VIEW.vue.ftl
@CONTROL/视图布局面板/实体图表视图/VIEW.vue.ftl
+15
-0
VIEW.less.ftl
@CONTROL/视图布局面板/实体数据多项选择视图/VIEW.less.ftl
+1
-0
VIEW.vue.ftl
@CONTROL/视图布局面板/实体数据多项选择视图/VIEW.vue.ftl
+15
-0
VIEW.vue.ftl
@CONTROL/视图布局面板/实体树视图/VIEW.vue.ftl
+17
-3
VIEW.less.ftl
@CONTROL/视图布局面板/实体树视图(部件视图)/VIEW.less.ftl
+7
-0
VIEW.vue.ftl
@CONTROL/视图布局面板/实体树视图(部件视图)/VIEW.vue.ftl
+15
-0
VIEW.less.ftl
@CONTROL/视图布局面板/实体甘特视图/VIEW.less.ftl
+7
-2
VIEW.less.ftl
@CONTROL/视图布局面板/实体甘特视图(部件视图)/VIEW.less.ftl
+8
-2
VIEW.less.ftl
@CONTROL/视图布局面板/实体编辑视图(上下关系)/VIEW.less.ftl
+6
-2
VIEW.vue.ftl
@CONTROL/视图布局面板/实体编辑视图(上下关系)/VIEW.vue.ftl
+15
-0
VIEW.less.ftl
@CONTROL/视图布局面板/实体编辑视图(左右关系)/VIEW.less.ftl
+9
-0
VIEW.vue.ftl
@CONTROL/视图布局面板/实体编辑视图(左右关系)/VIEW.vue.ftl
+8
-12
VIEW.vue.ftl
@CONTROL/视图布局面板/实体选择表格视图/VIEW.vue.ftl
+15
-0
EDITOR.vue.ftl
@EDITOR/数据选择/EDITOR.vue.ftl
+1
-0
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择/GRIDEIDTOR.vue.ftl
+1
-0
EDITOR.vue.ftl
@EDITOR/数据选择(下拉)/EDITOR.vue.ftl
+1
-0
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(下拉)/GRIDEIDTOR.vue.ftl
+1
-0
EDITOR.vue.ftl
@EDITOR/用户自定义(动态配置AvueForm)/EDITOR.vue.ftl
+2
-2
package.json.ftl
APP/package.json.ftl
+83
-0
%DE_PKGPATH%-ui-service-base.ts.ftl
...iservice/%DE_PKGPATH%/%DE_PKGPATH%-ui-service-base.ts.ftl
+4
-4
未找到文件。
@CONTROL/列表导航/CONTROL-BASE.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -526,6 +526,26 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
this.$emit('load',args);
}
/**
* 计算导航工具栏权限状态
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public calcNavigationToolbarState(){
let _this: any = this;
// 界面行为
<#if ctrl.getPSAppDataEntity?? && ctrl.getPSAppDataEntity()??>
<#assign curAppEntity = ctrl.getPSAppDataEntity() />
const curUIService:${srfclassname('${curAppEntity.getCodeName()}')}UIService = new ${srfclassname('${curAppEntity.getCodeName()}')}UIService();
<#if ctrl.getCodeName?? && ctrl.getCodeName()??>
<#assign ModelsName>${ctrl.getCodeName()?lower_case}_toolbarModels</#assign>
if(_this.${ModelsName}){
ViewTool.calcActionItemAuthState({},_this.${ModelsName},curUIService);
}
</#if>
</#if>
}
/**
* 执行搜索
*
...
...
@CONTROL/卡片视图导航/CONTROL-BASE.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -535,6 +535,26 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
this.$emit('load',args);
}
/**
* 计算导航工具栏权限状态
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public calcNavigationToolbarState(){
let _this: any = this;
// 界面行为
<#if ctrl.getPSAppDataEntity?? && ctrl.getPSAppDataEntity()??>
<#assign curAppEntity = ctrl.getPSAppDataEntity() />
const curUIService:${srfclassname('${curAppEntity.getCodeName()}')}UIService = new ${srfclassname('${curAppEntity.getCodeName()}')}UIService();
<#if ctrl.getCodeName?? && ctrl.getCodeName()??>
<#assign ModelsName>${ctrl.getCodeName()?lower_case}_toolbarModels</#assign>
if(_this.${ModelsName}){
ViewTool.calcActionItemAuthState({},_this.${ModelsName},curUIService);
}
</#if>
</#if>
}
/**
* 执行搜索
*
...
...
@CONTROL/工具栏/CONTROL.vue#ITEM_DEUIACTION.ftl
浏览文件 @
cc40f218
<#assign deuiaction=item.getPSUIAction()>
<#if deuiaction.getUIActionTag() == 'ExportExcel'>
${item.getName()?lower_case}: { name: '${item.getName()?lower_case}', <#if item.isShowCaption()>caption: '${item.caption}',</#if> disabled: false, type: '${item.getItemType()}', visabled: true,noprivdisplaymode:<#if item.getNoPrivDisplayMode()??>${item.getNoPrivDisplayMode()}</#if>,dataaccaction: '<#if deuiaction.getDataAccessAction()??>${deuiaction.getDataAccessAction()}</#if>', uiaction: { tag: '${deuiaction.getUIActionTag()}', target: '${deuiaction.getActionTarget()}' }<#if view.hasPSControl("GRID")><#assign gridhandler = view.getPSControl("GRID").getPSAjaxControlHandler()>, MaxRowCount: <#if gridhandler?? && gridhandler.getPSDEDataExport()??>${gridhandler.getPSDEDataExport().getMaxRowCount()?c}<#elseif sys.getDEDataExportMaxRowCount() gt 0>${sys.getDEDataExportMaxRowCount()?c}<#else>10000</#if></#if> },
${item.getName()?lower_case}: { name: '${item.getName()?lower_case}',
actiontarget: 'NONE',
<#if item.isShowCaption()>caption: '${item.caption}',</#if> disabled: false, type: '${item.getItemType()}', visabled: true,noprivdisplaymode:<#if item.getNoPrivDisplayMode()??>${item.getNoPrivDisplayMode()}</#if>,dataaccaction: '<#if deuiaction.getDataAccessAction()??>${deuiaction.getDataAccessAction()}</#if>', uiaction: { tag: '${deuiaction.getUIActionTag()}', target: '${deuiaction.getActionTarget()}' }<#if view.hasPSControl("GRID")><#assign gridhandler = view.getPSControl("GRID").getPSAjaxControlHandler()>, MaxRowCount: <#if gridhandler?? && gridhandler.getPSDEDataExport()??>${gridhandler.getPSDEDataExport().getMaxRowCount()?c}<#elseif sys.getDEDataExportMaxRowCount() gt 0>${sys.getDEDataExportMaxRowCount()?c}<#else>10000</#if></#if> },
<#elseif deuiaction.getUIActionTag() == 'ToggleRowEdit'>
${item.getName()?lower_case}: { name: '${item.getName()?lower_case}', <#if item.isShowCaption()>caption: '${item.caption}', </#if>disabled: false, type: '${item.getItemType()}', visabled: true,noprivdisplaymode:<#if item.getNoPrivDisplayMode()??>${item.getNoPrivDisplayMode()}</#if>,dataaccaction: '<#if deuiaction.getDataAccessAction()??>${deuiaction.getDataAccessAction()}</#if>', uiaction: { tag: '${deuiaction.getUIActionTag()}', target: '${deuiaction.getActionTarget()}' } },
${item.getName()?lower_case}: { name: '${item.getName()?lower_case}',
actiontarget: 'NONE',
<#if item.isShowCaption()>caption: '${item.caption}', </#if>disabled: false, type: '${item.getItemType()}', visabled: true,noprivdisplaymode:<#if item.getNoPrivDisplayMode()??>${item.getNoPrivDisplayMode()}</#if>,dataaccaction: '<#if deuiaction.getDataAccessAction()??>${deuiaction.getDataAccessAction()}</#if>', uiaction: { tag: '${deuiaction.getUIActionTag()}', target: '${deuiaction.getActionTarget()}' } },
<#else>
${item.getName()?lower_case}: { name: '${item.getName()?lower_case}', <#if item.isShowCaption()>caption: '${item.caption}', </#if>disabled: false, type: '${item.getItemType()}', visabled: true,noprivdisplaymode:<#if item.getNoPrivDisplayMode()??>${item.getNoPrivDisplayMode()}</#if>,dataaccaction: '<#if deuiaction.getDataAccessAction()??>${deuiaction.getDataAccessAction()}</#if>', uiaction: { tag: '${deuiaction.getUIActionTag()}', target: '${deuiaction.getActionTarget()}' } },
${item.getName()?lower_case}: { name: '${item.getName()?lower_case}',
actiontarget: 'NONE',
<#if item.isShowCaption()>caption: '${item.caption}', </#if>disabled: false, type: '${item.getItemType()}', visabled: true,noprivdisplaymode:<#if item.getNoPrivDisplayMode()??>${item.getNoPrivDisplayMode()}</#if>,dataaccaction: '<#if deuiaction.getDataAccessAction()??>${deuiaction.getDataAccessAction()}</#if>', uiaction: { tag: '${deuiaction.getUIActionTag()}', target: '${deuiaction.getActionTarget()}' } },
</#if>
\ No newline at end of file
@CONTROL/搜索栏/CONTROL.less.ftl
浏览文件 @
cc40f218
.search-bar-footer {
height: 32px;
margin-bottom: 6px;
.search-bar-action {
float: right;
display: flex;
...
...
@CONTROL/日历导航/CONTROL-BASE.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -415,6 +415,26 @@
this.$emit('load',args);
}
/**
* 计算导航工具栏权限状态
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public calcNavigationToolbarState(){
let _this: any = this;
// 界面行为
<#if ctrl.getPSAppDataEntity?? && ctrl.getPSAppDataEntity()??>
<#assign curAppEntity = ctrl.getPSAppDataEntity() />
const curUIService:${srfclassname('${curAppEntity.getCodeName()}')}UIService = new ${srfclassname('${curAppEntity.getCodeName()}')}UIService();
<#if ctrl.getCodeName?? && ctrl.getCodeName()??>
<#assign ModelsName>${ctrl.getCodeName()?lower_case}_toolbarModels</#assign>
if(_this.${ModelsName}){
ViewTool.calcActionItemAuthState({},_this.${ModelsName},curUIService);
}
</#if>
</#if>
}
/**
* 执行搜索
*
...
...
@CONTROL/树视图导航栏/CONTROL-BASE.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -413,6 +413,26 @@
public onViewLoad($event: any): void {
this.$emit('load', $event);
}
/**
* 计算导航工具栏权限状态
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public calcNavigationToolbarState(){
let _this: any = this;
// 界面行为
<#if ctrl.getPSAppDataEntity?? && ctrl.getPSAppDataEntity()??>
<#assign curAppEntity = ctrl.getPSAppDataEntity() />
const curUIService:${srfclassname('${curAppEntity.getCodeName()}')}UIService = new ${srfclassname('${curAppEntity.getCodeName()}')}UIService();
<#if ctrl.getCodeName?? && ctrl.getCodeName()??>
<#assign ModelsName>${ctrl.getCodeName()?lower_case}_toolbarModels</#assign>
if(_this.${ModelsName}){
ViewTool.calcActionItemAuthState({},_this.${ModelsName},curUIService);
}
</#if>
</#if>
}
<#if ctrl.getPSControls()??>
<#assign controls = ctrl.getPSControls()/>
...
...
@CONTROL/表单/CONTROL-BASE.vue#DETAIL_FORMPAGE.ftl
浏览文件 @
cc40f218
<#assign content>
<#if item.getPSSysImage()??><#assign img=item.getPSSysImage()><#if img.getCssClass()?? && (img.getCssClass()?length gt 0)><i class="${img.getCssClass()}" style="margin-right: 2px;"></i></#if></#if>
<#list item.getPSDEFormDetails() as formmenber>
<#if !(formmenber.isHidden?? && formmenber.isHidden())>
<#ibizinclude>
...
...
@CONTROL/表格/SERVICE.ts.ftl
浏览文件 @
cc40f218
...
...
@@ -149,6 +149,15 @@ import ${srfclassname('${aggAppDataEntity.getCodeName()}')}Service from '@/servi
@Errorlog
public delete(action: string, context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
const {data:Data,context:Context} = this.handleRequestData(action,context,data,true);
<#-- 手动修改数据主键的情况start -->
<#if ctrl.getPSDEGridEditItems()??>
<#list ctrl.getPSDEGridEditItems() as editItem>
<#if editItem.getPSAppDEField()?? && editItem.getPSAppDEField().isKeyField()>
Object.assign(Data,{${appde.getKeyPSAppDEField().getCodeName()?lower_case}: data.${editItem.getName()}, srffrontuf: '1'});
</#if>
</#list>
</#if>
<#-- 手动修改数据主键的情况end -->
return new Promise((resolve: any, reject: any) => {
const _appEntityService: any = this.appEntityService;
let result: Promise<any>;
...
...
@@ -320,7 +329,19 @@ import ${srfclassname('${aggAppDataEntity.getCodeName()}')}Service from '@/servi
if(response.data){
Object.assign(response.data,{srfuf:'0'});
//仿真主键数据
<#-- 手动修改数据主键的情况start -->
<#assign hasKeyFieldwithEditable = false/>
<#if ctrl.getPSDEGridEditItems()??>
<#list ctrl.getPSDEGridEditItems() as editItem>
<#if editItem.getPSAppDEField()?? && editItem.getPSAppDEField().isKeyField()>
<#assign hasKeyFieldwithEditable>true</#assign>
</#if>
</#list>
</#if>
<#-- 手动修改数据主键的情况end -->
<#if !hasKeyFieldwithEditable>
response.data.${appde.getKeyPSAppDEField().getCodeName()?lower_case} = Util.createUUID();
</#if>
}
this.handleResponse(action, response, true);
resolve(response);
...
...
@CONTROL/表格导航/CONTROL-BASE.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -531,6 +531,26 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
public ${ctrl.name}_load(args:any, tag?: string, $event2?: any){
this.$emit('load',args);
}
/**
* 计算导航工具栏权限状态
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public calcNavigationToolbarState(){
let _this: any = this;
// 界面行为
<#if ctrl.getPSAppDataEntity?? && ctrl.getPSAppDataEntity()??>
<#assign curAppEntity = ctrl.getPSAppDataEntity() />
const curUIService:${srfclassname('${curAppEntity.getCodeName()}')}UIService = new ${srfclassname('${curAppEntity.getCodeName()}')}UIService();
<#if ctrl.getCodeName?? && ctrl.getCodeName()??>
<#assign ModelsName>${ctrl.getCodeName()?lower_case}_toolbarModels</#assign>
if(_this.${ModelsName}){
ViewTool.calcActionItemAuthState({},_this.${ModelsName},curUIService);
}
</#if>
</#if>
}
<#ibizinclude>
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
</#ibizinclude>
...
...
@CONTROL/视图布局面板/@MACRO/DEFAULT.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -13,6 +13,13 @@ ${P.getCtrlCode(toolbarCtrl, 'CONTROL.html').code}
</@ibizindent>
</#if>
<div class="content-container">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=12>
<#ibizinclude>
./View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#if view.getAllPSControls()??>
<#list view.getAllPSControls() as ctrl>
<#if ctrl.getControlType() != "TOOLBAR">
...
...
@@ -24,6 +31,13 @@ ${P.getCtrlCode(ctrl, 'CONTROL.html').code}
</#if>
</#list>
</#if>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=12>
<#ibizinclude>
./View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/@MACRO/WIZARD.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -7,6 +7,13 @@
</#ibizinclude>
<div class="content-container">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=12>
<#ibizinclude>
./View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<@ibizindent blank=12>
<#if view.hasPSControl('wizardpanel')>
${P.getCtrlCode('wizardpanel', 'CONTROL.html').code}
...
...
@@ -15,6 +22,13 @@ ${P.getCtrlCode('wizardpanel', 'CONTROL.html').code}
${P.getCtrlCode('statewizardpanel', 'CONTROL.html').code}
</#if>
</@ibizindent>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=12>
<#ibizinclude>
./View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体分页导航视图/VIEW.less.ftl
浏览文件 @
cc40f218
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
</#ibizinclude>
.${srffilepath2(view.getCodeName())} {
> .view-card > .ivu-card-body > .content-container > .tabviewpanel {
overflow: auto;
}
}
@CONTROL/视图布局面板/实体分页搜索视图/VIEW.less.ftl
浏览文件 @
cc40f218
...
...
@@ -32,4 +32,13 @@
height: 100%;
}
}
}
.${srffilepath2(view.getCodeName())} {
> .view-card > .ivu-card-body > .content-container {
height: calc(100% - 42px);
> .tabviewpanel {
overflow: auto;
}
}
}
\ No newline at end of file
@CONTROL/视图布局面板/实体向导视图/VIEW.less.ftl
浏览文件 @
cc40f218
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
</#ibizinclude>
.${srffilepath2(view.getCodeName())}{
> .view-card > .ivu-card-body > .content-container > .app-wizard {
overflow: auto;
}
}
\ No newline at end of file
@CONTROL/视图布局面板/实体图表视图/VIEW.less.ftl
浏览文件 @
cc40f218
...
...
@@ -3,4 +3,7 @@
</#ibizinclude>
.${srffilepath2(view.getCodeName())}{
display: block;
> .view-card > .ivu-card-body > .content-container > .app-data-chart {
overflow: auto;
}
}
\ No newline at end of file
@CONTROL/视图布局面板/实体图表视图/VIEW.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -8,6 +8,13 @@
</#ibizinclude>
<div class='content-container'>
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#assign MDContent>
<#comment><!--开始:快速搜索或工具栏存在--></#comment>
<#if (view.isEnableQuickSearch() || view.hasPSControl('toolbar'))>
...
...
@@ -36,6 +43,13 @@ ${P.getCtrlCode('chart', 'CONTROL.html').code}
<#ibizinclude>
../@MACRO/VIEW_MD_CONTENT.vue.ftl
</#ibizinclude>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体数据多项选择视图/VIEW.less.ftl
浏览文件 @
cc40f218
...
...
@@ -4,6 +4,7 @@
.pickup-view {
>.translate-contant {
overflow: auto;
flex-grow: 1;
display: flex;
justify-content: flex-end;
...
...
@CONTROL/视图布局面板/实体数据多项选择视图/VIEW.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -2,6 +2,13 @@
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="${view.getCodeName()?lower_case}"></app-studioaction>
<card class='view-card view-no-caption <#if !view.hasPSControl('toolbar')> view-no-toolbar</#if>' :dis-hover="true" :padding="0" :bordered="false">
<div class="content-container pickup-view">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<div class="translate-contant">
<div class="center" :style="{width : !isShowButton ? '100%' : ''}">
<#if view.hasPSControl('pickupviewpanel')>
...
...
@@ -47,6 +54,13 @@
<i-button @click="onClickCancel">{{this.containerModel.view_cancelbtn.text}}</i-button>
</row>
</card>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体树视图/VIEW.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -2,12 +2,17 @@
<div class='view-container ${view.getViewType()?lower_case} ${srffilepath2(view.getCodeName())}<#if view.getPSSysCss?? && view.getPSSysCss()??> ${view.getPSSysCss().getCssName()}</#if>'>
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="${view.getCodeName()?lower_case}"></app-studioaction>
<card class='view-card <#if !view.isShowCaptionBar()> view-no-caption</#if> <#if !view.hasPSControl('toolbar')> view-no-toolbar</#if>' :dis-hover="true" :bordered="false">
<#ibizinclude>
../@MACRO/VIEW_CAPTION_DATAINFO.vue.ftl
</#ibizinclude>
<div class="content-container">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#assign MDContent>
<#-- 搜索框: BEGIN -->
<#if (view.isEnableQuickSearch())>
...
...
@@ -26,5 +31,13 @@
<#ibizinclude>
../@MACRO/VIEW_MD_CONTENT.vue.ftl
</#ibizinclude>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体树视图(部件视图)/VIEW.less.ftl
浏览文件 @
cc40f218
...
...
@@ -20,6 +20,12 @@
right: 0px;
}
}
.${srffilepath2(view.getCodeName())} {
> .view-card > .ivu-card-body {
height: 100%;
}
}
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
@CONTROL/视图布局面板/实体树视图(部件视图)/VIEW.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -3,6 +3,13 @@
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="${view.getCodeName()?lower_case}"></app-studioaction>
<card class='view-card <#if !view.isShowCaptionBar()> view-no-caption</#if> <#if !view.hasPSControl('toolbar')> view-no-toolbar</#if>' :dis-hover="true" :bordered="false">
<div class='content-container'>
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#assign MDContent>
<#-- 搜索框: BEGIN -->
<#if (view.isEnableQuickSearch())>
...
...
@@ -21,6 +28,13 @@
<#ibizinclude>
../@MACRO/VIEW_MD_CONTENT.vue.ftl
</#ibizinclude>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体甘特视图/VIEW.less.ftl
浏览文件 @
cc40f218
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
</#ibizinclude>
.${srffilepath2(view.getCodeName())} {
> .view-card > .ivu-card-body > .content-container > .gantt {
overflow: auto;
}
}
@CONTROL/视图布局面板/实体甘特视图(部件视图)/VIEW.less.ftl
浏览文件 @
cc40f218
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
</#ibizinclude>
.${srffilepath2(view.getCodeName())} {
> .view-card > .ivu-card-body > .content-container > .gantt {
overflow: auto;
}
}
\ No newline at end of file
@CONTROL/视图布局面板/实体编辑视图(上下关系)/VIEW.less.ftl
浏览文件 @
cc40f218
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
</#ibizinclude>
.view-container.${srffilepath2(view.getCodeName())} > .view-card > .ivu-card-body > .content-container {
height: calc(100% - 30px);
}
\ No newline at end of file
@CONTROL/视图布局面板/实体编辑视图(上下关系)/VIEW.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -13,6 +13,13 @@ ${P.getCtrlCode(toolbarCtrl, 'CONTROL.html').code}
</@ibizindent>
</#if>
<div class="content-container">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#if view.hasPSControl('form')>
<@ibizindent blank=8>
${P.getCtrlCode('form', 'CONTROL.html').code}
...
...
@@ -29,6 +36,13 @@ ${P.getCtrlCode(ctrl, 'CONTROL.html').code}
</#if>
</#list>
</#if>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体编辑视图(左右关系)/VIEW.less.ftl
浏览文件 @
cc40f218
...
...
@@ -7,11 +7,19 @@
.edit-view2 {
flex-direction: row !important;
overflow: auto;
.view-form {
overflow: auto;
}
}
.${srffilepath2(view.getCodeName())}{
> .view-card > .ivu-card-body{
display: flex;
flex-direction: column;
}
}
<#ibizinclude>
../@MACRO/DEFAULT.less.ftl
</#ibizinclude>
\ No newline at end of file
@CONTROL/视图布局面板/实体编辑视图(左右关系)/VIEW.vue.ftl
浏览文件 @
cc40f218
<div class="view-container ${view.getViewType()?lower_case} ${srffilepath2(view.getCodeName())}<#if view.getPSSysCss?? && view.getPSSysCss()??> ${view.getPSSysCss().getCssName()}</#if>">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="${view.getCodeName()?lower_case}"></app-studioaction>
<card class='view-card <#if !view.isShowCaptionBar()> view-no-caption</#if> <#if !view.hasPSControl('toolbar')> view-no-toolbar</#if>' :dis-hover="true" :bordered="false">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#if view.hasPSControl('toolbar')>
<#assign selfToolbarRender>
<template v-if="Object.is(this.selection.id, 'form')">
...
...
@@ -9,24 +15,16 @@
</template>
</#assign>
</#if>
<#ibizinclude>
../@MACRO/VIEW_CAPTION_DATAINFO.vue.ftl
</#ibizinclude>
<div class="content-container edit-view2">
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<#if view.hasPSControl('drbar')>
<@ibizindent blank=8>
${P.getCtrlCode('drbar', 'CONTROL.html').code}
</@ibizindent>
</#if>
</div>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
...
...
@@ -34,6 +32,5 @@
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@CONTROL/视图布局面板/实体选择表格视图/VIEW.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -2,6 +2,13 @@
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="${view.getCodeName()?lower_case}"></app-studioaction>
<card class='view-card view-no-caption <#if !view.hasPSControl('toolbar')> view-no-toolbar</#if>' :dis-hover="true" :bordered="false">
<div class='content-container pickup-grid-view'>
<#-- BEGIN:视图顶部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Top_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图顶部视图消息 -->
<@ibizindent blank=12>
<#if view.hasPSControl('searchform')>
${P.getCtrlCode('searchform', 'CONTROL.html').code}<#t>
...
...
@@ -10,6 +17,13 @@
${P.getCtrlCode('grid', 'CONTROL.html').code}<#t>
</#if>
</@ibizindent>
<#-- BEGIN:视图底部视图消息 -->
<@ibizindent blank=8>
<#ibizinclude>
../@MACRO/View_Pos_Bottom_Msgs.vue.ftl
</#ibizinclude>
</@ibizindent>
<#-- END:视图底部视图消息 -->
</div>
</card>
</div>
\ No newline at end of file
@EDITOR/数据选择/EDITOR.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -13,6 +13,7 @@
:localParam =<@getNavigateParams editor />
:disabled="detailsModel.${editor.name}.disabled"
name='${editor.name}'
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#-- 自填模式文本属性、值属性start -->
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#assign appDeAcMode = editor.getPSAppDEACMode() />
...
...
@EDITOR/数据选择/GRIDEIDTOR.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -13,6 +13,7 @@
:localParam =<@getNavigateParams editor />
:disabled="row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1"
name='${editor.name}'
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#-- 自填模式文本属性、值属性start -->
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#assign appDeAcMode = editor.getPSAppDEACMode() />
...
...
@EDITOR/数据选择(下拉)/EDITOR.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -11,6 +11,7 @@
:localParam =<@getNavigateParams editor />
:disabled="detailsModel.${editor.name}.disabled"
name='${editor.name}'
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#if editor.getPSAppDEACMode().getMinorSortPSDEF?? && editor.getPSAppDEACMode().getMinorSortPSDEF()?? && editor.getPSAppDEACMode().getMinorSortDir?? && editor.getPSAppDEACMode().getMinorSortDir()??>
<#if editor.getPSAppDEACMode().getMinorSortDir() == 'ASC' || editor.getPSAppDEACMode().getMinorSortDir() == 'DESC'>
...
...
@EDITOR/数据选择(下拉)/GRIDEIDTOR.vue.ftl
浏览文件 @
cc40f218
...
...
@@ -11,6 +11,7 @@
:localParam =<@getNavigateParams editor />
:disabled="row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1"
name='${editor.name}'
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#-- 自填模式文本属性、值属性start -->
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#assign appDeAcMode = editor.getPSAppDEACMode() />
...
...
@EDITOR/用户自定义(动态配置AvueForm)/EDITOR.vue.ftl
浏览文件 @
cc40f218
<avue-custom-form :isParseString="<#if editor.getEditorParam('isParseString','') != ''>true<#else>false</#if>" :isFormData="<#if editor.getEditorParam('isFormData','') != ''>true<#else>false</#if>" <#if editor.getEditorParam('options','') != ''>:options="${editor.getEditorParam('options','')}"</#if> v-model="data.${editor.name}" :formData="data" <#if editor.getEditorParam('url','') != ''>:url="${editor.getEditorParam('url','')}"</#if> :formState="formState"></avue-custom-form>
\ No newline at end of file
<avue-custom-form :isSubForm="<#if editor.getEditorParam('isSubForm','') != ''>true<#else>false</#if>" :isParseString="<#if editor.getEditorParam('isParseString','') != ''>true<#else>false</#if>" :isFormData="<#if editor.getEditorParam('isFormData','') != ''>true<#else>false</#if>" <#if editor.getEditorParam('options','') != ''>:options="${editor.getEditorParam('options','')}"</#if> v-model="data.${editor.name}" :formData="data" <#if editor.getEditorParam('url','') != ''>:url="${editor.getEditorParam('url','')}"</#if> :formState="formState"></avue-custom-form>
\ No newline at end of file
APP/package.json.ftl
0 → 100644
浏览文件 @
cc40f218
<#ibiztemplate>
TARGET=PSSYSAPP
</#ibiztemplate>
{
"name": "app",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service serve --mode test",
"dev-serve": "node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service serve --mode development",
"build": "node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build",
"dev-build": "node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build --mode development",
"test:unit": "vue-cli-service test:unit",
"test:e2e": "vue-cli-service test:e2e",
"lint": "vue-cli-service lint"
},
"dependencies": {
"@fullcalendar/core": "^4.4.0",
"@fullcalendar/daygrid": "^4.4.0",
"@fullcalendar/interaction": "^4.4.0",
"@fullcalendar/list": "^4.4.0",
"@fullcalendar/timegrid": "^4.4.0",
"@fullcalendar/vue": "^4.4.0",
"vuedraggable": "^2.23.2",
"async-validator": "^3.3.0",
"@popperjs/core": "^2.4.3",
"axios": "^0.19.1",
"core-js": "^3.4.4",
"echarts": "^4.6.0",
"element-ui": "^2.13.0",
"file-saver": "^2.0.2",
"font-awesome": "^4.7.0",
"ibiz-gantt-elastic": "^1.0.17",
"ibiz-vue-lib": "^0.1.13",
"interactjs": "^1.9.4",
"moment": "^2.24.0",
"path-to-regexp": "^6.1.0",
"qs": "^6.9.1",
"rxjs": "^6.5.4",
"tinymce": "4.8.5",
"view-design": "4.2.0",
"vue": "^2.6.10",
"vue-class-component": "^7.0.2",
"vue-grid-layout": "^2.3.7",
"vue-i18n": "^8.15.3",
"vue-property-decorator": "^8.3.0",
"vue-router": "^3.1.3",
"vuex": "^3.1.2",
<#if app.getAllPSAppPkgs?? && app.getAllPSAppPkgs()??>
<#list app.getAllPSAppPkgs() as appPackage>
<#if appPackage.getVerParam()?? && appPackage.getVerParam() !="">${appPackage.getVerParam()},</#if>
</#list>
</#if>
"xlsx": "^0.15.6"
},
"devDependencies": {
"@types/echarts": "^4.4.3",
"@types/jest": "^24.0.19",
"@types/mockjs": "^1.0.2",
"@types/qs": "^6.9.0",
"@vue/cli-plugin-babel": "^4.1.0",
"@vue/cli-plugin-e2e-cypress": "^4.1.0",
"@vue/cli-plugin-router": "^4.1.0",
"@vue/cli-plugin-typescript": "^4.1.0",
"@vue/cli-plugin-unit-jest": "^4.1.0",
"@vue/cli-plugin-vuex": "^4.1.0",
"@vue/cli-service": "^4.1.0",
"@vue/test-utils": "1.0.0-beta.29",
"axios-mock-adapter": "^1.17.0",
"compression-webpack-plugin": "^4.0.0",
"less": "^3.0.4",
"less-loader": "^5.0.0",
"mockjs": "^1.1.0",
"script-loader": "^0.7.2",
"typescript": "~3.5.3",
<#if app.getAllPSAppPkgs?? && app.getAllPSAppPkgs()??>
<#list app.getAllPSAppPkgs() as appPackage>
<#if appPackage.getVerParam2()?? && appPackage.getVerParam2() !="">${appPackage.getVerParam2()},</#if>
</#list>
</#if>
"vue-template-compiler": "^2.6.10"
}
}
APP/src/uiservice/%DE_PKGPATH%/%DE_PKGPATH%-ui-service-base.ts.ftl
浏览文件 @
cc40f218
...
...
@@ -133,7 +133,7 @@ export default class ${srfclassname('${item.getCodeName()}')}UIServiceBase exten
public initViewMap(){
<#if item.getAllPSAppViews()??>
<#list item.getAllPSAppViews() as singleView>
this.allViewMap.set('<#if singleView.getFuncViewMode()??>${singleView.getFuncViewMode()}</#if>:<#if singleView.getFuncViewParam()??>${singleView.getFuncViewParam()}</#if>',{viewname:'${singleView.getPSDEViewCodeName()?lower_case}',srfappde:'${srfpluralize(item.codeName)?lower_case}'});
this.allViewMap.set('<#if singleView.getFuncViewMode()??>${singleView.getFuncViewMode()}</#if>:<#if singleView.getFuncViewParam()??>${singleView.getFuncViewParam()}</#if>',{viewname:'${singleView.getPSDEViewCodeName()?lower_case}',srfappde:'${srfpluralize(item.codeName)?lower_case}'
,component:'${srffilepath2(singleView.getCodeName())}'
});
</#list>
</#if>
}
...
...
@@ -350,13 +350,13 @@ ${P.getLogicCode(appdeUIAction, "LOGIC.vue").code}
}
})
for (let i = 0; i <= 1; i++) {
<#noparse>let strTag:string = (curData[this.mainStateFields[0]])?(i == 0) ? `${curData[this.mainStateFields[0]]}` : "":"";</#noparse>
<#noparse>let strTag:string = (curData[this.mainStateFields[0]]
!= null && curData[this.mainStateFields[0]] !== ""
)?(i == 0) ? `${curData[this.mainStateFields[0]]}` : "":"";</#noparse>
if (this.mainStateFields.length >= 2) {
for (let j = 0; j <= 1; j++) {
<#noparse>let strTag2:string = (curData[this.mainStateFields[1]])?`${strTag}__${(j == 0) ? `${curData[this.mainStateFields[1]]}` : ""}`:strTag;</#noparse>
<#noparse>let strTag2:string = (curData[this.mainStateFields[1]]
!= null && curData[this.mainStateFields[1]] !== ""
)?`${strTag}__${(j == 0) ? `${curData[this.mainStateFields[1]]}` : ""}`:strTag;</#noparse>
if (this.mainStateFields.length >= 3) {
for (let k = 0; k <= 1; k++) {
<#noparse>let strTag3:string = (curData[this.mainStateFields[2]])?`${strTag2}__${(k == 0) ? `${curData[this.mainStateFields[2]]}` : ""}`:strTag2;</#noparse>
<#noparse>let strTag3:string = (curData[this.mainStateFields[2]]
!= null && curData[this.mainStateFields[2]] !== ""
)?`${strTag2}__${(k == 0) ? `${curData[this.mainStateFields[2]]}` : ""}`:strTag2;</#noparse>
// 判断是否存在
return this.allDeMainStateMap.get(strTag3);
}
...
...
ibiz4j
@ibiz4j
被提及 commit
4d386c11
·
9月 24, 2020
被提及 commit
4d386c11
被提及 commit 4d386c11108f20ee9f80dd9aa1d0a824ce299a20
切换提交列表
tony001
@tony001
被提及 commit
a7120765
·
9月 24, 2020
被提及 commit
a7120765
被提及 commit a712076564c9942e5048a6a04a6911fbd4422922
切换提交列表
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录