Ejemplo n.º 1
0
        public IActionResult Create(Doadora doadora)
        {
            _animalRepository.Salvar(doadora);
            var doadoraId = doadora.Id;

            //Realiza a inclusão se existirem itens
            if (doadora.DoadoraProprietariosJson != null)
            {
                //Processo de inclusão de itens
                List <DoadoraProprietario> lista = JsonConvert.DeserializeObject <List <DoadoraProprietario> >(doadora.DoadoraProprietariosJson);

                if (lista.Count > 0)
                {
                    for (int i = 0; i < lista.Count; i++)
                    {
                        if (lista[i].Id == 0)
                        {
                            DoadoraProprietario objLista = new DoadoraProprietario();
                            objLista.DoadoraId      = doadoraId;
                            objLista.ProprietarioId = lista[i].ProprietarioId;
                            objLista.Data           = DateTime.Now;

                            _context.DoadoraProprietarios.Add(objLista);
                            _context.SaveChanges();
                        }
                    }
                }
            }


            return(RedirectToAction("Index"));
        }
Ejemplo n.º 2
0
        public IActionResult Edit(Tratamento tratamento)
        {
            if (ModelState.IsValid)
            {
                _tratamentoRepository.Editar(tratamento);

                //Processo de inclusão de serviços
                if (tratamento.TratamentoServicosJson != null)
                {
                    List <TratamentoServico> listaTratamentoServico = JsonConvert.DeserializeObject <List <TratamentoServico> >(tratamento.TratamentoServicosJson);
                    for (int i = 0; i < listaTratamentoServico.Count; i++)
                    {
                        if (listaTratamentoServico[i].Id == 0)
                        {
                            TratamentoServico objTratamentoServico = new TratamentoServico();
                            objTratamentoServico.TratamentoId  = listaTratamentoServico[i].TratamentoId;
                            objTratamentoServico.ServicoId     = listaTratamentoServico[i].ServicoId;
                            objTratamentoServico.Valor         = listaTratamentoServico[i].Valor;
                            objTratamentoServico.Data          = listaTratamentoServico[i].Data;
                            objTratamentoServico.ValorOriginal = GetValorOriginal(listaTratamentoServico[i].ServicoId);



                            _context.TratamentoServicos.Add(objTratamentoServico);
                        }
                    }
                }

                _context.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(tratamento));
        }
