Example #1
0
        public static DTO.CuentaActiva CuentaActiva(Resources.CuentaActiva recCuentaActiva)
        {
            var cuentaActiva = new DTO.CuentaActiva();

            cuentaActiva.id          = recCuentaActiva.CuentaActivaId;
            cuentaActiva.numero      = recCuentaActiva.Cuenta.CuentaNumero;
            cuentaActiva.nombre      = recCuentaActiva.Cuenta.CuentaNombre;
            cuentaActiva.descripcion = recCuentaActiva.Cuenta.CuentaDescripcion;

            cuentaActiva.cuentaActivaId        = recCuentaActiva.CuentaActivaId;
            cuentaActiva.cuentaActivaFecha     = recCuentaActiva.CuentaActivaFecha.Date;
            cuentaActiva.cuentaActivaDiasPlazo = recCuentaActiva.CuentaActivaDiasPlazo.GetValueOrDefault();
            cuentaActiva.cuentaActivaTotal     = recCuentaActiva.CuentaActivaTotal.GetValueOrDefault();
            cuentaActiva.cuentaActivaEstado    = recCuentaActiva.CuentaActivaEstado.GetValueOrDefault();

            cuentaActiva.analista     = DTOBuilder.Usuario(recCuentaActiva.Usuario);
            cuentaActiva.validador    = DTOBuilder.Usuario(recCuentaActiva.Usuario2);
            cuentaActiva.certificador = DTOBuilder.Usuario(recCuentaActiva.Usuario1);
            cuentaActiva.empresa      = DTOBuilder.Empresa(recCuentaActiva.Cuenta.Empresa);

            cuentaActiva.rubro = DTOBuilder.Rubro(recCuentaActiva.Cuenta.Rubro);
            cuentaActiva.grupo = DTOBuilder.Grupo(recCuentaActiva.Cuenta.Grupo);

            return(cuentaActiva);
        }
Example #2
0
        public List <DTO.CuentaActiva> ObtenerCuentasActivasDesdeArchivo(string archivo)
        {
            List <DTO.CuentaActiva> cuentas = new List <DTO.CuentaActiva>();

            try
            {
                excel = new ExcelConnector(archivo);

                List <List <string> > lista = excel.getSheet("CUENTAS");

                foreach (List <string> fila in lista)
                {
                    //System.Diagnostics.Debug.WriteLine(string.Format("> {0}, {1}, {2}, {3}", fila[0], fila[1], fila[7], fila[8]));
                    DTO.CuentaActiva c = new DTO.CuentaActiva();
                    c.id                     = -1;
                    c.cuentaActivaId         = -1;
                    c.empresa                = new DTO.Empresa();
                    c.empresa.empresaId      = -1;
                    c.empresa.razonSocial    = fila[0];
                    c.numero                 = fila[1];
                    c.cuentaActivaTotal      = int.Parse(fila[2]);
                    c.analista               = new DTO.Usuario();
                    c.analista.usuarioId     = -1;
                    c.analista.nombre        = fila[3];
                    c.validador              = new DTO.Usuario();
                    c.validador.usuarioId    = -1;
                    c.validador.nombre       = fila[4];
                    c.certificador           = new DTO.Usuario();
                    c.certificador.nombre    = fila[5];
                    c.certificador.usuarioId = -1;
                    c.cuentaActivaDiasPlazo  = int.Parse(fila[6]);
                    c.cuentaActivaFecha      = Convert.ToDateTime(fila[7]);
                    //System.Diagnostics.Debug.WriteLine("--------" + fila[7]);
                    cuentas.Add(c);
                }
                return(cuentas);
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine("EXCEPCION (excel, ObtenerCuentasAsignadas): " + ex.Message);
                return(new List <DTO.CuentaActiva>());
            }
        }
        public DTO.CuentaActiva IngresarActualizarAsignacionCuenta(DTO.CuentaActiva cuenta, int usuarioId)
        {
            bool valid = true;
            Resources.Empresa empresa = db.Empresa.FirstOrDefault(e => e.EmpresaRazonSocial == cuenta.empresa.razonSocial);
            if (empresa != null)
            {
                cuenta.empresa.empresaId = empresa.EmpresaId;

                var cuentas = db.Cuenta.FirstOrDefault(c => c.CuentaNumero == cuenta.numero && c.Empresa.EmpresaId == empresa.EmpresaId);
                if (cuentas != null)
                {
                    cuenta.id = cuentas.CuentaId;
                }
                else
                {
                    valid = false;
                }
            }
            else
            {
                valid = false;
            }
            Resources.Usuario analista = db.Usuario.FirstOrDefault(u => u.UsuarioNombre == cuenta.analista.nombre);
            if (analista != null)
            {
                cuenta.analista.usuarioId = analista.UsuarioId;
            }
            else
            {
                valid = false;
            }
            Resources.Usuario validador = db.Usuario.FirstOrDefault(u => u.UsuarioNombre == cuenta.validador.nombre);
            if (validador != null)
            {
                cuenta.validador.usuarioId = validador.UsuarioId;
            }
            else
            {
                valid = false;
            }
            Resources.Usuario certificador = db.Usuario.FirstOrDefault(u => u.UsuarioNombre == cuenta.certificador.nombre);
            if (certificador != null)
            {
                cuenta.certificador.usuarioId = certificador.UsuarioId;
            }
            else
            {
                valid = false;
            }

            if (valid)
            {
                Resources.CuentaActiva cuentaDB = db.CuentaActiva.FirstOrDefault(c =>
                    c.CuentaActivaId == cuenta.id
                    && c.Cuenta.Empresa.EmpresaRazonSocial == c.Cuenta.Empresa.EmpresaRazonSocial
                    && DbFunctions.TruncateTime(c.CuentaActivaFecha).Value.Year == cuenta.cuentaActivaFecha.Year
                    && DbFunctions.TruncateTime(c.CuentaActivaFecha).Value.Month == cuenta.cuentaActivaFecha.Month
                );
                if (cuentaDB == null)
                {
                    DateTime fecha = new DateTime(cuenta.cuentaActivaFecha.Year, cuenta.cuentaActivaFecha.Month, 1);
                    cuenta.cuentaActivaId = (int)db.IngresarCuentaActiva(cuenta.id, fecha, cuenta.cuentaActivaTotal, cuenta.analista.usuarioId, cuenta.validador.usuarioId, cuenta.certificador.usuarioId, cuenta.cuentaActivaDiasPlazo, usuarioId);
                    cuenta.insertUpdate = true;
                }
                else
                {
                    DateTime fecha = new DateTime(cuenta.cuentaActivaFecha.Year, cuenta.cuentaActivaFecha.Month, 1);
                    db.AsignarCuentaActiva(cuenta.id, fecha, cuenta.cuentaActivaTotal, cuenta.analista.usuarioId, cuenta.validador.usuarioId, cuenta.certificador.usuarioId, cuenta.cuentaActivaDiasPlazo);
                    cuenta.cuentaActivaId = cuentaDB.Cuenta.CuentaId;
                    cuenta.insertUpdate = false;
                }
            }
            return cuenta;
        }