public void Cadastrar(OrdemServicoRemoto obj)
        {
            this._business.Cadastrar(obj.OrdemServico);
            obj.OrdemServico.Codigo = this._business.UltimoId();
            this._repository.Cadastrar(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)
            {
                DateTime horasAcimaDeCem = new DateTime();
                horasAcimaDeCem = horasAcimaDeCem.AddHours(Convert.ToInt32(obj.Total.Split(':')[0]));
                horasAcimaDeCem = horasAcimaDeCem.AddMinutes(Convert.ToInt32(obj.Total.Split(':')[1]));
                TimeSpan ticks = new TimeSpan(horasAcimaDeCem.Ticks);

                umOrdemServicoDAO.AcrescentarNaMeta(
                    ano: dataOrdemServico.Year,
                    mes: dataOrdemServico.Month,
                    meta: meta.Codigo,
                    funcionario: obj.OrdemServico.Funcionario.Codigo,
                    indicador: meta.Indicador.Codigo,
                    totalHoras:ticks.TotalHours);
            }
        }
        public void Editar(OrdemServico obj)
        {
            obj = this.ConfigurarCompartilhamentoDeTabelas(obj);
            IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
            OrdemServico objAnterior = umOrdemServicoDAO.Consultar(this._empresa.Codigo, this._filial.Codigo, obj.Codigo);
            umOrdemServicoDAO.Editar(obj);

            if ((obj.Inicio != "00:00") && (obj.Fim != "00:00"))
            {

                IMetaNegocio umaMetaNegocio = new MetaBUS(this._conexao, this._empresa, this._filial);
                List<Meta> lista = umaMetaNegocio.Listar(obj.Projeto);

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

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

                        double totalAtual = TimeSpan.Parse(obj.Total).TotalHours;
                        double totalAnterior = TimeSpan.Parse(objAnterior.Total).TotalHours;

                        if (totalAtual > totalAnterior)
                        {
                            umOrdemServicoDAO.AcrescentarNaMeta
                                (
                                    ano: dataOrdemServico.Year,
                                    mes: dataOrdemServico.Month,
                                    meta: meta.Codigo,
                                    funcionario: obj.Funcionario.Codigo,
                                    indicador: meta.Indicador.Codigo,
                                    totalHoras: totalAtual - totalAnterior
                                );
                        }
                        else
                        {
                            umOrdemServicoDAO.DecrementarNaMeta
                                 (
                                     ano: dataOrdemServico.Year,
                                     mes: dataOrdemServico.Month,
                                     meta: meta.Codigo,
                                     funcionario: obj.Funcionario.Codigo,
                                     indicador: meta.Indicador.Codigo,
                                     totalHoras: totalAnterior - totalAtual
                                 );
                        }
                    }
                }
            }
        }
        public void Cadastrar(OrdemServico obj)
        {
            obj = this.ConfigurarCompartilhamentoDeTabelas(obj);

            IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
            umOrdemServicoDAO.Cadastrar(obj);

            IMetaNegocio umaMetaNegocio = new MetaBUS(this._conexao, this._empresa, this._filial);
            List<Meta> lista = umaMetaNegocio.Listar(obj.Projeto);

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

            foreach (var meta in lista)
            {
                umOrdemServicoDAO.AcrescentarNaMeta(
                    ano: dataOrdemServico.Year,
                    mes: dataOrdemServico.Month,
                    meta: meta.Codigo,
                    funcionario: obj.Funcionario.Codigo,
                    indicador: meta.Indicador.Codigo,
                    totalHoras: TimeSpan.Parse(obj.Total).TotalHours);
            }
        }
        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
                             );
                    }
                }
            }
        }
 public int UltimoId()
 {
     IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
     return umOrdemServicoDAO.UltimoId();
 }
        public DataTable GerarRelatorio(string query, IEnumerable<FbParameter> parametros)
        {

            IOrdemServicoRepositorio umOrdemServicaoDAO = new OrdemServicoDAO(this._conexao);
            return umOrdemServicaoDAO.GerarRelatorio(query, parametros);
        }
 public OrdemServico Consultar(int id)
 {
     IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
     return umOrdemServicoDAO.Consultar(this._empresa.Codigo, this._filial.Codigo, id);
 }
 public List<OrdemServico> Pesquisar(OrdemServico os)
 {
     IOrdemServicoRepositorio umaOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
     return umaOrdemServicoDAO.Pesquisar(this._empresa.Codigo, this._filial.Codigo, os);
 }
 public List<OrdemServico> Listar(string idFuncionario)
 {
     IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
     return umOrdemServicoDAO.Listar(this._empresa.Codigo, this._filial.Codigo, idFuncionario);
 }
示例#10
0
        public void Excluir(OrdemServico obj)
        {
            IOrdemServicoRepositorio umOrdemServicoDAO = new OrdemServicoDAO(this._conexao);
            obj = umOrdemServicoDAO.Consultar(this._empresa.Codigo, this._filial.Codigo, obj.Codigo);
            umOrdemServicoDAO.Excluir(obj);

            if ((obj.Inicio != "00:00")&&(obj.Fim != "00:00"))
            {
                IMetaNegocio umaMetaNegocio = new MetaBUS(this._conexao, this._empresa, this._filial);
                List<Meta> lista = umaMetaNegocio.Listar(obj.Projeto);

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

                foreach (var meta in lista)
                {
                    umOrdemServicoDAO.DecrementarNaMeta(
                        ano: dataOrdemServico.Year,
                        mes: dataOrdemServico.Month,
                        meta: meta.Codigo,
                        funcionario: obj.Funcionario.Codigo,
                        indicador: meta.Indicador.Codigo,
                        totalHoras: TimeSpan.Parse(obj.Total).TotalHours);
                }
            }
        }