|  |  |  | 
|---|
|  |  |  | import { environment } from '@env/environment'; | 
|---|
|  |  |  | import { Observable } from 'rxjs/Observable'; | 
|---|
|  |  |  | import { ResultBean } from '@business/entity/grid'; | 
|---|
|  |  |  | import { AlarmConfig, AlarmConfigValue,AlarmSensorLevel, AlarmMode } from '@business/entity/data'; | 
|---|
|  |  |  | import { AlarmConfig, AlarmConfigValue, AlarmSensorLevel, AlarmMode } from '@business/entity/data'; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Injectable() | 
|---|
|  |  |  | export class AlarmConfigService { | 
|---|
|  |  |  | 
|---|
|  |  |  | constructor( private http: _HttpClient) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | public generateAlarmConfig(sensors: {sensorKey:string} [],alarmConfig?: AlarmConfig): AlarmConfig{ | 
|---|
|  |  |  | const _alarmConfig : AlarmConfig = alarmConfig==null || alarmConfig.value == null ? {value:{ | 
|---|
|  |  |  | alarmLevels:null, | 
|---|
|  |  |  | alarmMode:null | 
|---|
|  |  |  | }}: alarmConfig; | 
|---|
|  |  |  | public generateAlarmConfig(sensors: {sensorKey: string} [], alarmConfig?: AlarmConfig): AlarmConfig { | 
|---|
|  |  |  | const _alarmConfig: AlarmConfig = alarmConfig == null || alarmConfig.value == null ? {value: { | 
|---|
|  |  |  | alarmLevels: null, | 
|---|
|  |  |  | alarmMode: null | 
|---|
|  |  |  | }} : alarmConfig; | 
|---|
|  |  |  | let alarmLevels = _alarmConfig.value.alarmLevels; | 
|---|
|  |  |  | alarmLevels = alarmLevels ==null ?{} :alarmLevels; | 
|---|
|  |  |  | alarmLevels = alarmLevels == null ? {} : alarmLevels; | 
|---|
|  |  |  | sensors.forEach( | 
|---|
|  |  |  | sensor => { | 
|---|
|  |  |  | const key = sensor.sensorKey; | 
|---|
|  |  |  | 
|---|
|  |  |  | alarmLevels[key] == null ? | 
|---|
|  |  |  | { | 
|---|
|  |  |  | enable: false, | 
|---|
|  |  |  | increment: [0,0,0], | 
|---|
|  |  |  | increment: [0, 0, 0], | 
|---|
|  |  |  | degressEnable: false, | 
|---|
|  |  |  | degression:  [0,0,0] | 
|---|
|  |  |  | degression:  [0, 0, 0] | 
|---|
|  |  |  | } : alarmLevels[key]; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | _alarmConfig.value.alarmLevels = alarmLevels; | 
|---|
|  |  |  | //报警方式 | 
|---|
|  |  |  | // 报警方式 | 
|---|
|  |  |  | let alarmMode = _alarmConfig.value.alarmMode; | 
|---|
|  |  |  | alarmMode = alarmMode == null ? { | 
|---|
|  |  |  | enable: false, | 
|---|
|  |  |  | 
|---|
|  |  |  | _alarmConfig.value.alarmMode = alarmMode; | 
|---|
|  |  |  | return _alarmConfig; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | public getByOid(oid:number):Observable<ResultBean<AlarmConfig>>{ | 
|---|
|  |  |  | return this.http.get(this.urls.getByOid,{organizationId:oid}); | 
|---|
|  |  |  | public getByOid(oid: number): Observable<ResultBean<AlarmConfig>> { | 
|---|
|  |  |  | return this.http.get(this.urls.getByOid, {organizationId: oid}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | public save(data: any): Observable<ResultBean<any>> { | 
|---|
|  |  |  | return this.http.post(this.urls.save, data); | 
|---|