import { Subject } from 'rxjs'; import { PickupGridViewBase } from '@/studio-core'; import HROMHierarchyService from '@/service/hromhierarchy/hromhierarchy-service'; import HROMHierarchyAuthService from '@/authservice/hromhierarchy/hromhierarchy-auth-service'; import PickupGridViewEngine from '@engine/view/pickup-grid-view-engine'; import HROMHierarchyUIService from '@/uiservice/hromhierarchy/hromhierarchy-ui-service'; /** * 组织层次结构选择表格视图视图基类 * * @export * @class HROMHierarchyPickupGridViewBase * @extends {PickupGridViewBase} */ export class HROMHierarchyPickupGridViewBase extends PickupGridViewBase { /** * 视图对应应用实体名称 * * @protected * @type {string} * @memberof HROMHierarchyPickupGridViewBase */ protected appDeName: string = 'hromhierarchy'; /** * 应用实体主键 * * @protected * @type {string} * @memberof HROMHierarchyPickupGridViewBase */ protected appDeKey: string = 'omhierarchyid'; /** * 应用实体主信息 * * @protected * @type {string} * @memberof HROMHierarchyPickupGridViewBase */ protected appDeMajor: string = 'organizationname'; /** * 实体服务对象 * * @type {HROMHierarchyService} * @memberof HROMHierarchyPickupGridViewBase */ protected appEntityService: HROMHierarchyService = new HROMHierarchyService; /** * 实体权限服务对象 * * @type HROMHierarchyUIService * @memberof HROMHierarchyPickupGridViewBase */ public appUIService: HROMHierarchyUIService = new HROMHierarchyUIService(this.$store); /** * 计数器服务对象集合 * * @protected * @type {Array<*>} * @memberof HROMHierarchyPickupGridViewBase */ protected counterServiceArray: Array = []; /** * 视图模型数据 * * @protected * @type {*} * @memberof HROMHierarchyPickupGridViewBase */ protected model: any = { srfCaption: 'entities.hromhierarchy.views.pickupgridview.caption', srfTitle: 'entities.hromhierarchy.views.pickupgridview.title', srfSubTitle: 'entities.hromhierarchy.views.pickupgridview.subtitle', dataInfo: '' } /** * 容器模型 * * @protected * @type {*} * @memberof HROMHierarchyPickupGridViewBase */ protected containerModel: any = { view_grid: { name: 'grid', type: 'GRID' }, view_searchform: { name: 'searchform', type: 'SEARCHFORM' }, }; /** * 视图唯一标识 * * @protected * @type {string} * @memberof ViewBase */ protected viewtag: string = '811880336a6c1c1beeb894c91404544b'; /** * 视图引擎 * * @public * @type {Engine} * @memberof HROMHierarchyPickupGridViewBase */ public engine: PickupGridViewEngine = new PickupGridViewEngine(); /** * 引擎初始化 * * @public * @memberof HROMHierarchyPickupGridViewBase */ public engineInit(): void { this.engine.init({ view: this, grid: this.$refs.grid, searchform: this.$refs.searchform, keyPSDEField: 'hromhierarchy', majorPSDEField: 'organizationname', isLoadDefault: true, }); } /** * grid 部件 selectionchange 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public grid_selectionchange($event: any, $event2?: any): void { this.engine.onCtrlEvent('grid', 'selectionchange', $event); } /** * grid 部件 beforeload 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public grid_beforeload($event: any, $event2?: any): void { this.engine.onCtrlEvent('grid', 'beforeload', $event); } /** * grid 部件 rowdblclick 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public grid_rowdblclick($event: any, $event2?: any): void { this.engine.onCtrlEvent('grid', 'rowdblclick', $event); } /** * grid 部件 load 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public grid_load($event: any, $event2?: any): void { this.engine.onCtrlEvent('grid', 'load', $event); } /** * searchform 部件 save 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public searchform_save($event: any, $event2?: any): void { this.engine.onCtrlEvent('searchform', 'save', $event); } /** * searchform 部件 search 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public searchform_search($event: any, $event2?: any): void { this.engine.onCtrlEvent('searchform', 'search', $event); } /** * searchform 部件 load 事件 * * @param {*} [args={}] * @param {*} $event * @memberof HROMHierarchyPickupGridViewBase */ public searchform_load($event: any, $event2?: any): void { this.engine.onCtrlEvent('searchform', 'load', $event); } /** * 是否展开搜索表单 * * @protected * @type {boolean} * @memberof HROMHierarchyPickupGridViewBase */ protected isExpandSearchForm: boolean = true; }