コード例 #1
0
        /// <summary>
        /// Actualiza el modelo en caso que el query fuese actualizado de manera correcta
        /// </summary>
        /// <param name="input">Los datos de entrada que se usarón para actualizar</param>
        public void UpdateFields(KeyValuePair <string, object>[] input)
        {
            foreach (var val in input)
            {
                switch (val.Key)
                {
                case "potencia":
                    this.Potencia = (Potencia)val.Value;
                    break;

                case "comp_count":
                    this.Count = (int)val.Value;
                    break;

                case "cir_id":
                    this.Circuito.Componentes.Remove(this.Id);
                    if (this.Circuito.Componentes.Count == 0)
                    {
                        TabalimApp.CurrentTablero.Circuitos.Remove(this.Circuito.ToString());
                    }
                    this.Circuito = (Circuito)val.Value;
                    this.Circuito.Componentes.Add(this.Id, this);
                    break;
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Obtiene los campos de actualización de un objeto
        /// </summary>
        /// <param name="input">La entrada del campo actualizar</param>
        /// <returns>
        /// El campo actualizar
        /// </returns>
        public UpdateField PickUpdateFields(KeyValuePair <string, object> input)
        {
            UpdateField value;

            switch (input.Key)
            {
            case "cir_id":
                Circuito cto = (Circuito)input.Value;
                value = input.CreateFieldAsNumber(this.TableName, cto.Id);
                break;

            case "comp_count":
                value = input.CreateFieldAsNumber(this.TableName, input.Value);
                break;

            case "potencia":
                Potencia val = (Potencia)input.Value;
                value = input.CreateFieldAsNumber(this.TableName, this is Motor ? val.HP : val.Watts);
                break;

            default:
                value = null;
                break;
            }
            return(value);
        }
コード例 #3
0
        /// <summary>
        /// Obtiene los campos de actualización de un objeto
        /// </summary>
        /// <param name="input">La entrada del campo actualizar</param>
        /// <returns>
        /// El campo actualizar
        /// </returns>
        public UpdateField PickUpdateFields(KeyValuePair <string, object> input)
        {
            UpdateField value;

            switch (input.Key)
            {
            case "potencia":
                Potencia val = (Potencia)input.Value;
                value = input.CreateFieldAsNumber(this.TableName, val.HP);
                break;

            case "fases":
                value = input.CreateFieldAsNumber(this.TableName, input.Value);
                break;

            case "hilos":
                value = input.CreateFieldAsNumber(this.TableName, input.Value);
                break;

            case "tension":
                Tension tval = (Tension)input.Value;
                value = input.CreateFieldAsNumber(this.TableName, tval.Value);
                break;

            default:
                value = null;
                break;
            }
            return(value);
        }
コード例 #4
0
 /// <summary>
 /// Realiza el parsing de un elemento seleccionado en SQLite
 /// </summary>
 /// <param name="result">El resultado seleccionado.</param>
 public void Parse(SelectionResult[] result)
 {
     try
     {
         this.Id = (int)result.GetValue <long>(this.PrimaryKey);
         int cirId = (int)result.GetValue <long>("cir_id");
         if (TabalimApp.CurrentTablero != null)
         {
             this.Circuito = TabalimApp.CurrentTablero.Circuitos.Values.FirstOrDefault(x => x.Id == cirId);
         }
         this.ImageIndex = result.GetInteger("img_index");
         double potencia = result.GetValue <double>("potencia");
         this.Potencia = new Potencia(potencia, this.ImageIndex.IsComponent(ComponentType.Motor));
         this.Count    = result.GetInteger("comp_count");
     }
     catch (Exception exc)
     {
         throw exc;
     }
 }
コード例 #5
0
 /// <summary>
 /// Inicializa una nueva instancia de la clase <see cref="Alumbrado"/>.
 /// </summary>
 /// <param name="potencia">Potencia en watts.</param>
 public Componente(double potencia, bool ismotor = false)
 {
     this.Potencia = new Potencia(potencia, ismotor);
     this.Id       = -1;
 }