Ejemplo n.º 3
0
        //[ValidateAntiForgeryToken]
        public IActionResult Create(Garanhao garanhao)
        {
            try
            {
                _animalGaranhaoRepository.Salvar(garanhao);
                var idTemp = garanhao.Id;

                //Realiza a inclusão se existirem itens
                if (garanhao.TabelaItensJson != null)
                {
                    //Processo de inclusão de itens
                    List <GaranhaoProprietario> lista = JsonConvert.DeserializeObject <List <GaranhaoProprietario> >(garanhao.TabelaItensJson);

                    if (lista.Count > 0)
                    {
                        for (int i = 0; i < lista.Count; i++)
                        {
                            if (lista[i].Id == 0)
                            {
                                GaranhaoProprietario objLista = new GaranhaoProprietario();
                                objLista.GaranhaoId     = idTemp;
                                objLista.ProprietarioId = lista[i].ProprietarioId;
                                objLista.Data           = DateTime.Now;

                                _context.GaranhaoProprietarios.Add(objLista);
                                _context.SaveChanges();
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                return(BadRequest($"Erro:n{ex.Message}"));
            }
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 4
0
        public ActionResult Create(Empresa empresa)
        {
            try
            {
                // TODO: Add insert logic here
                _context.Empresas.Add(empresa);
                _context.SaveChanges();

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                return(View());
            }
        }
Ejemplo n.º 5
0
        public IActionResult AddEndereco(int id)
        {
            //https://www.talkingdotnet.com/handle-ajax-requests-in-asp-net-core-razor-pages/
            //http://binaryintellect.net/articles/16ecfe49-98df-4305-b53f-2438d836f0d0.aspx

            string retorno = null;

            {
                MemoryStream stream = new MemoryStream();
                Request.Body.CopyTo(stream);
                stream.Position = 0;
                using (StreamReader reader = new StreamReader(stream))
                {
                    string requestBody = reader.ReadToEnd();
                    if (requestBody.Length > 0)
                    {
                        var obj = JsonConvert.DeserializeObject <ProprietarioEndereco>(requestBody);
                        ProprietarioEndereco ObjTabela = JsonConvert.DeserializeObject <ProprietarioEndereco>(requestBody);


                        //Verifica se o Proprietário já esta adicionado à Doadora
                        int count = _context.ProprietarioEnderecos
                                    .Where(a => a.EnderecoTipo == ObjTabela.EnderecoTipo &&
                                           a.ProprietarioId == ObjTabela.ProprietarioId).Count();

                        if (count == 0)
                        {
                            _context.ProprietarioEnderecos.Add(ObjTabela);
                            _context.SaveChanges();
                            retorno = "NOVO";
                            return(new JsonResult(retorno));
                        }
                        else
                        {
                            retorno = "EXISTE";
                            return(new JsonResult(retorno));
                        }
                    }
                }
            }

            return(new JsonResult(retorno));
        }
Ejemplo n.º 6
0
        public ActionResult Create(Usuario usuario)
        {
            try
            {
                // TODO: Add insert logic here
                var keyNew   = Salt.GeneratePassword(10);
                var password = Salt.EncodePassword(usuario.Senha, keyNew);

                usuario.Senha = password;
                usuario.Salt  = keyNew;

                _context.Usuarios.Add(usuario);
                _context.SaveChanges();

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                return(View());
            }
        }
Ejemplo n.º 7
0
 public void Editar(Proprietario proprietario)
 {
     _webProjVetContext.Entry(proprietario).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
     _webProjVetContext.SaveChanges();
 }
 public void Editar(ProprietarioEndereco proprietarioEndereco)
 {
     _context.Entry(proprietarioEndereco).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
     _context.SaveChanges();
 }
 public void Editar(Receptora animal)
 {
     _webProjVetContext.Entry(animal).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
     _webProjVetContext.SaveChanges();
 }
Ejemplo n.º 10
0
        public IActionResult Create(Faturamento faturamento)
        {
            string mes = faturamento.DataApuracao.Value.Month.ToString().PadLeft(2, '0');
            string ano = faturamento.DataApuracao.Value.Year.ToString();
            //string referencia = mes + "/" + ano;
            string      referencia     = faturamento.Referencia;
            Faturamento objFaturamento = new Faturamento();
            int         FaturaId       = 0;

            //Verifica se já existe faturamento para o proprietário para o mês de referência
            //int FaturaId = RetornaFatura(faturamento.ProprietarioId, referencia);

            /*
             * if (FaturaId == null)
             * {
             *  //Cria o registro de faturamento
             *
             *  objFaturamento.ProprietarioId = faturamento.ProprietarioId;
             *  objFaturamento.Valor = "0,00";
             *  objFaturamento.Situacao = FaturamentoSituacao.PENDENTE;
             *  objFaturamento.Data = DateTime.Now;
             *  objFaturamento.Referencia = faturamento.Referencia;
             *
             *  _context.Faturamentos.Add(objFaturamento);
             *  _context.SaveChanges();
             *
             *  FaturaId = objFaturamento.Id;
             * }*/


            List <AnimaisServicos> listServicoProprietario = new List <AnimaisServicos>();

            #region Identifica os serviços realizados para animais vinculados em Proprietários para o período.
            if (faturamento.ProprietarioId != 0)
            {
                listServicoProprietario = (from p in _context.Proprietarios
                                           join ap in _context.AnimaisProprietarios on p.Id equals ap.ProprietarioId
                                           join a in _context.Animais on ap.AnimaisId equals a.Id
                                           join aass in _context.AnimaisServicos on a.Id equals aass.AnimaisId
                                           where aass.Data.ToString("MM/yyyy") == referencia &&
                                           p.Id == faturamento.ProprietarioId &&
                                           aass.Data <= faturamento.DataApuracao &&
                                           p.Situacao == Situacao.ATIVO &&
                                           ap.DataAquisicao <= faturamento.DataApuracao &&
                                           ap.DataValidade > faturamento.DataApuracao &&
                                           aass.Faturamento == "N" &&
                                           aass.ServicoSituacao == ServicoSituacao.REALIZADO
                                           select new AnimaisServicos
                {
                    Id = aass.Id
                }
                                           ).Distinct().ToList();
            }
            else
            {
                listServicoProprietario = (from p in _context.Proprietarios
                                           join ap in _context.AnimaisProprietarios on p.Id equals ap.ProprietarioId
                                           join a in _context.Animais on ap.AnimaisId equals a.Id
                                           join aass in _context.AnimaisServicos on a.Id equals aass.AnimaisId
                                           where aass.Data.ToString("MM/yyyy") == referencia &&
                                           aass.Data <= faturamento.DataApuracao &&
                                           p.Situacao == Situacao.ATIVO &&
                                           ap.DataAquisicao <= faturamento.DataApuracao &&
                                           ap.DataValidade > faturamento.DataApuracao &&
                                           aass.Faturamento == "N" &&
                                           aass.ServicoSituacao == ServicoSituacao.REALIZADO
                                           select new AnimaisServicos
                {
                    Id = aass.Id
                }
                                           ).Distinct().ToList();
            }
            #endregion

            //Inicia o processo apenas se existirem serviços lançados em animais que possuem proprietário
            if (listServicoProprietario.Count > 0)
            {
                foreach (var item in listServicoProprietario)
                {
                    AnimaisServicos ObjAnimaisServicos = _context.AnimaisServicos.FirstOrDefault(s => s.Id == item.Id);

                    if (listServicoProprietario.Count > 0)
                    {
                        //Verifica se o animal possui proprietário apto para cobrança de acordo com a data de realização do serviço.
                        List <Proprietario> LstProprietario = (from ap in _context.AnimaisProprietarios
                                                               join p in _context.Proprietarios on ap.ProprietarioId equals p.Id
                                                               join a in _context.Animais on ap.AnimaisId equals a.Id
                                                               join aass in _context.AnimaisServicos on a.Id equals aass.AnimaisId
                                                               where aass.Id == item.Id &&
                                                               ap.AnimaisId == ObjAnimaisServicos.AnimaisId &&
                                                               p.Situacao == Situacao.ATIVO &&
                                                               ap.DataAquisicao <= ObjAnimaisServicos.Data &&
                                                               ap.DataValidade > ObjAnimaisServicos.Data &&
                                                               aass.Faturamento == "N" &&
                                                               aass.ServicoSituacao == ServicoSituacao.REALIZADO
                                                               select p).ToList();

                        int totalProprietario = LstProprietario.Count();

                        //Quando o animal do serviço realizado possui mais de um proprietário realiza loop para rateio do serviço que será faturado.
                        if (totalProprietario >= 2)
                        {
                            for (int i = 0; i < LstProprietario.Count(); i++)
                            {
                                //Verifica se existe fatura o Proprietário para referência informada
                                FaturaId = RetornaFatura(LstProprietario[i].Id, referencia);

                                FaturamentoServicos faturamentoServicos = new FaturamentoServicos();

                                faturamentoServicos.ProprietarioId    = LstProprietario[i].Id;
                                faturamentoServicos.AnimaisServicosId = ObjAnimaisServicos.Id;
                                faturamentoServicos.AnimaisId         = ObjAnimaisServicos.AnimaisId;
                                faturamentoServicos.ServicoId         = ObjAnimaisServicos.ServicoId;

                                decimal valor = ((Convert.ToDecimal(ObjAnimaisServicos.ValorTotal) / 100) / totalProprietario);
                                //faturamentoServicos.Valor  = Decimal.Round((valor), 2).ToString();

                                faturamentoServicos.Valor = Convert.ToDecimal(valor).ToString();

                                faturamentoServicos.DataFaturamento = DateTime.Now;

                                //DateTime dataReferenciaFormatada = Convert.ToDateTime(faturamento.Referencia);
                                faturamentoServicos.Referencia    = referencia;
                                faturamentoServicos.FaturamentoId = FaturaId;

                                faturamentoServicos.DoadoraId   = ObjAnimaisServicos.DoadoraId;
                                faturamentoServicos.GaranhaoId  = ObjAnimaisServicos.GaranhaoId;
                                faturamentoServicos.ReceptoraId = ObjAnimaisServicos.ReceptoraId;
                                faturamentoServicos.SemenId     = ObjAnimaisServicos.SemenId;

                                //Adiciona o serviço que passou pelo rateio na lista de serviços do proprietário.
                                _context.FaturamentoServicos.Add(faturamentoServicos);
                                _context.SaveChanges();
                            }
                        }
                        else
                        {
                            //Verifica se existe fatura o Proprietário para referência informada
                            FaturaId = RetornaFatura(LstProprietario[0].Id, referencia);

                            FaturamentoServicos faturamentoServicos = new FaturamentoServicos();

                            faturamentoServicos.ProprietarioId    = LstProprietario[0].Id;
                            faturamentoServicos.AnimaisServicosId = ObjAnimaisServicos.Id;
                            faturamentoServicos.AnimaisId         = ObjAnimaisServicos.AnimaisId;
                            faturamentoServicos.ServicoId         = ObjAnimaisServicos.ServicoId;
                            faturamentoServicos.Valor             = (Convert.ToDecimal(ObjAnimaisServicos.ValorTotal) / 100).ToString();
                            faturamentoServicos.DataFaturamento   = DateTime.Now;

                            //DateTime dataReferenciaFormatada = Convert.ToDateTime(faturamento.Referencia);
                            faturamentoServicos.Referencia    = referencia;
                            faturamentoServicos.FaturamentoId = FaturaId;

                            faturamentoServicos.DoadoraId   = ObjAnimaisServicos.DoadoraId;
                            faturamentoServicos.GaranhaoId  = ObjAnimaisServicos.GaranhaoId;
                            faturamentoServicos.ReceptoraId = ObjAnimaisServicos.ReceptoraId;
                            faturamentoServicos.SemenId     = ObjAnimaisServicos.SemenId;

                            _context.FaturamentoServicos.Add(faturamentoServicos);
                            _context.SaveChanges();
                        }
                    }
                    //Atualiza o serviço realizado no animal para item incluído no processo de faturamento.
                    ObjAnimaisServicos.Faturamento = "S";
                    _context.AnimaisServicos.Update(ObjAnimaisServicos);
                    _context.SaveChanges();
                }
            }

            //Após o processo de validação e rateio dos serviços do proprietário devem ser criadas as informações na tabela Faturamento
            //e atualizar os vinculos com a tabela faturamentoservicos.
            List <Faturamento> LstFaturamento = (from fs in _context.FaturamentoServicos
                                                 join p in _context.Proprietarios on fs.ProprietarioId equals p.Id
                                                 //where fs.Referencia.ToString("MM/yyyy") == faturamento.Referencia
                                                 where fs.Referencia == referencia
                                                 group fs by fs.Proprietario into g
                                                 select new Faturamento
            {
                Proprietario = g.Key,
                Valor = g.Sum(s => Convert.ToDecimal(s.Valor) / 100).ToString(),
                Situacao = FaturamentoSituacao.PENDENTE,
                Referencia = g.First().Referencia
            }
                                                 ).ToList();


            //////////////////////////Processo de Faturamento das Diárias///////////////////////////////////////////////
            ///
            List <AnimaisEntrada> listEntradasProprietario = new List <AnimaisEntrada>();

            #region Identifica as entradas para animais vinculados em Proprietários para o período.
            if (faturamento.ProprietarioId != 0)
            {
                listEntradasProprietario = (from p in _context.Proprietarios
                                            join ap in _context.AnimaisProprietarios on p.Id equals ap.ProprietarioId
                                            join a in _context.Animais on ap.AnimaisId equals a.Id
                                            join aa in _context.AnimaisEntradas on a.Id equals aa.AnimaisId
                                            where p.Id == faturamento.ProprietarioId &&
                                            p.Situacao == Situacao.ATIVO &&
                                            aa.DiariaSituacao != DiariaSituacao.CANCELADA &&
                                            ap.DataAquisicao < faturamento.DataApuracao &&
                                            ap.DataValidade >= faturamento.DataApuracao &&
                                            aa.DataUltimaApuracao < faturamento.DataApuracao
                                            group aa by aa.Id into agroup
                                            select new AnimaisEntrada
                {
                    Id = agroup.First().Id
                }).ToList();
            }
            else
            {
                listEntradasProprietario = (from p in _context.Proprietarios
                                            join ap in _context.AnimaisProprietarios on p.Id equals ap.ProprietarioId
                                            join a in _context.Animais on ap.AnimaisId equals a.Id
                                            join aa in _context.AnimaisEntradas on a.Id equals aa.AnimaisId
                                            where p.Situacao == Situacao.ATIVO &&
                                            ap.DataAquisicao < faturamento.DataApuracao &&
                                            ap.DataValidade >= faturamento.DataApuracao &&
                                            aa.DiariaSituacao != DiariaSituacao.CANCELADA &&
                                            aa.DataUltimaApuracao < faturamento.DataApuracao
                                            group aa by aa.Id into agroup
                                            select new AnimaisEntrada
                {
                    Id = agroup.First().Id
                }).ToList();
            }
            #endregion


            //Inicia o processo se encontrar lançamentos de diárias para animais que possuem proprietário
            if (listEntradasProprietario.Count > 0)
            {
                foreach (var item in listEntradasProprietario)
                {
                    //Verifica as informações de datas que devem ser cobradas para cada proprietário do animal.
                    var dadosFat = (from ap in _context.AnimaisProprietarios
                                    join a in _context.Animais on ap.AnimaisId equals a.Id
                                    join ae in _context.AnimaisEntradas on a.Id equals ae.AnimaisId
                                    where ae.Id == item.Id &&
                                    Convert.ToDateTime(ap.DataValidade.ToString("MM/yyyy")) > Convert.ToDateTime(referencia)
                                    select ap
                                    ).ToList();


                    List <DadosProprietarioEntrada> objDados = new List <DadosProprietarioEntrada>();
                    foreach (var iFat in dadosFat)
                    {
                        DateTime PrimeiroDiadoMes = DateTime.Parse("01/" + referencia);

                        DadosProprietarioEntrada objDadosProprietario = new DadosProprietarioEntrada();
                        objDadosProprietario.DataAquisicao      = iFat.DataAquisicao;
                        objDadosProprietario.DataUltimaApuracao = (DateTime)iFat.DataUltimaApuracao;
                        objDadosProprietario.ProprietarioId     = (int)iFat.ProprietarioId;

                        if (PrimeiroDiadoMes > iFat.DataUltimaApuracao)
                        {
                            objDadosProprietario.Dias = faturamento.DataApuracao.Value.Subtract(PrimeiroDiadoMes).Days;
                        }
                        else
                        {
                            objDadosProprietario.Dias = faturamento.DataApuracao.Value.Subtract((DateTime)iFat.DataUltimaApuracao).Days;
                        }
                        objDados.Add(objDadosProprietario);
                    }

                    //Processo para definir o fator de divisão para o proprietário.



                    AnimaisEntrada ObjAnimaisEntradas = _context.AnimaisEntradas.FirstOrDefault(s => s.Id == item.Id);


                    //Procura os proprietárioas associados ao animal que estão ativos no periodo de faturamento
                    //Periodo de faturamento igual à data ultimo faturamento ou data de aquisição menos data faturamento

                    List <AnimaisProprietario> LstProprietarioTeste = (from ap in _context.AnimaisProprietarios
                                                                       join a in _context.Animais on ap.AnimaisId equals a.Id
                                                                       where a.Id == ObjAnimaisEntradas.AnimaisId &&
                                                                       Convert.ToDateTime(ap.DataValidade.ToString("MM/yyyy")) > Convert.ToDateTime(referencia)
                                                                       select ap
                                                                       ).ToList();


                    //Verifica se o animal possui proprietário apto para cobrança de acordo com a data de realização do serviço.
                    List <Proprietario> LstProprietario = (from ap in _context.AnimaisProprietarios
                                                           join p in _context.Proprietarios on ap.ProprietarioId equals p.Id
                                                           join a in _context.Animais on ap.AnimaisId equals a.Id
                                                           join aa in _context.AnimaisEntradas on a.Id equals aa.AnimaisId
                                                           where aa.Id == item.Id &&
                                                           ap.AnimaisId == ObjAnimaisEntradas.AnimaisId &&
                                                           p.Situacao == Situacao.ATIVO &&
                                                           ap.DataAquisicao < faturamento.DataApuracao &&
                                                           ap.DataValidade >= faturamento.DataApuracao
                                                           select p).ToList();

                    int totalProprietario = LstProprietario.Count();

                    if (totalProprietario > 0)
                    {
                        //Quando o animal do serviço realizado possui mais de um proprietário realiza loop para rateio do serviço que será faturado.
                        if (totalProprietario >= 2)
                        {
                            for (int i = 0; i < LstProprietario.Count(); i++)
                            {
                                //Verifica se existe fatura o Proprietário para referência informada
                                FaturaId = RetornaFatura(LstProprietario[i].Id, referencia);

                                FaturamentoEntradas faturamentoEntradas = new FaturamentoEntradas();

                                faturamentoEntradas.ProprietarioId    = LstProprietario[i].Id;
                                faturamentoEntradas.AnimaisEntradasId = ObjAnimaisEntradas.Id;
                                faturamentoEntradas.AnimaisId         = ObjAnimaisEntradas.AnimaisId;
                                faturamentoEntradas.ServicoId         = ObjAnimaisEntradas.ServicoId;

                                decimal diaria = ((Convert.ToDecimal(ObjAnimaisEntradas.Valor) / 100) / totalProprietario);
                                faturamentoEntradas.Diaria = diaria;

                                //Verificar a data de aquisição do animal pelo proprietário


                                //Calcular a quantidade de dias do mes ainda não apurados de acordo com a data de apuração informada.
                                //Dias => data apuração informada - data ultima apuração
                                DateTime?data1     = ObjAnimaisEntradas.DataUltimaApuracao;
                                DateTime?data2     = faturamento.DataApuracao;
                                TimeSpan?totalDias = data2 - data1;
                                int      dias      = totalDias.Value.Days;
                                faturamentoEntradas.Dias = dias;

                                faturamentoEntradas.Valor           = (diaria * dias).ToString();
                                faturamentoEntradas.DataFaturamento = DateTime.Now;
                                faturamentoEntradas.Referencia      = referencia;
                                faturamentoEntradas.FaturamentoId   = FaturaId;

                                //Adiciona o serviço que passou pelo rateio na lista de serviços do proprietário.
                                _context.FaturamentoEntradas.Add(faturamentoEntradas);

                                AnimaisProprietario ObjAnimaisProprietarios = (from ap in _context.AnimaisProprietarios
                                                                               where ap.ProprietarioId == LstProprietario[i].Id
                                                                               select ap).FirstOrDefault();
                                ObjAnimaisProprietarios.DataUltimaApuracao = faturamento.DataApuracao;
                                _context.AnimaisProprietarios.Update(ObjAnimaisProprietarios);

                                _context.SaveChanges();
                            }
                        }
                        else if (totalProprietario == 1)
                        {
                            //Verifica se existe fatura o Proprietário para referência informada
                            FaturaId = RetornaFatura(LstProprietario[0].Id, referencia);

                            FaturamentoEntradas faturamentoEntradas = new FaturamentoEntradas();

                            faturamentoEntradas.ProprietarioId    = listEntradasProprietario[0].Id;
                            faturamentoEntradas.AnimaisEntradasId = ObjAnimaisEntradas.Id;
                            faturamentoEntradas.AnimaisId         = ObjAnimaisEntradas.AnimaisId;
                            faturamentoEntradas.ServicoId         = ObjAnimaisEntradas.ServicoId;
                            decimal diaria = (Convert.ToDecimal(ObjAnimaisEntradas.Valor) / 100);
                            faturamentoEntradas.Diaria = diaria;

                            //Calcular a quantidade de dias do mes ainda não apurados de acordo com a data de apuração informada.
                            //Dias => data apuração informada - data ultima apuração
                            DateTime?data1     = ObjAnimaisEntradas.DataUltimaApuracao;
                            DateTime?data2     = faturamento.DataApuracao;
                            TimeSpan?totalDias = data2 - data1;
                            int      dias      = totalDias.Value.Days;
                            faturamentoEntradas.Dias = dias;

                            faturamentoEntradas.Valor           = (diaria * dias).ToString();
                            faturamentoEntradas.DataFaturamento = DateTime.Now;
                            faturamentoEntradas.Referencia      = referencia;
                            faturamentoEntradas.FaturamentoId   = FaturaId;

                            //Adiciona o serviço que passou pelo rateio na lista de serviços do proprietário.
                            _context.FaturamentoEntradas.Add(faturamentoEntradas);
                            AnimaisProprietario ObjAnimaisProprietarios = (from ap in _context.AnimaisProprietarios
                                                                           where ap.ProprietarioId == LstProprietario[0].Id
                                                                           select ap).FirstOrDefault();
                            ObjAnimaisProprietarios.DataUltimaApuracao = faturamento.DataApuracao;
                            _context.AnimaisProprietarios.Update(ObjAnimaisProprietarios);
                            _context.SaveChanges();
                        }

                        //Atualiza o serviço realizado no animal para item incluído no processo de faturamento.
                        ObjAnimaisEntradas.DataUltimaApuracao = faturamento.DataApuracao;

                        _context.AnimaisEntradas.Update(ObjAnimaisEntradas);
                        _context.SaveChanges();
                    }
                }
            }

            //Atualiza o faturamento apenas se existerem registros de entradas ou serviços
            if (listServicoProprietario.Count > 0 || listEntradasProprietario.Count > 0)
            {
                AtualizaFaturamento(FaturaId);
            }

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 11
0
        public IActionResult Create(Animais animais)
        {
            _animalRepository.Salvar(animais);
            var animaisId = animais.Id;

            //Realiza a inclusão se existirem itens
            if (animais.AnimaisProprietariosJson != null)
            {
                //Processo de inclusão de itens
                List <DoadoraProprietario> lista = JsonConvert.DeserializeObject <List <DoadoraProprietario> >(animais.AnimaisProprietariosJson);

                if (lista.Count > 0)
                {
                    for (int i = 0; i < lista.Count; i++)
                    {
                        if (lista[i].Id == 0)
                        {
                            AnimaisProprietario objLista = new AnimaisProprietario();
                            objLista.AnimaisId      = animaisId;
                            objLista.ProprietarioId = lista[i].ProprietarioId;
                            objLista.DataInclusao   = DateTime.Now;

                            _context.AnimaisProprietarios.Add(objLista);
                            _context.SaveChanges();
                        }
                    }
                }
            }


            //return RedirectToAction("Index");
            return(RedirectToRoute(new { Controller = "Animal", Action = "Edit", id = animais.Id }));
        }
Ejemplo n.º 12
0
 public void Salvar(Servico servico)
 {
     _webProjVetContext.Servicos.Add(servico);
     _webProjVetContext.SaveChanges();
 }
Ejemplo n.º 13
0
 public void Editar(Tratamento tratamento)
 {
     _webProjVetContext.Entry(tratamento).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
     _webProjVetContext.SaveChanges();
 }
Ejemplo n.º 14
0
 public void Editar(Garanhao animalGaranhao)
 {
     _webProjVetContext.Entry(animalGaranhao).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
     _webProjVetContext.SaveChanges();
 }