コード例 #1
0
ファイル: ServiceDestinos.cs プロジェクト: quidele/tezecoop
        public string Inicializar()
        {
            using (var context = new dbSG2000Entities())
            {
                // Perform data access using the context

                // return first customer
                var destinos = (from c in context.TB_Productos
                            select c).First();
                Console.WriteLine(destinos.cdProducto );
                Console.WriteLine(destinos.dsProducto );

                return "inicializando la clase ServiceDestinos PRODUCTO" + destinos.dsProducto + " server HOST " + ODBCManager.getDSNHost();
            }
        }
コード例 #2
0
ファイル: ServiceTarifas.cs プロジェクト: quidele/tezecoop
        public void ActualizarTarifas(List<TB_Productos> listaTarifas)
        {
            using (var context = new dbSG2000Entities())
                {

                    foreach (TB_Productos p in listaTarifas)
                    {

                        // realizar busqueda
                        var viajedestino = (from c in context.TB_Productos where c.cdProducto == p.cdProducto select c).First();
                        viajedestino.vlPrecioViaje = p.vlPrecioViaje;
                        viajedestino.vlPrecioViajeSinPeaje = p.vlPrecioViajeSinPeaje;
                        viajedestino.vlPrecioPeaje = viajedestino.vlPrecioPeaje ;
                        Console.WriteLine(p.cdProducto + " - " + p.dsProducto + " -  " + p.vlPrecioViaje.ToString() + p.flMuestraenlaWEB);
                        //break;

                    }

                    context.SaveChanges();
                }
        }
コード例 #3
0
        public void agregarConciliacion(List<TB_ConciliacionDetalleEx> plistaDetalleConciliacion, TB_Conciliacion objConciliacion)
        {
            ServiceMovimientoContable unSMC = new ServiceMovimientoContable();

            using (var context = new dbSG2000Entities())
            {

                using (TransactionScope transaction = new TransactionScope())
                {

                    objConciliacion.dsUsuario = this.Usuario;
                    objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm);
                    objConciliacion.flestado = "A";
                    objConciliacion.dtModificacion = DateTime.Now;

                    context.TB_Conciliacion.Add(objConciliacion);
                    context.SaveChanges();

                    foreach (var detalleConciliacion in plistaDetalleConciliacion)
                    {
                        TB_Cupones un_Cupon = (from c in context.TB_Cupones
                                               where c.nrCupon == detalleConciliacion.nrCupon
                                               select c).First();

                        if (detalleConciliacion.fechaPago.Value.Subtract(detalleConciliacion.dtCupon).TotalDays >= 20)
                        {
                            detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(30);
                        }
                        else
                        {
                            detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(5);
                        }

                        un_Cupon.dtCobradoalCliente = detalleConciliacion.FechaPagoLicenciatario; // muy importante para habilitar el pago al licenciatario
                        un_Cupon.flCobradoalCliente = true; // Marca de cociliacion
                        un_Cupon.dtFechaAcreditacion = detalleConciliacion.fechaPago;  // Fecha en que visa o master pagan al banco

                        un_Cupon.vlMontoAcreditacion = un_Cupon.vlMontoCupon; // importe enviado por la Tarjeta

                        detalleConciliacion.IdConciliacion = objConciliacion.IdConciliacion;
                        context.TB_ConciliacionDetalle.Add(detalleConciliacion.ToTB_ConciliacionDetalle());
                        context.SaveChanges();

                        un_Cupon.IdConciliacion = detalleConciliacion.IdConciliacion; // Asociamos la conciliacion al cupon

                        var nrFactura = un_Cupon.tpComprobanteCliente + "-" + un_Cupon.tpLetraCliente + "-" + un_Cupon.nrTalonarioCliente + un_Cupon.nrComprabanteCliente.Trim();

                        unSMC.GrabarAsientoContablePosdatados(un_Cupon.vlMontoAcreditacion.Value, objConciliacion.nrCajaAdm.Value,
                            objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Conciliacion_de_Viajes, Viajes_con_Tarjeta_a_Bancos, un_Cupon.nrLicencia.ToString(), nrFactura, detalleConciliacion.fechaPago.Value, un_Cupon.nrCupon, "Manual");

                    }

                    context.SaveChanges();

                    // Procesamos el Movimientos posdatados
                    unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario);

                    transaction.Complete();

                    return;

                    //return listadeViajesaConciliar.ToList();

                }
            }
        }
