Blame view

src/app/data/bus-stop/bus-stop.component.ts 7.4 KB
b4e8113b   Administrator   virtual page fix
1
  import { Component, ViewEncapsulation, AfterViewInit,ViewChild } from '@angular/core';
7085f966   Yarik   Validation try
2
  import { TdLoadingService } from '@covalent/core';
8084e2dd   Yarik   Bus Stop fatality
3
  import { GridOptions, IGetRowsParams, IRowModel } from 'ag-grid/main';
c680f5b4   Administrator   first commit
4
  
1392e7de   Yarik   Awesome
5
6
  import { StatementBase } from '../../../models/statement.base';
  
c680f5b4   Administrator   first commit
7
8
9
10
  import { BusStopService } from '../../../services/bus-stop.service';
  import { BusStop } from '../../../models/bus-stop';
  import { EditorComponent } from '../../../helpers/editor.component';
  import { RendererComponent } from '../../../helpers/renderer.component';
842485ac   Administrator   add select point ...
11
12
  import { MapEditorComponent } from '../../../helpers/map-editor.component';
  import { MapRendererComponent } from '../../../helpers/map-renderer.component';
c680f5b4   Administrator   first commit
13
14
15
16
17
18
19
20
  import { BusStopCreateService } from '../../../services/bus-stop-create.service';
  import { BooleanSelectListService } from '../../../services/boolean-select-list.service';
  import { RegionSelectList } from '../../../models/region-select-list';
  import { StateCommonSelectList } from '../../../models/state-common-select-list';
  import { RoadSelectList } from '../../../models/road-select-list';
  import { BooleanSelectList } from '../../../models/boolean-select-list';
  import { SettlementSelectList } from '../../../models/settlement-select-list';
  import { SurfaceTypeSelectList } from '../../../models/surface-type-select-list';
b4e8113b   Administrator   virtual page fix
21
  import { MapItemsComponent } from '../map-items/map-items.component';
c36e5ea5   Administrator   add service-object
22
  import { routerTransition } from '../../../animations/router.animation';
c680f5b4   Administrator   first commit
23
  
c680f5b4   Administrator   first commit
24
  @Component({
8ae52ec0   Administrator   add animation fil
25
      // tslint:disable-next-line:component-selector
74a2441c   Administrator   Add ServiceObject
26
      selector: 'bus-grid',
c680f5b4   Administrator   first commit
27
28
      templateUrl: 'bus-stop.component.html',
      styleUrls: ['bus-stop.scss'],
7085f966   Yarik   Validation try
29
      encapsulation: ViewEncapsulation.None,
c680f5b4   Administrator   first commit
30
  })
1392e7de   Yarik   Awesome
31
  export class BusStopComponent extends StatementBase {
b4e8113b   Administrator   virtual page fix
32
      @ViewChild(MapItemsComponent) mapItems: MapItemsComponent
c680f5b4   Administrator   first commit
33
34
35
36
37
38
      public regions: RegionSelectList[];
      public states: StateCommonSelectList[];
      public surfaceTypes: SurfaceTypeSelectList[];
      public settlements: SettlementSelectList[];
      public roads: RoadSelectList[];
      public boolean: BooleanSelectList[];
c984e4db   Administrator   virtual page fix
39
      public position: string;
c680f5b4   Administrator   first commit
40
41
42
  
      constructor(
          protected service: BusStopService,
1392e7de   Yarik   Awesome
43
44
45
          protected dataService: BusStopCreateService,
          protected booleanService: BooleanSelectListService,
          protected loadingService: TdLoadingService,
c680f5b4   Administrator   first commit
46
      ) {
1392e7de   Yarik   Awesome
47
          super();
c984e4db   Administrator   virtual page fix
48
          this.position = '51.513015907156756,-0.10334014892578126';
8084e2dd   Yarik   Bus Stop fatality
49
50
      }
  
1392e7de   Yarik   Awesome
51
52
    protected createColumnDefs(): any[] {
      return [
c680f5b4   Administrator   first commit
53
54
55
56
57
58
        {
          headerName: '#',
          width: 30,
          checkboxSelection: true,
          suppressSorting: true,
          suppressMenu: true,
8ae52ec0   Administrator   add animation fil
59
          pinned: true,
c680f5b4   Administrator   first commit
60
61
62
        },
        {
          headerName: 'ID',
1392e7de   Yarik   Awesome
63
          field: 'id',
c680f5b4   Administrator   first commit
64
65
66
67
68
69
70
71
72
73
        },
        {
          headerName: 'Назва дороги',
          field: 'roadId',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.roads,
            valueCol: 'roadId',
8ae52ec0   Administrator   add animation fil
74
75
            labelCol: 'name',
          },
c680f5b4   Administrator   first commit
76
77
78
79
80
81
82
83
84
85
        },
        {
          headerName: 'Область',
          field: 'regionId',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.regions,
            valueCol: 'regionId',
8ae52ec0   Administrator   add animation fil
86
87
            labelCol: 'name',
          },
c680f5b4   Administrator   first commit
88
89
90
91
92
93
94
95
96
97
98
99
        },
        {
          headerName: 'Місцезнаходження, км+ справа',
          field: 'locationRight',
          editable: true,
        },
        {
          headerName: 'Місцезнаходження, км+ зліва',
          field: 'locationLeft',
          editable: true,
        },
        {
8f0bd441   Yarik   Fields
100
101
102
103
104
105
106
107
          headerName: 'Тип покриття',
          field: 'surfaceTypeId',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.surfaceTypes,
            valueCol: 'surfaceTypeId',
8ae52ec0   Administrator   add animation fil
108
109
            labelCol: 'name',
          },
8f0bd441   Yarik   Fields
110
111
        },
        {
c680f5b4   Administrator   first commit
112
113
114
115
116
117
118
119
          headerName: 'Технічний стан',
          field: 'stateCommonId',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.states,
            valueCol: 'stateCommonId',
8ae52ec0   Administrator   add animation fil
120
121
            labelCol: 'value',
          },
