Пример #1
0
        private void InsertaFormaPago(SolicitudPago obj,
                                      int intSolicitud,
                                      int idUsuWeb,
                                      string strNombrePagina,
                                      int idLang,
                                      int idWeb,
                                      OracleConnection connection,
                                      OracleTransaction objTx)
        {
            var nmOracle = new Conexion();

            nmOracle.SP_Command(nmOracle.Esquema + ".PKG_SOLICITUD.SP_SOL_PAGO_INSERTA", nmOracle.strStoredProcedure);

            nmOracle.AgregarParametro("pNumIdNewSol", intSolicitud, OracleDbType.Double, ParameterDirection.Input);
            nmOracle.AgregarParametro("pNumIdPaisTarjeta", obj.idPaisTarjeta, OracleDbType.Int32, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarIdDocumento", obj.idDocumento, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarPagoTipo", obj.pagoTipo, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarPagoCash", obj.pagoCash, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarPagoTarjeta", obj.pagoTarjeta, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarPagoTipoTarjeta", obj.pagoTipoTarjeta, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNroTarjeta", obj.nroTarjeta, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarTitularTarjeta", obj.titularTarjeta, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNroDocumento", obj.nroDocumento, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarBancoTitularTarjeta", obj.bancoTitularTarjeta, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pDatFechVenTarjeta", obj.fechVenTarjeta, OracleDbType.Date, ParameterDirection.Input);
            nmOracle.AgregarParametro("pNumIdOficina", obj.idiOfi, OracleDbType.Int16, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNumCuenta", obj.nroCuenta, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNumOperacion", obj.nroOperacion, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarMonto", obj.monto, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pDatFechDeposito", obj.fechDeposito, OracleDbType.Date, ParameterDirection.Input);
            nmOracle.AgregarParametro("pNumIdOficina2", obj.idiOfi2, OracleDbType.Int32, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNumCuenta2", obj.nroCuenta2, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNumOperacion2", obj.nroOperacion2, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarMonto2", obj.monto2, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pDatFechDeposito2", obj.fechDeposito2, OracleDbType.Date, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNomBanco", obj.strNombreBanco, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNomBanco2", obj.strNombreBanco, OracleDbType.Varchar2, ParameterDirection.Input);
            //código seguridad de la tarjeta
            nmOracle.AgregarParametro("pVarPagCodSegTarj_in", obj.strCodSeguridad, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNomSucBanco_in", obj.strSucursalBanco, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarReferencia_in", obj.strReferenciaDeposito, OracleDbType.Varchar2, ParameterDirection.Input);
            nmOracle.AgregarParametro("pVarNomImagen_in", obj.strNombreArchivo, OracleDbType.Varchar2, ParameterDirection.Input);

            nmOracle.Transaction(objTx);
            nmOracle._ExecuteNonQuery(false);

            Inserta(idUsuWeb, strNombrePagina, string.Empty, idLang, idWeb, nmOracle.objSBQuery, connection, objTx);
        }