コード例 #4
0
        public override void modificarConciliacion(List<decimal> listaCuponesDesconciliados,
                                                      List<decimal> listaCuponesConciliados,
                                                      TB_Conciliacion objConciliacion)
        {
            ServiceMovimientoContable unSMC = new ServiceMovimientoContable();

            //una_conciliacion.TB_ConciliacionDetalle
            using (var context = new dbSG2000Entities())
            {

                // detalle conciliacion desconciliadas
                var listaDetalleDesconciliados = (from c in context.TB_ConciliacionDetalle
                                                  where listaCuponesDesconciliados.Contains(c.nrCupon) &&
                                                                c.IdConciliacion == objConciliacion.IdConciliacion
                                                  select c).ToList(); ;

                // cupones conciliacion desconciliadas
                var listaTB_CuponesDesconciliados = (from c in context.TB_Cupones where listaCuponesDesconciliados.Contains(c.nrCupon) select c.flCobradoalCliente).ToList(); ;

                using (TransactionScope transaction = new TransactionScope())
                {

                    objConciliacion = (from c in context.TB_Conciliacion
                                       where c.IdConciliacion == objConciliacion.IdConciliacion
                                       select c).First<TB_Conciliacion>();

                    objConciliacion.dsUsuario = this.Usuario;
                    objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm);
                    objConciliacion.flestado = "A";
                    objConciliacion.dtModificacion = DateTime.Now;

                    context.SaveChanges();

                    foreach (var detalleConciliacion in listaDetalleDesconciliados)
                    {
                        TB_Cupones un_Cupon = (from c in context.TB_Cupones
                                               where c.nrCupon == detalleConciliacion.nrCupon
                                               select c).First();

                        var vlMontoAcreditacion = Convert.ToDouble(un_Cupon.vlMontoAcreditacion);
                        un_Cupon.dtCobradoalCliente = null;     // limpiamos la fecha de cobrado
                        un_Cupon.flCobradoalCliente = false;   // desconciliamos el cupon lo liberamos de la conciliacion
                        un_Cupon.IdConciliacion = null;
                        un_Cupon.vlMontoAcreditacion = null;
                        un_Cupon.dtFechaAcreditacion = null;

                        context.SaveChanges();

                        var nrFactura = un_Cupon.tpComprobanteCliente + "-" + un_Cupon.tpLetraCliente + "-" + un_Cupon.nrTalonarioCliente + "-" + un_Cupon.nrComprabanteCliente.Trim() + "/ Cupon: " + ExtensionString.EmptyIfNull(un_Cupon.nrCuponPosnet).Trim() + "/ Tarjeta: " + ExtensionString.EmptyIfNull(un_Cupon.nrTarjeta).Trim();

                        // GrabarAsientoContable(TotalConciliacionAnulado, Decimal.Parse(this._cajactiva), this._usuarioActivo,
                        // objConciliacion, context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes);

                        unSMC.GrabarAsientoContablePosdatados(vlMontoAcreditacion, objConciliacion.nrCajaAdm.Value,
                            objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes, un_Cupon.nrLicencia.ToString(), nrFactura, detalleConciliacion.fechaPago.Value, un_Cupon.nrCupon, "Manual");

                        context.TB_ConciliacionDetalle.Remove(detalleConciliacion);
                    }

                    context.SaveChanges();

                    // Procesamos el Movimientos posdatados
                    unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario);

                    transaction.Complete();

                    return;
                    //return listadeViajesaConciliar.ToList();

                }

                // desafectar el cupon flCobradoalCliente = false
                // desafectar el cupon dtCobradoalCliente = null
                // grabar la tabla de Movimientos en forma de anulacion

            }
        }
コード例 #5
0
ファイル: FrmConciliaciones.cs プロジェクト: quidele/tezecoop
        private void FrmConciliaciones_Load(object sender, EventArgs e)
        {
            using (var context = new dbSG2000Entities())
            {
                this.statusbar_bd.Text = "Base de datos: " + context.Database.Connection.Database ;
                this.statusbar_servidor.Text = "Base de datos: " + context.Database.Connection.DataSource;
                this.statusbar_usuario.Text = "usuario: " + serviceConciliaciones.Usuario;
                this.statusbar_nrocaja.Text = "Caja Nro: " + serviceConciliaciones.CajaAdm;
                this.statusbar_version.Text = "Versión: " + typeof(SGLibrary.ServiceModel).Assembly.GetName().Version.ToString();
                //this.statusbar_version.Text = Application.

            }

            cargarCombo(this.cbUsuariosConciliaciones, serviceConciliaciones.obtenerUsuariosConciliaciones());
            botonesForm1.configMododeEdicion( ABMBotonesForm.FIND);
            this.panelcarga.Visible = false;
            this.panelbusqueda.Visible = true;
            this.fechadesde.Value = DateTime.Now.AddDays(-30).Date;
            this.fechahasta.Value = DateTime.Now.Date;
            this.botonesForm1.InicializarFindBoton();
        }
