private ListItem[] GetAvailableUsers(List <Object> userList)
        {
            SqlConnection          sqlConnection = settingsMasterPage.dataAccess.GetConnection();
            CostCenterAssociateDAO associateDAO  = new CostCenterAssociateDAO(sqlConnection);
            List <Object>          associates    = associateDAO.GetAllAssociates(tenant.id);

            SortedList <String, ListItem> availableUsers = new SortedList <String, ListItem>();

            foreach (User user in userList)
            {
                comparisonValue = user.id;

                if (associates.Find(CheckAssociateMethod) == null)
                {
                    ListItem availableUser = new ListItem();
                    availableUser.Text  = user.alias;
                    availableUser.Value = user.id.ToString();

                    availableUsers.Add(availableUser.Text, availableUser);
                }
            }

            ListItem[] returnList = new ListItem[availableUsers.Count];
            availableUsers.Values.CopyTo(returnList, 0);

            return(returnList);
        }
        private void ProcessSubmitClick()
        {
            SqlConnection          sqlConnection = settingsMasterPage.dataAccess.GetConnection();
            CostCenterAssociateDAO associateDAO  = new CostCenterAssociateDAO(sqlConnection);

            foreach (String fieldName in Request.Form)
            {
                if (fieldName.Contains("transferedItem"))
                {
                    int    idPos     = fieldName.IndexOf("transferedItem") + "transferedItem".Length;
                    int    itemId    = int.Parse(fieldName.Substring(idPos));
                    String itemValue = Request.Form[fieldName];

                    //O valor dos items na lista pode ser o "id do usuário" ou o "id da associação"
                    // dependendo da ação (action=Associate  ou  action=Disassociate)
                    if (action == "Associate")
                    {
                        associateDAO.SetAssociate(NewAssociate(itemId));
                    }
                    if (action == "Disassociate")
                    {
                        associateDAO.RemoveAssociate(itemId);
                    }
                }
            }

            EmbedClientScript.CloseWindow(this);
        }
示例#3
0
        // Remove um centro de custo do banco e toda a sua hierarquia (ramo de árvore), os registros
        // são excluídos definitivamente das tabelas
        public void RemoveBranch(CostBranch costBranch)
        {
            CostCenterDAO          costCenterDAO = new CostCenterDAO(sqlConnection);
            CostCenterAssociateDAO associateDAO  = new CostCenterAssociateDAO(sqlConnection);

            // Remove recursivamente todos os objetos dependentes
            Remove(costBranch, costCenterDAO, associateDAO);
        }
示例#4
0
        private void Remove(CostBranch costBranch, CostCenterDAO costCenterDAO, CostCenterAssociateDAO associateDAO)
        {
            foreach (CostBranch child in costBranch.Children)
            {
                Remove(child, costCenterDAO, associateDAO);
            }

            associateDAO.RemoveAllAssociates(costBranch.Id);
            costCenterDAO.RemoveCostCenter(costBranch.Id);
        }
示例#5
0
        /// <summary>
        /// Recupera uma árvore de custo do banco
        /// </summary>
        public CostTree GetCostTree(int tenantId)
        {
            CostCenterDAO costCenterDAO  = new CostCenterDAO(sqlConnection);
            List <Object> costCenterList = costCenterDAO.GetAllCostCenters(tenantId);

            CostCenterAssociateDAO associateDAO  = new CostCenterAssociateDAO(sqlConnection);
            List <Object>          associateList = associateDAO.GetAllAssociates(tenantId);

            CostTreeBuilder costTreeBuilder = new CostTreeBuilder(costCenterList, associateList);
            CostTree        tree            = costTreeBuilder.BuildTree();

            return(tree);
        }
        private ListItem[] GetAssociates(int costCenterId)
        {
            SqlConnection          sqlConnection = settingsMasterPage.dataAccess.GetConnection();
            CostCenterAssociateDAO associateDAO  = new CostCenterAssociateDAO(sqlConnection);
            List <Object>          associateList = associateDAO.GetAssociates(tenant.id, costCenterId);

            SortedList <String, ListItem> associates = new SortedList <String, ListItem>();

            foreach (CostCenterAssociate associate in associateList)
            {
                ListItem newItem = new ListItem();
                newItem.Text  = associate.userName;
                newItem.Value = associate.id.ToString();

                associates.Add(newItem.Text, newItem);
            }

            ListItem[] returnList = new ListItem[associates.Count];
            associates.Values.CopyTo(returnList, 0);

            return(returnList);
        }