Пример #1
0
        //[ValidateAntiForgeryToken]
        public async Task <ActionResult> Create(DocumentoViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    if (model.TipoDocumento == TipoDocumentoViewModel.Fatura)
                    {
                        var datVencimento = model.DataVencimento;

                        #region ADICIONAR A FATURA DE ORIGEM
                        model.ValorOriginal  = model.Valor;
                        model.Valor          = model.Valor * model.QtdeParcelas;
                        model.Parcela        = 0;
                        model.DataVencimento = datVencimento.AddMonths(model.QtdeParcelas);
                        var fatura = await _service.Adicionar(_mapper.Map <Documento>(model));

                        #endregion


                        model.idDocumentoOrigem = fatura.Id;
                        model.Valor             = model.ValorOriginal;
                        model.TipoDocumento     = TipoDocumentoViewModel.Titulo;

                        for (int i = 1; i < model.QtdeParcelas; i++)
                        {
                            model.Id      = 0;
                            model.Parcela = i;
                            await _service.Adicionar(_mapper.Map <Documento>(model));

                            model.DataVencimento = datVencimento.AddMonths(i);
                        }
                    }
                    else
                    {
                        model.Parcela = 1;
                        await _service.Adicionar(_mapper.Map <Documento>(model));
                    }
                    return(RedirectToAction("Index"));
                }

                return(View(model));
            }
            catch
            {
                return(View());
            }
        }