Exemplo n.º 1
0
        public async Task <ActionResult> Quitar(CAIXINHA_ITEM item)
        {
            if (item.PESSOA == 0)
            {
                ModelState.AddModelError("", "Informe uma pessoa!");
            }

            if (item.DESPESA == 0)
            {
                ModelState.AddModelError("", "Informe uma despesa!");
            }

            if (ModelState.IsValid)
            {
                HttpPostedFileBase file = Request.Files[0];

                if (file.ContentLength > 0)
                {
                    byte[] buffer = new byte[file.ContentLength];

                    file.InputStream.Read(buffer, 0, buffer.Length);

                    ANEXO anexo = new ANEXO()
                    {
                        NOME   = file.FileName,
                        BUFFER = buffer
                    };

                    item.ANEXO1 = anexo;
                }


                if (!String.IsNullOrEmpty(item.DESCRICAO))
                {
                    item.DESCRICAO = item.DESCRICAO.ToUpper();
                }

                _db.CAIXINHA_ITEM.Add(item);

                await _db.SaveChangesAsync();

                TempData["MensagemSucesso"] = "Caixinha devolvida com o valor de " + item.VALOR.ToString("C") + ".";

                return(RedirectToAction("Quitar", "Caixinha", new { pessoa = item.PESSOA, despesa = item.DESPESA }));
            }

            ViewBag.DESPESA = new SelectList(await _db.DESPESA.Include(dp => dp.DESPESA_CLASSE).OrderBy(dp => dp.DESPESA_CLASSE.DESCRICAO).ThenBy(dp => dp.DESCRICAO).ToArrayAsync(), "ID", "DESCRICAO", "CLASSE_DESCRICAO", item.DESPESA);

            ViewBag.PESSOA = new SelectList(await _db
                                            .PESSOA
                                            .Where(p => p.SITUACAO == "A" && (p.TERCEIRO == 1 || p.FUNCIONARIO == 1))
                                            .OrderBy(p => p.RAZAO)
                                            .ToArrayAsync(), "ID", "RAZAO", item.PESSOA);

            ViewBag.PROJETO = new SelectList(await _db.PROJETO.ToArrayAsync(), "ID", "DESCRICAO", item.PROJETO);


            return(View(item));
        }
        public async Task <ActionResult> Create(PAGAMENTO_TERCEIRO pagamento)
        {
            var adiantamentos = await(
                from adt in _db.PAGAMENTO_TERCEIRO

                where adt.TERCEIRO == pagamento.TERCEIRO && adt.OSSB_SERVICO == pagamento.OSSB_SERVICO
                select adt
                )
                                .ToArrayAsync();


            var total = await(
                from ost in _db.OSSB_SERVICO_TERCEIRO
                where ost.OSSB_SERVICO == pagamento.OSSB_SERVICO && ost.TERCEIRO == pagamento.TERCEIRO
                select ost.VALOR
                )
                        .FirstOrDefaultAsync();

            if ((adiantamentos.Sum(adt => adt.VALOR) + pagamento.VALOR) > total)
            {
                ModelState.AddModelError("", "Valor ultrapassou o valor maximo!");
            }

            if (ModelState.IsValid)
            {
                HttpPostedFileBase file = Request.Files[0];

                byte[] buffer = new byte[file.ContentLength];

                file.InputStream.Read(buffer, 0, buffer.Length);

                ANEXO anexo = new ANEXO()
                {
                    NOME   = file.FileName,
                    BUFFER = buffer
                };


                _db.ANEXO.Add(anexo);

                await _db.SaveChangesAsync();

                pagamento.ANEXO = anexo.ID;

                _db.PAGAMENTO_TERCEIRO.Add(pagamento);

                await _db.SaveChangesAsync();


                return(RedirectToAction("Index", "PagamentoTerceiro"));
            }
            else
            {
                return(View(pagamento));
            }
        }
        public async Task <ActionResult> Quitar(CAIXINHA_ITEM item)
        {
            if (item.DESPESA == 0)
            {
                ModelState.AddModelError("", "Informe uma despesa!");
            }

            item.PESSOA = Session.UsuarioId();

            if (ModelState.IsValid)
            {
                HttpPostedFileBase file = Request.Files[0];

                if (file.ContentLength > 0)
                {
                    byte[] buffer = new byte[file.ContentLength];

                    file.InputStream.Read(buffer, 0, buffer.Length);

                    ANEXO anexo = new ANEXO()
                    {
                        NOME   = file.FileName,
                        BUFFER = buffer
                    };

                    item.ANEXO1 = anexo;
                }

                if (!String.IsNullOrEmpty(item.DESCRICAO))
                {
                    item.DESCRICAO = item.DESCRICAO.ToUpper();
                }

                _db.CAIXINHA_ITEM.Add(item);

                await _db.SaveChangesAsync();

                return(RedirectToAction("NaoValidadas", "AreaDoFuncionario"));
            }

            ViewBag.DESPESA = new SelectList(await _db.DESPESA.Include(dp => dp.DESPESA_CLASSE).OrderBy(dp => dp.DESPESA_CLASSE.DESCRICAO).ThenBy(dp => dp.DESCRICAO).ToArrayAsync(), "ID", "DESCRICAO", "CLASSE_DESCRICAO", item.DESPESA);


            return(View(item));
        }