예제 #1
0
 public static PatenteService getInstance()
 {
     if (instance == null)
     {
         instance = new PatenteService();
     }
     return(instance);
 }
예제 #2
0
        public void quitarFamilia(Usuario usuario, Familia familia)
        {
            //chequear si hay al menos un usuario con cada patente de esta familia
            List <Patente> patentes = PatenteService.getInstance().obtenerPatentesAsignadas(familia);

            foreach (Patente p in patentes.ToList())
            {
                if (tieneUsuarioRelacionado(p))
                {
                    patentes.Remove(p);
                }
            }
            if (patentes.Count > 0)
            {
                //reviso si esta asociado a otras familias y si tienen usuarios relacionados
                foreach (Patente p in patentes.ToList())
                {
                    if (tieneFamiliasRelacionadasConUsuarios(p, familia.Id))
                    {
                        patentes.Remove(p);
                    }
                }
            }

            if (patentes.Count > 0)
            {
                throw new ProEasyException(54, "La Familia dejara patentes sin asignar");
            }

            familiaMapper.quitarFamilia(usuario, familia);
            verificadorService.actualizarDVV("USUARIO_FAMILIA");
            BitacoraService.getInstance().crear(
                Bitacora.builder()
                .Criticidad("ALTA")
                .Descripcion("SE DESASIGNO LA FAMILIA: " + familia.Nombre + " AL USUARIO: " + usuario.Username)
                .Funcionalidad("FAMILIA")
                .Fecha(DateTime.Now)
                .Usuario(Session.getInstance().Usuario)
                .build()
                );
        }
예제 #3
0
 private bool tieneUsuarioRelacionado(Patente p)
 {
     return(PatenteService.getInstance().tieneUsuarioRelacionado(p));
 }