コード例 #6
0
        /// <summary>
        /// grabar movimientos contables para reflejar la salida del dinero
        /// </summary>
        /// <param name="una_conciliacion"></param>
        /// <returns></returns>
        public void GrabarAsientoContablePosdatados(Double pvlPesos, decimal pnrCaja, String pdsUsuario, String  pIdConciliacion,
                                                    dbSG2000Entities pdbSG2000Entities, int cdConceptoOrigen, int cdConceptoDestino,
                                                    string pnrLicencia, string pnrFactura, DateTime pdtFechaPosdata, 
                                                    Decimal pnrCupon , String pdsMovimiento  )
        {
            try
            {
                //  Setear conceptos y caja
                //  Obtener la entidad Usuario
                TB_MovimientosContablesPosdatados unMCConceptoOrigen = new TB_MovimientosContablesPosdatados();
                TB_MovimientosContablesPosdatados unMCConceptoDestino = new TB_MovimientosContablesPosdatados();

                TB_Conceptos cdConceptoConceptoOrigen = (from c in pdbSG2000Entities.TB_Conceptos where c.cdConcepto == cdConceptoOrigen select c).First();

                var max = (from p in pdbSG2000Entities.TB_MovimientosContablesPosdatados
                           select p).OrderByDescending( p => p.IdMovimiento).FirstOrDefault();

                if (max == null)
                    max = new TB_MovimientosContablesPosdatados();

                unMCConceptoOrigen.IdMovimiento = max.IdMovimiento + 1;
                unMCConceptoOrigen.cdConcepto = cdConceptoConceptoOrigen.cdConcepto;
                unMCConceptoOrigen.dsMovimiento = pdsMovimiento.ToUpper().Trim() + " Fecha: " + pdtFechaPosdata.Date.ToShortDateString() ;
                unMCConceptoOrigen.dsUsuario = pdsUsuario;
                unMCConceptoOrigen.nrCaja = pnrCaja;
                unMCConceptoOrigen.vlPesos = pvlPesos;
                unMCConceptoOrigen.vlDolares = 0.0;
                unMCConceptoOrigen.vlEuros = 0.0;
                unMCConceptoOrigen.dtMovimiento = DateTime.Now;   // Asignamos la fecha de la conciliacion
                unMCConceptoOrigen.nrAnio = DateTime.Now.Year;
                unMCConceptoOrigen.nrRecibo = pIdConciliacion;
                unMCConceptoOrigen.tpCajaImputacion = cdConceptoConceptoOrigen.tpCajaImputacion;  // Completar desde el concepto
                unMCConceptoOrigen.dsConcepto = cdConceptoConceptoOrigen.dsConcepto;  // Completar desde el concepto
                unMCConceptoOrigen.tpOperacion = cdConceptoConceptoOrigen.tpOperacion;  // Completar desde el concepto
                //unMCConceptoOrigen.tpMovimiento = "";
                unMCConceptoOrigen.tpConcepto = cdConceptoConceptoOrigen.tpConcepto;  // Completar desde el concepto

                unMCConceptoOrigen.dsProveedor = "Licencia Nro. " + pnrLicencia;
                unMCConceptoOrigen.nrFactura = pnrFactura;
                unMCConceptoOrigen.flProcesado = false;
                unMCConceptoOrigen.dtFechaPosdata = pdtFechaPosdata;
                unMCConceptoOrigen.nrCupon = pnrCupon;
                unMCConceptoOrigen.IdConciliacion = int.Parse ( pIdConciliacion) ;

                TB_Conceptos cdConceptoConceptoDestino = (from c in pdbSG2000Entities.TB_Conceptos where c.cdConcepto == cdConceptoDestino select c).First(); ;

                pdbSG2000Entities.SaveChanges();

                unMCConceptoDestino.IdMovimiento = max.IdMovimiento + 2;
                unMCConceptoDestino.cdConcepto = cdConceptoConceptoDestino.cdConcepto;
                unMCConceptoDestino.dsMovimiento = pdsMovimiento.ToUpper().Trim() + " Fecha: " + pdtFechaPosdata.Date.ToShortDateString();
                unMCConceptoDestino.dsUsuario = pdsUsuario;
                unMCConceptoDestino.nrCaja = pnrCaja;
                unMCConceptoDestino.vlPesos = pvlPesos;
                unMCConceptoDestino.vlDolares = 0.0;
                unMCConceptoDestino.vlEuros = 0.0;
                unMCConceptoDestino.dtMovimiento = DateTime.Now;   // Asignamos la fecha de la conciliacion
                unMCConceptoDestino.nrAnio = DateTime.Now.Year;
                unMCConceptoDestino.nrRecibo = pIdConciliacion;
                unMCConceptoDestino.tpCajaImputacion = cdConceptoConceptoDestino.tpCajaImputacion;  // Completar desde el concepto
                unMCConceptoDestino.dsConcepto = cdConceptoConceptoDestino.dsConcepto;  // Completar desde el concepto
                unMCConceptoDestino.tpOperacion = cdConceptoConceptoDestino.tpOperacion;  // Completar desde el concepto
                //unMCConceptoOrigen.tpMovimiento = "";
                unMCConceptoDestino.tpConcepto = cdConceptoConceptoDestino.tpConcepto;  // Completar desde el concepto

                unMCConceptoDestino.dsProveedor = "Licencia Nro. " + pnrLicencia;
                unMCConceptoDestino.nrFactura = pnrFactura;
                unMCConceptoDestino.flProcesado = false;
                unMCConceptoDestino.dtFechaPosdata = pdtFechaPosdata;
                unMCConceptoDestino.nrCupon = pnrCupon;
                unMCConceptoDestino.IdConciliacion = int.Parse(pIdConciliacion);

                pdbSG2000Entities.TB_MovimientosContablesPosdatados.Add(unMCConceptoOrigen);
                pdbSG2000Entities.TB_MovimientosContablesPosdatados.Add(unMCConceptoDestino);
                pdbSG2000Entities.SaveChanges();

            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                //foreach (var eve in e.EntityValidationErrors)
                //{
                //    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                //        eve.Entry.Entity.GetType().Name, eve.Entry.State);
                //    foreach (var ve in eve.ValidationErrors)
                //    {
                //        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                //            ve.PropertyName, ve.ErrorMessage);
                //    }
                //}
                throw;
            }
            return;
        }
