fengxiang
2018-03-08 efe936a73370a55d4c3336fb9973a92fcf87efff
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',
@@ -12,9 +14,9 @@
  styles: []
})
export class AdjustConfigComponent implements OnInit {
  record:Device;
  _dataValue:{[s:string]:number} = {};
  data:DeviceAdjustValue;
  record: Device;
  _dataValue: {[s: string]: number} = {};
  data: DeviceAdjustValue;
  deviceVersionId: number;
  isSaving = false;
  grid: Grid<Sensor> = new Grid(null);
@@ -51,11 +53,15 @@
  constructor(
    private subject: NzModalSubject,
    private sensorsService: SensorsService,
    private adjustValueService:DeviceAdjustValueService,
    private adjustValueService: DeviceAdjustValueService,
    public msgSrv: NzMessageService,
  ) { }
  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);
        ([adjustRes, sensorsRes]) => {
            if (adjustRes != null && adjustRes.code === 1 && sensorsRes != null && sensorsRes.data != null) {
                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];
                (item: Sensor) => {
                  this.data.value[item.sensorKey] = this._dataValue[item.sensorKey] == null ? 0 : this._dataValue[item.sensorKey];
                  }
              );
              this.grid.refreshStatus();
@@ -97,22 +104,24 @@
  }
  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){
      );
    }
    if (isModify) {
      this.adjustValueService.save(this.data).subscribe(
        (res:ResultBean<any>) =>{
               if(res!=null&&res.code==1){
        (res: ResultBean<any>) => {
               if (res != null && res.code === 1) {
                   this.subject.destroy();                   
                   this.msgSrv.success('校准值配置成功');
               }
        }
    );
    }else{
    } else {
        this.subject.destroy();
        this.msgSrv.success('校准值配置未改变');
    }