主頁 > 企業開發 > 通過一個vue+elementUI的小實體來講解一下它們是如何使用的

通過一個vue+elementUI的小實體來講解一下它們是如何使用的

2020-09-19 01:58:31 企業開發

  需求:點擊一個按鈕,彈出一個模態框,這個模態框有兩個tab,tab中是各種報警條件,這些報警條件是從資料庫中動態取出的,資料庫中資料變更后,這個界面也要變更,我們可以查看和編輯這些報警條件,底部“確定”按鈕點擊的時候,會同時將這兩個tab中的內容都保存到資料庫中去,資料錄入要驗證輸入的格式,

  對于熟練的人來說,實作其實很簡單,但是對于沒有經驗的人來說,如果按照官網給的那些簡單實體來做,你會發現,出現一些奇怪的問題,諸如,文本框不能編輯內容,表單驗證無效等,感覺elementUI官網的示例太過于粗淺,無法適應實際作業中的許多需求場景,

  界面效果如下圖所示:

  分析:用到的組件:el-dialog、el-tabs

   AlarmSet.vue代碼:

<template>
  <div>
    <div  v-loading="winLoading">
      <el-tabs v-model="activeName" type="border-card" v-if="alarmTmplData.length>0">
        <el-tab-pane label="制冷站" name="coldSet">
          <ColdSet
            ref="coldSet"
            :alarmTmplData="alarmTmplData"
            @onSubmit="coldSetSummit"
            :showAlarmSetWin.sync="showAlarmSetWin"
          ></ColdSet>
        </el-tab-pane>
        <el-tab-pane label="末端" name="endSet">
          <EndSet
            ref="endSet"
            :alarmTmplData="alarmTmplData"
            @onSubmit="endSetSummit"
            :showAlarmSetWin.sync="showAlarmSetWin"
          ></EndSet>
        </el-tab-pane>
      </el-tabs>
    </div>
    <div slot="footer" >
      <div style="display: inline-block">
        <el-button type="primary" @click="onSubmit" :loading="btnLoading">確 定</el-button>
        <el-button @click="isHide">取 消</el-button>
      </div>
    </div>
  </div>
</template>

