Пример #1
0
 public ActionResult Guardar(int pMovimientoId, int pAlmacenId, int pTipoMovimientoId, string pFecha, string pObservacion)
 {
     if (pMovimientoId == 0)
     {
         var item = new Movimiento
         {
             MovimientoId     = pMovimientoId,
             AlmacenId        = pAlmacenId,
             TipoMovimientoId = pTipoMovimientoId,
             Fecha            = VendixGlobal.GetFecha(),
             EstadoId         = 1,
             Observacion      = string.Empty,
             IGV            = 0,
             TotalImporte   = 0,
             SubTotal       = 0,
             AjusteRedondeo = 0
         };
         MovimientoBL.Crear(item);
         pMovimientoId = item.MovimientoId;
     }
     else
     {
         MovimientoBL.ActualizarMov(pMovimientoId, pTipoMovimientoId, DateTime.Parse(pFecha), pObservacion);
     }
     return(Json(pMovimientoId, JsonRequestBehavior.AllowGet));
 }
Пример #2
0
        public ActionResult GuardarCaja(int pCajaId, int pOficinaId, string pDenominacion, bool pActivo)
        {
            Caja caja;

            if (pCajaId == 0)
            {
                caja = new Caja
                {
                    CajaId       = pCajaId,
                    OficinaId    = pOficinaId,
                    Denominacion = pDenominacion,
                    Estado       = pActivo,
                    IndAbierto   = false,
                    FechaReg     = VendixGlobal.GetFecha(),
                    UsuarioRegId = VendixGlobal.GetUsuarioId()
                };
                CajaBL.Crear(caja);
            }
            else
            {
                caja              = CajaBL.Obtener(pCajaId);
                caja.OficinaId    = pOficinaId;
                caja.Denominacion = pDenominacion;
                caja.Estado       = pActivo;
                caja.FechaMod     = VendixGlobal.GetFecha();
                caja.UsuarioModId = VendixGlobal.GetUsuarioId();
                CajaBL.Actualizar(caja);
            }

            return(Json(true, JsonRequestBehavior.AllowGet));
        }
Пример #3
0
        public ActionResult Index(int id = 0, int pPersonaId = 0)
        {
            if (id == 0 && pPersonaId > 0)
            {
                var orden = Repositorio <OrdenVenta> .Crear(new OrdenVenta()
                {
                    OficinaId      = VendixGlobal.GetOficinaId(),
                    PersonaId      = pPersonaId,
                    Subtotal       = 0,
                    TotalDescuento = 0,
                    TotalImpuesto  = 0,
                    TotalNeto      = 0,
                    TipoVenta      = "CON",
                    Estado         = "PEN",
                    UsuarioRegId   = VendixGlobal.GetUsuarioId(),
                    FechaReg       = VendixGlobal.GetFecha()
                });

                id = orden.OrdenVentaId;
            }

            if (id > 0)
            {
                return(View(Repositorio <OrdenVenta> .Listar(x => x.OrdenVentaId == id, includeProperties: "OrdenVentaDet,Persona,Oficina").FirstOrDefault()));
            }
            return(View(new OrdenVenta {
                TotalNeto = 0, TotalDescuento = 0
            }));
        }
Пример #4
0
        public ActionResult ReporteCobroDiario(int?pGestorid, int?pOficinaid, bool indMora = false)
        {
            var usuarioid    = pGestorid.HasValue ? pGestorid.Value : VendixGlobal.GetUsuarioId();
            var cajadiarioid = VendixGlobal.GetCajaDiarioId();
            var oAgente      = UsuarioBL.Obtener(x => x.UsuarioId == usuarioid, "Persona");
            var sCaja        = pGestorid.HasValue ? string.Empty : CajaDiarioBL.Obtener(x => x.CajaDiarioId == cajadiarioid, "Caja").Caja.Denominacion;
            var titulo       = "COBRO DIARIO";
            var oCredito     = CreditoBL.ReporteCobroDiario(usuarioid, pOficinaid);

            if (indMora)
            {
                oCredito = oCredito.Where(x => x.Mora > 0).ToList();
                titulo   = "REPORTE DE MOROSIDAD";
            }


            var saldosininteres = oCredito.Sum(x => x.MontoCredito);
            var saldomora       = oCredito.Sum(x => x.Mora);
            var saldoVencido    = oCredito.Where(x => x.DiasAtrazo > 0).Sum(x => x.MontoCredito);

            var rd         = new ReportDataSource("dsCobroDiario", oCredito);
            var parametros = new List <ReportParameter>
            {
                new ReportParameter("Fecha", VendixGlobal.GetFecha().ToString()),
                new ReportParameter("Agente", oAgente.Persona.NombreCompleto),
                new ReportParameter("Caja", sCaja),
                new ReportParameter("SaldoVencido", saldoVencido.ToString()),
                new ReportParameter("SaldoMoroso", saldomora.ToString()),
                new ReportParameter("SaldoSinInteres", saldosininteres.ToString()),
                new ReportParameter("Titulo", titulo)
            };

            return(Reporte("PDF", "rptCobroDiario.rdlc", rd, "A4Horizontal0.25", parametros));
        }
