提交 3952e4da 编写于 作者: ibizdev's avatar ibizdev

ibizdev提交

上级 e230362e
tinymce.addI18n('en_US',{
"Cut": "Cut",
"Heading 5": "Heading 5",
"Header 2": "Header 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.",
"Heading 4": "Heading 4",
"Div": "Div",
"Heading 2": "Heading 2",
"Paste": "Paste",
"Close": "Close",
"Font Family": "Font Family",
"Pre": "Pre",
"Align right": "Align right",
"New document": "New document",
"Blockquote": "Blockquote",
"Numbered list": "Numbered list",
"Heading 1": "Heading 1",
"Headings": "Headings",
"Increase indent": "Increase indent",
"Formats": "Formats",
"Headers": "Headers",
"Select all": "Select all",
"Header 3": "Header 3",
"Blocks": "Blocks",
"Undo": "Undo",
"Strikethrough": "Strike-through",
"Bullet list": "Bullet list",
"Header 1": "Header 1",
"Superscript": "Superscript",
"Clear formatting": "Clear formatting",
"Font Sizes": "Font Sizes",
"Subscript": "Subscript",
"Header 6": "Header 6",
"Redo": "Redo",
"Paragraph": "Paragraph",
"Ok": "Ok",
"Bold": "Bold",
"Code": "Code",
"Italic": "Italic",
"Align center": "Align centre",
"Header 5": "Header 5",
"Heading 6": "Heading 6",
"Heading 3": "Heading 3",
"Decrease indent": "Decrease indent",
"Header 4": "Header 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.",
"Underline": "Underline",
"Cancel": "Cancel",
"Justify": "Justify",
"Inline": "Inline",
"Copy": "Copy",
"Align left": "Align left",
"Visual aids": "Visual aids",
"Lower Greek": "Lower Greek",
"Square": "Square",
"Default": "Default",
"Lower Alpha": "Lower Alpha",
"Circle": "Circle",
"Disc": "Disc",
"Upper Alpha": "Upper Alpha",
"Upper Roman": "Upper Roman",
"Lower Roman": "Lower Roman",
"Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.": "ID should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.",
"Name": "Name",
"Anchor": "Anchor",
"Id": "ID",
"You have unsaved changes are you sure you want to navigate away?": "You have unsaved changes are you sure you want to navigate away?",
"Restore last draft": "Restore last draft",
"Special character": "Special character",
"Source code": "Source code",
"Language": "Language",
"Insert\/Edit code sample": "Insert\/Edit code sample",
"B": "B",
"R": "R",
"G": "G",
"Color": "Colour",
"Right to left": "Right to left",
"Left to right": "Left to right",
"Emoticons": "Emoticons",
"Robots": "Robots",
"Document properties": "Document properties",
"Title": "Title",
"Keywords": "Keywords",
"Encoding": "Encoding",
"Description": "Description",
"Author": "Author",
"Fullscreen": "Full-screen",
"Horizontal line": "Horizontal line",
"Horizontal space": "Horizontal space",
"Insert\/edit image": "Insert\/edit image",
"General": "General",
"Advanced": "Advanced",
"Source": "Source",
"Border": "Border",
"Constrain proportions": "Constrain proportions",
"Vertical space": "Vertical space",
"Image description": "Image description",
"Style": "Style",
"Dimensions": "Dimensions",
"Insert image": "Insert image",
"Image": "Image",
"Zoom in": "Zoom in",
"Contrast": "Contrast",
"Back": "Back",
"Gamma": "Gamma",
"Flip horizontally": "Flip horizontally",
"Resize": "Resize",
"Sharpen": "Sharpen",
"Zoom out": "Zoom out",
"Image options": "Image options",
"Apply": "Apply",
"Brightness": "Brightness",
"Rotate clockwise": "Rotate clockwise",
"Rotate counterclockwise": "Rotate counterclockwise",
"Edit image": "Edit image",
"Color levels": "Colour levels",
"Crop": "Crop",
"Orientation": "Orientation",
"Flip vertically": "Flip vertically",
"Invert": "Invert",
"Date\/time": "Date\/time",
"Insert date\/time": "Insert date\/time",
"Remove link": "Remove link",
"Url": "URL",
"Text to display": "Text to display",
"Anchors": "Anchors",
"Insert link": "Insert link",
"Link": "Link",
"New window": "New window",
"None": "None",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Paste or type a link": "Paste or type a link",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Insert\/edit link",
"Insert\/edit video": "Insert\/edit video",
"Media": "Media",
"Alternative source": "Alternative source",
"Paste your embed code below:": "Paste your embed code below:",
"Insert video": "Insert video",
"Poster": "Poster",
"Insert\/edit media": "Insert\/edit media",
"Embed": "Embed",
"Nonbreaking space": "Non-breaking space",
"Page break": "Page break",
"Paste as text": "Paste as text",
"Preview": "Preview",
"Print": "Print",
"Save": "Save",
"Could not find the specified string.": "Could not find the specified string.",
"Replace": "Replace",
"Next": "Next",
"Whole words": "Whole words",
"Find and replace": "Find and replace",
"Replace with": "Replace with",
"Find": "Find",
"Replace all": "Replace all",
"Match case": "Match case",
"Prev": "Prev",
"Spellcheck": "Spell-check",
"Finish": "Finish",
"Ignore all": "Ignore all",
"Ignore": "Ignore",
"Add to Dictionary": "Add to Dictionary",
"Insert row before": "Insert row before",
"Rows": "Rows",
"Height": "Height",
"Paste row after": "Paste row after",
"Alignment": "Alignment",
"Border color": "Border colour",
"Column group": "Column group",
"Row": "Row",
"Insert column before": "Insert column before",
"Split cell": "Split cell",
"Cell padding": "Cell padding",
"Cell spacing": "Cell spacing",
"Row type": "Row type",
"Insert table": "Insert table",
"Body": "Body",
"Caption": "Caption",
"Footer": "Footer",
"Delete row": "Delete row",
"Paste row before": "Paste row before",
"Scope": "Scope",
"Delete table": "Delete table",
"H Align": "H Align",
"Top": "Top",
"Header cell": "Header cell",
"Column": "Column",
"Row group": "Row group",
"Cell": "Cell",
"Middle": "Middle",
"Cell type": "Cell type",
"Copy row": "Copy row",
"Row properties": "Row properties",
"Table properties": "Table properties",
"Bottom": "Bottom",
"V Align": "V Align",
"Header": "Header",
"Right": "Right",
"Insert column after": "Insert column after",
"Cols": "Cols",
"Insert row after": "Insert row after",
"Width": "Width",
"Cell properties": "Cell properties",
"Left": "Left",
"Cut row": "Cut row",
"Delete column": "Delete column",
"Center": "Centre",
"Merge cells": "Merge cells",
"Insert template": "Insert template",
"Templates": "Templates",
"Background color": "Background colour",
"Custom...": "Custom...",
"Custom color": "Custom colour",
"No color": "No colour",
"Text color": "Text colour",
"Table of Contents": "Table of Contents",
"Show blocks": "Show blocks",
"Show invisible characters": "Show invisible characters",
"Words: {0}": "Words: {0}",
"Insert": "Insert",
"File": "File",
"Edit": "Edit",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help",
"Tools": "Tools",
"View": "View",
"Table": "Table",
"Format": "Format"
});
\ No newline at end of file
<template> <template>
<div id='app'> <div id='app'>
<app-debug-actions />
<router-view v-if="isRouterAlive"/> <router-view v-if="isRouterAlive"/>
</div> </div>
</template> </template>
......
...@@ -60,6 +60,8 @@ import AppActionBar from './components/app-actionbar/app-actionbar.vue' ...@@ -60,6 +60,8 @@ import AppActionBar from './components/app-actionbar/app-actionbar.vue'
import AppOrgSector from './components/app-orgsector/app-orgsector.vue' import AppOrgSector from './components/app-orgsector/app-orgsector.vue'
import AppBuild from './components/app-build/app-build.vue' import AppBuild from './components/app-build/app-build.vue'
import AppStudioAction from './components/app-studioaction/app-studioaction.vue' import AppStudioAction from './components/app-studioaction/app-studioaction.vue'
import AppDebugActions from './components/app-debug-actions/app-debug-actions.vue'
import AppHeaderMenus from './components/app-header-menus/app-header-menus.vue'
// 全局挂载UI实体服务注册中心 // 全局挂载UI实体服务注册中心
window['uiServiceRegister'] = uiServiceRegister; window['uiServiceRegister'] = uiServiceRegister;
...@@ -129,5 +131,7 @@ export const AppComponents = { ...@@ -129,5 +131,7 @@ export const AppComponents = {
v.component('app-orgsector', AppOrgSector); v.component('app-orgsector', AppOrgSector);
v.component('app-build', AppBuild); v.component('app-build', AppBuild);
v.component('app-studioaction', AppStudioAction); v.component('app-studioaction', AppStudioAction);
v.component('app-debug-actions', AppDebugActions);
v.component('app-header-menus', AppHeaderMenus);
}, },
}; };
\ No newline at end of file
app_Web/src/assets/img/logo.png

6.7 KB | W: | H:

app_Web/src/assets/img/logo.png

2.0 KB | W: | H:

app_Web/src/assets/img/logo.png
app_Web/src/assets/img/logo.png
app_Web/src/assets/img/logo.png
app_Web/src/assets/img/logo.png
  • 2-up
  • Swipe
  • Onion skin
