/// <summary>
        /// Initializes a new instance of the <see cref="ZipatoSensors"/> class.
        /// The list of UUIDs from the SettingsData is used to create the device instances.
        /// </summary>
        /// <param name="zipato"></param>
        public ZipatoSensors(IZipato zipato)
        {
            _zipato = zipato;

            foreach (var uuid in zipato.SensorsInfo.VirtualMeters)
            {
                VirtualMeters.Add(new VirtualMeter(zipato, uuid));
            }

            foreach (var uuid in zipato.SensorsInfo.ConsumptionMeters)
            {
                ConsumptionMeters.Add(new ConsumptionMeter(zipato, uuid));
            }

            foreach (var uuid in zipato.SensorsInfo.TemperatureSensors)
            {
                TemperatureSensors.Add(new TemperatureSensor(zipato, uuid));
            }

            foreach (var uuid in zipato.SensorsInfo.HumiditySensors)
            {
                HumiditySensors.Add(new HumiditySensor(zipato, uuid));
            }

            foreach (var uuid in zipato.SensorsInfo.LuminanceSensors)
            {
                LuminanceSensors.Add(new LuminanceSensor(zipato, uuid));
            }

            Status = _zipato?.Data?.Status ?? Uncertain;
        }
Beispiel #2
0
        public void Delete(PmsEteckContext context, bool save)
        {
            if (ConsumptionMeters != null)
            {
                ConsumptionMeters.ToList().ForEach(f => f.Delete(context, false));
            }

            if (Tickets != null)
            {
                foreach (Ticket ticket in Tickets)
                {
                    ticket.iAddressID           = null;
                    context.Entry(ticket).State = EntityState.Modified;
                }
            }

            context.Addresses.Remove(this);



            //if (save)
            // context.SaveChanges(_httpContextAccessor.HttpContext.User.Identity.GetUserID());
        }