Пример #5
0
        public ActionResult ReporteCreditoRentabilidad(string pFechaIni, string pFechaFin, bool indTodos, int?pOficinaId)
        {
            if (indTodos)
            {
                pFechaIni = "01/10/2013";
                pFechaFin = VendixGlobal.GetFecha().ToShortDateString();
            }
            var data = CreditoBL.ReporteCreditoRentabilidad(pOficinaId, DateTime.Parse(pFechaIni), DateTime.Parse(pFechaFin));
            var rd   = new ReportDataSource("dsCreditoRentabilidad", data);

            var oficina = "TODOS";

            if (pOficinaId != null)
            {
                oficina = OficinaBL.Obtener(pOficinaId.Value).Denominacion;
            }

            var parametros = new List <ReportParameter>
            {
                new ReportParameter("Oficina", oficina),
                new ReportParameter("FechaIni", indTodos?"----": DateTime.Parse(pFechaIni).ToShortDateString()),
                new ReportParameter("FechaFin", DateTime.Parse(pFechaFin).ToShortDateString())
            };

            return(Reporte("PDF", "rptCreditoRentabilidad.rdlc", rd, "A4Horizontal0.25", parametros));
        }
Пример #6
0
        public static void AddUserToSession(string id)
        {
            bool persist = true;
            var  cookie  = FormsAuthentication.GetAuthCookie("usuario", persist);

            cookie.Name    = FormsAuthentication.FormsCookieName;
            cookie.Expires = VendixGlobal.GetFecha().AddMonths(3);

            var ticket    = FormsAuthentication.Decrypt(cookie.Value);
            var newTicket = new FormsAuthenticationTicket(ticket.Version, ticket.Name, ticket.IssueDate, ticket.Expiration, ticket.IsPersistent, id);

            cookie.Value = FormsAuthentication.Encrypt(newTicket);
            HttpContext.Current.Response.Cookies.Add(cookie);
        }
Пример #7
0
        public ActionResult ObtenerFechaPrimerPago(string pModalidad)
        {
            var fecha = VendixGlobal.GetFecha();

            switch (pModalidad)
            {
            case "D": fecha = fecha.AddDays(1); break;

            case "S": fecha = fecha.AddDays(7); break;

            case "Q": fecha = fecha.AddDays(15); break;

            case "M": fecha = fecha.AddMonths(1); break;
            }
            return(Json(fecha.ToString("dd/MM/yyyy"), JsonRequestBehavior.AllowGet));
        }
Пример #8
0
        public ActionResult CrearTransferencia(int pAlmacenDestinoId)
        {
            var oficinaid = VendixGlobal.GetOficinaId();
            var usuarioid = VendixGlobal.GetUsuarioId();

            var item = new Transferencia
            {
                AlmacenOrigenId  = AlmacenBL.Obtener(x => x.OficinaId == oficinaid).AlmacenId,
                AlmacenDestinoId = pAlmacenDestinoId,
                UsuarioId        = usuarioid,
                Fecha            = VendixGlobal.GetFecha(),
                Estado           = "P"
            };

            TransferenciaBL.Crear(item);

            return(Json(item.TransferenciaId, JsonRequestBehavior.AllowGet));
        }
