WorkSys

WorkSys

Did You Know?

WorkSys simplicity is the ultimate sophistication

leafleafleafDocy banner shape 01Docy banner shape 02Man illustrationFlower illustration

Typy Atribútov digitálnych entít

Estimated reading: 5 minutes 78 views

Sú situácie, keď potrebné aby sa vizuálny Atribút ešte viac priblížil k predmetu jeho použitia. Napríklad ak chcete prepínač, tak nechce Atribút kde meníte hodnotu na 0 alebo 1. Chcete prepínač (grafický komponent). Toto pri tak genericky navrhnutom systéme ako je WorkSys je vždy výzva. V tejto časti si ukážeme ako hravo vie tieto potreby riešiť  WorkSys. 

Presne za týmto účelom vznikol Parameter Atribútu rich_type, ktorý takýmto spôsobom dáva informáciu forntendu, ako má vizualizovať daný Atribút na web používateľskom rozhraní. 

Ako sme už písali v predchádzajúcej kapitole tak rozšírenie parametru value_type o ďalší parameter rich_type umožňuje zobraziť špeciálny prvok používateľského rozhrania alebo formátovanie. Paramater rich_type je voliteľný a dopĺňa sa len v prípade potreby.

Zoznam možnosti je nasledovný:  

color

Tento parameter sa definuje ak je value_type „string“. Hodnota Atribútu je potom hexadecimálne vyjadrenie farby (pozri Color HEX

				
					...
  "fill_color": {
    "type": "static",
    "unit": null,
    "trans": {
      "cs": "Barva výplně",
      "de": "Füllfarbe",
      "en": "Fill color",
      "sk": "Farba vyplnenia"
    },
    "rich_type": "color",
    "value_type": "string",
    "value_default": "#ff2a00"
  },
  ...
				
			

url

 

Tento parameter sa definuje ak je value_type „string“. Hodnota Atribútu je potom URL linka, ktorá je z detailu entitiy kliknuteľná ako hypertextový odkaz.

				
					...
  "atribute_url": {
    "type": "static",
    "unit": " ",
    "trans": {
      "cs": "Popis attribute_url v cs jazyku",
      "de": "Popis attribute_url v de jazyku",
      "en": "Popis attribute_url v en jazyku",
      "sk": "Popis attribute_url v sk jazyku"
    },
    "rich_type": "url",
    "value_type": "string",
    "value_default": "https://online.worksys.space/worksys/"
  }
...
				
			

switcher

 

Tento parameter sa definuje ak je value_type „bool“. Hodnota Atribútu je potom vizuálny prepínač.

				
					...
  "state_of_contactor": {
    "type": "telemetry",
    "unit": "",
    "trans": {
      "cz": "Stav stykače",
      "de": "Zustand des Schützes",
      "en": "State of contactor",
      "sk": "Stav stýkača"
    },
    "rich_type": "switcher",
    "value_type": "bool",
    "controllable": {
      "method": "set_command",
      "command": "switch",
      "maintenance_by": "local_energy"
    },
    "value_default": false
  },
  ...
				
			

datetime

Tento parameter sa definuje ak je value_type „number“. Transformuje časovú pečiatku z UNIX formátu (Epoch formát)  do formátu požadovaného používateľom. Výstup je formátovaný na napr.: „RRRR-MM-DDTHH:mm:ssZ“, používa metódu formátovania z moment.js

				
					...
  "maintenance_date": {
    "type": "static",
    "unit": null,
    "trans": {
      "cz": "Datum údržby",
      "de": "Wartungsdatum",
      "en": "Maintenance date",
      "sk": "Dátum údržby"
    },
    "rich_type": "datetime",
    "value_type": "number",
    "value_default": 0
  },
  ...
				
			

duration

Tento parameter sa definuje ak je value_type „number“. Transformuje výsledok rozdielu časov v UNIX formáte (Epoch formát) na zrozumiteľné vyjadrenie časového rozdielu napr. 12:43:18 .

Výstup je formátovaný na napr.: „RRRR-MM-DDTHH:mm:ssZ“, používa metódu moment.js duration extension)

				
					...
  "duration": {
    "type": "telemetry",
    "unit": null,
    "trans": {
      "cz": "Doba trvání",
      "de": "Dauer",
      "en": "Duration",
      "sk": "Trvanie"
    },
    "format": "HH:mm:ss",
    "rich_type": "duration",
    "value_type": "number",
    "value_default": 0
  },
