public Task <string> RegistrarEstadoPlanilla(PlanillaEstado planillaEstado)
        {
            string _sMessage = string.Empty;

            List <OracleParameter> parameters = new List <OracleParameter>();

            parameters.Add(new OracleParameter("ID_PLANILLA", OracleDbType.Int32, planillaEstado.IdPlanilla, ParameterDirection.Input));
            parameters.Add(new OracleParameter("ID_DG_ESTADO_PLANILLA", OracleDbType.Int32, planillaEstado.IddgEstadoplanilla, ParameterDirection.Input));
            parameters.Add(new OracleParameter("ID_DG_ESTADO", OracleDbType.Int32, planillaEstado.IddgEstado, ParameterDirection.Input));
            parameters.Add(new OracleParameter("VC_USUARIO_CREACION", OracleDbType.NVarchar2, planillaEstado.VcUsuariocreacion, ParameterDirection.Input));
            //Parámetro de Salida
            var pResult = new OracleParameter("P_RESULT", OracleDbType.Varchar2, 32767, OracleDbType.Int32, ParameterDirection.Output);

            parameters.Add(pResult);

            _connectionBase.ExecuteByStoredProcedure("CONCILIACION.CCLPOSTPLANILLAESTADO", parameters, ConnectionBase.enuTypeDataBase.OracleConciliacion);
            _sMessage = pResult.Value.ToString() == null ? String.Empty : pResult.Value.ToString();

            return(Task.FromResult <string>(_sMessage));
        }