<script>
import ColdSet from "./ColdSet";
import EndSet from "./EndSet";
import mixinsOption from "@/mixins/mixin-options";
import { alarmService } from "@/services/cold-station-service";
// import { alarmConditionData } from "@/mock/json.js";
export default {
  mixins: [mixinsOption],
  props: {
    showAlarmSetWin: {
      type: Boolean,
      default: false
    },
    alarmTmpl: {
      type: Object,
      default: {}
    }
  },
  components: {
    ColdSet,
    EndSet
  },
  data() {
    return {
      alarmConditionData: [], //報警條件資料
      activeName: "coldSet",
      alarmTmplData: [],
      coldConditionData: [], //冷站報警條件資料
      endConditionData: [], //末端報警條件資料
      isColdValid: false,
      isEndValid: false,
      btnLoading: false
    };
  },
  watch: {
    showAlarmSetWin: {
      handler(val) {
        console.log("showAlarmSetWin", val);
        if (val) {
          this.initData();
        }
      },
      immediate: true
    }
  },
  methods: {
    //初始化資料
    initData() {
      this.$store.commit("base/setWinLoading", true);
      console.log("initData");
      alarmService
        .getConditionList({
          groupNumber: this.groupNumber,
          projectNumber: this.projectNumber
        })
        .then(res => {
          if (res.code === 200) {
            this.alarmConditionData =https://www.cnblogs.com/jiekzou/p/ res.data;
            this.createAlarmTmplData(res.data);
          }
          this.$store.commit("base/setWinLoading", false);
        });
    },
    //構造報警模板資料
    createAlarmTmplData(conditionData) {
      let res = [];
      this.alarmTmplData = https://www.cnblogs.com/jiekzou/p/this.alarmTmpl.data;
      if (this.alarmTmpl) {
        this.alarmTmplData.forEach(n => {
          // debugger;
          n.descr = eval(n.descr);
          let item = conditionData.find(m => m.tempId == n.id);
          if (item) {
            n["alarmLevel"] = item.alarmLevel;
            n["suggestion"] = item.suggestion;
            n["firstVal"] = item.firstVal;
            n["secondVal"] = item.secondVal;
            n["fourthVal"] = item.fourthVal;
            n["thirdVal"] = item.thirdVal;
            n["status"] = item.status;
          }
        });
      }
      // console.log("this.alarmTmplData :>> ", this.alarmTmplData);
    },
    //確定操作
    onSubmit() {
      this.$refs["coldSet"].onSubmit();
      this.$refs["endSet"].onSubmit();
      if (this.isColdValid && this.isEndValid) {
        this.btnLoading = true;
        let list = this.coldConditionData
          .concat(this.endConditionData)
          .map(m => {
            return {
              tempId: m.id,
              alarmLevel: m.alarmLevel,
              firstVal: m.firstVal,
              secondVal: m.secondVal,
              thirdVal: m.thirdVal,
              fourthVal: m.fourthVal,
              status: m.status,
              suggestion: m.suggestion
            };
          });

        alarmService
          .batchEdit({
            projectNumber: this.projectNumber,
            groupNumber: this.groupNumber,
            list: list
          })
          .then(res => {
            if (res.code === 200) {
              this.$message({
                message: "操作成功!",
                type: "success",
                duration: this.$baseConfig.messageDuration
              });
            }
            this.btnLoading = false;
          })
          .catch(() => {
            this.btnLoading = false;
          });
      }
    },
    coldSetSummit(val, isValid) {
      if (isValid) {
        this.isColdValid = isValid;
        this.coldConditionData =https://www.cnblogs.com/jiekzou/p/ val;
      }
    },
    endSetSummit(val, isValid) {
      if (isValid) {
        this.isEndValid = isValid;
        this.endConditionData =https://www.cnblogs.com/jiekzou/p/ val;
      }
    },
    //取消
    isHide() {
      this.$emit("update:showAlarmSetWin", false);
    }
  }
};
</script>

<style lang="scss" scoped>
.alarm-set {
  height: 600px;
  /deep/ .el-tabs--border-card {
    height: 100%;
  }
  /deep/ .el-tabs__content {
    height: calc(100% - 60px);
  }
}
</style>

重寫elementUI組件樣式,可以使用/deep/ 進行樣式穿透覆寫,

關于表單驗證:由于是動態生成的表單,所以不能按照官網提供的示例來做,

 el-form中不指定驗證規則,而是在el-form-item中指定,如下:
:prop="`list.${rowIndex}.${fieldArr[2*index+index+1]}`" :rules="rules.numberRule"
表單資料ruleForm中要對資料進行初始化,否則會無法自動識別資料變化,建議采用深拷貝的形式
考慮到冷站和末端這兩個組件中的代碼可以復用,抽取公共js檔案set-mixin.js,然后通過mixins引入,這個類似于組合,還有一種繼承是通過extends來實作,
分析界面雖然是動態的,但是總共只有幾種型別,分別是:1個文本框,2個文本框,沒有文本框,他們都帶有建議資訊這一行,所以可以用幾個v-if來區分,
import { alarmLevelOptions, fieldArr } from '@/enum/alarm-enum.js';
import Regexps from '@/utils/regexp.js';
import mixinsOption from '@/mixins/mixin-options';
export default {
  props: {
    alarmTmplData: {
      type: Array,
      default: () => {
        return [];
      },
    },
    showAlarmSetWin: {
      type: Boolean,
      default: false,
    },
  },
  mixins: [mixinsOption],
  data() {
    return {
      levelOptions: alarmLevelOptions(),
      ruleForm: {
        list: [],
      },
      rules: {
        numberRule: [
          {
            pattern: Regexps.commonNumber,
            message: '僅支持3位數和帶1位小數',
            trigger: 'blur',
          },
        ],
        suggestion: [
          { max: 10, message: '長度不能超過10個字符', trigger: 'blur' },
        ],
      },
      fieldArr,
      tmplData: [],
    };
  },
  computed: {
    activeNames() {
      let activeNames = this.tmplData
        .filter((f) => f.descParamType != 0)
        .map((n) => {
          return n.id;
        });
      console.log('activeNames :>> ', activeNames);
      return activeNames;
    },
  },
  methods: {
    initData(type) {
      console.log('initData', type);
      if (this.alarmTmplData.length > 0) {
        this.tmplData = https://www.cnblogs.com/jiekzou/p/this.alarmTmplData.filter((n) => n.sys == type);
        this.ruleForm.list = JSON.parse(JSON.stringify(this.tmplData));
        // console.log('條件設定initData :>> ', this.ruleForm.list);
      }
    },
  },
};

