示例#1
0
        public CaixaViewModel()
        {
            Title                = "Fechamento de caixa " + DateTime.Now.ToString("dd/MM/yyyy");
            AddDespesaCommand    = new Command(async() => await AdicionaDespesa(), () => !IsBusy);
            RemoveDespesaCommand = new Command <Despesa>(async(despesa) => await RemoveDespesa(despesa));
            SalvarCaixaCommand   = new Command(async() => await SalvaDespesa(), () => !IsBusy);


            using (AsyncScopedLifestyle.BeginScope(App.IoCContainer))
            {
                _caixaService   = App.IoCContainer.GetInstance <ICaixa>();
                _despesaService = App.IoCContainer.GetInstance <IDespesa>();
            }
            _snackbar = DependencyService.Get <ISnackbar>();

            _formataDinheiro = new FormataDinheiro();
            _caixa           = new Caixa();
            _caixa.Despesas  = new ObservableCollection <Despesa>();

            _caixa.Despesas.CollectionChanged += _despesas_CollectionChanged;
        }
 public AppDestesa(IDespesa iDespesa, IDespesaServico iDespesaServico)
 {
     _iDespesa        = iDespesa;
     _iDespesaServico = iDespesaServico;
 }
        private void btnEnviar_Click(object sender, EventArgs e)
        {
            DateTime     w;
            ContasAPagar capp = new ContasAPagar();

            capp.Cap_datageracao    = DateTime.Parse(dtpData.Value.ToString("yyyy-MM-dd HH:mm:ss"));
            capp.Cap_datavencimento = DateTime.Parse(dtpParcela.Value.ToString("yyyy-MM-dd HH:mm:ss"));
            user = IUsuario.getNome(txtUser.Text);
            string aux;



            desp = IDespesa.GetNome(cbbDespesa.SelectedItem.ToString());

            //w = cap.Cap_datageracao;
            List <ContasAPagar> lcap = new List <ContasAPagar>();

            if (cbbDespesa.Text != "Outros")
            {
                aux = desp.Desp_dia + "-" + capp.Cap_datageracao.Month + "-" + capp.Cap_datageracao.Year + " " + capp.Cap_datageracao.Hour + ":" + capp.Cap_datageracao.Minute + ":" + capp.Cap_datageracao.Second;
                w   = Convert.ToDateTime(aux);
                for (int i = 0; i < Convert.ToInt32(txtParcelas.Text); i++)
                {
                    ContasAPagar cappp = new ContasAPagar();
                    w = w.AddMonths(1);
                    cappp.Cap_descricao   = txtDescricao.Text;
                    cappp.Cap_datageracao = dtpData.Value;

                    string a = txtValorDespesa.Text.Replace("R$", "").Replace("-", "").Replace("_", "").Replace(".", ",").Replace(" ", "");
                    cappp.Despesa = desp;
                    cappp.User    = user;
                    if (VerificaDizima(Math.Round(Convert.ToDecimal(a), 2), Convert.ToInt32(txtParcelas.Text)))
                    {
                        int b = (int)Math.Round(Convert.ToDecimal(a), 2) / Convert.ToInt32(txtParcelas.Text);
                        if (i == Convert.ToInt32(txtParcelas.Text) - 1)
                        {
                            b = (int)Math.Round(Convert.ToDecimal(a), 2) - ((int)(Math.Round(Convert.ToDecimal(a), 2)) / Convert.ToInt32(txtParcelas.Text) * (Convert.ToInt32(txtParcelas.Text) - 1));
                        }
                        cappp.Cap_valordespesa = Math.Round(Convert.ToDecimal(b), 2);
                    }
                    else
                    {
                        cappp.Cap_valordespesa = Math.Round(Convert.ToDecimal(a), 2) / Convert.ToInt32(txtParcelas.Text);
                    }



                    cappp.Cap_datavencimento = w;
                    lcap.Add(cappp);
                }

                DgvDespesa.DataSource = lcap;
            }
            else
            {
                aux = capp.Cap_datavencimento.Day + "-" + capp.Cap_datavencimento.Month + "-" + capp.Cap_datavencimento.Year + " " + capp.Cap_datavencimento.Hour + ":" + capp.Cap_datavencimento.Minute + ":" + capp.Cap_datavencimento.Second;
                w   = Convert.ToDateTime(aux);
                for (int i = 0; i < Convert.ToInt32(txtParcelas.Text); i++)
                {
                    ContasAPagar cappp = new ContasAPagar();

                    cappp.Cap_descricao   = txtDescricao.Text;
                    cappp.Cap_datageracao = dtpData.Value;

                    string a = txtValorDespesa.Text.Replace("R$", "").Replace("-", "").Replace("_", "").Replace(".", ",").Replace(" ", "");

                    if (VerificaDizima(Math.Round(Convert.ToDecimal(a), 2), Convert.ToInt32(txtParcelas.Text)))
                    {
                        int b = (int)Math.Round(Convert.ToDecimal(a), 2) / Convert.ToInt32(txtParcelas.Text);
                        if (i == Convert.ToInt32(txtParcelas.Text) - 1)
                        {
                            b = (int)Math.Round(Convert.ToDecimal(a), 2) - ((int)(Math.Round(Convert.ToDecimal(a), 2)) / Convert.ToInt32(txtParcelas.Text) * (Convert.ToInt32(txtParcelas.Text) - 1));
                        }
                        cappp.Cap_valordespesa = Math.Round(Convert.ToDecimal(b), 2);
                    }
                    else
                    {
                        cappp.Cap_valordespesa = Math.Round(Convert.ToDecimal(a), 2) / Convert.ToInt32(txtParcelas.Text);
                    }

                    cappp.Despesa            = desp;
                    cappp.User               = user;
                    cappp.Cap_datavencimento = w;
                    lcap.Add(cappp);
                    w = w.AddDays(Convert.ToInt32(txtDias.Text));
                }

                DgvDespesa.DataSource = lcap;
            }



            DgvDespesa.Columns.Remove("Cap_cod");
            DgvDespesa.Columns.Remove("Cap_datapagamento");
            DgvDespesa.Columns.Remove("Cap_valorpago");
            DgvDespesa.Columns.Remove("User");
            DgvDespesa.Columns.Remove("Despesaid");
            DgvDespesa.Columns.Remove("Usuarioid");
            DgvDespesa.Columns.Remove("PedidoPetid");
            DgvDespesa.Columns["Cap_descricao"].HeaderText      = "Descrição da despesa";
            DgvDespesa.Columns["Cap_datageracao"].HeaderText    = "Data de lançamento";
            DgvDespesa.Columns["Cap_valordespesa"].HeaderText   = "Valor da despesa";
            DgvDespesa.Columns["Cap_datavencimento"].HeaderText = "Data do vencimento";
            DgvDespesa.Columns["DespesaDescricao"].HeaderText   = "Categoria da despesa";
            DgvDespesa.Columns["NomeUsuario"].HeaderText        = "Nome do Usuario";
        }
 public DespesaServico(IDespesa iDespesa)
 {
     _iDespesa = iDespesa;
 }