fengxiang
2018-01-26 0d8b1828eea6bb027bbf71ddcd9c28a7bcf0ca3b
src/app/routes/devices/basic-info/adjust-config/adjust-config.component.ts
@@ -5,6 +5,8 @@
import { Component, OnInit } from '@angular/core';
import { DeviceAdjustValue, Sensor, Device } from '@business/entity/data';
import { Grid, PageBean, ResultBean } from '@business/entity/grid';
import { ContentChild } from '@angular/core/src/metadata/di';
import swal, { SweetAlertType } from 'sweetalert2';
@Component({
  selector: 'app-adjust-config',
@@ -56,6 +58,10 @@
  ) { }
  ngOnInit() {
    if(this.record.deviceVersionId==null){
      swal(`请先选择设备型号`, '设备校准值到传感器类型由所属设备型号决定', 'info');
      this.subject.destroy();
    }
    this.initPage();
    this.load();
  }
@@ -66,22 +72,23 @@
    }, 1);
    zip(
      this.adjustValueService.getByDid(this.record.id),
      this.sensorsService.getPagingList(this.grid, null)
      this.sensorsService.getPageByVersionId(this.record.deviceVersionId)
    ).subscribe(
        ([adjustRes,sensorsRes]) => {
            if(adjustRes!=null && adjustRes.code==1 && sensorsRes != null && sensorsRes.data != null){
               this.data = adjustRes.data;
               if(this.data == null||this.data.deviceId== null){
                  this.data = {};
                  this.data.value = {};
                  this.data['deviceId'] = this.record.id;
               }
              // 存储修改前到值
              Object.assign(this._dataValue,this.data.value);
                this.data = {
                  deviceId:this.record.id,
                  value:{}
                };
                if(adjustRes.data!=null){
                  // 存储修改前到值
                  Object.assign(this._dataValue,adjustRes.data.value);
                  this.data['id'] =adjustRes.data.id;
                }
               this.grid.initData(sensorsRes);
               sensorsRes.data.forEach(
                (item:Sensor) => {
                  this.data.value[item.sensorKey] = this.data.value[item.sensorKey] == null?0:this.data.value[item.sensorKey];
                  this.data.value[item.sensorKey] = this._dataValue[item.sensorKey] == null?0:this._dataValue[item.sensorKey];
                  }
              );
              this.grid.refreshStatus();
@@ -97,11 +104,14 @@
  }
  save($event) {
    // $event.preventDefault();
    let isModify = Object.keys(this.data.value).some(
    let isModify = Object.keys(this._dataValue).length != Object.keys(this.data.value).length;
    if(!isModify){
      isModify = Object.keys(this.data.value).some(
        key => {
            return this.data.value[key] !== this._dataValue[key];
        }
    );
      );
    }
    debugger;
    if(isModify){
      this.adjustValueService.save(this.data).subscribe(