From 09e95982e57f1a26be4249d11091a935544df684 Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Tue, 16 Jan 2018 16:57:25 +0800
Subject: [PATCH] Merge branch 'develop' of http://blit.7drlb.com:8888/r/screen-frontend into develop

---
 src/app/business/services/http/alarm-config.service.ts |   54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 54 insertions(+), 0 deletions(-)

diff --git a/src/app/business/services/http/alarm-config.service.ts b/src/app/business/services/http/alarm-config.service.ts
new file mode 100644
index 0000000..9a925c2
--- /dev/null
+++ b/src/app/business/services/http/alarm-config.service.ts
@@ -0,0 +1,54 @@
+import { _HttpClient } from '@delon/theme';
+import { Injectable } from '@angular/core';
+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';
+
+@Injectable()
+export class AlarmConfigService {
+  private urls = {
+    getByOid: environment.SERVER_BASH_URL + 'alarm-config/get-by-oid',
+    save: environment.SERVER_BASH_URL + '/alarm-config/add-or-modify',
+  };
+  constructor( private http: _HttpClient) {
+     
+  }
+  public generateAlarmConfig(sensors: {key: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;
+        sensors.forEach(
+          sensor => {
+                const key = sensor.key;
+                alarmLevels[key]  = 
+                alarmLevels[key] == null ?
+                {
+                  enable: false,
+                  increment: [0,0,0],
+                  degression:  [0,0,0]
+                } : alarmLevels[key];
+             }
+         );
+         _alarmConfig.value.alarmLevels = alarmLevels;
+         //������������
+         let alarmMode = _alarmConfig.value.alarmMode;
+         alarmMode = alarmMode == null ? {
+          enable: false,
+          level1: null,
+          level2: null,
+          level3: null
+        } : alarmMode;
+        _alarmConfig.value.alarmMode = alarmMode;
+        return _alarmConfig;
+  }
+  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);
+  }
+}

--
Gitblit v1.8.0