コード例 #7
0
        // Conciliar
        public void procesarMovimientosPosdatados(decimal pnrCaja , string pdsUsuario)
        {
            using (var context = new dbSG2000Entities())
            {
                try
                {
                    // La logica de la conciliación queda suscripta en el SP
                    spu_procesarMovimientosPosdatados_Result resul = context.spu_procesarMovimientosPosdatados(pnrCaja, pdsUsuario).First();
                    // verificar el resultado que devuelve el STORE
                    Console.WriteLine(resul.resultado + " " + resul.descripcion_error);
                }
                catch (EntityCommandCompilationException e)
                {
                    Console.WriteLine(e.Message);
                    throw;
                }

            }
        }
コード例 #8
0
        public virtual void anularConciliacion(TB_Conciliacion objConciliacion)
        {
            using (var context = new dbSG2000Entities())
            {

                using (TransactionScope transaction = new TransactionScope())
                {

                double TotalConciliacionAnulado = 0.0;

                var objConciliacionBD = (from c in context.TB_Conciliacion
                                         where c.IdConciliacion == objConciliacion.IdConciliacion
                                         select c ).First <TB_Conciliacion>();

                objConciliacionBD.TB_ConciliacionDetalle.ToList();

                // Eliminamos el detalle de la conciliacion
                foreach (TB_ConciliacionDetalle item in objConciliacionBD.TB_ConciliacionDetalle)
                {   // eliminamos los detalle existentes

                    // liberamos al cupon
                    TB_Cupones objCupon = (from c in context.TB_Cupones where item.nrCupon == c.nrCupon select c).First();
                    objCupon.flCobradoalCliente = false;
                    objCupon.dtCobradoalCliente = null;
                    TotalConciliacionAnulado = TotalConciliacionAnulado + objCupon.vlMontoCupon.Value;
                }
                // Eliminamos el detalle de la conciliacion
                //context.Database.ExecuteSqlCommand("DELETE FROM TB_ConciliacionDetalle where IdConciliacion= {0}", objConciliacionBD.IdConciliacion);

                objConciliacionBD.dtModificacion = DateTime.Now;
                objConciliacionBD.dsUsuario = this._usuarioActivo;
                objConciliacionBD.nrCajaAdm = Decimal.Parse(this._cajactiva);
                objConciliacionBD.flestado = "E";  // Conciliacion Eliminada
                context.SaveChanges();

                 GrabarAsientoContable(TotalConciliacionAnulado, Decimal.Parse(this._cajactiva), this._usuarioActivo, objConciliacion, context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes);

                transaction.Complete();
                }

            }
        }