ColdSet.vue代碼:

<template>
  <div>
    <el-form :model="ruleForm" ref="ruleForm">
      <el-collapse v-model="activeNames">
        <el-collapse-item :name="item.id" v-for="(item,rowIndex) in ruleForm.list" :key="item.id">
          <template slot="title">
            <div >
              <el-checkbox v-model="item.status" :true-label="0" :false-label="1">{{item.name}}</el-checkbox>
              <el-select v-model="item.alarmLevel" size="small">
                <el-option
                  v-for="item in levelOptions"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                ></el-option>
              </el-select>
            </div>
          </template>
          <div >
            <div  v-if="item.descParamType==1">
              <div  v-for="(subItem,index) in item.descr" :key="index">
                <label>{{subItem}}</label>
                <el-form-item
                  label="大于"
                  :prop="`list.${rowIndex}.${fieldArr[index]}`"
                  :rules="rules.numberRule"
                >
                  <el-input v-model="item[`${fieldArr[index]}`]" size="small"></el-input>
                </el-form-item>
              </div>
            </div>
            <template v-if="item.descParamType==2">
              <div  v-for="(subItem,index) in item.descr" :key="index">
                <div >
                  <label>{{subItem}}</label>
                  <el-form-item
                    label="大于"
                    :prop="`list.${rowIndex}.${fieldArr[2*index+index]}`"
                    :rules="rules.numberRule"
                  >
                    <el-input
                      v-model="item[`${fieldArr[2*index+index]}`]"
                      size="small"
                    ></el-input>
                  </el-form-item>
                  <el-form-item
                    label="或小于"
                    :prop="`list.${rowIndex}.${fieldArr[2*index+index+1]}`"
                    :rules="rules.numberRule"
                  >
                    <el-input
                      v-model="item[`${fieldArr[2*index+index+1]}`]"
                      size="small"
                    ></el-input>
                  </el-form-item>
                </div>
              </div>
            </template>

            <div >
              <el-form-item
                label="建議資訊"
                :prop="`list.${rowIndex}.suggestion`"
                :rules="rules.suggestion"
              >
                <el-input
                  v-model="item.suggestion"
                  class="max-width"
                  size="small"
                  placeholder="請盡快處理"
                ></el-input>
              </el-form-item>
            </div>
          </div>
        </el-collapse-item>
      </el-collapse>
    </el-form>
  </div>
</template>

<script>
import { alarmLevelOptions, fieldArr } from "@/enum/alarm-enum.js";
import Regexps from "@/utils/regexp.js";
import { validateVal } from "@/utils/validate-utils.js";
import { alarmService } from "@/services/cold-station-service";
import setMixin from "./set-mixin";
export default {
  mixins: [setMixin],
  watch: {
    alarmTmplData: {
      handler(val) {
        console.log("showAlarmSetWin cold :>> ", val);
        if (val) {
          this.initData(1);
        }
         else{            this.$refs["ruleForm"].resetFields();         }
      },
deep:true, immediate:
true } }, methods: { onSubmit() { console.log("冷站確定 :>> "); this.$refs["ruleForm"].validate(valid => { if (valid) { console.log("驗證成功"); this.$emit("onSubmit", this.ruleForm.list, true); } }); } } }; </script> <style lang="scss" scoped> @import "./set.scss"; </style>

EndSet.vue:

