/// <summary> /// Almacena el registro de una ENTIDAD de registro de Tipo ComprobanteEmitidos /// En la BASE de DATO la Tabla : [CajaBancos.ComprobanteEmitidos] /// </summary> /// <param name="itemComprobanteEmitidos"></param> /// <param name="comprobanteEmision"></param> /// <returns></returns> public ReturnValor PagarEfectivo(CajaRegistroAux cajaRegistro, BEComprobanteEmision comprobanteEmision, decimal prm_MontoPagadoMN, decimal prm_MontoPagadoMI, decimal prm_SaldoActualMN, decimal prm_SaldoActualMI) { return(new CajaRegistroLogic().PagarEfectivo(cajaRegistro, comprobanteEmision, prm_MontoPagadoMN, prm_MontoPagadoMI, prm_SaldoActualMN, prm_SaldoActualMI)); }
///// <summary> ///// Retorna una LISTA de registro de la Entidad CajaBancos.ComprobanteEmitidos POR FOREIGN KEY ///// En la BASE de DATO la Tabla : [CajaBancos.ComprobanteEmitidos] ///// <summary> ///// <returns>Entidad</returns> //public List<CajaRegistroAux> List(int pcodEmpresa, string prm_fecIngresoInicio, string prm_fecIngresoFinal, // int? prm_codDocumReg, string prm_codRegistroDestinoComp, // string prm_codPersonaEntidad, int? prm_codEmpleado, // string prm_codRegistroMoneda, string prm_codParteDiario, // string prm_codFormaDePago, bool? prm_indConciliado) //{ // List<CajaRegistroAux> lstCajaRegistro = new List<CajaRegistroAux>(); // try // { // using (_CajaBancosDataContext SQLDC = new _CajaBancosDataContext(conexion)) // { // var resul = SQLDC.omgc_S_CajaRegistro(pcodEmpresa, prm_fecIngresoInicio, prm_fecIngresoFinal, // prm_codDocumReg, prm_codRegistroDestinoComp, // prm_codPersonaEntidad, prm_codEmpleado, // prm_codRegistroMoneda, prm_codParteDiario, // prm_codFormaDePago, prm_indConciliado); // foreach (var item in resul) // { // lstCajaRegistro.Add(new CajaRegistroAux() // { // numItem = item.numItem, // codDocumReg = item.codDocumReg, // codEmpresa= item.codEmpresa.HasValue? item.codEmpresa.Value:0, // codEmpresaRUC = item.codPersonaEmpre, // codPuntoDeVenta = item.codPuntoDeVenta, // codDocumento = item.codDocumento, // numDocumento = item.numDocumento, // codEmpleado = item.codEmpleado, // codParteDiario = item.codParteDiario, // codFormaDePago = item.codFormaDePago.HasValue ? item.codFormaDePago.Value : 0, // fecIngreso = item.fecIngreso, // codRegistroMoneda = item.codRegistroMoneda, // monImporteRecibido = item.monImporteRecibido == null ? 0 : item.monImporteRecibido.Value, // monImportePagado = item.monImportePagado == null ? 0 : item.monImportePagado.Value, // monImportePagadoEx = item.monImportePagadoEx == null ? 0 : item.monImportePagadoEx.Value, // monImporteVuelto = item.monImporteVuelto == null ? 0 : item.monImporteVuelto.Value, // monTCambioVTA = item.monTCambioVTA, // monTCambioCMP = item.monTCambioCMP, // gloObservacion = item.gloObservacion, // indConciliado = item.indConciliado, // segUsuarioCrea = item.segUsuarioCrea, // segUsuarioEdita = item.segUsuarioEdita, // segFechaCrea = item.segFechaCrea, // segFechaEdita = item.segFechaEdita, // segMaquina = item.segMaquina, // auxcodEmpleadoNombre = item.auxcodEmpleadoNombre, // auxcodFormaDePagoNombre = item.auxcodFormaDePagoNombre, // auxcodRegistroMonedaNombre = item.auxcodRegistroMonedaNombre, // auxcodDocumentoNombre = item.auxcodDocumentoNombre, // auxcodPuntoDeVentaNombre = item.auxcodPuntoDeVentaNombre, // codDocumRegPagoCredito = item.codLetraDeCambio, // fecVencimientoLetra = item.fecVencimientoLetra, // auxnumLetraExterno = item.numLetraExterno // }); // } // } // } // catch (Exception ex) // { // throw ex; // } // return lstCajaRegistro; //} #endregion #region /* Proceso de UPDATE*/ /// <summary> /// ACTUALIZA el registro de una ENTIDAD de registro de Tipo CajaRegistro /// En la BASE de DATO la Tabla : [CajaBancos.CajaRegistro] /// <summary> /// <param name = >itemParteDiario</param> public bool UpdateCajaClose(CajaRegistroAux itemCajaRegistro) { int codigoRetorno = -1; try { using (_CajaBancosDataContext SQLDC = new _CajaBancosDataContext(conexion)) { codigoRetorno = SQLDC.omgc_U_CajaRegistro_Conciliar( itemCajaRegistro.codEmpresaRUC, itemCajaRegistro.codDocumReg, itemCajaRegistro.codParteDiario, itemCajaRegistro.indConciliado, itemCajaRegistro.segUsuarioEdita ); } } catch (Exception ex) { throw ex; } return(codigoRetorno == 0 ? true : false); }
///// <summary> ///// Retorna una LISTA de registro de la Entidad CajaBancos.ComprobanteEmitidos POR FOREIGN KEY ///// En la BASE de DATO la Tabla : [CajaBancos.ComprobanteEmitidos] ///// <summary> ///// <returns>Entidad</returns> //public List<CajaRegistroAux> List(int pcodEmpresa, Nullable<DateTime> prm_fecIngresoInicio, // Nullable<DateTime> prm_fecIngresoFinal, int? prm_codDocumReg, // string prm_codRegistroDestinoComp, string prm_codPersonaEntidad, // int? prm_codEmpleado, string prm_codRegistroMoneda, // string prm_codParteDiario, string prm_codFormaDePago, // bool? prm_indConciliado) //{ // List<CajaRegistroAux> listaCajaRegistro = new List<CajaRegistroAux>(); // try // { // listaCajaRegistro = oCajaRegistroData.List(pcodEmpresa, // HelpTime.ConvertYYYYMMDD(prm_fecIngresoInicio), // HelpTime.ConvertYYYYMMDD(prm_fecIngresoFinal), // prm_codDocumReg, // prm_codRegistroDestinoComp, // prm_codPersonaEntidad, // prm_codEmpleado, // prm_codRegistroMoneda, // prm_codParteDiario, // prm_codFormaDePago, // prm_indConciliado); // } // catch (Exception ex) // { // throw ex; // } // return listaCajaRegistro; //} #endregion #region /* Proceso de INSERT RECORD */ /// <summary> /// Almacena el registro de una ENTIDAD de registro de Tipo ComprobanteEmitidos /// En la BASE de DATO la Tabla : [CajaBancos.ComprobanteEmitidos] /// </summary> /// <param name="itemComprobanteEmitidos"></param> /// <param name="comprobanteEmision"></param> /// <returns></returns> public ReturnValor PagarEfectivo(CajaRegistroAux cajaRegistro, BEComprobanteEmision comprobanteEmision, decimal prm_MontoPagadoMN, decimal prm_MontoPagadoMI, decimal prm_SaldoActualMN, decimal prm_SaldoActualMI) { try { using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required)) { //oReturnValor.Exitosa = oCajaRegistroData.Insert(cajaRegistro); bool SUCEDE_OK = true; bool SUCEDE_CT = true; decimal DIFERENCIA = 0; if (cajaRegistro.codRegistroMoneda == ConfigCROM.AppConfig(cajaRegistro.codEmpresa, ConfigTool.DEFAULT_MonedaNac)) { if (prm_MontoPagadoMN < 0) { prm_MontoPagadoMN = prm_MontoPagadoMN * (-1); } decimal pagadoHastaAhora = prm_MontoPagadoMN + cajaRegistro.monImportePagado; if (pagadoHastaAhora == comprobanteEmision.ValorTotalPrecioVenta) { SUCEDE_OK = oComprobanteEmisionData.UpdateCancelacion(comprobanteEmision.codDocumReg, comprobanteEmision.CodigoArguEstadoDocu, cajaRegistro.gloObservacion, cajaRegistro.fecIngreso, cajaRegistro.codParteDiario, cajaRegistro.segUsuarioCrea); } } else { if (prm_SaldoActualMI == cajaRegistro.monImportePagadoEx) { SUCEDE_OK = oComprobanteEmisionData.UpdateCancelacion(comprobanteEmision.codDocumReg, comprobanteEmision.CodigoArguEstadoDocu, cajaRegistro.gloObservacion, cajaRegistro.fecIngreso, cajaRegistro.codParteDiario, cajaRegistro.segUsuarioCrea); } } CuentasCorrientesData oCuentasCorrientesData = new CuentasCorrientesData(); BECuentaCorriente cuentacorriente = new BECuentaCorriente { codEmpresa = comprobanteEmision.codEmpresa, codDocumReg = comprobanteEmision.codDocumReg, CodigoArguDestinoComp = comprobanteEmision.CodigoArguDestinoComp, CodigoArguMoneda = comprobanteEmision.CodigoArguMoneda, CodigoArguTipoMovimi = comprobanteEmision.CodigoArguTipoDeOperacion, CodigoComprobante = comprobanteEmision.CodigoComprobante, codEmpleado = cajaRegistro.codEmpleado, CodigoPersonaEmpre = comprobanteEmision.CodigoPersonaEmpre, CodigoPuntoVenta = cajaRegistro.codPuntoDeVenta, DEBETipoCambioVTA = cajaRegistro.monTCambioVTA, DEBETipoCambioCMP = cajaRegistro.monTCambioCMP, DEBETotalCuotaNacion = cajaRegistro.monImportePagado, DEBETotalCuotaExtran = cajaRegistro.monImportePagadoEx, Estado = true, NumeroComprobante = comprobanteEmision.NumeroComprobante, FechaDeEmisionDeuda = cajaRegistro.fecIngreso, FechaDeVencimiento = comprobanteEmision.FechaDeEmision, NumeroDeCuota = 0, Observaciones = comprobanteEmision.Observaciones == null ? "Registro automático desde Pago en efectivo - " : "Registro automático desde Pago en efectivo - " + comprobanteEmision.Observaciones, SegUsuarioCrea = comprobanteEmision.SegUsuarioCrea, SegUsuarioEdita = comprobanteEmision.SegUsuarioCrea, DHDiferenciaMonto = DIFERENCIA, TipoDeIngreso = comprobanteEmision.CodigoArguTipoDeOperacion == ConfigCROM.AppConfig(cajaRegistro.codEmpresa, ConfigTool.DEFAULT_Movim_Venta) ? "H" : "D", CodigoParte = comprobanteEmision.CodigoParte }; SUCEDE_CT = oCuentasCorrientesData.Insert(cuentacorriente) == null ? false : true; if (oReturnValor.Exitosa && SUCEDE_OK && SUCEDE_CT) { oReturnValor.Message = HelpMessages.gc_DOCUM_YA_CANCELADO; tx.Complete(); } } } catch (Exception ex) { oReturnValor = HelpException.mTraerMensaje(ex); } return(oReturnValor); }