...
				
			

Dalším parametrom format môžete nastaviť očakávaný formát výstupu.

switch_profile_select

Tento parameter sa definuje ak je value_type „string“. Zobrazuje výber na zmenu profilov prepínača. Komponent bez oprávnení nie je aktívny a nemôže byť ovládaný používateľom.

				
					...
  "profile_line": {
    "type": "telemetry",
    "unit": null,
    "rich_type": "switch_profile_select",
    "value_type": "number",
    "controllable": {
      "method": "set_profile",
      "maintenance_by": "local_setup"
    },
    "value_default": null
  },
...
				
			

dimming_profile_select

 

Tento parameter sa definuje ak je value_type „string“. Zobrazuje výber na zmenu profilov prepínača. Komponent bez oprávnení nie je aktívny a nemôže byť ovládaný používateľom.

				
					...
  "dimming_profile": {
    "type": "telemetry",
    "unit": null,
    "rich_type": "dimming_profile_select",
    "value_type": "string",
    "controllable": {
      "method": "set_profile",
      "maintenance_by": "local_setup"
    },
    "value_default": ""
  },
...
				
			

attribute_rules

Tento parameter obsahuje podmienky pre modul pravidiel. Pozri: RuleEngine . Najčastejšie sa používa pri nastavovaní farebnej vizualizácií v závislosti od hodnoty Atribútu. 

				
					...
  "status": {
    "type": "telemetry",
    "unit": null,
    "trans": {
      "en": "Status",
      "sk": "Stav",
      "de": "Status",
      "cz": "Stav"
    },
    "value_type": "string",
    "value_default": "virtual",
    "attribute_rules": {
      "fill_color": [
        {
          "value": "#adadad",
          "condition": "virtual"
        },
        {
          "value": "#1eff00",
          "condition": "OK"
        },
        {
          "value": "#ff2a00",
          "condition": "NOK"
        }
      ]
    }
...
				
			

Alebo napríklad pri interpretácii úrovne svietenia, kde sa farba určuje intervalom hodnôt.

				
					...
"dimming": {
    ...
    "attribute_rules": {
        "fill_color": [
            {
              "condition": "(,50]",
              "value": "#fcfeff"
            },
            {
              "condition": "(50,80]",
              "value": "#f0f7ff"
            },
            {
              "condition": "(80,)",
              "value": "#deebf7"
            }
        ]
    }
    ...
}
...
				
			

controllable

Tento parameter umožňuje k aktívnym autorizačným prvkom vložiť podmienky dodatočnej autorizácie potrebnej priamo v definícií profilu používateľa pre aktívne použitia daného grafického prvku.

				
					...
    "controllable": {
      "maintenance_by": "lighting",
      "method": "set_command",
      "command": "dimming"
    },
...
				
			

Ďalšími Parametrami „method“ a „command“ nastavujeme grafický prvok, ktorý má byť ovplyvnený. Podporované „command“ hodnoty sú:

  • dimming
  • switch

 

				
					...
    "controllable": {
      "maintenance_by": "lighting",
      "method": "set_command",
      "command": "switch"
    },
...
				
			

Rule Engine

Rule Engine nastaví atribút entity na základe definovaných pravidiel podmienok. Podmienkou môže byť pravidlo intervalu (napr.: (50,80]) alebo akákoľvek platná hodnota JSON na porovnanie (napr.: true, „notokstring“, 12, …)

  • ( <hodnota> , <hodnota> ) – otvorený interval
  • [ <hodnota> , <hodnota> ] – uzavretý interval (vrátane koncového bodu)

Zanechať komentár

CONTENTS