c680f5b4   Administrator   first commit
122
        },
8f0bd441   Yarik   Fields
123
124
125
126
127
128
129
130
131
        {
          headerName: 'Наявність елементів зупин. майдан',
          field: 'areaStopAvailability',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.boolean,
            valueCol: 'value',
8ae52ec0   Administrator   add animation fil
132
133
            labelCol: 'label',
          },
8f0bd441   Yarik   Fields
134
135
136
137
138
139
140
141
142
143
        },
        {
          headerName: 'Наявність елементів посад. майдан',
          field: 'areaLandAvailability',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.boolean,
            valueCol: 'value',
8ae52ec0   Administrator   add animation fil
144
145
            labelCol: 'label',
          },
8f0bd441   Yarik   Fields
146
147
148
149
150
151
152
153
154
155
        },
        {
          headerName: 'Наявність елементів заїзна кишеня',
          field: 'pocketAvailability',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.boolean,
            valueCol: 'value',
8ae52ec0   Administrator   add animation fil
156
157
            labelCol: 'label',
          },
8f0bd441   Yarik   Fields
158
        },
c680f5b4   Administrator   first commit
159
160
161
162
163
164
165
166
167
        {
          headerName: 'Наявність туалету',
          field: 'toiletAvailability',
          editable: true,
          cellEditorFramework: EditorComponent,
          cellRendererFramework: RendererComponent,
          cellEditorParams: {
            data: this.boolean,
            valueCol: 'value',
8ae52ec0   Administrator   add animation fil
168
169
            labelCol: 'label',
          },
8f0bd441   Yarik   Fields
170
171
172
173
174
175
176
177
178
179
        },
        {
          headerName: 'Рік будівництва',
          field: 'yearBuild',
          editable: true,
        },
        {
          headerName: 'Рік ремонту',
          field: 'yearRepair',
          editable: true,
8ae52ec0   Administrator   add animation fil
180
        },
842485ac   Administrator   add select point ...
181
182
183
184
185
186
187
188
189
190
        {
          headerName: 'position',
          field: 'position',
          editable: true,
          cellEditorFramework: MapEditorComponent,
          cellRendererFramework: MapRendererComponent,
          cellEditorParams: {
            position: 'position'
          },
        },
c680f5b4   Administrator   first commit
191
192
      ];
    }
026fffbd   Yarik   Awesome
193
194
195
196
197
198
199
200
201
202
203
204
205
  
    protected initFunction(): void {
      this.booleanService.getModels().then((models: BooleanSelectList[]) => this.boolean = models);
      this.dataService.getModels().then((models: any) => {
              this.regions = models.regionSelectListDsM as RegionSelectList[];
              this.states = models.stateCommonSelectListDsM as StateCommonSelectList[];
              this.surfaceTypes = models.surfaceTypeSelectListDsM as SurfaceTypeSelectList[];
              this.settlements = models.settlementSelectListDsM as SettlementSelectList[];
              this.roads = models.roadSelectListDsM as RoadSelectList[];
        }).then(() => {
              this.bootstrapGrid();
        });
    }
c984e4db   Administrator   virtual page fix
206
207
  
    protected onCellFocused($event: any): void  {
b4e8113b   Administrator   virtual page fix
208
209
210
211
212
213
214
215
216
217
218
219
220
        console.log($event);
       // let model = this.gridOptions.api.getModel();
       // let row = model.getRow($event.rowIndex);
       // console.log(row);
       // this.mapItems.refreshMap(row);
    }
  
    protected onSelectionChanged() {
        console.log('onSelectionChanged');
      super.onSelectionChanged();
      let rows: IRowModel[] = this.gridOptions.api.getSelectedRows();
      console.log(rows);
      this.mapItems.refreshMap(rows);
c984e4db   Administrator   virtual page fix
221
222
    }
  
c680f5b4   Administrator   first commit
223
  }