2026_08_31

This commit is contained in:
marco committed 2026-08-31 16:19:06 +02:00
commit 73015386e9
2320 files changed
+80291

No files matched your search

+18
View File
@@ -0,0 +1,18 @@
export class AnlageCreateDto {
name!: string;
anlageNr!: number;
}
export class AnlageUpdateDto {
name?: string;
anlageNr?: number;
selected?:boolean;
}
export class AnlageDto {
id!: string;
name!: string;
anlageNr!: number;
selected!: boolean;
}
+49
View File
@@ -0,0 +1,49 @@
export enum ComponentTypes {
UNKNOWN = "unknown",
ANTRIEB = "Antrieb",
FREQUENZUMRICHTER = "Frequenzumrichter",
REPARATUR_SCHALTER = "Reparaturschalter",
LIMIT_SWITCH = "Endschalter",
SCHIEFLAUF = "Schieflaufwächter",
REISSLEINE = "Reißleine",
DREHZALHL = "Drehzahl",
VORORT = "Vorortbedienung",
UEBERWACHUNG = "Überwachung",
}
export class ComponentOfUnitDto {
unitId?:string;
component?:ComponentResponseDto;
}
export class ComponentResponseDto {
id?: string
name!: string;
prefix?: string;
postfix?: string;
index?:number;
type!: ComponentTypes;
signalIds!: string[];
properties?: Record<string, unknown>;
}
export class ComponentUpdateDto {
name?: string;
prefix?: string;
postfix?: string;
index?:number;
type?: ComponentTypes;
signalIds?: string[];
properties?: Record<string, unknown>;
}
export class ComponentCreateDto {
name!: string;
prefix?: string;
postfix?: string;
index?:number;
type!: ComponentTypes;
signalIds?: string[];
properties?: Record<string, unknown>;
}
+25
View File
@@ -0,0 +1,25 @@
import { ObjectId } from "mongoose";
export class GroupResponseDto {
id!: string;
name!: string;
nr!: string;
container!: boolean;
parentId?: string;
}
export class GroupCreateDto {
name!: string;
nr!: string;
container!: boolean;
parentId?: string;
}
export class GroupUpdateDto {
name?: string;
nr?: string;
container?: boolean;
parentId?: string;
}
+64
View File
@@ -0,0 +1,64 @@
export enum IOType {
DIGITAL_INPUT = 'DigitalInput',
DIGITAL_OUTPUT = 'DigitalOutput',
ANALOG_INPUT = 'AnalogInput',
ANALOG_OUTPUT = 'AnalogOutput',
}
export class IoResponseDto {
id!:string;
anlageId!: string;
type!: IOType;
address!: number;
adrBit?: number;
plcId?: string;
moduleId?: string;
channel?: number;
text?: string;
seite?: number;
seiteName?: string;
excelData?: string;
plcData?: string;
}
export class IoCreateDto {
//anlageId!: string;
type!: IOType;
address!: number;
adrBit?: number;
plcId?: string;
moduleId?: string;
channel?: number;
text?: string;
seite?: number;
seiteName?: string;
excelData?: string;
plcData?: string;
}
export class IoUpdateDto {
anlageId?: string;
type?: IOType;
address?: number;
adrBit?: number;
plcId?: string;
moduleId?: string;
channel?: number;
text?: string;
seite?: number;
seiteName?: string;
excelData?: string;
plcData?: string;
}
//--- n.v.
export class PlcDto {
name!: string;
type!: string;
ipAddress?: string;
description?: string;
}
+37
View File
@@ -0,0 +1,37 @@
export enum SignalType {
DIGITAL_INPUT = 'DigitalInput',
DIGITAL_OUTPUT = 'DigitalOutput',
ANALOG_INPUT = 'AnalogInput',
ANALOG_OUTPUT = 'AnalogOutput',
}
export class SignalResponseDto {
id!: string;
anlageId!: string;
name!: string;
type!: SignalType;
description?: string;
ioId?: string;
componentId?: string;
}
export class SignalCreateDto {
// anlageId?: string;
name!: string;
type!: SignalType;
description?: string;
ioId?: string;
componentId?: string;
}
export class SignalUpdateDto {
anlageId!: string;
name!: string;
type!: SignalType;
description?: string;
ioId?: string;
componentId?: string;
}
+56
View File
@@ -0,0 +1,56 @@
import { ObjectId } from "mongoose";
import { ComponentResponseDto } from "./components";
export enum UnitTypeDto {
BAND = 'Band',
BRECHER = 'Brecher',
WEICHE = 'Weiche',
SIEB = 'Sieb',
}
//--- Unit
export class UnitResponseDto {
id!: string;
name!: string;
anlageId?: string;
bmk?: string;
prefix?: string;
info?: string;
type!: UnitTypeDto;
groupId!: string;
components!: ComponentResponseDto[];
}
export class UnitCreateDto {
name!: string;
anlageId?: string;
bmk!: string;
prefix!: string;
info!: string;
type!: UnitTypeDto;
groupId!: string;
components!: ComponentResponseDto[];
}
export class UnitUpdateBaseDto {
name?: string;
anlageId?: string;
bmk!: string;
prefix!: string;
info!: string;
type?: UnitTypeDto;
groupId?: string;
components?: ComponentResponseDto[];
}
export class UnitUpdateComponentDto {
name?: string;
type?: UnitTypeDto;
groupId?: string;
}
+32
View File
@@ -0,0 +1,32 @@
import { Types } from "mongoose";
export class DrawDto {
name!:string;
svg!:string;
raster!:number;
scale!:number;
height!: number;
length!:number;
px_height!:number;
px_width!:number;
offset_x!:number;
offset_y!:number;
}
export class DrawShapeOptionenDto{
scale?:number;
raster?:number;
angle?:number;
width?:number;
height?:number;
fullSvg?:boolean;
xaml?:boolean;
variant?:string;
state?:"inactive" | "active" | "error";
colorInactive?:string;
colorActive?:string;
colorError?:string;
}
+44
View File
@@ -0,0 +1,44 @@
import { Types } from "mongoose";
import { PeripherieDto } from "./peripherie.dto";
import { GroupSubElementDto } from "./group.dto";
export class ElementDto {
id!:Types.ObjectId;
anlageId!: Types.ObjectId;
name!:string;
prefix?: string;
funcTxt?: string;
excelNr!:number;
excelListe!:"Aggregate" | "Sensoren" | "Analogwerte" | "AnlagenVisu";
type!: "unbekannt" |"Motor" | "Ventil" | "Analog" | "Sensor";
options!:Record<string,boolean|string|number>;
group!:GroupSubElementDto;
}
export class ElementCreateDto {
anlageId!: Types.ObjectId;
groupId?: Types.ObjectId;
name!:string;
prefix?: string;
funcTxt?: string;
excelNr?:number;
excelListe?:"Aggregate" | "Sensoren" | "Analogwerte"
type!: "unbekannt" |"Motor" | "Ventil" | "Analog" | "Sensor"
options?:Record<string,boolean|string|number>
}
export class ElementUpdateDto {
anlageId?: Types.ObjectId;
groupId?: Types.ObjectId;
name?:string;
prefix?: string;
funcTxt?: string;
excelNr?:number;
excelListe?:"Aggregate" | "Sensoren" | "Analogwerte"
type?: "unbekannt" |"Motor" | "Ventil" | "Analog" | "Sensor"
options?:Record<string,boolean|string|number>
}
+62
View File
@@ -0,0 +1,62 @@
import { Types } from "mongoose";
import { ElementDto } from "./element.dto";
export class GroupCreateDto {
anlageId!: Types.ObjectId;
name!: string;
type!: string;
nr!: string;
funcTxt?:string;
displayName?: string;
ort?: string;
info?: string;
options?:Record<string,boolean|string>
}
export class GroupUpdateDto {
name?: string;
anlageId?: Types.ObjectId;
type?: string;
nr?: string;
displayName?: string;
typ?: string;
info?: string;
options?:Record<string,boolean|string>
}
export class GroupDto {
id!: string;
anlageId!:string;
name!: string;
type!: string;
nr!: string;
funcTxt?:string;
displayName?: string;
ort?: string;
info?: string;
options?:Record<string,boolean|string>
elements!:ElementDto[]
}
export class GroupSubElementDto {
id!: string;
name!: string;
type!: string;
nr!: string;
funcTxt?:string;
displayName?: string;
ort?: string;
info?: string;
options?:Record<string,boolean|string>
}
export class GroupFilterOptionenDto{
motoren?:number;
ventile?:number;
}
+36
View File
@@ -0,0 +1,36 @@
import { Types } from "mongoose";
export class LogNotetDto {
id:Types.ObjectId;
anlageId: Types.ObjectId;
groupId?: Types.ObjectId;
elementId?: Types.ObjectId;
peripherieId?: Types.ObjectId;
topic: string;
content: string;
status: "Ok" | "Offen" | "Info"
createdAt: Date;
}
export class LogNotetCreateDto {
anlageId: Types.ObjectId;
groupId?: Types.ObjectId;
elementId?: Types.ObjectId;
peripherieId?: Types.ObjectId;
topic: string;
content: string;
status: "ok" | "offen" | "info"
createdAt: Date;
}
export class LogNotetUpdateDto {
anlageId?: Types.ObjectId;
groupId?: Types.ObjectId;
elementId?: Types.ObjectId;
peripherieId?: Types.ObjectId;
topic?: string;
content?: string;
status?: "ok" | "offen" | "info"
createdAt?: Date;
}
+88
View File
@@ -0,0 +1,88 @@
import { Types } from "mongoose";
import { ElementDto } from "./element.dto";
import { GroupDto } from "./group.dto";
export class ExcelImportDataDto {
spsKarte!:string;
spsAdr!:string;
functionText!:string;
seite!:number;
seiteName!:string;
}
export class TcImportDataDto {
FunctionText!:string;
Adr!:string;
kommentar!:string;
}
export class PeripherieCreateDto {
anlageId!: Types.ObjectId;
groupId?: Types.ObjectId;
elementId?: Types.ObjectId;
adrType!: string;
adrByte!: number;
adrBit!: number;
name?: string;
karte?: string;
text?: string;
seite?: number;
seiteName?: string;
functionTxt?: string;
genSymbol?: string;
excelData?:ExcelImportDataDto;
twinCatData?:TcImportDataDto;
}
export class PeripherieUpdateDto {
anlageId?: Types.ObjectId;
adrType?: string;
adrByte?: number;
adrBit?: number;
groupId?: Types.ObjectId;
elementId?: Types.ObjectId;
name?: string;
karte?: string;
text?: string;
seite?: number;
seiteName?: string;
symbol?: string;
functionTxt?: string;
excelData?:ExcelImportDataDto;
twinCatData?:TcImportDataDto;
}
export class PeripherieDto {
id!: string;
anlageId!: Types.ObjectId;
adrType!: string;
adrByte!: number;
adrBit!: number;
groupId?: Types.ObjectId;
elementId?: Types.ObjectId;
name?: string;
karte?: string;
text?: string;
seite?: string;
seiteName?: string;
symbol?: string;
functionTxt?: string;
element!:ElementDto;
group!:GroupDto;
excelData?:ExcelImportDataDto;
twinCatData?:TcImportDataDto;
}
export class PeripherieFilterOptionenDto{
id?:string;
groupId?:string;
elementId?:string;
adrByte?:number;
}
+35
View File
@@ -0,0 +1,35 @@
export class ProConXamlDataDto {
state!: string;
id!: string;
xaml!: string;
}
export class ProConViewDto {
id!:number
viewType!:string;
viewIndex!:number;
width!: number;
height!: number;
posX!: number;
posY!: number;
zIndex!: number;
show!: boolean;
views!: ProConXamlDataDto[];
}
export class ProConAggVisuDto {
anlage!: string;
aggNr!: number;
bezeichnung!: string;
viewName!: string;
bmk!: string;
anzMotoren!: number;
dzUeVorhanden!: boolean;
visuElements!: ProConViewDto[];
}
+51
View File
@@ -0,0 +1,51 @@
export class ProConAnzeigeDto {
Id!: number;
DatenNummer!: number;
Text!: string;
Skalierung!: number;
Einheit!: string;
Max!: number;
Min!: number;
StatistikTyp!: number;
}
export class ProConAnzeigeUpdateDto {
DatenNummer?: number;
Text?: string;
Skalierung?: number;
Einheit?: string;
Max?: number;
Min?: number;
StatistikTyp?: number;
}
export class ProConAnzeigeVisuElementDto {
Id!: number;
Height!: number;
Width!: number;
PositionX!: number;
PositionY!: number;
PositionZ!: number;
Show!: boolean;
Discriminator!: string;
AnzeigeParameterId!: number | undefined;
State!: number | undefined;
ViewId!: string | undefined;
}
/*
State
0 Ein!
1 Aus
2 Permanent
*/
+31
View File
@@ -0,0 +1,31 @@
export class ProConMeldungDto {
Id!: number;
Bezeichnung!: string;
Relevant!: boolean;
AggregateId!: number;
Typ!: number;
Deaktiviert!: boolean;
SelbstQuittierend!: boolean;
BenutzerId!: number;
GeaendertAm!: Date;
IstWarnung!: boolean;
}
export class ProConAnzeigeUpdateDto {
Bezeichnung?: string;
Relevant?: boolean;
AggregateId?: number;
Typ?: number;
Deaktiviert?: boolean;
SelbstQuittierend?: boolean;
BenutzerId?: number;
GeaendertAm?: Date;
IstWarnung?: boolean;
}
+55
View File
@@ -0,0 +1,55 @@
export class ProConSensorDto {
Id!: number;
Typ!: number;
DatenNummer!: number;
Text!: string;
Einheit!: string;
Min!: number;
Max!: number;
StatistikTyp!: number;
}
export class ProConSensorenUpdateDto {
Typ?: number;
DatenNummer?: number;
Text?: string;
Einheit?: string;
Min?: number;
Max?: number;
StatistikTyp?: number;
}
export class ProConSensorVisuElementDto {
Id!: number;
Width!: number;
Height!: number;
PositionX!: number;
PositionY!: number;
PositionZ!: number;
Show!: boolean;
Discriminator!: string;
MainView!: boolean;
SensorId!: number | undefined;
SensorVisualisierung_State!: number | undefined;
SensorVisualisierung_ViewId!: number | undefined;
}
/*
Analog
SensorVisualisierung_State
2 Hauptview
Einheit = % -> Kasten mit Prozent
sonst -> Text
3 Min
4 Min_Min
5 Max
6 Max_Max
Digital
SensorVisualisierung_State
0 Ein!
1 Aus
*/
+34
View File
@@ -0,0 +1,34 @@
export class ProConTextDto {
Id!: number;
Height!: number;
PositionX!: number;
PositionY!: number;
Width!: number;
Show!: boolean;
Discriminator!: string;
PositionZ!: number;
FontFamily!: string | undefined;
FontSize!: number | undefined;
FontWeight!: number | undefined;
Hintergrund!: string | undefined;
Nummer!: number | undefined;
TexteVisualisierung_Text!: string | undefined;
TextFarbe!: string | undefined;
}
export class ProConTextUpdateDto {
Height?: number;
PositionX?: number;
PositionY?: number;
Width?: number;
Show?: boolean;
Discriminator?: string;
PositionZ?: number;
FontFamily?: string;
FontSize?: number;
FontWeight?: number;
Hintergrund?: string;
Nummer?: number;
TexteVisualisierung_Text?: string;
TextFarbe?: string;
}
+11
View File
@@ -0,0 +1,11 @@
export class UserCreateDto {
name:string;
email:string
}
export class UserDto {
_id:string;
name:string;
email:string
}
+106
View File
@@ -0,0 +1,106 @@
import { GroupDto } from "./group.dto";
export class PointDto {
x!: number;
y!: number;
}
export class LineDto {
bezeichnung!: string;
offsetX!: number;
offsetY!: number;
points!: PointDto[];
colorActive!: string;
colorInactive!: string;
colorError!: string;
px_width!: number;
px_height!: number;
translateOffsetX!: number;
translateOffsetY!: number;
svg?:string
}
export class VisuElementPositionDto{
x!:number;
y!:number;
width!:number;
height!:number;
}
export class AggVisuElementeDto{
posMotor!:VisuElementPositionDto
posAnfahrwarnung!:VisuElementPositionDto
posWarnung!:VisuElementPositionDto
posBetriebsart!:VisuElementPositionDto
posText!:VisuElementPositionDto
posFuIst?:VisuElementPositionDto
}
export class VisuElementDto {
id!: string;
anlageId!: string;
groupId!: string;
elementId?: string;
name!: string;
svgTypeName!: string;
svgTypeVariant?:string;
svg!: string;
height?: number;
width?: number;
offset_x?: number;
offset_y?: number;
raster?: number;
px_width?: number;
px_height?: number;
angle?: number;
scale?: number;
posX!: number;
posY!: number;
lines?:LineDto[];
group!: GroupDto;
posAggElemente?:AggVisuElementeDto
}
export class VisuElementCreateDto {
anlageId!: string;
name!: string;
groupId!: string;
elementId?: string;
svgTypeName!: string;
svgTypeVariant?:string;
scale?: number;
raster?: number;
width?: number;
height?: number;
angle?: number;
posX!: number;
posY!: number;
lines?:LineDto[];
posAggElemente?:AggVisuElementeDto
}
export class VisuElementUpdateDto {
anlageId?: string;
name?: string;
groupId?: string;
elementId?: string;
svgTypeName?: string;
svgTypeVariant?:string;
offset_x?: number;
offset_y?: number;
raster?: number;
px_length?: number;
px_height?: number;
angle?: number;
scale?: number;
height?: number;
width?: number;
posX?: number;
posY?: number;
lines?:LineDto[];
posAggElemente?:AggVisuElementeDto
}