<template>
  <div>
    <el-form :model="ruleForm" ref="ruleForm">
      <el-collapse v-model="activeNames">
        <el-collapse-item :name="item.id" v-for="(item,rowIndex) in ruleForm.list" :key="item.id">
          <template slot="title">
            <div >
              <el-checkbox v-model="item.status" :true-label="0" :false-label="1">{{item.name}}</el-checkbox>
              <el-select v-model="item.alarmLevel" size="small">
                <el-option
                  v-for="item in levelOptions"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                ></el-option>
              </el-select>
            </div>
          </template>
          <div >
            <div  v-if="item.descParamType==1">
              <div  v-for="(subItem,index) in item.descr" :key="index">
                <label>{{subItem}}</label>
                <el-form-item
                  label="大于"
                  :prop="`list.${rowIndex}.${fieldArr[index]}`"
                  :rules="rules.numberRule"
                  v-if="index==0"
                >
                  <el-input v-model="item[fieldArr[index]]" size="small"></el-input>
                </el-form-item>
              </div>
            </div>
            <div  v-if="item.descParamType==2">
              <div  v-for="(subItem,index) in item.descr" :key="index">
                <label>{{subItem}}</label>
                <el-form-item
                  label="大于"
                  :prop="`list.${rowIndex}.${fieldArr[2*index+index]}`"
                  :rules="rules.numberRule"
                >
                  <el-input v-model="item[fieldArr[2*index+index]]" size="small"></el-input>
                </el-form-item>
                <el-form-item
                  label="或小于"
                  :prop="`list.${rowIndex}.${fieldArr[2*index+index+1]}`"
                  :rules="rules.numberRule"
                >
                  <el-input v-model="item[fieldArr[2*index+index+1]]" size="small"></el-input>
                </el-form-item>
              </div>
            </div>
            <div  v-if="item.descParamType==3">
              <div >
                <el-form-item
                  :label="subItem"
                  :prop="`list.${rowIndex}.${fieldArr[index]}`"
                  :rules="rules.numberRule"
                  v-for="(subItem,index) in item.descr"
                  :key="index"
                >
                  <el-input v-model="item[fieldArr[index]]" size="small"></el-input>
                </el-form-item>
              </div>
            </div>
            <template v-if="item.descParamType==4">
              <div  v-for="(subItem,index) in item.descr" :key="index">
                <div >{{subItem}}</div>
                <div >
                  <el-form-item
                    :label="index==0?'小于':'大于'"
                    :prop="`list.${rowIndex}.${fieldArr[index]}`"
                    :rules="rules.numberRule"
                  >
                    <el-input v-model="item[fieldArr[index]]" size="small"></el-input>
                  </el-form-item>
                </div>
              </div>
            </template>
            <!-- <div  v-if="item.descParamType==4">
              multi-item       
            </div>-->
            <div >
              <el-form-item
                label="建議資訊"
                :prop="`list.${rowIndex}.suggestion`"
                :rules="rules.suggestion"
              >
                <el-input
                  v-model="item.suggestion"
                  class="max-width"
                  size="small"
                  placeholder="請盡快處理"
                ></el-input>
              </el-form-item>
            </div>
          </div>
        </el-collapse-item>
      </el-collapse>
    </el-form>
  </div>
</template>

<script>
import setMixin from "./set-mixin";
import { alarmService } from "@/services/cold-station-service";
export default {
  mixins: [setMixin],
  watch: {
    alarmTmplData: {
      handler(val) {
        console.log("showAlarmSetWin end:>> ", val);
        if (val) {
          this.initData(2);
        }
         else{            this.$refs["ruleForm"].resetFields();         }
      },
deep:true, immediate:
true } }, methods: { onSubmit() { console.log("末端確定 :>> "); this.$refs["ruleForm"].validate(valid => { if (valid) { console.log("驗證成功"); this.$emit("onSubmit", this.ruleForm.list, true); } }); } } }; </script> <style lang="scss" scoped> @import "./set.scss"; </style>

由于要兩個tab中都驗證通過時,才提交表單,所以兩個表單都要驗證,只有都驗證通過時在提交表單,提交表單之前,要合并表單資料再統一提交,父組件呼叫子組件的方法 this.$refs["coldSet"].onSubmit();