コード例 #9
0
        public IEnumerable<Object> ObtenerViajesaConciliar()
        {
            using (var context = new dbSG2000Entities())
            {
                var listadeViajesaConciliar1 = (from c in context.TB_Cupones
                                                where (c.flCobradoalCliente == false) && (c.flCompensado == false)
                                                && (c.flAnulado == false)
                                                && (new[] { "Tarjeta de Crédito", "Tarjeta de Débito" }.Contains                            (c.tpCupon))
                                                select new { ID = c.nrCupon, FECHA = c.dtCupon,
                                                             LICENCIA = c.nrLicencia,
                                                             DOC = c.tpComprobanteCliente,
                                                             LETRA = c.tpLetraCliente , PDV = c.nrTalonarioCliente ,
                                                             NRO = c.nrComprabanteCliente  , MONTO = c.vlMontoCupon ,
                                                             TARJETA = c.nrTarjeta, DOCU = c.tpDocTarjeta,
                                                             DOCU_NRO = c.nrDocTarjeta
                                                }).OrderBy(c =>  c.FECHA );

                // 'nrDocTarjeta' , 'nrTarjeta' , 'tpDocTarjeta'
                Trace.TraceInformation(  listadeViajesaConciliar1.ToString());
                return listadeViajesaConciliar1.ToList();
                //return listadeViajesaConciliar.ToList();

            }
        }
コード例 #10
0
 public IEnumerable<Object> obtenerUsuariosConciliaciones()
 {
     using (var context = new dbSG2000Entities())
     {
         // Falta agregar filtro de fechas
         var listadeViajesaConciliar1 = (from c in context.TB_Conciliacion
                                         select new { USUARIO = c.dsUsuario } ).Distinct();
         return listadeViajesaConciliar1.ToList();
         //return listadeViajesaConciliar.ToList();
     }
 }
コード例 #11
0
 public IEnumerable<Object> obtenerConciliaciones(DateTime fechadesde , DateTime fechaHasta , String usuario )
 {
     using (var context = new dbSG2000Entities())
     {
         // Falta agregar filtro de fechas
         var listadeViajesaConciliar1 = (from c in context.TB_Conciliacion
                                         where c.dtConciliacion >= fechadesde
                                         && c.dtConciliacion <= fechaHasta
                                         && (c.dsUsuario == usuario || usuario.Trim().Length == 0)
                                         orderby c.IdConciliacion descending  // ordenamos desde mas reciente a mas vieja
                                         select new
                                         {
                                             ID = c.IdConciliacion,
                                             FECHA = c.dtConciliacion,
                                             USUARIO = c.dsUsuario,
                                             CAJA_ADM = c.nrCajaAdm,
                                             FECHA_MODIF = c.dtModificacion,
                                             ESTADO = c.flestado
                                         });
         return listadeViajesaConciliar1.ToList();
         //return listadeViajesaConciliar.ToList();
     }
 }
コード例 #12
0
        public TB_Conciliacion obtenerConciliacion(String pId)
        {
            Int32 id = Int32.Parse(pId)  ;

            using (var context = new dbSG2000Entities())
            {
                // Falta agregar filtro de fechas
                TB_Conciliacion una_conciliacion = (from c in context.TB_Conciliacion
                                                    where c.IdConciliacion == id
                                                select c)
                                                 .First ();
                // Should Load the Details
                una_conciliacion.TB_ConciliacionDetalle.ToList();
                if (una_conciliacion.idArchivo!= null)
                {
                    una_conciliacion.TB_ArchivoTarjeta.ToString();
                }

                return una_conciliacion;
            }
        }
