提交 0ea5f602 编写于 作者: laizhilong's avatar laizhilong

Merge remote-tracking branch 'origin/master'

## v7.0.0-alpha.10 [2020-6-18]
### Bug修复
分页导航视图页面刷新bug
表单项更新,实体行为调用不到bug
关系界面子界面保存不触发父界面保存
表单样式调整
### 功能新增及优化
#### 模板
表格操作列只显示图标时显示tooltip
门户部件高度为0时自适应
面板和多数据部件数据流向
列表,数据视图保存功能
门户部件标题界面行为tooltip
新增面包屑、应用切换器组件
#### 基础文件
formitem样式调整,label适配位置
表格行编辑切换,app-picker不显示
文件上传下载参数格式处理
## v7.0.0-alpha.9 [2020-6-11] ## v7.0.0-alpha.9 [2020-6-11]
### Bug修复 ### Bug修复
......
...@@ -13,5 +13,12 @@ ...@@ -13,5 +13,12 @@
.no-redirect { .no-redirect {
color: #97a8be; color: #97a8be;
cursor: text; cursor: text;
.curselected{
color: #2196F3;
font-weight: bold;
}
.app-breadcrumb-selected{
cursor: pointer;
}
} }
} }
\ No newline at end of file
<template> <template>
<el-breadcrumb class="app-breadcrumb" separator="/"> <el-breadcrumb class="app-breadcrumb" separator="/">
<transition-group name="breadcrumb"> <transition-group name="breadcrumb">
<el-breadcrumb-item v-for="(item, index) in breadcrumbs" :key="item.id"> <template v-if="Object.is(this.navModel,'route')">
<span v-if="index === breadcrumbs.length-1" class="no-redirect">{{ item.title }}</span> <el-breadcrumb-item v-for="(item, index) in breadcrumbs" :key="item.id">
<a v-else @click.prevent="handleLink(item)">{{ item.title }}</a> <span v-if="index === breadcrumbs.length-1" class="no-redirect">{{ item.title }}
</el-breadcrumb-item> <span v-if="item.isselected === true">
<dropdown trigger='click' @on-click="selectNavData($event,item)">
<span class="app-breadcrumb-selected">
<i class="el-icon-caret-bottom"></i>
</span>
<dropdown-menu slot='list'>
<dropdown-item v-for="(dataitem) in getPreNavData(item)" :name="dataitem.srfkey" :key="dataitem.srfkey">
<span :class="{'curselected':isCurSelected(item,dataitem)}">{{dataitem.srfmajortext}}</span>
</dropdown-item>
</dropdown-menu>
</dropdown>
</span>
</span>
<a v-else @click.prevent="handleLink(item)">{{ item.title }}</a>
</el-breadcrumb-item>
</template>
<template v-if="!Object.is(this.navModel,'route')">
<el-breadcrumb-item v-for="(item, index) in breadcrumbs" :key="item.path">
<span v-if="index === breadcrumbs.length-1" class="no-redirect" >{{ $t(item.meta.caption)}}</span>
<a v-else @click.prevent="handleLink(item)" >{{ $t(item.meta.caption) }}</a>
</el-breadcrumb-item>
</template>
</transition-group> </transition-group>
</el-breadcrumb> </el-breadcrumb>
</template> </template>
...@@ -12,6 +33,7 @@ ...@@ -12,6 +33,7 @@
<script lang="ts"> <script lang="ts">
import { Component, Vue, Watch, Prop } from 'vue-property-decorator' import { Component, Vue, Watch, Prop } from 'vue-property-decorator'
import { RouteRecord, Route } from 'vue-router' import { RouteRecord, Route } from 'vue-router'
import { Environment } from "@/environments/environment";
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import {Subscription } from 'rxjs'; import {Subscription } from 'rxjs';
...@@ -41,11 +63,22 @@ export default class Breadcrumb extends Vue { ...@@ -41,11 +63,22 @@ export default class Breadcrumb extends Vue {
@Prop() public indexViewTag!: string; @Prop() public indexViewTag!: string;
/** /**
* 首页路径 * 导航模式
* *
* @memberof Breadcrumb * @memberof Breadcrumb
*/ */
@Prop() public indexViewPath!: string; @Prop({default:'tab'}) public navModel?:string;
/**
* 监听路由
*
* @memberof Breadcrumb
*/
@Watch('$route')
private onRouteChange(route: Route) {
this.getBreadcrumb()
}
/** /**
* 导航服务事件 * 导航服务事件
...@@ -63,11 +96,13 @@ export default class Breadcrumb extends Vue { ...@@ -63,11 +96,13 @@ export default class Breadcrumb extends Vue {
*/ */
created() { created() {
this.getBreadcrumb(); this.getBreadcrumb();
this.serviceStateEvent = this.navDataService.serviceState.subscribe(({ action, data }) => { if(Object.is(this.navModel,"route")){
if (Object.is(action, 'refresh')) { this.serviceStateEvent = this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
this.getBreadcrumb(); if (Object.is(action, 'datarefresh')) {
} this.getBreadcrumb();
}); }
});
}
} }
/** /**
...@@ -76,8 +111,33 @@ export default class Breadcrumb extends Vue { ...@@ -76,8 +111,33 @@ export default class Breadcrumb extends Vue {
* @memberof Breadcrumb * @memberof Breadcrumb
*/ */
private getBreadcrumb() { private getBreadcrumb() {
this.breadcrumbs = this.navDataService.getNavData(); if(Object.is(this.navModel,"route")){
this.$forceUpdate(); this.breadcrumbs = this.navDataService.getNavData();
this.$forceUpdate();
}else{
this.breadcrumbs = this.$route.matched.filter((item) => {
return item.meta && item.meta.caption
})
}
}
/**
* 获取面包屑指定元素前一条数据
*
* @memberof Breadcrumb
*/
private getPreNavData(item:any){
let preNavData:any = this.navDataService.getPreNavDataById(item.id);
return preNavData.data;
}
/**
* 判断是否为当前选中项
*
* @memberof Breadcrumb
*/
private isCurSelected(item:any,singleItem:any){
return item.srfkey === singleItem.srfkey;
} }
/** /**
...@@ -86,18 +146,42 @@ export default class Breadcrumb extends Vue { ...@@ -86,18 +146,42 @@ export default class Breadcrumb extends Vue {
* @memberof Breadcrumb * @memberof Breadcrumb
*/ */
private handleLink(item: any) { private handleLink(item: any) {
// 首页 if(Object.is(this.navModel,"route")){
if(Object.is(item.id,this.indexViewTag)){ // 首页
if(this.$route.matched && this.$route.matched.length >0){ if(Object.is(item.id,this.indexViewTag)){
this.$router.push(`/${this.indexViewPath}`); this.$router.push((window.sessionStorage.getItem(Environment.AppName))as string);
}else{
// 非首页
this.$router.push(item.path).catch(err => {
console.warn(err);
});
} }
this.navDataService.removeNavData(item.id);
}else{ }else{
// 非首页 if(item && item.meta && item.meta.viewType && Object.is(item.meta.viewType,"APPINDEX")){
this.$router.push(item.path).catch(err => { let path: string | null = window.sessionStorage.getItem(Environment.AppName);
console.warn(err); if (path) {
}); this.$router.push({ path: path });
} else {
this.$router.push("/");
}
}else{
this.$router.push(item).catch(err => {
console.warn(err);
});
}
} }
this.navDataService.removeNavData(item.id); }
/**
* 切换导航行为
*
* @memberof Breadcrumb
*/
private selectNavData($event:any,item:any){
let preNavData:any = this.getPreNavData(item);
let curSrfkey:any = $event;
this.navDataService.serviceState.next({action:'viewrefresh',name:item.id, data:curSrfkey});
} }
/** /**
......
.menu-drawer {
.ivu-drawer-left {
left: 201px !important;
}
.ivu-drawer {
top: 64px !important;
}
.ivu-drawer-body {
padding: 32px !important;
.menuItems {
display: flex;
flex-wrap: wrap;
> .item {
margin: 0px 10px;
width: calc(33.333% - 20px);
padding: 0px 15px;
font-size: 13px;
transition: all 0.3s;
display: flex;
justify-content: space-between;
height: 32px;
align-items: center;
.star {
display: flex;
height: 100%;
width: 30px;
font-size: 15px;
align-items: center;
justify-content: center;
.ivu-icon-ios-star-outline{
display: none;
}
}
}
> .item:hover {
background-color: #eaeaea;
cursor: pointer;
.ivu-icon-ios-star-outline{
display: inline;
}
}
}
}
}
.sider-drawer {
.ivu-drawer {
background-color: #ffffff !important;
}
.ivu-drawer-body {
padding: 0px !important;
}
.ivu-drawer {
top: 64px !important;
}
.context-menu-drag {
display: flex;
.flip-list-move {
transition: transform 0.3s;
}
.menu-list {
width: 100%;
height: 100%;
.menu-header {
cursor: pointer;
border-bottom: 1px solid rgb(222, 222, 222);
height: 48px;
line-height: 48px;
display: flex;
align-items: center;
.menuicon {
display: inline-block;
width: 50px;
font-size: 16px;
text-align: center;
font-size: 22px;
}
.content {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
flex: 1 1 0%;
overflow: hidden;
font-size: 13px;
}
.forward {
margin: 0px 8px 0px 4px;
color: rgb(222, 222, 222);
font-size: 15px;
}
}
.list-group-item {
transition: background 1s;
-webkit-transition: background 1s;
.menuicon {
text-align: center;
}
.el-row {
height: 100%;
display: flex;
align-items: center;
padding: 0px 5px;
}
height: 40px;
cursor: pointer;
position: relative;
display: block;
margin-bottom: -1px;
transition: background-color 0.5s;
transition-timing-function: ease-in-out;
.handle {
cursor: move;
}
.bar {
display: flex;
.ivu-icon-ios-close {
cursor: pointer;
font-size: 25px;
}
}
}
.list-group-item:hover {
background-color: #f5f5f5;
.ivu-icon-ios-star-outline{
display: inline;
}
}
}
}
}
\ No newline at end of file
...@@ -247,7 +247,11 @@ export default class EditViewEngine extends ViewEngine { ...@@ -247,7 +247,11 @@ export default class EditViewEngine extends ViewEngine {
*/ */
public setTabCaption(info: string): void { public setTabCaption(info: string): void {
let viewdata: any = this.view.model; let viewdata: any = this.view.model;
if (viewdata && info && !Object.is(info, '') && (viewdata.srfTitle.indexOf("-") === -1)) { let index:number = viewdata.srfTitle.indexOf("-");
if (viewdata && info && !Object.is(info, '')) {
if(index !== -1){
viewdata.srfTitle = viewdata.srfTitle.substr(0,index);
}
if(this.view.$tabPageExp){ if(this.view.$tabPageExp){
this.view.$tabPageExp.setCurPageCaption(viewdata.srfTitle, viewdata.srfTitle, info); this.view.$tabPageExp.setCurPageCaption(viewdata.srfTitle, viewdata.srfTitle, info);
} }
......
...@@ -12,50 +12,50 @@ import userCustom_en_US from '@locale/lanres/userCustom/userCustom_en_US'; ...@@ -12,50 +12,50 @@ import userCustom_en_US from '@locale/lanres/userCustom/userCustom_en_US';
export default { export default {
app: { app: {
commonWords:{ commonWords:{
error: 'Error', error: "Error",
success: 'Success', success: "Success",
ok: 'OK', ok: "OK",
cancel: 'Cancel', cancel: "Cancel",
}, },
local:{ local:{
new: 'New' new: "New"
}, },
gridpage: { gridpage: {
choicecolumns: 'Choice columns', choicecolumns: "Choice columns",
refresh: 'refresh', refresh: "refresh",
show: 'Show', show: "Show",
records: 'records', records: "records",
totle: 'totle', totle: "totle",
}, },
tabpage: { tabpage: {
sureclosetip: { sureclosetip: {
title: 'Close warning', title: "Close warning",
content: 'Form data Changed, are sure close?', content: "Form data Changed, are sure close?",
}, },
closeall: 'Close all', closeall: "Close all",
closeother: 'Close other', closeother: "Close other",
}, },
fileUpload: { fileUpload: {
caption: 'Upload', caption: "Upload",
}, },
searchButton: { searchButton: {
search: 'Search', search: "Search",
reset: 'Reset', reset: "Reset",
}, },
calendar:{ calendar:{
today: 'today', today: "today",
month: 'month', month: "month",
week: 'week', week: "week",
day: 'day', day: "day",
list: 'list', list: "list",
dateSelectModalTitle: 'select the time you wanted', dateSelectModalTitle: "select the time you wanted",
gotoDate: 'goto', gotoDate: "goto",
}, },
// 非实体视图 // 非实体视图
views: { views: {
index: { index: {
caption: 'ibizlab-uaa', caption: "ibizlab-uaa",
title: 'ibizlab-uaa', title: "ibizlab-uaa",
}, },
}, },
utilview:{ utilview:{
...@@ -65,10 +65,10 @@ export default { ...@@ -65,10 +65,10 @@ export default {
}, },
menus: { menus: {
main: { main: {
menuitem3: '用户', menuitem3: "用户",
menuitem6: '角色', menuitem6: "角色",
menuitem1: '认证日志', menuitem1: "认证日志",
menuitem2: '接入应用', menuitem2: "接入应用",
}, },
}, },
}, },
......
...@@ -12,50 +12,50 @@ import userCustom_zh_CN from '@locale/lanres/userCustom/userCustom_zh_CN'; ...@@ -12,50 +12,50 @@ import userCustom_zh_CN from '@locale/lanres/userCustom/userCustom_zh_CN';
export default { export default {
app: { app: {
commonWords:{ commonWords:{
error: '失败', error: "失败",
success: '成功', success: "成功",
ok: '确认', ok: "确认",
cancel: '取消', cancel: "取消",
}, },
local:{ local:{
new: '新建' new: "新建"
}, },
gridpage: { gridpage: {
choicecolumns: '选择列', choicecolumns: "选择列",
refresh: '刷新', refresh: "刷新",
show: '显示', show: "显示",
records: '条', records: "条",
totle: '共', totle: "共",
}, },
tabpage: { tabpage: {
sureclosetip: { sureclosetip: {
title: '关闭提醒', title: "关闭提醒",
content: '表单数据已经修改,确定要关闭?', content: "表单数据已经修改,确定要关闭?",
}, },
closeall: '关闭所有', closeall: "关闭所有",
closeother: '关闭其他', closeother: "关闭其他",
}, },
fileUpload: { fileUpload: {
caption: '上传', caption: "上传",
}, },
searchButton: { searchButton: {
search: '搜索', search: "搜索",
reset: '重置', reset: "重置",
}, },
calendar:{ calendar:{
today: '今天', today: "今天",
month: '月', month: "月",
week: '周', week: "周",
day: '天', day: "天",
list: '列', list: "列",
dateSelectModalTitle: '选择要跳转的时间', dateSelectModalTitle: "选择要跳转的时间",
gotoDate: '跳转', gotoDate: "跳转",
}, },
// 非实体视图 // 非实体视图
views: { views: {
index: { index: {
caption: 'ibizlab-uaa', caption: "ibizlab-uaa",
title: 'ibizlab-uaa', title: "ibizlab-uaa",
}, },
}, },
utilview:{ utilview:{
...@@ -65,10 +65,10 @@ export default { ...@@ -65,10 +65,10 @@ export default {
}, },
menus: { menus: {
main: { main: {
menuitem3: '用户', menuitem3: "用户",
menuitem6: '角色', menuitem6: "角色",
menuitem1: '认证日志', menuitem1: "认证日志",
menuitem2: '接入应用', menuitem2: "接入应用",
}, },
}, },
}, },
......
export default { export default {
YesNo: { YesNo: {
'1': '是', "1": "是",
'0': '否', "0": "否",
empty: '', "empty": ""
}, },
AppType: { AppType: {
'INNER': '内置应用', "INNER": "内置应用",
'THIRD-PARTY': '第三方应用', "THIRD-PARTY": "第三方应用",
empty: '', "empty": ""
}, },
CLAuthCode: { CLAuthCode: {
'200': '成功', "200": "成功",
'400': '用户不存在', "400": "用户不存在",
'401.1': '密码错误', "401.1": "密码错误",
'401.2': '配置错误', "401.2": "配置错误",
'403.6': '地址被拒绝', "403.6": "地址被拒绝",
empty: '', "empty": ""
}, },
}; };
\ No newline at end of file
export default { export default {
YesNo: { YesNo: {
'1': '是', "1": "是",
'0': '否', "0": "否",
empty: '', "empty": "",
}, },
AppType: { AppType: {
'INNER': '内置应用', "INNER": "内置应用",
'THIRD-PARTY': '第三方应用', "THIRD-PARTY": "第三方应用",
empty: '', "empty": "",
}, },
CLAuthCode: { CLAuthCode: {
'200': '成功', "200": "成功",
'400': '用户不存在', "400": "用户不存在",
'401.1': '密码错误', "401.1": "密码错误",
'401.2': '配置错误', "401.2": "配置错误",
'403.6': '地址被拒绝', "403.6": "地址被拒绝",
empty: '', "empty": "",
}, },
}; };
\ No newline at end of file
export default { export default {
fields: { fields: {
id: '应用标识', id: "应用标识",
label: '应用名', label: "应用名",
systemid: '系统标识', systemid: "系统标识",
fullname: '全称', fullname: "全称",
type: '类型', type: "类型",
group: '分组', group: "分组",
icon: '图标', icon: "图标",
visabled: '可见', visabled: "可见",
addr: '地址', addr: "地址",
}, },
views: { views: {
editview: { editview: {
caption: "应用", caption: "应用",
title: '应用编辑视图', title: "应用编辑视图",
}, },
gridview: { gridview: {
caption: "应用", caption: "应用",
title: '应用表格视图', title: "应用表格视图",
}, },
}, },
main_form: { main_form: {
......
export default { export default {
fields: { fields: {
id: '应用标识', id: "应用标识",
label: '应用名', label: "应用名",
systemid: '系统标识', systemid: "系统标识",
fullname: '全称', fullname: "全称",
type: '类型', type: "类型",
group: '分组', group: "分组",
icon: '图标', icon: "图标",
visabled: '可见', visabled: "可见",
addr: '地址', addr: "地址",
}, },
views: { views: {
editview: { editview: {
caption: '应用', caption: "应用",
title: '应用编辑视图', title: "应用编辑视图",
}, },
gridview: { gridview: {
caption: '应用', caption: "应用",
title: '应用表格视图', title: "应用表格视图",
}, },
}, },
main_form: { main_form: {
details: { details: {
group1: '应用基本信息', group1: "应用基本信息",
formpage1: '基本信息', formpage1: "基本信息",
srforikey: '', srforikey: "",
srfkey: '应用标识', srfkey: "应用标识",
srfmajortext: '应用名', srfmajortext: "应用名",
srftempmode: '', srftempmode: "",
srfuf: '', srfuf: "",
srfdeid: '', srfdeid: "",
srfsourcekey: '', srfsourcekey: "",
pssystemid: '系统标识', pssystemid: "系统标识",
appid: '应用标识', appid: "应用标识",
appname: '应用名', appname: "应用名",
apptype: '类型', apptype: "类型",
appgroup: '分组', appgroup: "分组",
fullname: '全称', fullname: "全称",
icon: '图标', icon: "图标",
visabled: '可见', visabled: "可见",
addr: '地址', addr: "地址",
}, },
uiactions: { uiactions: {
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
pssystemid: '系统标识', pssystemid: "系统标识",
appid: '应用标识', appid: "应用标识",
appname: '应用名', appname: "应用名",
appgroup: '分组', appgroup: "分组",
apptype: '类型', apptype: "类型",
fullname: '全称', fullname: "全称",
icon: '图标', icon: "图标",
addr: '地址', addr: "地址",
visabled: '可见', visabled: "可见",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
n_pssystemid_eq: '系统标识(等于(=))', n_pssystemid_eq: "系统标识(等于(=))",
n_appname_like: '应用名(文本包含(%))', n_appname_like: "应用名(文本包含(%))",
}, },
uiactions: { uiactions: {
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem4: { tbitem4: {
caption: '编辑', caption: "编辑",
tip: '编辑', tip: "编辑",
}, },
tbitem6: { tbitem6: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
tbitem7: { tbitem7: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem24: { tbitem24: {
caption: '行编辑', caption: "行编辑",
tip: '行编辑', tip: "行编辑",
}, },
tbitem25: { tbitem25: {
caption: '新建行', caption: "新建行",
tip: '新建行', tip: "新建行",
}, },
tbitem26: { tbitem26: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem8: { tbitem8: {
caption: '删除', caption: "删除",
tip: '删除', tip: "删除",
}, },
tbitem9: { tbitem9: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem13: { tbitem13: {
caption: '导出', caption: "导出",
tip: '导出', tip: "导出",
}, },
tbitem10: { tbitem10: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem19: { tbitem19: {
caption: '过滤', caption: "过滤",
tip: '过滤', tip: "过滤",
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
}; };
\ No newline at end of file
export default { export default {
fields: { fields: {
logid: '标识', logid: "标识",
username: '用户全局名', username: "用户全局名",
personname: '用户名称', personname: "用户名称",
domain: '域', domain: "域",
authtime: '认证时间', authtime: "认证时间",
ipaddr: 'IP地址', ipaddr: "IP地址",
macaddr: 'MAC地址', macaddr: "MAC地址",
useragent: '客户端', useragent: "客户端",
authcode: '认证结果', authcode: "认证结果",
}, },
views: { views: {
gridview: { gridview: {
caption: "认证日志", caption: "认证日志",
title: '认证日志表格视图', title: "认证日志表格视图",
}, },
}, },
main_grid: { main_grid: {
......
export default { export default {
fields: { fields: {
logid: '标识', logid: "标识",
username: '用户全局名', username: "用户全局名",
personname: '用户名称', personname: "用户名称",
domain: '域', domain: "域",
authtime: '认证时间', authtime: "认证时间",
ipaddr: 'IP地址', ipaddr: "IP地址",
macaddr: 'MAC地址', macaddr: "MAC地址",
useragent: '客户端', useragent: "客户端",
authcode: '认证结果', authcode: "认证结果",
}, },
views: { views: {
gridview: { gridview: {
caption: '认证日志', caption: "认证日志",
title: '认证日志表格视图', title: "认证日志表格视图",
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
username: '用户全局名', username: "用户全局名",
personname: '用户名称', personname: "用户名称",
authtime: '认证时间', authtime: "认证时间",
authcode: '认证结果', authcode: "认证结果",
ipaddr: 'IP地址', ipaddr: "IP地址",
macaddr: 'MAC地址', macaddr: "MAC地址",
useragent: '客户端', useragent: "客户端",
domain: '域', domain: "域",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
n_username_like: '用户全局名(文本包含(%))', n_username_like: "用户全局名(文本包含(%))",
n_personname_like: '用户名称(文本包含(%))', n_personname_like: "用户名称(文本包含(%))",
n_authcode_eq: '认证结果(等于(=))', n_authcode_eq: "认证结果(等于(=))",
n_authtime_gtandeq: '认证时间(大于等于(>=))', n_authtime_gtandeq: "认证时间(大于等于(>=))",
n_authtime_ltandeq: '认证时间(小于等于(<=))', n_authtime_ltandeq: "认证时间(小于等于(<=))",
n_domain_like: '域(文本包含(%))', n_domain_like: "域(文本包含(%))",
}, },
uiactions: { uiactions: {
}, },
......
export default { export default {
fields: { fields: {
permissionid: '资源标识', permissionid: "资源标识",
permissionname: '资源名称', permissionname: "资源名称",
permissiontype: '资源类别', permissiontype: "资源类别",
pssystemid: '系统', pssystemid: "系统",
enable: '逻辑有效', enable: "逻辑有效",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
gridview: { gridview: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表表格视图', title: "权限表表格视图",
}, },
editview2: { editview2: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表编辑视图', title: "权限表编辑视图",
}, },
pickupview: { pickupview: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表数据选择视图', title: "权限表数据选择视图",
}, },
pickupgridview: { pickupgridview: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表选择表格视图', title: "权限表选择表格视图",
}, },
mpickupview: { mpickupview: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表数据多项选择视图', title: "权限表数据多项选择视图",
}, },
redirectview: { redirectview: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表数据重定向视图', title: "权限表数据重定向视图",
}, },
editview: { editview: {
caption: "权限/资源", caption: "权限/资源",
title: '权限表编辑视图', title: "权限表编辑视图",
}, },
}, },
main_form: { main_form: {
......
export default { export default {
fields: { fields: {
permissionid: '资源标识', permissionid: "资源标识",
permissionname: '资源名称', permissionname: "资源名称",
permissiontype: '资源类别', permissiontype: "资源类别",
pssystemid: '系统', pssystemid: "系统",
enable: '逻辑有效', enable: "逻辑有效",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
gridview: { gridview: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表表格视图', title: "权限表表格视图",
}, },
editview2: { editview2: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表编辑视图', title: "权限表编辑视图",
}, },
pickupview: { pickupview: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表数据选择视图', title: "权限表数据选择视图",
}, },
pickupgridview: { pickupgridview: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表选择表格视图', title: "权限表选择表格视图",
}, },
mpickupview: { mpickupview: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表数据多项选择视图', title: "权限表数据多项选择视图",
}, },
redirectview: { redirectview: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表数据重定向视图', title: "权限表数据重定向视图",
}, },
editview: { editview: {
caption: '权限/资源', caption: "权限/资源",
title: '权限表编辑视图', title: "权限表编辑视图",
}, },
}, },
main_form: { main_form: {
details: { details: {
formpage1: '基本信息', formpage1: "基本信息",
srfupdatedate: '更新时间', srfupdatedate: "更新时间",
srforikey: '', srforikey: "",
srfkey: '资源标识', srfkey: "资源标识",
srfmajortext: '资源名称', srfmajortext: "资源名称",
srftempmode: '', srftempmode: "",
srfuf: '', srfuf: "",
srfdeid: '', srfdeid: "",
srfsourcekey: '', srfsourcekey: "",
sys_permissionname: '资源名称', sys_permissionname: "资源名称",
sys_permissionid: '资源标识', sys_permissionid: "资源标识",
}, },
uiactions: { uiactions: {
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
sys_permissionid: '资源标识', sys_permissionid: "资源标识",
sys_permissionname: '资源名称', sys_permissionname: "资源名称",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
}, },
uiactions: { uiactions: {
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem4: { tbitem4: {
caption: '编辑', caption: "编辑",
tip: '编辑', tip: "编辑",
}, },
tbitem6: { tbitem6: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
tbitem7: { tbitem7: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem8: { tbitem8: {
caption: '删除', caption: "删除",
tip: '删除', tip: "删除",
}, },
tbitem9: { tbitem9: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem13: { tbitem13: {
caption: '导出', caption: "导出",
tip: '导出', tip: "导出",
}, },
tbitem10: { tbitem10: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem19: { tbitem19: {
caption: '过滤', caption: "过滤",
tip: '过滤', tip: "过滤",
}, },
}, },
editview2toolbar_toolbar: { editview2toolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
}; };
\ No newline at end of file
export default { export default {
fields: { fields: {
rolepermissionid: '角色权限关系表标识', rolepermissionid: "角色权限关系表标识",
roleid: '角色表标识', roleid: "角色表标识",
rolename: '角色名称', rolename: "角色名称",
permissionid: '权限表标识', permissionid: "权限表标识",
permissionname: '权限名称', permissionname: "权限名称",
permissiontype: '权限类型', permissiontype: "权限类型",
permissionenable: '权限类型', permissionenable: "权限类型",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
mpickupview: { mpickupview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表数据多项选择视图', title: "角色权限关系表数据多项选择视图",
}, },
redirectview: { redirectview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表数据重定向视图', title: "角色权限关系表数据重定向视图",
}, },
gridview: { gridview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表表格视图', title: "角色权限关系表表格视图",
}, },
pickupgridview: { pickupgridview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表选择表格视图', title: "角色权限关系表选择表格视图",
}, },
pickupview: { pickupview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表数据选择视图', title: "角色权限关系表数据选择视图",
}, },
editview: { editview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表编辑视图', title: "角色权限关系表编辑视图",
}, },
editview2: { editview2: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系表编辑视图', title: "角色权限关系表编辑视图",
}, },
customview: { customview: {
caption: "角色权限关系", caption: "角色权限关系",
title: '角色权限关系自定义视图', title: "角色权限关系自定义视图",
}, },
}, },
main_form: { main_form: {
......
export default { export default {
fields: { fields: {
rolepermissionid: '角色权限关系表标识', rolepermissionid: "角色权限关系表标识",
roleid: '角色表标识', roleid: "角色表标识",
rolename: '角色名称', rolename: "角色名称",
permissionid: '权限表标识', permissionid: "权限表标识",
permissionname: '权限名称', permissionname: "权限名称",
permissiontype: '权限类型', permissiontype: "权限类型",
permissionenable: '权限类型', permissionenable: "权限类型",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
mpickupview: { mpickupview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表数据多项选择视图', title: "角色权限关系表数据多项选择视图",
}, },
redirectview: { redirectview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表数据重定向视图', title: "角色权限关系表数据重定向视图",
}, },
gridview: { gridview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表表格视图', title: "角色权限关系表表格视图",
}, },
pickupgridview: { pickupgridview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表选择表格视图', title: "角色权限关系表选择表格视图",
}, },
pickupview: { pickupview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表数据选择视图', title: "角色权限关系表数据选择视图",
}, },
editview: { editview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表编辑视图', title: "角色权限关系表编辑视图",
}, },
editview2: { editview2: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系表编辑视图', title: "角色权限关系表编辑视图",
}, },
customview: { customview: {
caption: '角色权限关系', caption: "角色权限关系",
title: '角色权限关系自定义视图', title: "角色权限关系自定义视图",
}, },
}, },
main_form: { main_form: {
details: { details: {
group1: '角色权限关系表基本信息', group1: "角色权限关系表基本信息",
formpage1: '基本信息', formpage1: "基本信息",
srfupdatedate: '更新时间', srfupdatedate: "更新时间",
srforikey: '', srforikey: "",
srfkey: '角色权限关系表标识', srfkey: "角色权限关系表标识",
srfmajortext: '权限表标识', srfmajortext: "权限表标识",
srftempmode: '', srftempmode: "",
srfuf: '', srfuf: "",
srfdeid: '', srfdeid: "",
srfsourcekey: '', srfsourcekey: "",
sys_rolename: '角色名称', sys_rolename: "角色名称",
sys_permissionname: '权限名称', sys_permissionname: "权限名称",
sys_permissionid: '权限表标识', sys_permissionid: "权限表标识",
sys_roleid: '角色表标识', sys_roleid: "角色表标识",
sys_role_permissionid: '角色权限关系表标识', sys_role_permissionid: "角色权限关系表标识",
}, },
uiactions: { uiactions: {
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
sys_rolename: '角色名称', sys_rolename: "角色名称",
sys_permissionname: '权限名称', sys_permissionname: "权限名称",
updatedate: '更新时间', updatedate: "更新时间",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
}, },
uiactions: { uiactions: {
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem4: { tbitem4: {
caption: '编辑', caption: "编辑",
tip: '编辑', tip: "编辑",
}, },
tbitem6: { tbitem6: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
tbitem7: { tbitem7: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem8: { tbitem8: {
caption: '删除', caption: "删除",
tip: '删除', tip: "删除",
}, },
tbitem9: { tbitem9: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem13: { tbitem13: {
caption: '导出', caption: "导出",
tip: '导出', tip: "导出",
}, },
tbitem10: { tbitem10: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem19: { tbitem19: {
caption: '过滤', caption: "过滤",
tip: '过滤', tip: "过滤",
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
editview2toolbar_toolbar: { editview2toolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
}; };
\ No newline at end of file
export default { export default {
fields: { fields: {
roleid: '角色标识', roleid: "角色标识",
rolename: '角色名称', rolename: "角色名称",
memo: '备注', memo: "备注",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
pickupgridview: { pickupgridview: {
caption: "系统角色", caption: "系统角色",
title: '角色选择表格视图', title: "角色选择表格视图",
}, },
editview2: { editview2: {
caption: "系统角色", caption: "系统角色",
title: '角色编辑视图', title: "角色编辑视图",
}, },
editview: { editview: {
caption: "系统角色", caption: "系统角色",
title: '角色编辑视图', title: "角色编辑视图",
}, },
pickupview: { pickupview: {
caption: "系统角色", caption: "系统角色",
title: '角色数据选择视图', title: "角色数据选择视图",
}, },
redirectview: { redirectview: {
caption: "系统角色", caption: "系统角色",
title: '角色数据重定向视图', title: "角色数据重定向视图",
}, },
gridview: { gridview: {
caption: "系统角色", caption: "系统角色",
title: '角色表格视图', title: "角色表格视图",
}, },
mpickupview: { mpickupview: {
caption: "系统角色", caption: "系统角色",
title: '角色数据多项选择视图', title: "角色数据多项选择视图",
}, },
}, },
main_form: { main_form: {
......
export default { export default {
fields: { fields: {
roleid: '角色标识', roleid: "角色标识",
rolename: '角色名称', rolename: "角色名称",
memo: '备注', memo: "备注",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
pickupgridview: { pickupgridview: {
caption: '系统角色', caption: "系统角色",
title: '角色选择表格视图', title: "角色选择表格视图",
}, },
editview2: { editview2: {
caption: '系统角色', caption: "系统角色",
title: '角色编辑视图', title: "角色编辑视图",
}, },
editview: { editview: {
caption: '系统角色', caption: "系统角色",
title: '角色编辑视图', title: "角色编辑视图",
}, },
pickupview: { pickupview: {
caption: '系统角色', caption: "系统角色",
title: '角色数据选择视图', title: "角色数据选择视图",
}, },
redirectview: { redirectview: {
caption: '系统角色', caption: "系统角色",
title: '角色数据重定向视图', title: "角色数据重定向视图",
}, },
gridview: { gridview: {
caption: '系统角色', caption: "系统角色",
title: '角色表格视图', title: "角色表格视图",
}, },
mpickupview: { mpickupview: {
caption: '系统角色', caption: "系统角色",
title: '角色数据多项选择视图', title: "角色数据多项选择视图",
}, },
}, },
main_form: { main_form: {
details: { details: {
group1: '角色表基本信息', group1: "角色表基本信息",
druipart1: '权限', druipart1: "权限",
tabpage1: '权限', tabpage1: "权限",
druipart2: '用户', druipart2: "用户",
tabpage2: '用户', tabpage2: "用户",
tabpanel1: '', tabpanel1: "",
formpage1: '基本信息', formpage1: "基本信息",
srfupdatedate: '更新时间', srfupdatedate: "更新时间",
srforikey: '', srforikey: "",
srfkey: '角色标识', srfkey: "角色标识",
srfmajortext: '角色名称', srfmajortext: "角色名称",
srftempmode: '', srftempmode: "",
srfuf: '', srfuf: "",
srfdeid: '', srfdeid: "",
srfsourcekey: '', srfsourcekey: "",
sys_rolename: '角色名称', sys_rolename: "角色名称",
memo: '备注', memo: "备注",
sys_roleid: '角色标识', sys_roleid: "角色标识",
}, },
uiactions: { uiactions: {
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
sys_roleid: '角色标识', sys_roleid: "角色标识",
sys_rolename: '角色名称', sys_rolename: "角色名称",
memo: '备注', memo: "备注",
updatedate: '更新时间', updatedate: "更新时间",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
n_sys_rolename_like: '角色名称(%)', n_sys_rolename_like: "角色名称(%)",
}, },
uiactions: { uiactions: {
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem4: { tbitem4: {
caption: '编辑', caption: "编辑",
tip: '编辑', tip: "编辑",
}, },
tbitem6: { tbitem6: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
tbitem7: { tbitem7: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem8: { tbitem8: {
caption: '删除', caption: "删除",
tip: '删除', tip: "删除",
}, },
tbitem9: { tbitem9: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem13: { tbitem13: {
caption: '导出', caption: "导出",
tip: '导出', tip: "导出",
}, },
tbitem10: { tbitem10: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem19: { tbitem19: {
caption: '过滤', caption: "过滤",
tip: '过滤', tip: "过滤",
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
editview2toolbar_toolbar: { editview2toolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
}; };
\ No newline at end of file
export default { export default {
fields: { fields: {
userroleid: '用户角色关系标识', userroleid: "用户角色关系标识",
roleid: '角色标识', roleid: "角色标识",
rolename: '角色名称', rolename: "角色名称",
userid: '用户标识', userid: "用户标识",
personname: '用户名称', personname: "用户名称",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
redirectview: { redirectview: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表数据重定向视图', title: "用户角色关系表数据重定向视图",
}, },
editview: { editview: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表编辑视图', title: "用户角色关系表编辑视图",
}, },
pickupgridview: { pickupgridview: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表选择表格视图', title: "用户角色关系表选择表格视图",
}, },
mpickupview: { mpickupview: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表数据多项选择视图', title: "用户角色关系表数据多项选择视图",
}, },
editview2: { editview2: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表编辑视图', title: "用户角色关系表编辑视图",
}, },
pickupview: { pickupview: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表数据选择视图', title: "用户角色关系表数据选择视图",
}, },
gridview: { gridview: {
caption: "用户角色关系", caption: "用户角色关系",
title: '用户角色关系表表格视图', title: "用户角色关系表表格视图",
}, },
}, },
main_form: { main_form: {
......
export default { export default {
fields: { fields: {
userroleid: '用户角色关系标识', userroleid: "用户角色关系标识",
roleid: '角色标识', roleid: "角色标识",
rolename: '角色名称', rolename: "角色名称",
userid: '用户标识', userid: "用户标识",
personname: '用户名称', personname: "用户名称",
createdate: '建立时间', createdate: "建立时间",
updatedate: '更新时间', updatedate: "更新时间",
}, },
views: { views: {
redirectview: { redirectview: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表数据重定向视图', title: "用户角色关系表数据重定向视图",
}, },
editview: { editview: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表编辑视图', title: "用户角色关系表编辑视图",
}, },
pickupgridview: { pickupgridview: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表选择表格视图', title: "用户角色关系表选择表格视图",
}, },
mpickupview: { mpickupview: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表数据多项选择视图', title: "用户角色关系表数据多项选择视图",
}, },
editview2: { editview2: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表编辑视图', title: "用户角色关系表编辑视图",
}, },
pickupview: { pickupview: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表数据选择视图', title: "用户角色关系表数据选择视图",
}, },
gridview: { gridview: {
caption: '用户角色关系', caption: "用户角色关系",
title: '用户角色关系表表格视图', title: "用户角色关系表表格视图",
}, },
}, },
main_form: { main_form: {
details: { details: {
group1: '用户角色关系表基本信息', group1: "用户角色关系表基本信息",
formpage1: '基本信息', formpage1: "基本信息",
srfupdatedate: '更新时间', srfupdatedate: "更新时间",
srforikey: '', srforikey: "",
srfkey: '用户角色关系标识', srfkey: "用户角色关系标识",
srfmajortext: '用户标识', srfmajortext: "用户标识",
srftempmode: '', srftempmode: "",
srfuf: '', srfuf: "",
srfdeid: '', srfdeid: "",
srfsourcekey: '', srfsourcekey: "",
sys_roleid: '角色标识', sys_roleid: "角色标识",
sys_user_roleid: '用户角色关系标识', sys_user_roleid: "用户角色关系标识",
sys_rolename: '角色名称', sys_rolename: "角色名称",
sys_username: '用户名称', sys_username: "用户名称",
sys_userid: '用户标识', sys_userid: "用户标识",
}, },
uiactions: { uiactions: {
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
sys_username: '用户名称', sys_username: "用户名称",
sys_rolename: '角色名称', sys_rolename: "角色名称",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
}, },
uiactions: { uiactions: {
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem4: { tbitem4: {
caption: '编辑', caption: "编辑",
tip: '编辑', tip: "编辑",
}, },
tbitem6: { tbitem6: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
tbitem7: { tbitem7: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem8: { tbitem8: {
caption: '删除', caption: "删除",
tip: '删除', tip: "删除",
}, },
tbitem9: { tbitem9: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem13: { tbitem13: {
caption: '导出', caption: "导出",
tip: '导出', tip: "导出",
}, },
tbitem10: { tbitem10: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem19: { tbitem19: {
caption: '过滤', caption: "过滤",
tip: '过滤', tip: "过滤",
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
editview2toolbar_toolbar: { editview2toolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
}; };
\ No newline at end of file
export default { export default {
fields: { fields: {
userid: '用户标识', userid: "用户标识",
username: '用户全局名', username: "用户全局名",
personname: '用户姓名', personname: "用户姓名",
password: '密码', password: "密码",
}, },
views: { views: {
mpickupview: { mpickupview: {
caption: "系统用户", caption: "系统用户",
title: '用户表数据多项选择视图', title: "用户表数据多项选择视图",
}, },
editview2: { editview2: {
caption: "系统用户", caption: "系统用户",
title: '用户表编辑视图', title: "用户表编辑视图",
}, },
redirectview: { redirectview: {
caption: "系统用户", caption: "系统用户",
title: '用户表数据重定向视图', title: "用户表数据重定向视图",
}, },
pickupgridview: { pickupgridview: {
caption: "系统用户", caption: "系统用户",
title: '用户表选择表格视图', title: "用户表选择表格视图",
}, },
editview: { editview: {
caption: "系统用户", caption: "系统用户",
title: '用户表编辑视图', title: "用户表编辑视图",
}, },
gridview: { gridview: {
caption: "系统用户", caption: "系统用户",
title: '用户表格视图', title: "用户表格视图",
}, },
pickupview: { pickupview: {
caption: "系统用户", caption: "系统用户",
title: '用户表数据选择视图', title: "用户表数据选择视图",
}, },
}, },
main_form: { main_form: {
......
export default { export default {
fields: { fields: {
userid: '用户标识', userid: "用户标识",
username: '用户全局名', username: "用户全局名",
personname: '用户姓名', personname: "用户姓名",
password: '密码', password: "密码",
}, },
views: { views: {
mpickupview: { mpickupview: {
caption: '系统用户', caption: "系统用户",
title: '用户表数据多项选择视图', title: "用户表数据多项选择视图",
}, },
editview2: { editview2: {
caption: '系统用户', caption: "系统用户",
title: '用户表编辑视图', title: "用户表编辑视图",
}, },
redirectview: { redirectview: {
caption: '系统用户', caption: "系统用户",
title: '用户表数据重定向视图', title: "用户表数据重定向视图",
}, },
pickupgridview: { pickupgridview: {
caption: '系统用户', caption: "系统用户",
title: '用户表选择表格视图', title: "用户表选择表格视图",
}, },
editview: { editview: {
caption: '系统用户', caption: "系统用户",
title: '用户表编辑视图', title: "用户表编辑视图",
}, },
gridview: { gridview: {
caption: '系统用户', caption: "系统用户",
title: '用户表格视图', title: "用户表格视图",
}, },
pickupview: { pickupview: {
caption: '系统用户', caption: "系统用户",
title: '用户表数据选择视图', title: "用户表数据选择视图",
}, },
}, },
main_form: { main_form: {
details: { details: {
druipart1: '', druipart1: "",
formpage1: '基本信息', formpage1: "基本信息",
srforikey: '', srforikey: "",
srfkey: '用户标识', srfkey: "用户标识",
srfmajortext: '用户姓名', srfmajortext: "用户姓名",
srftempmode: '', srftempmode: "",
srfuf: '', srfuf: "",
srfdeid: '', srfdeid: "",
srfsourcekey: '', srfsourcekey: "",
userid: '用户标识', userid: "用户标识",
username: '用户全局名', username: "用户全局名",
personname: '用户姓名', personname: "用户姓名",
}, },
uiactions: { uiactions: {
}, },
}, },
main_grid: { main_grid: {
columns: { columns: {
userid: '用户标识', userid: "用户标识",
username: '用户全局名', username: "用户全局名",
personname: '用户姓名', personname: "用户姓名",
}, },
uiactions: { uiactions: {
}, },
}, },
default_searchform: { default_searchform: {
details: { details: {
formpage1: '常规条件', formpage1: "常规条件",
}, },
uiactions: { uiactions: {
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem4: { tbitem4: {
caption: '编辑', caption: "编辑",
tip: '编辑', tip: "编辑",
}, },
tbitem6: { tbitem6: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
tbitem7: { tbitem7: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem8: { tbitem8: {
caption: '删除', caption: "删除",
tip: '删除', tip: "删除",
}, },
tbitem9: { tbitem9: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem13: { tbitem13: {
caption: '导出', caption: "导出",
tip: '导出', tip: "导出",
}, },
tbitem10: { tbitem10: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem19: { tbitem19: {
caption: '过滤', caption: "过滤",
tip: '过滤', tip: "过滤",
}, },
}, },
editview2toolbar_toolbar: { editview2toolbar_toolbar: {
tbitem3: { tbitem3: {
caption: '保存', caption: "保存",
tip: '保存', tip: "保存",
}, },
tbitem5: { tbitem5: {
caption: '保存并关闭', caption: "保存并关闭",
tip: '保存并关闭', tip: "保存并关闭",
}, },
tbitem6: { tbitem6: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem12: { tbitem12: {
caption: '新建', caption: "新建",
tip: '新建', tip: "新建",
}, },
tbitem13: { tbitem13: {
caption: '-', caption: "-",
tip: '', tip: "",
}, },
tbitem14: { tbitem14: {
caption: '拷贝', caption: "拷贝",
tip: '拷贝', tip: "拷贝",
}, },
}, },
}; };
\ No newline at end of file
...@@ -8,114 +8,114 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -8,114 +8,114 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
let status = MockAdapter.mockStatus(config); let status = MockAdapter.mockStatus(config);
return [status, [ return [status, [
{ {
srfkey: 'YesNo', srfkey: "YesNo",
emptytext: '未定义', emptytext: "未定义",
"codelisttype":"static", "codelisttype":"static",
items: [ items: [
{ {
id: '1', id: "1",
label: '是', label: "是",
text: '是', text: "是",
"data":"", "data":"",
"codename":"Item_1", "codename":"Item_1",
value: '1', value: "1",
disabled: false, disabled: false,
}, },
{ {
id: '0', id: "0",
label: '否', label: "否",
text: '否', text: "否",
"data":"", "data":"",
"codename":"Item_0", "codename":"Item_0",
value: '0', value: "0",
disabled: false, disabled: false,
}, },
] ]
}, },
{ {
srfkey: 'AppType', srfkey: "AppType",
emptytext: '未定义', emptytext: "未定义",
"codelisttype":"static", "codelisttype":"static",
items: [ items: [
{ {
id: 'INNER', id: "INNER",
label: '内置应用', label: "内置应用",
text: '内置应用', text: "内置应用",
"data":"", "data":"",
"codename":"Inner", "codename":"Inner",
value: 'INNER', value: "INNER",
disabled: false, disabled: false,
}, },
{ {
id: 'THIRD-PARTY', id: "THIRD-PARTY",
label: '第三方应用', label: "第三方应用",
text: '第三方应用', text: "第三方应用",
"data":"", "data":"",
"codename":"Third_SUB_party", "codename":"Third_SUB_party",
value: 'THIRD-PARTY', value: "THIRD-PARTY",
disabled: false, disabled: false,
}, },
] ]
}, },
{ {
srfkey: 'CLAuthCode', srfkey: "CLAuthCode",
emptytext: '未定义', emptytext: "未定义",
"codelisttype":"static", "codelisttype":"static",
items: [ items: [
{ {
id: '200', id: "200",
label: '成功', label: "成功",
text: '成功', text: "成功",
"data":"", "data":"",
"codename":"Item_200", "codename":"Item_200",
"color": "rgba(0, 255, 0, 0)", "color": "rgba(0, 255, 0, 0)",
value: '200', value: "200",
disabled: false, disabled: false,
}, },
{ {
id: '400', id: "400",
label: '用户不存在', label: "用户不存在",
text: '用户不存在', text: "用户不存在",
"data":"", "data":"",
"codename":"Item_400", "codename":"Item_400",
value: '400', value: "400",
disabled: false, disabled: false,
}, },
{ {
id: '401.1', id: "401.1",
label: '密码错误', label: "密码错误",
text: '密码错误', text: "密码错误",
"data":"", "data":"",
"codename":"Item_3", "codename":"Item_3",
value: '401.1', value: "401.1",
disabled: false, disabled: false,
}, },
{ {
id: '401.2', id: "401.2",
label: '配置错误', label: "配置错误",
text: '配置错误', text: "配置错误",
"data":"", "data":"",
"codename":"Item_4", "codename":"Item_4",
"color": "rgba(22, 9, 170, 1)", "color": "rgba(22, 9, 170, 1)",
value: '401.2', value: "401.2",
disabled: false, disabled: false,
}, },
{ {
id: '403.6', id: "403.6",
label: '地址被拒绝', label: "地址被拒绝",
text: '地址被拒绝', text: "地址被拒绝",
"data":"", "data":"",
"codename":"Item_5", "codename":"Item_5",
"color": "rgba(0, 72, 255, 1)", "color": "rgba(0, 72, 255, 1)",
value: '403.6', value: "403.6",
disabled: false, disabled: false,
}, },
......
...@@ -5,8 +5,8 @@ ...@@ -5,8 +5,8 @@
<layout> <layout>
<sider :width="collapseChange ? 64 : 200" hide-trigger v-model="collapseChange"> <sider :width="collapseChange ? 64 : 200" hide-trigger v-model="collapseChange">
<div class="sider-top"> <div class="sider-top">
<div class="page-logo" @click="contextMenuDragVisiable=!contextMenuDragVisiable"> <div class="page-logo">
<img v-show="collapseChange" src="../../../assets/img/logo.png" height="16" /> <span class="menuicon" @click="contextMenuDragVisiable=!contextMenuDragVisiable"><Icon type="md-menu" /></span>
<span v-show="!collapseChange" style="display: block;text-align: center;font-weight: 300;font-size: 20px;">{{$t(model.srfCaption)}}</span> <span v-show="!collapseChange" style="display: block;text-align: center;font-weight: 300;font-size: 20px;">{{$t(model.srfCaption)}}</span>
</div> </div>
</div> </div>
...@@ -31,10 +31,10 @@ ...@@ -31,10 +31,10 @@
<layout> <layout>
<header class="index_header"> <header class="index_header">
<div class="header-left" > <div class="header-left" >
<div class="page-logo" v-if="Object.is(navModel,'route')"> <div class="page-logo">
<i v-show="!collapseChange" class="ivu-icon el-icon-s-fold" @click="handleClick"></i> <i v-show="!collapseChange" class="ivu-icon el-icon-s-fold" @click="handleClick"></i>
<i v-show="collapseChange" class="ivu-icon el-icon-s-unfold" @click="handleClick"></i> <i v-show="collapseChange" class="ivu-icon el-icon-s-unfold" @click="handleClick"></i>
<app-breadcrumb indexViewTag="index" indexViewPath="index"></app-breadcrumb> <app-breadcrumb :navModel="navModel" indexViewTag="index"></app-breadcrumb>
</div> </div>
</div> </div>
<div class="header-right" style="display: flex;align-items: center;justify-content: space-between;"> <div class="header-right" style="display: flex;align-items: center;justify-content: space-between;">
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
...@@ -249,6 +249,15 @@ export default class IndexBase extends Vue { ...@@ -249,6 +249,15 @@ export default class IndexBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof IndexBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -271,7 +280,7 @@ export default class IndexBase extends Vue { ...@@ -271,7 +280,7 @@ export default class IndexBase extends Vue {
* @public * @public
* @memberof IndexBase * @memberof IndexBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -392,7 +401,7 @@ export default class IndexBase extends Vue { ...@@ -392,7 +401,7 @@ export default class IndexBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'index',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'index',srfkey:null,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -412,10 +421,24 @@ export default class IndexBase extends Vue { ...@@ -412,10 +421,24 @@ export default class IndexBase extends Vue {
* @memberof IndexBase * @memberof IndexBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'index')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -488,7 +511,7 @@ export default class IndexBase extends Vue { ...@@ -488,7 +511,7 @@ export default class IndexBase extends Vue {
* @type {string} * @type {string}
* @memberof IndexBase * @memberof IndexBase
*/ */
public navModel:string = "route"; public navModel:string = "tab";
/** /**
* 抽屉状态 * 抽屉状态
......
...@@ -76,7 +76,6 @@ ...@@ -76,7 +76,6 @@
} }
} }
.ivu-layout .ivu-layout-sider .ivu-layout-sider-children .sider-top{ .ivu-layout .ivu-layout-sider .ivu-layout-sider-children .sider-top{
padding: 4px;
margin-top: -2px; margin-top: -2px;
line-height: 58px; line-height: 58px;
text-align: center; text-align: center;
...@@ -84,11 +83,22 @@ ...@@ -84,11 +83,22 @@
cursor: pointer; cursor: pointer;
} }
.sider-top{ .sider-top{
padding: 0px;
margin-bottom: 1px; margin-bottom: 1px;
height:65px; height:65px;
box-shadow: 0 1px 2px 0 rgba(0,0,0,.15); box-shadow: 0 1px 2px 0 rgba(0,0,0,.15);
> .page-logo{ > .page-logo{
display: flex;
align-items: center;
height: 100%;
>.menuicon{
display: block;
text-align: center; text-align: center;
font-weight: 300;
font-size: 28px;
width:64px;
height:100%;
}
} }
} }
} }
......
...@@ -3,43 +3,40 @@ ...@@ -3,43 +3,40 @@
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sysappeditview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sysappeditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false"> <card class='view-card ' :disHover="true" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600">
<div slot="extra"> <i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)">
<div class='toolbar-container'> <i class='fa fa-save'></i>
<tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem3.caption')}}</span>
<i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)"> </i-button>
<i class='fa fa-save'></i> <div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem3.tip')}}</div>
<span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem3.caption')}}</span> </tooltip>
</i-button> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem3.tip')}}</div> <i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)">
</tooltip> <i class='sx-tb-saveandclose'></i>
<tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem5.caption')}}</span>
<i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)"> </i-button>
<i class='sx-tb-saveandclose'></i> <div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem5.tip')}}</div>
<span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem5.caption')}}</span> </tooltip>
</i-button> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem5.tip')}}</div> <i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)">
</tooltip> <i class='fa fa-file-text-o'></i>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem12.caption')}}</span>
<i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)"> </i-button>
<i class='fa fa-file-text-o'></i> <div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem12.tip')}}</div>
<span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem12.caption')}}</span> </tooltip>
</i-button> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem12.tip')}}</div> <i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)">
</tooltip> <i class='fa fa-copy'></i>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem14.caption')}}</span>
<i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)"> </i-button>
<i class='fa fa-copy'></i> <div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem14.tip')}}</div>
<span class='caption'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem14.caption')}}</span> </tooltip>
</i-button> </div>
<div slot='content'>{{$t('entities.sysapp.editviewtoolbar_toolbar.tbitem14.tip')}}</div> </div>
</tooltip>
</div>
</div>
<div class="content-container"> <div class="content-container">
<div class='view-top-messages'> <div class='view-top-messages'>
</div> </div>
...@@ -76,7 +73,7 @@ ...@@ -76,7 +73,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysAppService from '@/service/sys-app/sys-app-service'; import SysAppService from '@/service/sys-app/sys-app-service';
import EditViewEngine from '@engine/view/edit-view-engine'; import EditViewEngine from '@engine/view/edit-view-engine';
...@@ -309,6 +306,15 @@ export default class SysAppEditViewBase extends Vue { ...@@ -309,6 +306,15 @@ export default class SysAppEditViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SysAppEditViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -331,7 +337,7 @@ export default class SysAppEditViewBase extends Vue { ...@@ -331,7 +337,7 @@ export default class SysAppEditViewBase extends Vue {
* @public * @public
* @memberof SysAppEditViewBase * @memberof SysAppEditViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -361,6 +367,9 @@ export default class SysAppEditViewBase extends Vue { ...@@ -361,6 +367,9 @@ export default class SysAppEditViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysapp':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -454,7 +463,7 @@ export default class SysAppEditViewBase extends Vue { ...@@ -454,7 +463,7 @@ export default class SysAppEditViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-app-edit-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-app-edit-view',srfkey:this.context.sysapp,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -474,10 +483,24 @@ export default class SysAppEditViewBase extends Vue { ...@@ -474,10 +483,24 @@ export default class SysAppEditViewBase extends Vue {
* @memberof SysAppEditViewBase * @memberof SysAppEditViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-app-edit-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -1011,6 +1034,9 @@ export default class SysAppEditViewBase extends Vue { ...@@ -1011,6 +1034,9 @@ export default class SysAppEditViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
<div class='view-container degridview sys-app-grid-view'> <div class='view-container degridview sys-app-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sysappgridview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sysappgridview"></app-studioaction>
<card class='view-card ' :dis-hover="true" :bordered="false"> <card class='view-card ' :dis-hover="true" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </div>
<div class='content-container'> <div class='content-container'>
<div class='view-top-messages'> <div class='view-top-messages'>
</div> </div>
...@@ -122,7 +122,7 @@ ...@@ -122,7 +122,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysAppService from '@/service/sys-app/sys-app-service'; import SysAppService from '@/service/sys-app/sys-app-service';
import GridViewEngine from '@engine/view/grid-view-engine'; import GridViewEngine from '@engine/view/grid-view-engine';
...@@ -375,6 +375,15 @@ export default class SysAppGridViewBase extends Vue { ...@@ -375,6 +375,15 @@ export default class SysAppGridViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SysAppGridViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -397,7 +406,7 @@ export default class SysAppGridViewBase extends Vue { ...@@ -397,7 +406,7 @@ export default class SysAppGridViewBase extends Vue {
* @public * @public
* @memberof SysAppGridViewBase * @memberof SysAppGridViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -427,6 +436,9 @@ export default class SysAppGridViewBase extends Vue { ...@@ -427,6 +436,9 @@ export default class SysAppGridViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysapp':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -520,7 +532,7 @@ export default class SysAppGridViewBase extends Vue { ...@@ -520,7 +532,7 @@ export default class SysAppGridViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-app-grid-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-app-grid-view',srfkey:this.context.sysapp,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -540,10 +552,24 @@ export default class SysAppGridViewBase extends Vue { ...@@ -540,10 +552,24 @@ export default class SysAppGridViewBase extends Vue {
* @memberof SysAppGridViewBase * @memberof SysAppGridViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-app-grid-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
if(this.formDruipart){ if(this.formDruipart){
this.formDruipart.subscribe((res:any) =>{ this.formDruipart.subscribe((res:any) =>{
if(Object.is(res.action,'save')){ if(Object.is(res.action,'save')){
...@@ -1359,6 +1385,9 @@ export default class SysAppGridViewBase extends Vue { ...@@ -1359,6 +1385,9 @@ export default class SysAppGridViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
<div class='view-container degridview sys-authloggrid-view'> <div class='view-container degridview sys-authloggrid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_authloggridview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_authloggridview"></app-studioaction>
<card class='view-card ' :dis-hover="true" :bordered="false"> <card class='view-card ' :dis-hover="true" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </div>
<div class='content-container'> <div class='content-container'>
<div class='view-top-messages'> <div class='view-top-messages'>
</div> </div>
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysAuthLogService from '@/service/sys-auth-log/sys-auth-log-service'; import SysAuthLogService from '@/service/sys-auth-log/sys-auth-log-service';
import GridViewEngine from '@engine/view/grid-view-engine'; import GridViewEngine from '@engine/view/grid-view-engine';
...@@ -290,6 +290,15 @@ export default class SYS_AUTHLOGGridViewBase extends Vue { ...@@ -290,6 +290,15 @@ export default class SYS_AUTHLOGGridViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_AUTHLOGGridViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -312,7 +321,7 @@ export default class SYS_AUTHLOGGridViewBase extends Vue { ...@@ -312,7 +321,7 @@ export default class SYS_AUTHLOGGridViewBase extends Vue {
* @public * @public
* @memberof SYS_AUTHLOGGridViewBase * @memberof SYS_AUTHLOGGridViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -342,6 +351,9 @@ export default class SYS_AUTHLOGGridViewBase extends Vue { ...@@ -342,6 +351,9 @@ export default class SYS_AUTHLOGGridViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysauthlog':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -435,7 +447,7 @@ export default class SYS_AUTHLOGGridViewBase extends Vue { ...@@ -435,7 +447,7 @@ export default class SYS_AUTHLOGGridViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-authloggrid-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-authloggrid-view',srfkey:this.context.sysauthlog,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -455,10 +467,24 @@ export default class SYS_AUTHLOGGridViewBase extends Vue { ...@@ -455,10 +467,24 @@ export default class SYS_AUTHLOGGridViewBase extends Vue {
* @memberof SYS_AUTHLOGGridViewBase * @memberof SYS_AUTHLOGGridViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-authloggrid-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
if(this.formDruipart){ if(this.formDruipart){
this.formDruipart.subscribe((res:any) =>{ this.formDruipart.subscribe((res:any) =>{
if(Object.is(res.action,'save')){ if(Object.is(res.action,'save')){
...@@ -679,6 +705,9 @@ export default class SYS_AUTHLOGGridViewBase extends Vue { ...@@ -679,6 +705,9 @@ export default class SYS_AUTHLOGGridViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -3,43 +3,40 @@ ...@@ -3,43 +3,40 @@
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_permissioneditview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_permissioneditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false"> <card class='view-card ' :disHover="true" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600">
<div slot="extra"> <i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)">
<div class='toolbar-container'> <i class='fa fa-save'></i>
<tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem3.caption')}}</span>
<i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)"> </i-button>
<i class='fa fa-save'></i> <div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem3.tip')}}</div>
<span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem3.caption')}}</span> </tooltip>
</i-button> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem3.tip')}}</div> <i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)">
</tooltip> <i class='sx-tb-saveandclose'></i>
<tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem5.caption')}}</span>
<i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)"> </i-button>
<i class='sx-tb-saveandclose'></i> <div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem5.tip')}}</div>
<span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem5.caption')}}</span> </tooltip>
</i-button> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem5.tip')}}</div> <i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)">
</tooltip> <i class='fa fa-file-text-o'></i>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem12.caption')}}</span>
<i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)"> </i-button>
<i class='fa fa-file-text-o'></i> <div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem12.tip')}}</div>
<span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem12.caption')}}</span> </tooltip>
</i-button> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem12.tip')}}</div> <i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)">
</tooltip> <i class='fa fa-copy'></i>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem14.caption')}}</span>
<i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)"> </i-button>
<i class='fa fa-copy'></i> <div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem14.tip')}}</div>
<span class='caption'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem14.caption')}}</span> </tooltip>
</i-button> </div>
<div slot='content'>{{$t('entities.syspermission.editviewtoolbar_toolbar.tbitem14.tip')}}</div> </div>
</tooltip>
</div>
</div>
<div class="content-container"> <div class="content-container">
<div class='view-top-messages'> <div class='view-top-messages'>
</div> </div>
...@@ -76,7 +73,7 @@ ...@@ -76,7 +73,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
import EditViewEngine from '@engine/view/edit-view-engine'; import EditViewEngine from '@engine/view/edit-view-engine';
...@@ -309,6 +306,15 @@ export default class SYS_PERMISSIONEditViewBase extends Vue { ...@@ -309,6 +306,15 @@ export default class SYS_PERMISSIONEditViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONEditViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -331,7 +337,7 @@ export default class SYS_PERMISSIONEditViewBase extends Vue { ...@@ -331,7 +337,7 @@ export default class SYS_PERMISSIONEditViewBase extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONEditViewBase * @memberof SYS_PERMISSIONEditViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -361,6 +367,9 @@ export default class SYS_PERMISSIONEditViewBase extends Vue { ...@@ -361,6 +367,9 @@ export default class SYS_PERMISSIONEditViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -454,7 +463,7 @@ export default class SYS_PERMISSIONEditViewBase extends Vue { ...@@ -454,7 +463,7 @@ export default class SYS_PERMISSIONEditViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissionedit-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissionedit-view',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -474,10 +483,24 @@ export default class SYS_PERMISSIONEditViewBase extends Vue { ...@@ -474,10 +483,24 @@ export default class SYS_PERMISSIONEditViewBase extends Vue {
* @memberof SYS_PERMISSIONEditViewBase * @memberof SYS_PERMISSIONEditViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissionedit-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -1011,6 +1034,9 @@ export default class SYS_PERMISSIONEditViewBase extends Vue { ...@@ -1011,6 +1034,9 @@ export default class SYS_PERMISSIONEditViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -3,43 +3,43 @@ ...@@ -3,43 +3,43 @@
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_permissioneditview2"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_permissioneditview2"></app-studioaction>
<card class='view-card ' :dis-hover="true" :bordered="false"> <card class='view-card ' :dis-hover="true" :bordered="false">
<p slot='title'>
<div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> <template v-if="Object.is(this.selection.id, 'form')">
<div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)">
<i class='fa fa-save'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem3.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem3.tip')}}</div>
</tooltip>
<tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)">
<i class='sx-tb-saveandclose'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem5.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem5.tip')}}</div>
</tooltip>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)">
<i class='fa fa-file-text-o'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem12.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem12.tip')}}</div>
</tooltip>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)">
<i class='fa fa-copy'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem14.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem14.tip')}}</div>
</tooltip>
</div>
</template>
</div>
<p slot="extra" v-show="Object.is(this.selection.id, 'form')">
<div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)">
<i class='fa fa-save'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem3.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem3.tip')}}</div>
</tooltip>
<tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)">
<i class='sx-tb-saveandclose'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem5.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem5.tip')}}</div>
</tooltip>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)">
<i class='fa fa-file-text-o'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem12.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem12.tip')}}</div>
</tooltip>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)">
<i class='fa fa-copy'></i>
<span class='caption'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem14.caption')}}</span>
</i-button>
<div slot='content'>{{$t('entities.syspermission.editview2toolbar_toolbar.tbitem14.tip')}}</div>
</tooltip>
</div>
</p>
<div class="content-container edit-view2"> <div class="content-container edit-view2">
<view_drbar <view_drbar
:viewState="viewState" :viewState="viewState"
...@@ -84,7 +84,7 @@ ...@@ -84,7 +84,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
import EditView2Engine from '@engine/view/edit-view2-engine'; import EditView2Engine from '@engine/view/edit-view2-engine';
...@@ -318,6 +318,15 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -318,6 +318,15 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONEditView2Base
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -340,7 +349,7 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -340,7 +349,7 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONEditView2Base * @memberof SYS_PERMISSIONEditView2Base
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -370,6 +379,9 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -370,6 +379,9 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -463,7 +475,7 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -463,7 +475,7 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissionedit-view2',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissionedit-view2',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -483,10 +495,24 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -483,10 +495,24 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
* @memberof SYS_PERMISSIONEditView2Base * @memberof SYS_PERMISSIONEditView2Base
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissionedit-view2')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -1044,6 +1070,9 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -1044,6 +1070,9 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
...@@ -1051,7 +1080,7 @@ export default class SYS_PERMISSIONEditView2Base extends Vue { ...@@ -1051,7 +1080,7 @@ export default class SYS_PERMISSIONEditView2Base extends Vue {
* 选中数据 * 选中数据
* *
* @type {*} * @type {*}
* @memberof SYS_PERMISSIONEditView2 * @memberof SYS_PERMISSIONEditView2Base
*/ */
public selection: any = {}; public selection: any = {};
......
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
<div class='view-container degridview sys-permissiongrid-view'> <div class='view-container degridview sys-permissiongrid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_permissiongridview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_permissiongridview"></app-studioaction>
<card class='view-card ' :dis-hover="true" :bordered="false"> <card class='view-card ' :dis-hover="true" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </div>
<div class='content-container'> <div class='content-container'>
<div class='view-top-messages'> <div class='view-top-messages'>
</div> </div>
...@@ -108,7 +108,7 @@ ...@@ -108,7 +108,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
import GridViewEngine from '@engine/view/grid-view-engine'; import GridViewEngine from '@engine/view/grid-view-engine';
...@@ -356,6 +356,15 @@ export default class SYS_PERMISSIONGridViewBase extends Vue { ...@@ -356,6 +356,15 @@ export default class SYS_PERMISSIONGridViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONGridViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -378,7 +387,7 @@ export default class SYS_PERMISSIONGridViewBase extends Vue { ...@@ -378,7 +387,7 @@ export default class SYS_PERMISSIONGridViewBase extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONGridViewBase * @memberof SYS_PERMISSIONGridViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -408,6 +417,9 @@ export default class SYS_PERMISSIONGridViewBase extends Vue { ...@@ -408,6 +417,9 @@ export default class SYS_PERMISSIONGridViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -501,7 +513,7 @@ export default class SYS_PERMISSIONGridViewBase extends Vue { ...@@ -501,7 +513,7 @@ export default class SYS_PERMISSIONGridViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissiongrid-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissiongrid-view',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -521,10 +533,24 @@ export default class SYS_PERMISSIONGridViewBase extends Vue { ...@@ -521,10 +533,24 @@ export default class SYS_PERMISSIONGridViewBase extends Vue {
* @memberof SYS_PERMISSIONGridViewBase * @memberof SYS_PERMISSIONGridViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissiongrid-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
if(this.formDruipart){ if(this.formDruipart){
this.formDruipart.subscribe((res:any) =>{ this.formDruipart.subscribe((res:any) =>{
if(Object.is(res.action,'save')){ if(Object.is(res.action,'save')){
...@@ -1314,6 +1340,9 @@ export default class SYS_PERMISSIONGridViewBase extends Vue { ...@@ -1314,6 +1340,9 @@ export default class SYS_PERMISSIONGridViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
import MPickupViewEngine from '@engine/view/mpickup-view-engine'; import MPickupViewEngine from '@engine/view/mpickup-view-engine';
...@@ -288,6 +288,15 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -288,6 +288,15 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONMPickupViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -310,7 +319,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -310,7 +319,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONMPickupViewBase * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -340,6 +349,9 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -340,6 +349,9 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -433,7 +445,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -433,7 +445,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissionmpickup-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissionmpickup-view',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -453,10 +465,24 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -453,10 +465,24 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* @memberof SYS_PERMISSIONMPickupViewBase * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissionmpickup-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -575,13 +601,16 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -575,13 +601,16 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
/** /**
* 是否显示按钮 * 是否显示按钮
* *
* @type {boolean} * @type {boolean}
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
@Prop({default: true}) public isShowButton!: boolean; @Prop({default: true}) public isShowButton!: boolean;
...@@ -589,7 +618,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -589,7 +618,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* 选中数据的字符串 * 选中数据的字符串
* *
* @type {string} * @type {string}
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public selectedData: string = ""; public selectedData: string = "";
...@@ -597,7 +626,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -597,7 +626,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* 是否初始化已选中项 * 是否初始化已选中项
* *
* @type {any[]} * @type {any[]}
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public isInitSelected:boolean = false; public isInitSelected:boolean = false;
...@@ -605,7 +634,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -605,7 +634,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* 视图选中数据 * 视图选中数据
* *
* @type {any[]} * @type {any[]}
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public viewSelections:any[] = []; public viewSelections:any[] = [];
...@@ -613,7 +642,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -613,7 +642,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* 是否单选 * 是否单选
* *
* @type {boolean} * @type {boolean}
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public isSingleSelect: boolean = false; public isSingleSelect: boolean = false;
...@@ -621,7 +650,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -621,7 +650,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* 选中数据单击 * 选中数据单击
* *
* @param {*} item * @param {*} item
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public selectionsClick(item:any):void { public selectionsClick(item:any):void {
item._select = !item._select; item._select = !item._select;
...@@ -633,7 +662,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -633,7 +662,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
* 选中树双击 * 选中树双击
* *
* @param {*} item * @param {*} item
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public selectionsDBLClick(item:any):void { public selectionsDBLClick(item:any):void {
const index: number = this.viewSelections.findIndex((selection: any) => Object.is(selection.srfkey, item.srfkey)); const index: number = this.viewSelections.findIndex((selection: any) => Object.is(selection.srfkey, item.srfkey));
...@@ -648,7 +677,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -648,7 +677,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
/** /**
* 删除右侧全部选中数据 * 删除右侧全部选中数据
* *
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public onCLickLeft():void { public onCLickLeft():void {
const _selectiions = [...JSON.parse(JSON.stringify(this.viewSelections))]; const _selectiions = [...JSON.parse(JSON.stringify(this.viewSelections))];
...@@ -669,7 +698,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -669,7 +698,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
/** /**
* 添加左侧选中数据 * 添加左侧选中数据
* *
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public onCLickRight():void { public onCLickRight():void {
Object.values(this.containerModel).forEach((model: any) => { Object.values(this.containerModel).forEach((model: any) => {
...@@ -695,7 +724,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -695,7 +724,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
/** /**
* 选中数据全部删除 * 选中数据全部删除
* *
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public onCLickAllLeft():void { public onCLickAllLeft():void {
this.viewSelections = []; this.viewSelections = [];
...@@ -707,7 +736,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -707,7 +736,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
/** /**
* 添加左侧面板所有数据到右侧 * 添加左侧面板所有数据到右侧
* *
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public onCLickAllRight():void { public onCLickAllRight():void {
Object.values(this.containerModel).forEach((model: any) => { Object.values(this.containerModel).forEach((model: any) => {
...@@ -734,7 +763,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -734,7 +763,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
/** /**
* 确定 * 确定
* *
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public onClickOk(): void { public onClickOk(): void {
this.$emit('viewdataschange', this.viewSelections); this.$emit('viewdataschange', this.viewSelections);
...@@ -744,7 +773,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue { ...@@ -744,7 +773,7 @@ export default class SYS_PERMISSIONMPickupViewBase extends Vue {
/** /**
* 取消 * 取消
* *
* @memberof SYS_PERMISSIONMPickupView * @memberof SYS_PERMISSIONMPickupViewBase
*/ */
public onClickCancel(): void { public onClickCancel(): void {
this.$emit('close', null); this.$emit('close', null);
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
import PickupGridViewEngine from '@engine/view/pickup-grid-view-engine'; import PickupGridViewEngine from '@engine/view/pickup-grid-view-engine';
...@@ -262,6 +262,15 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -262,6 +262,15 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONPickupGridViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -284,7 +293,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -284,7 +293,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONPickupGridViewBase * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -314,6 +323,9 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -314,6 +323,9 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -407,7 +419,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -407,7 +419,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissionpickup-grid-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissionpickup-grid-view',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -427,10 +439,24 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -427,10 +439,24 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* @memberof SYS_PERMISSIONPickupGridViewBase * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissionpickup-grid-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -593,13 +619,16 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -593,13 +619,16 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
/** /**
* 选中数据字符串 * 选中数据字符串
* *
* @type {string} * @type {string}
* @memberof SYS_PERMISSIONPickupGridView * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
@Prop() public selectedData?: string; @Prop() public selectedData?: string;
...@@ -607,7 +636,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -607,7 +636,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* 是否单选 * 是否单选
* *
* @type {boolean} * @type {boolean}
* @memberof SYS_PERMISSIONPickupGridView * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
@Prop() public isSingleSelect?: boolean; @Prop() public isSingleSelect?: boolean;
...@@ -615,7 +644,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -615,7 +644,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* 搜索值 * 搜索值
* *
* @type {string} * @type {string}
* @memberof SYS_PERMISSIONPickupGridView * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
public query: string = ''; public query: string = '';
...@@ -623,7 +652,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -623,7 +652,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* 是否展开搜索表单 * 是否展开搜索表单
* *
* @type {boolean} * @type {boolean}
* @memberof SYS_PERMISSIONPickupGridView * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
public isExpandSearchForm: boolean = true; public isExpandSearchForm: boolean = true;
...@@ -634,7 +663,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -634,7 +663,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* 2 双击激活 * 2 双击激活
* *
* @type {(number | 0 | 1 | 2)} * @type {(number | 0 | 1 | 2)}
* @memberof SYS_PERMISSIONPickupGridView * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
public gridRowActiveMode: number | 0 | 1 | 2 = 2; public gridRowActiveMode: number | 0 | 1 | 2 = 2;
...@@ -642,7 +671,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue { ...@@ -642,7 +671,7 @@ export default class SYS_PERMISSIONPickupGridViewBase extends Vue {
* 快速搜索 * 快速搜索
* *
* @param {*} $event * @param {*} $event
* @memberof SYS_PERMISSIONPickupGridView * @memberof SYS_PERMISSIONPickupGridViewBase
*/ */
public onSearch($event: any): void { public onSearch($event: any): void {
const refs: any = this.$refs; const refs: any = this.$refs;
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
import PickupViewEngine from '@engine/view/pickup-view-engine'; import PickupViewEngine from '@engine/view/pickup-view-engine';
...@@ -255,6 +255,15 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue { ...@@ -255,6 +255,15 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONPickupViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -277,7 +286,7 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue { ...@@ -277,7 +286,7 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONPickupViewBase * @memberof SYS_PERMISSIONPickupViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -307,6 +316,9 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue { ...@@ -307,6 +316,9 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -400,7 +412,7 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue { ...@@ -400,7 +412,7 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissionpickup-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissionpickup-view',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -420,10 +432,24 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue { ...@@ -420,10 +432,24 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue {
* @memberof SYS_PERMISSIONPickupViewBase * @memberof SYS_PERMISSIONPickupViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissionpickup-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -541,13 +567,16 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue { ...@@ -541,13 +567,16 @@ export default class SYS_PERMISSIONPickupViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
/** /**
* 选中数据的字符串 * 选中数据的字符串
* *
* @type {string} * @type {string}
* @memberof SYS_PERMISSIONPickupView * @memberof SYS_PERMISSIONPickupViewBase
*/ */
public selectedData: string = ""; public selectedData: string = "";
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysPermissionService from '@/service/sys-permission/sys-permission-service'; import SysPermissionService from '@/service/sys-permission/sys-permission-service';
...@@ -205,6 +205,15 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue { ...@@ -205,6 +205,15 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_PERMISSIONRedirectViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -227,7 +236,7 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue { ...@@ -227,7 +236,7 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue {
* @public * @public
* @memberof SYS_PERMISSIONRedirectViewBase * @memberof SYS_PERMISSIONRedirectViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -257,6 +266,9 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue { ...@@ -257,6 +266,9 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'syspermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -350,7 +362,7 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue { ...@@ -350,7 +362,7 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-permissionredirect-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-permissionredirect-view',srfkey:this.context.syspermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -370,10 +382,24 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue { ...@@ -370,10 +382,24 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue {
* @memberof SYS_PERMISSIONRedirectViewBase * @memberof SYS_PERMISSIONRedirectViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-permissionredirect-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
this.viewInit(); this.viewInit();
} }
...@@ -453,6 +479,9 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue { ...@@ -453,6 +479,9 @@ export default class SYS_PERMISSIONRedirectViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
/** /**
......
...@@ -105,7 +105,7 @@ ...@@ -105,7 +105,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service'; import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service';
import GridViewEngine from '@engine/view/grid-view-engine'; import GridViewEngine from '@engine/view/grid-view-engine';
...@@ -353,6 +353,15 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -353,6 +353,15 @@ export default class SysRolePermissionGridViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SysRolePermissionGridViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -375,7 +384,7 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -375,7 +384,7 @@ export default class SysRolePermissionGridViewBase extends Vue {
* @public * @public
* @memberof SysRolePermissionGridViewBase * @memberof SysRolePermissionGridViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -405,6 +414,9 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -405,6 +414,9 @@ export default class SysRolePermissionGridViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysrolepermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -498,7 +510,7 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -498,7 +510,7 @@ export default class SysRolePermissionGridViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-role-permission-grid-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-role-permission-grid-view',srfkey:this.context.sysrolepermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -518,10 +530,24 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -518,10 +530,24 @@ export default class SysRolePermissionGridViewBase extends Vue {
* @memberof SysRolePermissionGridViewBase * @memberof SysRolePermissionGridViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-role-permission-grid-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
if(this.formDruipart){ if(this.formDruipart){
this.formDruipart.subscribe((res:any) =>{ this.formDruipart.subscribe((res:any) =>{
if(Object.is(res.action,'save')){ if(Object.is(res.action,'save')){
...@@ -1001,7 +1027,8 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -1001,7 +1027,8 @@ export default class SysRolePermissionGridViewBase extends Vue {
public newdata(args: any[],fullargs?:any[], params?: any, $event?: any, xData?: any) { public newdata(args: any[],fullargs?:any[], params?: any, $event?: any, xData?: any) {
let localContext:any = null; let localContext:any = null;
let localViewParam:any =null; let localViewParam:any =null;
const batchAddPSAppViews=[ let batchAddPSAppViews:Array<any>=[];
batchAddPSAppViews=[
{view:{viewname:'sys-permissionmpickup-view',height: 0,width: 0,title: '权限表数据多项选择视图'}, {view:{viewname:'sys-permissionmpickup-view',height: 0,width: 0,title: '权限表数据多项选择视图'},
res:['SysPermission'], res:['SysPermission'],
'resAppKey':'permissionid'}, 'resAppKey':'permissionid'},
...@@ -1338,6 +1365,9 @@ export default class SysRolePermissionGridViewBase extends Vue { ...@@ -1338,6 +1365,9 @@ export default class SysRolePermissionGridViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_role_permissioncustomview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_role_permissioncustomview"></app-studioaction>
<card class='view-card view-no-toolbar' :disHover="true" :padding="0" :bordered="false"> <card class='view-card view-no-toolbar' :disHover="true" :padding="0" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </div>
<div class="content-container"> <div class="content-container">
</div> </div>
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service'; import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service';
...@@ -211,6 +211,15 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue { ...@@ -211,6 +211,15 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_ROLE_PERMISSIONCustomViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -233,7 +242,7 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue { ...@@ -233,7 +242,7 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue {
* @public * @public
* @memberof SYS_ROLE_PERMISSIONCustomViewBase * @memberof SYS_ROLE_PERMISSIONCustomViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -263,6 +272,9 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue { ...@@ -263,6 +272,9 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysrolepermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -356,7 +368,7 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue { ...@@ -356,7 +368,7 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-role-permissioncustom-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-role-permissioncustom-view',srfkey:this.context.sysrolepermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -376,10 +388,24 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue { ...@@ -376,10 +388,24 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue {
* @memberof SYS_ROLE_PERMISSIONCustomViewBase * @memberof SYS_ROLE_PERMISSIONCustomViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-role-permissioncustom-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -458,6 +484,9 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue { ...@@ -458,6 +484,9 @@ export default class SYS_ROLE_PERMISSIONCustomViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -3,43 +3,40 @@ ...@@ -3,43 +3,40 @@
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_role_permissioneditview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="sys_role_permissioneditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false"> <card class='view-card ' :disHover="true" :bordered="false">
<p slot='title'> <div slot='title' class="header-container">
<span class='caption-info'>{{$t(model.srfTitle)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600">
<div slot="extra"> <i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)">
<div class='toolbar-container'> <i class='fa fa-save'></i>
<tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem3.caption')}}</span>
<i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class='' @click="toolbar_click({ tag: 'tbitem3' }, $event)"> </i-button>
<i class='fa fa-save'></i> <div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem3.tip')}}</div>
<span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem3.caption')}}</span> </tooltip>
</i-button> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem3.tip')}}</div> <i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)">
</tooltip> <i class='sx-tb-saveandclose'></i>
<tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem5.caption')}}</span>
<i-button v-show="toolBarModels.tbitem5.visabled" :disabled="toolBarModels.tbitem5.disabled" class='' @click="toolbar_click({ tag: 'tbitem5' }, $event)"> </i-button>
<i class='sx-tb-saveandclose'></i> <div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem5.tip')}}</div>
<span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem5.caption')}}</span> </tooltip>
</i-button> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem5.tip')}}</div> <i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)">
</tooltip> <i class='fa fa-file-text-o'></i>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem12.caption')}}</span>
<i-button v-show="toolBarModels.tbitem12.visabled" :disabled="toolBarModels.tbitem12.disabled" class='' @click="toolbar_click({ tag: 'tbitem12' }, $event)"> </i-button>
<i class='fa fa-file-text-o'></i> <div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem12.tip')}}</div>
<span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem12.caption')}}</span> </tooltip>
</i-button> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem12.tip')}}</div> <i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)">
</tooltip> <i class='fa fa-copy'></i>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem14.caption')}}</span>
<i-button v-show="toolBarModels.tbitem14.visabled" :disabled="toolBarModels.tbitem14.disabled" class='' @click="toolbar_click({ tag: 'tbitem14' }, $event)"> </i-button>
<i class='fa fa-copy'></i> <div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem14.tip')}}</div>
<span class='caption'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem14.caption')}}</span> </tooltip>
</i-button> </div>
<div slot='content'>{{$t('entities.sysrolepermission.editviewtoolbar_toolbar.tbitem14.tip')}}</div> </div>
</tooltip>
</div>
</div>
<div class="content-container"> <div class="content-container">
<div class='view-top-messages'> <div class='view-top-messages'>
</div> </div>
...@@ -76,7 +73,7 @@ ...@@ -76,7 +73,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service'; import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service';
import EditViewEngine from '@engine/view/edit-view-engine'; import EditViewEngine from '@engine/view/edit-view-engine';
...@@ -309,6 +306,15 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue { ...@@ -309,6 +306,15 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_ROLE_PERMISSIONEditViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -331,7 +337,7 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue { ...@@ -331,7 +337,7 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue {
* @public * @public
* @memberof SYS_ROLE_PERMISSIONEditViewBase * @memberof SYS_ROLE_PERMISSIONEditViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -361,6 +367,9 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue { ...@@ -361,6 +367,9 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysrolepermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -454,7 +463,7 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue { ...@@ -454,7 +463,7 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-role-permissionedit-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-role-permissionedit-view',srfkey:this.context.sysrolepermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -474,10 +483,24 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue { ...@@ -474,10 +483,24 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue {
* @memberof SYS_ROLE_PERMISSIONEditViewBase * @memberof SYS_ROLE_PERMISSIONEditViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-role-permissionedit-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -1011,6 +1034,9 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue { ...@@ -1011,6 +1034,9 @@ export default class SYS_ROLE_PERMISSIONEditViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { UIActionTool,Util } from '@/utils'; import { UIActionTool,Util } from '@/utils';
import NavDataService from '@/service/app/navdata-service'; import NavDataService from '@/service/app/navdata-service';
import { Subject } from 'rxjs'; import { Subject,Subscription } from 'rxjs';
import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service'; import SysRolePermissionService from '@/service/sys-role-permission/sys-role-permission-service';
import PickupGridViewEngine from '@engine/view/pickup-grid-view-engine'; import PickupGridViewEngine from '@engine/view/pickup-grid-view-engine';
...@@ -262,6 +262,15 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -262,6 +262,15 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
*/ */
public navDataService = NavDataService.getInstance(this.$store); public navDataService = NavDataService.getInstance(this.$store);
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/
public serviceStateEvent: Subscription | undefined;
/** /**
* 应用上下文 * 应用上下文
* *
...@@ -284,7 +293,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -284,7 +293,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* @public * @public
* @memberof SYS_ROLE_PERMISSIONPickupGridViewBase * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
public parseViewParam(): void { public parseViewParam(inputvalue:any = null): void {
for(let key in this.context){ for(let key in this.context){
delete this.context[key]; delete this.context[key];
} }
...@@ -314,6 +323,9 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -314,6 +323,9 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
}); });
}); });
this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams); this.$viewTool.formatRouteParams(tempValue,this.$route,this.context,this.viewparams);
if(inputvalue){
Object.assign(this.context,{'sysrolepermission':inputvalue});
}
if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){ if(this.$store.getters.getAppData() && this.$store.getters.getAppData().context){
Object.assign(this.context,this.$store.getters.getAppData().context); Object.assign(this.context,this.$store.getters.getAppData().context);
} }
...@@ -407,7 +419,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -407,7 +419,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
*/ */
public initNavData(data:any = null){ public initNavData(data:any = null){
if(this.viewDefaultUsage){ if(this.viewDefaultUsage){
this.navDataService.addNavData({id:'sys-role-permissionpickup-grid-view',title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath}); this.navDataService.addNavData({id:'sys-role-permissionpickup-grid-view',srfkey:this.context.sysrolepermission,title:this.$t(this.model.srfTitle),data:data,context:this.context,viewparams:this.viewparams,path:this.$route.fullPath});
} }
} }
...@@ -427,10 +439,24 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -427,10 +439,24 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* @memberof SYS_ROLE_PERMISSIONPickupGridViewBase * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
public afterCreated(){ public afterCreated(){
const secondtag = this.$util.createUUID(); let _this:any = this;
this.$store.commit('viewaction/createdView', { viewtag: this.viewtag, secondtag: secondtag }); const secondtag = _this.$util.createUUID();
this.viewtag = secondtag; _this.$store.commit('viewaction/createdView', { viewtag: _this.viewtag, secondtag: secondtag });
this.parseViewParam(); _this.viewtag = secondtag;
_this.parseViewParam();
_this.serviceStateEvent = _this.navDataService.serviceState.subscribe(({ action,name, data }:{ action:string,name:any,data:any }) => {
if(!Object.is(name,'sys-role-permissionpickup-grid-view')){
return;
}
if (Object.is(action, 'viewrefresh')) {
_this.$nextTick(()=>{
_this.parseViewParam(data);
if(_this.engine){
_this.engine.load();
}
});
}
});
} }
...@@ -593,13 +619,16 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -593,13 +619,16 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
} }
}) })
} }
if (this.serviceStateEvent) {
this.serviceStateEvent.unsubscribe();
}
} }
} }
/** /**
* 选中数据字符串 * 选中数据字符串
* *
* @type {string} * @type {string}
* @memberof SYS_ROLE_PERMISSIONPickupGridView * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
@Prop() public selectedData?: string; @Prop() public selectedData?: string;
...@@ -607,7 +636,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -607,7 +636,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* 是否单选 * 是否单选
* *
* @type {boolean} * @type {boolean}
* @memberof SYS_ROLE_PERMISSIONPickupGridView * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
@Prop() public isSingleSelect?: boolean; @Prop() public isSingleSelect?: boolean;
...@@ -615,7 +644,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -615,7 +644,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* 搜索值 * 搜索值
* *
* @type {string} * @type {string}
* @memberof SYS_ROLE_PERMISSIONPickupGridView * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
public query: string = ''; public query: string = '';
...@@ -623,7 +652,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -623,7 +652,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* 是否展开搜索表单 * 是否展开搜索表单
* *
* @type {boolean} * @type {boolean}
* @memberof SYS_ROLE_PERMISSIONPickupGridView * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
public isExpandSearchForm: boolean = true; public isExpandSearchForm: boolean = true;
...@@ -634,7 +663,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -634,7 +663,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* 2 双击激活 * 2 双击激活
* *
* @type {(number | 0 | 1 | 2)} * @type {(number | 0 | 1 | 2)}
* @memberof SYS_ROLE_PERMISSIONPickupGridView * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
public gridRowActiveMode: number | 0 | 1 | 2 = 2; public gridRowActiveMode: number | 0 | 1 | 2 = 2;
...@@ -642,7 +671,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue { ...@@ -642,7 +671,7 @@ export default class SYS_ROLE_PERMISSIONPickupGridViewBase extends Vue {
* 快速搜索 * 快速搜索
* *
* @param {*} $event * @param {*} $event
* @memberof SYS_ROLE_PERMISSIONPickupGridView * @memberof SYS_ROLE_PERMISSIONPickupGridViewBase
*/ */
public onSearch($event: any): void { public onSearch($event: any): void {
const refs: any = this.$refs; const refs: any = this.$refs;
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册