/// <summary> /// Asigna cursos a empresa /// </summary> /// <param name="empresa"></param> public void AsignarCursos(Empresa empresa) { // -- Recupero empresa existente var empresaActual = Dalc.GetByID(empresa.EntityID); // -- Lista de ids de los cursos seleccionados para la empresa List <long> idsCursosEmpresa = empresa.EmpresaCursos.Select(x => x.Curso.EntityID).ToList(); // -- Lista de ids de cursos que tenia la empresa guardada List <long> idsCursosEmpresaEnActual = empresaActual.EmpresaCursos.Select(x => x.Curso.EntityID).ToList(); // -- Borro cursos sacados for (int i = empresaActual.EmpresaCursos.Count - 1; i >= 0; i--) { // -- Si el curso no esta contenido if (!idsCursosEmpresa.Contains(empresaActual.EmpresaCursos[i].Curso.EntityID)) { // -- Quito el curso empresaActual.EmpresaCursos.RemoveAt(i); } } // -- Agrego cursos nuevos foreach (EmpresaCurso empCur in empresa.EmpresaCursos) { // -- Si la empresa no tenia el curso if (!idsCursosEmpresaEnActual.Contains(empCur.Curso.EntityID)) { // Lo agrego empresaActual.EmpresaCursos.Add(empCur); } } // -- Actualizo Dalc.Update(empresaActual); }
public void CargarImagen(Empresa empresa, Stream fileStream, string path, string extension) { path += "logoEmpresa" + empresa.EntityID + extension; var length = Convert.ToInt32(fileStream.Length); byte[] data = null; using (var reader = new BinaryReader(fileStream)) { data = reader.ReadBytes(length); } if (File.Exists(path)) { File.Delete(path); } // -- Creo imagen var file = new FileStream(path, FileMode.Create, FileAccess.Write); file.Write(data, 0, length); file.Close(); // -- Obtengo empresa var empresaActual = Dalc.GetByID(empresa.EntityID); // -- Actualizo imagen empresaActual.Imagen = "logoEmpresa" + empresa.EntityID + extension; // -- Actualizo Dalc.Update(empresaActual); }
/// <summary> /// Borra un curso /// </summary> /// <param name="cursoID"></param> public void BorrarCurso(long cursoID) { // -- Obtengo curso var curso = Dalc.GetByID(cursoID); // -- Obtengo preguntas PreguntaDalc pregDalc = new PreguntaDalc(); var preguntasCurso = pregDalc.GetPreguntasByCurso(cursoID); // -- Obtengo CursosUsuarios CursoUsuarioDalc cuDalc = new CursoUsuarioDalc(); var cursosUsuarios = cuDalc.GetByCurso(cursoID); // -- Obtengo EmpresasCursos EmpresaCursoDalc ecDalc = new EmpresaCursoDalc(); var empresasCursos = ecDalc.GetByCurso(cursoID); // -- Obtengo diapositivas DiapositivaDalc diapositivaDalc = new DiapositivaDalc(); var diapositivas = diapositivaDalc.GetByCurso(cursoID); // -- Obtengo diapositivas vistas DiapositivaVistaDalc dvDalc = new DiapositivaVistaDalc(); List <DiapositivaVista> diapositivasVistas = new List <DiapositivaVista>(); foreach (var d in diapositivas) { diapositivasVistas.AddRange(dvDalc.GetByDiapositiva(d.EntityID)); } Dalc.BorrarCurso(curso, preguntasCurso, cursosUsuarios, empresasCursos, diapositivas, diapositivasVistas); }
/// <summary> /// Actualiza una empresa curso /// </summary> /// <param name="entity"></param> public override void Update(EmpresaCurso entity) { // -- Recupero la empresa curso guardada var empresaCursoActual = Dalc.GetByID(entity.EntityID); entity.Curso = empresaCursoActual.Curso; base.Update(entity); }
/// <summary> /// Actualiza una empresa /// </summary> /// <param name="entity"></param> public override void Update(Empresa entity) { // -- Recupero cursos actuales var empresaActual = Dalc.GetByID(entity.EntityID); // -- Asigno cursos entity.EmpresaCursos = empresaActual.EmpresaCursos; base.Update(entity); }
/// <summary> /// Actualiza el estado de un cursousuario /// </summary> /// <param name="cursoUsuarioID">id del cursousuario</param> /// <param name="estadoID">id del nuevo estado</param> public void ActualizarEstado(long cursoUsuarioID, long estadoID) { var cursoUsuario = Dalc.GetByID(cursoUsuarioID); cursoUsuario.EstadoCurso = new EstadoCurso { EntityID = estadoID }; Dalc.Update(cursoUsuario); }