Пример #1
0
        public JsonResult GuardarPrimaVacacional(int idE, decimal dias, decimal porcentaje, decimal sd, decimal gravado, decimal exento, decimal total, decimal isn)
        {
            var periodo   = Session["periodo"] as NOM_PeriodosPago;
            var idusuario = SessionHelpers.GetIdUsuario();

            if (periodo == null || total <= 0)
            {
                return(Json(new { resultado = false }));
            }

            var pvm = new PrimaVacacionalModulo();

            var obj = new NOM_Nomina_PrimaVacacional
            {
                Id           = 0,
                IdPeriodo    = periodo.IdPeriodoPago,
                IdEmpleado   = idE,
                DiasPrima    = dias,
                Porcentaje   = porcentaje,
                SD           = sd,
                Gravado      = gravado,
                Exento       = exento,
                Total        = total,
                Isn          = isn,
                FechaReg     = DateTime.Now,
                IdUsuarioReg = idusuario
            };

            var r = pvm.SavePrimaVacacional(obj, periodo.IdPeriodoPago);

            return(Json(new { resultado = r }));
        }
Пример #2
0
        //Descarga listado RFC
        public FileResult DescargaListRFC()
        {
            //se obtiene id usuario
            var idU = SessionHelpers.GetIdUsuario();
            //se obtiene los datos de la sucursal
            var sucursal = Session["sucursal"] as SucursalDatos;
            //establecemos la ruta donde se generara el archivo
            var ruta = Server.MapPath("~//Files/valRFC/");
            //se obtiene los datos del empleado
            Empleados emp        = new Empleados();
            bool      estaVacio  = false;
            string    archivoGen = emp.GenerarTxtRfcForSat(ruta, sucursal.IdSucursal, idU, ref estaVacio);

            //Se lee el archivo
            byte[] fyleBytes = System.IO.File.ReadAllBytes(archivoGen);
            //Regresa el archivo
            string nombreArchivo = "Lista RFC " + sucursal.Nombre.Replace('.', '_') + "_" + sucursal.Ciudad.Replace('.', '_') + ".txt";

            if (estaVacio)
            {
                nombreArchivo = "Sin RFC para validar.txt";
            }

            return(File(fyleBytes, System.Net.Mime.MediaTypeNames.Application.Octet, nombreArchivo));
        }
Пример #3
0
        public bool ArchivarNotificacion(int id)
        {
            var idUser = SessionHelpers.GetIdUsuario();

            if (idUser <= 0)
            {
                return(false);
            }

            var old = ctx.Notificacion_Status.Where(x => x.IdNotificacion == id && x.IdUsuario == idUser).OrderByDescending(x => x.Id).FirstOrDefault();

            if (old != null)
            {
                if (old.Status == 3)
                {
                    return(false);
                }
            }

            var not = new Notificacion_Status();

            not.IdNotificacion = id;
            not.IdUsuario      = idUser;
            not.Fecha          = DateTime.Now;
            not.Status         = (int)StatusNotificaciones.Archivada;
            ctx.Notificacion_Status.Add(not);
            var status = ctx.SaveChanges();

            return(status > 0 ? true : false);
        }
Пример #4
0
        public JsonResult UpdateContrato(Empleado_Contrato model)
        {
            var idUsuario = SessionHelpers.GetIdUsuario();
            var response  = ctx.UpdateContrato2(model, idUsuario);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Пример #5
0
        public ActionResult Recontratar(Empleado_Contrato model)
        {
            var idUsuario = SessionHelpers.GetIdUsuario();
            var response  = ctx.Recontratacion(model, idUsuario);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Пример #6
0
        public bool DesarchivarNotificacion(int id)
        {
            var idUser = SessionHelpers.GetIdUsuario();


            if (idUser <= 0)
            {
                return(false);
            }
            var old = getLastStatus(id, idUser);

            if (old != null)
            {
                if (old.Status == 2)
                {
                    return(false);
                }
            }

            var not = new Notificacion_Status();

            not.IdNotificacion = id;
            not.IdUsuario      = idUser;
            not.Fecha          = DateTime.Now;
            not.Status         = (int)StatusNotificaciones.Leida;
            ctx.Notificacion_Status.Add(not);
            var status = ctx.SaveChanges();

            return(status > 0 ? true : false);
        }
Пример #7
0
        public void Alta(int IdEmpleado)
        {
            var confi       = new Configuracion_Empresa();
            var contrato    = ctx.Empleado_Contrato.Where(x => x.IdEmpleado == IdEmpleado).OrderByDescending(x => x.IdContrato).FirstOrDefault();
            var datos       = GetDatosPersonales(IdEmpleado);
            var fiscal      = ctx.Empresa.Where(x => x.IdEmpresa == contrato.IdEmpresaFiscal).Select(x => x.RazonSocial).FirstOrDefault();
            var complemento = ctx.Empresa.Where(x => x.IdEmpresa == contrato.IdEmpresaComplemento).Select(x => x.RazonSocial).FirstOrDefault();
            var asimilado   = ctx.Empresa.Where(x => x.IdEmpresa == contrato.IdEmpresaAsimilado).Select(x => x.RazonSocial).FirstOrDefault();
            var sindicato   = ctx.Empresa.Where(x => x.IdEmpresa == contrato.IdEmpresaSindicato).Select(x => x.RazonSocial).FirstOrDefault();

            confi.Fiscal              = fiscal;
            confi.Complemento         = complemento;
            confi.Asimilado           = asimilado;
            confi.Sindicato           = sindicato;
            datos.Configuracion_Nueva = confi;
            var titulo = GetTitulo(datos);

            if (contrato.FechaIMSS == null)
            {
                NotificacionesCommon.CreateNotification(titulo, DateTime.Now, SessionHelpers.GetIdUsuario(), TiposNotificacion.Alta_General, datos.IdCliente, datos, datos.IdSucursal, contrato.IdContrato, contrato.FechaAlta.ToString("dd-MM-yyyy"));
            }
            else
            {
                NotificacionesCommon.CreateNotification(titulo, DateTime.Now, SessionHelpers.GetIdUsuario(), TiposNotificacion.Alta_Fiscal, datos.IdCliente, datos, datos.IdSucursal, contrato.IdContrato, contrato.FechaIMSS.Value.ToString("dd-MM-yyyy"));
            }
        }
Пример #8
0
        public JsonResult ListaDeRayaByEmpresa(int idEmpresa, int idPeriodo)
        {
            var inci     = new Reportes.Datos.ListaDeRaya();
            var reportes = new Reporte_ListaRaya();


            var ctx     = new RHEntities();
            var periodo = ctx.NOM_PeriodosPago.Where(x => x.IdPeriodoPago == idPeriodo).FirstOrDefault();

            _Incidencias inc             = new _Incidencias();
            var          incidencias2    = inc.GetIncidenciasByPeriodo2(periodo);
            var          listaInicencias = inci.ContadoresIncidencias(incidencias2);

            var      nombreperiodo = periodo.Descripcion;
            DateTime fechaIni      = periodo.Fecha_Inicio;
            DateTime fechaFin      = periodo.Fecha_Fin;
            int      TipoDeNomina  = periodo.IdTipoNomina;
            string   NominaTIpo    = Cat_Sat.GetPeriodicidadPagoById(TipoDeNomina).Descripcion;

            var ruta      = Server.MapPath("~/Files/Autorizacion/");
            var idusuario = SessionHelpers.GetIdUsuario();



            var resultado = reportes.ListaDeRayaPorEmpresa(periodo, false, ruta, idusuario, listaInicencias, idEmpresa);
            var file      = System.IO.File.ReadAllBytes(resultado);

            //return File(file, System.Net.Mime.MediaTypeNames.Application.Octet, "Autorizacion.pdf");
            return(Json(resultado, JsonRequestBehavior.AllowGet));
        }
Пример #9
0
        public async Task <FileResult> GetRecibos33(int idFiniquito = 0)
        {
            if (idFiniquito == 0)
            {
                return(null);
            }

            // int[] nominas = new[] {1,2,3,4,5,6};

            //Random random = new Random();
            //int randomNumber = random.Next(0, 1000);//A

            var ruta        = Server.MapPath("~/Files/DownloadRecibos");
            var idusuario   = SessionHelpers.GetIdUsuario();
            var periodoPago = Session["periodo"] as NOM_PeriodosPago;

            if (periodoPago != null)
            {
                //Genera el xml
                var xml = await FacturaElectronica.GenerarXMLFiniquitoSintimbre(idFiniquito, periodoPago, periodoPago.IdEjercicio, periodoPago.IdPeriodoPago, idusuario, isCfdi33 : true);

                //Crear el pdf con el xml generado
                var recibo = await ProcesoNomina.GetRecibosFiniquitoSinTimbre(idFiniquito, periodoPago, idusuario, ruta, isCfdi33 : true);

                var file = System.IO.File.ReadAllBytes(recibo);

                var nombreArchivo = periodoPago.Descripcion + ".pdf";

                return(File(file, System.Net.Mime.MediaTypeNames.Application.Octet, nombreArchivo));
            }
            else
            {
                return(null);
            }
        }
Пример #10
0
        // Reporte solciitado por lucero - 120918
        public JsonResult GenReporteNominas(int idEjercicio, DateTime?dateInicial, DateTime?dateFinal,
                                            int idEmpresa = 0, int idCliente = 0, int idPeriodoB = 0)
        {
            #region REPORTE CANCELADOS

            var ruta         = Server.MapPath("~/Files/ReporteNominas");
            var pathDescarga = "/Files/ReporteNominas/";

            int idUsuario = SessionHelpers.GetIdUsuario();

            var archivoGenerado = ReportesGenerales.GenerarReporteNominas(dateInicial, dateFinal, idEjercicio, idEmpresa, idCliente, idUsuario, ruta, pathDescarga, 0);


            if (archivoGenerado == null)
            {
                return(Json(new { success = false, error = "No se encontrarón registros con esos criterios de busqueda", resultPath = "" }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new { success = true, error = "", resultPath = archivoGenerado }, JsonRequestBehavior.AllowGet));

            #endregion
            // var archivoReporte = "";

            // archivoReporte = ReportesGenerales.GenerarReporteNominas(dateInicial, dateFinal, idEjercicio, idEmpresa, idCliente,idUsuario, ruta, pathDescarga, 0);
            //ReportesGenerales.GuardaIncidenciasEnTabla();

            //return Json(new { success = true, error = "", resultPath = archivoReporte }, JsonRequestBehavior.AllowGet);
        }
Пример #11
0
        public ActionResult Cambiosalario(int idContrato, DateTime Fechainicio, decimal SalarioReal = 0, decimal SD = 0, decimal SDI = 0)
        {
            var idUsuario = SessionHelpers.GetIdUsuario();
            var response  = ctx.Cambiosalario(idUsuario, idContrato, Fechainicio, Math.Round(SalarioReal, 4), Math.Round(SD, 4), Math.Round(SDI, 4));

            return(Json(idUsuario, JsonRequestBehavior.AllowGet));
        }
Пример #12
0
        public bool InsertarSucursalReciente(int IdSucursal)
        {
            bool result = false;

            var usuario = SessionHelpers.GetIdUsuario();

            SYA_Recientes sucursalReciente = new SYA_Recientes();

            sucursalReciente.IdSucursal = IdSucursal;

            sucursalReciente.IdUsuario = usuario;

            var date = DateTime.Now;

            sucursalReciente.FechaIngreso = date;

            using (var context = new RHEntities())
            {
                context.SYA_Recientes.Add(sucursalReciente);

                int response = context.SaveChanges();

                if (response > 0)
                {
                    result = true;
                }
            }

            return(result);
        }
Пример #13
0
        public PartialViewResult GetPeriodosPago(int id = 0)
        {
            var          idusuario = SessionHelpers.GetIdUsuario();
            SYA_Usuarios usuarios;

            using (var context = new RHEntities())
            {
                usuarios = context.SYA_Usuarios.FirstOrDefault(x => x.IdUsuario == idusuario);
            }

            var sucursal = Session["sucursal"] as SucursalDatos;
            var periodos = new List <NOM_PeriodosPago>();

            if (sucursal != null)
            {
                PeriodosPago ctx = new PeriodosPago();
                periodos = ctx.GetPeriodosPagoBySucursal(sucursal.IdSucursal, id);
                periodos = periodos.OrderByDescending(x => x.IdPeriodoPago).ToList();

                ViewBag.SelectedEf = id;
                ViewBag.Ejercicios = sucursal.Ejercicios;
            }



            ViewBag.usuarios = usuarios;
            return(PartialView(periodos));
        }
Пример #14
0
        public async Task <ActionResult> DownloadRecibos(int[] idNominas = null)
        {
            if (idNominas == null)
            {
                return(null);
            }

            var      ruta        = Server.MapPath("~/Files/DownloadRecibos");
            var      idusuario   = SessionHelpers.GetIdUsuario();
            var      periodo     = Session["periodo"] as NOM_PeriodosPago;
            DateTime dt          = DateTime.Now;
            var      nombrezip   = "Cfdi ";
            bool     isFiniquito = false;

            if (periodo != null)
            {
                isFiniquito = periodo.IdTipoNomina == 11;//Finiquito
                nombrezip  += periodo.Descripcion;
            }

            nombrezip += " " + dt.Day + dt.Month + dt.Year + ".zip";

            var arr = await _fe.DownloadRecibosCfdiAsync(idNominas, idusuario, ruta, isFiniquito : isFiniquito);

            return(new ZipResult(nombrezip, arr));
        }
Пример #15
0
        //int idEjercicio, DateTime dateInicial, DateTime dateFinal, int idEmpresa = 0, int idCliente = 0

        public JsonResult ReporteAcumulado(int idEjercicio, DateTime?dateInicial, DateTime?dateFinal, int idEmpresa = 0, int idCliente = 0, bool incluirNoAutorizados = false, bool calculoanual = false)
        {
            if (idEjercicio == null || dateInicial == null || dateFinal == null)
            {
                return(Json(new { success = false, error = "Debe seleccionar las fechas de Inicio y Fin", resultPath = "" }, JsonRequestBehavior.AllowGet));
            }

            if (dateFinal < dateInicial)
            {
                return(Json(new { success = false, error = "La Fecha final no debe ser menor que la fecha inicial", resultPath = "" }, JsonRequestBehavior.AllowGet));
            }

            //Metodo que hace la busqueda de los periodos
            //Reporte_Acumulado acu = new Reporte_Acumulado();
            ReportesGenerales rg = new ReportesGenerales();
            //var listaPeriodos = acu.GetPeriodosAutorizados(idEjercicio, dateInicial, dateFinal, idEmpresa, idCliente);

            var ruta         = Server.MapPath("~/Files/Acumulados");
            var pathDescarga = "/Files/Acumulados/";

            //var archivoAcumulado = acu.GenerarArchivoAcumulado(0, listaPeriodos, ruta, pathDescarga, idEmpresa, idCliente);
            int idUsuario = SessionHelpers.GetIdUsuario();
            //var archivoAcumulado = acu.GenerarArchivoAcumuladoComplete2(idUsuario, ruta, pathDescarga, idEjercicio, dateInicial, dateFinal, idEmpresa, idCliente, incluirNoAutorizados,calculoanual);
            var archivoAcumulado = rg.GenerarArchivoAcumuladoComplete_NUEVO2018(idUsuario, ruta, pathDescarga, idEjercicio, dateInicial, dateFinal, idEmpresa, idCliente, incluirNoAutorizados, calculoanual);

            if (archivoAcumulado == null)
            {
                return(Json(new { success = false, error = "No se encontrarón periodos con esos criterios de busqueda", resultPath = "" }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new { success = true, error = "", resultPath = archivoAcumulado }, JsonRequestBehavior.AllowGet));
        }
Пример #16
0
        /// <summary>
        /// Obtiene la foto de perfil del usuario en sesión
        /// </summary>
        /// <returns></returns>
        public static string GetCurrentUserProfilePicture()
        {
            var            IdUser = SessionHelpers.GetIdUsuario();
            ControlUsuario cu     = new ControlUsuario();

            return(cu.GetProfilePicture(IdUser));
        }
Пример #17
0
        // GET: Usuarios
        public ActionResult Index()
        {
            var IdUser = SessionHelpers.GetIdUsuario();
            var modelo = _ctx.GetUsuarioById(IdUser);

            ViewBag.UserPicture = GetPicture(modelo.Fotografia);
            return(View(modelo));
        }
Пример #18
0
        public ActionResult CreateInfonavit(Empleado_Infonavit model)
        {
            Infonavit inf       = new Infonavit();
            int       idUsuario = SessionHelpers.GetIdUsuario();
            var       id        = inf.Create(model, idUsuario);

            return(Json(id, JsonRequestBehavior.AllowGet));
        }
Пример #19
0
        public JsonResult RegistrarInasistencia(string[] fechas, int[] idEmpleados, int IdTipoInasistencia)
        {
            _Inasistencias ctx    = new _Inasistencias();
            var            IdUser = SessionHelpers.GetIdUsuario();
            var            result = ctx.GuardarInasistencias(idEmpleados, fechas, IdTipoInasistencia, IdUser);

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Пример #20
0
        /// <summary>
        /// Metodo que obtiene el Usuario con el Id de la session activa
        /// </summary>
        /// <returns></returns>
        public static SYA_Usuarios GetUsuarioEnSession()
        {
            ControlUsuario cu = new ControlUsuario();

            var usuario = cu.GetUsuarioById(SessionHelpers.GetIdUsuario());

            return(usuario);
        }
Пример #21
0
        public ActionResult TerminarProcesoNuevoEmpleado()//alta
        {
            bool esRecontrato = false;
            var  idUsuario    = SessionHelpers.GetIdUsuario();
            var  empleado     = TempData["empleado"] as Empleado;
            var  contrato     = TempData["contrato"] as Empleado_Contrato;
            var  dBancarios   = TempData["dbancarios"] as DatosBancarios;

            if (empleado == null)
            {
                return(RedirectToAction("Index"));
            }

            esRecontrato = empleado.IdEmpleado > 0;

            //si el empleado.IdEmpleado > 0 actualizara los datos
            //sino creará un nuevo registro
            var IdEmpleado = ctx.CrearEmpleado(empleado, idUsuario);

            if (IdEmpleado > 0)
            {
                contrato.IdEmpleado = IdEmpleado;
                contrato.IdSucursal = empleado.IdSucursal;

                contrato.IsReingreso = esRecontrato;
                //factorfx
                ctx.CrearContrato(contrato, idUsuario);

                if (dBancarios != null)
                {
                    dBancarios.IdEmpleado = IdEmpleado;
                    ctx.NewDatosBancarios(dBancarios, idUsuario);
                }


                var noti = new BLL.Notificaciones();
                if (esRecontrato == false)
                {
                    noti.Alta(IdEmpleado);
                }
                else
                {
                    noti.Recontratacion(IdEmpleado, contrato.FechaAlta);
                }


                // noti.IMSS(contrato);
                //Asignar conceptos Default
                if (empleado != null)
                {
                    if (esRecontrato == false)//sino es reingreso, asigana los conceptos defaults
                    {
                        ConceptosNomina.AsignarConceptosDefaultByEmpleado(empleado.IdSucursal, empleado.IdEmpleado);
                    }
                }
            }
            return(RedirectToAction("Index"));
        }
Пример #22
0
        public JsonResult crearLayout(int idSucursal)
        {
            ImportacionDatosBancarios datos = new ImportacionDatosBancarios();
            var idusuario = SessionHelpers.GetIdUsuario();
            var ruta      = Server.MapPath("~/Files/PlantillaDatosBancarios");
            var resultado = datos.crearLayoutBancario(idusuario, ruta, idSucursal);

            return(Json(resultado, JsonRequestBehavior.AllowGet));
        }
Пример #23
0
        public ActionResult DatosEmpleados()
        {
            int idUsuario = SessionHelpers.GetIdUsuario();

            var clienteSucursal = ReportesGenerales.GetSucusalesByUsuario(idUsuario);

            ViewBag.sucursales = clienteSucursal;
            return(PartialView());
        }
Пример #24
0
        public async Task <JsonResult> ActualizarInicidenciaTabla()
        {
            int idUsuario = SessionHelpers.GetIdUsuario();

            await ReportesGenerales.GuardaIncidenciasEnTabla();


            return(Json(new { success = true, error = "", resultPath = "" }, JsonRequestBehavior.AllowGet));
        }
Пример #25
0
        public void IMSS(Empleado_Contrato contrato)
        {
            var cd = GetDatosPersonales(contrato.IdEmpleado);

            cd.Fecha_IMSS = contrato.FechaIMSS.Value.ToString("dd-MM-yyyy");
            var titulo = GetTitulo(cd);

            NotificacionesCommon.CreateNotification(titulo, DateTime.Now, SessionHelpers.GetIdUsuario(), TiposNotificacion.Cambio_Fecha_IMSS, cd.IdCliente, cd, cd.IdSucursal, contrato.IdContrato, contrato.FechaAlta.ToString("dd-MM-yyyy"));
        }
Пример #26
0
        public JsonResult UpdateEmpleado(Empleado empleado)
        {
            var sucursal  = Session["Sucursal"] as SucursalDatos;
            var idUsuario = SessionHelpers.GetIdUsuario();

            var result = ctx.UpdateEmpleado(empleado, sucursal.IdSucursal, idUsuario);

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Пример #27
0
        public JsonResult RegistrarHorasExtras(string[] fechas, int[] idEmpleados, int horas, bool tipoSimple)
        {
            HorasExtrasClass obj = new HorasExtrasClass();
            var IdUser           = SessionHelpers.GetIdUsuario();

            var result = obj.GuardarHorasExtras(idEmpleados, fechas, horas, tipoSimple, IdUser);

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Пример #28
0
        public int AddComment(Notificacion_Comentarios comment)
        {
            comment.IdUsuario = SessionHelpers.GetIdUsuario();
            comment.Fecha     = DateTime.Now;
            ctx.Notificacion_Comentarios.Add(comment);
            var status = ctx.SaveChanges();

            return(comment.Id);
        }
Пример #29
0
        public ActionResult UploadRecords()
        {
            var idUsuario = SessionHelpers.GetIdUsuario();
            var data      = (System.Data.DataTable)TempData["dtEmp"];
            ImportacionMasivaEmpleados ctxImp = new ImportacionMasivaEmpleados();
            var sucursal = Session["Sucursal"] as SucursalDatos;

            ctxImp.UploadRecords(data, sucursal.IdSucursal, sucursal.IdCliente, idUsuario);
            return(RedirectToAction("Index", "Empleados"));
        }
Пример #30
0
        //public ActionResult ExportarReporte()
        //{
        //    return View();
        //}
        public JsonResult ExportarEmpleados()
        {
            ExportarReporte reporte   = new ExportarReporte();
            var             idusuario = SessionHelpers.GetIdUsuario();
            var             sucursal  = Session["sucursal"] as SucursalDatos;
            var             ruta      = Server.MapPath("~/Files/ExportarEmpleados/");
            var             resultado = reporte.CrearExcel(sucursal.IdSucursal, ruta, idusuario, sucursal.Nombre, sucursal.Ciudad);

            return(Json(resultado, JsonRequestBehavior.AllowGet));
        }