Esempio n. 1
0
        /// <summary>
        /// Obtener dispositivos serializables
        /// </summary>
        public SerializableDevices GetSerializableDevices()
        {
            if (DeviceManager.Instance == null)
            {
                return(null);
            }

            ReadOnlyCollection <Device> devices = DeviceManager.Instance.Devices;

            SerializableDevices sDevices = new SerializableDevices();

            foreach (Device dev in devices)
            {
                if (dev.Identity != null && dev.Status != null)
                {
                    DeviceConfiguration config = m_configRepo.GetConfiguration(dev.Identity.SerialNumber);
                    DeviceTranslation   trans  = m_transRepo.GetTranslation(dev.Identity.SerialNumber);
                    SerializableDevice  device = new SerializableDevice(dev);
                    if (config != null)
                    {
                        device.Configurations = config.Configuration;
                    }
                    if (trans != null)
                    {
                        device.Translations = trans;
                    }
                    sDevices.Devices.Add(device);
                }
            }

            return(sDevices);
        }
        /// <summary>
        /// Guardar traducción de dispositivo
        /// </summary>
        /// <param name="device">Dispositivo</param>
        /// <param name="translation">Traducción</param>
        public bool SaveTranslation(Device device, DeviceTranslation translation)
        {
            if (device.Identity == null)
            {
                return(false);
            }

            return(SaveTranslation(device.Identity.SerialNumber, translation));
        }
 /// <summary>
 /// Al recibir una solicitud de traducción del usuario
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void User_OnTranslateDevice(object sender, DeviceTranslation e)
 {
     if (m_transRepo.SaveTranslation(e.SerialNumber, e))
     {
         Debug.WriteLine(this, "Traducción almacenada en base de datos", VerbosityLevel.Debug);
     }
     else
     {
         Debug.WriteLine(this, "No se pudo almacenar la configuración en base de datos", VerbosityLevel.Warning);
     }
 }
        /// <summary>
        /// Guardar configuración
        /// </summary>
        /// <param name="serialNumber">Numero de Serie</param>
        /// <param name="translation">Traducción</param>
        public bool SaveTranslation(string serialNumber, DeviceTranslation translation)
        {
            DeleteTranslation(serialNumber);

            m_context.SerializedDeviceTranslations.Add(new SerializedDeviceTranslation
            {
                DeviceSerialNumberId  = serialNumber,
                SerializedTranslation = JsonConvert.SerializeObject(translation)
            });

            return(m_context.SaveChanges() > 0);
        }