コード例 #13
0
        // se anade virtual ya que puede ser sobreescrito , palabra clacve override
        public virtual void modificarConciliacion(List<Decimal> ids_cupones, 
                                                         List<Decimal> ids_cupones_conciliados, 
                                                         TB_Conciliacion objConciliacion)
        {
            using (var context = new dbSG2000Entities())
            {
                try
                {
                    using (TransactionScope transaction = new TransactionScope())
                    {

                        double TotalConciliacion = 0.0;
                        double TotalConciliacionAnulado = 0.0;

                        // obtenemos el objeto de la BD
                        objConciliacion = (from c in context.TB_Conciliacion
                                           where c.IdConciliacion == objConciliacion.IdConciliacion
                                           select c).First<TB_Conciliacion>();

                        var listadetalleConciliacion = (from c in context.TB_ConciliacionDetalle
                                                        where c.IdConciliacion == objConciliacion.IdConciliacion
                                                        select c
                                                        ).ToList<TB_ConciliacionDetalle>();

                        foreach (TB_ConciliacionDetalle item in listadetalleConciliacion)
                        {   // eliminamos los detalle existentes
                            context.TB_ConciliacionDetalle.Remove(item);
                        }

                        objConciliacion.dtModificacion = DateTime.Now;
                        objConciliacion.dsUsuario = this._usuarioActivo;
                        objConciliacion.nrCajaAdm = Decimal.Parse(this._cajactiva);
                        objConciliacion.flestado = "A";

                        var listadeViajesaConciliar1 = (from c in context.TB_Cupones
                                                        where ids_cupones.Contains(c.nrCupon)
                                                        select c
                                                        );

                        Console.WriteLine(listadeViajesaConciliar1.ToString());

                        Decimal idCupon_conciliado = 0;

                        foreach (var item in listadeViajesaConciliar1.ToList())
                        {
                            idCupon_conciliado = 0;
                            idCupon_conciliado = (from c in ids_cupones_conciliados where item.nrCupon == c select c).FirstOrDefault();

                            if (idCupon_conciliado != 0)
                            {
                                item.flCobradoalCliente = true;
                                item.dtCobradoalCliente = DateTime.Today;
                                context.TB_ConciliacionDetalle.Add(new TB_ConciliacionDetalle { TB_Conciliacion = objConciliacion, nrCupon = item.nrCupon });
                                TotalConciliacion = TotalConciliacion + item.vlMontoCupon.Value ;
                            }
                            else
                            {

                                item.flCobradoalCliente = false;
                                item.dtCobradoalCliente = null;
                                TotalConciliacionAnulado = TotalConciliacionAnulado + item.vlMontoCupon.Value;
                            }

                        }

                        context.SaveChanges();

                        GrabarAsientoContable(TotalConciliacion, Decimal.Parse(this._cajactiva), this._usuarioActivo, objConciliacion, context, Conciliacion_de_Viajes, Viajes_con_Tarjeta_a_Bancos);

                        GrabarAsientoContable(TotalConciliacionAnulado, Decimal.Parse(this._cajactiva), this._usuarioActivo, objConciliacion, context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes);

                        context.SaveChanges();
                        transaction.Complete();

                        return;
                    }

                }
                catch (DbUpdateException next)
                {
                    DbUpdateException se = null;
                    _listado_Errores = new List<String>();
                    while (next.InnerException != null)
                    {
                        _listado_Errores.Add( next.Message);
                        se = next.InnerException as DbUpdateException;
                        next = se;
                    }

                }

            }
        }
