Beispiel #1
0
 /// <summary>
 /// Procedimiento que realiza el alta, modificación y baja de instalación
 /// </summary>
 /// <param name="instalacion"></param>
 /// <param name="tinOpcion"></param>
 /// <returns></returns>
 public Resultado setDatosInstalacion(DatosInstalacion instalacion, short tinOpcion)
 {
     Resultado result = new Resultado();
     try
     {
         using (GastosDataContext dc = new GastosDataContext(Helper.ConnectionString()))
         {
             var query = from item in dc.stp_setDatosInstalacion(instalacion.intCotizacionID, instalacion.intDetCotizaID, instalacion.intDatosInstalacionID, instalacion.sintInstalacionID,
                 instalacion.intElementoID, instalacion.intCantidad, instalacion.datFecha, instalacion.bitActivo, (byte)tinOpcion)
                         select new Resultado
                         {
                             vchDescripcion = item.vchDescripcion,
                             vchResultado = item.vchResultado
                         };
             result = query.First();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
     return result;
 }
Beispiel #2
0
        /// <summary>
        /// Procedimiento que realiza el alta, modificación y baja de instalación
        /// </summary>
        /// <param name="instalacion"></param>
        /// <param name="tinOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosInstalacion(List <DatosInstalacion> lstInstalacion, short tinOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                foreach (DatosInstalacion instalacion in lstInstalacion)
                {
                    // Procedemos a llenar la entidad de la cotización
                    Cotizacion detCotizacion = new Cotizacion();
                    // Almacenamos el siguiente detalle para instalación
                    detCotizacion = new Cotizacion();
                    detCotizacion.intDetCotizaID  = instalacion.intDetCotizaID;
                    detCotizacion.intCotizacionID = instalacion.intCotizacionID;
                    detCotizacion.intElementoID   = 12; // ID correspondiente a instalacion
                    detCotizacion.intPartida      = 0;
                    detCotizacion.intCantidad     = instalacion.intCantidad;
                    detCotizacion.decMonto        = 0;
                    detCotizacion.decSubtotal     = 0;

                    // Realizamos el alta de la cotización
                    result = (new CotizacionLogic()).setDetCotizacion(detCotizacion, (short)((instalacion.intDetCotizaID == 0 || instalacion.intDetCotizaID == null) ? 1 : 2));

                    if (result.vchResultado != "NOK")
                    {
                        // Asignamos el ID del detalle
                        instalacion.intDetCotizaID = Convert.ToInt32(result.vchResultado);
                        instalacion.intElementoID  = 12;

                        //Realizamos la búsqueda del gastos
                        List <DatosInstalacion> lstBusinstalacion = GastosDA.ListarDatosInstalacion((int)instalacion.intCotizacionID, (short)instalacion.sintInstalacionID);
                        // Revisamos si la lista contiene datos
                        if (lstBusinstalacion.Count > 0)
                        {
                            DatosInstalacion instalacionResult = new DatosInstalacion();
                            // En caso de exisitr resultado, asignamos los datos de la
                            // búsqueda a la entidad a almacenar
                            instalacionResult = lstBusinstalacion.First();
                            instalacion.intDatosInstalacionID = instalacionResult.intDatosInstalacionID;
                            instalacion.sintInstalacionID     = instalacion.sintInstalacionID;
                            // Almacenamos los datos de la instalación
                            result = GastosDA.setDatosInstalacion(instalacion, 2);
                        }
                        else
                        {
                            // Almacenamos los datos de la instalación
                            result = GastosDA.setDatosInstalacion(instalacion, 1);
                        }
                    }
                    else // En caso de existir un error, rompemos el ciclo
                    {
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }