コード例 #1
0
ファイル: EntradaController.cs プロジェクト: RichardZC/PAGPA
 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
ファイル: CajaController.cs プロジェクト: RichardZC/PAGPA
        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
ファイル: ReporteController.cs プロジェクト: RichardZC/PAGPA
        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
ファイル: ReporteController.cs プロジェクト: RichardZC/PAGPA
        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
ファイル: session.cs プロジェクト: RichardZC/PAGPA
        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
ファイル: ClienteController.cs プロジェクト: RichardZC/PAGPA
        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
ファイル: ClienteController.cs プロジェクト: RichardZC/PAGPA
        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));
                }
            }
        }