Esempio n. 1
0
 public void TestaCadastroOsRemota()
 {
     this.CriaInstancia();
     Empresa emp = new Empresa();
     emp.Codigo = "99";
     Filial fil = new Filial();
     fil.Codigo = "99";
     IOrdemServicoRemotoNegocio umaOsRemotaBUs = new OrdemServicoRemotoBUS(Conexao.Instacia, emp, fil);
     OrdemServicoRemoto osr = PreencherObjeto();
     umaOsRemotaBUs.Cadastrar(osr);
 }
        public void Editar(OrdemServicoRemoto obj)
        {
            IOrdemServicoRemotoNegocio umaOrdemServicoRemotaBus = new OrdemServicoRemotoBUS(Conexao.Instacia, this.empresa, this.filial);

            OrdemServicoRemoto objAnterior = umaOrdemServicoRemotaBus.Consultar(obj.OrdemServico.Codigo);

            this._business.Editar(obj.OrdemServico);
            this._repository.Editar(obj);
            IMetaNegocio umaMetaNegocio = new MetaBUS(this._connection, this.empresa, this.filial);
            List<Meta> lista = umaMetaNegocio.Listar(obj.OrdemServico.Projeto);

            DateTime dataOrdemServico = Convert.ToDateTime(obj.OrdemServico.Data);

            IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._connection);

            foreach (var meta in lista)
            {
                if (meta.Indicador.Codigo == 1)
                {

                    DateTime horasAcimaDeCemAtual = new DateTime();
                    horasAcimaDeCemAtual = horasAcimaDeCemAtual.AddHours(Convert.ToInt32(obj.Total.Split(':')[0]));
                    horasAcimaDeCemAtual = horasAcimaDeCemAtual.AddMinutes(Convert.ToInt32(obj.Total.Split(':')[1]));
                    TimeSpan ticksAtual = new TimeSpan(horasAcimaDeCemAtual.Ticks);

                    double totalAtual = ticksAtual.TotalHours;

                    DateTime horasAcimaDeCemAnterior = new DateTime();
                    horasAcimaDeCemAnterior = horasAcimaDeCemAnterior.AddHours(Convert.ToInt32(objAnterior.Total.Split(':')[0]));
                    horasAcimaDeCemAnterior = horasAcimaDeCemAnterior.AddMinutes(Convert.ToInt32(objAnterior.Total.Split(':')[1]));
                    TimeSpan ticksAnterior = new TimeSpan(horasAcimaDeCemAnterior.Ticks);

                    double totalAnterior = ticksAnterior.TotalHours;

                    if (totalAtual > totalAnterior)
                    {
                        umOrdemServicoDAO.AcrescentarNaMeta
                            (
                                ano: dataOrdemServico.Year,
                                mes: dataOrdemServico.Month,
                                meta: meta.Codigo,
                                funcionario: obj.OrdemServico.Funcionario.Codigo,
                                indicador: meta.Indicador.Codigo,
                                totalHoras: totalAtual - totalAnterior
                            );
                    }
                    else
                    {
                        umOrdemServicoDAO.DecrementarNaMeta
                             (
                                 ano: dataOrdemServico.Year,
                                 mes: dataOrdemServico.Month,
                                 meta: meta.Codigo,
                                 funcionario: obj.OrdemServico.Funcionario.Codigo,
                                 indicador: meta.Indicador.Codigo,
                                 totalHoras: totalAnterior - totalAtual
                             );
                    }
                }
            }
        }
Esempio n. 3
0
        public double ApurarMetasPorMes(int ano, int mes, Funcionario funcionario, Projeto projeto, Indicador indicador)
        {
            OrdemServico ordemFiltro = new OrdemServico();
            ordemFiltro.DataDe = "01/" + mes + "/" + ano;
            ordemFiltro.DataAte = new DateTime(ano, mes, DateTime.DaysInMonth(ano, mes)).ToString("dd/MM/yyy");
            ordemFiltro.Projeto = projeto;
            ordemFiltro.Funcionario = funcionario;
            ordemFiltro.Cliente = new Cliente();

            OrdemServicoBUS umaOrdemServicoBUS = new OrdemServicoBUS(this._conexao, this._empresa, this._filial);
            List<OrdemServico> listaOrdens = umaOrdemServicoBUS.Pesquisar(ordemFiltro);

            double total = 0;

            switch (indicador.Codigo)
            {
                case 1: //HORA
                    foreach (var os in listaOrdens)
                    {
                        double horas = 0;

                        if ((os.Inicio == "00:00") && (os.Fim == "00:00"))
                        {
                            OrdemServicoRemoto osr = new OrdemServicoRemotoBUS(this._conexao, this._empresa, this._filial).Consultar(os.Codigo);
                            DateTime horasAcimaDeCem = new DateTime();
                            horasAcimaDeCem = horasAcimaDeCem.AddHours(Convert.ToInt32(osr.Total.Split(':')[0]));
                            horasAcimaDeCem = horasAcimaDeCem.AddMinutes(Convert.ToInt32(osr.Total.Split(':')[1]));
                            TimeSpan ticks = new TimeSpan(horasAcimaDeCem.Ticks);
                            total += ticks.TotalHours;
                        }
                        else
                        {
                            horas = TimeSpan.Parse(os.Total).TotalHours;
                        }
                        total += horas;
                    }
                    break;
                case 2: //PROSPECÇÕES                              
                    total = listaOrdens.Count;
                    break;
            }

            return total;
        }