<template> <template>
<checkbox-group class="app-checkbox-list" v-model="selectArray"> <checkbox-group class="app-checkbox-list" v-model="selectArray">
<checkbox v-for="(item,index) in items" :key="index" :label="item.value" :disabled="isDisabled || item.disabled"> <checkbox v-for="(item,index) in items" :key="index" :label="item.value" :disabled="isDisabled || item.disabled">
<span>{{item.text}}</span> <span>{{Object.is(codelistType,'STATIC') ? $t('codelist.'+tag+'.'+item.value) : item.text}}</span>
</checkbox> </checkbox>
</checkbox-group > </checkbox-group >
</template> </template>
......
.app-debug-actions {
position: absolute;
top: 0px;
left: 50%;
z-index: 10000;
text-align: center;
transition: all 0.3s;
margin-top: -32px;
>.actions {
.ivu-btn {
width: 100%;
}
}
>.show-buttons {
width: 100%;
height: 18px;
border-width: 0px 1px 1px 1px;
border-style: solid;
border-color: #8893a7;
text-align: center;
color: #8893a7;
cursor: pointer;
>.button {
margin-top: -5px;
}
}
}
.app-debug-actions:hover {
margin-top: 0px;
}
\ No newline at end of file
<template>
<div class="app-debug-actions">
<div class="actions">
<button-group vertical>
<i-button title="开启配置模式" :type="sdc.isShowTool ? 'warning' : 'info'" ghost @click="() => sdc.showToolChange()" :icon="sdc.isShowTool ? 'ios-bug' : 'ios-bug-outline'" ></i-button>
</button-group>
</div>
<div class="show-buttons">
<div class="button"><i class="ivu-icon ivu-icon-ios-arrow-down" /></div>
</div>
</div>
</template>
<script lang = 'ts'>
import { Vue, Component } from 'vue-property-decorator';
import { StudioActionUtil } from '@/utils';
import { Environment } from '@/environments/environment';
/**
* 开发模式控制行为组
*
* @export
* @class AppDebugActions
* @extends {Vue}
*/
@Component({})
export default class AppDebugActions extends Vue {
/**
* 配置平台操作控制器
*
* @type {StudioActionController}
* @memberof AppDebugActions
*/
public sdc: StudioActionUtil = StudioActionUtil.getInstance();
}
</script>
<style lang = "less">
@import "./app-debug-actions.less";
</style>
\ No newline at end of file
...@@ -2,17 +2,17 @@ ...@@ -2,17 +2,17 @@
<dropdown v-if="itemLevel === 0" :transfer="true" trigger='click'> <dropdown v-if="itemLevel === 0" :transfer="true" trigger='click'>
<i-button :disabled="item.disabled"> <i-button :disabled="item.disabled">
<i class='fa fa-file-excel-o'></i> <i class='fa fa-file-excel-o'></i>
<span class='caption'>{{item.caption}}</span> <span class='caption'>{{caption}}</span>
</i-button> </i-button>
<dropdown-menu slot='list'> <dropdown-menu slot='list'>
<dropdown-item> <dropdown-item>
<p @click="exportExcel($event, 'maxRowCount')"> <p @click="exportExcel($event, 'maxRowCount')">
{{item.caption}}全部(最大{{item.caption}}{{item.MaxRowCount}}) {{caption}}{{$t('info.total')}}({{$t('info.max')}}{{caption}}{{item.MaxRowCount}}{{$t('info.row')}})
</p> </p>
</dropdown-item> </dropdown-item>
<dropdown-item> <dropdown-item>
<p @click="exportExcel($event, 'activatedPage')"> <p @click="exportExcel($event, 'activatedPage')">
{{this.item.caption}}当前页 {{caption}}{{$t('info.currentPage')}}
</p> </p>
</dropdown-item> </dropdown-item>
</dropdown-menu> </dropdown-menu>
...@@ -29,7 +29,28 @@ import { Vue, Component, Prop, Watch } from 'vue-property-decorator'; ...@@ -29,7 +29,28 @@ import { Vue, Component, Prop, Watch } from 'vue-property-decorator';
* @class AppExportExcel * @class AppExportExcel
* @extends {Vue} * @extends {Vue}
*/ */
@Component({}) @Component({
i18n: {
messages: {
'zh-CN': {
info: {
total: '全部',
max: '最大',
row: '行',
currentPage: '当前页',
}
},
'en-US': {
info: {
total: 'All',
max: 'At Most',
row: 'Lines',
currentPage: 'Current Page',
}
}
}
}
})
export default class AppExportExcel extends Vue { export default class AppExportExcel extends Vue {
/** /**
...@@ -40,6 +61,173 @@ export default class AppExportExcel extends Vue { ...@@ -40,6 +61,173 @@ export default class AppExportExcel extends Vue {
*/ */
@Prop() public item?: any; @Prop() public item?: any;
/**
* 工具栏项
*
* @type {*}
* @memberof AppExportExcel
*/
@Prop() public caption?: any;
/**
* 工具栏项层级
*
* @type {number}
* @memberof AppExportExcel
*/
@Prop({ default: 0 }) public itemLevel!: number;
/**
* 起始页
*
* @type {(string | null)}
* @memberof AppExportExcel
*/
public startPage: string | null = null;
/**
* 结束页
*
* @type {(string | null)}
* @memberof AppExportExcel
*/
public endPage: string | null = null;
/**
* 是否显示下拉菜单
*
* @type {boolean}
* @memberof AppExportExcel
*/
public visible: boolean = false;
/**
* 点击触发相似
*
* @memberof AppExportExcel
*/
public clickVisible(): void {
this.visible = !this.visible
}
/**
* 导出数据
*
* @param {*} $event
* @param {string} type
* @returns {void}
* @memberof AppExportExcel
*/
public exportExcel($event: any, type: string): void {
const exportparms: any = { type: type };
if (Object.is(type, 'maxRowCount')) {
Object.assign(exportparms, { maxRowCount: this.item.MaxRowCount })
this.visible = false;
} else if (Object.is(type, 'activatedPage')) {
this.visible = false;
} else if (Object.is(type, 'custom')) {
if (!this.startPage || !this.endPage) {
this.$Notice.warning({ title: '警告', desc: '请输入起始页' });
return;
}
const startPage: any = Number.parseInt(this.startPage, 10);
const endPage: any = Number.parseInt(this.endPage, 10);
if (Number.isNaN(startPage) || Number.isNaN(endPage)) {
this.$Notice.warning({ title: '警告', desc: '请输入有效的起始页' });
return;
}
if (startPage < 1 || endPage < 1 || startPage > endPage) {
this.$Notice.warning({ title: '警告', desc: '请输入有效的起始页' });
return;
}
this.startPage = null;
this.endPage = null;
Object.assign(exportparms, { startPage: startPage, endPage: endPage });
this.visible = false;
}
if (!this.visible) {
Object.assign($event, { exportparms: exportparms });
this.$emit('exportexcel', $event);
}
}
}
</script>
<style lang='less'>
@import './app-export-excel.less';
</style><template>
<dropdown v-if="itemLevel === 0" :transfer="true" trigger='click'>
<i-button :disabled="item.disabled">
<i class='fa fa-file-excel-o'></i>
<span class='caption'>{{caption}}</span>
</i-button>
<dropdown-menu slot='list'>
<dropdown-item>
<p @click="exportExcel($event, 'maxRowCount')">
{{caption}}{{$t('info.total')}}({{$t('info.max')}}{{caption}}{{item.MaxRowCount}}{{$t('info.row')}})
</p>
</dropdown-item>
<dropdown-item>
<p @click="exportExcel($event, 'activatedPage')">
{{caption}}{{$t('info.currentPage')}}
</p>
</dropdown-item>
</dropdown-menu>
</dropdown>
</template>
<script lang="ts">
import { Vue, Component, Prop, Watch } from 'vue-property-decorator';
/**
* 数据导出组件
*
* @export
* @class AppExportExcel
* @extends {Vue}
*/
@Component({
i18n: {
messages: {
'zh-CN': {
info: {
total: '全部',
max: '最大',
row: '行',
currentPage: '当前页',
}
},
'en-US': {
info: {
total: 'All',
max: 'At Most',
row: 'Lines',
currentPage: 'Current Page',
}
}
}
}
})
export default class AppExportExcel extends Vue {
/**
* 工具栏项
*
* @type {*}
* @memberof AppExportExcel
*/
@Prop() public item?: any;
/**
* 工具栏项
*
* @type {*}
* @memberof AppExportExcel
*/
@Prop() public caption?: any;
/** /**
* 工具栏项层级 * 工具栏项层级
* *
......
.app-header-menus {
display: flex;
align-items: center;
height: 100%;
line-height: 20px;
>.app-header-menu-item{
height: 24px;
display: flex;
align-items: center;
margin-right: 16px;
color: #8893a7;
border: 1px solid rgba(0, 0, 0, 0);
cursor: pointer;
}
>.app-header-menu-item.icon {
>.app-header-menu-item-icon {
font-size: 20px;
}
>.app-header-menu-item-img {
height: 20px;
width: 20px;
>img {
height: 100%;
width: 100%;
}
}
}
>.app-header-menu-item.icon:hover{
color: #68758e;
text-decoration: none;
}
>.app-header-menu-item.text {
border-radius: 4px;
border: 1px solid #8893a7;
text-align: center;
font-size: 12px;
padding: 2px 4px;
>.app-header-menu-item-icon {
width: 20px;
height: 20px;
overflow: hidden;
font-size: 16px;
margin-right: 3px;
margin-top: -3px;
}
>.app-header-menu-item-img {
height: 16px;
width: 16px;
margin-right: 3px;
>img {
height: 100%;
width: 100%;
}
}
}
>.app-header-menu-item.text:hover {
color: #107fff;
border: 1px solid #107fff;
}
}
.app-header-menus:hover {
background: none !important;
}
\ No newline at end of file
<template>
<div class="app-header-menus">
<div v-for="menu in menus" class="app-header-menu-item text" @click="openWindow(menu)">
<div class="app-header-menu-item-icon">
<i :class="menu.iconcls" :aria-hidden="true" />
</div>
<div class="app-header-menu-item-text">{{$t(menu.title)}}</div>
</div>
</div>
</template>
<script lang="ts">
import { Vue, Component, Prop, Model, Emit } from "vue-property-decorator";
import { Subject } from "rxjs";
import { Environment } from '@/environments/environment';
@Component({
i18n: {
messages: {
'zh-CN': {
menus: {
ibizlab:{
title: 'iBiz开放平台',
},
publishProject:{
title: '项目文件',
},
ibizstudio:{
title: '模型设计工具',
},
ibizbbs:{
title: 'iBiz论坛',
},
}
},
'en-US': {
menus: {
ibizlab:{
title: 'iBizLab',
},
publishProject:{
title: 'Publish Project',
},
ibizstudio:{
title: 'Model Design Tools',
},
ibizbbs:{
title: 'iBizBBS',
},
}
}
}
}
})
export default class AppHeaderMenus extends Vue {
/**
* 菜单数据
*
* @type {any}
* @memberof AppHeaderMenus
*/
public menus:any = [
{
name: "ibizlab",
title: "menus.ibizlab.title",
url: Environment.ibizlabtUrl,
iconcls: 'fa fa-home',
},
{
name: "publishProject",
title: "menus.publishProject.title",
url: Environment.PublishProjectUrl,
iconcls: 'fa fa-folder-open-o',
},
{
name: "ibizstudio",
title: "menus.ibizstudio.title",
url: `${Environment.StudioUrl}?#/common_slnindex/srfkeys=${Environment.DCId}/sysdesign_psdevslnsysmodeltreeexpview`,
iconcls: 'fa fa-wrench',
},
{
name: "ibizbbs",
title: "menus.ibizbbs.title",
url: Environment.ibizbbstUrl,
iconcls: 'fa fa-comments-o',
},
];
/**
* 触发界面行为
*
* @memberof AppHeaderMenus
*/
public openWindow(menu:any){
window.open(menu.url, '_blank');
}
}
</script>
<style lang='less'>
@import "./app-header-menus.less";
</style>
\ No newline at end of file
<template> <template>
<dropdown trigger='click' on-click="selectLang"> <dropdown trigger='click' @on-click="selectLang">
<span> <span>
{{title}} {{title}}
<icon size='18' type='md-arrow-dropdown'></icon> <icon size='18' type='md-arrow-dropdown'></icon>
......
<template> <template>
<radio-group class="app-radio-group" v-model="value" > <radio-group class="app-radio-group" v-model="value" >
<radio v-for="(_item,index) in items" :key = "index" :label="_item.value" :disabled="isDisabled || _item.disabled"> <radio v-for="(_item,index) in items" :key = "index" :label="_item.value" :disabled="isDisabled || _item.disabled">
<span>{{_item.text}}</span> <span>{{Object.is(codelistType,'STATIC') ? $t('codelist.'+tag+'.'+_item.value) : _item.text}}</span>
</radio> </radio>
</radio-group> </radio-group>
</template> </template>
......
...@@ -44,6 +44,7 @@ export default class AppRichTextEditor extends Vue { ...@@ -44,6 +44,7 @@ export default class AppRichTextEditor extends Vue {
this.init(newval); this.init(newval);
} }
} }
/** /**
* 输入name * 输入name
...@@ -63,17 +64,38 @@ export default class AppRichTextEditor extends Vue { ...@@ -63,17 +64,38 @@ export default class AppRichTextEditor extends Vue {
/** /**
* 当前语言,默认中文 * 当前语言,默认中文
*/ */
@Prop() langu?: string; public langu: any = localStorage.getItem('local') ? localStorage.getItem('local') : 'zh_CN' ;
/**
* 监听语言变化
*/
@Watch('$i18n.locale')
onLocaleChange(newval: any, val: any) {
console.log("语言变更"+newval)
this.langu = newval;
if(this.editor){
tinymceCode.remove('#' + this.id);
}
this.init('');
}
/**
* 语言映射文件
*/
public languMap:any = {
'zh-CN': 'zh_CN',
'en-US': 'en_US',
};
/** /**
* 上传文件路径 * 上传文件路径
*/ */
public uploadUrl = '/' + Environment.BaseUrl + Environment.UploadFile; public uploadUrl = Environment.BaseUrl + Environment.UploadFile;
/** /**
* 下载路径 * 下载路径
*/ */
public downloadUrl = '/' + Environment.BaseUrl + Environment.ExportFile; public downloadUrl = Environment.BaseUrl + Environment.ExportFile;
/** /**
* 当前富文本 * 当前富文本
...@@ -154,7 +176,8 @@ export default class AppRichTextEditor extends Vue { ...@@ -154,7 +176,8 @@ export default class AppRichTextEditor extends Vue {
paste_data_images: true, paste_data_images: true,
codesample_content_css: 'assets/tinymce/prism.css', codesample_content_css: 'assets/tinymce/prism.css',
skin_url: './assets/tinymce/skins/lightgray', skin_url: './assets/tinymce/skins/lightgray',
language_url: './assets/tinymce/langs/' + (this.langu ? this.langu : 'zh_CN') + '.js', language_url: './assets/tinymce/langs/' + this.languMap[this.langu] + '.js',
language:this.languMap[this.langu],
setup: (editor: any) => { setup: (editor: any) => {
this.editor = editor; this.editor = editor;
editor.on('blur', () => { editor.on('blur', () => {
...@@ -166,14 +189,15 @@ export default class AppRichTextEditor extends Vue { ...@@ -166,14 +189,15 @@ export default class AppRichTextEditor extends Vue {
const formData = new FormData(); const formData = new FormData();
formData.append('file', bolbinfo.blob(), bolbinfo.filename()); formData.append('file', bolbinfo.blob(), bolbinfo.filename());
const _url = richtexteditor.uploadUrl; const _url = richtexteditor.uploadUrl;
richtexteditor.uploadFile(_url, formData).subscribe((response: any) => { richtexteditor.uploadFile(_url, formData).subscribe((file: any) => {
if (response.ret === 0 && response.files.length > 0) { if (file.filename) {
const id: string = response.files[0].id; const id: string = file.fileid;
const url: string = `${richtexteditor.downloadUrl}?fileid=${id}` const url: string = `${richtexteditor.downloadUrl}/${id}`
success(url); success(url);
} }
}, (error: any) => { }, (error: any) => {
console.log(error); console.log(error);
failure('HTTP Error: ' + error.status);
}); });
}, },
init_instance_callback: (editor: any) => { init_instance_callback: (editor: any) => {
......
<template> <template>
<span>{{text}}</span> <span>{{isUseLangres ? $t(text) : text}}</span>
</template> </template>
<script lang="ts"> <script lang="ts">
...@@ -85,6 +85,13 @@ export default class DropDownList extends Vue { ...@@ -85,6 +85,13 @@ export default class DropDownList extends Vue {
this.load(); this.load();
} }
/**
* 是否使用多语言资源
* @type {boolean}
* @memberof AppSpan
*/
public isUseLangres:boolean = false;
/** /**
* 加载代码表 * 加载代码表
* *
...@@ -125,12 +132,26 @@ export default class DropDownList extends Vue { ...@@ -125,12 +132,26 @@ export default class DropDownList extends Vue {
* @memberof AppSpan * @memberof AppSpan
*/ */
public setText(){ public setText(){
this.isUseLangres = false;
if(this.items.length>0){ if(this.items.length>0){
let currentItem:any = this.items.find((item:any)=>{ let currentItem:any = this.items.find((item:any)=>{
return item.value == this.data; return item.value == this.data;
}); });
if(currentItem){ if(currentItem){
this.text = currentItem.label; if(Object.is(this.codelistType,'STATIC')){
this.isUseLangres = true;
this.text = 'codelist.'+this.tag+'.'+this.data;
}else{
this.text = currentItem.label;
}
}else{
// 不匹配显示原值,不存在显示空值
if(this.data){
this.text = this.data;
}else{
this.isUseLangres = true;
this.text = 'codelist.'+this.tag+'.empty';
}
} }
}else{ }else{
this.text = this.data; this.text = this.data;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div class='app-header-user'> <div class='app-header-user'>
<dropdown @on-click="userSelect" :transfer="true"> <dropdown @on-click="userSelect" :transfer="true">
<div class='user'> <div class='user'>
<span>{{user.name}}</span> <span>{{user.name ? user.name : $t('user.name')}}</span>
&nbsp;&nbsp;<avatar :src="user.avatar" /> &nbsp;&nbsp;<avatar :src="user.avatar" />
</div> </div>
<dropdown-menu class='menu' slot='list' style='font-size: 15px !important;'> <dropdown-menu class='menu' slot='list' style='font-size: 15px !important;'>
...@@ -22,14 +22,14 @@ import { Vue, Component } from 'vue-property-decorator'; ...@@ -22,14 +22,14 @@ import { Vue, Component } from 'vue-property-decorator';
messages: { messages: {
'zh-CN': { 'zh-CN': {
user: { user: {
name: '匿名访问', name: '系统管理员',
logout: '退出登陆', logout: '退出登陆',
surelogout: '确认要退出登陆?', surelogout: '确认要退出登陆?',
} }
}, },
'en-US': { 'en-US': {
user: { user: {
name: 'Anonymous access', name: 'System',
logout: 'Logout', logout: 'Logout',
surelogout: 'Are you sure logout?', surelogout: 'Are you sure logout?',
} }
...@@ -45,7 +45,7 @@ export default class AppUser extends Vue { ...@@ -45,7 +45,7 @@ export default class AppUser extends Vue {
* @memberof AppUser * @memberof AppUser
*/ */
public user = { public user = {
name: 'user.name', name: '',
avatar: './assets/img/avatar.png', avatar: './assets/img/avatar.png',
} }
......
<template> <template>
<div class="codelist"> <div class="codelist">
<span v-if="ifEmpty">{{emptytext}}</span> <span v-if="ifEmpty">{{$t('codelist.'+srfkey+'.empty')}}</span>
<template v-if="!ifEmpty"> <template v-if="!ifEmpty">
<template v-if="renderMode == 'string'"> <template v-if="renderMode == 'string'">
<template v-for="(val, index) in items"> <template v-for="(val, index) in items">
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<template v-for="(item, index) in val"> <template v-for="(item, index) in val">
{{ index != 0 ? "、" : ''}} {{ index != 0 ? "、" : ''}}
<i v-if="item.iconCls" :class="item.iconCls"></i> <i v-if="item.iconCls" :class="item.iconCls"></i>
<span :class="item.textCls" :style="{color:item.color}">{{item.text}}</span> <span :class="item.textCls" :style="{color:item.color}">{{isUseLangres ? $t(item.text) : item.text}}</span>
</template> </template>
</template> </template>
</template> </template>
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<template v-for="(item, index) in items"> <template v-for="(item, index) in items">
{{ index != 0 ? textSeparator : ''}} {{ index != 0 ? textSeparator : ''}}
<i v-if="item.iconCls" :class="item.iconCls"></i> <i v-if="item.iconCls" :class="item.iconCls"></i>
<span :class="item.textCls" :style="{color:item.color}">{{item.text}}</span> <span :class="item.textCls" :style="{color:item.color}">{{isUseLangres ? $t(item.text) : item.text}}</span>
</template> </template>
</template> </template>
</template> </template>
...@@ -113,6 +113,13 @@ export default class CodeList extends Vue { ...@@ -113,6 +113,13 @@ export default class CodeList extends Vue {
this.dataHandle(); this.dataHandle();
} }
/**
* 是否使用多语言资源
* @type {boolean}
* @memberof CodeList
*/
public isUseLangres:boolean = false;
/** /**
* 数据值变化 * 数据值变化
* *
...@@ -133,6 +140,7 @@ export default class CodeList extends Vue { ...@@ -133,6 +140,7 @@ export default class CodeList extends Vue {
* @memberof CodeList * @memberof CodeList
*/ */
private dataHandle(){ private dataHandle(){
this.isUseLangres = false;
let _this = this; let _this = this;
// 空值判断 // 空值判断
if(Object.is(this.$util.typeOf(this.value), 'undefined') || Object.is(this.$util.typeOf(this.value), 'null')){ if(Object.is(this.$util.typeOf(this.value), 'undefined') || Object.is(this.$util.typeOf(this.value), 'null')){
...@@ -150,6 +158,7 @@ export default class CodeList extends Vue { ...@@ -150,6 +158,7 @@ export default class CodeList extends Vue {
}); });
// 静态处理 // 静态处理
} else if(Object.is(this.codelistType, "STATIC")){ } else if(Object.is(this.codelistType, "STATIC")){
this.isUseLangres = true;
let items = this.$store.getters.getCodeListItems(this.srfkey); let items = this.$store.getters.getCodeListItems(this.srfkey);
_this.setItems(items, _this); _this.setItems(items, _this);
} }
...@@ -168,6 +177,7 @@ export default class CodeList extends Vue { ...@@ -168,6 +177,7 @@ export default class CodeList extends Vue {
if (items) { if (items) {
let result:any = []; let result:any = [];
if(Object.is(this.renderMode,"number")){ if(Object.is(this.renderMode,"number")){
this.isUseLangres = false;
items.map((_item: any, index: number)=>{ items.map((_item: any, index: number)=>{
const nValue = parseInt((_this.value as any), 10); const nValue = parseInt((_this.value as any), 10);
const codevalue = _item.value; const codevalue = _item.value;
...@@ -186,6 +196,9 @@ export default class CodeList extends Vue { ...@@ -186,6 +196,9 @@ export default class CodeList extends Vue {
result[index].push(item); result[index].push(item);
} }
}); });
if(result[index].length == 0){
result.splice(index,1);
}
}); });
} else { } else {
let values: any[] = Object.is(this.$util.typeOf(this.value), 'number') ? [this.value] : [...(this.value as any).split(this.valueSeparator)]; let values: any[] = Object.is(this.$util.typeOf(this.value), 'number') ? [this.value] : [...(this.value as any).split(this.valueSeparator)];
...@@ -198,9 +211,13 @@ export default class CodeList extends Vue { ...@@ -198,9 +211,13 @@ export default class CodeList extends Vue {
} }
// 设置items // 设置items
if(result.length != 0){ if(result.length != 0){
_this.items = result; _this.items = result;
}else{ }else{
_this.items = [{text:"不匹配"}]; if(Object.is(this.renderMode,"string")){
_this.items = [[{text:this.value}]];
} else {
_this.items = [{text:this.value}];
}
} }
} }
} }
...@@ -221,10 +238,18 @@ export default class CodeList extends Vue { ...@@ -221,10 +238,18 @@ export default class CodeList extends Vue {
return undefined; return undefined;
} }
result = { ...arr[0] }; result = { ...arr[0] };
return result; if(Object.is(this.codelistType,'STATIC')){
let value = JSON.parse(JSON.stringify(result));
value.text = 'codelist.'+this.srfkey+'.'+value.value;
return value;
}else{
return result;
}
} }
} }
</script> </script>
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
:placeholder="placeholder ? this.placeholder : '请选择'"> :placeholder="placeholder ? this.placeholder : '请选择'">
<i-option v-for="(item, index) in items" :key="index" :value="item.value" :label="item.text"> <i-option v-for="(item, index) in items" :key="index" :value="item.value" :label="item.text">
<Checkbox :value = "(currentVal.indexOf(item.value))==-1?false:true"> <Checkbox :value = "(currentVal.indexOf(item.value))==-1?false:true">
{{item.text}} {{Object.is(codelistType,'STATIC') ? $t('codelist.'+tag+'.'+item.value) : item.text}}
</Checkbox> </Checkbox>
</i-option> </i-option>
</i-select> </i-select>
...@@ -110,7 +110,6 @@ export default class DropDownList extends Vue { ...@@ -110,7 +110,6 @@ export default class DropDownList extends Vue {
* @memberof DropDownListMpicker * @memberof DropDownListMpicker
*/ */
public created() { public created() {
this.currentVal = [];
if(this.tag && Object.is(this.codelistType,"STATIC")){ if(this.tag && Object.is(this.codelistType,"STATIC")){
const codelist = this.$store.getters.getCodeList(this.tag); const codelist = this.$store.getters.getCodeList(this.tag);
if (codelist) { if (codelist) {
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
:filterable="filterable === true ? true : false" :filterable="filterable === true ? true : false"
@on-open-change="onClick" @on-open-change="onClick"
:placeholder="placeholder ? this.placeholder : '请选择'"> :placeholder="placeholder ? this.placeholder : '请选择'">
<i-option v-for="(item, index) in items" :key="index" :value="item.value">{{item.text}}</i-option> <i-option v-for="(item, index) in items" :key="index" :value="item.value">{{Object.is(codelistType,'STATIC') ? $t('codelist.'+tag+'.'+item.value) : item.text}}</i-option>
</i-select> </i-select>
</template> </template>
......
...@@ -30,5 +30,11 @@ export const Environment = { ...@@ -30,5 +30,11 @@ export const Environment = {
// 系统标识 // 系统标识
SysId: "B428B5BE-EA90-4101-A493-BA7085D89F0A", SysId: "B428B5BE-EA90-4101-A493-BA7085D89F0A",
// 前端应用标识 // 前端应用标识
AppId: "6e0b7357169ef4eba84e1347ed94bd84" AppId: "6e0b7357169ef4eba84e1347ed94bd84",
// 项目发布文件地址
PublishProjectUrl: 'http://oauth2:cTux_e7Aoz1PrasP5dDq@demo.ibizlab.cn/ibizpoc_20003/im.git',
// ibiz开放平台地址
ibizlabtUrl: 'https://www.ibizlab.cn',
// ibiz论坛地址
ibizbbstUrl: 'https://bbs.ibizlab.cn',
}; };
\ No newline at end of file
...@@ -7,6 +7,8 @@ import org_en_US from '@locale/lanres/org/org_en_US'; ...@@ -7,6 +7,8 @@ import org_en_US from '@locale/lanres/org/org_en_US';
import ps_en_US from '@locale/lanres/ps/ps_en_US'; import ps_en_US from '@locale/lanres/ps/ps_en_US';
import orgdept_en_US from '@locale/lanres/org-dept/org-dept_en_US'; import orgdept_en_US from '@locale/lanres/org-dept/org-dept_en_US';
import fj_en_US from '@locale/lanres/fj/fj_en_US'; import fj_en_US from '@locale/lanres/fj/fj_en_US';
import userCustom_en_US from '@locale/lanres/userCustom/userCustom_en_US';
import codelist_en_US from '@locale/lanres/codelist/codelist_en_US';
export default { export default {
app: { app: {
...@@ -36,9 +38,11 @@ export default { ...@@ -36,9 +38,11 @@ export default {
views: { views: {
appindexview: { appindexview: {
caption: '首页', caption: '首页',
title: '首页',
}, },
appredirectview: { appredirectview: {
caption: '应用全局数据重定向视图', caption: '应用全局数据重定向视图',
title: '应用全局数据重定向视图',
}, },
}, },
menus: { menus: {
...@@ -47,6 +51,7 @@ export default { ...@@ -47,6 +51,7 @@ export default {
}, },
}, },
}, },
codelist: codelist_en_US,
wfstepdata: wfstepdata_en_US, wfstepdata: wfstepdata_en_US,
orgdeptuser: orgdeptuser_en_US, orgdeptuser: orgdeptuser_en_US,
orguser: orguser_en_US, orguser: orguser_en_US,
...@@ -56,4 +61,5 @@ export default { ...@@ -56,4 +61,5 @@ export default {
ps: ps_en_US, ps: ps_en_US,
orgdept: orgdept_en_US, orgdept: orgdept_en_US,
fj: fj_en_US, fj: fj_en_US,
userCustom: userCustom_en_US,
}; };
\ No newline at end of file
...@@ -7,6 +7,8 @@ import org_zh_CN from '@locale/lanres/org/org_zh_CN'; ...@@ -7,6 +7,8 @@ import org_zh_CN from '@locale/lanres/org/org_zh_CN';
import ps_zh_CN from '@locale/lanres/ps/ps_zh_CN'; import ps_zh_CN from '@locale/lanres/ps/ps_zh_CN';
import orgdept_zh_CN from '@locale/lanres/org-dept/org-dept_zh_CN'; import orgdept_zh_CN from '@locale/lanres/org-dept/org-dept_zh_CN';
import fj_zh_CN from '@locale/lanres/fj/fj_zh_CN'; import fj_zh_CN from '@locale/lanres/fj/fj_zh_CN';
import userCustom_zh_CN from '@locale/lanres/userCustom/userCustom_zh_CN';
import codelist_zh_CN from '@locale/lanres/codelist/codelist_zh_CN';
export default { export default {
app: { app: {
...@@ -36,9 +38,11 @@ export default { ...@@ -36,9 +38,11 @@ export default {
views: { views: {
appindexview: { appindexview: {
caption: '首页', caption: '首页',
title: '首页',
}, },
appredirectview: { appredirectview: {
caption: '应用全局数据重定向视图', caption: '应用全局数据重定向视图',
title: '应用全局数据重定向视图',
}, },
}, },
menus: { menus: {
...@@ -47,6 +51,7 @@ export default { ...@@ -47,6 +51,7 @@ export default {
}, },
}, },
}, },
codelist: codelist_zh_CN,
wfstepdata: wfstepdata_zh_CN, wfstepdata: wfstepdata_zh_CN,
orgdeptuser: orgdeptuser_zh_CN, orgdeptuser: orgdeptuser_zh_CN,
orguser: orguser_zh_CN, orguser: orguser_zh_CN,
...@@ -56,4 +61,5 @@ export default { ...@@ -56,4 +61,5 @@ export default {
ps: ps_zh_CN, ps: ps_zh_CN,
orgdept: orgdept_zh_CN, orgdept: orgdept_zh_CN,
fj: fj_zh_CN, fj: fj_zh_CN,
userCustom: userCustom_zh_CN,
}; };
\ No newline at end of file
...@@ -3,21 +3,27 @@ export default { ...@@ -3,21 +3,27 @@ export default {
views: { views: {
ms_20editview3: { ms_20editview3: {
caption: "业务协作", caption: "业务协作",
title: '业务协作',
}, },
ms_10editview3: { ms_10editview3: {
caption: "业务协作", caption: "业务协作",
title: '业务协作',
}, },
ms_40editview3: { ms_40editview3: {
caption: "业务协作", caption: "业务协作",
title: '业务协作',
}, },
editview: { editview: {
caption: "业务协作", caption: "业务协作",
title: '业务协作',
}, },
ms_30editview3: { ms_30editview3: {
caption: "业务协作", caption: "业务协作",
title: '业务协作',
}, },
gridview9: { gridview9: {
caption: "业务协作", caption: "业务协作",
title: '业务协作',
}, },
}, },
main_form: { main_form: {
...@@ -60,15 +66,15 @@ export default { ...@@ -60,15 +66,15 @@ export default {
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "Save", caption: "Save",
tip: "tbitem3", tip: "Save",
}, },
tbitem8: { tbitem8: {
caption: "-", caption: "-",
tip: "tbitem8", tip: "",
}, },
tbitem9: { tbitem9: {
caption: "Start workflow", caption: "Start workflow",
tip: "tbitem9", tip: "Start workflow",
}, },
}, },
ms_30editview3toolbar_toolbar: { ms_30editview3toolbar_toolbar: {
......
...@@ -2,21 +2,27 @@ export default { ...@@ -2,21 +2,27 @@ export default {
views: { views: {
ms_20editview3: { ms_20editview3: {
caption: '业务协作', caption: '业务协作',
title: '业务协作',
}, },
ms_10editview3: { ms_10editview3: {
caption: '业务协作', caption: '业务协作',
title: '业务协作',
}, },
ms_40editview3: { ms_40editview3: {
caption: '业务协作', caption: '业务协作',
title: '业务协作',
}, },
editview: { editview: {
caption: '业务协作', caption: '业务协作',
title: '业务协作',
}, },
ms_30editview3: { ms_30editview3: {
caption: '业务协作', caption: '业务协作',
title: '业务协作',
}, },
gridview9: { gridview9: {
caption: '业务协作', caption: '业务协作',
title: '业务协作',
}, },
}, },
main_form: { main_form: {
......
export default {
SysOperator: {
empty: '',
},
BCWFSTATE: {
10: '拟稿',
20: '审批中',
30: '已完成',
40: '已取消',
empty: '',
},
SBLX: {
10: '类型一',
20: '类型二',
30: '类型三',
empty: '',
},
SBLB: {
10: '类别一',
20: '类别二',
30: '类别三',
empty: '',
},
YesNo1: {
1: '是',
0: '否',
empty: '',
},
HJCD: {
10: '一般',
20: '紧急',
30: '特急',
empty: '',
},
IMWFSTATE: {
10: '拟稿',
20: '审批中',
30: '已完成',
40: '已取消',
empty: '',
},
SHFS: {
10: '依次审核',
20: '并发审核',
empty: '',
},
CertType: {
IDCARD: '身份证',
empty: '',
},
SDFS: {
10: '顺序送达',
20: '并发送达',
empty: '',
},
};
\ No newline at end of file
export default {
SysOperator: {
empty: '',
},
BCWFSTATE: {
10: '拟稿',
20: '审批中',
30: '已完成',
40: '已取消',
empty: '',
},
SBLX: {
10: '类型一',
20: '类型二',
30: '类型三',
empty: '',
},
SBLB: {
10: '类别一',
20: '类别二',
30: '类别三',
empty: '',
},
YesNo1: {
1: '是',
0: '否',
empty: '',
},
HJCD: {
10: '一般',
20: '紧急',
30: '特急',
empty: '',
},
IMWFSTATE: {
10: '拟稿',
20: '审批中',
30: '已完成',
40: '已取消',
empty: '',
},
SHFS: {
10: '依次审核',
20: '并发审核',
empty: '',
},
CertType: {
IDCARD: '身份证',
empty: '',
},
SDFS: {
10: '顺序送达',
20: '并发送达',
empty: '',
},
};
\ No newline at end of file
...@@ -3,12 +3,15 @@ export default { ...@@ -3,12 +3,15 @@ export default {
views: { views: {
gridview: { gridview: {
caption: "附件", caption: "附件",
title: '附件',
}, },
gridview9: { gridview9: {
caption: "附件", caption: "附件",
title: '附件',
}, },
editview: { editview: {
caption: "附件", caption: "附件",
title: '附件',
}, },
}, },
main_form: { main_form: {
...@@ -55,55 +58,55 @@ export default { ...@@ -55,55 +58,55 @@ export default {
gridview9toolbar_toolbar: { gridview9toolbar_toolbar: {
tbitem1: { tbitem1: {
caption: "新建行", caption: "新建行",
tip: "tbitem1", tip: "新建行",
}, },
tbitem5: { tbitem5: {
caption: "Remove", caption: "Remove",
tip: "tbitem5", tip: "Remove",
}, },
tbitem7: { tbitem7: {
caption: "刷新", caption: "刷新",
tip: "tbitem7", tip: "刷新",
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "Save", caption: "Save",
tip: "tbitem3", tip: "Save",
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "New", caption: "New",
tip: "tbitem3", tip: "New",
}, },
tbitem4: { tbitem4: {
caption: "Edit", caption: "Edit",
tip: "tbitem4", tip: "Edit",
}, },
tbitem7: { tbitem7: {
caption: "-", caption: "-",
tip: "tbitem7", tip: "",
}, },
tbitem8: { tbitem8: {
caption: "Remove", caption: "Remove",
tip: "tbitem8", tip: "Remove",
}, },
tbitem9: { tbitem9: {
caption: "-", caption: "-",
tip: "tbitem9", tip: "",
}, },
tbitem13: { tbitem13: {
caption: "Export", caption: "Export",
tip: "tbitem13", tip: "Export",
}, },
tbitem10: { tbitem10: {
caption: "-", caption: "-",
tip: "tbitem10", tip: "",
}, },
tbitem19: { tbitem19: {
caption: "Filter", caption: "Filter",
tip: "tbitem19", tip: "Filter",
}, },
}, },
}; };
\ No newline at end of file
...@@ -2,12 +2,15 @@ export default { ...@@ -2,12 +2,15 @@ export default {
views: { views: {
gridview: { gridview: {
caption: '附件', caption: '附件',
title: '附件',
}, },
gridview9: { gridview9: {
caption: '附件', caption: '附件',
title: '附件',
}, },
editview: { editview: {
caption: '附件', caption: '附件',
title: '附件',
}, },
}, },
main_form: { main_form: {
......
...@@ -3,54 +3,71 @@ export default { ...@@ -3,54 +3,71 @@ export default {
views: { views: {
ms_10editview: { ms_10editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_30editview: { ms_30editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
printeditview: { printeditview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20editview: { ms_20editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
editview: { editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_40editview: { ms_20_40editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
gridview: { gridview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_80editview: { ms_20_80editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
redirectview: { redirectview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_50editview: { ms_20_50editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_60editview: { ms_20_60editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
wfproxystartview: { wfproxystartview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_20editview: { ms_20_20editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_30editview: { ms_20_30editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_10editview: { ms_20_10editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_90editview: { ms_20_90editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
ms_20_70editview: { ms_20_70editview: {
caption: "重要事项", caption: "重要事项",
title: '重要事项',
}, },
}, },
main_form: { main_form: {
...@@ -314,91 +331,91 @@ export default { ...@@ -314,91 +331,91 @@ export default {
ms_10editviewtoolbar_toolbar: { ms_10editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "Save", caption: "Save",
tip: "tbitem3", tip: "Save",
}, },
tbitem8: { tbitem8: {
caption: "-", caption: "-",
tip: "tbitem8", tip: "",
}, },
tbitem9: { tbitem9: {
caption: "开始流程", caption: "开始流程",
tip: "tbitem9", tip: "开始流程",
}, },
}, },
printeditviewtoolbar_toolbar: { printeditviewtoolbar_toolbar: {
tbitem15: { tbitem15: {
caption: "Print", caption: "Print",
tip: "tbitem15", tip: "Print",
}, },
}, },
gridviewtoolbar_toolbar: { gridviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "New", caption: "New",
tip: "tbitem3", tip: "New",
}, },
tbitem4: { tbitem4: {
caption: "Edit", caption: "Edit",
tip: "tbitem4", tip: "Edit",
}, },
tbitem7: { tbitem7: {
caption: "-", caption: "-",
tip: "tbitem7", tip: "",
}, },
tbitem8: { tbitem8: {
caption: "Remove", caption: "Remove",
tip: "tbitem8", tip: "Remove",
}, },
tbitem9: { tbitem9: {
caption: "-", caption: "-",
tip: "tbitem9", tip: "",
}, },
tbitem13: { tbitem13: {
caption: "Export", caption: "Export",
tip: "tbitem13", tip: "Export",
}, },
tbitem10: { tbitem10: {
caption: "-", caption: "-",
tip: "tbitem10", tip: "",
}, },
tbitem14_printpreview: { tbitem14_printpreview: {
caption: "打印预览", caption: "打印预览",
tip: "tbitem14_printpreview", tip: "打印预览",
}, },
tbitem15: { tbitem15: {
caption: "-", caption: "-",
tip: "tbitem15", tip: "",
}, },
tbitem19: { tbitem19: {
caption: "Filter", caption: "Filter",
tip: "tbitem19", tip: "Filter",
}, },
}, },
editviewtoolbar_toolbar: { editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "Save", caption: "Save",
tip: "tbitem3", tip: "Save",
}, },
tbitem8: { tbitem8: {
caption: "-", caption: "-",
tip: "tbitem8", tip: "",
}, },
tbitem9: { tbitem9: {
caption: "开始流程", caption: "开始流程",
tip: "tbitem9", tip: "开始流程",
}, },
}, },
ms_20_30editviewtoolbar_toolbar: { ms_20_30editviewtoolbar_toolbar: {
tbitem3: { tbitem3: {
caption: "Save", caption: "Save",
tip: "tbitem3", tip: "Save",
}, },
tbitem8: { tbitem8: {
caption: "-", caption: "-",
tip: "tbitem8", tip: "",
}, },
tbitem15: { tbitem15: {
caption: "Print", caption: "Print",
tip: "tbitem15", tip: "Print",
}, },
}, },
}; };
\ No newline at end of file
...@@ -2,54 +2,71 @@ export default { ...@@ -2,54 +2,71 @@ export default {
views: { views: {
ms_10editview: { ms_10editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_30editview: { ms_30editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
printeditview: { printeditview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20editview: { ms_20editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
editview: { editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_40editview: { ms_20_40editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
gridview: { gridview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_80editview: { ms_20_80editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
redirectview: { redirectview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_50editview: { ms_20_50editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_60editview: { ms_20_60editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
wfproxystartview: { wfproxystartview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_20editview: { ms_20_20editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_30editview: { ms_20_30editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_10editview: { ms_20_10editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_90editview: { ms_20_90editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
ms_20_70editview: { ms_20_70editview: {
caption: '重要事项', caption: '重要事项',
title: '重要事项',
}, },
}, },
main_form: { main_form: {
......
...@@ -3,12 +3,15 @@ export default { ...@@ -3,12 +3,15 @@ export default {
views: { views: {
pickupgridview: { pickupgridview: {
caption: "Just now", caption: "Just now",
title: 'the workflow instance processing has exceeded [{0}] times, system interruption',
}, },
mpickupview: { mpickupview: {
caption: "Just now", caption: "Just now",
title: 'Workflow Steps',
}, },
pickupview: { pickupview: {
caption: "Just now", caption: "Just now",
title: 'Please select the datagird row',
}, },
}, },
main_grid: { main_grid: {
......
...@@ -2,12 +2,15 @@ export default { ...@@ -2,12 +2,15 @@ export default {
views: { views: {
pickupgridview: { pickupgridview: {
caption: '部门', caption: '部门',
title: '部门',
}, },
mpickupview: { mpickupview: {
caption: '部门', caption: '部门',
title: '部门',
}, },
pickupview: { pickupview: {
caption: '部门', caption: '部门',
title: '部门',
}, },
}, },
main_grid: { main_grid: {
......
...@@ -3,12 +3,15 @@ export default { ...@@ -3,12 +3,15 @@ export default {
views: { views: {
pickupgridview: { pickupgridview: {
caption: "{0} minutes ago", caption: "{0} minutes ago",
title: '组织用户',
}, },
mpickupview: { mpickupview: {
caption: "{0} minutes ago", caption: "{0} minutes ago",
title: 'Add',
}, },
pickupview: { pickupview: {
caption: "{0} minutes ago", caption: "{0} minutes ago",
title: 'Advance',
}, },
}, },
main_grid: { main_grid: {
......
...@@ -2,12 +2,15 @@ export default { ...@@ -2,12 +2,15 @@ export default {
views: { views: {
pickupgridview: { pickupgridview: {
caption: '组织用户', caption: '组织用户',
title: '组织用户',
}, },
mpickupview: { mpickupview: {
caption: '组织用户', caption: '组织用户',
title: '组织用户',
}, },
pickupview: { pickupview: {
caption: '组织用户', caption: '组织用户',
title: '组织用户',
}, },
}, },
main_grid: { main_grid: {
......
// 用户自定义语言资源 英文
export default {
};
\ No newline at end of file
// 用户自定义语言资源 中文
export default {
};
\ No newline at end of file
...@@ -3,9 +3,11 @@ export default { ...@@ -3,9 +3,11 @@ export default {
views: { views: {
editview: { editview: {
caption: "流程步骤信息", caption: "流程步骤信息",
title: '流程步骤信息',
}, },
datagridview9: { datagridview9: {
caption: "流程步骤信息", caption: "流程步骤信息",
title: '流程步骤信息',
}, },
}, },
main_form: { main_form: {
......
...@@ -2,9 +2,11 @@ export default { ...@@ -2,9 +2,11 @@ export default {
views: { views: {
editview: { editview: {
caption: '流程步骤信息', caption: '流程步骤信息',
title: '流程步骤信息',
}, },
datagridview9: { datagridview9: {
caption: '流程步骤信息', caption: '流程步骤信息',
title: '流程步骤信息',
}, },
}, },
main_form: { main_form: {
......
...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/bcs\/fetchdefault$/)).reply((config: any) => { ...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/bcs\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/bcs\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/bcs\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:bc 方法: FetchDefault"); console.groupCollapsed("实体:bc 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/fjs\/fetchcurfj$/)).reply((config: any) => { ...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/fjs\/fetchcurfj$/)).reply((config: any) => {
}); });
// FetchCurFJ // FetchCurFJ
mock.onGet(new RegExp(/^\/fjs\/fetchcurfj(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/fjs\/fetchcurfj(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:fj 方法: FetchCurFJ"); console.groupCollapsed("实体:fj 方法: FetchCurFJ");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
...@@ -251,7 +251,7 @@ mock.onGet(new RegExp(/^\/fjs\/fetchdefault$/)).reply((config: any) => { ...@@ -251,7 +251,7 @@ mock.onGet(new RegExp(/^\/fjs\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/fjs\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/fjs\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:fj 方法: FetchDefault"); console.groupCollapsed("实体:fj 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -283,7 +283,7 @@ mock.onGet(new RegExp(/^\/ims\/fetchdefault$/)).reply((config: any) => { ...@@ -283,7 +283,7 @@ mock.onGet(new RegExp(/^\/ims\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/ims\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/ims\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:im 方法: FetchDefault"); console.groupCollapsed("实体:im 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -179,7 +179,7 @@ mock.onGet(new RegExp(/^\/orgdeptusers\/fetchgetorgdeptuser$/)).reply((config: a ...@@ -179,7 +179,7 @@ mock.onGet(new RegExp(/^\/orgdeptusers\/fetchgetorgdeptuser$/)).reply((config: a
}); });
// FetchGetorgdeptuser // FetchGetorgdeptuser
mock.onGet(new RegExp(/^\/orgdeptusers\/fetchgetorgdeptuser(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/orgdeptusers\/fetchgetorgdeptuser(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:orgdeptuser 方法: FetchGetorgdeptuser"); console.groupCollapsed("实体:orgdeptuser 方法: FetchGetorgdeptuser");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
...@@ -223,7 +223,7 @@ mock.onGet(new RegExp(/^\/orgdeptusers\/fetchdefault$/)).reply((config: any) => ...@@ -223,7 +223,7 @@ mock.onGet(new RegExp(/^\/orgdeptusers\/fetchdefault$/)).reply((config: any) =>
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/orgdeptusers\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/orgdeptusers\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:orgdeptuser 方法: FetchDefault"); console.groupCollapsed("实体:orgdeptuser 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -217,7 +217,7 @@ mock.onGet(new RegExp(/^\/orgdepts\/fetchdefault$/)).reply((config: any) => { ...@@ -217,7 +217,7 @@ mock.onGet(new RegExp(/^\/orgdepts\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/orgdepts\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/orgdepts\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:orgdept 方法: FetchDefault"); console.groupCollapsed("实体:orgdept 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
...@@ -261,7 +261,7 @@ mock.onGet(new RegExp(/^\/orgdepts\/fetchcur_org$/)).reply((config: any) => { ...@@ -261,7 +261,7 @@ mock.onGet(new RegExp(/^\/orgdepts\/fetchcur_org$/)).reply((config: any) => {
}); });
// FetchCUR_ORG // FetchCUR_ORG
mock.onGet(new RegExp(/^\/orgdepts\/fetchcur_org(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/orgdepts\/fetchcur_org(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:orgdept 方法: FetchCUR_ORG"); console.groupCollapsed("实体:orgdept 方法: FetchCUR_ORG");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -179,7 +179,7 @@ mock.onGet(new RegExp(/^\/orgusers\/fetchdefault$/)).reply((config: any) => { ...@@ -179,7 +179,7 @@ mock.onGet(new RegExp(/^\/orgusers\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/orgusers\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/orgusers\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:orguser 方法: FetchDefault"); console.groupCollapsed("实体:orguser 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -217,7 +217,7 @@ mock.onGet(new RegExp(/^\/orgs\/fetchdefault$/)).reply((config: any) => { ...@@ -217,7 +217,7 @@ mock.onGet(new RegExp(/^\/orgs\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/orgs\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/orgs\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:org 方法: FetchDefault"); console.groupCollapsed("实体:org 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/ps\/fetchdefault$/)).reply((config: any) => { ...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/ps\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/ps\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/ps\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:ps 方法: FetchDefault"); console.groupCollapsed("实体:ps 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybswfdata$/)).reply((config: any) => ...@@ -207,7 +207,7 @@ mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybswfdata$/)).reply((config: any) =>
}); });
// FetchByBswfdata // FetchByBswfdata
mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybswfdata(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybswfdata(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:wfstepdata 方法: FetchByBswfdata"); console.groupCollapsed("实体:wfstepdata 方法: FetchByBswfdata");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
...@@ -251,7 +251,7 @@ mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybsdata$/)).reply((config: any) => { ...@@ -251,7 +251,7 @@ mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybsdata$/)).reply((config: any) => {
}); });
// FetchByBsdata // FetchByBsdata
mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybsdata(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/wfstepdata\/fetchbybsdata(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:wfstepdata 方法: FetchByBsdata"); console.groupCollapsed("实体:wfstepdata 方法: FetchByBsdata");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
...@@ -295,7 +295,7 @@ mock.onGet(new RegExp(/^\/wfstepdata\/fetchdefault$/)).reply((config: any) => { ...@@ -295,7 +295,7 @@ mock.onGet(new RegExp(/^\/wfstepdata\/fetchdefault$/)).reply((config: any) => {
}); });
// FetchDefault // FetchDefault
mock.onGet(new RegExp(/^\/wfstepdata\/fetchdefault(\?[\w-./?%&=]*)*$/)).reply((config: any) => { mock.onGet(new RegExp(/^\/wfstepdata\/fetchdefault(\?[\w-./?%&=,]*)*$/)).reply((config: any) => {
console.groupCollapsed("实体:wfstepdata 方法: FetchDefault"); console.groupCollapsed("实体:wfstepdata 方法: FetchDefault");
console.table({url:config.url, method: config.method, data:config.data}); console.table({url:config.url, method: config.method, data:config.data});
if(config.url.includes('page')){ if(config.url.includes('page')){
......
import Mock from 'mockjs' import Mock from 'mockjs'
import { MockAdapter } from '@/mock/mock-adapter';
const mock = MockAdapter.getInstance();
const Random = Mock.Random; const Random = Mock.Random;
// 上传 // ajax上传
Mock.mock(RegExp(new RegExp(/^\.\.\/ibizutil\/upload.*$/)),"post",(ops:any) => { // 拦截ajax请求,调用函数 Mock.mock(RegExp(new RegExp(/^\.\.\/ibizutil\/upload.*$/)),"post",(ops:any) => { // 拦截ajax请求,调用函数
console.log(ops) // 先看一下这个ops是什么 console.log(ops) // 先看一下这个ops是什么
console.log(ops.body) console.log(ops.body)
...@@ -9,4 +11,12 @@ Mock.mock(RegExp(new RegExp(/^\.\.\/ibizutil\/upload.*$/)),"post",(ops:any) => { ...@@ -9,4 +11,12 @@ Mock.mock(RegExp(new RegExp(/^\.\.\/ibizutil\/upload.*$/)),"post",(ops:any) => {
"filename": "xxx.png", "filename": "xxx.png",
"fileid": Random.string("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",32) "fileid": Random.string("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",32)
}; };
});
// axios上传
mock.onPost(new RegExp(/^\.\.\/ibizutil\/upload.*$/)).reply((config: any) => {
return [200, {
"filename": "xxx.png",
"fileid": Random.string("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",32)
}];
}); });
\ No newline at end of file
import { ChartSeries } from './chart-series';
/**
* 柱状图序列模型
*
* @export
* @class ChartBarSeries
*/
export class ChartBarSeries extends ChartSeries{
/**
* 分类属性
*
* @type {string}
* @memberof ChartBarSeries
*/
public categorField: string = '';
/**
* 值属性
*
* @type {string}
* @memberof ChartBarSeries
*/
public valueField: string = '';
/**
* 分类代码表
*
* @type {string}
* @memberof ChartBarSeries
*/
public categorCodeList: any = null;
/**
* 维度定义
*
* @type {string}
* @memberof ChartBarSeries
*/
public dimensions:Array<string> = [];
/**
* 维度编码
*
* @type {*}
* @memberof ChartBarSeries
*/
public encode:any = null;
/**
* 序列模板
*
* @type {*}
* @memberof ChartBarSeries
*/
public seriesTemp:any = null;
/**
* Creates an instance of ChartBarSeries.
* ChartBarSeries 实例
*
* @param {*} [opts={}]
* @memberof ChartBarSeries
*/
constructor(opts: any = {}) {
super(opts);
this.categorField = !Object.is(opts.categorField, '') ? opts.categorField : '';
this.categorCodeList = opts.categorCodeList ? opts.categorCodeList : null;
this.valueField = !Object.is(opts.valueField, '') ? opts.valueField : '';
this.dimensions = opts.dimensions ? opts.dimensions :'';
this.encode = opts.encode ? opts.encode : null;
this.seriesTemp = opts.seriesTemp ? opts.seriesTemp:null;
}
/**
* 设置分类属性
*
* @param {string} state
* @memberof ChartBarSeries
*/
public setCategorField(state: string): void {
this.categorField = state;
}
/**
* 设置序列名称
*
* @param {string} state
* @memberof ChartBarSeries
*/
public setValueField(state: string): void {
this.valueField = state;
}
/**
* 分类代码表
*
* @param {*} state
* @memberof ChartBarSeries
*/
public setCategorCodeList(state: any): void {
this.categorCodeList = state;
}
/**
* 维度定义
*
* @param {*} state
* @memberof ChartBarSeries
*/
public setDimensions(state: any): void {
this.dimensions = state;
}
/**
* 设置编码
*
* @param {*} state
* @memberof ChartBarSeries
*/
public setEncode(state: any): void {
this.encode = state;
}
/**
* 设置序列模板
*
* @param {*} state
* @memberof ChartBarSeries
*/
public setSeriesTemp(state: any): void {
this.seriesTemp = state;
}
}
\ No newline at end of file
/**
* 图表数据集属性模型
*
* @export
* @class ChartDataSetField
*/
export class ChartDataSetField {
/**
* 图表属性名称
*
* @type {string}
* @memberof ChartDataSetField
*/
public name: string = '';
/**
* 图表属性代码表
*
* @type {*}
* @memberof ChartDataSetField
*/
public codelist: any = null;
/**
* 是否分组属性
*
* @type {boolean}
* @memberof ChartDataSetField
*/
public isGroupField: boolean = false;
/**
* 分组模式
*
* @type {string}
* @memberof ChartDataSetField
*/
public groupMode:string ="";
/**
* Creates an instance of ChartDataSetField.
* ChartDataSetField 实例
*
* @param {*} [opts={}]
* @memberof ChartDataSetField
*/
constructor(opts: any = {}) {
this.name = !Object.is(opts.name, '') ? opts.name : '';
this.codelist = opts.codelist?opts.codelist:null;
this.isGroupField = opts.isGroupField?opts.isGroupField:false;
this.groupMode = !Object.is(opts.groupMode, '') ? opts.groupMode : '';
}
/**
* 设置图表属性名称
*
* @param {string} state
* @memberof ChartDataSetField
*/
public setName(state: string): void {
this.name = state;
}
/**
* 设置图表属性代码表
*
* @param {*} state
* @memberof ChartDataSetField
*/
public setCodeList(state: any): void {
this.codelist = state;
}
/**
* 设置分组属性
*
* @param {boolean} state
* @memberof ChartDataSetField
*/
public setisGroupField(state: boolean): void {
this.isGroupField = state;
}
/**
* 设置属性分组模式
*
* @param {string} state
* @memberof ChartDataSetField
*/
public setGroupMode(state: string): void {
this.groupMode = state;
}
}
\ No newline at end of file
...@@ -48,6 +48,14 @@ export class ChartLineSeries extends ChartSeries{ ...@@ -48,6 +48,14 @@ export class ChartLineSeries extends ChartSeries{
*/ */
public encode:any = null; public encode:any = null;
/**
* 序列模板
*
* @type {*}
* @memberof ChartLineSeries
*/
public seriesTemp:any = null;
/** /**
* Creates an instance of ChartLineSeries. * Creates an instance of ChartLineSeries.
...@@ -63,6 +71,7 @@ export class ChartLineSeries extends ChartSeries{ ...@@ -63,6 +71,7 @@ export class ChartLineSeries extends ChartSeries{
this.valueField = !Object.is(opts.valueField, '') ? opts.valueField : ''; this.valueField = !Object.is(opts.valueField, '') ? opts.valueField : '';
this.dimensions = opts.dimensions ? opts.dimensions :''; this.dimensions = opts.dimensions ? opts.dimensions :'';
this.encode = opts.encode ? opts.encode : null; this.encode = opts.encode ? opts.encode : null;
this.seriesTemp = opts.seriesTemp ? opts.seriesTemp:null;
} }
/** /**
...@@ -115,4 +124,14 @@ export class ChartLineSeries extends ChartSeries{ ...@@ -115,4 +124,14 @@ export class ChartLineSeries extends ChartSeries{
this.encode = state; this.encode = state;
} }
/**
* 设置序列模板
*
* @param {*} state
* @memberof ChartLineSeries
*/
public setSeriesTemp(state: any): void {
this.seriesTemp = state;
}
} }
\ No newline at end of file
import { ChartSeries } from './chart-series';
/**
* 饼图序列模型
*
* @export
* @class ChartPieSeries
*/
export class ChartPieSeries extends ChartSeries{
/**
* 分类属性
*
* @type {string}
* @memberof ChartPieSeries
*/
public categorField: string = '';
/**
* 值属性
*
* @type {string}
* @memberof ChartPieSeries
*/
public valueField: string = '';
/**
* 分类代码表
*
* @type {string}
* @memberof ChartPieSeries
*/
public categorCodeList: any = null;
/**
* 维度定义
*
* @type {string}
* @memberof ChartPieSeries
*/
public dimensions:Array<string> = [];
/**
* 维度编码
*
* @type {*}
* @memberof ChartPieSeries
*/
public encode:any = null;
/**
* Creates an instance of ChartPieSeries.
* ChartPieSeries 实例
*
* @param {*} [opts={}]
* @memberof ChartPieSeries
*/
constructor(opts: any = {}) {
super(opts);
this.categorField = !Object.is(opts.categorField, '') ? opts.categorField : '';
this.categorCodeList = opts.categorCodeList ? opts.categorCodeList : null;
this.valueField = !Object.is(opts.valueField, '') ? opts.valueField : '';
this.dimensions = opts.dimensions ? opts.dimensions :'';
this.encode = opts.encode ? opts.encode : null;
}
/**
* 设置分类属性
*
* @param {string} state
* @memberof ChartPieSeries
*/
public setCategorField(state: string): void {
this.categorField = state;
}
/**
* 设置序列名称
*
* @param {string} state
* @memberof ChartPieSeries
*/
public setValueField(state: string): void {
this.valueField = state;
}
/**
* 分类代码表
*
* @param {*} state
* @memberof ChartPieSeries
*/
public setCategorCodeList(state: any): void {
this.categorCodeList = state;
}
/**
* 维度定义
*
* @param {*} state
* @memberof ChartPieSeries
*/
public setDimensions(state: any): void {
this.dimensions = state;
}
/**
* 设置编码
*
* @param {*} state
* @memberof ChartPieSeries
*/
public setEncode(state: any): void {
this.encode = state;
}
}
\ No newline at end of file
import { ChartDataSetField } from './chart-dataset-field';
/** /**
* 图表序列模型 * 图表序列模型
* *
...@@ -38,13 +40,29 @@ export class ChartSeries { ...@@ -38,13 +40,29 @@ export class ChartSeries {
*/ */
public caption: string = ''; public caption: string = '';
/**
* 序列标识属性
*
* @type {string}
* @memberof ChartSeries
*/
public seriesIdField: string = '';
/** /**
* 序列名称属性 * 序列名称属性
* *
* @type {string} * @type {string}
* @memberof ChartSeries * @memberof ChartSeries
*/ */
public seriesField: string = ''; public seriesNameField: string = '';
/**
* 序列标识名称键值对
*
* @type {any}
* @memberof ChartSeries
*/
public seriesMap:any = null;
/** /**
* 对象索引 * 对象索引
...@@ -78,6 +96,22 @@ export class ChartSeries { ...@@ -78,6 +96,22 @@ export class ChartSeries {
*/ */
public ecObject:any; public ecObject:any;
/**
* 序列索引
*
* @type {number}
* @memberof ChartSeries
*/
public seriesIndex:number = 0;
/**
* 数据集属性集合
*
* @type {Array<ChartDataSetField>}
* @memberof ChartSeries
*/
public dataSetFields:Array<ChartDataSetField> = [];
/** /**
* 取值方式 * 取值方式
* 'column':默认,dataset 的列对应于系列,从而 dataset 中每一列是一个维度(dimension) * 'column':默认,dataset 的列对应于系列,从而 dataset 中每一列是一个维度(dimension)
...@@ -99,13 +133,17 @@ export class ChartSeries { ...@@ -99,13 +133,17 @@ export class ChartSeries {
this.type = !Object.is(opts.type, '') ? opts.type : ''; this.type = !Object.is(opts.type, '') ? opts.type : '';
this.name = !Object.is(opts.name, '') ? opts.name : ''; this.name = !Object.is(opts.name, '') ? opts.name : '';
this.caption = !Object.is(opts.caption, '') ? opts.caption : ''; this.caption = !Object.is(opts.caption, '') ? opts.caption : '';
this.seriesField = !Object.is(opts.seriesField, '') ? opts.seriesField : ''; this.seriesIdField = !Object.is(opts.seriesIdField, '') ? opts.seriesIdField : '';
this.seriesNameField = !Object.is(opts.seriesNameField, '') ? opts.seriesNameField : '';
this.index = this.index ? this.index : 0; this.index = this.index ? this.index : 0;
this.chart = opts.chart ? opts.chart : null; this.chart = opts.chart ? opts.chart : null;
this.dataSet = opts.dataSet ? opts.dataSet : []; this.dataSet = opts.dataSet ? opts.dataSet : [];
this.ecxObject = opts.ecxObject ? opts.ecxObject : null; this.ecxObject = opts.ecxObject ? opts.ecxObject : null;
this.ecObject = opts.ecObject ? opts.ecObject : null; this.ecObject = opts.ecObject ? opts.ecObject : null;
this.seriesLayoutBy = opts.seriesLayoutBy ? opts.seriesLayoutBy:"column"; this.seriesLayoutBy = opts.seriesLayoutBy ? opts.seriesLayoutBy:"column";
this.dataSetFields = opts.dataSetFields ? opts.dataSetFields:[];
this.seriesMap = opts.seriesMap ? opts.seriesMap:null;
this.seriesIndex = opts.seriesIndex? opts.seriesIndex:0;
} }
/** /**
...@@ -148,6 +186,16 @@ export class ChartSeries { ...@@ -148,6 +186,16 @@ export class ChartSeries {
this.dataSet = state; this.dataSet = state;
} }
/**
* 设置序列标识名称键值对
*
* @param {*} state
* @memberof ChartSeries
*/
public setSeriesMap(state: any): void {
this.seriesMap = state;
}
/** /**
* 设置序列映射的图表 * 设置序列映射的图表
* *
...@@ -158,14 +206,24 @@ export class ChartSeries { ...@@ -158,14 +206,24 @@ export class ChartSeries {
this.chart = state; this.chart = state;
} }
/**
* 设置序列标识属性
*
* @param {*} state
* @memberof ChartSeries
*/
public setSeriesIdField(state: any): void {
this.seriesIdField = state;
}
/** /**
* 设置序列名称属性 * 设置序列名称属性
* *
* @param {*} state * @param {*} state
* @memberof ChartSeries * @memberof ChartSeries
*/ */
public setSeriesField(state: any): void { public setSeriesNameField(state: any): void {
this.seriesField = state; this.seriesNameField = state;
} }
/** /**
...@@ -177,4 +235,54 @@ export class ChartSeries { ...@@ -177,4 +235,54 @@ export class ChartSeries {
public setIndex(state: number): void { public setIndex(state: number): void {
this.index = state; this.index = state;
} }
/**
* 设置预置配置
*
* @param {*} state
* @memberof ChartSeries
*/
public setECXObject(state: any): void {
this.ecxObject = state;
}
/**
* 设置用户自定义参数
*
* @param {*} state
* @memberof ChartSeries
*/
public setECObject(state: any): void {
this.ecObject = state;
}
/**
* 设置取值方式
*
* @param {string} state
* @memberof ChartSeries
*/
public setSeriesLayoutBy(state: string): void {
this.seriesLayoutBy = state;
}
/**
* 设置数据集属性集合
*
* @param {Array<ChartDataSetField>} state
* @memberof ChartSeries
*/
public setDataSetFields(state: Array<ChartDataSetField>): void {
this.dataSetFields = state;
}
/**
* 设置序列索引
*
* @param {number} state
* @memberof ChartSeries
*/
public setSeriesIndex(state: number): void {
this.seriesIndex = state;
}
} }
\ No newline at end of file
export { ChartDataSetField } from './chart-dataset-field';
export { ChartLineSeries } from './chart-line-series'; export { ChartLineSeries } from './chart-line-series';
export { ChartFunnelSeries } from './chart-funnel-series'; export { ChartFunnelSeries } from './chart-funnel-series';
export { ChartPieSeries } from './chart-pie-series';
export { ChartBarSeries } from './chart-bar-series';
\ No newline at end of file
<template> <template>
<div class="view-container bcedit-view"> <div class="view-container bcedit-view">
<app-studioaction viewTitle="业务协作编辑视图" viewName="bceditview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="bceditview"></app-studioaction>
<card class='view-card view-no-caption ' :disHover="true" :bordered="false"> <card class='view-card view-no-caption ' :disHover="true" :bordered="false">
<p slot='title'> <p slot='title'>
...@@ -134,6 +134,24 @@ export default class BCEditViewBase extends Vue { ...@@ -134,6 +134,24 @@ export default class BCEditViewBase extends Vue {
*/ */
protected viewtag: string = 'f429ced3946be22590dd769b31c00a47'; protected viewtag: string = 'f429ced3946be22590dd769b31c00a47';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof BCEditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof BCEditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -141,9 +159,9 @@ export default class BCEditViewBase extends Vue { ...@@ -141,9 +159,9 @@ export default class BCEditViewBase extends Vue {
* @memberof BCEditViewBase * @memberof BCEditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '业务协作编辑视图',
srfCaption: 'bc.views.editview.caption', srfCaption: 'bc.views.editview.caption',
srfSubCaption: '', srfTitle: 'bc.views.editview.title',
srfSubTitle: 'bc.views.editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -290,6 +308,7 @@ export default class BCEditViewBase extends Vue { ...@@ -290,6 +308,7 @@ export default class BCEditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -309,8 +328,77 @@ export default class BCEditViewBase extends Vue { ...@@ -309,8 +328,77 @@ export default class BCEditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof BCEditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof BCEditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class='view-container bcgrid-view9'> <div class='view-container bcgrid-view9'>
<app-studioaction viewTitle="业务协作表格视图" viewName="bcgridview9"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="bcgridview9"></app-studioaction>
<card class='view-card view-no-caption' :dis-hover="true" :bordered="false"> <card class='view-card view-no-caption' :dis-hover="true" :bordered="false">
<div class='content-container'> <div class='content-container'>
<div class='view-top-messages'> <div class='view-top-messages'>
...@@ -115,6 +115,24 @@ export default class BCGridView9Base extends Vue { ...@@ -115,6 +115,24 @@ export default class BCGridView9Base extends Vue {
*/ */
protected viewtag: string = 'feab63fc88433b0979149bde025d7b0f'; protected viewtag: string = 'feab63fc88433b0979149bde025d7b0f';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof BCGridView9Base
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof BCGridView9Base
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -122,9 +140,9 @@ export default class BCGridView9Base extends Vue { ...@@ -122,9 +140,9 @@ export default class BCGridView9Base extends Vue {
* @memberof BCGridView9Base * @memberof BCGridView9Base
*/ */
protected model: any = { protected model: any = {
srfTitle: '业务协作表格视图',
srfCaption: 'bc.views.gridview9.caption', srfCaption: 'bc.views.gridview9.caption',
srfSubCaption: '', srfTitle: 'bc.views.gridview9.title',
srfSubTitle: 'bc.views.gridview9.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -260,6 +278,7 @@ export default class BCGridView9Base extends Vue { ...@@ -260,6 +278,7 @@ export default class BCGridView9Base extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -279,8 +298,77 @@ export default class BCGridView9Base extends Vue { ...@@ -279,8 +298,77 @@ export default class BCGridView9Base extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof BCGridView9Base
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof BCGridView9Base
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
...@@ -408,7 +496,6 @@ export default class BCGridView9Base extends Vue { ...@@ -408,7 +496,6 @@ export default class BCGridView9Base extends Vue {
/** /**
* 打开新建数据视图 * 打开新建数据视图
* *
......
<template> <template>
<div class="view-container bcms-10-edit-view3"> <div class="view-container bcms-10-edit-view3">
<app-studioaction viewTitle="业务协作编辑视图(拟稿)" viewName="bcms_10editview3"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="bcms_10editview3"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false"> <card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'> <p slot='title'>
</p> </p>
<p slot="extra" v-show="Object.is(this.selection.id, 'form')"> <p slot="extra" v-show="Object.is(this.selection.id, 'form')">
<row style='margin-bottom: 6px;'> <row style='margin-bottom: 6px;'>
<div class='pull-right'> <div class='pull-right'>
...@@ -131,6 +132,24 @@ export default class BCMS_10EditView3Base extends Vue { ...@@ -131,6 +132,24 @@ export default class BCMS_10EditView3Base extends Vue {
*/ */
protected viewtag: string = '77c2655022f7d2e4861a2014bc66533f'; protected viewtag: string = '77c2655022f7d2e4861a2014bc66533f';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof BCMS_10EditView3Base
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof BCMS_10EditView3Base
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -138,9 +157,9 @@ export default class BCMS_10EditView3Base extends Vue { ...@@ -138,9 +157,9 @@ export default class BCMS_10EditView3Base extends Vue {
* @memberof BCMS_10EditView3Base * @memberof BCMS_10EditView3Base
*/ */
protected model: any = { protected model: any = {
srfTitle: '业务协作编辑视图(拟稿)',
srfCaption: 'bc.views.ms_10editview3.caption', srfCaption: 'bc.views.ms_10editview3.caption',
srfSubCaption: '', srfTitle: 'bc.views.ms_10editview3.title',
srfSubTitle: 'bc.views.ms_10editview3.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -283,6 +302,7 @@ export default class BCMS_10EditView3Base extends Vue { ...@@ -283,6 +302,7 @@ export default class BCMS_10EditView3Base extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -302,8 +322,77 @@ export default class BCMS_10EditView3Base extends Vue { ...@@ -302,8 +322,77 @@ export default class BCMS_10EditView3Base extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof BCMS_10EditView3Base
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof BCMS_10EditView3Base
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container bcms-20-edit-view3"> <div class="view-container bcms-20-edit-view3">
<app-studioaction viewTitle="业务协作编辑视图(审批中)" viewName="bcms_20editview3"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="bcms_20editview3"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false"> <card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'> <p slot='title'>
</p> </p>
<p slot="extra" v-show="Object.is(this.selection.id, 'form')"> <p slot="extra" v-show="Object.is(this.selection.id, 'form')">
<row style='margin-bottom: 6px;'> <row style='margin-bottom: 6px;'>
<div class='pull-right'> <div class='pull-right'>
...@@ -131,6 +132,24 @@ export default class BCMS_20EditView3Base extends Vue { ...@@ -131,6 +132,24 @@ export default class BCMS_20EditView3Base extends Vue {
*/ */
protected viewtag: string = '41e951780a5a6835c7693151faa5eae5'; protected viewtag: string = '41e951780a5a6835c7693151faa5eae5';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof BCMS_20EditView3Base
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof BCMS_20EditView3Base
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -138,9 +157,9 @@ export default class BCMS_20EditView3Base extends Vue { ...@@ -138,9 +157,9 @@ export default class BCMS_20EditView3Base extends Vue {
* @memberof BCMS_20EditView3Base * @memberof BCMS_20EditView3Base
*/ */
protected model: any = { protected model: any = {
srfTitle: '业务协作编辑视图(审批中)',
srfCaption: 'bc.views.ms_20editview3.caption', srfCaption: 'bc.views.ms_20editview3.caption',
srfSubCaption: '', srfTitle: 'bc.views.ms_20editview3.title',
srfSubTitle: 'bc.views.ms_20editview3.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -283,6 +302,7 @@ export default class BCMS_20EditView3Base extends Vue { ...@@ -283,6 +302,7 @@ export default class BCMS_20EditView3Base extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -302,8 +322,77 @@ export default class BCMS_20EditView3Base extends Vue { ...@@ -302,8 +322,77 @@ export default class BCMS_20EditView3Base extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof BCMS_20EditView3Base
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof BCMS_20EditView3Base
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container bcms-30-edit-view3"> <div class="view-container bcms-30-edit-view3">
<app-studioaction viewTitle="业务协作编辑视图(已完成)" viewName="bcms_30editview3"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="bcms_30editview3"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false"> <card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'> <p slot='title'>
</p> </p>
<p slot="extra" v-show="Object.is(this.selection.id, 'form')"> <p slot="extra" v-show="Object.is(this.selection.id, 'form')">
<row style='margin-bottom: 6px;'> <row style='margin-bottom: 6px;'>
<div class='pull-right'> <div class='pull-right'>
...@@ -131,6 +132,24 @@ export default class BCMS_30EditView3Base extends Vue { ...@@ -131,6 +132,24 @@ export default class BCMS_30EditView3Base extends Vue {
*/ */
protected viewtag: string = 'fdb3379c6a8e4d6c612136ba8c865ea0'; protected viewtag: string = 'fdb3379c6a8e4d6c612136ba8c865ea0';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof BCMS_30EditView3Base
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof BCMS_30EditView3Base
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -138,9 +157,9 @@ export default class BCMS_30EditView3Base extends Vue { ...@@ -138,9 +157,9 @@ export default class BCMS_30EditView3Base extends Vue {
* @memberof BCMS_30EditView3Base * @memberof BCMS_30EditView3Base
*/ */
protected model: any = { protected model: any = {
srfTitle: '业务协作编辑视图(已完成)',
srfCaption: 'bc.views.ms_30editview3.caption', srfCaption: 'bc.views.ms_30editview3.caption',
srfSubCaption: '', srfTitle: 'bc.views.ms_30editview3.title',
srfSubTitle: 'bc.views.ms_30editview3.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -283,6 +302,7 @@ export default class BCMS_30EditView3Base extends Vue { ...@@ -283,6 +302,7 @@ export default class BCMS_30EditView3Base extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -302,8 +322,77 @@ export default class BCMS_30EditView3Base extends Vue { ...@@ -302,8 +322,77 @@ export default class BCMS_30EditView3Base extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof BCMS_30EditView3Base
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof BCMS_30EditView3Base
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container bcms-40-edit-view3"> <div class="view-container bcms-40-edit-view3">
<app-studioaction viewTitle="业务协作编辑视图(已取消)" viewName="bcms_40editview3"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="bcms_40editview3"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false"> <card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'> <p slot='title'>
</p> </p>
<p slot="extra" v-show="Object.is(this.selection.id, 'form')"> <p slot="extra" v-show="Object.is(this.selection.id, 'form')">
<row style='margin-bottom: 6px;'> <row style='margin-bottom: 6px;'>
<div class='pull-right'> <div class='pull-right'>
...@@ -131,6 +132,24 @@ export default class BCMS_40EditView3Base extends Vue { ...@@ -131,6 +132,24 @@ export default class BCMS_40EditView3Base extends Vue {
*/ */
protected viewtag: string = 'c7f5be84e55a94937dbbcc02329cd96f'; protected viewtag: string = 'c7f5be84e55a94937dbbcc02329cd96f';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof BCMS_40EditView3Base
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof BCMS_40EditView3Base
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -138,9 +157,9 @@ export default class BCMS_40EditView3Base extends Vue { ...@@ -138,9 +157,9 @@ export default class BCMS_40EditView3Base extends Vue {
* @memberof BCMS_40EditView3Base * @memberof BCMS_40EditView3Base
*/ */
protected model: any = { protected model: any = {
srfTitle: '业务协作编辑视图(已取消)',
srfCaption: 'bc.views.ms_40editview3.caption', srfCaption: 'bc.views.ms_40editview3.caption',
srfSubCaption: '', srfTitle: 'bc.views.ms_40editview3.title',
srfSubTitle: 'bc.views.ms_40editview3.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -283,6 +302,7 @@ export default class BCMS_40EditView3Base extends Vue { ...@@ -283,6 +302,7 @@ export default class BCMS_40EditView3Base extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -302,8 +322,77 @@ export default class BCMS_40EditView3Base extends Vue { ...@@ -302,8 +322,77 @@ export default class BCMS_40EditView3Base extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof BCMS_40EditView3Base
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof BCMS_40EditView3Base
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container fjedit-view"> <div class="view-container fjedit-view">
<app-studioaction viewTitle="附件编辑视图" viewName="fjeditview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="fjeditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false"> <card class='view-card ' :disHover="true" :bordered="false">
<p slot='title'> <p slot='title'>
<span class='caption-info'>{{$t(model.srfCaption)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </p>
<div slot="extra"> <div slot="extra">
...@@ -128,6 +128,24 @@ export default class FJEditViewBase extends Vue { ...@@ -128,6 +128,24 @@ export default class FJEditViewBase extends Vue {
*/ */
protected viewtag: string = 'eee05806e7847093bb65b0d7f08601e7'; protected viewtag: string = 'eee05806e7847093bb65b0d7f08601e7';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof FJEditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof FJEditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -135,9 +153,9 @@ export default class FJEditViewBase extends Vue { ...@@ -135,9 +153,9 @@ export default class FJEditViewBase extends Vue {
* @memberof FJEditViewBase * @memberof FJEditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '附件编辑视图',
srfCaption: 'fj.views.editview.caption', srfCaption: 'fj.views.editview.caption',
srfSubCaption: '', srfTitle: 'fj.views.editview.title',
srfSubTitle: 'fj.views.editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -280,6 +298,7 @@ export default class FJEditViewBase extends Vue { ...@@ -280,6 +298,7 @@ export default class FJEditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -299,8 +318,77 @@ export default class FJEditViewBase extends Vue { ...@@ -299,8 +318,77 @@ export default class FJEditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof FJEditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof FJEditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class='view-container fjgrid-view9'> <div class='view-container fjgrid-view9'>
<app-studioaction viewTitle="附件表格视图" viewName="fjgridview9"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="fjgridview9"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false"> <card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'> <p slot='title'>
<span class='caption-info'>{{$t(model.srfCaption)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </p>
<div class='content-container'> <div class='content-container'>
<div class='view-top-messages'> <div class='view-top-messages'>
...@@ -145,6 +145,24 @@ export default class FJGridView9Base extends Vue { ...@@ -145,6 +145,24 @@ export default class FJGridView9Base extends Vue {
*/ */
protected viewtag: string = 'ad299142501a32d88013bf9b7551187c'; protected viewtag: string = 'ad299142501a32d88013bf9b7551187c';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof FJGridView9Base
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof FJGridView9Base
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -152,9 +170,9 @@ export default class FJGridView9Base extends Vue { ...@@ -152,9 +170,9 @@ export default class FJGridView9Base extends Vue {
* @memberof FJGridView9Base * @memberof FJGridView9Base
*/ */
protected model: any = { protected model: any = {
srfTitle: '附件表格视图',
srfCaption: 'fj.views.gridview9.caption', srfCaption: 'fj.views.gridview9.caption',
srfSubCaption: '', srfTitle: 'fj.views.gridview9.title',
srfSubTitle: 'fj.views.gridview9.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -306,6 +324,7 @@ export default class FJGridView9Base extends Vue { ...@@ -306,6 +324,7 @@ export default class FJGridView9Base extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -325,7 +344,76 @@ export default class FJGridView9Base extends Vue { ...@@ -325,7 +344,76 @@ export default class FJGridView9Base extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
} this.handleCustomViewData();
}
/**
* 处理自定义视图数据
*
* @memberof FJGridView9Base
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof FJGridView9Base
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
...@@ -552,7 +640,6 @@ export default class FJGridView9Base extends Vue { ...@@ -552,7 +640,6 @@ export default class FJGridView9Base extends Vue {
this.Refresh(datas, contextJO,paramJO, $event, xData,this,"FJ"); this.Refresh(datas, contextJO,paramJO, $event, xData,this,"FJ");
} }
/** /**
* 打开新建数据视图 * 打开新建数据视图
* *
......
<template> <template>
<div class="view-container imedit-view"> <div class="view-container imedit-view">
<app-studioaction viewTitle="重要事项编辑视图" viewName="imeditview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imeditview"></app-studioaction>
<card class='view-card view-no-caption ' :disHover="true" :bordered="false"> <card class='view-card view-no-caption ' :disHover="true" :bordered="false">
<p slot='title'> <p slot='title'>
...@@ -135,6 +135,24 @@ export default class IMEditViewBase extends Vue { ...@@ -135,6 +135,24 @@ export default class IMEditViewBase extends Vue {
*/ */
protected viewtag: string = '5d7a639edfd5985268c84d54f68ab923'; protected viewtag: string = '5d7a639edfd5985268c84d54f68ab923';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMEditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMEditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -142,9 +160,9 @@ export default class IMEditViewBase extends Vue { ...@@ -142,9 +160,9 @@ export default class IMEditViewBase extends Vue {
* @memberof IMEditViewBase * @memberof IMEditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图',
srfCaption: 'im.views.editview.caption', srfCaption: 'im.views.editview.caption',
srfSubCaption: '', srfTitle: 'im.views.editview.title',
srfSubTitle: 'im.views.editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -291,6 +309,7 @@ export default class IMEditViewBase extends Vue { ...@@ -291,6 +309,7 @@ export default class IMEditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -310,8 +329,77 @@ export default class IMEditViewBase extends Vue { ...@@ -310,8 +329,77 @@ export default class IMEditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMEditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMEditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class='view-container imgrid-view'> <div class='view-container imgrid-view'>
<app-studioaction viewTitle="重要事项表格视图" viewName="imgridview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imgridview"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false"> <card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'> <p slot='title'>
<span class='caption-info'>{{$t(model.srfCaption)}}</span> <span class='caption-info'>{{$t(model.srfTitle)}}</span>
</p> </p>
<div class='content-container'> <div class='content-container'>
<div class='view-top-messages'> <div class='view-top-messages'>
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
<div slot='content'>{{$t('im.gridviewtoolbar_toolbar.tbitem8.tip')}}</div> <div slot='content'>{{$t('im.gridviewtoolbar_toolbar.tbitem8.tip')}}</div>
</tooltip> </tooltip>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
<app-export-excel :item="toolBarModels.tbitem13" @exportexcel="toolbar_click({ tag: 'tbitem13' }, $event)"></app-export-excel> <app-export-excel :item="toolBarModels.tbitem13" :caption="$t('im.gridviewtoolbar_toolbar.tbitem13.caption')" @exportexcel="toolbar_click({ tag: 'tbitem13' }, $event)"></app-export-excel>
<div slot='content'>{{$t('im.gridviewtoolbar_toolbar.tbitem13.tip')}}</div> <div slot='content'>{{$t('im.gridviewtoolbar_toolbar.tbitem13.tip')}}</div>
</tooltip> </tooltip>
<span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600"> <span class='seperator'>|</span> <tooltip :transfer="true" :max-width="600">
...@@ -180,6 +180,24 @@ export default class IMGridViewBase extends Vue { ...@@ -180,6 +180,24 @@ export default class IMGridViewBase extends Vue {
*/ */
protected viewtag: string = '66e7c3bac4ef4acabffcb9f916eb2710'; protected viewtag: string = '66e7c3bac4ef4acabffcb9f916eb2710';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMGridViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMGridViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -187,9 +205,9 @@ export default class IMGridViewBase extends Vue { ...@@ -187,9 +205,9 @@ export default class IMGridViewBase extends Vue {
* @memberof IMGridViewBase * @memberof IMGridViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项表格视图',
srfCaption: 'im.views.gridview.caption', srfCaption: 'im.views.gridview.caption',
srfSubCaption: '', srfTitle: 'im.views.gridview.title',
srfSubTitle: 'im.views.gridview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -354,6 +372,7 @@ export default class IMGridViewBase extends Vue { ...@@ -354,6 +372,7 @@ export default class IMGridViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -373,8 +392,77 @@ export default class IMGridViewBase extends Vue { ...@@ -373,8 +392,77 @@ export default class IMGridViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMGridViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMGridViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
...@@ -811,7 +899,6 @@ export default class IMGridViewBase extends Vue { ...@@ -811,7 +899,6 @@ export default class IMGridViewBase extends Vue {
this.ToggleFilter(datas, contextJO,paramJO, $event, xData,this,"IM"); this.ToggleFilter(datas, contextJO,paramJO, $event, xData,this,"IM");
} }
/** /**
* 打开新建数据视图 * 打开新建数据视图
* *
......
<template> <template>
<div class="view-container imms-10-edit-view"> <div class="view-container imms-10-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(拟稿)" viewName="imms_10editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_10editview"></app-studioaction>
<card class='view-card view-no-caption ' :disHover="true" :bordered="false"> <card class='view-card view-no-caption ' :disHover="true" :bordered="false">
<p slot='title'> <p slot='title'>
...@@ -135,6 +135,24 @@ export default class IMMS_10EditViewBase extends Vue { ...@@ -135,6 +135,24 @@ export default class IMMS_10EditViewBase extends Vue {
*/ */
protected viewtag: string = '07cb2f4c4b05ff1a31b97d2e13ea4f2d'; protected viewtag: string = '07cb2f4c4b05ff1a31b97d2e13ea4f2d';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_10EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_10EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -142,9 +160,9 @@ export default class IMMS_10EditViewBase extends Vue { ...@@ -142,9 +160,9 @@ export default class IMMS_10EditViewBase extends Vue {
* @memberof IMMS_10EditViewBase * @memberof IMMS_10EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(拟稿)',
srfCaption: 'im.views.ms_10editview.caption', srfCaption: 'im.views.ms_10editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_10editview.title',
srfSubTitle: 'im.views.ms_10editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -291,6 +309,7 @@ export default class IMMS_10EditViewBase extends Vue { ...@@ -291,6 +309,7 @@ export default class IMMS_10EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -310,8 +329,77 @@ export default class IMMS_10EditViewBase extends Vue { ...@@ -310,8 +329,77 @@ export default class IMMS_10EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_10EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_10EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-10-edit-view"> <div class="view-container imms-20-10-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审核中_部门内审批)" viewName="imms_20_10editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_10editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_10EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_10EditViewBase extends Vue {
*/ */
protected viewtag: string = 'dbedebc1134b9d3bf831376e1b6e209a'; protected viewtag: string = 'dbedebc1134b9d3bf831376e1b6e209a';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_10EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_10EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_10EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_10EditViewBase extends Vue {
* @memberof IMMS_20_10EditViewBase * @memberof IMMS_20_10EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审核中_部门内审批)',
srfCaption: 'im.views.ms_20_10editview.caption', srfCaption: 'im.views.ms_20_10editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_10editview.title',
srfSubTitle: 'im.views.ms_20_10editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_10EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_10EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_10EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_10EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_10EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_10EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-20-edit-view"> <div class="view-container imms-20-20-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_上级部门审批)" viewName="imms_20_20editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_20editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_20EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_20EditViewBase extends Vue {
*/ */
protected viewtag: string = 'c8f8dcebfaf706c250c15db2af84f826'; protected viewtag: string = 'c8f8dcebfaf706c250c15db2af84f826';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_20EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_20EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_20EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_20EditViewBase extends Vue {
* @memberof IMMS_20_20EditViewBase * @memberof IMMS_20_20EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_上级部门审批)',
srfCaption: 'im.views.ms_20_20editview.caption', srfCaption: 'im.views.ms_20_20editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_20editview.title',
srfSubTitle: 'im.views.ms_20_20editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_20EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_20EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_20EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_20EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_20EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_20EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-30-edit-view"> <div class="view-container imms-20-30-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_分送)" viewName="imms_20_30editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_30editview"></app-studioaction>
<card class='view-card view-no-caption ' :disHover="true" :bordered="false"> <card class='view-card view-no-caption ' :disHover="true" :bordered="false">
<p slot='title'> <p slot='title'>
...@@ -134,6 +134,24 @@ export default class IMMS_20_30EditViewBase extends Vue { ...@@ -134,6 +134,24 @@ export default class IMMS_20_30EditViewBase extends Vue {
*/ */
protected viewtag: string = 'd319a68735ca99972383870b5bf1f860'; protected viewtag: string = 'd319a68735ca99972383870b5bf1f860';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_30EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_30EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -141,9 +159,9 @@ export default class IMMS_20_30EditViewBase extends Vue { ...@@ -141,9 +159,9 @@ export default class IMMS_20_30EditViewBase extends Vue {
* @memberof IMMS_20_30EditViewBase * @memberof IMMS_20_30EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_分送)',
srfCaption: 'im.views.ms_20_30editview.caption', srfCaption: 'im.views.ms_20_30editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_30editview.title',
srfSubTitle: 'im.views.ms_20_30editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -290,6 +308,7 @@ export default class IMMS_20_30EditViewBase extends Vue { ...@@ -290,6 +308,7 @@ export default class IMMS_20_30EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -309,8 +328,77 @@ export default class IMMS_20_30EditViewBase extends Vue { ...@@ -309,8 +328,77 @@ export default class IMMS_20_30EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_30EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_30EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-40-edit-view"> <div class="view-container imms-20-40-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_部门会签)" viewName="imms_20_40editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_40editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_40EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_40EditViewBase extends Vue {
*/ */
protected viewtag: string = '63ec73e6599bdcbf1361e28ff3cece94'; protected viewtag: string = '63ec73e6599bdcbf1361e28ff3cece94';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_40EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_40EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_40EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_40EditViewBase extends Vue {
* @memberof IMMS_20_40EditViewBase * @memberof IMMS_20_40EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_部门会签)',
srfCaption: 'im.views.ms_20_40editview.caption', srfCaption: 'im.views.ms_20_40editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_40editview.title',
srfSubTitle: 'im.views.ms_20_40editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_40EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_40EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_40EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_40EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_40EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_40EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-50-edit-view"> <div class="view-container imms-20-50-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_跨公司会签)" viewName="imms_20_50editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_50editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_50EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_50EditViewBase extends Vue {
*/ */
protected viewtag: string = 'a6052cd14d64698a06fa01a6418d0d71'; protected viewtag: string = 'a6052cd14d64698a06fa01a6418d0d71';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_50EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_50EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_50EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_50EditViewBase extends Vue {
* @memberof IMMS_20_50EditViewBase * @memberof IMMS_20_50EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_跨公司会签)',
srfCaption: 'im.views.ms_20_50editview.caption', srfCaption: 'im.views.ms_20_50editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_50editview.title',
srfSubTitle: 'im.views.ms_20_50editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_50EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_50EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_50EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_50EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_50EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_50EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-60-edit-view"> <div class="view-container imms-20-60-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_公司领导审批)" viewName="imms_20_60editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_60editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_60EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_60EditViewBase extends Vue {
*/ */
protected viewtag: string = 'b988aed45d0338732fdcf29d49ea2878'; protected viewtag: string = 'b988aed45d0338732fdcf29d49ea2878';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_60EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_60EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_60EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_60EditViewBase extends Vue {
* @memberof IMMS_20_60EditViewBase * @memberof IMMS_20_60EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_公司领导审批)',
srfCaption: 'im.views.ms_20_60editview.caption', srfCaption: 'im.views.ms_20_60editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_60editview.title',
srfSubTitle: 'im.views.ms_20_60editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_60EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_60EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_60EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_60EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_60EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_60EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-70-edit-view"> <div class="view-container imms-20-70-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_业务协作)" viewName="imms_20_70editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_70editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_70EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_70EditViewBase extends Vue {
*/ */
protected viewtag: string = 'f61ac5d88edad94de95647f2228768e7'; protected viewtag: string = 'f61ac5d88edad94de95647f2228768e7';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_70EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_70EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_70EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_70EditViewBase extends Vue {
* @memberof IMMS_20_70EditViewBase * @memberof IMMS_20_70EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_业务协作)',
srfCaption: 'im.views.ms_20_70editview.caption', srfCaption: 'im.views.ms_20_70editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_70editview.title',
srfSubTitle: 'im.views.ms_20_70editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_70EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_70EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_70EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_70EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_70EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_70EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
<template> <template>
<div class="view-container imms-20-80-edit-view"> <div class="view-container imms-20-80-edit-view">
<app-studioaction viewTitle="重要事项编辑视图(审批中_首席风险官审批)" viewName="imms_20_80editview"></app-studioaction> <app-studioaction :viewTitle="$t(model.srfTitle)" viewName="imms_20_80editview"></app-studioaction>
<card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false"> <card class='view-card view-no-caption view-no-toolbar' :disHover="true" :bordered="false">
...@@ -113,6 +113,24 @@ export default class IMMS_20_80EditViewBase extends Vue { ...@@ -113,6 +113,24 @@ export default class IMMS_20_80EditViewBase extends Vue {
*/ */
protected viewtag: string = '837ce21d01f7523c7f8ae33a19cef4a8'; protected viewtag: string = '837ce21d01f7523c7f8ae33a19cef4a8';
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IMMS_20_80EditViewBase
*/
protected customViewNavContexts:any ={
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IMMS_20_80EditViewBase
*/
protected customViewParams:any ={
};
/** /**
* 视图模型数据 * 视图模型数据
* *
...@@ -120,9 +138,9 @@ export default class IMMS_20_80EditViewBase extends Vue { ...@@ -120,9 +138,9 @@ export default class IMMS_20_80EditViewBase extends Vue {
* @memberof IMMS_20_80EditViewBase * @memberof IMMS_20_80EditViewBase
*/ */
protected model: any = { protected model: any = {
srfTitle: '重要事项编辑视图(审批中_首席风险官审批)',
srfCaption: 'im.views.ms_20_80editview.caption', srfCaption: 'im.views.ms_20_80editview.caption',
srfSubCaption: '', srfTitle: 'im.views.ms_20_80editview.title',
srfSubTitle: 'im.views.ms_20_80editview.subtitle',
dataInfo: '' dataInfo: ''
} }
...@@ -253,6 +271,7 @@ export default class IMMS_20_80EditViewBase extends Vue { ...@@ -253,6 +271,7 @@ export default class IMMS_20_80EditViewBase extends Vue {
if(this.context && this.context.srfparentkey){ if(this.context && this.context.srfparentkey){
Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey}); Object.assign(this.viewparams,{srfparentkey:this.context.srfparentkey});
} }
this.handleCustomViewData();
return; return;
} }
const path = (this.$route.matched[this.$route.matched.length - 1]).path; const path = (this.$route.matched[this.$route.matched.length - 1]).path;
...@@ -272,8 +291,77 @@ export default class IMMS_20_80EditViewBase extends Vue { ...@@ -272,8 +291,77 @@ export default class IMMS_20_80EditViewBase extends Vue {
} }
//初始化视图唯一标识 //初始化视图唯一标识
Object.assign(this.context,{srfsessionid:this.$util.createUUID()}); Object.assign(this.context,{srfsessionid:this.$util.createUUID()});
this.handleCustomViewData();
} }
/**
* 处理自定义视图数据
*
* @memberof IMMS_20_80EditViewBase
*/
public handleCustomViewData(){
if(Object.keys(this.customViewNavContexts).length > 0){
Object.keys(this.customViewNavContexts).forEach((item:any) =>{
let tempContext:any = {};
let curNavContext:any = this.customViewNavContexts[item];
this.handleCustomDataLogic(curNavContext,tempContext,item);
Object.assign(this.context,tempContext);
})
}
if(Object.keys(this.customViewParams).length > 0){
Object.keys(this.customViewParams).forEach((item:any) =>{
let tempParam:any = {};
let curNavParam:any = this.customViewParams[item];
this.handleCustomDataLogic(curNavParam,tempParam,item);
Object.assign(this.viewparams,tempParam);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IMMS_20_80EditViewBase
*/
public handleCustomDataLogic(curNavData:any,tempData:any,item:string){
// 直接值直接赋值
if(curNavData.isRawValue){
Object.defineProperty(tempData, item, {
value: curNavData.value,
writable : true,
enumerable : true,
configurable : true
});
}else{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if(this.context[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.context[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
if(this.viewparams[curNavData.value]){
Object.defineProperty(tempData, item, {
value: this.viewparams[curNavData.value],
writable : true,
enumerable : true,
configurable : true
});
}else{
Object.defineProperty(tempData, item, {
value: null,
writable : true,
enumerable : true,
configurable : true
});
}
}
}
}
/** /**
* Vue声明周期 * Vue声明周期
* *
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
>.translate-contant { >.translate-contant {
flex-grow: 1; flex-grow: 1;
display: flex; display: flex;
justify-content: end; justify-content: flex-end;
height: calc(100% - 64px); height: calc(100% - 64px);
.translate-buttons { .translate-buttons {
width: 80px; width: 80px;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
>.pickupviewpanel { >.pickupviewpanel {
flex-grow: 1; flex-grow: 1;
display: flex; display: flex;
justify-content: end; justify-content: flex-end;
height: calc(100% - 64px); height: calc(100% - 64px);
} }
>.footer { >.footer {
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
>.translate-contant { >.translate-contant {
flex-grow: 1; flex-grow: 1;
display: flex; display: flex;
justify-content: end; justify-content: flex-end;
height: calc(100% - 64px); height: calc(100% - 64px);
.translate-buttons { .translate-buttons {
width: 80px; width: 80px;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
>.pickupviewpanel { >.pickupviewpanel {
flex-grow: 1; flex-grow: 1;
display: flex; display: flex;
justify-content: end; justify-content: flex-end;
height: calc(100% - 64px); height: calc(100% - 64px);
} }
>.footer { >.footer {
......
...@@ -15,6 +15,10 @@ ...@@ -15,6 +15,10 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
.page-logo{
display: flex;
align-items: center;
}
.header-left{ .header-left{
display: flex; display: flex;
align-items: center; align-items: center;
......
...@@ -51,9 +51,25 @@ export default class CodeListService { ...@@ -51,9 +51,25 @@ export default class CodeListService {
*/ */
public getItems(tag: string,context:any = {}, data?: any, isloading?: boolean,): Promise<any[]> { public getItems(tag: string,context:any = {}, data?: any, isloading?: boolean,): Promise<any[]> {
let _this: any = this; let _this: any = this;
if (_this[tag]) { return new Promise((resolve:any,reject:any) =>{
return _this[tag].getItems(context,data,isloading); if(this.$store && _this.$store.getters){
} let items:any = _this.$store.getters.getCodeListItems(tag);
return Promise.reject([]); if(items.length >0){
return resolve(items);
}
}
if (_this[tag]) {
_this[tag].getItems(context,data,isloading).then((result:any) =>{
if(result.length > 0){
_this.$store.commit('updateCodeList',{srfkey:tag,items:result});
return resolve(result);
}else{
return resolve([]);
}
}).catch((result:any) =>{
return reject(result);
})
}
})
} }
} }
\ No newline at end of file
...@@ -10,9 +10,6 @@ ...@@ -10,9 +10,6 @@
color: #fff; color: #fff;
} }
.header-right { .header-right {
.app-header-user {
background: #28547c;
}
> div:hover { > div:hover {
background: #3774aa; background: #3774aa;
} }
......
...@@ -10,9 +10,6 @@ ...@@ -10,9 +10,6 @@
color: #fff; color: #fff;
} }
.header-right { .header-right {
.app-header-user {
background: #232c37;
}
> div:hover { > div:hover {
background: #3b4a5c; background: #3b4a5c;
} }
......
...@@ -10,9 +10,6 @@ ...@@ -10,9 +10,6 @@
color: #535c70; color: #535c70;
} }
.header-right { .header-right {
.app-header-user {
background: #d9d9d9;
}
> div:hover { > div:hover {
background: #d4d4d4; background: #d4d4d4;
} }
......
此差异已折叠。
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册