123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- import axios from 'axios';
- export default class BackgroundData {
- TopPoint = [
- {
- pointName: "TotalPower",// 实时总功率
- pointTag: "JSFW.NX_GD_XXX_XX_XX_XXX_XXX_CI0135",
- value: 0
- }, {
- pointName: "DailyPowerGeneration",// 日发电量
- pointTag: "JSFW.NX_GD_XXX_XX_XX_XXX_XXX_CI0088",
- value: 0
- }, {
- pointName: "GridPower",// 上网电量
- pointTag: "JSFW.NX_GD_XXX_XX_XX_XXX_XXX_CI0136",
- value: 0
- }, {
- pointName: "MonthlyPowerGeneration",// 月发电量
- pointTag: "JSFW.NX_GD_XXX_XX_XX_XXX_XXX_CI0146",
- value: 0
- }, {
- pointName: "AnnualPowerGeneration",// 年发电量
- pointTag: "JSFW.NX_GD_XXX_XX_XX_XXX_XXX_CI0037",
- value: 0
- },
- ];
- constructor() {
- this.refreshData = this.refreshData.bind(this);
- this.onTPMessage = this.onTPMessage.bind(this);
- this.refreshTimer = setInterval(this.refreshData, 3000);
- }
- /* 数据刷新 */
- refreshData() {
- // http://192.168.10.18:8011/ts
- var val = '';
- for (var v in this.TopPoint) {
- val += this.TopPoint[v].pointTag + ',';
- }
- axios.get("http://192.168.10.18:8011/ts/latest" + "?keys=" + val)
- .then(this.onTPMessage)
- .catch(err =>
- console.log(err)
- );
- }
- onTPMessage(msg) {
- if (!msg.data) return;
- for (var v in this.TopPoint) {
- var val = this.TopPoint[v];
- val.value = msg.data[val.pointTag].doubleValue;
- }
- }
- /* 单例 */
- static getInstance() {
- if (!BackgroundData.instance) {
- BackgroundData.instance = new BackgroundData();
- }
- return BackgroundData.instance;
- }
- }
|