public void HandleSelecMemberChoose(GuildJobSelectMemberItemLogic item)
    {
        if (false == GameManager.gameManager.PlayerDataPool.IsHaveGuild())
        {
            return;
        }

        Guild info = GameManager.gameManager.PlayerDataPool.GuildInfo;

        int nMaxCount = GlobeVar.INVALID_ID;

        if (m_CurGuildJob == (int)GameDefine_Globe.GUILD_JOB.CHIEF ||
            m_CurGuildJob == (int)GameDefine_Globe.GUILD_JOB.VICE_CHIEF)
        {
            nMaxCount = 1;
        }
        if (m_CurGuildJob == (int)GameDefine_Globe.GUILD_JOB.ELDER)
        {
            nMaxCount = GlobeVar.GetGuildElderMax(info.GuildLevel);
        }

        if (nMaxCount == GlobeVar.INVALID_ID)
        {
            return;
        }

        if (m_SelectChooseGuid.Contains(item.MemberGuid))
        {
            m_SelectChooseGuid.Remove(item.MemberGuid);
            item.HandleItemRemove();
        }
        else
        {
            if (m_SelectChooseGuid.Count < nMaxCount)
            {
                m_SelectChooseGuid.Add(item.MemberGuid);
                item.HandleItemAdd();
            }
        }

        m_SelectMember_CountLabel.text = StrDictionary.GetClientDictionaryString("#{10450}", m_SelectChooseGuid.Count, nMaxCount);
    }
    void OnChangeJobClick()
    {
        if (Singleton <ObjManager> .Instance.MainPlayer == null)
        {
            return;
        }

        m_GuildJobSelectWindow.SetActive(true);

        m_SelectChooseGuid.Clear();

        if (false == GameManager.gameManager.PlayerDataPool.IsHaveGuild())
        {
            return;
        }

        Guild info = GameManager.gameManager.PlayerDataPool.GuildInfo;

        Utils.CleanGrid(m_GuildJobSelectGrid);

        int index = 0;

        foreach (KeyValuePair <UInt64, GuildMember> memberPair in info.GuildMemberList)
        {
            GuildMember member = memberPair.Value;
            if (false == member.IsValid() || member.Job == (int)GameDefine_Globe.GUILD_JOB.RESERVE)
            {
                continue;
            }

            if (member.Guid == Singleton <ObjManager> .Instance.MainPlayer.GUID)
            {
                continue;
            }

            GameObject memberItem = Utils.BindObjToParent(m_GuildJobSelectMemberItem, m_GuildJobSelectGrid, index.ToString());
            if (memberItem == null || memberItem.GetComponent <GuildJobSelectMemberItemLogic>() == null)
            {
                continue;
            }

            memberItem.GetComponent <GuildJobSelectMemberItemLogic>().Init(member, m_CurGuildJob);

            if (member.Job == m_CurGuildJob)
            {
                m_SelectChooseGuid.Add(member.Guid);
            }
        }

        if (m_GuildJobSelectGrid.GetComponent <UIGrid>() != null)
        {
            m_GuildJobSelectGrid.GetComponent <UIGrid>().Reposition(true);
        }

        if (0 <= m_CurGuildJob && m_CurGuildJob < GlobeVar.GUILD_JOB_NAME.Length)
        {
            string szDefaultJobName = StrDictionary.GetClientDictionaryString(GlobeVar.GUILD_JOB_NAME[m_CurGuildJob]);
            m_SelectMember_TitleLabel.text = StrDictionary.GetClientDictionaryString("#{10443}", szDefaultJobName);
        }

        int nMaxCount = GlobeVar.INVALID_ID;

        if (m_CurGuildJob == (int)GameDefine_Globe.GUILD_JOB.CHIEF ||
            m_CurGuildJob == (int)GameDefine_Globe.GUILD_JOB.VICE_CHIEF)
        {
            nMaxCount = 1;
        }
        if (m_CurGuildJob == (int)GameDefine_Globe.GUILD_JOB.ELDER)
        {
            nMaxCount = GlobeVar.GetGuildElderMax(info.GuildLevel);
        }

        if (nMaxCount == GlobeVar.INVALID_ID)
        {
            return;
        }

        m_SelectMember_CountLabel.text = StrDictionary.GetClientDictionaryString("#{10450}", m_SelectChooseGuid.Count, nMaxCount);
    }