考慮到彈窗組件的性能問題,我們可以通過將顯示標識以 :showAlarmSetWin.sync="showAlarmSetWin"這樣的形式傳遞給子組件,(注意,要加sync關鍵字)子組件監聽showAlarmSetWin,當彈窗顯示時,加載資料并初始化,并設定屬性:immediate: true,讓彈窗第一次執行時也加載資料,

當表單隱藏時,重置表單: this.$refs["ruleForm"].resetFields(); 為了防止同一時間多次點擊操作按鈕“確定”,可以給按鈕加上loading 資料串列格式:
{
    "data": [{
        "id": 246,
        "tempId": "1",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 247,
        "tempId": "2",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 248,
        "tempId": "3",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 249,
        "tempId": "4",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 250,
        "tempId": "5",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 251,
        "tempId": "6",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 252,
        "tempId": "7",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 253,
        "tempId": "8",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 254,
        "tempId": "9",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 255,
        "tempId": "10",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 256,
        "tempId": "11",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 257,
        "tempId": "12",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 258,
        "tempId": "13",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 259,
        "tempId": "14",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 260,
        "tempId": "15",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 261,
        "tempId": "16",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 262,
        "tempId": "50",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 263,
        "tempId": "51",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 264,
        "tempId": "52",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 265,
        "tempId": "53",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 266,
        "tempId": "54",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 267,
        "tempId": "55",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 268,
        "tempId": "56",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 269,
        "tempId": "57",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 270,
        "tempId": "58",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 271,
        "tempId": "59",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 272,
        "tempId": "60",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 273,
        "tempId": "61",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 274,
        "tempId": "62",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 275,
        "tempId": "63",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 276,
        "tempId": "64",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 277,
        "tempId": "65",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 278,
        "tempId": "66",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 279,
        "tempId": "67",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 280,
        "tempId": "68",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 281,
        "tempId": "69",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 282,
        "tempId": "101",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 283,
        "tempId": "102",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 84.0,
        "secondVal": 16.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 284,
        "tempId": "103",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 59.0,
        "secondVal": 49.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 285,
        "tempId": "104",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 34.0,
        "secondVal": 22.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 286,
        "tempId": "105",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 92.0,
        "secondVal": 66.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 287,
        "tempId": "106",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 55.0,
        "secondVal": 29.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 288,
        "tempId": "107",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 86.0,
        "secondVal": 81.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 289,
        "tempId": "108",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 67.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 290,
        "tempId": "109",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 85.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 291,
        "tempId": "110",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 16.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 292,
        "tempId": "111",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 92.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 293,
        "tempId": "112",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": "請盡快安排人檢查",
        "firstVal": 10.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 294,
        "tempId": "113",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 44.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 295,
        "tempId": "114",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": "請盡快安排人檢查",
        "firstVal": 61.0,
        "secondVal": 35.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 296,
        "tempId": "115",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 48.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 297,
        "tempId": "116",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 298,
        "tempId": "117",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 299,
        "tempId": "118",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 76.0,
        "secondVal": 23.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 300,
        "tempId": "119",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 64.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 301,
        "tempId": "120",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 302,
        "tempId": "121",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 73.0,
        "secondVal": 15.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 303,
        "tempId": "122",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 90.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 304,
        "tempId": "201",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 305,
        "tempId": "202",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 306,
        "tempId": "203",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 307,
        "tempId": "204",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 32.0,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 308,
        "tempId": "205",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 309,
        "tempId": "206",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 310,
        "tempId": "207",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 311,
        "tempId": "208",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 312,
        "tempId": "209",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 313,
        "tempId": "210",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 314,
        "tempId": "211",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 315,
        "tempId": "212",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 316,
        "tempId": "213",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 317,
        "tempId": "214",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 318,
        "tempId": "215",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 319,
        "tempId": "216",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 320,
        "tempId": "217",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 321,
        "tempId": "218",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 322,
        "tempId": "219",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 323,
        "tempId": "220",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 36.0,
        "secondVal": 11.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 324,
        "tempId": "221",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": 66.0,
        "secondVal": 59.0,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }, {
        "id": 325,
        "tempId": "222",
        "projectNumber": "440300A088",
        "groupNumber": "G1",
        "alarmLevel": 1,
        "suggestion": null,
        "firstVal": null,
        "secondVal": null,
        "thirdVal": null,
        "fourthVal": null,
        "status": 0
    }],
    "code": 200,
    "msg": "成功",
    "errors": null
}
View Code