Esempio n. 4
0
 public void TestaEdicaoOsRemota()
 {
     this.CriaInstancia();
     Empresa emp = new Empresa();
     emp.Codigo = "99";
     Filial fil = new Filial();
     fil.Codigo = "99";
     IOrdemServicoRemotoNegocio umaOsRemotaBUs = new OrdemServicoRemotoBUS(Conexao.Instacia, emp, fil);
     OrdemServicoRemoto umaOsREmota = PreencherObjeto();
     umaOsREmota.OrdemServico.Codigo = 50;
     umaOsRemotaBUs.Editar(umaOsREmota);
 }
Esempio n. 5
0
        public void TestaPesquisaPorOrdemDeServicoRemotaOsRemota()
        {
            this.CriaInstancia();
            Empresa emp = new Empresa();
            emp.Codigo = "99";
            Filial fil = new Filial();
            fil.Codigo = "99";
            IOrdemServicoRemotoNegocio umaOsRemotaBUs = new OrdemServicoRemotoBUS(Conexao.Instacia, emp, fil);
            OrdemServicoRemoto osr = new OrdemServicoRemoto();
            osr.OrdemServico = new OrdemServico();
            osr.OrdemServico.Codigo = 1;
            osr.OrdemServico.Projeto = new Projeto();
            osr.OrdemServico.Cliente = new Cliente();
            osr.OrdemServico.Funcionario = new Funcionario();
            List<OrdemServicoRemoto> lista = umaOsRemotaBUs.Pesquisar(osr);

        }
Esempio n. 6
0
 public void TestaPesquisaOsRemota()
 {
     this.CriaInstancia();
     Empresa emp = new Empresa();
     emp.Codigo = "99";
     Filial fil = new Filial();
     fil.Codigo = "99";
     IOrdemServicoRemotoNegocio umaOsRemotaBUs = new OrdemServicoRemotoBUS(Conexao.Instacia, emp, fil);
     List<OrdemServicoRemoto> lista = umaOsRemotaBUs.Pesquisar(1);
 }
Esempio n. 7
0
 public void TestaExclusaoOsRemota()
 {
     this.CriaInstancia();
     Empresa emp = new Empresa();
     emp.Codigo = "99";
     Filial fil = new Filial();
     fil.Codigo = "99";
     IOrdemServicoRemotoNegocio umaOsRemotaBUs = new OrdemServicoRemotoBUS(Conexao.Instacia, emp, fil);
     OrdemServicoRemoto umaOsREmota = new OrdemServicoRemoto { OrdemServico = new OrdemServico { Codigo = 38 } };
     umaOsRemotaBUs.Excluir(umaOsREmota);
 }
Esempio n. 8
0
 private static void PrepararOsRemota(OrdemServico os, Usuario usu, out IOrdemServicoRemotoNegocio umaOrdemServicoRemotoBUS, out OrdemServicoRemoto umaOrdemServicoRemota)
 {
     umaOrdemServicoRemotoBUS = new OrdemServicoRemotoBUS(Conexao.Instacia, usu.Funcionario.Empresa, usu.Funcionario.Filial);
     umaOrdemServicoRemota = new OrdemServicoRemoto();
     os.Remoto = true;
     umaOrdemServicoRemota.OrdemServico = os;
     umaOrdemServicoRemota.DataInicio = Convert.ToDateTime(os.DataDe);
     umaOrdemServicoRemota.DataFim = Convert.ToDateTime(os.DataAte);
     umaOrdemServicoRemota.Total = os.Total;
     os.Data = os.DataDe;
     os.Inicio = "00:00";
     os.Fim = "00:00";
     os.Traslado = "00:00";
     os.Total = "00:00";
 }
Esempio n. 9
0
 private void VerificaOsRemota(ref OrdemServico umaOS, Usuario usuario)
 {
     if (umaOS.Inicio.Equals("00:00") && umaOS.Fim.Equals("00:00"))
     {
         IOrdemServicoRemotoNegocio umaOrdemServicoRemotaBus = new OrdemServicoRemotoBUS(Conexao.Instacia, usuario.Funcionario.Empresa, usuario.Funcionario.Filial);
         OrdemServicoRemoto umaOsRemota = umaOrdemServicoRemotaBus.Consultar(umaOS.Codigo);
         umaOS.DataDe = umaOsRemota.DataInicio.ToString("dd/MM/yyyy");
         umaOS.DataAte = umaOsRemota.DataFim.ToString("dd/MM/yyyy");
         umaOS.Total = umaOsRemota.Total;
         umaOS.Remoto = true;
     }
 }