コード例 #1
0
ファイル: GrupoObj.cs プロジェクト: vitorric/comanda_app
    public void PreencherInfo(Comanda.Grupo grupo, Cliente.Avatar avatar, bool clienteLogadoEhLider, Action <string, string> transferirLideranca)
    {
        Integrante = grupo;

        LblNome.text = Integrante.cliente.apelido;

        BtnTransferirLideranca.gameObject.SetActive(Integrante.lider);

        if (clienteLogadoEhLider)
        {
            BtnTransferirLideranca.gameObject.SetActive(clienteLogadoEhLider && !Integrante.jaPagou);
            BtnTransferirLideranca.interactable = true;
        }

        ImgJaPagou.gameObject.SetActive(Integrante.jaPagou);
        ImgNaoPagou.gameObject.SetActive(!Integrante.jaPagou);

        if (avatar != null)
        {
            Avatar.PreencherInfo(Integrante.cliente.sexo, avatar);
        }

        BtnTransferirLideranca.onClick.AddListener(() =>
        {
            transferirLideranca(Integrante.cliente._id, Integrante.cliente.apelido);
        });
    }
コード例 #2
0
        private Comanda.Grupo tratarSnapshotGrupo(DataSnapshot ds)
        {
            Comanda.Grupo grupo = new Comanda.Grupo
            {
                cliente        = JsonConvert.DeserializeObject <Comanda.Cliente>(ds.Child("cliente").GetRawJsonValue()),
                lider          = Convert.ToBoolean(ds.Child("lider").Value),
                valorPago      = Convert.ToDouble(ds.Child("valorPago").Value),
                jaPagou        = Convert.ToBoolean(ds.Child("jaPagou").Value),
                avatarAlterado = Util.ConverterDataFB(ds.Child("avatarAlterado").Value.ToString())
            };

            return(grupo);
        }
コード例 #3
0
ファイル: MenuComanda.cs プロジェクト: vitorric/comanda_app
    private void modificarIntegranteDoGrupo(Comanda.Grupo grupo)
    {
        if (grupo.cliente._id == Cliente.ClienteLogado._id)
        {
            ClienteComanda = grupo;
            preencherComandaCliente();
            return;
        }

        GrupoObj grupoObj = lstGrupoComanda.Find(x => x.Integrante.cliente._id == grupo.cliente._id);

        if (grupoObj != null)
        {
            obterAvatarMembroGrupo(grupo, grupoObj);
        }
    }
コード例 #4
0
ファイル: MenuComanda.cs プロジェクト: vitorric/comanda_app
    private void adicionarIntegranteAoGrupo(Comanda.Grupo grupo)
    {
        if (grupo != null)
        {
            if (grupo.cliente._id == Cliente.ClienteLogado._id)
            {
                ClienteComanda = grupo;
                preencherComandaCliente();
                return;
            }

            GrupoObj grupoComanda = Instantiate(GrupoComandaRef, ScvGrupoComanda);
            obterAvatarMembroGrupo(grupo, grupoComanda);
            lstGrupoComanda.Add(grupoComanda);
        }
    }
コード例 #5
0
ファイル: MenuComanda.cs プロジェクト: vitorric/comanda_app
    private void removerIntegranteDoGrupo(Comanda.Grupo grupo)
    {
        if (grupo.cliente._id == Cliente.ClienteLogado._id)
        {
            return;
        }

        GrupoObj grupoObj = lstGrupoComanda.Find(x => x.Integrante.cliente._id == grupo.cliente._id);

        if (grupoObj != null)
        {
            Destroy(grupoObj.gameObject);
            lstGrupoComanda.Remove(grupoObj);

            //if (lstGrupoComanda.Count == 0)
            //    PnlShopVazio.SetActive(true);
        }
    }
コード例 #6
0
ファイル: MenuComanda.cs プロジェクト: vitorric/comanda_app
    private void obterAvatarMembroGrupo(Comanda.Grupo grupo, GrupoObj grupoComanda)
    {
        Dictionary <string, object> form = new Dictionary <string, object>
        {
            { "avatarId", grupo.cliente.avatar }
        };

        //é feito essa conferencia pra nao ficar batendo toda hora na rota do avatar
        if (grupoComanda.Integrante != null && grupo.avatarAlterado.Subtract(grupoComanda.Integrante.avatarAlterado).TotalSeconds <= 0)
        {
            grupoComanda.PreencherInfo(grupo, null, clienteLogadoEhLider, (clienteId, nomeCliente) =>
            {
                ConvidarGrupo.AbrirPnlTransferirLideranca(clienteId, nomeCliente);
            });

            StartCoroutine(calcularTotaisComanda());

            return;
        }

        StartCoroutine(AvatarAPI.ObterAvatar(form,
                                             (response, error) =>
        {
            if (error != null)
            {
                Debug.Log("ObterAvatar: " + error);
                AlertaManager.Instance.ChamarAlertaMensagem(error, false);
                return;
            }

            grupoComanda.PreencherInfo(grupo, response, clienteLogadoEhLider, (clienteId, nomeCliente) =>
            {
                ConvidarGrupo.AbrirPnlTransferirLideranca(clienteId, nomeCliente);
            });

            StartCoroutine(calcularTotaisComanda());
        }));
    }