Пример #9
0
        public ActionResult CondonarCredito(int pCreditoId, decimal pMontocxc, string pObs)
        {
            using (var scope = new TransactionScope())
            {
                try
                {
                    var cxc = CuentaxCobrarBL.Obtener(x => x.CreditoId == pCreditoId);
                    if (cxc == null)
                    {
                        CuentaxCobrarBL.Crear(new CuentaxCobrar
                        {
                            Operacion = "CDN",
                            Monto     = pMontocxc,
                            Estado    = "PEN",
                            CreditoId = pCreditoId
                        });
                    }
                    else
                    {
                        cxc.CreditoId = pCreditoId;
                        cxc.Operacion = "CDN";
                        cxc.Monto     = pMontocxc;
                        cxc.Estado    = "PEN";
                        CuentaxCobrarBL.Actualizar(cxc);
                    }

                    var c = CreditoBL.Obtener(pCreditoId);
                    c.Observacion = VendixGlobal.GetFecha().ToString() + " " + pObs;
                    CreditoBL.Actualizar(c);
                    scope.Complete();
                    return(Json(true));
                }
                catch (Exception ex)
                {
                    scope.Dispose();
                    return(Json(ex.InnerException.Message));
                }
            }
        }
Пример #10
0
        public ActionResult Guardar(Persona p, Cliente c, string chkActivo, string txtOtros)
        {
            p.Estado = true;
            c.Estado = string.IsNullOrEmpty(chkActivo) ? false : true;
            p.Codigo = p.Codigo.Trim().ToUpper();
            try
            {
                if (!string.IsNullOrEmpty(txtOtros))
                {
                    var objNuevaOcupacion = new Ocupacion()
                    {
                        Denominacion = txtOtros, Estado = true
                    };
                    OcupacionBL.Crear(objNuevaOcupacion);
                    c.ActividadEconId = objNuevaOcupacion.OcupacionId;
                }

                if (p.PersonaId > 0)
                {
                    c.PersonaId = p.PersonaId;
                    var persona = PersonaBL.Obtener(p.PersonaId);
                    p.TipoPersona = persona.TipoPersona;
                    //p.NumeroDocumento = persona.NumeroDocumento;
                }
                if (p.TipoPersona == "N")
                {
                    p.TipoDocumento  = "DNI";
                    p.NombreCompleto = p.ApePaterno + " " + p.ApeMaterno + ", " + p.Nombre;
                    p.TipoPersona    = "N";
                }
                else
                {
                    p.TipoPersona    = "J";
                    p.TipoDocumento  = "RUC";
                    p.NombreCompleto = p.Nombre;
                }

                PersonaBL.Guardar(p);

                if (c.ClienteId > 0)
                {
                    var cliente = ClienteBL.Obtener(c.ClienteId);
                    c.FechaRegistro = cliente.FechaRegistro;
                    c.Calificacion  = cliente.Calificacion;
                    c.UsuarioRegId  = cliente.UsuarioRegId;
                }
                else
                {
                    c.FechaRegistro = VendixGlobal.GetFecha();
                    c.Calificacion  = "A";
                    c.UsuarioRegId  = VendixGlobal.GetUsuarioId();
                }
                c.ClienteId = p.PersonaId;
                c.PersonaId = p.PersonaId;
                ClienteBL.Guardar(c);
                return(RedirectToAction("Index", "Cliente"));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #11
0
        public ActionResult GuardarCliente(int pClienteId, string pTipoPersona, string pNombre, string pApePaterno, string pApeMaterno,
                                           string pNumeroDocumento, bool pSexoM, string pEmail, string pCelular1, string pNota,
                                           DateTime?pFechaNacimiento, string pDireccion, DateTime?pFechaCaptacion, int?pOcupacionId,
                                           string pCalificacion, decimal?pMontoInscripcion, bool pActivo)
        {
            var cliente = new Cliente();
            var persona = PersonaBL.Obtener(x => x.NumeroDocumento == pNumeroDocumento);

            if (persona == null)
            {
                persona = new Persona();
            }

            //if (pClienteId > 0)
            //{
            //    cliente = ClienteBL.Obtener(pClienteId);
            //    persona = PersonaBL.Obtener(cliente.PersonaId);
            //}

            pNombre = pNombre.ToUpper();
            if (pTipoPersona == "N")
            {
                pApePaterno            = pApePaterno.ToUpper();
                pApeMaterno            = pApeMaterno.ToUpper();
                persona.NombreCompleto = pApePaterno + " " + pApeMaterno + ", " + pNombre;
                persona.TipoDocumento  = "DNI";
            }
            else
            {
                pApePaterno            = string.Empty;
                pApeMaterno            = string.Empty;
                persona.NombreCompleto = pNombre;
                persona.TipoDocumento  = "RUC";
            }

            persona.TipoPersona     = pTipoPersona;
            persona.Nombre          = pNombre;
            persona.ApePaterno      = pApePaterno;
            persona.ApeMaterno      = pApeMaterno;
            persona.NumeroDocumento = pNumeroDocumento;
            persona.Sexo            = pSexoM ? "M" : "F";
            persona.EmailPersonal   = pEmail;
            persona.Celular1        = pCelular1;
            persona.FechaNacimiento = pFechaNacimiento;
            persona.Direccion       = pDireccion;
            persona.Estado          = pActivo;

            if (persona.PersonaId == 0)
            {
                PersonaBL.Crear(persona);
            }
            else
            {
                PersonaBL.Actualizar(persona);
            }

            //if (pClienteId == 0)
            //    PersonaBL.Crear(persona);
            //else
            //    PersonaBL.Actualizar(persona);
            if (pClienteId > 0)
            {
                cliente = ClienteBL.Obtener(pClienteId);
            }

            cliente.PersonaId     = persona.PersonaId;
            cliente.FechaRegistro = VendixGlobal.GetFecha();
            //cliente.FechaCaptacion = pFechaCaptacion;
            cliente.ActividadEconId = pOcupacionId;
            cliente.Calificacion    = pCalificacion;
            //cliente.Inscripcion = pMontoInscripcion.Value;
            //cliente.IndPagoInscripcion = false;
            cliente.Estado = pActivo;
            cliente.Nota   = pNota;
            if (pClienteId == 0)
            {
                ClienteBL.Crear(cliente);
            }
            else
            {
                ClienteBL.Actualizar(cliente);
            }

            return(Json(true, JsonRequestBehavior.AllowGet));
        }
Пример #12
0
        public JsonResult RealizarSalida(int tipoMovId, string glosa, List <SerieSalida> series)
        {
            var oficinaid   = VendixGlobal.GetOficinaId();
            var almacenId   = AlmacenBL.Obtener(x => x.OficinaId == oficinaid).AlmacenId;
            var listamovdet = new List <MovimientoDet>();


            using (var scope = new TransactionScope())
            {
                try
                {
                    var mov = new Movimiento()
                    {
                        TipoMovimientoId = tipoMovId,
                        AlmacenId        = almacenId,
                        Fecha            = VendixGlobal.GetFecha(),
                        SubTotal         = 0,
                        IGV            = 0,
                        AjusteRedondeo = 0,
                        TotalImporte   = 0,
                        EstadoId       = 3,
                        Observacion    = glosa
                    };
                    MovimientoBL.Crear(mov);

                    foreach (var item in series)
                    {
                        bool f = false;
                        foreach (var i in listamovdet)
                        {
                            if (item.ArticuloId == i.ArticuloId)
                            {
                                f = true;
                                i.Cantidad++;
                                i.Descripcion += ", " + item.Serie;
                            }
                        }

                        if (f == false)
                        {
                            listamovdet.Add(new MovimientoDet()
                            {
                                MovimientoId    = mov.MovimientoId,
                                Cantidad        = 1,
                                ArticuloId      = item.ArticuloId,
                                Descripcion     = item.Denominacion + " " + item.Serie,
                                Descuento       = 0,
                                Importe         = 0,
                                IndCorrelativo  = false,
                                UnidadMedidaT10 = 1
                            });
                        }
                    }

                    foreach (var item in listamovdet)
                    {
                        MovimientoDetBL.Crear(item);
                        var ser = series.FindAll(x => x.ArticuloId == item.ArticuloId);

                        SerieArticulo s;
                        foreach (var x in ser)
                        {
                            s                    = SerieArticuloBL.Obtener(x.SerieId);
                            s.EstadoId           = 5; //anulado
                            s.MovimientoDetSalId = item.MovimientoDetId;
                            SerieArticuloBL.Actualizar(s);
                        }
                    }
                    scope.Complete();
                    return(Json(string.Empty));
                }
                catch (Exception ex)
                {
                    scope.Dispose();
                    return(Json(ex.InnerException.Message));
                }
            }
        }