模板資料串列格式:

{
    "data": [{
        "id": "1",
        "name": "制冷機啟動失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "10",
        "name": "冷凍泵故障",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷凍水泵設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "101",
        "name": "冷凍水供水溫度不在合理范圍",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷凍水供水溫度\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "102",
        "name": "冷卻塔出水溫度溫度不在合理范圍",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷卻水回水溫度-室外濕球溫度(℃)\",\"或當室外濕球溫度<17℃時,冷卻水回水溫度設定值(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "103",
        "name": "冷凍供回水溫差(壓差)不在合理范圍",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷凍水溫差(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "104",
        "name": "冷卻供回水溫差不在合理范圍",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷卻水溫差(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "105",
        "name": "電流負載限制",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷水機組電流負載率\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "106",
        "name": "冷凝溫度限制",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷凝器出水溫度(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "107",
        "name": "蒸發溫度限制",
        "sys": 1,
        "type": 3,
        "descr": "[\"蒸發器出水溫度(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "108",
        "name": "蒸發器內水壓力超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"蒸發器冷媒壓力(Mpa)\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "109",
        "name": "蒸發器內水流量超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷凍水流量/當前制冷機的額定流量*制冷劑運行臺數\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "11",
        "name": "冷卻泵啟動失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷卻水泵設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "110",
        "name": "冷凝器內水壓力超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷機冷凝器冷媒壓力(Mpa)\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "111",
        "name": "冷凝器內水流量超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷卻水流量/當前制冷機的額定流量*制冷機運行臺數\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "112",
        "name": "冷凍水側小溫差過高",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,蒸發器出水溫度-冷媒溫度(℃)\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "113",
        "name": "冷卻水側小溫差過高",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷凝器冷媒溫度-出水溫度(℃)\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "114",
        "name": "冷凍水流量超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷凍泵流量/額定流量\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "115",
        "name": "冷凍泵功率超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷凍泵功率/額定功率\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "116",
        "name": "冷凍泵頻率超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷凍泵運行頻率不在配置的上下限范圍內\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "117",
        "name": "冷凍水溫差超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷凍水溫差在(3,7)范圍內\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "118",
        "name": "冷卻泵流量超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"冷卻泵流量/額定流量\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "119",
        "name": "冷卻泵功率超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷卻泵功率/額定功率\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "12",
        "name": "冷卻泵停止失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷卻水泵設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "120",
        "name": "冷卻塔頻率超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷卻塔頻率不在配置的上下限范圍\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "121",
        "name": "冷卻回水溫度超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷卻回水溫度\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "122",
        "name": "冷卻塔功率超限",
        "sys": 1,
        "type": 3,
        "descr": "[\"正常運行時段,冷卻塔功率/額定功率\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "13",
        "name": "冷卻泵故障",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷卻水泵設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "14",
        "name": "冷卻塔啟動失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷卻塔風機故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "15",
        "name": "冷卻塔停止失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷卻塔風機故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "16",
        "name": "冷卻塔故障",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷卻塔風機故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "2",
        "name": "制冷機停止失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "201",
        "name": "室內溫度傳感器需要校核",
        "sys": 2,
        "type": 4,
        "descr": "[\"每日6點,當前末端溫度反饋值與其他末端溫度反饋值相差2℃以上\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "202",
        "name": "作業時間前過早開啟空調末端",
        "sys": 2,
        "type": 2,
        "descr": "[\"作業時間前過早開啟空調末端\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "203",
        "name": "室外溫度高而新風閥未關閉",
        "sys": 2,
        "type": 2,
        "descr": "[\"室外溫度高而新風閥未關閉\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "204",
        "name": "室外溫度低而新風閥未開啟",
        "sys": 2,
        "type": 2,
        "descr": "[\"非營業時間,風柜設定溫度-室外濕球溫度(℃)\",\"新風閥未開啟\"]",
        "descParamType": 1,
        "hasSuge": 1,
        "runTime": 3
    }, {
        "id": "205",
        "name": "空調風機變頻器自動控制未啟用",
        "sys": 2,
        "type": 2,
        "descr": "[\"當前時間<關機時間,室外濕球溫度>24且風柜溫度人工設定\",\"或室外濕球溫度在[5,24]且風柜溫度人工設定\",\"或室外濕球溫度<5且風柜(風盤)溫度人工設定\"]",
        "descParamType": 4,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "206",
        "name": "室內CO2過高",
        "sys": 2,
        "type": 3,
        "descr": "[\"室內CO2(PPM)\",\"持續時間(min)\"]",
        "descParamType": 3,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "207",
        "name": "空調末端風機故障",
        "sys": 2,
        "type": 1,
        "descr": "[\"空調末端風機故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "208",
        "name": "空調末端新風閥故障",
        "sys": 2,
        "type": 1,
        "descr": "[\"空調末端新風閥故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "209",
        "name": "空調末端回風閥故障",
        "sys": 2,
        "type": 1,
        "descr": "[\"空調末端回風閥故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "210",
        "name": "空調末端水閥故障",
        "sys": 2,
        "type": 1,
        "descr": "[\"空調末端水閥故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "211",
        "name": "風柜開啟失敗",
        "sys": 2,
        "type": 1,
        "descr": "[\"風柜開啟失敗\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "212",
        "name": "風柜停止失敗",
        "sys": 2,
        "type": 1,
        "descr": "[\"風柜停止失敗\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "213",
        "name": "風盤開啟失敗",
        "sys": 2,
        "type": 1,
        "descr": "[\"風盤開啟失敗\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "214",
        "name": "風盤停止失敗",
        "sys": 2,
        "type": 1,
        "descr": "[\"風盤停止失敗\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "215",
        "name": "時序配置例外",
        "sys": 2,
        "type": 2,
        "descr": "[\"時序配置例外\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "216",
        "name": "末端設備為手動模式",
        "sys": 2,
        "type": 2,
        "descr": "[\"末端設備為手動模式\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "217",
        "name": "風柜故障報警",
        "sys": 2,
        "type": 1,
        "descr": "[\"風柜故障報警\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "218",
        "name": "風盤故障報警",
        "sys": 2,
        "type": 1,
        "descr": "[\"風盤故障報警\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "219",
        "name": "風柜頻率超限",
        "sys": 2,
        "type": 3,
        "descr": "[\"風柜頻率超限\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "220",
        "name": "室內溫度不在合理范圍",
        "sys": 2,
        "type": 3,
        "descr": "[\"風柜回風溫度(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "221",
        "name": "末端水力不平衡",
        "sys": 2,
        "type": 2,
        "descr": "[\"營業時間內,風柜回風溫度(℃)\"]",
        "descParamType": 2,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "222",
        "name": "風柜頻率超限",
        "sys": 2,
        "type": 3,
        "descr": "[\"風柜頻率CAB_FRQ不在配置的上下限范圍\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 2
    }, {
        "id": "3",
        "name": "制冷機故障",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "4",
        "name": "制冷機冷凍側閥門啟動失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "5",
        "name": "制冷機冷凍側閥門停止失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "50",
        "name": "水力不平衡",
        "sys": 1,
        "type": 2,
        "descr": "[\"觸發冰爽模式\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "51",
        "name": "非變頻自動運行",
        "sys": 1,
        "type": 2,
        "descr": "[\"設備工頻啟停或頻率手動設定\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "52",
        "name": "全自動或一鍵啟動失敗",
        "sys": 1,
        "type": 2,
        "descr": "[\"全自動模式、一鍵啟動模式無法生效\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "53",
        "name": "過早開制冷站設備",
        "sys": 1,
        "type": 2,
        "descr": "[\"營業時間前過早開制冷站設備\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "54",
        "name": "停業后未及時停止制冷站設備",
        "sys": 1,
        "type": 2,
        "descr": "[\"停業后未及時停止制冷站設備\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "55",
        "name": "低溫未啟用全新風策略",
        "sys": 1,
        "type": 2,
        "descr": "[\"天氣溫度低而制冷站運行\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "56",
        "name": "制冷機加減載不合理",
        "sys": 1,
        "type": 2,
        "descr": "[\"手動模式下,執行制冷機的加減載\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "57",
        "name": "制冷機加減載失敗",
        "sys": 1,
        "type": 2,
        "descr": "[\"制冷機加減載失敗\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "58",
        "name": "冷水機組冷凍水旁通",
        "sys": 1,
        "type": 2,
        "descr": "[\"正常運行時段,運行狀態-停止狀態的冷機蒸發器進水溫度<1\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "59",
        "name": "冷水機組冷卻水旁通",
        "sys": 1,
        "type": 2,
        "descr": "[\"正常運行時段,運行狀態-停止狀態的冷機冷凝器進水溫度<1\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "6",
        "name": "制冷機冷卻側閥門啟動失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "60",
        "name": "制冷機頻繁啟停機",
        "sys": 1,
        "type": 2,
        "descr": "[\"設備啟停記錄中,同一設備的啟動和停止時間間隔<30min\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "61",
        "name": "冷卻泵頻繁啟停機",
        "sys": 1,
        "type": 2,
        "descr": "[\"設備啟停記錄中,同一設備的啟動和停止時間間隔<30min\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "62",
        "name": "冷凍泵頻繁啟停機",
        "sys": 1,
        "type": 2,
        "descr": "[\"設備啟停記錄中,同一設備的啟動和停止時間間隔<30min\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "63",
        "name": "冷卻塔頻繁啟停機",
        "sys": 1,
        "type": 2,
        "descr": "[\"設備啟停記錄中,同一設備的啟動和停止時間間隔<30min\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "64",
        "name": "未啟用控制模式",
        "sys": 1,
        "type": 2,
        "descr": "[\"冷凍泵運行頻率為手動設定或工頻運行\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "65",
        "name": "冷卻塔集水盤溢流",
        "sys": 1,
        "type": 2,
        "descr": "[\"冷卻塔液位COT1_WL>后臺配置中的液位上限\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "66",
        "name": "冷卻塔集水盤干涸",
        "sys": 1,
        "type": 2,
        "descr": "[\"冷卻塔液位COT1_WL<后臺配置中的液位下限\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "67",
        "name": "冷卻塔啟停機不及時",
        "sys": 1,
        "type": 2,
        "descr": "[\"冷卻塔在主機停機后5min以外關閉\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "68",
        "name": "冷卻塔未啟用控制模式",
        "sys": 1,
        "type": 2,
        "descr": "[\"冷卻塔運行頻率為手動設定或工頻運行\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "69",
        "name": "冷卻泵啟停機不及時",
        "sys": 1,
        "type": 2,
        "descr": "[\"冷卻泵在主機啟動前2min以外啟動,或冷卻泵在主機停機后5min以外關閉\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 1
    }, {
        "id": "7",
        "name": "制冷機冷卻側閥門停止失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"制冷機組設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "8",
        "name": "冷凍泵啟動失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷凍水泵設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }, {
        "id": "9",
        "name": "冷凍泵停止失敗",
        "sys": 1,
        "type": 1,
        "descr": "[\"冷凍水泵設備故障\"]",
        "descParamType": 0,
        "hasSuge": 1,
        "runTime": 0
    }],
    "code": 200,
    "msg": "成功",
    "errors": null
}
View Code

總共兩個介面,一個加載模板,一個加載資料,模板資料只第一次進入到頁面的時候呼叫,資料是每次打開彈窗都要呼叫,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/77923.html

標籤:JavaScript

上一篇:Vue 新增不參與打包的介面地址組態檔

下一篇:運用惰性洗掉和定時洗掉實作可過期的localStorage快取

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more