コード例 #14
0
        /// <summary>
        /// grabar movimientos contables para reflejar la salida del dinero
        /// </summary>
        /// <param name="una_conciliacion"></param>
        /// <returns></returns>
        public void GrabarAsientoContable(Double pvlPesos , Decimal pnrCaja , String pdsUsuario, TB_Conciliacion pConciliacion, 
                                                    dbSG2000Entities pdbSG2000Entities, int cdConceptoOrigen , int cdConceptoDestino )
        {
            //  Setear conceptos y caja
               //  Obtener la entidad Usuario
            TB_MovimientosContables unMCConceptoOrigen= new TB_MovimientosContables();
            TB_MovimientosContables unMCConceptoDestino = new TB_MovimientosContables();

            TB_Conceptos cdConceptoConceptoOrigen = (from c in pdbSG2000Entities.TB_Conceptos where c.cdConcepto == cdConceptoOrigen select c).First();

            var query = from p in pdbSG2000Entities.TB_MovimientosContables
                        select p.IdMovimiento ;

            unMCConceptoOrigen.IdMovimiento = query.Max()+1;
            unMCConceptoOrigen.cdConcepto = cdConceptoConceptoOrigen.cdConcepto;
            unMCConceptoOrigen.dsMovimiento = "Conciliación Nro:  " + pConciliacion.IdConciliacion.ToString();
            unMCConceptoOrigen.dsUsuario = pdsUsuario;
            unMCConceptoOrigen.nrCaja = pnrCaja;
            unMCConceptoOrigen.vlPesos = pvlPesos;
            unMCConceptoOrigen.vlDolares  = 0.0;
            unMCConceptoOrigen.vlEuros = 0.0;
            unMCConceptoOrigen.dtMovimiento = DateTime.Now;   // Asignamos la fecha de la conciliacion
            unMCConceptoOrigen.nrAnio = DateTime.Now.Year;
            unMCConceptoOrigen.nrRecibo = pConciliacion.IdConciliacion.ToString();
            unMCConceptoOrigen.tpCajaImputacion = cdConceptoConceptoOrigen.tpCajaImputacion  ;  // Completar desde el concepto
            unMCConceptoOrigen.dsConcepto = cdConceptoConceptoOrigen.dsConcepto ;  // Completar desde el concepto
            unMCConceptoOrigen.tpOperacion = cdConceptoConceptoOrigen.tpOperacion ;  // Completar desde el concepto
            //unMCConceptoOrigen.tpMovimiento = "";
            unMCConceptoOrigen.tpConcepto = cdConceptoConceptoOrigen.tpOperacion ;  // Completar desde el concepto
            TB_Conceptos cdConceptoConceptoDestino = (from c in pdbSG2000Entities.TB_Conceptos where c.cdConcepto == cdConceptoDestino select c).First(); ;

            pdbSG2000Entities.SaveChanges();

            unMCConceptoDestino.IdMovimiento = query.Max() + 2;
            unMCConceptoDestino.cdConcepto = cdConceptoConceptoDestino.cdConcepto;
            unMCConceptoDestino.dsMovimiento = "Conciliación Nro:  " + pConciliacion.IdConciliacion.ToString();
            unMCConceptoDestino.dsUsuario = pdsUsuario;
            unMCConceptoDestino.nrCaja = pnrCaja;
            unMCConceptoDestino.vlPesos = pvlPesos;
            unMCConceptoDestino.vlDolares = 0.0;
            unMCConceptoDestino.vlEuros = 0.0;
            unMCConceptoDestino.dtMovimiento = DateTime.Now;   // Asignamos la fecha de la conciliacion
            unMCConceptoDestino.nrAnio = DateTime.Now.Year;
            unMCConceptoDestino.nrRecibo = pConciliacion.IdConciliacion.ToString();
            unMCConceptoDestino.tpCajaImputacion = cdConceptoConceptoDestino.tpCajaImputacion;  // Completar desde el concepto
            unMCConceptoDestino.dsConcepto = cdConceptoConceptoDestino.dsConcepto;  // Completar desde el concepto
            unMCConceptoDestino.tpOperacion = cdConceptoConceptoDestino.tpOperacion;  // Completar desde el concepto
            //unMCConceptoOrigen.tpMovimiento = "";
            unMCConceptoDestino.tpConcepto = cdConceptoConceptoOrigen.tpOperacion;  // Completar desde el concepto

            pdbSG2000Entities.TB_MovimientosContables.Add(unMCConceptoOrigen);
            pdbSG2000Entities.TB_MovimientosContables.Add(unMCConceptoDestino);
            pdbSG2000Entities.SaveChanges();

            return;
        }
コード例 #15
0
        //// fin agregar conciliacion
        /// <summary>
        /// 
        /// </summary>
        /// <param name="una_conciliacion"></param>
        /// <returns></returns>
        public override IEnumerable<Object> ObtenerDetalleConciliacion(long pId)
        {
            List<Decimal> ids_cupones = new List<Decimal>();

            //una_conciliacion.TB_ConciliacionDetalle
            using (var context = new dbSG2000Entities())
            {

                // Falta agregar filtro de fechas
                var una_conciliacionDetalle = (from c in context.TB_ConciliacionDetalle
                                               where c.IdConciliacion == pId
                                               select c);

                foreach (var item in una_conciliacionDetalle)
                {
                    ids_cupones.Add(item.nrCupon);
                }

                var listadeViajesaConciliar1 = (from c in context.TB_Cupones   join  x in  context.TB_ConciliacionDetalle
                                                                   on c.nrCupon equals x.nrCupon
                                                where  ( ids_cupones.Contains(c.nrCupon) && x.IdConciliacion == pId )
                                                select new
                                                {
                                                    ID = c.nrCupon,
                                                    FECHA = c.dtCupon,
                                                    LICENCIA = c.nrLicencia,
                                                    DOC = c.tpComprobanteCliente,
                                                    LETRA = c.tpLetraCliente,
                                                    PDV = c.nrTalonarioCliente,
                                                    NRO = c.nrComprabanteCliente,
                                                    MONTO = c.vlMontoCupon,
                                                    TARJETA = c.nrTarjeta,
                                                    DOCU = c.tpDocTarjeta,
                                                    DOCU_NRO = c.nrDocTarjeta,
                                                    COMPENSADO = c.flCompensado == true ? "SI" : "NO",
                                                    FECHA_ACREDITACION = x.fechaPago
                                                });

                // 'nrDocTarjeta' , 'nrTarjeta' , 'tpDocTarjeta'

                return listadeViajesaConciliar1.ToList();
                //return listadeViajesaConciliar.ToList();

            }
        }
