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

jackwang 部署微服务应用

上级 970895b0
...@@ -119,6 +119,16 @@ ...@@ -119,6 +119,16 @@
"viewtag": "1316a3add8f01af03edf978ef21af6b1", "viewtag": "1316a3add8f01af03edf978ef21af6b1",
"memo": "系统自动添加" "memo": "系统自动添加"
}, },
"hromhierarchycattabexpview": {
"title": "结构层次类别分页编辑",
"caption": "层次结构",
"viewtype": "DETABEXPVIEW",
"viewmodule": "Base",
"viewname": "HROMHierarchyCatTabExpView",
"viewfilename": "hromhierarchy-cat-tab-exp-view",
"viewtag": "1780a9ed77fb97f2cc3852cfdc55c32c",
"memo": ""
},
"hrlegaldashboardview": { "hrlegaldashboardview": {
"title": "法人数据看板", "title": "法人数据看板",
"caption": "法人信息", "caption": "法人信息",
......
...@@ -22,6 +22,10 @@ export default { ...@@ -22,6 +22,10 @@ export default {
caption: "结构层次类别", caption: "结构层次类别",
title: "层次结构", title: "层次结构",
}, },
tabexpview: {
caption: "层次结构",
title: "结构层次类别分页编辑",
},
mpickupview: { mpickupview: {
caption: "结构层次类别", caption: "结构层次类别",
title: "结构层次类别数据多项选择视图", title: "结构层次类别数据多项选择视图",
...@@ -164,4 +168,26 @@ export default { ...@@ -164,4 +168,26 @@ export default {
tip: "关闭", tip: "关闭",
}, },
}, },
tabexpviewtoolbar_toolbar: {
tbitem1_ff_001: {
caption: "编辑",
tip: "编辑",
},
tbitem1_remove_sep: {
caption: "",
tip: "",
},
tbitem1_remove: {
caption: "删除并关闭",
tip: "删除并关闭",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem22: {
caption: "关闭",
tip: "关闭",
},
},
}; };
\ No newline at end of file
...@@ -21,6 +21,10 @@ export default { ...@@ -21,6 +21,10 @@ export default {
caption: "结构层次类别", caption: "结构层次类别",
title: "层次结构", title: "层次结构",
}, },
tabexpview: {
caption: "层次结构",
title: "结构层次类别分页编辑",
},
mpickupview: { mpickupview: {
caption: "结构层次类别", caption: "结构层次类别",
title: "结构层次类别数据多项选择视图", title: "结构层次类别数据多项选择视图",
...@@ -163,4 +167,26 @@ export default { ...@@ -163,4 +167,26 @@ export default {
tip: "关闭", tip: "关闭",
}, },
}, },
tabexpviewtoolbar_toolbar: {
tbitem1_ff_001: {
caption: "编辑",
tip: "编辑",
},
tbitem1_remove_sep: {
caption: "",
tip: "",
},
tbitem1_remove: {
caption: "删除并关闭",
tip: "删除并关闭",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem22: {
caption: "关闭",
tip: "关闭",
},
},
}; };
\ No newline at end of file
...@@ -103,6 +103,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => { ...@@ -103,6 +103,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "HROMHierarchyCatV_002", "viewname": "HROMHierarchyCatV_002",
"viewtag": "1316a3add8f01af03edf978ef21af6b1" "viewtag": "1316a3add8f01af03edf978ef21af6b1"
}, },
"hromhierarchycattabexpview": {
"title": "结构层次类别分页编辑",
"caption": "层次结构",
"viewtype": "DETABEXPVIEW",
"viewmodule": "Base",
"viewname": "HROMHierarchyCatTabExpView",
"viewtag": "1780a9ed77fb97f2cc3852cfdc55c32c"
},
"hrlegaldashboardview": { "hrlegaldashboardview": {
"title": "法人数据看板", "title": "法人数据看板",
"caption": "法人信息", "caption": "法人信息",
......
...@@ -610,7 +610,7 @@ export class HROMHierarchyCatGridViewBase extends GridViewBase { ...@@ -610,7 +610,7 @@ export class HROMHierarchyCatGridViewBase extends GridViewBase {
const deResParameters: any[] = []; const deResParameters: any[] = [];
const parameters: any[] = [ const parameters: any[] = [
{ pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' }, { pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' },
{ pathName: 'v_002', parameterName: 'v_002' }, { pathName: 'tabexpview', parameterName: 'tabexpview' },
]; ];
const _this: any = this; const _this: any = this;
const openIndexViewTab = (data: any) => { const openIndexViewTab = (data: any) => {
......
import { Subject } from 'rxjs';
import { TabExpViewBase } from '@/studio-core';
import HROMHierarchyCatService from '@/service/hromhierarchy-cat/hromhierarchy-cat-service';
import HROMHierarchyCatAuthService from '@/authservice/hromhierarchy-cat/hromhierarchy-cat-auth-service';
import TabExpViewEngine from '@engine/view/tab-exp-view-engine';
import HROMHierarchyCatUIService from '@/uiservice/hromhierarchy-cat/hromhierarchy-cat-ui-service';
/**
* 结构层次类别分页编辑视图基类
*
* @export
* @class HROMHierarchyCatTabExpViewBase
* @extends {TabExpViewBase}
*/
export class HROMHierarchyCatTabExpViewBase extends TabExpViewBase {
/**
* 视图对应应用实体名称
*
* @protected
* @type {string}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected appDeName: string = 'hromhierarchycat';
/**
* 应用实体主键
*
* @protected
* @type {string}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected appDeKey: string = 'omhierarchycatid';
/**
* 应用实体主信息
*
* @protected
* @type {string}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected appDeMajor: string = 'omhierarchycatname';
/**
* 实体服务对象
*
* @type {HROMHierarchyCatService}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected appEntityService: HROMHierarchyCatService = new HROMHierarchyCatService;
/**
* 实体权限服务对象
*
* @type HROMHierarchyCatUIService
* @memberof HROMHierarchyCatTabExpViewBase
*/
public appUIService: HROMHierarchyCatUIService = new HROMHierarchyCatUIService(this.$store);
/**
* 计数器服务对象集合
*
* @protected
* @type {Array<*>}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected counterServiceArray: Array<any> = [];
/**
* 视图模型数据
*
* @protected
* @type {*}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected model: any = {
srfCaption: 'entities.hromhierarchycat.views.tabexpview.caption',
srfTitle: 'entities.hromhierarchycat.views.tabexpview.title',
srfSubTitle: 'entities.hromhierarchycat.views.tabexpview.subtitle',
dataInfo: ''
}
/**
* 容器模型
*
* @protected
* @type {*}
* @memberof HROMHierarchyCatTabExpViewBase
*/
protected containerModel: any = {
view_toolbar: { name: 'toolbar', type: 'TOOLBAR' },
view_tabexppanel: { name: 'tabexppanel', type: 'TABEXPPANEL' },
};
/**
* 工具栏模型
*
* @type {*}
* @memberof HROMHierarchyCatTabExpView
*/
public toolBarModels: any = {
tbitem1_ff_001: { name: 'tbitem1_ff_001', caption: '编辑', 'isShowCaption': true, 'isShowIcon': true, tooltip: '编辑', iconcls: 'fa fa-edit', icon: '', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'FF_001', target: 'SINGLEKEY', class: '' } },
tbitem1_remove_sep: { name: 'tbitem1_remove_sep', type: 'SEPERATOR', visabled: true, dataaccaction: '', uiaction: { } },
tbitem1_remove: { name: 'tbitem1_remove', caption: '删除并关闭', 'isShowCaption': true, 'isShowIcon': true, tooltip: '删除并关闭', iconcls: 'fa fa-remove', icon: '', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'Remove', target: 'SINGLEKEY', class: '' } },
tbitem2: { name: 'tbitem2', type: 'SEPERATOR', visabled: true, dataaccaction: '', uiaction: { } },
tbitem22: { name: 'tbitem22', caption: '关闭', 'isShowCaption': true, 'isShowIcon': true, tooltip: '关闭', iconcls: 'fa fa-sign-out', icon: '', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'Exit', target: '', class: '' } },
};
/**
* 视图唯一标识
*
* @protected
* @type {string}
* @memberof ViewBase
*/
protected viewtag: string = '1780a9ed77fb97f2cc3852cfdc55c32c';
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof HROMHierarchyCatTabExpViewBase
*/
public engine: TabExpViewEngine = new TabExpViewEngine();
/**
* 引擎初始化
*
* @public
* @memberof HROMHierarchyCatTabExpViewBase
*/
public engineInit(): void {
this.engine.init({
view: this,
keyPSDEField: 'hromhierarchycat',
majorPSDEField: 'omhierarchycatname',
isLoadDefault: true,
});
}
/**
* toolbar 部件 click 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROMHierarchyCatTabExpViewBase
*/
public toolbar_click($event: any, $event2?: any): void {
if (Object.is($event.tag, 'tbitem1_ff_001')) {
this.toolbar_tbitem1_ff_001_click(null, '', $event2);
}
if (Object.is($event.tag, 'tbitem1_remove')) {
this.toolbar_tbitem1_remove_click(null, '', $event2);
}
if (Object.is($event.tag, 'tbitem22')) {
this.toolbar_tbitem22_click(null, '', $event2);
}
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public toolbar_tbitem1_ff_001_click(params: any = {}, tag?: any, $event?: any) {
// 参数
// 取数
let datas: any[] = [];
let xData: any = null;
// _this 指向容器对象
const _this: any = this;
let paramJO:any = {};
let contextJO:any = {};
if (_this.getDatas && _this.getDatas instanceof Function) {
datas = [..._this.getDatas()];
}
if(params){
datas = [params];
}
// 界面行为
const curUIService:HROMHierarchyCatUIService = new HROMHierarchyCatUIService();
curUIService.HROMHierarchyCat_FF_001(datas,contextJO, paramJO, $event, xData,this,"HROMHierarchyCat");
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public toolbar_tbitem1_remove_click(params: any = {}, tag?: any, $event?: any) {
// 参数
// 取数
let datas: any[] = [];
let xData: any = null;
// _this 指向容器对象
const _this: any = this;
let paramJO:any = {};
let contextJO:any = {};
if (_this.getDatas && _this.getDatas instanceof Function) {
datas = [..._this.getDatas()];
}
if(params){
datas = [params];
}
// 界面行为
const curUIService:HROMHierarchyCatUIService = new HROMHierarchyCatUIService();
curUIService.HROMHierarchyCat_Remove(datas,contextJO, paramJO, $event, xData,this,"HROMHierarchyCat");
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public toolbar_tbitem22_click(params: any = {}, tag?: any, $event?: any) {
// 参数
// 取数
let datas: any[] = [];
let xData: any = null;
// _this 指向容器对象
const _this: any = this;
let paramJO:any = {};
let contextJO:any = {};
if (_this.getDatas && _this.getDatas instanceof Function) {
datas = [..._this.getDatas()];
}
if(params){
datas = [params];
}
// 界面行为
this.Exit(datas, contextJO,paramJO, $event, xData,this,"HROMHierarchyCat");
}
/**
* 关闭
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HROMHierarchyCatTabExpViewBase
*/
public Exit(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
this.closeView(args);
if(window.parent){
window.parent.postMessage([{ ...args }],'*');
}
}
}
\ No newline at end of file
<studio-view-style2 viewName="hromhierarchycattabexpview" viewTitle="结构层次类别分页编辑" class='detabexpview hromhierarchy-cat-tab-exp-view'>
<template slot='title'>
<span class='caption-info'>{{$t(model.srfTitle)}}</span>
</template>
<template slot="toolbar">
<view-toolbar mode="STYLE2" :model="toolBarModels" @item-click="toolbar_click.apply(_self, arguments)"/> </template>
<view_tabexppanel
:viewState="viewState"
:viewparams="viewparams"
:context="context"
name="tabexppanel"
ref='tabexppanel'
@closeview="closeView($event)">
</view_tabexppanel>
</studio-view-style2>
\ No newline at end of file
<template src="./hromhierarchy-cat-tab-exp-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { HROMHierarchyCatTabExpViewBase } from './hromhierarchy-cat-tab-exp-view-base';
import view_tabexppanel from '@widgets/hromhierarchy-cat/tab-exp-viewtabexppanel-tabexppanel/tab-exp-viewtabexppanel-tabexppanel.vue';
/**
* 结构层次类别分页编辑视图
*
* @export
* @class HROMHierarchyCatTabExpView
* @extends {HROMHierarchyCatTabExpViewBase}
*/
@Component({
components: {
view_tabexppanel,
}
})
@VueLifeCycleProcessing()
export default class HROMHierarchyCatTabExpView extends HROMHierarchyCatTabExpViewBase { }
</script>
...@@ -5,6 +5,7 @@ export const PageComponents = { ...@@ -5,6 +5,7 @@ export const PageComponents = {
Vue.component('hroperation-unit-edit-view', () => import('@pages/base/hroperation-unit-edit-view/hroperation-unit-edit-view.vue')); Vue.component('hroperation-unit-edit-view', () => import('@pages/base/hroperation-unit-edit-view/hroperation-unit-edit-view.vue'));
Vue.component('hrpost-grid-view', () => import('@pages/human-resource/hrpost-grid-view/hrpost-grid-view.vue')); Vue.component('hrpost-grid-view', () => import('@pages/human-resource/hrpost-grid-view/hrpost-grid-view.vue'));
Vue.component('hrduty-v-001', () => import('@pages/human-resource/hrduty-v-001/hrduty-v-001.vue')); Vue.component('hrduty-v-001', () => import('@pages/human-resource/hrduty-v-001/hrduty-v-001.vue'));
Vue.component('hromhierarchy-cat-tab-exp-view', () => import('@pages/base/hromhierarchy-cat-tab-exp-view/hromhierarchy-cat-tab-exp-view.vue'));
Vue.component('hrpost-v-002', () => import('@pages/human-resource/hrpost-v-002/hrpost-v-002.vue')); Vue.component('hrpost-v-002', () => import('@pages/human-resource/hrpost-v-002/hrpost-v-002.vue'));
Vue.component('hrdistribution-edit-view', () => import('@pages/human-resource/hrdistribution-edit-view/hrdistribution-edit-view.vue')); Vue.component('hrdistribution-edit-view', () => import('@pages/human-resource/hrdistribution-edit-view/hrdistribution-edit-view.vue'));
Vue.component('hrduty-cert-v-002', () => import('@pages/human-resource/hrduty-cert-v-002/hrduty-cert-v-002.vue')); Vue.component('hrduty-cert-v-002', () => import('@pages/human-resource/hrduty-cert-v-002/hrduty-cert-v-002.vue'));
...@@ -21,10 +22,11 @@ export const PageComponents = { ...@@ -21,10 +22,11 @@ export const PageComponents = {
Vue.component('hrduty-skill-v-002', () => import('@pages/human-resource/hrduty-skill-v-002/hrduty-skill-v-002.vue')); Vue.component('hrduty-skill-v-002', () => import('@pages/human-resource/hrduty-skill-v-002/hrduty-skill-v-002.vue'));
Vue.component('hrpost-rel-v-002', () => import('@pages/human-resource/hrpost-rel-v-002/hrpost-rel-v-002.vue')); Vue.component('hrpost-rel-v-002', () => import('@pages/human-resource/hrpost-rel-v-002/hrpost-rel-v-002.vue'));
Vue.component('hremployee-pickup-grid-view', () => import('@pages/human-resource/hremployee-pickup-grid-view/hremployee-pickup-grid-view.vue')); Vue.component('hremployee-pickup-grid-view', () => import('@pages/human-resource/hremployee-pickup-grid-view/hremployee-pickup-grid-view.vue'));
Vue.component('hromhierarchy-cat-dashboard-view', () => import('@pages/base/hromhierarchy-cat-dashboard-view/hromhierarchy-cat-dashboard-view.vue'));
Vue.component('hrduty-edu-grid-view', () => import('@pages/human-resource/hrduty-edu-grid-view/hrduty-edu-grid-view.vue')); Vue.component('hrduty-edu-grid-view', () => import('@pages/human-resource/hrduty-edu-grid-view/hrduty-edu-grid-view.vue'));
Vue.component('hrorganization-pickup-view', () => import('@pages/base/hrorganization-pickup-view/hrorganization-pickup-view.vue')); Vue.component('hrorganization-pickup-view', () => import('@pages/base/hrorganization-pickup-view/hrorganization-pickup-view.vue'));
Vue.component('hrlegal-grid-view', () => import('@pages/base/hrlegal-grid-view/hrlegal-grid-view.vue'));
Vue.component('hromhierarchy-tree-exp-view', () => import('@pages/base/hromhierarchy-tree-exp-view/hromhierarchy-tree-exp-view.vue')); Vue.component('hromhierarchy-tree-exp-view', () => import('@pages/base/hromhierarchy-tree-exp-view/hromhierarchy-tree-exp-view.vue'));
Vue.component('hrlegal-grid-view', () => import('@pages/base/hrlegal-grid-view/hrlegal-grid-view.vue'));
Vue.component('hrpost-v-006', () => import('@pages/human-resource/hrpost-v-006/hrpost-v-006.vue')); Vue.component('hrpost-v-006', () => import('@pages/human-resource/hrpost-v-006/hrpost-v-006.vue'));
Vue.component('hrlegal-v-002', () => import('@pages/base/hrlegal-v-002/hrlegal-v-002.vue')); Vue.component('hrlegal-v-002', () => import('@pages/base/hrlegal-v-002/hrlegal-v-002.vue'));
Vue.component('hroperation-unit-tab-exp-view', () => import('@pages/base/hroperation-unit-tab-exp-view/hroperation-unit-tab-exp-view.vue')); Vue.component('hroperation-unit-tab-exp-view', () => import('@pages/base/hroperation-unit-tab-exp-view/hroperation-unit-tab-exp-view.vue'));
......
...@@ -113,6 +113,20 @@ const router = new Router({ ...@@ -113,6 +113,20 @@ const router = new Router({
}, },
component: () => import('@pages/human-resource/hrduty-v-001/hrduty-v-001.vue'), component: () => import('@pages/human-resource/hrduty-v-001/hrduty-v-001.vue'),
}, },
{
path: 'hromhierarchycats/:hromhierarchycat?/tabexpview/:tabexpview?',
meta: {
caption: 'entities.hromhierarchycat.views.tabexpview.title',
info:'',
parameters: [
{ pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' },
{ pathName: 'tabexpview', parameterName: 'tabexpview' },
],
requireAuth: true,
},
component: () => import('@pages/base/hromhierarchy-cat-tab-exp-view/hromhierarchy-cat-tab-exp-view.vue'),
},
{ {
path: 'hrposts/:hrpost?/v_002/:v_002?', path: 'hrposts/:hrpost?/v_002/:v_002?',
meta: { meta: {
...@@ -517,6 +531,20 @@ const router = new Router({ ...@@ -517,6 +531,20 @@ const router = new Router({
}, },
component: () => import('@pages/human-resource/hremployee-pickup-grid-view/hremployee-pickup-grid-view.vue'), component: () => import('@pages/human-resource/hremployee-pickup-grid-view/hremployee-pickup-grid-view.vue'),
}, },
{
path: 'hromhierarchycats/:hromhierarchycat?/dashboardview/:dashboardview?',
meta: {
caption: 'entities.hromhierarchycat.views.dashboardview.title',
info:'',
parameters: [
{ pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' },
{ pathName: 'dashboardview', parameterName: 'dashboardview' },
],
requireAuth: true,
},
component: () => import('@pages/base/hromhierarchy-cat-dashboard-view/hromhierarchy-cat-dashboard-view.vue'),
},
{ {
path: 'hrduties/:hrduty?/hrdutyedus/:hrdutyedu?/gridview/:gridview?', path: 'hrduties/:hrduty?/hrdutyedus/:hrdutyedu?/gridview/:gridview?',
meta: { meta: {
...@@ -561,27 +589,27 @@ const router = new Router({ ...@@ -561,27 +589,27 @@ const router = new Router({
component: () => import('@pages/base/hrorganization-pickup-view/hrorganization-pickup-view.vue'), component: () => import('@pages/base/hrorganization-pickup-view/hrorganization-pickup-view.vue'),
}, },
{ {
path: 'hrlegals/:hrlegal?/gridview/:gridview?', path: 'hromhierarchycats/:hromhierarchycat?/hromhierarchies/:hromhierarchy?/treeexpview/:treeexpview?',
meta: { meta: {
caption: 'entities.hrlegal.views.gridview.title', caption: 'entities.hromhierarchy.views.treeexpview.title',
info:'', info:'',
parameters: [ parameters: [
{ pathName: 'pim', parameterName: 'pim' }, { pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hrlegals', parameterName: 'hrlegal' }, { pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' },
{ pathName: 'gridview', parameterName: 'gridview' }, { pathName: 'hromhierarchies', parameterName: 'hromhierarchy' },
{ pathName: 'treeexpview', parameterName: 'treeexpview' },
], ],
requireAuth: true, requireAuth: true,
}, },
component: () => import('@pages/base/hrlegal-grid-view/hrlegal-grid-view.vue'), component: () => import('@pages/base/hromhierarchy-tree-exp-view/hromhierarchy-tree-exp-view.vue'),
}, },
{ {
path: 'hromhierarchycats/:hromhierarchycat?/hromhierarchies/:hromhierarchy?/treeexpview/:treeexpview?', path: 'hromhierarchies/:hromhierarchy?/treeexpview/:treeexpview?',
meta: { meta: {
caption: 'entities.hromhierarchy.views.treeexpview.title', caption: 'entities.hromhierarchy.views.treeexpview.title',
info:'', info:'',
parameters: [ parameters: [
{ pathName: 'pim', parameterName: 'pim' }, { pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' },
{ pathName: 'hromhierarchies', parameterName: 'hromhierarchy' }, { pathName: 'hromhierarchies', parameterName: 'hromhierarchy' },
{ pathName: 'treeexpview', parameterName: 'treeexpview' }, { pathName: 'treeexpview', parameterName: 'treeexpview' },
], ],
...@@ -590,18 +618,18 @@ const router = new Router({ ...@@ -590,18 +618,18 @@ const router = new Router({
component: () => import('@pages/base/hromhierarchy-tree-exp-view/hromhierarchy-tree-exp-view.vue'), component: () => import('@pages/base/hromhierarchy-tree-exp-view/hromhierarchy-tree-exp-view.vue'),
}, },
{ {
path: 'hromhierarchies/:hromhierarchy?/treeexpview/:treeexpview?', path: 'hrlegals/:hrlegal?/gridview/:gridview?',
meta: { meta: {
caption: 'entities.hromhierarchy.views.treeexpview.title', caption: 'entities.hrlegal.views.gridview.title',
info:'', info:'',
parameters: [ parameters: [
{ pathName: 'pim', parameterName: 'pim' }, { pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hromhierarchies', parameterName: 'hromhierarchy' }, { pathName: 'hrlegals', parameterName: 'hrlegal' },
{ pathName: 'treeexpview', parameterName: 'treeexpview' }, { pathName: 'gridview', parameterName: 'gridview' },
], ],
requireAuth: true, requireAuth: true,
}, },
component: () => import('@pages/base/hromhierarchy-tree-exp-view/hromhierarchy-tree-exp-view.vue'), component: () => import('@pages/base/hrlegal-grid-view/hrlegal-grid-view.vue'),
}, },
{ {
path: 'hrposts/:hrpost?/v_006/:v_006?', path: 'hrposts/:hrpost?/v_006/:v_006?',
......
...@@ -88,7 +88,7 @@ export const viewstate: any = { ...@@ -88,7 +88,7 @@ export const viewstate: any = {
viewdatachange: false, viewdatachange: false,
refviews: [ refviews: [
'aa2c4d945f9d880dd836ebe74ca9f547', 'aa2c4d945f9d880dd836ebe74ca9f547',
'1316a3add8f01af03edf978ef21af6b1', '1780a9ed77fb97f2cc3852cfdc55c32c',
], ],
}, },
{ {
...@@ -112,6 +112,17 @@ export const viewstate: any = { ...@@ -112,6 +112,17 @@ export const viewstate: any = {
'bf1effbdf9fb9d7d2a1c9d281ab35441', 'bf1effbdf9fb9d7d2a1c9d281ab35441',
], ],
}, },
{
viewtag: '1780a9ed77fb97f2cc3852cfdc55c32c',
viewmodule: 'Base',
viewname: 'HROMHierarchyCatTabExpView',
viewaction: '',
viewdatachange: false,
refviews: [
'c62ff001669cca98c0a2a7bc3383c775',
'aa2c4d945f9d880dd836ebe74ca9f547',
],
},
{ {
viewtag: '18769b2868ba1e27d9392575c10d6bfa', viewtag: '18769b2868ba1e27d9392575c10d6bfa',
viewmodule: 'Base', viewmodule: 'Base',
...@@ -615,6 +626,16 @@ export const viewstate: any = { ...@@ -615,6 +626,16 @@ export const viewstate: any = {
'ebcbf493e0a574cf170412456645a3a7', 'ebcbf493e0a574cf170412456645a3a7',
], ],
}, },
{
viewtag: 'c62ff001669cca98c0a2a7bc3383c775',
viewmodule: 'Base',
viewname: 'HROMHierarchyCatDashboardView',
viewaction: '',
viewdatachange: false,
refviews: [
'1316a3add8f01af03edf978ef21af6b1',
],
},
{ {
viewtag: 'cd7f9e0b57fdfdf34307ce460137b152', viewtag: 'cd7f9e0b57fdfdf34307ce460137b152',
viewmodule: 'HumanResource', viewmodule: 'HumanResource',
......
...@@ -92,6 +92,7 @@ export default class HROMHierarchyCatUIServiceBase extends UIService { ...@@ -92,6 +92,7 @@ export default class HROMHierarchyCatUIServiceBase extends UIService {
this.allViewMap.set(':',{viewname:'pickupgridview',srfappde:'hromhierarchycats'}); this.allViewMap.set(':',{viewname:'pickupgridview',srfappde:'hromhierarchycats'});
this.allViewMap.set('MDATAVIEW:',{viewname:'gridview',srfappde:'hromhierarchycats'}); this.allViewMap.set('MDATAVIEW:',{viewname:'gridview',srfappde:'hromhierarchycats'});
this.allViewMap.set(':',{viewname:'v_002',srfappde:'hromhierarchycats'}); this.allViewMap.set(':',{viewname:'v_002',srfappde:'hromhierarchycats'});
this.allViewMap.set(':',{viewname:'tabexpview',srfappde:'hromhierarchycats'});
this.allViewMap.set('MPICKUPVIEW:',{viewname:'mpickupview',srfappde:'hromhierarchycats'}); this.allViewMap.set('MPICKUPVIEW:',{viewname:'mpickupview',srfappde:'hromhierarchycats'});
this.allViewMap.set('PICKUPVIEW:',{viewname:'pickupview',srfappde:'hromhierarchycats'}); this.allViewMap.set('PICKUPVIEW:',{viewname:'pickupview',srfappde:'hromhierarchycats'});
this.allViewMap.set('EDITVIEW:',{viewname:'editview',srfappde:'hromhierarchycats'}); this.allViewMap.set('EDITVIEW:',{viewname:'editview',srfappde:'hromhierarchycats'});
......
...@@ -49,6 +49,15 @@ export class BOARD_001DashboardBase extends MainControlBase { ...@@ -49,6 +49,15 @@ export class BOARD_001DashboardBase extends MainControlBase {
* @memberof BOARD_001DashboardBase * @memberof BOARD_001DashboardBase
*/ */
protected appDeName: string = 'hromhierarchycat'; protected appDeName: string = 'hromhierarchycat';
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof BOARD_001DashboardBase
*/
protected appDeLogicName: string = '结构层次类别';
/** /**
* 是否支持看板定制 * 是否支持看板定制
* *
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<row > <row >
<i-col class="form-layout-container" v-show="detailsModel.group1.visible" :style="{}" :lg="{ span: 24, offset: 0 }"> <i-col class="form-layout-container" v-show="detailsModel.group1.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-group :model="detailsModel.group1" layoutType="TABLE_24COL" titleStyle="" class=' from-group-style .from-dashboard-style' :uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchycat.ef_001_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="1" :isInfoGroupMode="true" > <app-form-group :model="detailsModel.group1" layoutType="TABLE_24COL" titleStyle="" class='' :uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchycat.ef_001_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="1" :isInfoGroupMode="true" >
<app-form-group-data-panel slot="dataInfoPanel" :model="detailsModel.group1" :data="data" :context="context" :viewparams="viewparams"/> <app-form-group-data-panel slot="dataInfoPanel" :model="detailsModel.group1" :data="data" :context="context" :viewparams="viewparams"/>
<row> <row>
<i-col class="form-layout-container" v-show="detailsModel.omhierarchycatname.visible" :style="{}" :sm="{ span: 5, offset: 1 }" :md="{ span: 5, offset: 1 }" :lg="{ span: 5, offset: 1 }" :xl="{ span: 5, offset: 1 }"> <i-col class="form-layout-container" v-show="detailsModel.omhierarchycatname.visible" :style="{}" :sm="{ span: 5, offset: 1 }" :md="{ span: 5, offset: 1 }" :lg="{ span: 5, offset: 1 }" :xl="{ span: 5, offset: 1 }">
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
</i-col> </i-col>
<i-col class="form-layout-container" v-show="detailsModel.grouppanel1.visible" :style="{'height': '620px !important',}" :lg="{ span: 24, offset: 0 }"> <i-col class="form-layout-container" v-show="detailsModel.grouppanel1.visible" :style="{'height': '620px !important',}" :lg="{ span: 24, offset: 0 }">
<app-form-group :model="detailsModel.grouppanel1" layoutType="TABLE_24COL" titleStyle="" class=' from-group-style .from-dashboard-style' :uiActionGroup="detailsModel.grouppanel1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchycat.ef_001_form.details.grouppanel1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="1" :isInfoGroupMode="true" > <app-form-group :model="detailsModel.grouppanel1" layoutType="TABLE_24COL" titleStyle="" class='' :uiActionGroup="detailsModel.grouppanel1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchycat.ef_001_form.details.grouppanel1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="1" :isInfoGroupMode="true" >
<app-form-group-data-panel slot="dataInfoPanel" :model="detailsModel.grouppanel1" :data="data" :context="context" :viewparams="viewparams"/> <app-form-group-data-panel slot="dataInfoPanel" :model="detailsModel.grouppanel1" :data="data" :context="context" :viewparams="viewparams"/>
<row> <row>
<i-col class="form-layout-container" v-show="detailsModel.druipart1.visible" :style="{'height': '600px !important',}" :lg="{ span: 24, offset: 0 }"> <i-col class="form-layout-container" v-show="detailsModel.druipart1.visible" :style="{'height': '600px !important',}" :lg="{ span: 24, offset: 0 }">
......
...@@ -20,6 +20,3 @@ import { EF_001EditFormBase } from './ef-001-form-base'; ...@@ -20,6 +20,3 @@ import { EF_001EditFormBase } from './ef-001-form-base';
@VueLifeCycleProcessing() @VueLifeCycleProcessing()
export default class EF_001EditForm extends EF_001EditFormBase { } export default class EF_001EditForm extends EF_001EditFormBase { }
</script> </script>
<style lang='less'>
@import './ef-001-form.less';
</style>
...@@ -50,6 +50,15 @@ export class PART_V_001PortletBase extends MainControlBase { ...@@ -50,6 +50,15 @@ export class PART_V_001PortletBase extends MainControlBase {
*/ */
protected appDeName: string = 'hromhierarchycat'; protected appDeName: string = 'hromhierarchycat';
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof PART_V_001PortletBase
*/
protected appDeLogicName: string = '结构层次类别';
/** /**
* 长度 * 长度
* *
......
import { Prop, Provide, Emit, Model } from 'vue-property-decorator';
import { Subject, Subscription } from 'rxjs';
import { Watch, TabExpPanelControlBase } from '@/studio-core';
import HROMHierarchyCatService from '@/service/hromhierarchy-cat/hromhierarchy-cat-service';
import TabExpViewtabexppanelService from './tab-exp-viewtabexppanel-tabexppanel-service';
import HROMHierarchyCatUIService from '@/uiservice/hromhierarchy-cat/hromhierarchy-cat-ui-service';
/**
* tabexppanel部件基类
*
* @export
* @class TabExpPanelControlBase
* @extends {TabExpViewtabexppanelTabexppanelBase}
*/
export class TabExpViewtabexppanelTabexppanelBase extends TabExpPanelControlBase {
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof TabExpViewtabexppanelTabexppanelBase
*/
protected controlType: string = 'TABEXPPANEL';
/**
* 建构部件服务对象
*
* @type {TabExpViewtabexppanelService}
* @memberof TabExpViewtabexppanelTabexppanelBase
*/
public service: TabExpViewtabexppanelService = new TabExpViewtabexppanelService({ $store: this.$store });
/**
* 实体服务对象
*
* @type {HROMHierarchyCatService}
* @memberof TabExpViewtabexppanelTabexppanelBase
*/
public appEntityService: HROMHierarchyCatService = new HROMHierarchyCatService({ $store: this.$store });
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof TabExpViewtabexppanelTabexppanelBase
*/
protected appDeName: string = 'hromhierarchycat';
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof TabExpViewtabexppanelTabexppanelBase
*/
protected appDeLogicName: string = '结构层次类别';
/**
* 是否初始化
*
* @protected
* @returns {any}
* @memberof TabExpViewtabexppanel
*/
protected isInit: any = {
tabviewpanel: true ,
}
/**
* 被激活的分页面板
*
* @protected
* @type {string}
* @memberof TabExpViewtabexppanel
*/
protected activatedTabViewPanel: string = 'tabviewpanel';
/**
* 组件创建完毕
*
* @protected
* @memberof TabExpViewtabexppanel
*/
protected ctrlCreated(): void {
//设置分页导航srfparentdename和srfparentkey
if (this.context.hromhierarchycat) {
Object.assign(this.context, { srfparentdename: 'HROMHierarchyCat', srfparentkey: this.context.hromhierarchycat });
}
super.ctrlCreated();
}
}
\ No newline at end of file
/**
* TabExpViewtabexppanel 部件模型
*
* @export
* @class TabExpViewtabexppanelModel
*/
export default class TabExpViewtabexppanelModel {
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof TabExpViewtabexppanelModel
*/
public getDataItems(): any[] {
return [
{
name: 'hromhierarchycat',
prop: 'omhierarchycatid',
},
{
name: 'omhierarchycatname',
},
{
name: 'createman',
},
{
name: 'createdate',
},
{
name: 'updateman',
},
{
name: 'updatedate',
},
{
name: 'memo',
},
]
}
}
\ No newline at end of file
import { Http,Util,Errorlog } from '@/utils';
import ControlService from '@/widgets/control-service';
import HROMHierarchyCatService from '@/service/hromhierarchy-cat/hromhierarchy-cat-service';
import TabExpViewtabexppanelModel from './tab-exp-viewtabexppanel-tabexppanel-model';
/**
* TabExpViewtabexppanel 部件服务对象
*
* @export
* @class TabExpViewtabexppanelService
*/
export default class TabExpViewtabexppanelService extends ControlService {
/**
* 结构层次类别服务对象
*
* @type {HROMHierarchyCatService}
* @memberof TabExpViewtabexppanelService
*/
public appEntityService: HROMHierarchyCatService = new HROMHierarchyCatService({ $store: this.getStore() });
/**
* 设置从数据模式
*
* @type {boolean}
* @memberof TabExpViewtabexppanelService
*/
public setTempMode(){
this.isTempMode = false;
}
/**
* Creates an instance of TabExpViewtabexppanelService.
*
* @param {*} [opts={}]
* @memberof TabExpViewtabexppanelService
*/
constructor(opts: any = {}) {
super(opts);
this.model = new TabExpViewtabexppanelModel();
}
}
\ No newline at end of file
<div class='tabviewpanel'>
<tabs :value="activatedTabViewPanel" :animated="false" class='tabexppanel' name='tabexpviewtabexppanel' @on-click="tabPanelClick($event)">
<tab-pane :index="0" name='tabviewpanel' tab='tabexpviewtabexppanel' class=''
:label="(h) =>{
return h('div', [
h('i',{
class:'fa fa-info-circle',
style:{
'margin-right' : '2px'
}
}),
h('span', '预览'),
h('Badge', {
props: {
count: undefined,
type: 'primary'
}
})
])
}" >
<view_tabviewpanel
:viewState="viewState"
:viewparams="JSON.parse(JSON.stringify(viewparams))"
:context="JSON.parse(JSON.stringify(context))"
v-if="isInit.tabviewpanel"
name="tabviewpanel"
ref='tabviewpanel'
:expActive="activatedTabViewPanel === 'tabviewpanel'"
@viewpanelDatasChange = "tabViewPanelDatasChange"
@closeview="closeView($event)">
</view_tabviewpanel>
</tab-pane>
</tabs>
</div>
\ No newline at end of file
<template src="./tab-exp-viewtabexppanel-tabexppanel.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { TabExpViewtabexppanelTabexppanelBase } from './tab-exp-viewtabexppanel-tabexppanel-base';
import view_tabviewpanel from '@widgets/hromhierarchy-cat/tab-exp-viewtabviewpanel-tabviewpanel/tab-exp-viewtabviewpanel-tabviewpanel.vue';
/**
* tabexppanel部件
*
* @export
* @class TabExpViewtabexppanelTabexppanel
* @extends {TabExpViewtabexppanelTabexppanelBase}
*/
@Component({
components: {
view_tabviewpanel,
}
})
@VueLifeCycleProcessing()
export default class TabExpViewtabexppanelTabexppanel extends TabExpViewtabexppanelTabexppanelBase { }
</script>
import { Prop, Provide, Emit, Model } from 'vue-property-decorator';
import { Subject, Subscription } from 'rxjs';
import { Watch, MainControlBase } from '@/studio-core';
import HROMHierarchyCatService from '@/service/hromhierarchy-cat/hromhierarchy-cat-service';
import TabExpViewtabviewpanelService from './tab-exp-viewtabviewpanel-tabviewpanel-service';
import HROMHierarchyCatUIService from '@/uiservice/hromhierarchy-cat/hromhierarchy-cat-ui-service';
/**
* tabviewpanel部件基类
*
* @export
* @class MainControlBase
* @extends {TabExpViewtabviewpanelTabviewpanelBase}
*/
export class TabExpViewtabviewpanelTabviewpanelBase extends MainControlBase {
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof TabExpViewtabviewpanelTabviewpanelBase
*/
protected controlType: string = 'TABVIEWPANEL';
/**
* 建构部件服务对象
*
* @type {TabExpViewtabviewpanelService}
* @memberof TabExpViewtabviewpanelTabviewpanelBase
*/
public service: TabExpViewtabviewpanelService = new TabExpViewtabviewpanelService({ $store: this.$store });
/**
* 实体服务对象
*
* @type {HROMHierarchyCatService}
* @memberof TabExpViewtabviewpanelTabviewpanelBase
*/
public appEntityService: HROMHierarchyCatService = new HROMHierarchyCatService({ $store: this.$store });
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof TabExpViewtabviewpanelTabviewpanelBase
*/
protected appDeName: string = 'hromhierarchycat';
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof TabExpViewtabviewpanelTabviewpanelBase
*/
protected appDeLogicName: string = '结构层次类别';
/**
* 导航模式下项是否激活
*
* @type {*}
* @memberof TabExpViewtabviewpanel
*/
@Prop()
public expActive!: any;
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof TabExpViewtabviewpanel
*/
public getDatas(): any[] {
return [];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof TabExpViewtabviewpanel
*/
public getData(): any {
return null;
}
/**
* 是否被激活
*
* @type {boolean}
* @memberof TabExpViewtabviewpanel
*/
public isActivied: boolean = true;
/**
* 局部上下文
*
* @type {*}
* @memberof TabExpViewtabviewpanel
*/
public localContext: any = null;
/**
* 局部视图参数
*
* @type {*}
* @memberof TabExpViewtabviewpanel
*/
public localViewParam: any = null;
/**
* 传入上下文
*
* @type {string}
* @memberof TabExpViewtabviewpanel
*/
public viewdata: string = JSON.stringify(this.context);
/**
* 传入视图参数
*
* @type {string}
* @memberof PickupViewpickupviewpanel
*/
public viewparam: string = JSON.stringify(this.viewparams);
/**
* 视图面板过滤项
*
* @type {string}
* @memberof TabExpViewtabviewpanel
*/
public navfilter: string = "";
/**
* vue 生命周期
*
* @returns
* @memberof TabExpViewtabviewpanel
*/
public created() {
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof TabExpViewtabviewpanel
*/
public afterCreated(){
this.initNavParam();
if (this.viewState) {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
this.$forceUpdate();
this.initNavParam();
});
}
}
/**
* 初始化导航参数
*
* @memberof TabExpViewtabviewpanel
*/
public initNavParam(){
if(!Object.is(this.navfilter,"")){
Object.assign(this.viewparams,{[this.navfilter]:this.context['majorentity']})
}
if(this.localContext && Object.keys(this.localContext).length >0){
let _context:any = this.$util.computedNavData({},this.context,this.viewparams,this.localContext);
Object.assign(this.context,_context);
}
if(this.localViewParam && Object.keys(this.localViewParam).length >0){
let _param:any = this.$util.computedNavData({},this.context,this.viewparams,this.localViewParam);
Object.assign(this.viewparams,_param);
}
this.viewdata =JSON.stringify(this.context);
this.viewparam = JSON.stringify(this.viewparams);
}
/**
* 视图数据变化
*
* @memberof TabExpViewtabviewpanel
*/
public viewDatasChange($event:any){
this.$emit('viewpanelDatasChange',$event);
}
/**
* vue 生命周期
*
* @memberof TabExpViewtabviewpanel
*/
public destroyed() {
this.afterDestroy();
}
/**
* 执行destroyed后的逻辑
*
* @memberof TabExpViewtabviewpanel
*/
public afterDestroy() {
if (this.viewStateEvent) {
this.viewStateEvent.unsubscribe();
}
}
}
\ No newline at end of file
/**
* TabExpViewtabviewpanel 部件模型
*
* @export
* @class TabExpViewtabviewpanelModel
*/
export default class TabExpViewtabviewpanelModel {
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof TabExpViewtabviewpanelModel
*/
public getDataItems(): any[] {
return [
{
name: 'hromhierarchycat',
prop: 'omhierarchycatid',
},
{
name: 'omhierarchycatname',
},
{
name: 'createman',
},
{
name: 'createdate',
},
{
name: 'updateman',
},
{
name: 'updatedate',
},
{
name: 'memo',
},
]
}
}
\ No newline at end of file
import { Http } from '@/utils';
import ControlService from '@/widgets/control-service';
/**
* TabExpViewtabviewpanel 部件服务对象
*
* @export
* @class TabExpViewtabviewpanelService
*/
export default class TabExpViewtabviewpanelService extends ControlService {
}
\ No newline at end of file
<div class='tabviewpanel' v-if='isActivied'>
<hromhierarchy-cat-dashboard-view
class='viewcontainer2'
:viewdata="viewdata"
:viewparam="viewparam"
@viewload="viewDatasChange($event)"
:viewDefaultUsage="false"
:viewUsage="7"
:expActive="expActive"
@closeview="closeView($event)"
/>
</div>
\ No newline at end of file
<template src="./tab-exp-viewtabviewpanel-tabviewpanel.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { TabExpViewtabviewpanelTabviewpanelBase } from './tab-exp-viewtabviewpanel-tabviewpanel-base';
/**
* tabviewpanel部件
*
* @export
* @class TabExpViewtabviewpanelTabviewpanel
* @extends {TabExpViewtabviewpanelTabviewpanelBase}
*/
@Component({
components: {
}
})
@VueLifeCycleProcessing()
export default class TabExpViewtabviewpanelTabviewpanel extends TabExpViewtabviewpanelTabviewpanelBase { }
</script>
...@@ -268,7 +268,7 @@ ...@@ -268,7 +268,7 @@
<!--输出实体[HROMHIERARCHYCAT]数据结构 --> <!--输出实体[HROMHIERARCHYCAT]数据结构 -->
<changeSet author="a_LAB01_e85d8801c" id="tab-hromhierarchycat-80-12"> <changeSet author="a_LAB01_e85d8801c" id="tab-hromhierarchycat-88-12">
<createTable tableName="OMHIERARCHYCAT"> <createTable tableName="OMHIERARCHYCAT">
<column name="OMHIERARCHYCATID" remarks="" type="VARCHAR(100)"> <column name="OMHIERARCHYCATID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_HROMHIERARCHYCAT_OMHIERARCH"/> <constraints primaryKey="true" primaryKeyName="PK_HROMHIERARCHYCAT_OMHIERARCH"/>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册