Exemplo n.º 1
0
    private void CreateAreas(int organizationID)
    {
        OrganizationDSTableAdapters.PopulateOrganizationsTableAdapter ota =
            new OrganizationDSTableAdapters.PopulateOrganizationsTableAdapter();

        int?areaID = 0;

        foreach (string areaName in areas)
        {
            ota.InsertArea(organizationID, areaName, ref areaID);
            CreatePeople(organizationID, areaID.Value);
            CreateProject(organizationID, areaID.Value);
            CreateActivity(organizationID, areaID.Value, 0);
            CreateKPI(organizationID, areaID.Value, 0, 0, 0);
        }
    }
Exemplo n.º 2
0
    private void CreateOrganizations()
    {
        OrganizationDSTableAdapters.PopulateOrganizationsTableAdapter ota =
            new OrganizationDSTableAdapters.PopulateOrganizationsTableAdapter();

        PopulateDatabaseDSTableAdapters.QueriesTableAdapter qta =
            new PopulateDatabaseDSTableAdapters.QueriesTableAdapter();

        int?organizationID = 0;

        foreach (string organizationName in organizations)
        {
            ota.Insert(currentUsers[r.Next(0, currentUsers.Length)],
                       organizationName, ref organizationID);

            // Make between 0 and X people owners of the organization
            string[] owners = GetRandomSetOfUsers(r.Next(0, Convert.ToInt32(AllowedOwnDropDownList.SelectedValue) + 1), null);
            foreach (string myOwner in owners)
            {
                qta.InsertObjectPermissions("ORGANIZATION", organizationID.Value, myOwner, "OWN");
            }

            bool allowAllManKPIs       = false;
            bool allowAllManProjects   = false;
            bool allowAllManActivities = false;
            bool allowAllManPeople     = false;

            // X% of the time we will allow Everyone to manage KPIs in the organization
            allowAllManKPIs = (r.Next(0, 100) < Convert.ToInt32(AllowedEveryoneManageDropDownList.SelectedValue));
            // X% of the time we will allow Everyone to manage Projects in the organization
            allowAllManProjects = (r.Next(0, 100) < Convert.ToInt32(AllowedEveryoneManageDropDownList.SelectedValue));
            // X% of the time we will allow Everyone to manage Activities in the organization
            allowAllManActivities = (r.Next(0, 100) < Convert.ToInt32(AllowedEveryoneManageDropDownList.SelectedValue));
            // X% of the time we will allow Everyone to manage People in the organization
            allowAllManPeople = (r.Next(0, 100) < Convert.ToInt32(AllowedEveryoneManageDropDownList.SelectedValue));

            if (allowAllManKPIs)
            {
                qta.InsertObjectPublic("ORGANIZATION", organizationID.Value, "MAN_KPI");
            }
            if (allowAllManProjects)
            {
                qta.InsertObjectPublic("ORGANIZATION", organizationID.Value, "MAN_PROJECT");
            }
            if (allowAllManActivities)
            {
                qta.InsertObjectPublic("ORGANIZATION", organizationID.Value, "MAN_ACTIVITY");
            }
            if (allowAllManPeople)
            {
                qta.InsertObjectPublic("ORGANIZATION", organizationID.Value, "MAN_PEOPLE");
            }

            // Get between 0 and X random people to give them permissons to manage some aspect of this object
            string[] others = GetRandomSetOfUsers(r.Next(0, Convert.ToInt32(AllowManageDropDownList.SelectedValue) + 1), owners);

            foreach (string myOthers in others)
            {
                StringBuilder permissions = new StringBuilder();
                // Get the permissons that we will give them.  They can be one or more
                // of MAN_ACTIVITY, MAN_KPI, MAN_PEOPLE and MAN_PROJECT but
                // these cannot be added if these permissons are public as above.

                // 10% of the time give them MAN_KPI
                if (r.Next(0, 100) < 10 && !allowAllManKPIs)
                {
                    AddToStringList(permissions, "MAN_KPI", ";");
                }

                // 10% of the time give them MAN_PROJECT
                if (r.Next(0, 100) < 10 && !allowAllManProjects)
                {
                    AddToStringList(permissions, "MAN_PROJECT", ";");
                }

                // 10% of the time give them MAN_ACTIVITY
                if (r.Next(0, 100) < 10 && !allowAllManActivities)
                {
                    AddToStringList(permissions, "MAN_ACTIVITY", ";");
                }

                // 10% of the time give them MAN_PEOPLE
                if (r.Next(0, 100) < 10 && !allowAllManPeople)
                {
                    AddToStringList(permissions, "MAN_PEOPLE", ";");
                }

                if (permissions.Length > 0)
                {
                    qta.InsertObjectPermissions("ORGANIZATION", organizationID.Value, myOthers, permissions.ToString());
                }
            }

            CreateAreas(organizationID.Value);
            CreateProject(organizationID.Value, 0);
            CreatePeople(organizationID.Value);
            CreateActivity(organizationID.Value, 0, 0);
            CreateKPI(organizationID.Value, 0, 0, 0, 0);
        }
    }