Пример #2
0
        //Utilizado para mostrar la cabecera de la liquidación
        public async Task <DetallePlanPagoDto> ObtenerDetallePlanPago(int planPagoId)
        {
            var listaCdp = (from c in _context.CDP
                            join pp in _context.PlanPago on c.Crp equals pp.Crp
                            where pp.PlanPagoId == planPagoId
                            where c.Instancia == (int)TipoDocumento.Compromiso
                            where pp.PciId == c.PciId
                            select new CDPDto
            {
                Crp = c.Crp,
                Cdp = c.Cdp,
                PciId = c.PciId.Value,
                Detalle4 = c.Detalle4,
                Detalle6 = c.Detalle6,
                Detalle7 = c.Detalle7,
                Fecha = c.Fecha,
                Operacion = c.Operacion,
                SaldoActual = c.SaldoActual,
                ValorTotal = c.ValorTotal,
            });


            var cdpAgrupado = (from i in listaCdp
                               group i by new
            {
                i.Crp,
                i.Cdp,
                i.PciId,
                i.Detalle4,
                i.Detalle6,
                i.Detalle7,
                i.Fecha
            }
                               into grp
                               select new CDPDto()
            {
                Crp = grp.Key.Crp,
                Cdp = grp.Key.Cdp,
                PciId = grp.Key.PciId,
                Detalle4 = grp.Key.Detalle4,
                Detalle6 = grp.Key.Detalle6,
                Detalle7 = grp.Key.Detalle7,
                Fecha = grp.Key.Fecha,
                Operacion = grp.Sum(i => i.Operacion),
                SaldoActual = grp.Sum(i => i.SaldoActual),
                ValorTotal = grp.Sum(i => i.ValorTotal),
            });

            return(await(from pp in _context.PlanPago
                         join c in cdpAgrupado on pp.Crp equals c.Crp
                         join t in _context.Tercero on pp.TerceroId equals t.TerceroId
                         join sp in _context.FormatoSolicitudPago on pp.PlanPagoId equals sp.PlanPagoId into SolicitudPago
                         from sol in SolicitudPago.DefaultIfEmpty()

                         join p in _context.ParametroLiquidacionTercero on pp.TerceroId equals p.TerceroId into ParametroTercero
                         from pt in ParametroTercero.DefaultIfEmpty()

                         join us in _context.Usuario on pp.UsuarioIdRegistro equals us.UsuarioId into Usuario
                         from us in Usuario.DefaultIfEmpty()

                         join con in _context.Contrato on pp.Crp equals con.Crp into Contrato
                         from contra in Contrato.DefaultIfEmpty()
                         join sup in _context.Usuario on contra.Supervisor1Id equals sup.UsuarioId into Supervisor
                         from super in Supervisor.DefaultIfEmpty()

                         where pp.PciId == sol.PciId
                         where pp.PciId == pt.PciId
                         where pp.PciId == us.PciId
                         where pp.PciId == contra.PciId
                         where contra.PciId == super.PciId

                         where pp.PlanPagoId == planPagoId
                         where sol.EstadoId == (int)EstadoSolicitudPago.Aprobado
                         select new DetallePlanPagoDto()
            {
                PlanPagoId = pp.PlanPagoId,
                TerceroId = pp.TerceroId,
                Detalle4 = CortarTexto(c.Detalle4, 50) + "...",
                Detalle5 = super.Nombres + ' ' + super.Apellidos,
                Detalle6 = c.Detalle6,
                Detalle7 = ResumirDetalle7(c.Detalle7),
                ValorTotal = c.ValorTotal,
                SaldoActual = c.SaldoActual,
                Fecha = c.Fecha,
                Operacion = c.Operacion,
                ModalidadContrato = pt.ModalidadContrato,
                TipoPago = pt.TipoPago,

                Viaticos = pp.Viaticos,
                ViaticosDescripcion = pp.Viaticos ? "SI" : "NO",
                Crp = pp.Crp,
                NumeroPago = pp.NumeroPago,
                ValorFacturado = pp.ValorFacturado.HasValue ? pp.ValorFacturado.Value : 0,
                NumeroRadicadoSupervisor = pp.NumeroRadicadoSupervisor,
                FechaRadicadoSupervisor = pp.FechaRadicadoSupervisor,
                FechaRadicadoSupervisorFormato = pp.FechaRadicadoSupervisor.HasValue ? pp.FechaRadicadoSupervisor.Value.ToString("yyyy-MM-dd") : string.Empty,
                NumeroFactura = sol.NumeroFactura,
                Observaciones = sol.ObservacionesModificacion.Length > 100 ? sol.ObservacionesModificacion.Substring(0, 100) : sol.ObservacionesModificacion,
                NumeroRadicadoProveedor = pp.NumeroRadicadoProveedor,
                FechaRadicadoProveedor = pp.FechaRadicadoProveedor.HasValue ? pp.FechaRadicadoProveedor.Value : null,
                FechaRadicadoProveedorFormato = pp.FechaRadicadoProveedor.HasValue ? pp.FechaRadicadoProveedor.Value.ToString("yyyy-MM-dd") : string.Empty,
                FechaInicioSolicitudPagoFormato = sol.FechaInicio.ToString("yyyy-MM-dd"),
                FechaFinalSolicitudPagoFormato = sol.FechaFinal.ToString("yyyy-MM-dd"),
                IdentificacionTercero = t.NumeroIdentificacion,
                NombreTercero = CortarTexto(t.Nombre, 30),

                Usuario = (super.Nombres + ' ' + super.Apellidos).Length > 20 ? (super.Nombres + ' ' + super.Apellidos).Substring(0, 20) : (super.Nombres + ' ' + super.Apellidos),
                Email = super.Email,
            })
                   .FirstOrDefaultAsync());
        }