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

jackwang 部署微服务应用

上级 403813d6
......@@ -9,6 +9,16 @@
"viewtag": "0515a652f1ba4326ef610f1d98be95c8",
"memo": "系统自动添加"
},
"hrorganizationpickupgridview": {
"title": "组织选择表格视图",
"caption": "组织",
"viewtype": "DEPICKUPGRIDVIEW",
"viewmodule": "Base",
"viewname": "HROrganizationPickupGridView",
"viewfilename": "hrorganization-pickup-grid-view",
"viewtag": "07e98f33b8d972b70860e615aaa10b89",
"memo": ""
},
"hrorganizationgridview": {
"title": "组织",
"caption": "组织",
......@@ -179,6 +189,16 @@
"viewtag": "811880336a6c1c1beeb894c91404544b",
"memo": "系统自动添加"
},
"hrorganizationmpickupview": {
"title": "组织数据多项选择视图",
"caption": "组织",
"viewtype": "DEMPICKUPVIEW",
"viewmodule": "Base",
"viewname": "HROrganizationMPickupView",
"viewfilename": "hrorganization-mpickup-view",
"viewtag": "816f119be45e16d278809f590fb65029",
"memo": ""
},
"hrorgaddresseditview": {
"title": "组织地址编辑视图",
"caption": "组织地址",
......@@ -299,6 +319,16 @@
"viewtag": "e50ad3e1883bafa2d6f264d44ca8ff89",
"memo": "系统自动添加"
},
"hrorganizationpickupview": {
"title": "组织数据选择视图",
"caption": "组织",
"viewtype": "DEPICKUPVIEW",
"viewmodule": "Base",
"viewname": "HROrganizationPickupView",
"viewfilename": "hrorganization-pickup-view",
"viewtag": "e7ba37699bd458dc8dd5c02abac8dadd",
"memo": ""
},
"hrlegaltabexpview": {
"title": "法人信息",
"caption": "法人信息",
......
......@@ -63,7 +63,7 @@ export interface HROMHierarchy {
organizationid?: any;
/**
* 上层次结构标识
* 上层次结构标识
*
* @returns {*}
* @memberof HROMHierarchy
......
......@@ -8,7 +8,7 @@ export default {
updateman: "更新人",
createman: "建立人",
organizationid: "组织",
pomhierarchyid: "上层次结构标识",
pomhierarchyid: "上层次结构标识",
hromhierarchycatid: "结构层次类别标识",
pomhierarchyname: "上级组织",
organizationname: "组织名称",
......@@ -38,10 +38,8 @@ export default {
},
main_form: {
details: {
group1: "组织层次结构基本信息",
group1: "组织层次结构",
formpage1: "基本信息",
group2: "操作信息",
formpage2: "其它",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "组织层次结构标识",
......@@ -50,6 +48,11 @@ export default {
srfuf: "",
srfdeid: "",
srfsourcekey: "",
organizationname: "组织名称",
pomhierarchyname: "上级组织",
showorder: "排序号",
pomhierarchyid: "上级层次结构标识",
organizationid: "组织",
omhierarchyid: "组织层次结构标识",
},
uiactions: {
......
......@@ -7,7 +7,7 @@ export default {
updateman: "更新人",
createman: "建立人",
organizationid: "组织",
pomhierarchyid: "上层次结构标识",
pomhierarchyid: "上层次结构标识",
hromhierarchycatid: "结构层次类别标识",
pomhierarchyname: "上级组织",
organizationname: "组织名称",
......@@ -37,10 +37,8 @@ export default {
},
main_form: {
details: {
group1: "组织层次结构基本信息",
group1: "组织层次结构",
formpage1: "基本信息",
group2: "操作信息",
formpage2: "其它",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "组织层次结构标识",
......@@ -49,6 +47,11 @@ export default {
srfuf: "",
srfdeid: "",
srfsourcekey: "",
organizationname: "组织名称",
pomhierarchyname: "上级组织",
showorder: "排序号",
pomhierarchyid: "上级层次结构标识",
organizationid: "组织",
omhierarchyid: "组织层次结构标识",
},
uiactions: {
......
......@@ -16,14 +16,26 @@ export default {
memo: "备注",
},
views: {
pickupgridview: {
caption: "组织",
title: "组织选择表格视图",
},
gridview: {
caption: "组织",
title: "组织",
},
mpickupview: {
caption: "组织",
title: "组织数据多项选择视图",
},
editview: {
caption: "组织",
title: "组织编辑视图",
},
pickupview: {
caption: "组织",
title: "组织数据选择视图",
},
},
main_form: {
details: {
......
......@@ -15,14 +15,26 @@ export default {
memo: "备注",
},
views: {
pickupgridview: {
caption: "组织",
title: "组织选择表格视图",
},
gridview: {
caption: "组织",
title: "组织",
},
mpickupview: {
caption: "组织",
title: "组织数据多项选择视图",
},
editview: {
caption: "组织",
title: "组织编辑视图",
},
pickupview: {
caption: "组织",
title: "组织数据选择视图",
},
},
main_form: {
details: {
......
......@@ -15,6 +15,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "HROrgContactEditView",
"viewtag": "0515a652f1ba4326ef610f1d98be95c8"
},
"hrorganizationpickupgridview": {
"title": "组织选择表格视图",
"caption": "组织",
"viewtype": "DEPICKUPGRIDVIEW",
"viewmodule": "Base",
"viewname": "HROrganizationPickupGridView",
"viewtag": "07e98f33b8d972b70860e615aaa10b89"
},
"hrorganizationgridview": {
"title": "组织",
"caption": "组织",
......@@ -151,6 +159,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "HROMHierarchyPickupGridView",
"viewtag": "811880336a6c1c1beeb894c91404544b"
},
"hrorganizationmpickupview": {
"title": "组织数据多项选择视图",
"caption": "组织",
"viewtype": "DEMPICKUPVIEW",
"viewmodule": "Base",
"viewname": "HROrganizationMPickupView",
"viewtag": "816f119be45e16d278809f590fb65029"
},
"hrorgaddresseditview": {
"title": "组织地址编辑视图",
"caption": "组织地址",
......@@ -247,6 +263,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "HRLegalEditView",
"viewtag": "e50ad3e1883bafa2d6f264d44ca8ff89"
},
"hrorganizationpickupview": {
"title": "组织数据选择视图",
"caption": "组织",
"viewtype": "DEPICKUPVIEW",
"viewmodule": "Base",
"viewname": "HROrganizationPickupView",
"viewtag": "e7ba37699bd458dc8dd5c02abac8dadd"
},
"hrlegaltabexpview": {
"title": "法人信息",
"caption": "法人信息",
......
<studio-view-style2 viewName="hromhierarchycatgridview" viewTitle="结构层次类别表格视图" class='degridview hromhierarchy-cat-grid-view'>
<template slot='title'>
<span class='caption-info'>{{$t(model.srfTitle)}}</span>
</template>
<i-input slot="quickSearch" v-show="!isExpandSearchForm" v-model="query" placeholder="名称" search @on-search="onSearch($event)"/>
<template slot="toolbar">
<view-toolbar mode="STYLE2" :model="toolBarModels" @item-click="toolbar_click($event)"/> </template>
......
<studio-view-style2 viewName="hromhierarchyeditview" viewTitle="组织层次结构编辑视图" class='deeditview hromhierarchy-edit-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($event)"/> </template>
<view_form
......
......@@ -527,6 +527,11 @@ export class HROMHierarchyGridViewBase extends GridViewBase {
let localContext:any = null;
let localViewParam:any =null;
let batchAddPSAppViews:Array<any>=[];
batchAddPSAppViews=[
{view:{viewname:'hrorganization-mpickup-view',height: 0,width: 0,title: '组织数据多项选择视图'},
res:[],
'resAppKey':''}
];
if(batchAddPSAppViews.length == 0 || !this.context.srfparentdename){
this.$Notice.warning({ title: '错误', desc: '批量添加需添加N:N关系' });
return;
......@@ -592,14 +597,28 @@ export class HROMHierarchyGridViewBase extends GridViewBase {
}
const parameters: any[] = [
{ pathName: 'hromhierarchies', parameterName: 'hromhierarchy' },
{ pathName: 'editview', parameterName: 'editview' },
];
const _this: any = this;
const openIndexViewTab = (data: any) => {
const routePath = this.$viewTool.buildUpRoutePath(this.$route, tempContext, deResParameters, parameters, args, data);
this.$router.push(routePath);
}
openIndexViewTab(data);
const openDrawer = (view: any, data: any) => {
let container: Subject<any> = this.$appdrawer.openDrawer(view, tempContext, data);
container.subscribe((result: any) => {
if (!result || !Object.is(result.ret, 'OK')) {
return;
}
if (!xData || !(xData.refresh instanceof Function)) {
return;
}
xData.refresh(result.datas);
});
}
const view: any = {
viewname: 'hromhierarchy-edit-view',
height: 0,
width: 600,
title: this.$t('entities.hromhierarchy.views.editview.title'),
placement: 'DRAWER_RIGHT',
};
openDrawer(view, data);
}
......
......@@ -26,7 +26,7 @@
:context="context"
:isSingleSelect="isGridSingleSelect"
:showBusyIndicator="true"
:isOpenEdit="true"
:isOpenEdit="false"
:gridRowActiveMode="gridRowActiveMode"
@save="onSave.apply(_self, arguments)"
updateAction="Update"
......
import { Subject } from 'rxjs';
import { MPickupViewBase } from '@/studio-core';
import HROrganizationService from '@/service/hrorganization/hrorganization-service';
import HROrganizationAuthService from '@/authservice/hrorganization/hrorganization-auth-service';
import MPickupViewEngine from '@engine/view/mpickup-view-engine';
import HROrganizationUIService from '@/uiservice/hrorganization/hrorganization-ui-service';
/**
* 组织数据多项选择视图视图基类
*
* @export
* @class HROrganizationMPickupViewBase
* @extends {MPickupViewBase}
*/
export class HROrganizationMPickupViewBase extends MPickupViewBase {
/**
* 视图对应应用实体名称
*
* @protected
* @type {string}
* @memberof HROrganizationMPickupViewBase
*/
protected appDeName: string = 'hrorganization';
/**
* 应用实体主键
*
* @protected
* @type {string}
* @memberof HROrganizationMPickupViewBase
*/
protected appDeKey: string = 'organizationid';
/**
* 应用实体主信息
*
* @protected
* @type {string}
* @memberof HROrganizationMPickupViewBase
*/
protected appDeMajor: string = 'organizationname';
/**
* 实体服务对象
*
* @type {HROrganizationService}
* @memberof HROrganizationMPickupViewBase
*/
protected appEntityService: HROrganizationService = new HROrganizationService;
/**
* 实体权限服务对象
*
* @type HROrganizationUIService
* @memberof HROrganizationMPickupViewBase
*/
public appUIService: HROrganizationUIService = new HROrganizationUIService(this.$store);
/**
* 计数器服务对象集合
*
* @protected
* @type {Array<*>}
* @memberof HROrganizationMPickupViewBase
*/
protected counterServiceArray: Array<any> = [];
/**
* 视图模型数据
*
* @protected
* @type {*}
* @memberof HROrganizationMPickupViewBase
*/
protected model: any = {
srfCaption: 'entities.hrorganization.views.mpickupview.caption',
srfTitle: 'entities.hrorganization.views.mpickupview.title',
srfSubTitle: 'entities.hrorganization.views.mpickupview.subtitle',
dataInfo: ''
}
/**
* 容器模型
*
* @protected
* @type {*}
* @memberof HROrganizationMPickupViewBase
*/
protected containerModel: any = {
view_pickupviewpanel: { name: 'pickupviewpanel', type: 'PICKUPVIEWPANEL' },
view_okbtn: { name: 'okbtn', type: 'button', text: '确定', disabled: true },
view_cancelbtn: { name: 'cancelbtn', type: 'button', text: '取消', disabled: false },
view_leftbtn: { name: 'leftbtn', type: 'button', text: '左移', disabled: true },
view_rightbtn: { name: 'rightbtn', type: 'button', text: '右移', disabled: true },
view_allleftbtn: { name: 'allleftbtn', type: 'button', text: '全部左移', disabled: true },
view_allrightbtn: { name: 'allrightbtn', type: 'button', text: '全部右移', disabled: true },
};
/**
* 视图唯一标识
*
* @protected
* @type {string}
* @memberof ViewBase
*/
protected viewtag: string = '816f119be45e16d278809f590fb65029';
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof HROrganizationMPickupViewBase
*/
public engine: MPickupViewEngine = new MPickupViewEngine();
/**
* 引擎初始化
*
* @public
* @memberof HROrganizationMPickupViewBase
*/
public engineInit(): void {
this.engine.init({
view: this,
pickupviewpanel: this.$refs.pickupviewpanel,
keyPSDEField: 'hrorganization',
majorPSDEField: 'organizationname',
isLoadDefault: true,
});
}
/**
* pickupviewpanel 部件 selectionchange 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationMPickupViewBase
*/
public pickupviewpanel_selectionchange($event: any, $event2?: any): void {
this.engine.onCtrlEvent('pickupviewpanel', 'selectionchange', $event);
}
/**
* pickupviewpanel 部件 activated 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationMPickupViewBase
*/
public pickupviewpanel_activated($event: any, $event2?: any): void {
this.engine.onCtrlEvent('pickupviewpanel', 'activated', $event);
}
/**
* pickupviewpanel 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationMPickupViewBase
*/
public pickupviewpanel_load($event: any, $event2?: any): void {
this.engine.onCtrlEvent('pickupviewpanel', 'load', $event);
}
/**
* 添加左侧面板所有数据到右侧
*
* @memberof HROrganizationMPickupView
*/
public onCLickAllRight(): void {
Object.values(this.containerModel).forEach((model: any) => {
if (!Object.is(model.type, 'PICKUPVIEWPANEL')) {
return;
}
if (model.datas.length > 0) {
model.datas.forEach((data: any, index: any) => {
Object.assign(data, { srfmajortext: data['organizationname'] });
})
}
model.datas.forEach((item: any) => {
const index: number = this.viewSelections.findIndex((selection: any) => Object.is(item.srfkey, selection.srfkey));
if (index === -1) {
item._select = false;
this.viewSelections.push(item);
}
});
});
this.selectedData = JSON.stringify(this.viewSelections);
}
}
\ No newline at end of file
<studio-view-style2 viewName="hrorganizationmpickupview" viewTitle="组织数据多项选择视图" class='dempickupview hrorganization-mpickup-view'>
<div class="content-container pickup-view">
<div class="translate-contant">
<div class="center" :style="{width : !isShowButton ? '100%' : ''}">
<view_pickupviewpanel
:viewState="viewState"
:viewparams="JSON.parse(JSON.stringify(viewparams))"
:context="JSON.parse(JSON.stringify(context))"
:isSingleSelect="isSingleSelect"
:selectedData="selectedData"
:isShowButton="isShowButton"
name="pickupviewpanel"
ref='pickupviewpanel'
@selectionchange="pickupviewpanel_selectionchange($event)"
@activated="pickupviewpanel_activated($event)"
@load="pickupviewpanel_load($event)"
@closeview="closeView($event)">
</view_pickupviewpanel>
</div>
<div v-if="isShowButton" class="translate-buttons">
<div class="buttons">
<i-button type="primary" :title="this.containerModel.view_rightbtn.text"
:disabled="this.containerModel.view_rightbtn.disabled"
@click="onCLickRight.apply(_self, arguments)">
<i class="el-icon-arrow-right"></i>
</i-button>
<i-button type="primary" :title="this.containerModel.view_leftbtn.text"
:disabled="this.containerModel.view_leftbtn.disabled"
@click="onCLickLeft.apply(_self, arguments)">
<i class="el-icon-arrow-left"></i>
</i-button>
<i-button type="primary" :title="this.containerModel.view_allrightbtn.text"
@click="onCLickAllRight.apply(_self, arguments)">
<i class="el-icon-d-arrow-right"></i>
</i-button>
<i-button type="primary" :title="this.containerModel.view_allleftbtn.text"
@click="onCLickAllLeft.apply(_self, arguments)">
<i class="el-icon-d-arrow-left"></i>
</i-button>
</div>
</div>
<div v-if="isShowButton" class="right">
<div class="mpicker-select">
<div v-for="(item, index) in viewSelections" :key="index" :class="item._select ? 'select' : ''" @click="selectionsClick(item)" @dblclick="selectionsDBLClick(item)">
<span>{{item.srfmajortext}}</span>
</div>
</div>
</div>
</div>
</div>
<template slot="footer">
<div v-if="isShowButton" :style="{ textAlign: 'right' }">
<i-button type="primary" :disabled="this.viewSelections.length > 0 ? false : true" @click="onClickOk.apply(_self, arguments)">{{this.containerModel.view_okbtn.text}}</i-button>
&nbsp;&nbsp;
<i-button @click="onClickCancel.apply(_self, arguments)">{{this.containerModel.view_cancelbtn.text}}</i-button>
</div>
</template>
</studio-view-style2>
\ No newline at end of file
<template src="./hrorganization-mpickup-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { HROrganizationMPickupViewBase } from './hrorganization-mpickup-view-base';
import view_pickupviewpanel from '@widgets/hrorganization/mpickup-viewpickupviewpanel-pickupviewpanel/mpickup-viewpickupviewpanel-pickupviewpanel.vue';
/**
* 组织数据多项选择视图视图
*
* @export
* @class HROrganizationMPickupView
* @extends {HROrganizationMPickupViewBase}
*/
@Component({
components: {
view_pickupviewpanel,
}
})
@VueLifeCycleProcessing()
export default class HROrganizationMPickupView extends HROrganizationMPickupViewBase { }
</script>
import { Subject } from 'rxjs';
import { PickupGridViewBase } from '@/studio-core';
import HROrganizationService from '@/service/hrorganization/hrorganization-service';
import HROrganizationAuthService from '@/authservice/hrorganization/hrorganization-auth-service';
import PickupGridViewEngine from '@engine/view/pickup-grid-view-engine';
import HROrganizationUIService from '@/uiservice/hrorganization/hrorganization-ui-service';
/**
* 组织选择表格视图视图基类
*
* @export
* @class HROrganizationPickupGridViewBase
* @extends {PickupGridViewBase}
*/
export class HROrganizationPickupGridViewBase extends PickupGridViewBase {
/**
* 视图对应应用实体名称
*
* @protected
* @type {string}
* @memberof HROrganizationPickupGridViewBase
*/
protected appDeName: string = 'hrorganization';
/**
* 应用实体主键
*
* @protected
* @type {string}
* @memberof HROrganizationPickupGridViewBase
*/
protected appDeKey: string = 'organizationid';
/**
* 应用实体主信息
*
* @protected
* @type {string}
* @memberof HROrganizationPickupGridViewBase
*/
protected appDeMajor: string = 'organizationname';
/**
* 实体服务对象
*
* @type {HROrganizationService}
* @memberof HROrganizationPickupGridViewBase
*/
protected appEntityService: HROrganizationService = new HROrganizationService;
/**
* 实体权限服务对象
*
* @type HROrganizationUIService
* @memberof HROrganizationPickupGridViewBase
*/
public appUIService: HROrganizationUIService = new HROrganizationUIService(this.$store);
/**
* 计数器服务对象集合
*
* @protected
* @type {Array<*>}
* @memberof HROrganizationPickupGridViewBase
*/
protected counterServiceArray: Array<any> = [];
/**
* 视图模型数据
*
* @protected
* @type {*}
* @memberof HROrganizationPickupGridViewBase
*/
protected model: any = {
srfCaption: 'entities.hrorganization.views.pickupgridview.caption',
srfTitle: 'entities.hrorganization.views.pickupgridview.title',
srfSubTitle: 'entities.hrorganization.views.pickupgridview.subtitle',
dataInfo: ''
}
/**
* 容器模型
*
* @protected
* @type {*}
* @memberof HROrganizationPickupGridViewBase
*/
protected containerModel: any = {
view_grid: { name: 'grid', type: 'GRID' },
view_searchform: { name: 'searchform', type: 'SEARCHFORM' },
};
/**
* 视图唯一标识
*
* @protected
* @type {string}
* @memberof ViewBase
*/
protected viewtag: string = '07e98f33b8d972b70860e615aaa10b89';
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof HROrganizationPickupGridViewBase
*/
public engine: PickupGridViewEngine = new PickupGridViewEngine();
/**
* 引擎初始化
*
* @public
* @memberof HROrganizationPickupGridViewBase
*/
public engineInit(): void {
this.engine.init({
view: this,
grid: this.$refs.grid,
searchform: this.$refs.searchform,
keyPSDEField: 'hrorganization',
majorPSDEField: 'organizationname',
isLoadDefault: true,
});
}
/**
* grid 部件 selectionchange 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public grid_selectionchange($event: any, $event2?: any): void {
this.engine.onCtrlEvent('grid', 'selectionchange', $event);
}
/**
* grid 部件 beforeload 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public grid_beforeload($event: any, $event2?: any): void {
this.engine.onCtrlEvent('grid', 'beforeload', $event);
}
/**
* grid 部件 rowdblclick 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public grid_rowdblclick($event: any, $event2?: any): void {
this.engine.onCtrlEvent('grid', 'rowdblclick', $event);
}
/**
* grid 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public grid_load($event: any, $event2?: any): void {
this.engine.onCtrlEvent('grid', 'load', $event);
}
/**
* searchform 部件 save 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public searchform_save($event: any, $event2?: any): void {
this.engine.onCtrlEvent('searchform', 'save', $event);
}
/**
* searchform 部件 search 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public searchform_search($event: any, $event2?: any): void {
this.engine.onCtrlEvent('searchform', 'search', $event);
}
/**
* searchform 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupGridViewBase
*/
public searchform_load($event: any, $event2?: any): void {
this.engine.onCtrlEvent('searchform', 'load', $event);
}
/**
* 是否展开搜索表单
*
* @protected
* @type {boolean}
* @memberof HROrganizationPickupGridViewBase
*/
protected isExpandSearchForm: boolean = true;
}
\ No newline at end of file
<studio-view-style2 viewName="hrorganizationpickupgridview" viewTitle="组织选择表格视图" class='depickupgridview hrorganization-pickup-grid-view'>
<template slot="searchForm">
<view_searchform
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:showBusyIndicator="true"
v-show="isExpandSearchForm"
loaddraftAction="FilterGetDraft"
loadAction="FilterGet"
name="searchform"
ref='searchform'
@save="searchform_save($event)"
@search="searchform_search($event)"
@load="searchform_load($event)"
@closeview="closeView($event)">
</view_searchform>
</template>
<view_grid
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:isSingleSelect="isGridSingleSelect"
:selectedData="selectedData"
:showBusyIndicator="true"
updateAction=""
removeAction="Remove"
loaddraftAction=""
loadAction=""
createAction=""
fetchAction="FetchDefault"
name="grid"
ref='grid'
@selectionchange="grid_selectionchange($event)"
@beforeload="grid_beforeload($event)"
@rowdblclick="grid_rowdblclick($event)"
@load="grid_load($event)"
@closeview="closeView($event)">
</view_grid>
</studio-view-style2>
\ No newline at end of file
<template src="./hrorganization-pickup-grid-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { HROrganizationPickupGridViewBase } from './hrorganization-pickup-grid-view-base';
import view_grid from '@widgets/hrorganization/main-grid/main-grid.vue';
import view_searchform from '@widgets/hrorganization/default-searchform/default-searchform.vue';
/**
* 组织选择表格视图视图
*
* @export
* @class HROrganizationPickupGridView
* @extends {HROrganizationPickupGridViewBase}
*/
@Component({
components: {
view_grid,
view_searchform,
}
})
@VueLifeCycleProcessing()
export default class HROrganizationPickupGridView extends HROrganizationPickupGridViewBase { }
</script>
import { Subject } from 'rxjs';
import { PickupViewBase } from '@/studio-core';
import HROrganizationService from '@/service/hrorganization/hrorganization-service';
import HROrganizationAuthService from '@/authservice/hrorganization/hrorganization-auth-service';
import PickupViewEngine from '@engine/view/pickup-view-engine';
import HROrganizationUIService from '@/uiservice/hrorganization/hrorganization-ui-service';
/**
* 组织数据选择视图视图基类
*
* @export
* @class HROrganizationPickupViewBase
* @extends {PickupViewBase}
*/
export class HROrganizationPickupViewBase extends PickupViewBase {
/**
* 视图对应应用实体名称
*
* @protected
* @type {string}
* @memberof HROrganizationPickupViewBase
*/
protected appDeName: string = 'hrorganization';
/**
* 应用实体主键
*
* @protected
* @type {string}
* @memberof HROrganizationPickupViewBase
*/
protected appDeKey: string = 'organizationid';
/**
* 应用实体主信息
*
* @protected
* @type {string}
* @memberof HROrganizationPickupViewBase
*/
protected appDeMajor: string = 'organizationname';
/**
* 实体服务对象
*
* @type {HROrganizationService}
* @memberof HROrganizationPickupViewBase
*/
protected appEntityService: HROrganizationService = new HROrganizationService;
/**
* 实体权限服务对象
*
* @type HROrganizationUIService
* @memberof HROrganizationPickupViewBase
*/
public appUIService: HROrganizationUIService = new HROrganizationUIService(this.$store);
/**
* 计数器服务对象集合
*
* @protected
* @type {Array<*>}
* @memberof HROrganizationPickupViewBase
*/
protected counterServiceArray: Array<any> = [];
/**
* 视图模型数据
*
* @protected
* @type {*}
* @memberof HROrganizationPickupViewBase
*/
protected model: any = {
srfCaption: 'entities.hrorganization.views.pickupview.caption',
srfTitle: 'entities.hrorganization.views.pickupview.title',
srfSubTitle: 'entities.hrorganization.views.pickupview.subtitle',
dataInfo: ''
}
/**
* 容器模型
*
* @protected
* @type {*}
* @memberof HROrganizationPickupViewBase
*/
protected containerModel: any = {
view_pickupviewpanel: { name: 'pickupviewpanel', type: 'PICKUPVIEWPANEL' },
view_okbtn: { name: 'okbtn', type: 'button', text: '确定', disabled: true },
view_cancelbtn: { name: 'cancelbtn', type: 'button', text: '取消', disabled: false },
view_leftbtn: { name: 'leftbtn', type: 'button', text: '左移', disabled: true },
view_rightbtn: { name: 'rightbtn', type: 'button', text: '右移', disabled: true },
view_allleftbtn: { name: 'allleftbtn', type: 'button', text: '全部左移', disabled: true },
view_allrightbtn: { name: 'allrightbtn', type: 'button', text: '全部右移', disabled: true },
};
/**
* 视图唯一标识
*
* @protected
* @type {string}
* @memberof ViewBase
*/
protected viewtag: string = 'e7ba37699bd458dc8dd5c02abac8dadd';
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof HROrganizationPickupViewBase
*/
public engine: PickupViewEngine = new PickupViewEngine();
/**
* 引擎初始化
*
* @public
* @memberof HROrganizationPickupViewBase
*/
public engineInit(): void {
this.engine.init({
view: this,
pickupviewpanel: this.$refs.pickupviewpanel,
keyPSDEField: 'hrorganization',
majorPSDEField: 'organizationname',
isLoadDefault: true,
});
}
/**
* pickupviewpanel 部件 selectionchange 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupViewBase
*/
public pickupviewpanel_selectionchange($event: any, $event2?: any): void {
this.engine.onCtrlEvent('pickupviewpanel', 'selectionchange', $event);
}
/**
* pickupviewpanel 部件 activated 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupViewBase
*/
public pickupviewpanel_activated($event: any, $event2?: any): void {
this.engine.onCtrlEvent('pickupviewpanel', 'activated', $event);
}
/**
* pickupviewpanel 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HROrganizationPickupViewBase
*/
public pickupviewpanel_load($event: any, $event2?: any): void {
this.engine.onCtrlEvent('pickupviewpanel', 'load', $event);
}
}
\ No newline at end of file
<studio-view-style2 viewName="hrorganizationpickupview" viewTitle="组织数据选择视图" class='depickupview hrorganization-pickup-view'>
<div class="content-container pickup-view">
<view_pickupviewpanel
:viewState="viewState"
:viewparams="JSON.parse(JSON.stringify(viewparams))"
:context="JSON.parse(JSON.stringify(context))"
:isSingleSelect="isSingleSelect"
:selectedData="selectedData"
:isShowButton="isShowButton"
name="pickupviewpanel"
ref='pickupviewpanel'
@selectionchange="pickupviewpanel_selectionchange($event)"
@activated="pickupviewpanel_activated($event)"
@load="pickupviewpanel_load($event)"
@closeview="closeView($event)">
</view_pickupviewpanel>
</div>
<template slot="footer">
<div v-if="isShowButton" :style="{ textAlign: 'right' }">
<i-button type="primary" :disabled="this.viewSelections.length > 0 ? false : true" @click="onClickOk.apply(_self, arguments)">{{this.containerModel.view_okbtn.text}}</i-button>
&nbsp;&nbsp;
<i-button @click="onClickCancel.apply(_self, arguments)">{{this.containerModel.view_cancelbtn.text}}</i-button>
</div>
</template>
</studio-view-style2>
\ No newline at end of file
<template src="./hrorganization-pickup-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { HROrganizationPickupViewBase } from './hrorganization-pickup-view-base';
import view_pickupviewpanel from '@widgets/hrorganization/pickup-viewpickupviewpanel-pickupviewpanel/pickup-viewpickupviewpanel-pickupviewpanel.vue';
/**
* 组织数据选择视图视图
*
* @export
* @class HROrganizationPickupView
* @extends {HROrganizationPickupViewBase}
*/
@Component({
components: {
view_pickupviewpanel,
}
})
@VueLifeCycleProcessing()
export default class HROrganizationPickupView extends HROrganizationPickupViewBase { }
</script>
export const PageComponents = {
install(Vue: any, opt: any) {
Vue.component('hroperation-unit-edit-view', () => import('@pages/base/hroperation-unit-edit-view/hroperation-unit-edit-view.vue'));
Vue.component('hrorganization-mpickup-view', () => import('@pages/base/hrorganization-mpickup-view/hrorganization-mpickup-view.vue'));
Vue.component('hrorg-address-edit-view', () => import('@pages/base/hrorg-address-edit-view/hrorg-address-edit-view.vue'));
Vue.component('hrorg-contact-grid-view', () => import('@pages/base/hrorg-contact-grid-view/hrorg-contact-grid-view.vue'));
Vue.component('hromhierarchy-cat-grid-view', () => import('@pages/base/hromhierarchy-cat-grid-view/hromhierarchy-cat-grid-view.vue'));
......@@ -16,6 +17,7 @@ export const PageComponents = {
Vue.component('hromhierarchy-grid-view', () => import('@pages/base/hromhierarchy-grid-view/hromhierarchy-grid-view.vue'));
Vue.component('hroperation-unit-v-002', () => import('@pages/base/hroperation-unit-v-002/hroperation-unit-v-002.vue'));
Vue.component('hrlegal-edit-view', () => import('@pages/base/hrlegal-edit-view/hrlegal-edit-view.vue'));
Vue.component('hrorganization-pickup-view', () => import('@pages/base/hrorganization-pickup-view/hrorganization-pickup-view.vue'));
Vue.component('hromhierarchy-edit-view', () => import('@pages/base/hromhierarchy-edit-view/hromhierarchy-edit-view.vue'));
Vue.component('hrorganization-grid-view', () => import('@pages/base/hrorganization-grid-view/hrorganization-grid-view.vue'));
Vue.component('hromhierarchy-cat-edit-view', () => import('@pages/base/hromhierarchy-cat-edit-view/hromhierarchy-cat-edit-view.vue'));
......@@ -28,6 +30,7 @@ export const PageComponents = {
Vue.component('hrorg-address-grid-view', () => import('@pages/base/hrorg-address-grid-view/hrorg-address-grid-view.vue'));
Vue.component('hremployee-edit-view', () => import('@pages/human-resource/hremployee-edit-view/hremployee-edit-view.vue'));
Vue.component('hromhierarchy-pickup-grid-view', () => import('@pages/base/hromhierarchy-pickup-grid-view/hromhierarchy-pickup-grid-view.vue'));
Vue.component('hrorganization-pickup-grid-view', () => import('@pages/base/hrorganization-pickup-grid-view/hrorganization-pickup-grid-view.vue'));
Vue.component('hrlegal-dashboard-view', () => import('@pages/base/hrlegal-dashboard-view/hrlegal-dashboard-view.vue'));
Vue.component('hrlegal-v-001', () => import('@pages/base/hrlegal-v-001/hrlegal-v-001.vue'));
}
......
......@@ -57,6 +57,20 @@ const router = new Router({
},
component: () => import('@pages/base/hroperation-unit-edit-view/hroperation-unit-edit-view.vue'),
},
{
path: 'hrorganizations/:hrorganization?/mpickupview/:mpickupview?',
meta: {
caption: 'entities.hrorganization.views.mpickupview.title',
info:'',
parameters: [
{ pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hrorganizations', parameterName: 'hrorganization' },
{ pathName: 'mpickupview', parameterName: 'mpickupview' },
],
requireAuth: true,
},
component: () => import('@pages/base/hrorganization-mpickup-view/hrorganization-mpickup-view.vue'),
},
{
path: 'hroperationunits/:hroperationunit?/hrorgaddresses/:hrorgaddress?/editview/:editview?',
meta: {
......@@ -417,6 +431,20 @@ const router = new Router({
},
component: () => import('@pages/base/hrlegal-edit-view/hrlegal-edit-view.vue'),
},
{
path: 'hrorganizations/:hrorganization?/pickupview/:pickupview?',
meta: {
caption: 'entities.hrorganization.views.pickupview.title',
info:'',
parameters: [
{ pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hrorganizations', parameterName: 'hrorganization' },
{ pathName: 'pickupview', parameterName: 'pickupview' },
],
requireAuth: true,
},
component: () => import('@pages/base/hrorganization-pickup-view/hrorganization-pickup-view.vue'),
},
{
path: 'hromhierarchycats/:hromhierarchycat?/hromhierarchies/:hromhierarchy?/editview/:editview?',
meta: {
......@@ -690,6 +718,20 @@ const router = new Router({
},
component: () => import('@pages/base/hromhierarchy-pickup-grid-view/hromhierarchy-pickup-grid-view.vue'),
},
{
path: 'hrorganizations/:hrorganization?/pickupgridview/:pickupgridview?',
meta: {
caption: 'entities.hrorganization.views.pickupgridview.title',
info:'',
parameters: [
{ pathName: 'pim', parameterName: 'pim' },
{ pathName: 'hrorganizations', parameterName: 'hrorganization' },
{ pathName: 'pickupgridview', parameterName: 'pickupgridview' },
],
requireAuth: true,
},
component: () => import('@pages/base/hrorganization-pickup-grid-view/hrorganization-pickup-grid-view.vue'),
},
{
path: 'hrlegals/:hrlegal?/dashboardview/:dashboardview?',
meta: {
......
......@@ -12,6 +12,15 @@ export const viewstate: any = {
refviews: [
],
},
{
viewtag: '07e98f33b8d972b70860e615aaa10b89',
viewmodule: 'Base',
viewname: 'HROrganizationPickupGridView',
viewaction: '',
viewdatachange: false,
refviews: [
],
},
{
viewtag: '0d8ac739134947cc5f6545d4041024de',
viewmodule: 'Base',
......@@ -64,6 +73,7 @@ export const viewstate: any = {
refviews: [
'7933350eca0f8dbcb5402928a860c4ec',
'4a61d63445d504cab11cf5f45536b314',
'816f119be45e16d278809f590fb65029',
],
},
{
......@@ -149,6 +159,8 @@ export const viewstate: any = {
viewaction: '',
viewdatachange: false,
refviews: [
'7933350eca0f8dbcb5402928a860c4ec',
'e7ba37699bd458dc8dd5c02abac8dadd',
],
},
{
......@@ -190,6 +202,16 @@ export const viewstate: any = {
refviews: [
],
},
{
viewtag: '816f119be45e16d278809f590fb65029',
viewmodule: 'Base',
viewname: 'HROrganizationMPickupView',
viewaction: '',
viewdatachange: false,
refviews: [
'07e98f33b8d972b70860e615aaa10b89',
],
},
{
viewtag: '90f2bd2f58c482b25a1e1db0f8e4ca26',
viewmodule: 'Base',
......@@ -307,6 +329,16 @@ export const viewstate: any = {
refviews: [
],
},
{
viewtag: 'e7ba37699bd458dc8dd5c02abac8dadd',
viewmodule: 'Base',
viewname: 'HROrganizationPickupView',
viewaction: '',
viewdatachange: false,
refviews: [
'07e98f33b8d972b70860e615aaa10b89',
],
},
{
viewtag: 'f6a6d0da81100b5a69aba1b9b967b6ab',
viewmodule: 'Base',
......
......@@ -89,8 +89,11 @@ export default class HROrganizationUIServiceBase extends UIService {
* @memberof HROrganizationUIServiceBase
*/
public initViewMap(){
this.allViewMap.set(':',{viewname:'pickupgridview',srfappde:'hrorganizations'});
this.allViewMap.set('MDATAVIEW:',{viewname:'gridview',srfappde:'hrorganizations'});
this.allViewMap.set('MPICKUPVIEW:',{viewname:'mpickupview',srfappde:'hrorganizations'});
this.allViewMap.set('EDITVIEW:',{viewname:'editview',srfappde:'hrorganizations'});
this.allViewMap.set('PICKUPVIEW:',{viewname:'pickupview',srfappde:'hrorganizations'});
}
/**
......
......@@ -73,6 +73,11 @@ export class MainEditFormBase extends EditFormControlBase {
srfuf: null,
srfdeid: null,
srfsourcekey: null,
organizationname: null,
pomhierarchyname: null,
showorder: null,
pomhierarchyid: null,
organizationid: null,
omhierarchyid: null,
hromhierarchy:null,
};
......@@ -102,14 +107,10 @@ export class MainEditFormBase extends EditFormControlBase {
* @memberof MainEditFormBase
*/
public detailsModel: any = {
group1: new FormGroupPanelModel({ caption: '组织层次结构基本信息', detailType: 'GROUPPANEL', name: 'group1', visible: true, isShowCaption: true, form: this, showMoreMode: 0, uiActionGroup: { caption: '', langbase: 'entities.hromhierarchy.main_form', extractMode: 'ITEM', details: [] } }),
group1: new FormGroupPanelModel({ caption: '组织层次结构', detailType: 'GROUPPANEL', name: 'group1', visible: true, isShowCaption: false, form: this, showMoreMode: 0, uiActionGroup: { caption: '', langbase: 'entities.hromhierarchy.main_form', extractMode: 'ITEM', details: [] } }),
formpage1: new FormPageModel({ caption: '基本信息', detailType: 'FORMPAGE', name: 'formpage1', visible: true, isShowCaption: true, form: this, showMoreMode: 0 }),
group2: new FormGroupPanelModel({ caption: '操作信息', detailType: 'GROUPPANEL', name: 'group2', visible: true, isShowCaption: true, form: this, showMoreMode: 0, uiActionGroup: { caption: '', langbase: 'entities.hromhierarchy.main_form', extractMode: 'ITEM', details: [] } }),
formpage2: new FormPageModel({ caption: '其它', detailType: 'FORMPAGE', name: 'formpage2', visible: true, isShowCaption: true, form: this, showMoreMode: 0 }),
srfupdatedate: new FormItemModel({ caption: '更新时间', detailType: 'FORMITEM', name: 'srfupdatedate', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
srforikey: new FormItemModel({ caption: '', detailType: 'FORMITEM', name: 'srforikey', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
......@@ -126,8 +127,17 @@ export class MainEditFormBase extends EditFormControlBase {
srfsourcekey: new FormItemModel({ caption: '', detailType: 'FORMITEM', name: 'srfsourcekey', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
organizationname: new FormItemModel({ caption: '组织名称', detailType: 'FORMITEM', name: 'organizationname', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
pomhierarchyname: new FormItemModel({ caption: '上级组织', detailType: 'FORMITEM', name: 'pomhierarchyname', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
showorder: new FormItemModel({ caption: '排序号', detailType: 'FORMITEM', name: 'showorder', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
pomhierarchyid: new FormItemModel({ caption: '上级层次结构标识', detailType: 'FORMITEM', name: 'pomhierarchyid', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
organizationid: new FormItemModel({ caption: '组织', detailType: 'FORMITEM', name: 'organizationid', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
omhierarchyid: new FormItemModel({ caption: '组织层次结构标识', detailType: 'FORMITEM', name: 'omhierarchyid', visible: true, isShowCaption: true, form: this, showMoreMode: 0, disabled: false, enableCond: 3 }),
form: new FormTabPanelModel({ caption: 'form', detailType: 'TABPANEL', name: 'form', visible: true, isShowCaption: true, form: this, tabPages: [{ name: 'formpage1', index: 0, visible: true }, { name: 'formpage2', index: 1, visible: true }] }),
};
}
\ No newline at end of file
......@@ -55,6 +55,31 @@ export default class MainModel {
{
name: 'srfsourcekey',
},
{
name: 'organizationname',
prop: 'organizationname',
dataType: 'PICKUPTEXT',
},
{
name: 'pomhierarchyname',
prop: 'pomhierarchyname',
dataType: 'PICKUPTEXT',
},
{
name: 'showorder',
prop: 'showorder',
dataType: 'BIGINT',
},
{
name: 'pomhierarchyid',
prop: 'pomhierarchyid',
dataType: 'PICKUP',
},
{
name: 'organizationid',
prop: 'organizationid',
dataType: 'PICKUP',
},
{
name: 'omhierarchyid',
prop: 'omhierarchyid',
......
......@@ -2,6 +2,7 @@ import { Http,Util,Errorlog } from '@/utils';
import ControlService from '@/widgets/control-service';
import HROMHierarchyService from '@/service/hromhierarchy/hromhierarchy-service';
import MainModel from './main-form-model';
import HROrganizationService from '@/service/hrorganization/hrorganization-service';
/**
......@@ -41,6 +42,14 @@ export default class MainService extends ControlService {
this.model = new MainModel();
}
/**
* 组织服务对象
*
* @type {HROrganizationService}
* @memberof MainService
*/
public hrorganizationService: HROrganizationService = new HROrganizationService();
/**
* 处理数据
*
......@@ -82,6 +91,12 @@ export default class MainService extends ControlService {
public getItems(serviceName: string, interfaceName: string, context: any = {}, data: any, isloading?: boolean): Promise<any[]> {
data.page = data.page ? data.page : 0;
data.size = data.size ? data.size : 1000;
if (Object.is(serviceName, 'HROrganizationService') && Object.is(interfaceName, 'FetchDefault')) {
return this.doItems(this.hrorganizationService.FetchDefault(JSON.parse(JSON.stringify(context)),data, isloading), 'organizationid', 'hrorganization');
}
if (Object.is(serviceName, 'HROMHierarchyService') && Object.is(interfaceName, 'FetchDefault')) {
return this.doItems(this.appEntityService.FetchDefault(JSON.parse(JSON.stringify(context)), data, isloading), 'omhierarchyid', 'hromhierarchy');
}
return Promise.reject([])
}
......
<i-form :model="this.data" class='app-form' ref='form' id='hromhierarchy_main' style="">
<input style="display:none;" />
<row >
<tabs :animated="false" size="small" name='main' :value="detailsModel.form.activiedPage"
@on-click="detailsModel.form.clickPage($event)">
<tab-pane v-show="detailsModel.formpage1.visible" name='formpage1' :index="0" tab='main' class=''
:label="(h) =>{
return h('span',{
class:'caption'
},[
$t('entities.hromhierarchy.main_form.details.formpage1')
])
}">
<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='' :uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchy.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false" >
<app-form-group :model="detailsModel.group1" layoutType="TABLE_24COL" titleStyle="" class='' :uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchy.main_form.details.group1')" :isShowCaption="false" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false" >
<app-form-group-data-panel slot="dataInfoPanel" :model="detailsModel.group1" :data="data" :context="context" :viewparams="viewparams"/>
<row>
</row>
</app-form-group>
<i-col class="form-layout-container" v-show="detailsModel.organizationname.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='organizationname' :itemRules="this.rules.organizationname" class='' :caption="$t('entities.hromhierarchy.main_form.details.organizationname')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.organizationname.error" :isEmptyCaption="false" labelPos="LEFT">
<app-picker
:formState="formState"
:data="data"
:context="context"
:viewparams="viewparams"
:localContext ='{ }'
:localParam ='{ }'
:disabled="detailsModel.organizationname.disabled"
name='organizationname'
deMajorField='organizationname'
deKeyField='hrorganization'
:service="service"
:acParams="{ serviceName: 'HROrganizationService', interfaceName: 'FetchDefault'}"
valueitem='organizationid'
:value="data.organizationname"
:pickupView="{ viewname: 'hrorganization-pickup-view', title: $t('entities.hrorganization.views.pickupview.title'), deResParameters: [], parameters: [{ pathName: 'hrorganizations', parameterName: 'hrorganization' }, { pathName: 'pickupview', parameterName: 'pickupview' } ], placement:'' }"
style=""
@formitemvaluechange="onFormItemValueChange($event)">
</app-picker>
</app-form-item>
</i-col>
<i-col class="form-layout-container" v-show="detailsModel.pomhierarchyname.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='pomhierarchyname' :itemRules="this.rules.pomhierarchyname" class='' :caption="$t('entities.hromhierarchy.main_form.details.pomhierarchyname')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.pomhierarchyname.error" :isEmptyCaption="false" labelPos="LEFT">
<app-picker
:formState="formState"
:data="data"
:context="context"
:viewparams="viewparams"
:localContext ='{ }'
:localParam ='{ }'
:disabled="detailsModel.pomhierarchyname.disabled"
name='pomhierarchyname'
deMajorField='organizationname'
deKeyField='hromhierarchy'
:service="service"
:acParams="{ serviceName: 'HROMHierarchyService', interfaceName: 'FetchDefault'}"
valueitem='pomhierarchyid'
:value="data.pomhierarchyname"
:pickupView="{ viewname: 'hromhierarchy-pickup-view', title: $t('entities.hromhierarchy.views.pickupview.title'), deResParameters: [{ pathName: 'hromhierarchycats', parameterName: 'hromhierarchycat' }, ], parameters: [{ pathName: 'hromhierarchies', parameterName: 'hromhierarchy' }, { pathName: 'pickupview', parameterName: 'pickupview' } ], placement:'' }"
style=""
@formitemvaluechange="onFormItemValueChange($event)">
</app-picker>
</app-form-item>
</tab-pane>
<tab-pane v-show="detailsModel.formpage2.visible" name='formpage2' :index="1" tab='main' class=''
:label="(h) =>{
return h('span',{
class:'caption'
},[
$t('entities.hromhierarchy.main_form.details.formpage2')
])
}">
<i-col class="form-layout-container" v-show="detailsModel.group2.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-group :model="detailsModel.group2" layoutType="TABLE_24COL" titleStyle="" class='' :uiActionGroup="detailsModel.group2.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.hromhierarchy.main_form.details.group2')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false" >
<app-form-group-data-panel slot="dataInfoPanel" :model="detailsModel.group2" :data="data" :context="context" :viewparams="viewparams"/>
<row>
</i-col>
<i-col class="form-layout-container" v-show="detailsModel.showorder.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='showorder' :itemRules="this.rules.showorder" class='' :caption="$t('entities.hromhierarchy.main_form.details.showorder')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.showorder.error" :isEmptyCaption="false" labelPos="LEFT">
<input-box
v-model="data.showorder"
@enter="onEnter($event)"
unit=""
:disabled="detailsModel.showorder.disabled"
type='number'
style="">
</input-box>
</app-form-item>
</i-col>
</row>
</app-form-group>
</i-col>
</tab-pane>
</tabs>
</row>
</i-form>
\ No newline at end of file
import { Prop, Provide, Emit, Model } from 'vue-property-decorator';
import { Subject, Subscription } from 'rxjs';
import { Watch, MainControlBase } from '@/studio-core';
import HROrganizationService from '@/service/hrorganization/hrorganization-service';
import MPickupViewpickupviewpanelService from './mpickup-viewpickupviewpanel-pickupviewpanel-service';
import HROrganizationUIService from '@/uiservice/hrorganization/hrorganization-ui-service';
import MPickupViewpickupviewpanelModel from './mpickup-viewpickupviewpanel-pickupviewpanel-model';
/**
* pickupviewpanel部件基类
*
* @export
* @class MainControlBase
* @extends {MPickupViewpickupviewpanelPickupviewpanelBase}
*/
export class MPickupViewpickupviewpanelPickupviewpanelBase extends MainControlBase {
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof MPickupViewpickupviewpanelPickupviewpanelBase
*/
protected controlType: string = 'PICKUPVIEWPANEL';
/**
* 建构部件服务对象
*
* @type {MPickupViewpickupviewpanelService}
* @memberof MPickupViewpickupviewpanelPickupviewpanelBase
*/
public service: MPickupViewpickupviewpanelService = new MPickupViewpickupviewpanelService({ $store: this.$store });
/**
* 实体服务对象
*
* @type {HROrganizationService}
* @memberof MPickupViewpickupviewpanelPickupviewpanelBase
*/
public appEntityService: HROrganizationService = new HROrganizationService({ $store: this.$store });
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof MPickupViewpickupviewpanelPickupviewpanelBase
*/
protected appDeName: string = 'hrorganization';
/**
* 选中数据字符串
*
* @type {string}
* @memberof MPickupViewpickupviewpanel
*/
@Prop() public selectedData?: string;
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof MPickupViewpickupviewpanel
*/
public getDatas(): any[] {
return [];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof MPickupViewpickupviewpanel
*/
public getData(): any {
return {};
}
/**
* 视图名称
*
* @type {*}
* @memberof MPickupViewpickupviewpanel
*/
public view: any = {
viewname: 'hrorganization-pickup-grid-view',
data: {},
}
/**
* 局部上下文
*
* @type {*}
* @memberof MPickupViewpickupviewpanel
*/
public localContext: any = null;
/**
* 局部视图参数
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public localViewParam: any = null;
/**
* 视图数据
*
* @type {*}
* @memberof MPickupViewpickupviewpanel
*/
public viewdata: string = JSON.stringify(this.context);
/**
* 视图参数
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public viewparam: string = JSON.stringify(this.viewparams);
/**
* 是否显示按钮
*
* @type {boolean}
* @memberof MPickupViewpickupviewpanel
*/
@Prop({default: true}) public isShowButton!: boolean;
/**
* 是否单选
*
* @type {boolean}
* @memberof MPickupViewpickupviewpanel
*/
@Prop() public isSingleSelect?: boolean;
/**
* 初始化完成
*
* @type {boolean}
* @memberof MPickupViewpickupviewpanel
*/
public inited: boolean = false;
/**
* 视图数据变化
*
* @param {*} $event
* @memberof MPickupViewpickupviewpanel
*/
public onViewDatasChange($event: any): void {
if($event.length>0){
$event.forEach((item:any,index:any) => {
let srfmajortext = item['organizationname'];
if(srfmajortext){
Object.assign($event[index],{srfmajortext: srfmajortext});
}
});
}
this.$emit('selectionchange', $event);
}
/**
* 视图数据被激活
*
* @param {*} $event
* @memberof MPickupViewpickupviewpanel
*/
public viewDatasActivated($event: any): void {
this.$emit('activated', $event);
}
/**
* 视图加载完成
*
* @param {*} $event
* @memberof MPickupViewpickupviewpanel
*/
public onViewLoad($event: any): void {
this.$emit('load', $event);
}
/**
* vue 生命周期
*
* @memberof MPickupViewpickupviewpanel
*/
public created() {
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof MPickupViewpickupviewpanel
*/
public afterCreated(){
this.initNavParam();
if (this.viewState) {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
if (Object.is('load', action)) {
this.viewdata = JSON.stringify(this.context);
this.viewparam = JSON.stringify(Object.assign(data, this.viewparams));
this.inited = true;
}
});
}
}
/**
* 初始化导航参数
*
* @memberof MPickupViewpickupviewpanel
*/
public initNavParam(){
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);
}
/**
* vue 生命周期
*
* @memberof MPickupViewpickupviewpanel
*/
public destroyed() {
this.afterDestroy();
}
/**
* 执行destroyed后的逻辑
*
* @memberof MPickupViewpickupviewpanel
*/
public afterDestroy() {
if (this.viewStateEvent) {
this.viewStateEvent.unsubscribe();
}
}
}
\ No newline at end of file
/**
* MPickupViewpickupviewpanel 部件模型
*
* @export
* @class MPickupViewpickupviewpanelModel
*/
export default class MPickupViewpickupviewpanelModel {
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof MPickupViewpickupviewpanelModel
*/
public getDataItems(): any[] {
return [
{
name: 'updateman',
},
{
name: 'updatedate',
},
{
name: 'createman',
},
{
name: 'organizationname',
},
{
name: 'createdate',
},
{
name: 'hrorganization',
prop: 'organizationid',
},
{
name: 'organizationtype',
},
{
name: 'shortname',
},
{
name: 'orgcode',
},
{
name: 'orglevel',
},
{
name: 'showorder',
},
{
name: 'operationunittype',
},
{
name: 'memo',
},
]
}
}
\ No newline at end of file
import { Http } from '@/utils';
import ControlService from '@/widgets/control-service';
/**
* MPickupViewpickupviewpanel 部件服务对象
*
* @export
* @class MPickupViewpickupviewpanelService
*/
export default class MPickupViewpickupviewpanelService extends ControlService {
}
\ No newline at end of file
<div class='pickupviewpanel'>
<component
v-if="inited && view.viewname && !Object.is(view.viewname, '')"
:is="view.viewname"
class="viewcontainer3"
:viewdata="viewdata"
:viewparam="viewparam"
:viewDefaultUsage="false"
:isSingleSelect="isSingleSelect"
:selectedData="selectedData"
:isShowButton="isShowButton"
@viewdataschange="onViewDatasChange.apply(_self, arguments)"
@viewdatasactivated="viewDatasActivated.apply(_self, arguments)"
@viewload="onViewLoad.apply(_self, arguments)">
</component>
</div>
\ No newline at end of file
<template src="./mpickup-viewpickupviewpanel-pickupviewpanel.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { MPickupViewpickupviewpanelPickupviewpanelBase } from './mpickup-viewpickupviewpanel-pickupviewpanel-base';
/**
* pickupviewpanel部件
*
* @export
* @class MPickupViewpickupviewpanelPickupviewpanel
* @extends {MPickupViewpickupviewpanelPickupviewpanelBase}
*/
@Component({
components: {
}
})
@VueLifeCycleProcessing()
export default class MPickupViewpickupviewpanelPickupviewpanel extends MPickupViewpickupviewpanelPickupviewpanelBase { }
</script>
import { Prop, Provide, Emit, Model } from 'vue-property-decorator';
import { Subject, Subscription } from 'rxjs';
import { Watch, MainControlBase } from '@/studio-core';
import HROrganizationService from '@/service/hrorganization/hrorganization-service';
import PickupViewpickupviewpanelService from './pickup-viewpickupviewpanel-pickupviewpanel-service';
import HROrganizationUIService from '@/uiservice/hrorganization/hrorganization-ui-service';
import PickupViewpickupviewpanelModel from './pickup-viewpickupviewpanel-pickupviewpanel-model';
/**
* pickupviewpanel部件基类
*
* @export
* @class MainControlBase
* @extends {PickupViewpickupviewpanelPickupviewpanelBase}
*/
export class PickupViewpickupviewpanelPickupviewpanelBase extends MainControlBase {
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof PickupViewpickupviewpanelPickupviewpanelBase
*/
protected controlType: string = 'PICKUPVIEWPANEL';
/**
* 建构部件服务对象
*
* @type {PickupViewpickupviewpanelService}
* @memberof PickupViewpickupviewpanelPickupviewpanelBase
*/
public service: PickupViewpickupviewpanelService = new PickupViewpickupviewpanelService({ $store: this.$store });
/**
* 实体服务对象
*
* @type {HROrganizationService}
* @memberof PickupViewpickupviewpanelPickupviewpanelBase
*/
public appEntityService: HROrganizationService = new HROrganizationService({ $store: this.$store });
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof PickupViewpickupviewpanelPickupviewpanelBase
*/
protected appDeName: string = 'hrorganization';
/**
* 选中数据字符串
*
* @type {string}
* @memberof PickupViewpickupviewpanel
*/
@Prop() public selectedData?: string;
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof PickupViewpickupviewpanel
*/
public getDatas(): any[] {
return [];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof PickupViewpickupviewpanel
*/
public getData(): any {
return {};
}
/**
* 视图名称
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public view: any = {
viewname: 'hrorganization-pickup-grid-view',
data: {},
}
/**
* 局部上下文
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public localContext: any = null;
/**
* 局部视图参数
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public localViewParam: any = null;
/**
* 视图数据
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public viewdata: string = JSON.stringify(this.context);
/**
* 视图参数
*
* @type {*}
* @memberof PickupViewpickupviewpanel
*/
public viewparam: string = JSON.stringify(this.viewparams);
/**
* 是否显示按钮
*
* @type {boolean}
* @memberof PickupViewpickupviewpanel
*/
@Prop({default: true}) public isShowButton!: boolean;
/**
* 是否单选
*
* @type {boolean}
* @memberof PickupViewpickupviewpanel
*/
@Prop() public isSingleSelect?: boolean;
/**
* 初始化完成
*
* @type {boolean}
* @memberof PickupViewpickupviewpanel
*/
public inited: boolean = false;
/**
* 视图数据变化
*
* @param {*} $event
* @memberof PickupViewpickupviewpanel
*/
public onViewDatasChange($event: any): void {
if($event.length>0){
$event.forEach((item:any,index:any) => {
let srfmajortext = item['organizationname'];
if(srfmajortext){
Object.assign($event[index],{srfmajortext: srfmajortext});
}
});
}
this.$emit('selectionchange', $event);
}
/**
* 视图数据被激活
*
* @param {*} $event
* @memberof PickupViewpickupviewpanel
*/
public viewDatasActivated($event: any): void {
this.$emit('activated', $event);
}
/**
* 视图加载完成
*
* @param {*} $event
* @memberof PickupViewpickupviewpanel
*/
public onViewLoad($event: any): void {
this.$emit('load', $event);
}
/**
* vue 生命周期
*
* @memberof PickupViewpickupviewpanel
*/
public created() {
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof PickupViewpickupviewpanel
*/
public afterCreated(){
this.initNavParam();
if (this.viewState) {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
if (Object.is('load', action)) {
this.viewdata = JSON.stringify(this.context);
this.viewparam = JSON.stringify(Object.assign(data, this.viewparams));
this.inited = true;
}
});
}
}
/**
* 初始化导航参数
*
* @memberof PickupViewpickupviewpanel
*/
public initNavParam(){
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);
}
/**
* vue 生命周期
*
* @memberof PickupViewpickupviewpanel
*/
public destroyed() {
this.afterDestroy();
}
/**
* 执行destroyed后的逻辑
*
* @memberof PickupViewpickupviewpanel
*/
public afterDestroy() {
if (this.viewStateEvent) {
this.viewStateEvent.unsubscribe();
}
}
}
\ No newline at end of file
/**
* PickupViewpickupviewpanel 部件模型
*
* @export
* @class PickupViewpickupviewpanelModel
*/
export default class PickupViewpickupviewpanelModel {
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof PickupViewpickupviewpanelModel
*/
public getDataItems(): any[] {
return [
{
name: 'updateman',
},
{
name: 'updatedate',
},
{
name: 'createman',
},
{
name: 'organizationname',
},
{
name: 'createdate',
},
{
name: 'hrorganization',
prop: 'organizationid',
},
{
name: 'organizationtype',
},
{
name: 'shortname',
},
{
name: 'orgcode',
},
{
name: 'orglevel',
},
{
name: 'showorder',
},
{
name: 'operationunittype',
},
{
name: 'memo',
},
]
}
}
\ No newline at end of file
import { Http } from '@/utils';
import ControlService from '@/widgets/control-service';
/**
* PickupViewpickupviewpanel 部件服务对象
*
* @export
* @class PickupViewpickupviewpanelService
*/
export default class PickupViewpickupviewpanelService extends ControlService {
}
\ No newline at end of file
<div class='pickupviewpanel'>
<component
v-if="inited && view.viewname && !Object.is(view.viewname, '')"
:is="view.viewname"
class="viewcontainer3"
:viewdata="viewdata"
:viewparam="viewparam"
:viewDefaultUsage="false"
:isSingleSelect="isSingleSelect"
:selectedData="selectedData"
:isShowButton="isShowButton"
@viewdataschange="onViewDatasChange.apply(_self, arguments)"
@viewdatasactivated="viewDatasActivated.apply(_self, arguments)"
@viewload="onViewLoad.apply(_self, arguments)">
</component>
</div>
\ No newline at end of file
<template src="./pickup-viewpickupviewpanel-pickupviewpanel.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { PickupViewpickupviewpanelPickupviewpanelBase } from './pickup-viewpickupviewpanel-pickupviewpanel-base';
/**
* pickupviewpanel部件
*
* @export
* @class PickupViewpickupviewpanelPickupviewpanel
* @extends {PickupViewpickupviewpanelPickupviewpanelBase}
*/
@Component({
components: {
}
})
@VueLifeCycleProcessing()
export default class PickupViewpickupviewpanelPickupviewpanel extends PickupViewpickupviewpanelPickupviewpanelBase { }
</script>
......@@ -97,7 +97,7 @@ public class HROMHierarchy extends EntityMP implements Serializable {
@JsonProperty("organizationid")
private String organizationid;
/**
* 上层次结构标识
* 上层次结构标识
*/
@TableField(value = "pomhierarchyid")
@JSONField(name = "pomhierarchyid")
......@@ -175,7 +175,7 @@ public class HROMHierarchy extends EntityMP implements Serializable {
}
/**
* 设置 [上层次结构标识]
* 设置 [上层次结构标识]
*/
public void setPomhierarchyid(String pomhierarchyid){
this.pomhierarchyid = pomhierarchyid ;
......
......@@ -41,7 +41,7 @@ public class HROMHierarchySearchContext extends QueryWrapperContext<HROMHierarch
this.getSearchCond().eq("organizationid", n_organizationid_eq);
}
}
private String n_pomhierarchyid_eq;//[上层次结构标识]
private String n_pomhierarchyid_eq;//[上层次结构标识]
public void setN_pomhierarchyid_eq(String n_pomhierarchyid_eq) {
this.n_pomhierarchyid_eq = n_pomhierarchyid_eq;
if(!ObjectUtils.isEmpty(this.n_pomhierarchyid_eq)){
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册