Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
22
议题
22
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-R7
提交
90d63163
提交
90d63163
编写于
10月 31, 2020
作者:
tony001
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'dev'
上级
34d52f86
4d1450c7
变更
169
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
169 个修改的文件
包含
590 行增加
和
341 行删除
+590
-341
MACRO.ftl
@CONTROL/@MACRO/FUNC/MACRO.ftl
+13
-0
CONTROL-BASE.vue.ftl
@CONTROL/分页导航面板/CONTROL-BASE.vue.ftl
+45
-28
CONTROL-BASE.vue.ftl
@CONTROL/列表/CONTROL-BASE.vue.ftl
+56
-9
CONTROL-BASE.vue.ftl
@CONTROL/列表导航/CONTROL-BASE.vue.ftl
+1
-1
CONTROL-BASE.vue.ftl
@CONTROL/卡片视图导航/CONTROL-BASE.vue.ftl
+1
-1
CONTROL-BASE.vue.ftl
@CONTROL/向导面板/CONTROL-BASE.vue.ftl
+1
-1
CONTROL.html#ITEM_RAWITEM.ftl
@CONTROL/工具栏/CONTROL.html#ITEM_RAWITEM.ftl
+7
-4
CONTROL-BASE.vue.ftl
@CONTROL/数据图表 (新)/CONTROL-BASE.vue.ftl
+4
-1
CONTROL-BASE.vue.ftl
@CONTROL/数据图表/CONTROL-BASE.vue.ftl
+4
-1
CONTROL-BASE.vue.ftl
@CONTROL/数据视图/CONTROL-BASE.vue.ftl
+5
-2
CONTROL-BASE.vue.ftl
@CONTROL/日历导航/CONTROL-BASE.vue.ftl
+1
-1
CONTROL-BASE.vue.ftl
@CONTROL/日历部件/CONTROL-BASE.vue.ftl
+41
-28
CONTROL.less.ftl
@CONTROL/日历部件/CONTROL.less.ftl
+6
-0
CONTROL-BASE.vue.ftl
@CONTROL/树表格(增强)/CONTROL-BASE.vue.ftl
+42
-2
CONTROL-BASE.vue.ftl
@CONTROL/树视图/CONTROL-BASE.vue.ftl
+5
-1
CONTROL-BASE.vue.ftl
@CONTROL/树视图导航栏/CONTROL-BASE.vue.ftl
+2
-2
CONTROL-BASE.vue.ftl
@CONTROL/流程导航栏/CONTROL-BASE.vue.ftl
+1
-1
CONTROL-BASE.vue.ftl
@CONTROL/状态向导面板/CONTROL-BASE.vue.ftl
+9
-9
CONTROL.less.ftl
@CONTROL/状态向导面板/CONTROL.less.ftl
+8
-9
CONTROL-BASE.vue.ftl
@CONTROL/甘特图部件/CONTROL-BASE.vue.ftl
+28
-3
CONTROL.less.ftl
@CONTROL/甘特图部件/CONTROL.less.ftl
+13
-3
CONTROL-BASE.vue.ftl
@CONTROL/看板视图/CONTROL-BASE.vue.ftl
+64
-56
CONTROL.less.ftl
@CONTROL/看板视图/CONTROL.less.ftl
+6
-0
CONTROL-BASE.vue#DETAIL_RAWITEM.ftl
@CONTROL/表单/CONTROL-BASE.vue#DETAIL_RAWITEM.ftl
+7
-4
CONTROL-BASE.vue.ftl
@CONTROL/表单/CONTROL-BASE.vue.ftl
+6
-6
CONTROL-BASE.vue#COLUMN.ftl
@CONTROL/表格/CONTROL-BASE.vue#COLUMN.ftl
+2
-2
CONTROL-BASE.vue.ftl
@CONTROL/表格/CONTROL-BASE.vue.ftl
+0
-0
SERVICE.ts.ftl
@CONTROL/表格/SERVICE.ts.ftl
+2
-2
CONTROL-BASE.vue.ftl
@CONTROL/表格导航/CONTROL-BASE.vue.ftl
+1
-1
VIEW.vue.ftl
@CONTROL/视图布局面板/实体分页导航视图/VIEW.vue.ftl
+3
-0
CONTROL-BASE.vue.ftl
@CONTROL/门户部件/CONTROL-BASE.vue.ftl
+6
-4
CONTROL-BASE.vue#ITEM_RAWITEM.ftl
@CONTROL/面板/CONTROL-BASE.vue#ITEM_RAWITEM.ftl
+6
-5
DEFAULT.vue.ftl
@EDITOR/@MACRO/GRID/DEFAULT.vue.ftl
+3
-3
DEFAULT.vue.ftl
@EDITOR/@MACRO/PANEL/DEFAULT.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/HTML编辑器/EDITOR.vue.ftl
+3
-2
PANELEDITOR.vue.ftl
@EDITOR/HTML编辑器/PANELEDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/下拉列表框 (动态代码表国际化)/GRIDEIDTOR.vue.ftl
+1
-1
EDITOR.vue.ftl
@EDITOR/下拉列表框/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/下拉列表框/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/下拉列表框/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/下拉列表框(100宽度)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/下拉列表框(100宽度)/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/下拉列表框(100宽度)/PANELEDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/下拉列表框(cron表达式)/GRIDEIDTOR.vue.ftl
+1
-1
GRIDEIDTOR.vue.ftl
@EDITOR/下拉列表框(多选穿梭框)/GRIDEIDTOR.vue.ftl
+1
-1
EDITOR.vue.ftl
@EDITOR/下拉列表框(多选)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/下拉列表框(多选)/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/下拉列表框(多选)/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/代码编辑器/EDITOR.vue.ftl
+3
-2
EDITOR.vue.ftl
@EDITOR/单选项列表/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/单选项列表/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/单选项列表/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/图片控件/EDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/图片控件/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/图片控件/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/图片控件(单项)/EDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/图片控件(单项)/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/图片控件(单项)/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/图片控件(旋转预览)/EDITOR.vue.ftl
+6
-0
template.properties
@EDITOR/图片控件(旋转预览)/template.properties
+2
-0
EDITOR.vue.ftl
@EDITOR/地址框(支持选择、AC)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/地址框(支持选择、AC)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/地址框(选择)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/地址框(选择)/GRIDEIDTOR.vue.ftl
+3
-3
GRIDEIDTOR.vue.ftl
@EDITOR/多行输入框 (工作流审批意见控件时光轴样式)/GRIDEIDTOR.vue.ftl
+2
-1
GRIDEIDTOR.vue.ftl
@EDITOR/多行输入框 (工作流审批意见控件)/GRIDEIDTOR.vue.ftl
+2
-1
EDITOR.vue.ftl
@EDITOR/多行输入框/EDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/多行输入框/GRIDEIDTOR.vue.ftl
+4
-3
PANELEDITOR.vue.ftl
@EDITOR/多行输入框/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/多行输入框(10行)/EDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/多行输入框(10行)/GRIDEIDTOR.vue.ftl
+4
-3
PANELEDITOR.vue.ftl
@EDITOR/多行输入框(10行)/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/密码框/EDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/密码框/GRIDEIDTOR.vue.ftl
+4
-3
PANELEDITOR.vue.ftl
@EDITOR/密码框/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/开关部件/EDITOR.vue.ftl
+3
-2
GRIDEIDTOR.vue.ftl
@EDITOR/开关部件/GRIDEIDTOR.vue.ftl
+4
-3
PANELEDITOR.vue.ftl
@EDITOR/开关部件/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/数值框/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数值框/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/数值框/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/数据选择/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择/GRIDEIDTOR.vue.ftl
+3
-3
PANELEDITOR.vue.ftl
@EDITOR/数据选择/PANELEDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/数据选择(下拉、数据链接)/EDITOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/数据选择(下拉视图、数据链接)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(下拉视图、数据链接)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/数据选择(下拉视图)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(下拉视图)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/数据选择(下拉)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(下拉)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/数据选择(嵌入选择视图)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(嵌入选择视图)/GRIDEIDTOR.vue.ftl
+2
-2
EDITOR.vue.ftl
@EDITOR/数据选择(数据链接)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(数据链接)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/数据选择(无AC、数据链接)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(无AC、数据链接)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/数据选择(无AC)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(无AC)/GRIDEIDTOR.vue.ftl
+3
-3
EDITOR.vue.ftl
@EDITOR/数据选择(无按钮)/EDITOR.vue.ftl
+2
-2
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(树选择)/GRIDEIDTOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/数据选择(请求数据)/GRIDEIDTOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/数据链接/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/数据链接/GRIDEIDTOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/文件上传/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/文件上传/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/文件上传/PANELEDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/文件上传(支持拖拽)/GRIDEIDTOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/文本框/EDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择器(新)/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择器(新)/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择器(新)/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件_分钟/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件_分钟/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件_分钟/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件_小时/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件_小时/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件_小时/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件_无小时/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件_无小时/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件_无小时/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件_无日期/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件_无日期/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件_无日期/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件_无日期无秒钟/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件_无日期无秒钟/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件_无日期无秒钟/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/时间选择控件_秒钟/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/时间选择控件_秒钟/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/时间选择控件_秒钟/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/标签(旧)/EDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/标签/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/标签/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/标签/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/步进器/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/步进器/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/步进器/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/滑动输入条/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/滑动输入条/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/滑动输入条/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/用户自定义/EDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/直接内容/EDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/自动填充/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/自动填充/GRIDEIDTOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/评分器/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/评分器/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/评分器/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/选项框/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/选项框/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/选项框/PANELEDITOR.vue.ftl
+0
-0
EDITOR.vue.ftl
@EDITOR/选项框列表/EDITOR.vue.ftl
+0
-0
GRIDEIDTOR.vue.ftl
@EDITOR/选项框列表/GRIDEIDTOR.vue.ftl
+0
-0
PANELEDITOR.vue.ftl
@EDITOR/选项框列表/PANELEDITOR.vue.ftl
+0
-0
LOGIC.vue.ftl
@LOGIC/@UIACTION/后台调用/LOGIC.vue.ftl
+0
-0
VIEW_CONTENT-BASE.vue.ftl
@VIEW/@MACRO/VIEW_CONTENT-BASE.vue.ftl
+1
-1
VIEW_HEADER-BASE.vue.ftl
@VIEW/@MACRO/VIEW_HEADER-BASE.vue.ftl
+1
-1
VIEW-BASE.vue.ftl
@VIEW/实体分页导航视图/VIEW-BASE.vue.ftl
+0
-0
VIEW-BASE.vue.ftl
@VIEW/实体多表单编辑视图(部件视图)/VIEW-BASE.vue.ftl
+0
-0
VIEW-BASE.vue.ftl
@VIEW/实体甘特视图 (部件视图)/VIEW-BASE.vue.ftl
+0
-0
VIEW-BASE.vue.ftl
@VIEW/实体甘特视图/VIEW-BASE.vue.ftl
+0
-0
en-US.ts.ftl
APP/src/locale/lang/en-US.ts.ftl
+0
-1
zh-CN.ts.ftl
APP/src/locale/lang/zh-CN.ts.ftl
+0
-1
%DE_PKGPATH%_en_US.ts.ftl
...le/lanres/entities/%DE_PKGPATH%/%DE_PKGPATH%_en_US.ts.ftl
+6
-1
%DE_PKGPATH%_zh_CN.ts.ftl
...le/lanres/entities/%DE_PKGPATH%/%DE_PKGPATH%_zh_CN.ts.ftl
+6
-1
%DE_PKGPATH%s.ts.ftl
APP/src/mock/entity/%DE_PKGPATH%s/%DE_PKGPATH%s.ts.ftl
+2
-0
%DE_PKGPATH%-ui-service-base.ts.ftl
...iservice/%DE_PKGPATH%/%DE_PKGPATH%-ui-service-base.ts.ftl
+7
-0
未找到文件。
@CONTROL/@MACRO/FUNC/MACRO.ftl
浏览文件 @
90d63163
...
@@ -22,6 +22,19 @@
...
@@ -22,6 +22,19 @@
</#if>
</#if>
</#macro>
</#macro>
<#-- 获取快速搜索栏提示 Placeholder -->
<#macro getSearchPlaceholder ctrl>
<#assign isdrawcComma = false />
<#if ctrl.getPSAppDataEntity?? && ctrl.getPSAppDataEntity()?? && ctrl.getPSAppDataEntity().getAllPSAppDEFields?? && ctrl.getPSAppDataEntity().getAllPSAppDEFields()??>
<#list ctrl.getPSAppDataEntity().getAllPSAppDEFields() as field>
<#if field.isEnableQuickSearch()>
<#if isdrawcComma>,<#else><#assign isdrawcComma = true /></#if><#t>
${field.getPSDEField().getLogicName()}<#t>
</#if>
</#list>
</#if>
</#macro>
<#-- 获取导航上下文 -->
<#-- 获取导航上下文 -->
<#macro getNavigateContext currentItem>
<#macro getNavigateContext currentItem>
{<#t>
{<#t>
...
...
@CONTROL/分页导航面板/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -4,9 +4,9 @@
...
@@ -4,9 +4,9 @@
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<div class='tabviewpanel<#if ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>' style="height:100%;">
<div class='tabviewpanel<#if ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>' style="height:100%;">
<tabs :value="
tabValue
" :animated="false" class='tabexppanel' name='${ctrl.getCodeName()?lower_case}' @on-click="tabPanelClick">
<tabs :value="
activiedTabViewPanel
" :animated="false" class='tabexppanel' name='${ctrl.getCodeName()?lower_case}' @on-click="tabPanelClick">
<#list ctrl.getPSControls() as tabviewpanel>
<#list ctrl.getPSControls() as tabviewpanel>
<tab-pane :index="${tabviewpanel_index}" name='${tabviewpanel.name}' tab='${ctrl.getCodeName()?lower_case}' class='<#if tabviewpanel.getPSSysCss?? && tabviewpanel.getPSSysCss()??>${tabviewpanel.getPSSysCss().getCssName()}</#if>' v-if="
computedAuthorizedPanel('${tabviewpanel.name}')
"
<tab-pane :index="${tabviewpanel_index}" name='${tabviewpanel.name}' tab='${ctrl.getCodeName()?lower_case}' class='<#if tabviewpanel.getPSSysCss?? && tabviewpanel.getPSSysCss()??>${tabviewpanel.getPSSysCss().getCssName()}</#if>' v-if="
authResourceObject['${tabviewpanel.name}'].visabled
"
:label="(h) =>{
:label="(h) =>{
return h('div', [
return h('div', [
<#if tabviewpanel.getPSSysImage()??>
<#if tabviewpanel.getPSSysImage()??>
...
@@ -58,6 +58,14 @@ import { Environment } from '@/environments/environment';
...
@@ -58,6 +58,14 @@ import { Environment } from '@/environments/environment';
*/
*/
public appAuthService: ${appde.getCodeName()}AuthService = new ${appde.getCodeName()}AuthService();
public appAuthService: ${appde.getCodeName()}AuthService = new ${appde.getCodeName()}AuthService();
/**
* 界面UI服务对象
*
* @type {${srfclassname('${appde.getCodeName()}')}UIService}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public appUIService:${srfclassname('${appde.getCodeName()}')}UIService = new ${srfclassname('${appde.getCodeName()}')}UIService(this.$store);
/**
/**
* 是否初始化
* 是否初始化
*
*
...
@@ -120,13 +128,13 @@ import { Environment } from '@/environments/environment';
...
@@ -120,13 +128,13 @@ import { Environment } from '@/environments/environment';
public action:any = '';
public action:any = '';
/**
/**
* 分页面板
统一资源
存储对象
* 分页面板
权限标识
存储对象
*
*
* @public
* @public
* @type {*}
* @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public authResourceObject:any = {<#list ctrl.getPSControls() as tabviewpanel>'${tabviewpanel.name}':
<#if tabviewpanel.getEmbeddedPSAppDEView()?? && tabviewpanel.getEmbeddedPSAppDEView().getAccessKey()??>'${tabviewpanel.getEmbeddedPSAppDEView().getAccessKey()}'<#else>null</#if>
<#if tabviewpanel_has_next>,</#if></#list>};
public authResourceObject:any = {<#list ctrl.getPSControls() as tabviewpanel>'${tabviewpanel.name}':
{resourcetag:<#if tabviewpanel.getEmbeddedPSAppDEView()?? && tabviewpanel.getEmbeddedPSAppDEView().getAccessKey()??>'${tabviewpanel.getEmbeddedPSAppDEView().getAccessKey()}'<#else>null</#if><#if tabviewpanel.getPSDEOPPriv?? && tabviewpanel.getPSDEOPPriv()??>,actiontarget: 'SINGLEKEY',noprivdisplaymode:2,dataaccaction:'${tabviewpanel.getPSDEOPPriv().getName()}'</#if>,visabled: true,disabled: false}
<#if tabviewpanel_has_next>,</#if></#list>};
/**
/**
* 被激活的分页面板
* 被激活的分页面板
...
@@ -137,39 +145,45 @@ import { Environment } from '@/environments/environment';
...
@@ -137,39 +145,45 @@ import { Environment } from '@/environments/environment';
public activiedTabViewPanel: string = '<#list ctrl.getPSControls() as tabviewpanel><#if tabviewpanel_index==0>${tabviewpanel.name}</#if></#list>';
public activiedTabViewPanel: string = '<#list ctrl.getPSControls() as tabviewpanel><#if tabviewpanel_index==0>${tabviewpanel.name}</#if></#list>';
/**
/**
* 计算
激活分页面板
* 计算
分页面板权限
*
*
* @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public computedActiviedPanel(){
public computedAuthPanel(data:any){
if(this.$store.getters['authresource/getEnablePermissionValid']){
if(!data || Object.keys(data).length === 0){
if(Object.keys(this.authResourceObject).length >0){
return;
let targetResult:Array<any> = [];
}
Object.keys(this.authResourceObject).forEach((item:any) =>{
if(this.authResourceObject && Object.keys(this.authResourceObject).length >0){
if(this.computedAuthorizedPanel(item))
Object.keys(this.authResourceObject).forEach((key:string) =>{
targetResult.push(item);
if(this.authResourceObject[key] && this.authResourceObject[key]['dataaccaction']){
})
let tempUIAction:any = Util.deepCopy(this.authResourceObject[key]);
if(targetResult.length >0){
let result: any[] = ViewTool.calcActionItemAuthState(data,[tempUIAction],this.appUIService);
this.activiedTabViewPanel = targetResult[0];
this.authResourceObject[key].visabled = this.computedPanelWithResource(key,tempUIAction.visabled);
this.tabPanelClick(targetResult[0]);
this.authResourceObject[key].disabled = this.computedPanelWithResource(key,tempUIAction.disabled);
}
})
const keys:any = Object.keys(this.authResourceObject);
for(let i=0;i<keys.length;i++){
if(this.authResourceObject[keys[i]].visabled){
this.tabPanelClick(keys[i]);
return;
}
}
}
}
}
}
}
}
/**
/**
*
计算分页面板是否显示
*
合入统一资源权限
*
*
* @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public computed
AuthorizedPanel(name:string
){
public computed
PanelWithResource(name:string,mainState:boolean
){
if(!this.$store.getters['authresource/getEnablePermissionValid'])
if(!this.$store.getters['authresource/getEnablePermissionValid'])
return true;
return
mainState === false?false:
true;
if(!this.authResourceObject[name])
if(!this.authResourceObject[name])
return true;
return mainState === false?false:true;
return this.appAuthService.getResourcePermission(this.authResourceObject[name]);
const resourceAuth:boolean = this.appAuthService.getResourcePermission(this.authResourceObject[name]['resourcetag']);
return !resourceAuth?false:mainState?true:false;
}
}
/**
/**
...
@@ -184,7 +198,6 @@ import { Environment } from '@/environments/environment';
...
@@ -184,7 +198,6 @@ import { Environment } from '@/environments/environment';
/**
/**
* vue 生命周期
* vue 生命周期
*
*
* @returns
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public created() {
public created() {
...
@@ -204,15 +217,18 @@ import { Environment } from '@/environments/environment';
...
@@ -204,15 +217,18 @@ import { Environment } from '@/environments/environment';
Object.assign(this.context,{srfparentdename:'${appDataEntity.getCodeName()}',srfparentkey:this.context.${appDataEntity.getCodeName()?lower_case}})
Object.assign(this.context,{srfparentdename:'${appDataEntity.getCodeName()}',srfparentkey:this.context.${appDataEntity.getCodeName()?lower_case}})
}
}
</#if>
</#if>
this.computedActiviedPanel();
if (this.viewState) {
if (this.viewState) {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
if (!Object.is(tag, this.name)) {
return;
return;
}
}
this.action = action;
if(Object.is(action,'loadmodel')){
this.viewState.next({ tag: this.activiedTabViewPanel, action: action, data: data });
this.computedAuthPanel(data);
this.$forceUpdate();
}else{
this.action = action;
this.viewState.next({ tag: this.activiedTabViewPanel, action: action, data: data });
this.$forceUpdate();
}
});
});
}
}
}
}
...
@@ -251,6 +267,7 @@ import { Environment } from '@/environments/environment';
...
@@ -251,6 +267,7 @@ import { Environment } from '@/environments/environment';
if (!$event) {
if (!$event) {
return;
return;
}
}
this.isInit = [];
this.isInit[$event] = true;
this.isInit[$event] = true;
if (!this.viewState) {
if (!this.viewState) {
return;
return;
...
...
@CONTROL/列表/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<div :class="['app-list',<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()>'${singleCss.getCssName()}',</#if>this.items.length > 0 ? '' : 'app-list-empty' ]">
<div :class="['app-list',<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()>'${singleCss.getCssName()}',</#if>this.items.length > 0 ? '' : 'app-list-empty' ]">
<div v-if="items.length > 0">
<div v-if="items.length > 0">
...
@@ -37,7 +40,7 @@
...
@@ -37,7 +40,7 @@
</div>
</div>
</div>
</div>
<div v-else style="text-align: center;">
<div v-else style="text-align: center;">
{{ $t('
app.commonWords.noData
') }}
{{ $t('
<#if langbase??>${langbase}.nodata</#if>
') }}
</div>
</div>
</el-collapse-item>
</el-collapse-item>
</el-collapse>
</el-collapse>
...
@@ -48,7 +51,7 @@
...
@@ -48,7 +51,7 @@
</template>
</template>
</div>
</div>
<div v-else>
<div v-else>
{{ $t('
app.commonWords.noData
') }}
{{ $t('
<#if langbase??>${langbase}.nodata</#if>
') }}
</div>
</div>
<el-backtop target=".content-container .app-list"></el-backtop>
<el-backtop target=".content-container .app-list"></el-backtop>
</div>
</div>
...
@@ -405,6 +408,7 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -405,6 +408,7 @@ import CodeListService from "@/codelist/codelist-service";
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public afterMounted () {
public afterMounted () {
const loadMoreCallBack:any = this.throttle(this.loadMore,3000);
this.$el.addEventListener('scroll', ()=> {
this.$el.addEventListener('scroll', ()=> {
if(this.$el.scrollHeight > this.$el.clientHeight) {
if(this.$el.scrollHeight > this.$el.clientHeight) {
this.isScrollBar = true;
this.isScrollBar = true;
...
@@ -412,7 +416,7 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -412,7 +416,7 @@ import CodeListService from "@/codelist/codelist-service";
this.isScrollBar = false;
this.isScrollBar = false;
}
}
if( this.$el.scrollTop + this.$el.clientHeight >= this.$el.scrollHeight) {
if( this.$el.scrollTop + this.$el.clientHeight >= this.$el.scrollHeight) {
this.loadMore
();
loadMoreCallBack
();
}
}
})
})
}
}
...
@@ -437,8 +441,13 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -437,8 +441,13 @@ import CodeListService from "@/codelist/codelist-service";
if (!Object.is(this.name, tag)) {
if (!Object.is(this.name, tag)) {
return;
return;
}
}
if (Object.is(action,'load') || Object.is(action,'refresh')) {
if (Object.is(action,'load')) {
this.refresh(data)
this.curPage = 1;
this.items = [];
this.load(data);
}
if (Object.is(action,'refresh')) {
this.refresh(data);
}
}
});
});
}
}
...
@@ -486,8 +495,7 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -486,8 +495,7 @@ import CodeListService from "@/codelist/codelist-service";
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public loadMore(){
public loadMore(){
if(this.totalRecord>this.items.length)
if(this.totalRecord>this.items.length){
{
this.curPage = ++this.curPage;
this.curPage = ++this.curPage;
this.isAddBehind = true;
this.isAddBehind = true;
this.load({});
this.load({});
...
@@ -501,7 +509,7 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -501,7 +509,7 @@ import CodeListService from "@/codelist/codelist-service";
* @memberof Main
* @memberof Main
*/
*/
public refresh(args?: any) {
public refresh(args?: any) {
this.
curPage = 1
;
this.
isAddBehind = true
;
this.load(args);
this.load(args);
}
}
...
@@ -548,13 +556,14 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -548,13 +556,14 @@ import CodeListService from "@/codelist/codelist-service";
if(!this.isAddBehind){
if(!this.isAddBehind){
this.items = [];
this.items = [];
}
}
if (
Object.keys(data)
.length > 0) {
if (
data && data
.length > 0) {
let datas = JSON.parse(JSON.stringify(data));
let datas = JSON.parse(JSON.stringify(data));
datas.map((item: any) => {
datas.map((item: any) => {
Object.assign(item, { isselected: false });
Object.assign(item, { isselected: false });
});
});
this.totalRecord = response.total;
this.totalRecord = response.total;
this.items.push(...datas);
this.items.push(...datas);
this.items = this.arrayNonRepeatfy(this.items);
}
}
this.isAddBehind = false;
this.isAddBehind = false;
this.$emit('load', this.items);
this.$emit('load', this.items);
...
@@ -582,6 +591,44 @@ import CodeListService from "@/codelist/codelist-service";
...
@@ -582,6 +591,44 @@ import CodeListService from "@/codelist/codelist-service";
});
});
}
}
/**
* 列表数据去重
*
* @param {Array<any>} [arr]
* @returns {void}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public arrayNonRepeatfy(arr:Array<any>) {
let map = new Map();
let array = new Array();
for (let i = 0; i < arr.length; i++) {
map .set(arr[i].srfkey, arr[i]);
}
map.forEach((value:any, key:string, map:any) => {
array.push(value);
});
return array ;
}
/**
* 节流
*
* @param {Array<any>} [arr]
* @returns {void}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public throttle(fn:any, wait:number){
let time = 0;
return () =>{
let now = Date.now()
let args = arguments;
if(now - time > wait){
fn.apply(this, args)
time = now;
}
}
}
/**
/**
* 删除
* 删除
*
*
...
...
@CONTROL/列表导航/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -160,7 +160,7 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
...
@@ -160,7 +160,7 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
* @type {(string)}
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public placeholder="<@getQuickSearchPlaceholder
view
/>";
public placeholder="<@getQuickSearchPlaceholder
ctrl
/>";
/**
/**
* 搜索值
* 搜索值
...
...
@CONTROL/卡片视图导航/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -161,7 +161,7 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
...
@@ -161,7 +161,7 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
* @type {(string)}
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public placeholder="<@getQuickSearchPlaceholder
view
/>";
public placeholder="<@getQuickSearchPlaceholder
ctrl
/>";
/**
/**
* 搜素值
* 搜素值
...
...
@CONTROL/向导面板/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -4,7 +4,7 @@ ${ctrl.render.code}
...
@@ -4,7 +4,7 @@ ${ctrl.render.code}
<#else>
<#else>
<layout class="app-wizard<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??> ${ctrl.getPSSysCss().getCssName()}</#if>">
<layout class="app-wizard<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??> ${ctrl.getPSSysCss().getCssName()}</#if>">
<#if ctrl.getPSDEWizard?? && ctrl.getPSDEWizard()?? && ctrl.getPSDEWizard().getPSDEWizardSteps?? && ctrl.getPSDEWizard().getPSDEWizardSteps()??>
<#if ctrl.getPSDEWizard?? && ctrl.getPSDEWizard()?? && ctrl.getPSDEWizard().getPSDEWizardSteps?? && ctrl.getPSDEWizard().getPSDEWizardSteps()??>
<el-steps class="wizard-steps" :active="wizardForms.indexOf(activeForm)" finish-status="success">
<el-steps class="wizard-steps" :active="wizardForms.indexOf(activeForm)" finish-status="success"
align-center
>
<#list ctrl.getPSDEWizard().getPSDEWizardSteps() as step>
<#list ctrl.getPSDEWizard().getPSDEWizardSteps() as step>
<el-step title="${step.getTitle()}"></el-step>
<el-step title="${step.getTitle()}"></el-step>
</#list>
</#list>
...
...
@CONTROL/工具栏/CONTROL.html#ITEM_RAWITEM.ftl
浏览文件 @
90d63163
...
@@ -2,18 +2,20 @@
...
@@ -2,18 +2,20 @@
${item.render.code}
${item.render.code}
<#else>
<#else>
<app-rawitem
<app-rawitem
:viewparams="viewparams"
:context="context"
contentStyle="<#if item.getPSSysCss()??>${item.getPSSysCss().getCssName()}</#if>"
contentStyle="<#if item.getPSSysCss()??>${item.getPSSysCss().getCssName()}</#if>"
sizeStyle="<#if item.getRawItemHeight() gt 0>height: ${item.getRawItemHeight()?c}px;</#if><#if item.getRawItemWidth() gt 0>width: ${item.getRawItemWidth()?c}px;</#if>"
sizeStyle="<#if item.getRawItemHeight() gt 0>height: ${item.getRawItemHeight()?c}px;</#if><#if item.getRawItemWidth() gt 0>width: ${item.getRawItemWidth()?c}px;</#if>"
contentType="<#if item.getContentType?? && item.getContentType()??>${item.getContentType()}</#if>"
contentType="<#if item.getContentType?? && item.getContentType()??>${item.getContentType()}</#if>"
<#if item.getRawContent?? && item.getRawContent()??>
rawContent="${item.getRawContent()}"
</#if>
<#if item.getHtmlContent?? && item.getHtmlContent()??>
<#if item.getHtmlContent?? && item.getHtmlContent()??>
htmlContent="${item.getHtmlContent()}
"
:htmlContent="`${item.getHtmlContent()}`
"
</#if>
</#if>
<#if item.getPSSysImage?? && item.getPSSysImage()??>
<#if item.getPSSysImage?? && item.getPSSysImage()??>
<#assign img=item.getPSSysImage()>
<#assign img=item.getPSSysImage()>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
imageClass="${img.getCssClass()}"</#if></#if>>
imageClass="${img.getCssClass()}"</#if></#if>>
<#if item.getContentType?? && item.getContentType() == 'RAW'>
${item.getRawContent()}
</#if>
</app-rawitem>
</app-rawitem>
</#if>
</#if>
\ No newline at end of file
@CONTROL/数据图表 (新)/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<div class="app-data-chart<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<div class="app-data-chart<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<div v-if="isNoData" class="chart-no-data"><i class="el-icon-data-analysis"></i>{{$t('
app.commonWords.noData
')}}</div>
<div v-if="isNoData" class="chart-no-data"><i class="el-icon-data-analysis"></i>{{$t('
<#if langbase??>${langbase}.nodata</#if>
')}}</div>
<div v-else class="app-charts" :id="chartId" style="<#if ctrl.getWidth() gt 0>width: ${ctrl.getWidth()};</#if>height: <#if ctrl.getHeight() gt 0>${ctrl.getHeight()}px<#else>100%</#if>;padding: 6px 0;"></div>
<div v-else class="app-charts" :id="chartId" style="<#if ctrl.getWidth() gt 0>width: ${ctrl.getWidth()};</#if>height: <#if ctrl.getHeight() gt 0>${ctrl.getHeight()}px<#else>100%</#if>;padding: 6px 0;"></div>
</div>
</div>
</#if>
</#if>
...
...
@CONTROL/数据图表/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<div class="app-data-chart<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<div class="app-data-chart<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<div v-if="isNoData" class="chart-no-data"><i class="el-icon-data-analysis"></i>{{$t('
app.commonWords.noData
')}}</div>
<div v-if="isNoData" class="chart-no-data"><i class="el-icon-data-analysis"></i>{{$t('
<#if langbase??>${langbase}.nodata</#if>
')}}</div>
<div v-else class="app-charts" :id="chartId" style="<#if ctrl.getWidth() gt 0>width: ${ctrl.getWidth()};</#if>height: <#if ctrl.getHeight() gt 0>${ctrl.getHeight()}px<#else>100%</#if>;padding: 6px 0;"></div>
<div v-else class="app-charts" :id="chartId" style="<#if ctrl.getWidth() gt 0>width: ${ctrl.getWidth()};</#if>height: <#if ctrl.getHeight() gt 0>${ctrl.getHeight()}px<#else>100%</#if>;padding: 6px 0;"></div>
</div>
</div>
</#if>
</#if>
...
...
@CONTROL/数据视图/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??><#t>
<#if ctrl.render??><#t>
${ctrl.render.code}
${ctrl.render.code}
...
@@ -85,13 +88,13 @@
...
@@ -85,13 +88,13 @@
</a>
</a>
</div>
</div>
<div v-else style="text-align: center;">
<div v-else style="text-align: center;">
{{ $t('
app.commonWords.noData
') }}
{{ $t('
<#if langbase??>${langbase}.nodata</#if>
') }}
</div>
</div>
</el-collapse-item>
</el-collapse-item>
</el-collapse>
</el-collapse>
</#if>
</#if>
</row>
</row>
<div v-else class="app-data-empty">{{ $t('
app.commonWords.noData
') }}</div>
<div v-else class="app-data-empty">{{ $t('
<#if langbase??>${langbase}.nodata</#if>
') }}</div>
<el-backtop target=".content-container .app-data-view"></el-backtop>
<el-backtop target=".content-container .app-data-view"></el-backtop>
</div>
</div>
</#if>
</#if>
...
...
@CONTROL/日历导航/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -134,7 +134,7 @@
...
@@ -134,7 +134,7 @@
* @type {(string)}
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public placeholder="<@getQuickSearchPlaceholder
view
/>";
public placeholder="<@getQuickSearchPlaceholder
ctrl
/>";
/**
/**
* 搜素值
* 搜素值
...
...
@CONTROL/日历部件/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
<#ibizinclude>
../../@MACRO/LANG_FUN.ftl
../../@MACRO/LANG_FUN.ftl
</#ibizinclude>
</#ibizinclude>
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
...
@@ -24,36 +27,42 @@ ${ctrl.render.code}
...
@@ -24,36 +27,42 @@ ${ctrl.render.code}
</#if>
</#if>
<context-menu-container>
<context-menu-container>
<#if ctrl.getCalendarStyle?? && ctrl.getCalendarStyle() == 'TIMELINE'>
<#if ctrl.getCalendarStyle?? && ctrl.getCalendarStyle() == 'TIMELINE'>
<el-timeline>
<template v-if="events.length >0">
<el-timeline-item
<el-timeline>
v-for="(item, index) in events"
<el-timeline-item
:key="item.title+index"
v-for="(item, index) in events"
:color="item.color"
:key="item.title+index"
:timestamp="item.start"
:color="item.color"
placement="top">
:timestamp="item.start"
<context-menu :contextMenuStyle="{width: '100%'}" :data="item" :renderContent="renderContextMenu">
placement="top">
<el-card @click.native="onEventClick(item,true,$event)" :class="item.className">
<context-menu :contextMenuStyle="{width: '100%'}" :data="item" :renderContent="renderContextMenu">
<#if ctrl.getPSSysCalendarItems()?? >
<el-card @click.native="onEventClick(item,true,$event)" :class="item.className">
<#list ctrl.getPSSysCalendarItems() as calendarItem>
<#if ctrl.getPSSysCalendarItems()?? >
<div v<#if calendarItem_index != 0>-else</#if>-if="<#if calendarItem.getPSLayoutPanel()??>true<#else>false</#if> && item.itemType == '${calendarItem.getItemType()}'">
<#list ctrl.getPSSysCalendarItems() as calendarItem>
<#if calendarItem.getPSLayoutPanel()??>
<div v<#if calendarItem_index != 0>-else</#if>-if="<#if calendarItem.getPSLayoutPanel()??>true<#else>false</#if> && item.itemType == '${calendarItem.getItemType()}'">
<#assign panel = calendarItem.getPSLayoutPanel()>
<#if calendarItem.getPSLayoutPanel()??>
<@ibizindent blank=18>
<#assign panel = calendarItem.getPSLayoutPanel()>
${P.getCtrlCode(panel, 'CONTROL.html').code}
<@ibizindent blank=18>
</@ibizindent>
${P.getCtrlCode(panel, 'CONTROL.html').code}
</@ibizindent>
</#if>
</div>
</#list>
<div v-else>
<h4>{{item.title}}</h4>
<p>{{$t('app.calendar.from')}} {{item.start}} {{$t('app.calendar.to')}} {{item.end}}</p>
</div>
</#if>
</#if>
</div>
</el-card>
</#list>
</context-menu>
<div v-else>
</el-timeline-item>
<h4>{{item.title}}</h4>
</el-timeline>
<p>{{$t('app.calendar.from')}} {{item.start}} {{$t('app.calendar.to')}} {{item.end}}</p>
</template>
</div>
<template v-else>
</#if>
<span class="app-data-empty">{{ $t('<#if langbase??>${langbase}.nodata</#if>') }}</span>
</el-card>
</template>
</context-menu>
</el-timeline-item>
</el-timeline>
<#else>
<#else>
<template v-if="events.length >0">
<div class="event-legends">
<div class="event-legends">
<#if ctrl.getPSSysCalendarItems()??>
<#if ctrl.getPSSysCalendarItems()??>
<#list ctrl.getPSSysCalendarItems() as calendarItem>
<#list ctrl.getPSSysCalendarItems() as calendarItem>
...
@@ -86,6 +95,10 @@ ${ctrl.render.code}
...
@@ -86,6 +95,10 @@ ${ctrl.render.code}
<modal v-model="modalVisible" width="250px" :title="$t('app.calendar.dateSelectModalTitle')" class-name='date-select-modal' @on-ok="gotoDate">
<modal v-model="modalVisible" width="250px" :title="$t('app.calendar.dateSelectModalTitle')" class-name='date-select-modal' @on-ok="gotoDate">
<el-date-picker style="width: 200px;" v-model="selectedGotoDate" type="date"></el-date-picker>
<el-date-picker style="width: 200px;" v-model="selectedGotoDate" type="date"></el-date-picker>
</modal>
</modal>
</template>
<template v-else>
<span class="app-data-empty">{{ $t('<#if langbase??>${langbase}.nodata</#if>') }}</span>
</template>
</#if>
</#if>
</context-menu-container>
</context-menu-container>
</div>
</div>
...
...
@CONTROL/日历部件/CONTROL.less.ftl
浏览文件 @
90d63163
...
@@ -12,6 +12,12 @@
...
@@ -12,6 +12,12 @@
.el-timeline{
.el-timeline{
padding-left: 2px;
padding-left: 2px;
}
}
.app-data-empty{
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
}
.event-legends{
.event-legends{
width: 100%;
width: 100%;
text-align: center;
text-align: center;
...
...
@CONTROL/树表格(增强)/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -21,6 +21,9 @@
...
@@ -21,6 +21,9 @@
:highlight-current-row="isSingleSelect"
:highlight-current-row="isSingleSelect"
@current-change="select"
@current-change="select"
>
>
<template slot="empty">
{{$t('<#if langbase??>${langbase}.nodata</#if>')}}
</template>
<#if ctrl.getPSDETreeColumns()??>
<#if ctrl.getPSDETreeColumns()??>
<#list ctrl.getPSDETreeColumns() as column>
<#list ctrl.getPSDETreeColumns() as column>
<el-table-column show-overflow-tooltip prop="${column.getName()?lower_case}" label="${column.getCaption()}"<#if column.getWidthUnit()!='STAR'> :width="${column.getWidth()?c}" <#else> :min-width="${column.getWidth()?c}" </#if> :align="'${column.getAlign()?lower_case}'">
<el-table-column show-overflow-tooltip prop="${column.getName()?lower_case}" label="${column.getCaption()}"<#if column.getWidthUnit()!='STAR'> :width="${column.getWidth()?c}" <#else> :min-width="${column.getWidth()?c}" </#if> :align="'${column.getAlign()?lower_case}'">
...
@@ -282,7 +285,23 @@
...
@@ -282,7 +285,23 @@
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public created() {
public created() {
this.load();
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public afterCreated() {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
if (Object.is('load', action)) {
this.load(data);
}
});
}
}
/**
/**
...
@@ -331,7 +350,7 @@
...
@@ -331,7 +350,7 @@
* 打开编辑数据
* 打开编辑数据
*
*
* @returns
* @returns
* @memberof
TreeTable
Base
* @memberof
${srfclassname('${ctrl.codeName}')}
Base
*/
*/
public opendata(args: any) {
public opendata(args: any) {
if(this.selections.length === 0) {
if(this.selections.length === 0) {
...
@@ -352,6 +371,27 @@
...
@@ -352,6 +371,27 @@
</#if>
</#if>
}
}
/**
* vue 生命周期
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public destroyed() {
this.afterDestroy();
}
/**
* 执行destroyed后的逻辑
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public afterDestroy() {
if (this.viewStateEvent) {
this.viewStateEvent.unsubscribe();
}
}
<#ibizinclude>
<#ibizinclude>
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
</#ibizinclude>
</#ibizinclude>
...
...
@CONTROL/树视图/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
...
@@ -24,6 +27,7 @@
...
@@ -24,6 +27,7 @@
@check="onCheck"
@check="onCheck"
@current-change="selectionChange"
@current-change="selectionChange"
:filter-node-method="filterNode"
:filter-node-method="filterNode"
:empty-text="$t('<#if langbase??>${langbase}.nodata</#if>')"
>
>
<template slot-scope="{ node, data }">
<template slot-scope="{ node, data }">
<context-menu :ref='data.id' :isBlocked="true" :contextMenuStyle="{width: '100%'}" :data="node" :renderContent="renderContextMenu" @showContext="showContext(data,$event)">
<context-menu :ref='data.id' :isBlocked="true" :contextMenuStyle="{width: '100%'}" :data="node" :renderContent="renderContextMenu" @showContext="showContext(data,$event)">
...
@@ -270,7 +274,7 @@ import UIService from '@/uiservice/ui-service';
...
@@ -270,7 +274,7 @@ import UIService from '@/uiservice/ui-service';
<#if childCtrl.getControlType() == "CONTEXTMENU">
<#if childCtrl.getControlType() == "CONTEXTMENU">
<#if childCtrl.getPSDEToolbarItems()??>
<#if childCtrl.getPSDEToolbarItems()??>
<#list childCtrl.getPSDEToolbarItems() as item>
<#list childCtrl.getPSDEToolbarItems() as item>
${childCtrl.getOwner().getNodeType()}_${item.name}: {name:'${item.name}',nodeOwner:'${childCtrl.getOwner().getNodeType()}',<#if item.getPSUIAction()??><#assign uiaction=item.getPSUIAction()>type: '${uiaction.getUIActionType()}', tag: '${uiaction.getUIActionTag()}'<#if (uiaction.getActionTarget()!="")>, actiontarget: '${uiaction.getActionTarget()}'</#if><#if uiaction.getNoPrivDisplayMode(view)??>, noprivdisplaymode:${uiaction.getNoPrivDisplayMode(view)}</#if><#if uiaction.getDataAccessAction()??>, dataaccaction:'${uiaction.getDataAccessAction()}'</#if>, visabled: true, disabled: false</#if>},
${childCtrl.getOwner().getNodeType()}_${item.name}: {name:'${item.name}',nodeOwner:'${childCtrl.getOwner().getNodeType()}',<#if item.getPSUIAction
?? && item.getPSUIAction
()??><#assign uiaction=item.getPSUIAction()>type: '${uiaction.getUIActionType()}', tag: '${uiaction.getUIActionTag()}'<#if (uiaction.getActionTarget()!="")>, actiontarget: '${uiaction.getActionTarget()}'</#if><#if uiaction.getNoPrivDisplayMode(view)??>, noprivdisplaymode:${uiaction.getNoPrivDisplayMode(view)}</#if><#if uiaction.getDataAccessAction()??>, dataaccaction:'${uiaction.getDataAccessAction()}'</#if>, visabled: true, disabled: false</#if>},
</#list>
</#list>
</#if>
</#if>
</#if>
</#if>
...
...
@CONTROL/树视图导航栏/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -135,7 +135,7 @@
...
@@ -135,7 +135,7 @@
* @type {(string)}
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public placeholder="<@getQuickSearchPlaceholder
view
/>";
public placeholder="<@getQuickSearchPlaceholder
ctrl
/>";
/**
/**
* 过滤值
* 过滤值
...
@@ -409,7 +409,7 @@
...
@@ -409,7 +409,7 @@
public onDrViewDatasChange($event: any): void {
public onDrViewDatasChange($event: any): void {
<#if ctrl.getPSDETree()??>
<#if ctrl.getPSDETree()??>
<#assign tree = ctrl.getPSDETree()/>
<#assign tree = ctrl.getPSDETree()/>
this.viewState.next({ tag: '${tree.name}', action: 'refresh_
cur
rent' });
this.viewState.next({ tag: '${tree.name}', action: 'refresh_
pa
rent' });
</#if>
</#if>
}
}
...
...
@CONTROL/流程导航栏/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -94,7 +94,7 @@
...
@@ -94,7 +94,7 @@
* @type {(string)}
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public placeholder="<@getQuickSearchPlaceholder
view
/>";
public placeholder="<@getQuickSearchPlaceholder
ctrl
/>";
/**
/**
* 过滤值
* 过滤值
...
...
@CONTROL/状态向导面板/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -16,12 +16,12 @@
...
@@ -16,12 +16,12 @@
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<layout class="app-wizard<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??> ${ctrl.getPSSysCss().getCssName()}</#if>">
<layout class="app-
state-
wizard<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??> ${ctrl.getPSSysCss().getCssName()}</#if>">
<#if ctrl.getPSDEWizard?? && ctrl.getPSDEWizard()?? && ctrl.getPSDEWizard().getPSDEWizardSteps?? && ctrl.getPSDEWizard().getPSDEWizardSteps()??>
<#if ctrl.getPSDEWizard?? && ctrl.getPSDEWizard()?? && ctrl.getPSDEWizard().getPSDEWizardSteps?? && ctrl.getPSDEWizard().getPSDEWizardSteps()??>
<div class="view-steps">
<div class="view-steps">
<div class="background-box"></div>
<div class="background-box"></div>
<div class="steps_icon" @click="handleClick('PRE')"><i class="el-icon-arrow-left"></i></div>
<div class="steps_icon" @click="handleClick('PRE')"><i class="el-icon-arrow-left"></i></div>
<el-steps class="wizard-steps" :active="(wizardForms.indexOf(activeForm) + 1)" finish-status="success">
<el-steps class="wizard-steps" :active="(wizardForms.indexOf(activeForm) + 1)" finish-status="success"
align-center
>
<#list ctrl.getPSDEWizard().getPSDEWizardSteps() as step>
<#list ctrl.getPSDEWizard().getPSDEWizardSteps() as step>
<el-step :class="{'app-active-step':activeForm==='<@getStepForm ctrlmodel=ctrl step=step />'?true:false}">
<el-step :class="{'app-active-step':activeForm==='<@getStepForm ctrlmodel=ctrl step=step />'?true:false}">
<template v-slot:title>
<template v-slot:title>
...
@@ -37,16 +37,16 @@
...
@@ -37,16 +37,16 @@
<#if ctrl.getPSDEEditForms()??>
<#if ctrl.getPSDEEditForms()??>
<#list ctrl.getPSDEEditForms() as form>
<#list ctrl.getPSDEEditForms() as form>
<#assign handler = form.getPSAjaxControlHandler() />
<#assign handler = form.getPSAjaxControlHandler() />
<el-popover v-model="stepVisiable['${form.getName()}']" ref="${form.getName()}_popover" popper-class="app-wizard-popover-container" placement="bottom-<#if form_has_next>start<#else>end</#if>" trigger="click">
<el-popover v-model="stepVisiable['${form.getName()}']" ref="${form.getName()}_popover" popper-class="app-
state-
wizard-popover-container" placement="bottom-<#if form_has_next>start<#else>end</#if>" trigger="click">
<div class="app-wizard-container">
<div class="app-
state-
wizard-container">
<div class="app-wizard-header">
<div class="app-
state-
wizard-header">
<div class="app-wizard-header-extra">
<div class="app-
state-
wizard-header-extra">
<Icon type="md-open" size="18" @click="handleOPen('${form.getName()}')"/>
<Icon type="md-open" size="18" @click="handleOPen('${form.getName()}')"/>
<Icon type="md-close" size="18" @click="handleClose('${form.getName()}')"/>
<Icon type="md-close" size="18" @click="handleClose('${form.getName()}')"/>
</div>
</div>
</div>
</div>
<div class="popover-title">${form.getLogicName()}</div>
<div class="popover-title">${form.getLogicName()}</div>
<div class="app-wizard-content">
<div class="app-
state-
wizard-content">
<view_${form.getName()}
<view_${form.getName()}
:key="'${form.name}'"
:key="'${form.name}'"
:viewState='wizardState'
:viewState='wizardState'
...
@@ -64,14 +64,14 @@
...
@@ -64,14 +64,14 @@
ref='${form.name}'>
ref='${form.name}'>
</view_${form.getName()}>
</view_${form.getName()}>
</div>
</div>
<div class="app-wizard-footer">
<div class="app-
state-
wizard-footer">
<i-button v-if="isVisiable('${form.name}','PREV')" @click="onClickPrev('${form.name}')" ><Icon type="ios-arrow-back"></Icon></i-button>
<i-button v-if="isVisiable('${form.name}','PREV')" @click="onClickPrev('${form.name}')" ><Icon type="ios-arrow-back"></Icon></i-button>
<i-button v-if="isVisiable('${form.name}','NEXT')" @click="onClickNext('${form.name}')" type="primary" long>{{$t('app.wizardPanel.next')}}</i-button>
<i-button v-if="isVisiable('${form.name}','NEXT')" @click="onClickNext('${form.name}')" type="primary" long>{{$t('app.wizardPanel.next')}}</i-button>
<i-button v-if="isVisiable('${form.name}','FINISH')" @click="onClickFinish('${form.name}')" type="primary" long>{{$t('app.wizardPanel.complete')}}</i-button>
<i-button v-if="isVisiable('${form.name}','FINISH')" @click="onClickFinish('${form.name}')" type="primary" long>{{$t('app.wizardPanel.complete')}}</i-button>
</div>
</div>
</div>
</div>
</el-popover>
</el-popover>
<drawer class="app-wizard-drawer" :closable="false" :value="drawerOpenStatus.isOpen && drawerOpenStatus.formName == '${form.name}'"
<drawer class="app-
state-
wizard-drawer" :closable="false" :value="drawerOpenStatus.isOpen && drawerOpenStatus.formName == '${form.name}'"
:width="600" title="${form.getLogicName()}" @on-visible-change="onVisibleChange($event)">
:width="600" title="${form.getLogicName()}" @on-visible-change="onVisibleChange($event)">
<view_${form.getName()}
<view_${form.getName()}
:key="'${form.name}'"
:key="'${form.name}'"
...
...
@CONTROL/状态向导面板/CONTROL.less.ftl
浏览文件 @
90d63163
.app-wizard {
.app-
state-
wizard {
background: #fff;
background: #fff;
height: 100%;
.view-steps{
.view-steps{
display: flex;
display: flex;
padding: 0 20px;
padding: 0 20px;
...
@@ -73,30 +72,30 @@
...
@@ -73,30 +72,30 @@
border-top: 2px solid rgb(225, 225, 225);
border-top: 2px solid rgb(225, 225, 225);
}
}
}
}
.app-wizard-popover-container{
.app-
state-
wizard-popover-container{
.app-wizard-container{
.app-
state-
wizard-container{
width: 100%;
width: 100%;
.popover-title{
.popover-title{
position: absolute;
position: absolute;
top: 14px;
top: 14px;
left: 13px;
left: 13px;
}
}
.app-wizard-header{
.app-
state-
wizard-header{
width: 100%;
width: 100%;
height: 30px;
height: 30px;
line-height: 22px;
line-height: 22px;
padding: 2px;
padding: 2px;
border-bottom: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-bottom: 10px;
margin-bottom: 10px;
.app-wizard-header-extra{
.app-
state-
wizard-header-extra{
float: right;
float: right;
}
}
}
}
.app-wizard-content{
.app-
state-
wizard-content{
width: 100%;
width: 100%;
padding: 4px 0px;
padding: 4px 0px;
}
}
.app-wizard-footer{
.app-
state-
wizard-footer{
display: flex;
display: flex;
}
}
}
}
...
@@ -104,7 +103,7 @@
...
@@ -104,7 +103,7 @@
.el-popper[x-placement^=bottom] {
.el-popper[x-placement^=bottom] {
margin-top: 0px;
margin-top: 0px;
}
}
.app-wizard-drawer{
.app-
state-
wizard-drawer{
.app-form {
.app-form {
height: calc(100% - 51px);
height: calc(100% - 51px);
}
}
...
...
@CONTROL/甘特图部件/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
<#ibizinclude>
../../@MACRO/LANG_FUN.ftl
../../@MACRO/LANG_FUN.ftl
</#ibizinclude>
</#ibizinclude>
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<gantt-elastic :class="ganttClass<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>" :tasks="tasks" :options="getOptions(this.locale)" :dynamic-style="dynamicStyle" @taskList-item-dblclick="taskClick" @task-item-expand="taskItemExpand">
<div class="app-gantt">
<gantt-elastic v-if="tasks.length >0" :class="ganttClass<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>" :tasks="tasks" :options="getOptions(this.locale)" :dynamic-style="dynamicStyle" @taskList-item-dblclick="taskClick" @task-item-expand="taskItemExpand">
</gantt-elastic>
</gantt-elastic>
<div v-else class="app-data-empty">{{$t('<#if langbase??>${langbase}.nodata</#if>')}}</div>
</div>
</#if>
</#if>
</template>
</template>
<#assign import_block>
<#assign import_block>
...
@@ -356,8 +362,16 @@ GanttElastic,
...
@@ -356,8 +362,16 @@ GanttElastic,
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public created() {
public created() {
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public afterCreated() {
this.locale = this.$i18n.locale;
this.locale = this.$i18n.locale;
this.load();
if(AppCenterService && AppCenterService.getMessageCenter()){
if(AppCenterService && AppCenterService.getMessageCenter()){
this.appStateEvent = AppCenterService.getMessageCenter().subscribe(({ name, action, data }) =>{
this.appStateEvent = AppCenterService.getMessageCenter().subscribe(({ name, action, data }) =>{
if(!Object.is(name,"${ctrl.getPSAppDataEntity().getCodeName()}")){
if(!Object.is(name,"${ctrl.getPSAppDataEntity().getCodeName()}")){
...
@@ -368,7 +382,15 @@ GanttElastic,
...
@@ -368,7 +382,15 @@ GanttElastic,
}
}
})
})
}
}
}
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
if (Object.is('load', action)) {
this.load(data);
}
});
}
/**
/**
* 点击事件
* 点击事件
...
@@ -402,6 +424,9 @@ GanttElastic,
...
@@ -402,6 +424,9 @@ GanttElastic,
if(this.appStateEvent){
if(this.appStateEvent){
this.appStateEvent.unsubscribe();
this.appStateEvent.unsubscribe();
}
}
if(this.viewStateEvent){
this.viewStateEvent.unsubscribe();
}
<#if destroyed_block??>
<#if destroyed_block??>
${destroyed_block}
${destroyed_block}
</#if>
</#if>
...
...
@CONTROL/甘特图部件/CONTROL.less.ftl
浏览文件 @
90d63163
.
gantt
{
.
app-gantt
{
height: 100%;
height: 100%;
.gantt-elastic__main-view-container {
.gantt {
flex-grow: 1;
height: 100%;
.gantt-elastic__main-view-container {
flex-grow: 1;
}
}
.app-data-empty{
height: 100%;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
}
}
}
}
<#ibizinclude>
<#ibizinclude>
...
...
@CONTROL/看板视图/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>
../@MACRO/CONTROL/LANGBASE.vue.ftl
</#ibizinclude>
<template>
<template>
<#if ctrl.render??>
<#if ctrl.render??>
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<div class="app-data-view-group<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<div class="app-data-view-group<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>">
<template v-for="(group, index) of groups">
<template v-if="items.length > 0">
<#if ctrl.groupRender??>
<template v-for="(group, index) of groups">
${ctrl.groupRender.code}
<#if ctrl.groupRender??>
<#else>
${ctrl.groupRender.code}
<div :key="group + index" class="dataview-group-content" style="<#if ctrl.getGroupWidth() gt 0>width: ${ctrl.getGroupWidth()?c}px;<#else>flex-grow: 1;</#if>">
<#else>
<div class="dataview-group-header<#if ctrl.getGroupPSSysCss()??> ${ctrl.getGroupPSSysCss().getCssName()}</#if>">
<div :key="group + index" class="dataview-group-content" style="<#if ctrl.getGroupWidth() gt 0>width: ${ctrl.getGroupWidth()?c}px;<#else>flex-grow: 1;</#if>">
{{ getGroupText(group.name) }}
<div class="dataview-group-header<#if ctrl.getGroupPSSysCss()??> ${ctrl.getGroupPSSysCss().getCssName()}</#if>">
<#if ctrl.getGroupPSUIActionGroup()??>
{{ getGroupText(group.name) }}
<Poptip trigger="hover" content="content" placement="bottom-end" style="float: right;">
<#if ctrl.getGroupPSUIActionGroup()??>
<Icon type="md-more" />
<Poptip trigger="hover" content="content" placement="bottom-end" style="float: right;">
<div slot="content" class="group-action">
<Icon type="md-more" />
<#if ctrl.getGroupPSUIActionGroup().getPSUIActions()??>
<div slot="content" class="group-action">
<#list ctrl.getGroupPSUIActionGroup().getPSUIActions() as action>
<#if ctrl.getGroupPSUIActionGroup().getPSUIActions()??>
<div class="group-action-item">
<#list ctrl.getGroupPSUIActionGroup().getPSUIActions() as action>
<i-button long @click="uiAction('${action.getCodeName()}', $event)">
<div class="group-action-item">
<#if action.getPSSysImage()??>
<i-button long @click="uiAction('${action.getCodeName()}', $event)">
<#if action.getPSSysImage().getImagePath()?length gt 0>
<#if action.getPSSysImage()??>
<img src="${action.getPSSysImage().getImagePath()}"/>
<#if action.getPSSysImage().getImagePath()?length gt 0>
<#else>
<img src="${action.getPSSysImage().getImagePath()}"/>
<i class="${action.getPSSysImage().getCssClass()}"></i>
<#else>
</#if>
<i class="${action.getPSSysImage().getCssClass()}"></i>
</#if>
</#if>
${action.getCaption()}
</i-button>
</div>
</#list>
</#if>
</#if>
${action.getCaption()}
</i-button>
</div>
</div>
</#list>
</Poptip>
</#if>
</div>
<draggable :list="group.items" group="${ctrl.name}" class="dataview-group-items" @change="onDragChange($event, group.name)">
<div v-for="(item, i) in group.items" :key="i" :class="{'dataview-group-item': true, 'is-select': item.isselected}" @click="handleClick(item)" @dblclick="handleDblClick(item)">
<#if ctrl.getItemPSLayoutPanel()??>
<#assign panel = ctrl.getItemPSLayoutPanel()>
<layout_${panel.getName()} name='${panel.name}' :inputData="item"></layout_${panel.getName()}>
<#elseif ctrl.itemRender??>
${ctrl.itemRender.code}
<#else>
{{ item.srfmajortext }}
</#if>
</#if>
</div>
</div>
</Poptip>
</draggable>
</#if>
</div>
</div>
<draggable :list="group.items" group="${ctrl.name}" class="dataview-group-items" @change="onDragChange($event, group.name)">
<div v-for="(item, i) in group.items" :key="i" :class="{'dataview-group-item': true, 'is-select': item.isselected}" @click="handleClick(item)" @dblclick="handleDblClick(item)">
<#if ctrl.getItemPSLayoutPanel()??>
<#assign panel = ctrl.getItemPSLayoutPanel()>
<layout_${panel.getName()} name='${panel.name}' :inputData="item"></layout_${panel.getName()}>
<#elseif ctrl.itemRender??>
${ctrl.itemRender.code}
<#else>
{{ item.srfmajortext }}
</#if>
</div>
</draggable>
</div>
</#if>
</template>
<#if ctrl.getGroupQuickPSDEToolbar()??>
<div class="quick-action">
<#if ctrl.getGroupQuickPSDEToolbar().getPSDEToolbarItems()??>
<#list ctrl.getGroupQuickPSDEToolbar().getPSDEToolbarItems() as toolbarItem>
<div class="quick-action-item" title="${toolbarItem.getCaption()}" @click="${ctrl.getGroupQuickPSDEToolbar().getName()}_click({tag: '${toolbarItem.getName()}'}, $event)">
<#if toolbarItem.getPSSysImage()??>
<#if toolbarItem.getPSSysImage().getImagePath()?length gt 0>
<img src="${toolbarItem.getPSSysImage().getImagePath()}"/>
<#else>
<i class="${toolbarItem.getPSSysImage().getCssClass()}"></i>
</#if>
</#if>
<#else>
</template>
<i class="el-icon-menu"></i>
<#if ctrl.getGroupQuickPSDEToolbar()??>
<div class="quick-action">
<#if ctrl.getGroupQuickPSDEToolbar().getPSDEToolbarItems()??>
<#list ctrl.getGroupQuickPSDEToolbar().getPSDEToolbarItems() as toolbarItem>
<div class="quick-action-item" title="${toolbarItem.getCaption()}" @click="${ctrl.getGroupQuickPSDEToolbar().getName()}_click({tag: '${toolbarItem.getName()}'}, $event)">
<#if toolbarItem.getPSSysImage()??>
<#if toolbarItem.getPSSysImage().getImagePath()?length gt 0>
<img src="${toolbarItem.getPSSysImage().getImagePath()}"/>
<#else>
<i class="${toolbarItem.getPSSysImage().getCssClass()}"></i>
</#if>
<#else>
<i class="el-icon-menu"></i>
</#if>
</div>
</#list>
</#if>
</#if>
</div>
</div>
</#list>
</#if>
</div>
</#if>
</#if>
</template>
<template v-else>
<span class="app-data-empty">{{ $t('<#if langbase??>${langbase}.nodata</#if>') }}</span>
</template>
</div>
</div>
</#if>
</#if>
</template>
</template>
...
...
@CONTROL/看板视图/CONTROL.less.ftl
浏览文件 @
90d63163
...
@@ -52,6 +52,12 @@
...
@@ -52,6 +52,12 @@
border-top-width: 1px;
border-top-width: 1px;
}
}
}
}
.app-data-empty{
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
}
}
}
<#ibizinclude>
<#ibizinclude>
../@MACRO/CSS/DEFAULT.less.ftl
../@MACRO/CSS/DEFAULT.less.ftl
...
...
@CONTROL/表单/CONTROL-BASE.vue#DETAIL_RAWITEM.ftl
浏览文件 @
90d63163
...
@@ -2,18 +2,20 @@
...
@@ -2,18 +2,20 @@
${item.render.code}
${item.render.code}
<#else>
<#else>
<app-rawitem
<app-rawitem
:viewparams="viewparams"
:context="context"
contentStyle="<#if item.getPSSysCss()??>${item.getPSSysCss().getCssName()}</#if>"
contentStyle="<#if item.getPSSysCss()??>${item.getPSSysCss().getCssName()}</#if>"
sizeStyle="<#if item.getRawItemHeight() gt 0>height: ${item.getRawItemHeight()?c}px;</#if><#if item.getRawItemWidth() gt 0>width: ${item.getRawItemWidth()?c}px;</#if>"
sizeStyle="<#if item.getRawItemHeight() gt 0>height: ${item.getRawItemHeight()?c}px;</#if><#if item.getRawItemWidth() gt 0>width: ${item.getRawItemWidth()?c}px;</#if>"
contentType="<#if item.getContentType?? && item.getContentType()??>${item.getContentType()}</#if>"
contentType="<#if item.getContentType?? && item.getContentType()??>${item.getContentType()}</#if>"
<#if item.getRawContent?? && item.getRawContent()??>
rawContent="${item.getRawContent()}"
</#if>
<#if item.getHtmlContent?? && item.getHtmlContent()??>
<#if item.getHtmlContent?? && item.getHtmlContent()??>
htmlContent="${item.getHtmlContent()}
"
:htmlContent="`${item.getHtmlContent()}`
"
</#if>
</#if>
<#if item.getPSSysImage?? && item.getPSSysImage()??>
<#if item.getPSSysImage?? && item.getPSSysImage()??>
<#assign img=item.getPSSysImage()>
<#assign img=item.getPSSysImage()>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
imageClass="${img.getCssClass()}"</#if></#if>>
imageClass="${img.getCssClass()}"</#if></#if>>
<#if item.getContentType?? && item.getContentType() == 'RAW'>
${item.getRawContent()}
</#if>
</app-rawitem>
</app-rawitem>
</#if>
</#if>
\ No newline at end of file
@CONTROL/表单/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -278,7 +278,7 @@ import { Environment } from '@/environments/environment';
...
@@ -278,7 +278,7 @@ import { Environment } from '@/environments/environment';
</#if>
</#if>
<#if ctrl.getPSDEFormItemVRs()??>
<#if ctrl.getPSDEFormItemVRs()??>
<#list ctrl.getPSDEFormItemVRs() as fideValueRule>
<#list ctrl.getPSDEFormItemVRs() as fideValueRule>
<#if fideValueRule.getPSDEFormItemName()
== formdetail.getName()
>
<#if fideValueRule.getPSDEFormItemName()
?lower_case == formdetail.getName()?lower_case
>
<#-- 系统值规则 -->
<#-- 系统值规则 -->
<#if fideValueRule.getPSSysValueRule()??>
<#if fideValueRule.getPSSysValueRule()??>
<#assign valueRule = fideValueRule.getPSSysValueRule()/>
<#assign valueRule = fideValueRule.getPSSysValueRule()/>
...
@@ -293,8 +293,8 @@ import { Environment } from '@/environments/environment';
...
@@ -293,8 +293,8 @@ import { Environment } from '@/environments/environment';
<#-- 属性值规则 -->
<#-- 属性值规则 -->
<#if fideValueRule.getCheckMode?? && fideValueRule.getCheckMode()?? && fideValueRule.getCheckMode() != 2 && fideValueRule.getPSDEFValueRule?? && fideValueRule.getPSDEFValueRule()??>
<#if fideValueRule.getCheckMode?? && fideValueRule.getCheckMode()?? && fideValueRule.getCheckMode() != 2 && fideValueRule.getPSDEFValueRule?? && fideValueRule.getPSDEFValueRule()??>
<#assign deRule = fideValueRule.getPSDEFValueRule()/>
<#assign deRule = fideValueRule.getPSDEFValueRule()/>
{validator:(rule:any, value:any)=>{return this.verifyDeRules("${fideValueRule.getPSDEFormItemName()
}").isPast},message: this.verifyDeRules("${fideValueRule.getPSDEFormItemName()
}").infoMessage, trigger: 'change' },
{validator:(rule:any, value:any)=>{return this.verifyDeRules("${fideValueRule.getPSDEFormItemName()
?lower_case}").isPast},message: this.verifyDeRules("${fideValueRule.getPSDEFormItemName()?lower_case
}").infoMessage, trigger: 'change' },
{validator:(rule:any, value:any)=>{return this.verifyDeRules("${fideValueRule.getPSDEFormItemName()
}").isPast},message: this.verifyDeRules("${fideValueRule.getPSDEFormItemName()
}").infoMessage, trigger: 'blur' },
{validator:(rule:any, value:any)=>{return this.verifyDeRules("${fideValueRule.getPSDEFormItemName()
?lower_case}").isPast},message: this.verifyDeRules("${fideValueRule.getPSDEFormItemName()?lower_case
}").infoMessage, trigger: 'blur' },
</#if>
</#if>
</#if>
</#if>
</#list>
</#list>
...
@@ -317,7 +317,7 @@ import { Environment } from '@/environments/environment';
...
@@ -317,7 +317,7 @@ import { Environment } from '@/environments/environment';
<#if fideValueRule.getCheckMode?? && fideValueRule.getCheckMode()?? && fideValueRule.getCheckMode() != 2 && fideValueRule.getPSDEFValueRule?? && fideValueRule.getPSDEFValueRule()??>
<#if fideValueRule.getCheckMode?? && fideValueRule.getCheckMode()?? && fideValueRule.getCheckMode() != 2 && fideValueRule.getPSDEFValueRule?? && fideValueRule.getPSDEFValueRule()??>
<#assign deRule = fideValueRule.getPSDEFValueRule()/>
<#assign deRule = fideValueRule.getPSDEFValueRule()/>
<#if fideValueRule.getPSDEFormItemName?? && fideValueRule.getPSDEFormItemName()??>
<#if fideValueRule.getPSDEFormItemName?? && fideValueRule.getPSDEFormItemName()??>
${fideValueRule.getPSDEFormItemName()}:[
${fideValueRule.getPSDEFormItemName()
?lower_case
}:[
<#if deRule.getPSDEFVRGroupCondition?? && deRule.getPSDEFVRGroupCondition()?? && deRule.getPSDEFVRGroupCondition().getPSDEFVRConditions?? && deRule.getPSDEFVRGroupCondition().getPSDEFVRConditions()??>
<#if deRule.getPSDEFVRGroupCondition?? && deRule.getPSDEFVRGroupCondition()?? && deRule.getPSDEFVRGroupCondition().getPSDEFVRConditions?? && deRule.getPSDEFVRGroupCondition().getPSDEFVRConditions()??>
<#list deRule.getPSDEFVRGroupCondition().getPSDEFVRConditions() as condItem>
<#list deRule.getPSDEFVRGroupCondition().getPSDEFVRConditions() as condItem>
<@getDeRule condItem />
<@getDeRule condItem />
...
@@ -858,12 +858,12 @@ import { Environment } from '@/environments/environment';
...
@@ -858,12 +858,12 @@ import { Environment } from '@/environments/environment';
const arg: any = { ...JSON.parse(JSON.stringify(this.data)) } ;
const arg: any = { ...JSON.parse(JSON.stringify(this.data)) } ;
Object.assign(arg, { srfactionparam: result.datas });
Object.assign(arg, { srfactionparam: result.datas });
const details: string[] = [<#list itemUpdate.getPSDEFIUpdateDetails() as detail><#if detail_index gt 0>, </#if>'${detail.getPSDEFormDetailName()?lower_case}'</#list>];
const details: string[] = [<#list itemUpdate.getPSDEFIUpdateDetails() as detail><#if detail_index gt 0>, </#if>'${detail.getPSDEFormDetailName()?lower_case}'</#list>];
this.updateFormItems('${itemUpdate.
codeName
}', arg, details, ${itemUpdate.isShowBusyIndicator()?c});
this.updateFormItems('${itemUpdate.
getPSAppDEMethod().getCodeName()
}', arg, details, ${itemUpdate.isShowBusyIndicator()?c});
}
}
});
});
<#else>
<#else>
const details: string[] = [<#list itemUpdate.getPSDEFIUpdateDetails() as detail><#if detail_index gt 0>, </#if>'${detail.getPSDEFormDetailName()?lower_case}'</#list>];
const details: string[] = [<#list itemUpdate.getPSDEFIUpdateDetails() as detail><#if detail_index gt 0>, </#if>'${detail.getPSDEFormDetailName()?lower_case}'</#list>];
this.updateFormItems('${itemUpdate.
codeName
}', this.data, details, ${itemUpdate.isShowBusyIndicator()?c});
this.updateFormItems('${itemUpdate.
getPSAppDEMethod().getCodeName()
}', this.data, details, ${itemUpdate.isShowBusyIndicator()?c});
</#if>
</#if>
}
}
</#if>
</#if>
...
...
@CONTROL/表格/CONTROL-BASE.vue#COLUMN.ftl
浏览文件 @
90d63163
...
@@ -127,7 +127,7 @@
...
@@ -127,7 +127,7 @@
</#if>
</#if>
<template <#if (ctrl.isEnableRowEdit() && item.isEnableRowEdit())>v-if="!actualIsOpenEdit"</#if>>
<template <#if (ctrl.isEnableRowEdit() && item.isEnableRowEdit())>v-if="!actualIsOpenEdit"</#if>>
<#if item.getPSDEUIAction?? && item.getPSDEUIAction()??>
<#if item.getPSDEUIAction?? && item.getPSDEUIAction()??>
<a @click="uiAction(row, '${item.getPSDEUIAction().getUIActionTag()}', $event)">
<a
v-show="row.${item.getPSDEUIAction().getUIActionTag()}.visabled" :disabled="row.${item.getPSDEUIAction().getUIActionTag()}.disabled" :style="{'display': 'block'}"
@click="uiAction(row, '${item.getPSDEUIAction().getUIActionTag()}', $event)">
</#if>
</#if>
<#if (item.render??)>
<#if (item.render??)>
<#-- BEGIN:列绘制 -->
<#-- BEGIN:列绘制 -->
...
@@ -216,7 +216,7 @@
...
@@ -216,7 +216,7 @@
</app-column-link >
</app-column-link >
<#else>
<#else>
<#if item.getPSDEUIAction?? && item.getPSDEUIAction()??>
<#if item.getPSDEUIAction?? && item.getPSDEUIAction()??>
<a @click="uiAction(row, '${item.getPSDEUIAction().getUIActionTag()}', $event)">
<a
v-show="row.${item.getPSDEUIAction().getUIActionTag()}.visabled" :disabled="row.${item.getPSDEUIAction().getUIActionTag()}.disabled" :style="{'display': 'block'}"
@click="uiAction(row, '${item.getPSDEUIAction().getUIActionTag()}', $event)">
</#if>
</#if>
<#if item.getValueFormat()?? && item.getValueFormat() != "%1$s">
<#if item.getValueFormat()?? && item.getValueFormat() != "%1$s">
<app-format-data format="${item.getValueFormat()}" :data="row.${item.getName()?lower_case}"></app-format-data>
<app-format-data format="${item.getValueFormat()}" :data="row.${item.getName()?lower_case}"></app-format-data>
...
...
@CONTROL/表格/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@CONTROL/表格/SERVICE.ts.ftl
浏览文件 @
90d63163
...
@@ -236,7 +236,7 @@ import ${srfclassname('${aggAppDataEntity.getCodeName()}')}Service from '@/servi
...
@@ -236,7 +236,7 @@ import ${srfclassname('${aggAppDataEntity.getCodeName()}')}Service from '@/servi
result.then((response) => {
result.then((response) => {
//处理返回数据,补充判断标识
//处理返回数据,补充判断标识
if(response.data){
if(response.data){
Object.assign(response.data,{srfuf:
0
});
Object.assign(response.data,{srfuf:
'0'
});
}
}
resolve(response);
resolve(response);
}).catch(response => {
}).catch(response => {
...
@@ -445,7 +445,7 @@ import ${srfclassname('${aggAppDataEntity.getCodeName()}')}Service from '@/servi
...
@@ -445,7 +445,7 @@ import ${srfclassname('${aggAppDataEntity.getCodeName()}')}Service from '@/servi
requestData[item.prop] = context[item.name];
requestData[item.prop] = context[item.name];
}
}
}else{
}else{
if(item && item.isEditable && item.prop && item.name &&
(data[item.name] || Object.is(data[item.name],0) || Object.is(data[item.name],""))
){
if(item && item.isEditable && item.prop && item.name &&
data.hasOwnProperty(item.name)
){
requestData[item.prop] = data[item.name];
requestData[item.prop] = data[item.name];
}
}
}
}
...
...
@CONTROL/表格导航/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -168,7 +168,7 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
...
@@ -168,7 +168,7 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
* @type {(string)}
* @type {(string)}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
*/
public placeholder="<@getQuickSearchPlaceholder
view
/>";
public placeholder="<@getQuickSearchPlaceholder
ctrl
/>";
/**
/**
* 搜素值
* 搜素值
...
...
@CONTROL/视图布局面板/实体分页导航视图/VIEW.vue.ftl
浏览文件 @
90d63163
...
@@ -12,6 +12,9 @@
...
@@ -12,6 +12,9 @@
<#ibizinclude>
<#ibizinclude>
../@MACRO/View_Pos_Body_Msgs.vue.ftl
../@MACRO/View_Pos_Body_Msgs.vue.ftl
</#ibizinclude>
</#ibizinclude>
<#if view.hasPSControl('statewizardpanel')>
${P.getCtrlCode('statewizardpanel', 'CONTROL.html').code}
</#if>
<#if view.hasPSControl('tabexppanel')>
<#if view.hasPSControl('tabexppanel')>
${P.getCtrlCode('tabexppanel', 'CONTROL.html').code}
${P.getCtrlCode('tabexppanel', 'CONTROL.html').code}
</#if>
</#if>
...
...
@CONTROL/门户部件/CONTROL-BASE.vue.ftl
浏览文件 @
90d63163
...
@@ -155,19 +155,21 @@
...
@@ -155,19 +155,21 @@
${ctrl.render.code}
${ctrl.render.code}
<#else>
<#else>
<app-rawitem
<app-rawitem
:viewparams="viewparams"
:context="context"
contentStyle="<#if ctrl.getPSSysCss()??>${ctrl.getPSSysCss().getCssName()}</#if>"
contentStyle="<#if ctrl.getPSSysCss()??>${ctrl.getPSSysCss().getCssName()}</#if>"
sizeStyle="<#if ctrl.getRawItemHeight() gt 0>height: ${ctrl.getRawItemHeight()?c}px;</#if><#if ctrl.getRawItemWidth() gt 0>width: ${ctrl.getRawItemWidth()?c}px;</#if>"
sizeStyle="<#if ctrl.getRawItemHeight() gt 0>height: ${ctrl.getRawItemHeight()?c}px;</#if><#if ctrl.getRawItemWidth() gt 0>width: ${ctrl.getRawItemWidth()?c}px;</#if>"
contentType="<#if ctrl.getContentType?? && ctrl.getContentType()??>${ctrl.getContentType()}</#if>"
contentType="<#if ctrl.getContentType?? && ctrl.getContentType()??>${ctrl.getContentType()}</#if>"
<#if ctrl.getRawContent?? && ctrl.getRawContent()??>
rawContent="${ctrl.getRawContent()}"
</#if>
<#if ctrl.getHtmlContent?? && ctrl.getHtmlContent()??>
<#if ctrl.getHtmlContent?? && ctrl.getHtmlContent()??>
htmlContent="${ctrl.getHtmlContent()}
"
:htmlContent="`${ctrl.getHtmlContent()}`
"
</#if>
</#if>
<#if ctrl.getPSSysImage?? && ctrl.getPSSysImage()??>
<#if ctrl.getPSSysImage?? && ctrl.getPSSysImage()??>
<#assign img=ctrl.getPSSysImage()>
<#assign img=ctrl.getPSSysImage()>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
imageClass="${img.getCssClass()}"</#if></#if>>
imageClass="${img.getCssClass()}"</#if></#if>>
<#if ctrl.getContentType?? && ctrl.getContentType() == 'RAW'>
${ctrl.getRawContent()}
</#if>
</app-rawitem>
</app-rawitem>
</#if>
</#if>
</div>
</div>
...
...
@CONTROL/面板/CONTROL-BASE.vue#ITEM_RAWITEM.ftl
浏览文件 @
90d63163
...
@@ -3,20 +3,21 @@
...
@@ -3,20 +3,21 @@
${item.render.code}
${item.render.code}
<#else>
<#else>
<app-rawitem
<app-rawitem
:viewparams="viewparams"
:context="context"
contentStyle="<#if item.getPSSysCss()??>${item.getPSSysCss().getCssName()}</#if>"
contentStyle="<#if item.getPSSysCss()??>${item.getPSSysCss().getCssName()}</#if>"
sizeStyle="<#if item.getRawItemHeight() gt 0>height: ${item.getRawItemHeight()?c}px;</#if><#if item.getRawItemWidth() gt 0>width: ${item.getRawItemWidth()?c}px;</#if>"
sizeStyle="<#if item.getRawItemHeight() gt 0>height: ${item.getRawItemHeight()?c}px;</#if><#if item.getRawItemWidth() gt 0>width: ${item.getRawItemWidth()?c}px;</#if>"
contentType="<#if item.getContentType?? && item.getContentType()??>${item.getContentType()}</#if>"
contentType="<#if item.getContentType?? && item.getContentType()??>${item.getContentType()}</#if>"
caption="<#if item.getCaption?? && item.getCaption()??>${item.getCaption()}</#if>"
<#if item.getRawContent?? && item.getRawContent()??>
rawContent="${item.getRawContent()}"
</#if>
<#if item.getHtmlContent?? && item.getHtmlContent()??>
<#if item.getHtmlContent?? && item.getHtmlContent()??>
htmlContent="${item.getHtmlContent()}
"
:htmlContent="`${item.getHtmlContent()}`
"
</#if>
</#if>
<#if item.getPSSysImage?? && item.getPSSysImage()??>
<#if item.getPSSysImage?? && item.getPSSysImage()??>
<#assign img=item.getPSSysImage()>
<#assign img=item.getPSSysImage()>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
<#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>
imageClass="${img.getCssClass()}"</#if></#if>>
imageClass="${img.getCssClass()}"</#if></#if>>
<#if item.getContentType?? && item.getContentType() == 'RAW'>
${item.getRawContent()}
</#if>
</app-rawitem>
</app-rawitem>
</#if>
</#if>
</#assign>
</#assign>
...
...
@EDITOR/@MACRO/GRID/DEFAULT.vue.ftl
浏览文件 @
90d63163
<#if
item
.render??>
<#if
editor?? && editor
.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box
<input-box
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
v-model="row[column.property]"
v-model="row[column.property]"
style="${item.getEditorCssStyle()}"
style="${item.getEditorCssStyle()}"
type="text"
type="text"
...
...
@EDITOR/@MACRO/PANEL/DEFAULT.vue.ftl
浏览文件 @
90d63163
<#if
item
.render??>
<#if
editor?? && editor
.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box
<input-box
v-model="data.${editor.getName()?lower_case}"
v-model="data.${editor.getName()?lower_case}"
...
...
@EDITOR/HTML编辑器/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item
.render??>
<#if
editor?? && editor
.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-rich-text-editor :formState="formState" :value="data.${editor.name}" @change="(val) =>{this.data.${editor.name} =val}" :disabled="detailsModel.${editor.name}.disabled" :data="JSON.stringify(this.data)" name="${editor.name}" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' <#if editor.getEditorHeight() gt 0> height={${editor.getEditorHeight()?c}}</#if> style="${editor.getEditorCssStyle()}"></app-rich-text-editor>
<app-rich-text-editor :formState="formState" :value="data.${editor.name}" @change="(val) =>{this.data.${editor.name} =val}" :disabled="detailsModel.${editor.name}.disabled" :data="JSON.stringify(this.data)" name="${editor.name}" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' <#if editor.getEditorHeight() gt 0> height={${editor.getEditorHeight()?c}}</#if> style="${editor.getEditorCssStyle()}"></app-rich-text-editor>
</#if>
</#if>
\ No newline at end of file
@EDITOR/HTML编辑器/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item
.render??>
<#if
editor?? && editor
.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-rich-text-editor :formState="formState" :value="data.${editor.name}" @change="(val) =>{this.data.${editor.name} =val;panelEditItemChange(data, '${editor.name?lower_case}', val)}" :disabled="detailsModel.${item.getCodeName()}.disabled" :data="JSON.stringify(this.data)" name="${editor.name}" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' <#if editor.getEditorHeight() gt 0> height={${editor.getEditorHeight()?c}}</#if> style="${editor.getEditorCssStyle()}"></app-rich-text-editor>
<app-rich-text-editor :formState="formState" :value="data.${editor.name}" @change="(val) =>{this.data.${editor.name} =val;panelEditItemChange(data, '${editor.name?lower_case}', val)}" :disabled="detailsModel.${item.getCodeName()}.disabled" :data="JSON.stringify(this.data)" name="${editor.name}" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' <#if editor.getEditorHeight() gt 0> height={${editor.getEditorHeight()?c}}</#if> style="${editor.getEditorCssStyle()}"></app-rich-text-editor>
</#if>
</#if>
\ No newline at end of file
@EDITOR/下拉列表框 (动态代码表国际化)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<dropdown-list
<dropdown-list
v-model="row[column.property]"
v-model="row[column.property]"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
:data="row"
:data="row"
:context="context"
:context="context"
:viewparams="viewparams"
:viewparams="viewparams"
...
...
@EDITOR/下拉列表框/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list
<dropdown-list
v-model="data.${editor.name}"
v-model="data.${editor.name}"
...
...
@EDITOR/下拉列表框/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list
<dropdown-list
v-model="row[column.property]"
v-model="row[column.property]"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
:data="row"
:data="row"
:context="context"
:context="context"
:viewparams="viewparams"
:viewparams="viewparams"
...
...
@EDITOR/下拉列表框/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list
<dropdown-list
v-model="data.${editor.name?lower_case}"
v-model="data.${editor.name?lower_case}"
...
...
@EDITOR/下拉列表框(100宽度)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list
<dropdown-list
v-model="data.${editor.name}"
v-model="data.${editor.name}"
...
...
@EDITOR/下拉列表框(100宽度)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list
<dropdown-list
v-model="row[column.property]"
v-model="row[column.property]"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
style="${item.getEditorCssStyle()}width: 100px;"
style="${item.getEditorCssStyle()}width: 100px;"
:data="row"
:data="row"
:context="context"
:context="context"
...
...
@EDITOR/下拉列表框(100宽度)/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list
<dropdown-list
v-model="data.${editor.name?lower_case}"
v-model="data.${editor.name?lower_case}"
...
...
@EDITOR/下拉列表框(cron表达式)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<dropdown-list-mpicker
<dropdown-list-mpicker
v-model="row[column.property]"
v-model="row[column.property]"
:itemParam="<#if item.getEditorParam('ITEMPARAM','') != ''>${item.getEditorParam('ITEMPARAM','')}<#else>{}</#if>"
:itemParam="<#if item.getEditorParam('ITEMPARAM','') != ''>${item.getEditorParam('ITEMPARAM','')}<#else>{}</#if>"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
<#if item.getPSCodeList()??>
<#if item.getPSCodeList()??>
<#assign codelist=editor.getPSCodeList()>
<#assign codelist=editor.getPSCodeList()>
tag='${codelist.codeName}'
tag='${codelist.codeName}'
...
...
@EDITOR/下拉列表框(多选穿梭框)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<dropdown-list-mpicker
<dropdown-list-mpicker
v-model="row[column.property]"
v-model="row[column.property]"
:itemParam="<#if item.getEditorParam('ITEMPARAM','') != ''>${item.getEditorParam('ITEMPARAM','')}<#else>{}</#if>"
:itemParam="<#if item.getEditorParam('ITEMPARAM','') != ''>${item.getEditorParam('ITEMPARAM','')}<#else>{}</#if>"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
<#if item.getPSCodeList()??>
<#if item.getPSCodeList()??>
<#assign codelist=editor.getPSCodeList()>
<#assign codelist=editor.getPSCodeList()>
tag='${codelist.codeName}'
tag='${codelist.codeName}'
...
...
@EDITOR/下拉列表框(多选)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list-mpicker
<dropdown-list-mpicker
v-model="data.${editor.name}"
v-model="data.${editor.name}"
...
...
@EDITOR/下拉列表框(多选)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list-mpicker
<dropdown-list-mpicker
v-model="row[column.property]"
v-model="row[column.property]"
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
<#if item.getPSCodeList()??>
<#if item.getPSCodeList()??>
<#assign codelist=editor.getPSCodeList()>
<#assign codelist=editor.getPSCodeList()>
tag='${codelist.codeName}'
tag='${codelist.codeName}'
...
...
@EDITOR/下拉列表框(多选)/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<dropdown-list-mpicker
<dropdown-list-mpicker
v-model="data.${editor.name?lower_case}"
v-model="data.${editor.name?lower_case}"
...
...
@EDITOR/代码编辑器/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-code-editor :code="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" @change="(val) =>{this.data.${editor.name} =val}" codetype="javascript" ></app-code-editor>
<app-code-editor :code="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" @change="(val) =>{this.data.${editor.name} =val}" codetype="javascript" ></app-code-editor>
</#if>
</#if>
\ No newline at end of file
@EDITOR/单选项列表/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-radio-group
<app-radio-group
v-model="data.${editor.name}"
v-model="data.${editor.name}"
...
...
@EDITOR/单选项列表/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-radio-group
<app-radio-group
v-model="row[column.property]"
v-model="row[column.property]"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name="${item.name}"
name="${item.name}"
:data="row"
:data="row"
:context="context"
:context="context"
...
...
@EDITOR/单选项列表/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-radio-group
<app-radio-group
v-model="data.${editor.name?lower_case}"
v-model="data.${editor.name?lower_case}"
...
...
@EDITOR/图片控件/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-image-upload :multiple="true" :formState="formState" :ignorefieldvaluechange="ignorefieldvaluechange" @formitemvaluechange="onFormItemValueChange" :data="JSON.stringify(this.data)" name='${editor.name}' :value="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' style="${editor.getEditorCssStyle()}overflow: auto;"></app-image-upload>
<app-image-upload :multiple="true" :formState="formState" :ignorefieldvaluechange="ignorefieldvaluechange" @formitemvaluechange="onFormItemValueChange" :data="JSON.stringify(this.data)" name='${editor.name}' :value="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' style="${editor.getEditorCssStyle()}overflow: auto;"></app-image-upload>
</#if>
</#if>
\ No newline at end of file
@EDITOR/图片控件/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-file-upload
<app-file-upload
:formState="viewState"
:formState="viewState"
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
:data="JSON.stringify(row)"
:data="JSON.stringify(row)"
:name='column.property'
:name='column.property'
:value="row[column.property]"
:value="row[column.property]"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
:rowPreview="true"
:rowPreview="true"
:imageOnly="true"
:imageOnly="true"
:uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>'
:uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>'
...
...
@EDITOR/图片控件/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-file-upload
<app-file-upload
:formState="viewState"
:formState="viewState"
...
...
@EDITOR/图片控件(单项)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-image-upload :multiple="false" :formState="formState" :ignorefieldvaluechange="ignorefieldvaluechange" @formitemvaluechange="onFormItemValueChange" :data="JSON.stringify(this.data)" name='${editor.name}' :value="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' ></app-image-upload>
<app-image-upload :multiple="false" :formState="formState" :ignorefieldvaluechange="ignorefieldvaluechange" @formitemvaluechange="onFormItemValueChange" :data="JSON.stringify(this.data)" name='${editor.name}' :value="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" :uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>' ></app-image-upload>
</#if>
</#if>
\ No newline at end of file
@EDITOR/图片控件(单项)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-file-upload
<app-file-upload
:formState="viewState"
:formState="viewState"
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
:data="JSON.stringify(row)"
:data="JSON.stringify(row)"
:name='column.property'
:name='column.property'
:value="row[column.property]"
:value="row[column.property]"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
:rowPreview="true"
:rowPreview="true"
:imageOnly="true"
:imageOnly="true"
:uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>'
:uploadparams='<#if editor.getEditorParam('uploadparams','') != ''>${editor.getEditorParam('uploadparams','')}<#else>{}</#if>' :exportparams='<#if editor.getEditorParam('exportparams','') != ''>${editor.getEditorParam('exportparams','')}<#else>{}</#if>'
...
...
@EDITOR/图片控件(单项)/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-file-upload
<app-file-upload
:formState="viewState"
:formState="viewState"
...
...
@EDITOR/图片控件(旋转预览)/EDITOR.vue.ftl
0 → 100644
浏览文件 @
90d63163
<#if item.render??>
${item.render.code}
<#else>
<app-image-romate :formState="formState" :ignorefieldvaluechange="ignorefieldvaluechange" @formitemvaluechange="onFormItemValueChange" :data="this.data" name='${editor.name}' :disabled="detailsModel.${editor.name}.disabled" style="${editor.getEditorCssStyle()}"></app-image-romate>
</#if>
\ No newline at end of file
@EDITOR/图片控件(旋转预览)/template.properties
0 → 100644
浏览文件 @
90d63163
EDITORTYPE
=
PICTURE#ROMATE
\ No newline at end of file
@EDITOR/地址框(支持选择、AC)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
<app-mpicker
<app-mpicker
...
...
@EDITOR/地址框(支持选择、AC)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
<app-mpicker
<app-mpicker
:activeData="row"
:activeData="row"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
:curvalue="row[column.property]"
:curvalue="row[column.property]"
:name="column.property"
:name="column.property"
:context="context"
:context="context"
...
...
@EDITOR/地址框(选择)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
<app-mpicker
<app-mpicker
...
...
@EDITOR/地址框(选择)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
<app-mpicker
<app-mpicker
:activeData="row"
:activeData="row"
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
:curvalue="row[column.property]"
:curvalue="row[column.property]"
:name="column.property"
:name="column.property"
:context="context"
:context="context"
...
...
@EDITOR/多行输入框 (工作流审批意见控件时光轴样式)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<textarea class="ivu-input" :disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
<textarea class="ivu-input" :disabled="
getColumnDisabled(row,column.property)
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
</div>
</div>
\ No newline at end of file
@EDITOR/多行输入框 (工作流审批意见控件)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<textarea class="ivu-input" :disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
<textarea class="ivu-input" :disabled="
getColumnDisabled(row,column.property)
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
</div>
</div>
\ No newline at end of file
@EDITOR/多行输入框/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box v-model="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" type='textarea' style="${editor.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if>></input-box>
<input-box v-model="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" type='textarea' style="${editor.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if>></input-box>
</#if>
</#if>
\ No newline at end of file
@EDITOR/多行输入框/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<textarea class="ivu-input" :disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
<textarea class="ivu-input" :disabled="
getColumnDisabled(row,column.property)
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
</div>
</div>
</#if>
</#if>
\ No newline at end of file
@EDITOR/多行输入框/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<textarea
<textarea
...
...
@EDITOR/多行输入框(10行)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box v-model="data.${editor.name}" :textareaId="this.$util.createUUID()" :disabled="detailsModel.${editor.name}.disabled" type='textarea' textareaStyle="${editor.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if>></input-box>
<input-box v-model="data.${editor.name}" :textareaId="this.$util.createUUID()" :disabled="detailsModel.${editor.name}.disabled" type='textarea' textareaStyle="${editor.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if>></input-box>
</#if>
</#if>
\ No newline at end of file
@EDITOR/多行输入框(10行)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<textarea class="ivu-input" rows="10" :disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
<textarea class="ivu-input" rows="10" :disabled="
getColumnDisabled(row,column.property)
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" <#if item.getPlaceHolder()??> placeholder="${item.getPlaceHolder()}"</#if> @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></textarea>
</div>
</div>
</#if>
</#if>
\ No newline at end of file
@EDITOR/多行输入框(10行)/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<div class="ivu-input-wrapper ivu-input-wrapper-default ivu-input-type">
<textarea
<textarea
...
...
@EDITOR/密码框/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<i-input type="password" v-model="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" style="${editor.getEditorCssStyle()}"></i-input>
<i-input type="password" v-model="data.${editor.name}" :disabled="detailsModel.${editor.name}.disabled" style="${editor.getEditorCssStyle()}"></i-input>
</#if>
</#if>
\ No newline at end of file
@EDITOR/密码框/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box type="password" :disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></input-box>
<input-box type="password" :disabled="
getColumnDisabled(row,column.property)
" v-model="row[column.property]" style="${item.getEditorCssStyle()}" @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"></input-box>
</#if>
</#if>
\ No newline at end of file
@EDITOR/密码框/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box
<input-box
type="password"
type="password"
...
...
@EDITOR/开关部件/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-switch name='${editor.name}' :value="this.data.${editor.name}" @change="($event)=>{this.data.${editor.name} = $event} " :disabled="detailsModel.${editor.name}.disabled" style="${editor.getEditorCssStyle()}"></app-switch>
<app-switch name='${editor.name}' :value="this.data.${editor.name}" @change="($event)=>{this.data.${editor.name} = $event} " :disabled="detailsModel.${editor.name}.disabled" style="${editor.getEditorCssStyle()}"></app-switch>
</#if>
</#if>
\ No newline at end of file
@EDITOR/开关部件/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-switch name='${editor.name}' :value="row[column.property]" @change="($event)=>{row[column.property] = $event;gridEditItemChange(row, column.property, $event, $index)} " :disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
" style="${item.getEditorCssStyle()}"></app-switch>
<app-switch name='${editor.name}' :value="row[column.property]" @change="($event)=>{row[column.property] = $event;gridEditItemChange(row, column.property, $event, $index)} " :disabled="
getColumnDisabled(row,column.property)
" style="${item.getEditorCssStyle()}"></app-switch>
</#if>
</#if>
\ No newline at end of file
@EDITOR/开关部件/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-switch
<app-switch
name='${editor.name?lower_case}'
name='${editor.name?lower_case}'
...
...
@EDITOR/数值框/EDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box
<input-box
v-model="data.${editor.name}"
v-model="data.${editor.name}"
...
...
@EDITOR/数值框/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box
<input-box
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
v-model="row[column.property]"
v-model="row[column.property]"
<#if item.getUnitName?? && item.getUnitName()??>
<#if item.getUnitName?? && item.getUnitName()??>
unit="${item.getUnitName()}"
unit="${item.getUnitName()}"
...
...
@EDITOR/数值框/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<input-box
<input-box
type="number"
type="number"
...
...
@EDITOR/数据选择/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#-- 自填模式文本属性、值属性start -->
<#-- 自填模式文本属性、值属性start -->
...
...
@EDITOR/数据选择/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(下拉、数据链接)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(下拉视图、数据链接)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(下拉视图、数据链接)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item
.render??>
<#if
editor?? && editor
.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#if editor.getPSAppDataEntity?? && editor.getPSAppDataEntity()??>
<#if editor.getPSAppDataEntity?? && editor.getPSAppDataEntity()??>
deMajorField='${editor.getPSAppDataEntity().getMajorPSAppDEField().getCodeName()?lower_case}'
deMajorField='${editor.getPSAppDataEntity().getMajorPSAppDEField().getCodeName()?lower_case}'
...
...
@EDITOR/数据选择(下拉视图)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(下拉视图)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
<#if editor.getPickupPSAppView().getViewType() == 'DEMPICKUPVIEW'>
<#if editor.getPickupPSAppView().getViewType() == 'DEMPICKUPVIEW'>
:isSingleSelect="false"
:isSingleSelect="false"
</#if>
</#if>
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#if editor.getPSAppDataEntity?? && editor.getPSAppDataEntity()??>
<#if editor.getPSAppDataEntity?? && editor.getPSAppDataEntity()??>
deMajorField='${editor.getPSAppDataEntity().getMajorPSAppDEField().getCodeName()?lower_case}'
deMajorField='${editor.getPSAppDataEntity().getMajorPSAppDEField().getCodeName()?lower_case}'
...
...
@EDITOR/数据选择(下拉)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-picker
<app-picker
:formState="formState"
:formState="formState"
...
...
@EDITOR/数据选择(下拉)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<app-picker
<app-picker
:formState="viewState"
:formState="viewState"
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#if editor.getEditorParam("PICKUPDATA", "") != "">pickUpData="${editor.getEditorParam("PICKUPDATA", "")}"</#if>
<#-- 自填模式文本属性、值属性start -->
<#-- 自填模式文本属性、值属性start -->
...
...
@EDITOR/数据选择(嵌入选择视图)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if item.getRefPickupPSAppView()??>
<#if item.getRefPickupPSAppView()??>
<#assign pickupview = item.getRefPickupPSAppView()>
<#assign pickupview = item.getRefPickupPSAppView()>
...
...
@EDITOR/数据选择(嵌入选择视图)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if item.getRefPickupPSAppView()??>
<#if item.getRefPickupPSAppView()??>
<#assign pickupview = item.getRefPickupPSAppView()>
<#assign pickupview = item.getRefPickupPSAppView()>
...
...
@EDITOR/数据选择(数据链接)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(数据链接)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#-- 自填模式文本属性、值属性start -->
<#-- 自填模式文本属性、值属性start -->
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
...
...
@EDITOR/数据选择(无AC、数据链接)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(无AC、数据链接)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#-- 自填模式文本属性、值属性start -->
<#-- 自填模式文本属性、值属性start -->
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
...
...
@EDITOR/数据选择(无AC)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(无AC)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
:viewparams="viewparams"
:viewparams="viewparams"
:localContext =<@getNavigateContext editor />
:localContext =<@getNavigateContext editor />
:localParam =<@getNavigateParams editor />
:localParam =<@getNavigateParams editor />
:disabled="
row.srfuf === 1 ? (${item.getEnableCond()?c} & 2) !== 2 : (${item.getEnableCond()?c} & 1) !== 1
"
:disabled="
getColumnDisabled(row,column.property)
"
name='${editor.name}'
name='${editor.name}'
<#-- 自填模式文本属性、值属性start -->
<#-- 自填模式文本属性、值属性start -->
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
<#if editor.getPSAppDEACMode?? && editor.getPSAppDEACMode()??>
...
...
@EDITOR/数据选择(无按钮)/EDITOR.vue.ftl
浏览文件 @
90d63163
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<#if
item.render??>
<#if
editor?? && editor.render??>
${
item
.render.code}
${
editor
.render.code}
<#else>
<#else>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getEditorParam("PICKUPVIEW",true)??>
<#if editor.getPickupPSAppView()??>
<#if editor.getPickupPSAppView()??>
...
...
@EDITOR/数据选择(树选择)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/数据选择(请求数据)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/数据链接/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/数据链接/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/文件上传/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/文件上传/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/文件上传/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/文件上传(支持拖拽)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/文本框/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择器(新)/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择器(新)/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择器(新)/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_分钟/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_分钟/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_分钟/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_小时/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_小时/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_小时/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无小时/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无小时/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无小时/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无日期/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无日期/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无日期/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无日期无秒钟/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无日期无秒钟/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_无日期无秒钟/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_秒钟/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_秒钟/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/时间选择控件_秒钟/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/标签(旧)/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/标签/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/标签/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/标签/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/步进器/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/步进器/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/步进器/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/滑动输入条/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/滑动输入条/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/滑动输入条/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/用户自定义/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/直接内容/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/自动填充/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/自动填充/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/评分器/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/评分器/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/评分器/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/选项框/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/选项框/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/选项框/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/选项框列表/EDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/选项框列表/GRIDEIDTOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@EDITOR/选项框列表/PANELEDITOR.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@LOGIC/@UIACTION/后台调用/LOGIC.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@VIEW/@MACRO/VIEW_CONTENT-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@VIEW/@MACRO/VIEW_HEADER-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@VIEW/实体分页导航视图/VIEW-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@VIEW/实体多表单编辑视图(部件视图)/VIEW-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@VIEW/实体甘特视图 (部件视图)/VIEW-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
@VIEW/实体甘特视图/VIEW-BASE.vue.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
APP/src/locale/lang/en-US.ts.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
APP/src/locale/lang/zh-CN.ts.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
APP/src/locale/lanres/entities/%DE_PKGPATH%/%DE_PKGPATH%_en_US.ts.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
APP/src/locale/lanres/entities/%DE_PKGPATH%/%DE_PKGPATH%_zh_CN.ts.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
APP/src/mock/entity/%DE_PKGPATH%s/%DE_PKGPATH%s.ts.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
APP/src/uiservice/%DE_PKGPATH%/%DE_PKGPATH%-ui-service-base.ts.ftl
浏览文件 @
90d63163
此差异已折叠。
点击以展开。
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录