コード例 #1
0
 public CircuitoDeAprobacionDeViatico(Organigrama organigrama, List <List <int> > saltos_preferenciales, Area area)
 {
     // TODO: Complete member initialization
     this.organigrama           = organigrama;
     this.saltos_preferenciales = saltos_preferenciales;
     this.area_final            = area;
 }
コード例 #2
0
        public override bool Equals(System.Object obj)
        {
            // If parameter is null return false.
            if (obj == null)
            {
                return(false);
            }

            // If parameter cannot be cast to Organigrama return false.
            Organigrama o = obj as Organigrama;

            if ((System.Object)o == null)
            {
                return(false);
            }

            return(this.nodos.Count == o.nodos.Count);
        }
コード例 #3
0
        public Organigrama GetOrganigrama()
        {
            if (organigrama == null)
            {
                var parametros = new Dictionary <string, object>();
                parametros.Add("@FechaVigencia", DateTime.Now);
                parametros.Add("@Muestra_Depto", 1);
                parametros.Add("@Muestra_Lugares_de_Trabajo", 1);
                var areas        = new List <Area>();
                var dependencias = new List <List <Area> >();

                //TablaDeDatos estructura = conexion_bd.Ejecutar("dbo.VIA_GetOrganigrama", new Dictionary<string, object>());
                TablaDeDatos estructura = conexion_bd.Ejecutar("dbo.VIA_Get_AreasParaProtocolo", parametros);

                foreach (var row in estructura.Rows)
                {
                    var area_repetida = AreaRepetida(row, areas);
                    if (area_repetida == null)
                    {
                        AgregarAreaCreadaDesdeRow(row, areas);
                    }
                    //else
                    //    interpretador_de_codigos.PonerleCerosAlFinalDelCodigoDelArea(area_repetida);
                }

                areas.ForEach(a => AsignarPadreEn(a, dependencias, estructura, areas));


                var aliases = ObtenerTodosLosAliasDeAreas();
                aliases.ForEach((alias) =>
                {
                    var area_del_alias = areas.Find(area => area.Id == alias.IdArea);
                    if (area_del_alias != null)
                    {
                        area_del_alias.SetAlias(alias);
                    }
                });

                organigrama = new Organigrama(areas, dependencias);
            }
            return(organigrama);
        }