public void TesteCadastroAgendamento()
        {
           this.CriaInstancia();

            Empresa emp = new Empresa();
            emp.Codigo = "99";
            Filial fil = new Filial();
            fil.Codigo = "99";
            Cliente cli = new Cliente();
            cli.Codigo = 1;
            Funcionario func = new Funcionario();
            func.Codigo = 1;
            Status st = new Status();
            st.Codigo = 1;

            Agendamento umAgendamento = new Agendamento();
            umAgendamento.Cliente = cli;
            umAgendamento.Funcionario = func;
            umAgendamento.Empresa = emp;
            umAgendamento.Filial = fil;
            umAgendamento.Status = st;
            umAgendamento.DataPrevista = DateTime.Now.ToString("dd/MM/yyyy");
            umAgendamento.InicioPrevisto = "04:00";
            umAgendamento.FimPrevisto = "16:00";
            umAgendamento.TrasladoPrevisto = "01:00";
            IAgendamentoNegocio umAgendamentoBUS = new AgendamentoBUS(Conexao.Instacia, emp, fil);
            umAgendamentoBUS.Cadastrar(umAgendamento);
        }
示例#2
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;
        }