コード例 #16
0
        public override void anularConciliacion(TB_Conciliacion objConciliacion)
        {
            ServiceMovimientoContable unSMC = new ServiceMovimientoContable();

            using (var context = new dbSG2000Entities())
            {

                using (TransactionScope transaction = new TransactionScope())
                {

                    var objConciliacionBD = (from c in context.TB_Conciliacion
                                             where c.IdConciliacion == objConciliacion.IdConciliacion
                                             select c).First<TB_Conciliacion>();

                    objConciliacionBD.TB_ConciliacionDetalle.ToList();

                    // Eliminamos el detalle de la conciliacion
                    foreach (TB_ConciliacionDetalle item in objConciliacionBD.TB_ConciliacionDetalle)
                    {   // eliminamos los detalle existentes

                        // liberamos al cupon
                        TB_Cupones objCupon = (from c in context.TB_Cupones where item.nrCupon == c.nrCupon select c).First();

                        var vlMontoAcreditacion = Convert.ToDouble(objCupon.vlMontoAcreditacion);
                        objCupon.dtCobradoalCliente = null;     // limpiamos la fecha de cobrado
                        objCupon.flCobradoalCliente = false;   // desconciliamos el cupon lo liberamos de la conciliacion
                        objCupon.IdConciliacion = null;
                        objCupon.vlMontoAcreditacion = null;
                        objCupon.dtFechaAcreditacion = null;

                        var nrFactura = objCupon.tpComprobanteCliente + "-" + objCupon.tpLetraCliente + "-" +
                                        objCupon.nrTalonarioCliente + "-" + objCupon.nrComprabanteCliente.Trim() + "/ Cupon: " +
                                        ExtensionString.EmptyIfNull(objCupon.nrCuponPosnet).Trim() + "/ Tarjeta: "
                                        + ExtensionString.EmptyIfNull(objCupon.nrTarjeta).Trim();

                        unSMC.GrabarAsientoContablePosdatados(vlMontoAcreditacion, objConciliacion.nrCajaAdm.Value,
                                objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context,
                                Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes, objCupon.nrLicencia.ToString(),
                                nrFactura, item.fechaPago.Value, objCupon.nrCupon, "Manual");

                    }
                    // Eliminamos el detalle de la conciliacion
                    //context.Database.ExecuteSqlCommand("DELETE FROM TB_ConciliacionDetalle where IdConciliacion= {0}", objConciliacionBD.IdConciliacion);

                    objConciliacionBD.dtModificacion = DateTime.Now;
                    objConciliacion.dsUsuario = this.Usuario;
                    objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm);
                    objConciliacionBD.flestado = "E";  // Conciliacion Eliminada
                    context.SaveChanges();

                    // Procesamos el Movimientos posdatados
                    unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario);

                    transaction.Complete();

                }

            }
        }
コード例 #17
0
        public void agregarConciliacion(List<Decimal> ids_cupones, TB_Conciliacion objConciliacion)
        {
            using (var context = new dbSG2000Entities())
            {

                using (TransactionScope transaction = new TransactionScope())
                {

                objConciliacion.dsUsuario = this._usuarioActivo;
                objConciliacion.nrCajaAdm = Decimal.Parse ( this._cajactiva);
                objConciliacion.flestado = "A";
                objConciliacion.dtModificacion = DateTime.Now;

                var listadeViajesaConciliar1 = (from c in context.TB_Cupones
                                                where ids_cupones.Contains(c.nrCupon)
                                                select c
                                                );

                Console.WriteLine(listadeViajesaConciliar1.ToString());
                Trace.TraceInformation(listadeViajesaConciliar1.ToString());
                TB_ConciliacionDetalle detalleConciliacion = new TB_ConciliacionDetalle();

                double TotalConciliacion=0.0;

                foreach (var item in listadeViajesaConciliar1.ToList())
                {
                    item.flCobradoalCliente = true;
                    item.dtCobradoalCliente = DateTime.Today;
                    context.TB_ConciliacionDetalle.Add(new TB_ConciliacionDetalle { TB_Conciliacion = objConciliacion  , nrCupon = item.nrCupon });
                    TotalConciliacion = TotalConciliacion + item.vlMontoCupon.Value ;
                }
                context.TB_Conciliacion.Add(objConciliacion);

                context.SaveChanges();

               GrabarAsientoContable(TotalConciliacion, Decimal.Parse(this._cajactiva), this._usuarioActivo, objConciliacion, context, Conciliacion_de_Viajes, Viajes_con_Tarjeta_a_Bancos);

                context.SaveChanges();
                transaction.Complete();
                return;
                //return listadeViajesaConciliar.ToList();

                }
            }
        }