Exemplo n.º 1
0
        async void OnSaveActivated(object sender, EventArgs e)
        {
            DateTime now     = DateTime.Now;
            var      docItem = (Usuario)BindingContext;

            docItem.IdComunidadeUsu             = ListComunidade[pickerSelItemComunidade].Id;
            docItem.CodigoComunidadeUsu         = ListComunidade[pickerSelItemComunidade].CodigoComunidade;
            docItem.ComunidadeUsuario           = comunidadeUsuario.SelectedItem.ToString();
            docItem.DataAlteracaoUsuario        = now;
            docItem.PerfilUsuario               = perfilUsuario.Items[perfilUsuario.SelectedIndex];
            docItem.TemPessoasComProbMobilidade = temPessoasComProbMobilidadeHabilitado.IsChecked ? true : false;

            //List<string> profile = null;
            List <string> changeLog;

            if (isNewDoc)
            {
                docItem.CodigoUsuario      = GenerateCodes.GeraCodigoUsuario(docItem.CodigoComunidadeUsu, docItem);
                docItem.DataCriacaoUsuario = now;
                docItem.RespostaNotifUsu   = null;

                StringBuilder sbLog = new StringBuilder();
                sbLog.Append("- O usuário ");
                sbLog.Append(UserManager.GetLogUser().NomeUsuario);
                sbLog.Append(" criou o documento em ");
                sbLog.Append(now.ToString());

                changeLog = new List <string>();
                changeLog.Add(sbLog.ToString());

                docItem.LogAlteracaoUsuario = JsonConvert.SerializeObject(changeLog);

                if (await UsuarioService.GetInstance().AddUser(docItem))
                {
                    await DisplayAlert("Cadastro de Usuário", "Usuário cadastrado com sucesso!", "OK");

                    await Navigation.PopAsync();
                }
                else
                {
                    await DisplayAlert("Atenção!", "Este usuário já está cadastrado!", "OK");
                }
            }
            else
            {
                StringBuilder sbLog = new StringBuilder();
                sbLog.Append("- O usuário ");
                sbLog.Append(UserManager.GetLogUser().NomeUsuario);
                sbLog.Append(" alterou o documento em ");
                sbLog.Append(now.ToString());

                changeLog = JsonConvert.DeserializeObject <List <string> >(docItem.LogAlteracaoUsuario);
                changeLog.Add(sbLog.ToString());

                docItem.LogAlteracaoUsuario = JsonConvert.SerializeObject(changeLog);

                if (await UsuarioService.GetInstance().UpdateUser(docItem))
                {
                    await DisplayAlert("Cadastro de Usuário", "Usuário salvo com sucesso!", "OK");
                }
                else
                {
                    await DisplayAlert("Atenção!", "Falha ao tentar salvar o usuário!", "OK");
                }
            }
        }
Exemplo n.º 2
0
        async void OnSaveActivated(object sender, EventArgs e)
        {
            try
            {
                DateTime now     = DateTime.Now;
                var      docItem = (Comunidade)BindingContext;

                docItem.DataAlteracaoComunidade = now;

                List <string> changeLog = null;
                if (isNewDoc)
                {
                    docItem.CodigoComunidade      = GenerateCodes.GeraCodigoComunidade(docItem.UFComunidade, docItem.NomeComunidade);
                    docItem.DataCriacaoComunidade = now;

                    StringBuilder sbLog = new StringBuilder();
                    sbLog.Append("- O usuário ");
                    sbLog.Append(UserManager.GetLogUser().NomeUsuario);
                    sbLog.Append(" criou o documento em ");
                    sbLog.Append(now.ToString());

                    changeLog = new List <string>();
                    changeLog.Add(sbLog.ToString());

                    docItem.LogAlteracaoComunidade = JsonConvert.SerializeObject(changeLog);

                    if (await ComunidadeService.GetInstance().AddComunidade(docItem))
                    {
                        await DisplayAlert("Cadastro de Comunidade", "Comunidade cadastrada com sucesso!", "OK");

                        await Navigation.PopAsync();
                    }
                    else
                    {
                        await DisplayAlert("Atenção!", "Esta comunidade já está cadastrada!", "OK");
                    }
                }
                else
                {
                    StringBuilder sbLog = new StringBuilder();
                    sbLog.Append("- O usuário ");
                    sbLog.Append(UserManager.GetLogUser().NomeUsuario);
                    sbLog.Append(" alterou o documento em ");
                    sbLog.Append(now.ToString());

                    changeLog = JsonConvert.DeserializeObject <List <string> >(docItem.LogAlteracaoComunidade);
                    changeLog.Add(sbLog.ToString());

                    docItem.LogAlteracaoComunidade = JsonConvert.SerializeObject(changeLog);

                    if (await ComunidadeService.GetInstance().UpdateComunidade(docItem))
                    {
                        await DisplayAlert("Cadastro de Comunidade", "Comunidade salva com sucesso!", "OK");
                    }
                    else
                    {
                        await DisplayAlert("Atenção!", "Falha ao tentar salvar a comunidade !", "OK");
                    }
                }
            }
            catch (Exception ex)
            {
                StringBuilder sbLog = new StringBuilder();
                sbLog.Append("Erro ao salvar a comunidade no banco de dados!");
                sbLog.Append(Environment.NewLine);
                sbLog.Append("Erro: ");
                sbLog.Append(ex.ToString());
            }
        }