Ejemplo n.º 2
0
        public Task <string> ProcesarDocumentosLiquidados(DatosConsultaArchivos datosConsultaArchivos)
        {
            List <PlanillaEstadoDto> _planillaEstadoList = new List <PlanillaEstadoDto>();

            List <PREMIUM_MO>           _reciboAbonoList = null;
            PlanillaDetalle             _planillaDetalle = null;
            List <DetallePlanillaCobro> _listaRecibos    = null;
            PlanillaEstado _planillaEstado = null;

            string _sMessage = string.Empty;

            datosConsultaArchivos.FechaDesde = Convert.ToDateTime(datosConsultaArchivos.FechaDesde).ToShortDateString();
            datosConsultaArchivos.FechaHasta = Convert.ToDateTime(datosConsultaArchivos.FechaHasta).ToShortDateString();

            try
            {
                //1.Obtiene información de las planillas conciliadas
                var _obj0 = _generacionexactusRepository.ListarPlanillaConciliada(datosConsultaArchivos);

                _planillaEstadoList = _mapper.Map <List <PlanillaEstadoDto> >(_obj0);

                if (_planillaEstadoList.Count > 0)
                {
                    foreach (PlanillaEstadoDto e in _planillaEstadoList)
                    {
                        var _obj1 = _mapper.Map <PlanillaEstado>(e);

                        //Registra Planilla Detalle - Nuevo SP
                        _obj1.VcUsuariocreacion = e.VcUsuariocreacion.ToString();
                        _generacionexactusRepository.RegistrarPlanillaDetalle(_obj1);

                        //Obtiene los recibos
                        _listaRecibos = new List <DetallePlanillaCobro>();
                        _listaRecibos = _generacionexactusRepository.ListarPlanillaCertificado(_obj1);

                        //Obtiene datos del abono
                        foreach (DetallePlanillaCobro c in _listaRecibos)
                        {
                            _planillaDetalle            = new PlanillaDetalle();
                            _planillaDetalle.IdProforma = c.IdProforma;

                            _reciboAbonoList = new List <PREMIUM_MO>();
                            _reciboAbonoList = _generacionexactusRepository.ListarReciboAbonado(_planillaDetalle);

                            //Registra en PREMIUM_MO
                            foreach (PREMIUM_MO p in _reciboAbonoList)
                            {
                                _generacionexactusRepository.RegistrarReciboAbonado(p);
                            }
                        }

                        //Registra estados
                        _planillaEstado                    = new PlanillaEstado();
                        _planillaEstado.IdPlanilla         = e.IdPlanilla;
                        _planillaEstado.IddgEstadoplanilla = 1104;                           //Documentos Liquidados
                        _planillaEstado.IddgEstado         = 1001;                           //Registro activo
                        _planillaEstado.VcUsuariocreacion  = e.VcUsuariocreacion.ToString(); //Agregado 16/07/2018
                        _planillaRepository.RegistrarEstadoPlanilla(_planillaEstado);
                    }

                    _sMessage = "1";
                }
                else
                {
                    _sMessage = "2";
                }
            }
            catch (Exception ex)
            {
                _sMessage = "0";

                _logger.LogError(ex.InnerException.ToString());
            }

            return(Task.FromResult <string>(_sMessage));
        }
        public Task <string> RegistrarPlanilla(List <Planilla> planillaList)
        {
            int    _nIdProceso = 0;
            string _sMessage   = string.Empty;

            List <OracleParameter> parameters1        = null;
            ProcesoGeneral         _procesoGeneral    = null;
            LogProcesoGeneral      _procesoLogGeneral = null;
            PlanillaEstado         _planillaEstado    = new PlanillaEstado();

            _procesoGeneral                   = new ProcesoGeneral();
            _procesoGeneral.IdProceso         = 3;                                            //Importacion
            _procesoGeneral.VcUsuariocreacion = planillaList[0].VcUsuariocreacion.ToString(); //Agregado 16/07/2018
            _procesoGeneral.VcDescripcion     = "";
            _procesoGeneral.VcMensaje         = "Inicio Registro de Importación de Planillas";
            _procesoGeneral.VcAmbito          = "BD";
            _nIdProceso = _procesoRepository.RegistrarLog(_procesoGeneral);

            foreach (Planilla p in planillaList)
            {
                try
                {
                    parameters1 = new List <OracleParameter>();
                    parameters1.Add(new OracleParameter("ID_PLANILLA", OracleDbType.Int32, p.IdPlanilla, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("VC_DESCRIPCION", OracleDbType.Varchar2, 255, p.VcDescripcion, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("DC_TOTAL", OracleDbType.NVarchar2, 10, p.DcTotal, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("DT_FECHA_PLANILLA", OracleDbType.Date, p.DtFechaPlanilla, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("ID_CANAL", OracleDbType.Int32, p.IdCanal, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("ID_PRODUCTO", OracleDbType.Int32, p.IdProducto, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("ID_PUNTO_VENTA", OracleDbType.NVarchar2, p.IdPuntoventa, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("ID_DG_ESTADO_PLANILLA", OracleDbType.NVarchar2, p.IddgEstadoPlanilla, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("ID_DG_ESTADO_PROENV", OracleDbType.NVarchar2, p.IddgEstadoProenv, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("ID_DG_ESTADO", OracleDbType.NVarchar2, p.IddgEstado, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("VC_USUARIO_CREACION", OracleDbType.NVarchar2, 20, p.VcUsuariocreacion, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("DT_FECHA_MODIFICACION", OracleDbType.Date, p.DtFechamodificacion, ParameterDirection.Input));
                    parameters1.Add(new OracleParameter("VC_USUARIO_MODIFICACION", OracleDbType.NVarchar2, 20, p.VcUsuariomodificacion, ParameterDirection.Input));

                    //Parámetro de Salida
                    var pResult1 = new OracleParameter("P_RESULT", OracleDbType.NVarchar2, 32767, OracleDbType.NVarchar2, ParameterDirection.Output);
                    parameters1.Add(pResult1);

                    _connectionBase.ExecuteByStoredProcedure("CONCILIACION.CCLPROCIMPORTACION.CCLPOSTPLANILLA", parameters1, ConnectionBase.enuTypeDataBase.OracleConciliacion);
                    _sMessage = pResult1.Value.ToString() == null ? String.Empty : pResult1.Value.ToString();

                    foreach (DetallePlanillaCobro d in p.DetallePlanillacobro)
                    {
                        List <OracleParameter> parameters2 = new List <OracleParameter>();

                        parameters2.Add(new OracleParameter("ID_DETALLE_PLANILLA_COBRO", OracleDbType.Int32, d.IdDetallePlanillaCobro, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("ID_PLANILLA", OracleDbType.Int32, d.IdPlanilla, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("ID_RAMO", OracleDbType.Int32, d.IdRamo, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("ID_PRODUCTO", OracleDbType.Int32, d.IdProducto, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("VC_NUMERO_POLIZA", OracleDbType.NVarchar2, 20, d.VcNumeropoliza, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("VC_NUMERO_CERTIFICADO", OracleDbType.NVarchar2, 20, d.VcNumerocertificado, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("ID_PROFORMA", OracleDbType.Long, d.IdProforma, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("DC_MONTO", OracleDbType.Decimal, d.DcMonto, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("ID_DG_ESTADO", OracleDbType.Int32, d.IddgEstado, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("ID_DG_ESTADO_DET_PLANILLA", OracleDbType.Int32, d.IddgEstadoDetPlanilla, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("VC_USUARIO_CREACION", OracleDbType.NVarchar2, 20, d.VcUsuariocreacion, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("DT_FECHA_MODIFICACION", OracleDbType.Date, d.DtFechamodificacion, ParameterDirection.Input));
                        parameters2.Add(new OracleParameter("VC_USUARIO_MODIFICACION", OracleDbType.NVarchar2, 20, d.VcUsuariomodificacion, ParameterDirection.Input));
                        //Parámetro de Salida
                        var pResult2 = new OracleParameter("P_RESULT", OracleDbType.NVarchar2, 32767, OracleDbType.NVarchar2, ParameterDirection.Output);
                        parameters2.Add(pResult2);

                        _connectionBase.ExecuteByStoredProcedure("CONCILIACION.CCLPROCIMPORTACION.CCLPOSTDETPLANILLACOBRO", parameters2, ConnectionBase.enuTypeDataBase.OracleConciliacion);
                        _sMessage = pResult2.Value.ToString() == null ? String.Empty : pResult2.Value.ToString();
                    }

                    foreach (DetallePlanillaPago e in p.DetallePlanillapago)
                    {
                        List <OracleParameter> parameters3 = new List <OracleParameter>();

                        parameters3.Add(new OracleParameter("ID_DETALLE_PLANILLA_PAGO", OracleDbType.Int32, e.IdDetallePlanillaPago, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_PLANILLA", OracleDbType.Int32, e.IdPlanilla, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_MONEDA", OracleDbType.Int32, e.IdMoneda, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("DC_MONTO", OracleDbType.Decimal, e.DcMonto, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_TIPO_MEDIO_PAGO", OracleDbType.Int32, e.IdTipomediopago, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_BANCO", OracleDbType.Int32, e.IdBanco, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_CUENTA_BANCO", OracleDbType.NVarchar2, 20, Convert.ToString(e.IdCuentaBanco), ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("VC_NUMERO_OPERACION", OracleDbType.NVarchar2, 20, e.VcNumerooperacion, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_DG_ESTADO", OracleDbType.Int32, Convert.ToInt32(e.IddgEstado), ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("ID_DG_ESTADO_DET_PLANILLA", OracleDbType.Int32, Convert.ToInt32(e.IddgEstadoDetPlanilla), ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("DT_FECHA_OPERACION", OracleDbType.Date, e.DtFechaoperacion, ParameterDirection.Input)); //Agregado 17/07/2018
                        parameters3.Add(new OracleParameter("VC_USUARIO_CREACION", OracleDbType.NVarchar2, 20, e.VcUsuariocreacion, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("DT_FECHA_MODIFICACION", OracleDbType.Date, e.DtFechamodificacion, ParameterDirection.Input));
                        parameters3.Add(new OracleParameter("VC_USUARIO_MODIFICACION", OracleDbType.NVarchar2, 20, e.VcUsuariomodificacion, ParameterDirection.Input));
                        //Parámetro de Salida
                        var pResult3 = new OracleParameter("P_RESULT", OracleDbType.NVarchar2, 32767, OracleDbType.NVarchar2, ParameterDirection.Output);
                        parameters3.Add(pResult3);

                        _connectionBase.ExecuteByStoredProcedure("CONCILIACION.CCLPROCIMPORTACION.CCLPOSTDETPLANILLAPAGO", parameters3, ConnectionBase.enuTypeDataBase.OracleConciliacion);
                        _sMessage = pResult3.Value.ToString() == null ? String.Empty : pResult3.Value.ToString();
                    }
                }
                catch (Exception ex)
                {
                    _sMessage = string.Format("Error: {0}", ex.ToString());

                    _procesoLogGeneral = new LogProcesoGeneral();
                    _procesoLogGeneral.IdProcesoGeneral  = _nIdProceso;
                    _procesoLogGeneral.VcMensaje         = _sMessage.ToString();
                    _procesoLogGeneral.VcAmbito          = _procesoGeneral.VcAmbito;
                    _procesoLogGeneral.VcUsuarioCreacion = _procesoGeneral.VcUsuariocreacion;
                    _procesoRepository.RegistrarLog(_procesoLogGeneral);
                }

                //Registra estados
                _planillaEstado                    = new PlanillaEstado();
                _planillaEstado.IdPlanilla         = p.IdPlanilla;
                _planillaEstado.IddgEstadoplanilla = 1101;                              //Ingresado
                _planillaEstado.IddgEstado         = 1001;                              //Registro activo
                _planillaEstado.VcUsuariocreacion  = _procesoGeneral.VcUsuariocreacion; //Agregado 16/07/2018
                RegistrarEstadoPlanilla(_planillaEstado);
            }

            _procesoLogGeneral = new LogProcesoGeneral();
            _procesoLogGeneral.IdProcesoGeneral  = _nIdProceso;
            _procesoLogGeneral.VcMensaje         = "Fin Registro de Importación de Planillas";
            _procesoLogGeneral.VcAmbito          = _procesoGeneral.VcAmbito;
            _procesoLogGeneral.VcUsuarioCreacion = _procesoGeneral.VcUsuariocreacion;
            _procesoRepository.RegistrarLog(_procesoLogGeneral);

            return(Task.FromResult <string>(_sMessage));
        }