//private void DadosOcorrencia(ChamadoViewModel chamado, Chamado model) //{ // foreach (var item in model.ChamadoOcorrencias) // { // chamado. // } // _ChamadoViewModel.UsuarioAberturaId = model.UsuarioAbertura.Id; // _ChamadoViewModel.CodUsuario = model.UsuarioAbertura.Codigo; // _ChamadoViewModel.NomeUsuario = model.UsuarioAbertura.Nome; // _ChamadoViewModel.UsuarioPermissaoAlterarDataHora = model.UsuarioAbertura.Adm; //} private void NovoChamadoQuadro(ChamadoViewModel model, EnumChamado enChamadoAtividade, int idEncerramento, ChamadoServico chamadoServico) { _chamadoServico = new ChamadoServico(enChamadoAtividade); string codStatus = "0"; if (enChamadoAtividade == EnumChamado.Chamado) { codStatus = _chamadoServico.StatusAbertura(); } if (idEncerramento > 0 || enChamadoAtividade == EnumChamado.Atividade) { codStatus = _chamadoServico.StatusAberturaAtividade(); } int.TryParse(codStatus, out int CodStatus); if (CodStatus == 0) { throw new Exception("Informe o Status para abertura nos Parâmetros do Sistema!"); } else { var Status = _statusServico.ObterPorCodigo(CodStatus); if (Status != null) { model.StatusId = Status.Id; model.CodStatus = Status.Codigo; model.NomeStatus = Status.Nome; } } }
public void UpdateHoraUsuarioAtual(int idChamado, EnumChamado enumChamado, int idUsuario) { string codigoStatus = ""; if (enumChamado == EnumChamado.Chamado) { codigoStatus = StatusAtendimentoChamado(); } else { codigoStatus = StatusAtendimentoAtividade(); } if (!string.IsNullOrWhiteSpace(codigoStatus)) { var servicoStatus = new StatusServico(); var modelStatus = servicoStatus.ObterPorCodigo(Convert.ToInt32(codigoStatus)); if (modelStatus == null) { throw new Exception("Informe o Status Atendimento na Tabela de Parâmetros !"); } _rep.UpdateHoraUsuarioAtual(idChamado, enumChamado, idUsuario, modelStatus.Id); _rep.Commit(); } }
public ServicoChamado(IUnitOfWork unitOfWork, IRepositoryReadOnly <ChamadoConsultaViewModel> repositoryReadOnly, EnumChamado enumChamado, IRepositoryReadOnly <ChamadoAplicativoViewModel> repositoryAplicativoReadOnly, IRepositoryReadOnly <ChamadoAnexo> repositoryAnexoReadOnly, IServicoChamadoQuadro servicoChamadoQuadro, IRepositoryReadOnly <ChamadoOcorrencia> repositoryProbemaSolucaoReadOnly) { _uow = unitOfWork; _repositoryReadOnly = repositoryReadOnly; _enProgramas = EnProgramas.Chamado; _enumChamadoAtividade = enumChamado; _repositoryAplicativoReadOnly = repositoryAplicativoReadOnly; _repositoryAnexoReadOnly = repositoryAnexoReadOnly; _repositoryProbemaSolucaoReadOnly = repositoryProbemaSolucaoReadOnly; _servicoChamadoQuadro = servicoChamadoQuadro; _listaEmail = new List <string>(); _listaEmailCliente = new List <string>(); if (enumChamado == EnumChamado.Chamado) { _enProgramas = EnProgramas.Chamado; } else { _enProgramas = EnProgramas.Atividade; } }
public frmChamadoProblemaSolucao(int idCliente, int idUsuario, EnumChamado enumChamado) { InitializeComponent(); _enumChamado = enumChamado; _idCliente = idCliente; _idUsuario = idUsuario; }
public ChamadoViewModel Novo(int idUsuario, EnumChamado enChamadoAtividade, int idEncerramento, bool quadro, int idClienteAgenciamento, int idAgendamento) { try { _chamadoServico = new ChamadoServico(enChamadoAtividade); var model = _chamadoServico.Novo(idUsuario, quadro, idClienteAgenciamento, idAgendamento); if (model != null) { //if (model.UsuarioAbertura != null) // DadosUsuario(_ChamadoViewModel, model); //if (model.Cliente != null) // DadosCliente(_ChamadoViewModel, model); //if (model.Tipo != null) // DadosTipo(_ChamadoViewModel, model); PopularDados(_ChamadoViewModel, model, idUsuario); //if (enChamadoAtividade == EnumChamado.Chamado) //{ // if (_ChamadoViewModel.UsuarioPermissaoAlterarDataHora == false) // _ChamadoViewModel.UsuarioPermissaoAlterarDataHora = _usuarioPermissaoServico.PermissaoAlterarDataHoraChamado(idUsuario); // _ChamadoViewModel.PermissaoAlterarOcorrenciaChamado = _usuarioPermissaoServico.PermissaoOcorrenciaChamadoAlterar(idUsuario); // _ChamadoViewModel.PermissaoExcluirOcorrenciaChamado = _usuarioPermissaoServico.PermissaoOcorrenciaChamadoExcluir(idUsuario); //} //else //{ // if (_ChamadoViewModel.UsuarioPermissaoAlterarDataHora == false) // _ChamadoViewModel.UsuarioPermissaoAlterarDataHora = _usuarioPermissaoServico.PermissaoAlterarDataHoraAtividade(idUsuario); // _ChamadoViewModel.PermissaoAlterarOcorrenciaAtividade = _usuarioPermissaoServico.PermissaoOcorrenciaAlterarAtividade(idUsuario); // _ChamadoViewModel.PermissaoExcluirOcorrenciaAtividade = _usuarioPermissaoServico.PermissaoOcorrenciaAtividadeExcluir(idUsuario); //} //_ChamadoViewModel.UsuarioPermissaoAlterarDataHora = _ChamadoViewModel.UsuarioPermissaoAlterarDataHora; //_ChamadoViewModel.Descricao = model.Descricao; //var usuario = _usuarioServico.ObterPorId(idUsuario); //if (usuario != null) // _ChamadoViewModel.UsuarioAdm = usuario.Adm; NovoChamadoQuadro(_ChamadoViewModel, enChamadoAtividade, idEncerramento, _chamadoServico); } return(_ChamadoViewModel); } catch (Exception ex) { _ChamadoViewModel.Mensagem = ex.Message; return(_ChamadoViewModel); } }
private string RetornarAssunto(Chamado model, EnumChamado enChamado) { string titulo = "Chamado: "; if (enChamado == EnumChamado.Atividade) { titulo = "Atividade: "; } return(titulo + model.Id.ToString("000000") + " DOMPER Consultoria e Sistemas Ltda."); }
public bool PermissaoAbertura(int idUsuario, Usuario usuario, EnumChamado tipo) { if (tipo == EnumChamado.Chamado) { return(usuario.Departamento.ChamadoAbertura); } else { return(usuario.Departamento.AtividadeAbertura); } }
public bool PermissaoOcorrencia(int idUsuario, Usuario usuario, EnumChamado tipo) { if (tipo == EnumChamado.Chamado) { return(usuario.Departamento.ChamadoOcorrencia); } else { return(usuario.Departamento.AtividadeOcorrencia); } }
public bool PermissaoQuadro(int idUsuario, Usuario usuario, EnumChamado tipo) { if (tipo == EnumChamado.Chamado) { return(usuario.Departamento.ChamadoQuadro); } else { return(usuario.Departamento.AtividadeQuadro); } }
public ChamadoAnexoViewModel[] RetornarAnexos(int idChamado, EnumChamado enChamado) { try { _chamadoServico = new ChamadoServico(enChamado); var lista = _chamadoServico.RetornarAnexos(idChamado); var retorno = lista.Adapt <ChamadoAnexoViewModel[]>(); return(retorno); } catch (Exception ex) { throw new Exception(ex.Message); } }
//public IEnumerable<ChamadoConsulta> Filtrar(ChamadoFiltro filtro, string campo, string texto, int usuarioId, bool contem, EnumChamado tipo) //{ // var usuarioCliente = new UsuarioEF(); // var sb = new StringBuilder(); // string sTexto = ""; // sTexto = "'" + texto + "%'"; // if (contem) // sTexto = "'" + texto + "%'"; // sb.AppendLine(" SELECT"); // sb.AppendLine(" Cha_Id as Id,"); // sb.AppendLine(" '' as Descricao,"); // sb.AppendLine(" Cha_DataAbertura as DataAbertura,"); // sb.AppendLine(" Cha_HoraAbertura as HoraAbertura,"); // sb.AppendLine(" Sta_Nome as NomeStatus,"); // sb.AppendLine(" Cha_Status as IdStatus,"); // sb.AppendLine(" Tip_Nome as NomeTipo,"); // sb.AppendLine(" Cli_Nome as RazaoSocial,"); // sb.AppendLine(" Cli_Fantasia as Fantasia,"); // sb.AppendLine(" CASE Cha_Nivel"); // sb.AppendLine(" WHEN 1 THEN '1-Baixo'"); // sb.AppendLine(" WHEN 2 THEN '2-Normal'"); // sb.AppendLine(" WHEN 3 THEN '3-Alto'"); // sb.AppendLine(" WHEN 4 THEN '4-Crítico'"); // sb.AppendLine(" END AS Nivel,"); // sb.AppendLine(" Usu_Nome as NomeUsuario"); // sb.AppendLine(" FROM Chamado"); // sb.AppendLine(" INNER JOIN Status ON Cha_Status = Sta_Id"); // sb.AppendLine(" INNER JOIN Tipo ON Cha_Tipo = Tip_Id"); // sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); // sb.AppendLine(" INNER JOIN Usuario ON Cha_UsuarioAbertura = Usu_Id"); // sb.AppendLine(" LEFT JOIN Revenda ON Cli_Revenda = Rev_Id"); // if (!string.IsNullOrWhiteSpace(texto)) // sb.AppendLine(" WHERE " + campo + " LIKE " + sTexto); // else // { // sb.AppendLine("WHERE Cha_Id > 0"); // } // if (filtro.Id > 0) // sb.AppendLine(" AND Cha_Id = " + filtro.Id); // if (tipo == EnumChamado.Chamado) // sb.AppendLine(" AND Cha_TipoMovimento = 1"); // else // sb.AppendLine(" AND Cha_TipoMovimento = 2"); // sb.AppendLine(usuarioCliente.PermissaoUsuario(usuarioId)); // if ((!string.IsNullOrWhiteSpace(filtro.DataInicial)) && (filtro.DataInicial.Trim() != "/ /")) // sb.AppendLine(" AND Cha_DataAbertura >=" + Funcoes.DataIngles(filtro.DataInicial)); // if ((!string.IsNullOrWhiteSpace(filtro.DataFinal)) && (filtro.DataFinal.Trim() != "/ /")) // sb.AppendLine(" AND Cha_DataAbertura <=" + Funcoes.DataIngles(filtro.DataFinal)); // if (!string.IsNullOrWhiteSpace(filtro.IdCliente)) // sb.AppendLine(" AND Cha_Cliente IN " + filtro.IdCliente); // if (!string.IsNullOrWhiteSpace(filtro.idTipo)) // sb.AppendLine(" AND Cha_Tipo IN " + filtro.idTipo); // if (!string.IsNullOrWhiteSpace(filtro.IdStatus)) // sb.AppendLine(" AND Cha_Status IN " + filtro.IdStatus); // if (!string.IsNullOrWhiteSpace(filtro.IdModulo)) // sb.AppendLine(" AND Cha_Modulo IN " + filtro.IdModulo); // if (!string.IsNullOrWhiteSpace(filtro.IdRevenda)) // sb.AppendLine(" AND Cha_Revenda IN " + filtro.IdRevenda); // if (!string.IsNullOrWhiteSpace(filtro.IdUsuarioAbertura)) // sb.AppendLine(" AND Cha_UsuarioAbertura IN " + filtro.IdUsuarioAbertura); // if (filtro.clienteFiltro.UsuarioId > 0) // sb.AppendLine(" AND Cli_Usuario IN " + filtro.clienteFiltro.UsuarioId); // sb.AppendLine(" ORDER BY " + campo); // var lista = _repositorioDapper.GetAll(sb.ToString()); //_rep.context.Database.SqlQuery<ChamadoConsulta>(sb.ToString()); // return lista; //} //public IEnumerable<Quadro> QuadroChamado(int idUsuario, int idRevenda, EnumChamado tipo) //{ // var sb = new StringBuilder(); // if (tipo == EnumChamado.Chamado) // sb.AppendLine(RetornarChamadoQuadro(idUsuario, idRevenda)); // else // sb.AppendLine(RetornarAtividadeQuadro(idUsuario, idRevenda)); // var lista = _repositorioDapperQuadro.GetAll(sb.ToString()); //_rep.context.Database.SqlQuery<QuadroEF>(sb.ToString()).ToList(); // return lista; //} public void UpdateHoraUsuarioAtual(int idChamado, EnumChamado enumChamado, int idUsuario, int idStatus) { var model = _rep.First(x => x.Id == idChamado && x.StatusId == idStatus && x.UsuarioAtendeAtualId == idUsuario); if (model != null) { DateTime hora = DateTime.Now; model.HoraAtendeAtual = TimeSpan.Parse(hora.ToShortTimeString()); model.StatusId = idStatus; model.UsuarioAtendeAtualId = idUsuario; model.Id = idChamado; Salvar(model); } }
public Tipo RetornarUmRegistro(EnumChamado enumChamado) { var model = new Tipo(); if (enumChamado == EnumChamado.Chamado) { model = base.First(x => x.Programa == (int)EnTipos.Chamado && x.Ativo == true); } else { model = base.First(x => x.Programa == (int)EnTipos.Atividade && x.Ativo == true); } return(model); }
public Tipo RetornarUmRegistro(EnumChamado enumChamado) { var model = new Tipo(); if (enumChamado == EnumChamado.Chamado) { model = _rep.RetornarUmRegistro(EnTipos.Chamado); } else { model = _rep.RetornarUmRegistro(EnTipos.Atividade); } return(model); }
private void MostrarChamado(EnumChamado enChamado, int idEncerramento, bool quadro, int idClienteAgendamento, int idAgendamento) { try { if (!FormularioExiste("frmChamado")) { var formulario = new frmChamado(enChamado, idEncerramento, quadro, false, idClienteAgendamento, idAgendamento); formulario.MdiParent = this; Tela.AbrirFormulario(formulario); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public IEnumerable <Quadro> QuadroChamado(int idUsuario, int idRevenda, EnumChamado tipo) { var sb = new StringBuilder(); if (tipo == EnumChamado.Chamado) { sb.AppendLine(RetornarChamadoQuadro(idUsuario, idRevenda)); } else { sb.AppendLine(RetornarAtividadeQuadro(idUsuario, idRevenda)); } var lista = new List <Quadro>(); using (var db = new BancoADO()) { db.RetornoReader(sb.ToString()); while (db.Read()) { var model = new Quadro { QuadroTela = db.CampoStr("Quadro"), DataAbertura = db.CampoData("DataAbertura").ToString("dd/MM/yyyy"), NomeCliente = db.CampoStr("NomeCliente"), Tempo = db.CampoStr("Tempo"), HoraAbertura = db.CampoStr("HoraAbertura"), Id = db.CampoInt32("Id"), NivelDescricao = db.CampoStr("NivelDescricao"), Nivel = db.CampoStr("Nivel"), UsuarioAtendeAtualId = db.CampoInt32("UsuarioAtendeAtualId"), CodigoStatus = db.CampoInt32("CodigoStatus"), CodigoCliente = db.CampoInt32("CodigoCliente"), NomeTipo = db.CampoStr("NomeTipo"), UltimaData = db.CampoStr("UltimaData"), UltimaHora = db.CampoStr("UltimaHora"), HoraAtendeAtual = db.CampoStr("HoraAtendeAtual"), NomeUsuario = db.CampoStr("NomeUsuario"), CodigoParametro = db.CampoStr("CodigoParametro"), }; lista.Add(model); } db.CloseReader(); } return(lista); }
private string TextoEmail(Chamado chamado, EnumChamado enChamado) { string titulo1 = "Chamado: "; string titulo2 = " Chamados "; if (enChamado == EnumChamado.Atividade) { titulo1 = "Atividade: "; titulo2 = " Atividades "; } var sb = new StringBuilder(); sb.AppendLine("Caro(a) : " + chamado.Cliente.Nome + ", seguem abaixo informações referente ao chamado realizado na Domper Consultoria e Sistemas:"); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine("Nº " + titulo1 + chamado.Id.ToString("000000")); sb.AppendLine("Data Abertura: " + chamado.DataAbertura.Date.ToShortDateString() + " - Hora: " + chamado.HoraAbertura.ToString("hh:mm")); sb.AppendLine("Aberto por: " + chamado.UsuarioAbertura.Nome); sb.AppendLine("Contato: " + chamado.Contato); sb.AppendLine("Descrição: " + chamado.Descricao); sb.AppendLine("Dados do Atendimento (" + chamado.Status.Nome + ")"); sb.AppendLine(""); sb.AppendLine(""); foreach (var item in chamado.ChamadoOcorrencias) { sb.AppendLine("Usuário : " + item.Usuario.Nome); sb.AppendLine("Data Ocorrência: " + item.Data.ToShortDateString()); sb.AppendLine("Hora Inicial: " + item.HoraInicio.Hours); sb.AppendLine("Hora Final: " + item.HoraFim.Hours); sb.AppendLine("Solução: " + item.DescricaoSolucao); } sb.AppendLine("Colocamo-nos a disposição para maiores esclarecimentos."); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine("Equipe Domper"); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine("Esta mensagem é automática e foi gerada pelo Sistema Interno de " + titulo2 + " Domper."); sb.AppendLine(""); sb.AppendLine("Por favor não responda este email."); return(sb.ToString()); }
private void EnviarEmail(Chamado model, int usuarioId, Usuario usuario, EnumChamado enChamado) { string emailOculto = BuscarEmail(model, usuarioId, usuario); string emailCliente = RetornarEmailCliente(usuarioId, model); if (string.IsNullOrEmpty(emailCliente)) { emailCliente = emailOculto; } if (!string.IsNullOrEmpty(emailCliente)) { string texto = TextoEmail(model, enChamado); string assunto = RetornarAssunto(model, enChamado); _uow.RepositorioContaEmail.EnviarEmail(usuarioId, emailCliente, emailOculto, assunto, texto, ""); } }
public void EnviarEmail(Chamado model, int usuarioId, Usuario usuario, EnumChamado enChamado) { string emailOculto = BuscarEmail(model, usuarioId, usuario); string emailCliente = RetornarEmailCliente(usuarioId, model); if (string.IsNullOrEmpty(emailCliente)) { emailCliente = emailOculto; } if (!string.IsNullOrEmpty(emailCliente)) { string texto = TextoEmail(model, enChamado); string assunto = RetornarAssunto(model, enChamado); ContaEmailServico conta = new ContaEmailServico(); conta.EnviarEmail(usuarioId, emailCliente, emailOculto, assunto, texto, ""); } }
public void UpdateHoraUsuarioAtual(int idChamado, EnumChamado enumChamado, int idUsuario, int idStatus) { string codigoStatus = ""; if (enumChamado == EnumChamado.Chamado) { codigoStatus = _uow.RepositorioChamado.StatusAtendimentoChamado(); } else { codigoStatus = _uow.RepositorioChamado.StatusAtendimentoAtividade(); } if (!string.IsNullOrWhiteSpace(codigoStatus)) { int.TryParse(codigoStatus, out int codStatus); var modelStatus = _uow.RepositorioStatus.First(x => x.Codigo == codStatus); if (modelStatus == null) { throw new Exception("Informe o Status Atendimento na Tabela de Parâmetros !"); } var model = _uow.RepositorioChamado.First(x => x.Id == idChamado && x.StatusId == idStatus && x.UsuarioAtendeAtualId == idUsuario); if (model != null) { DateTime hora = DateTime.Now; model.HoraAtendeAtual = TimeSpan.Parse(hora.ToShortTimeString()); model.StatusId = idStatus; model.UsuarioAtendeAtualId = idUsuario; model.Id = idChamado; Salvar(model); } } }
public frmChamado(EnumChamado enChamado, int idEncerramento, bool quadro, bool ocorrencia, int idClienteAgendamento, int idAgendamento) { _enChamado = enChamado; _idEncerramento = idEncerramento; _quadro = quadro; _ocorrencia = ocorrencia; _idClienteAgendamento = idClienteAgendamento; _idAgendamento = idAgendamento; //EnStatus enStatus; //EnTipos enTipos; Iniciar(); //if (enChamado == EnumChamado.Chamado) //{ // enStatus = EnStatus.Chamado; // enTipos = EnTipos.Chamado; //} //else //{ // enStatus = EnStatus.Atividade; // enTipos = EnTipos.Atividade; //} }
public ChamadoServico(EnumChamado enChamadoAtividade = EnumChamado.Chamado) { _chamadoRepositorioDapper = new ChamadoRepositorioDapper(); _rep = new ChamadoEF(); _repUsuario = new UsuarioServico(); _agendamentoServico = new AgendamentoServico(); _usuarioPermissaoServico = new UsuarioPermissaoServico(); _repChamadoOcorrencia = new ChamadoOcorrenciaEF(); _repChamadoOcorrenciaColaboradorEF = new ChamadoOcorrenciaColaboradorEF(); _listaEmail = new List <string>(); _listaEmailCliente = new List <string>(); if (enChamadoAtividade == EnumChamado.Chamado) { _tipoChamadoAtividade = EnumChamado.Chamado; _tipoPrograma = EnProgramas.Chamado; } else { _tipoChamadoAtividade = EnumChamado.Atividade; _tipoPrograma = EnProgramas.Atividade; } }
private string RetornarSQLQuadro(int idUsuario, int idRevenda, int codigoParametro, string campoQuadro, EnumChamado tipo) { var usuario = new UsuarioADO(); string sConsulta = usuario.UsuarioCliente(idUsuario); var sb = new StringBuilder(); sb.AppendLine(" SELECT"); sb.Append(campoQuadro); sb.AppendLine(" Cha_Id as Id,"); sb.AppendLine(" Cha_DataAbertura as DataAbertura,"); sb.AppendLine(" Cha_HoraAbertura as HoraAbertura,"); sb.AppendLine(" Cli_Nome as NomeCliente,"); sb.AppendLine(" CASE cha_Nivel"); sb.AppendLine(" WHEN 1 THEN '1-Baixo'"); sb.AppendLine(" WHEN 2 THEN '2-Normal'"); sb.AppendLine(" WHEN 3 THEN '3-Alto'"); sb.AppendLine(" WHEN 4 THEN '4-Crítico'"); sb.AppendLine(" END as NivelDescricao,"); sb.AppendLine(" Cha_Nivel as Nivel,"); sb.AppendLine(" Cha_UsuarioAtendeAtual as UsuarioAtendeAtualId,"); sb.AppendLine(" Sta_Codigo as CodigoStatus,"); sb.AppendLine(" Cli_Codigo as CodigoCliente,"); sb.AppendLine(" Tip_Nome as NomeTipo,"); sb.AppendLine(" UltimaHora = dbo.Func_Chamado_BuscarUltimaHoraOcorrencia (Cha_Id),"); sb.AppendLine(" cha_HoraAtendeAtual as HoraAtendeAtual,"); sb.AppendLine(" ("); sb.AppendLine(" SELECT TOP(1) MAX(CHAO.ChOco_Data) FROM dbo.Chamado_Ocorrencia AS CHAO"); sb.AppendLine(" WHERE CHAO.ChOco_Chamado = dbo.Chamado.Cha_Id"); sb.AppendLine(" ) AS UltimaData,"); sb.AppendLine(" Par_Codigo as CodigoParametro,"); sb.AppendLine(" Usu_Nome as NomeUsuario"); sb.AppendLine("FROM Chamado"); sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); sb.AppendLine(" INNER JOIN Tipo ON Cha_Tipo = Tip_Id"); sb.AppendLine(" INNER JOIN Status ON Cha_Status = Sta_Id"); sb.AppendLine(" LEFT JOIN Usuario ON Cha_UsuarioAtendeAtual = Usu_Id"); sb.AppendLine(" LEFT JOIN Parametros ON Sta_Codigo = COALESCE(Par_Valor, 0)"); sb.AppendLine("WHERE par_Codigo = " + codigoParametro); sb.AppendLine(sConsulta); if (idRevenda > 0) { sb.AppendLine("AND (Cli_Revenda = " + idRevenda + ")"); } sb.AppendLine(" --============================================================================="); if (tipo == EnumChamado.Chamado) { if (codigoParametro < 8) { sb.AppendLine(" UNION "); } } else { if (codigoParametro < 30) { sb.AppendLine(" UNION "); } } return(sb.ToString()); //var usuario = new UsuarioADO(); //string sConsulta = usuario.UsuarioCliente(idUsuario); //var sb = new StringBuilder(); //sb.AppendLine(" SELECT"); //sb.Append(campoQuadro); //sb.AppendLine(" Cha_Id,"); //sb.AppendLine(" Cha_DataAbertura,"); //sb.AppendLine(" Cha_HoraAbertura,"); //sb.AppendLine(" Cli_Nome,"); //sb.AppendLine(" CASE cha_Nivel"); //sb.AppendLine(" WHEN 1 THEN '1-Baixo'"); //sb.AppendLine(" WHEN 2 THEN '2-Normal'"); //sb.AppendLine(" WHEN 3 THEN '3-Alto'"); //sb.AppendLine(" WHEN 4 THEN '4-Crítico'"); //sb.AppendLine(" END AS Cha_Nivel,"); //sb.AppendLine(" Cha_Nivel as Nivel,"); //sb.AppendLine(" Cha_UsuarioAtendeAtual,"); //sb.AppendLine(" Sta_Codigo,"); //sb.AppendLine(" Cli_Codigo,"); //sb.AppendLine(" Tip_Nome,"); //sb.AppendLine(" UltimaHora = dbo.Func_Chamado_BuscarUltimaHoraOcorrencia (Cha_Id),"); //sb.AppendLine(" cha_HoraAtendeAtual,"); //sb.AppendLine(" ("); //sb.AppendLine(" SELECT MAX(CHAO.ChOco_Data) FROM dbo.Chamado_Ocorrencia AS CHAO"); //sb.AppendLine(" WHERE CHAO.ChOco_Chamado = dbo.Chamado.Cha_Id"); //sb.AppendLine(" ) AS UltimaData,"); //sb.AppendLine(" Par_Codigo,"); //sb.AppendLine(" Usu_Nome"); //sb.AppendLine("FROM Chamado"); //sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); //sb.AppendLine(" INNER JOIN Tipo ON Cha_Tipo = Tip_Id"); //sb.AppendLine(" INNER JOIN Status ON Cha_Status = Sta_Id"); //sb.AppendLine(" INNER JOIN Parametros ON Sta_Codigo = COALESCE(Par_Valor, 0)"); //sb.AppendLine(" LEFT JOIN Usuario ON Cha_UsuarioAtendeAtual = Usu_Id"); //sb.AppendLine("WHERE par_Codigo = " + codigoParametro); //sb.AppendLine(sConsulta); //sb.AppendLine("AND EXISTS("); //sb.AppendLine(" SELECT 1 FROM Usuario WHERE ((Cli_Revenda = Usu_Revenda) OR (Usu_Revenda IS NULL))"); //sb.AppendLine(" AND Usu_Id = " + idUsuario + ")"); //sb.AppendLine("AND EXISTS("); //sb.AppendLine(" SELECT 1 FROM Usuario WHERE ((Cli_Id = Usu_Cliente) OR (Usu_Cliente IS NULL))"); //sb.AppendLine(" AND Usu_Id = " + idUsuario + ")"); //if (idRevenda > 0) // sb.AppendLine("AND (Cli_Revenda = " + idUsuario + ")"); //sb.AppendLine(" --============================================================================="); //if (tipo == EnumChamado.Chamado) //{ // if (codigoParametro < 8) // sb.AppendLine(" UNION "); //} //else //{ // if (codigoParametro < 30) // sb.AppendLine(" UNION "); //} //return sb.ToString(); }
public IEnumerable <ChamadoOcorrencia> ListarProblemaSolucao(ChamadoFiltro filtro, string texto, int idUsuario, EnumChamado tipo) { var usuarioADO = new UsuarioADO(); string permissao = usuarioADO.UsuarioCliente(idUsuario); var sb = new StringBuilder(); sb.AppendLine(" SELECT "); sb.AppendLine(" ChOco_Chamado,"); sb.AppendLine(" ChOco_Data,"); sb.AppendLine(" ChOco_HoraInicio,"); sb.AppendLine(" ChOco_HoraFim,"); sb.AppendLine(" ChOco_DescricaoSolucao,"); sb.AppendLine(" ChOco_DescricaoTecnica,"); sb.AppendLine(" Usu_Nome"); sb.AppendLine(" FROM Chamado_Ocorrencia"); sb.AppendLine(" INNER JOIN Chamado ON ChOco_Chamado = Cha_Id"); sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); sb.AppendLine(" INNER JOIN Usuario ON ChOco_Usuario = Usu_Id "); sb.AppendLine(" WHERE ((ChOco_DescricaoTecnica LIKE " + texto + ") OR (ChOco_DescricaoSolucao LIKE " + texto + "))"); sb.AppendLine(permissao); if (tipo == EnumChamado.Chamado) { sb.AppendLine(" AND cha_TipoMovimento = 1"); } else { sb.AppendLine(" AND cha_TipoMovimento = 2"); } if (filtro.IdCliente != "") { sb.AppendLine(" AND Cha_Cliente IN " + filtro.IdCliente); } sb.AppendLine(" ORDER BY ChOco_Data"); var lista = new List <ChamadoOcorrencia>(); using (var db = new BancoADO()) { db.RetornoReader(sb.ToString()); while (db.Read()) { var model = new ChamadoOcorrencia(); model.ChamadoId = db.CampoInt32("ChOco_Chamado"); model.Data = db.CampoData("ChOco_Data"); model.HoraInicio = TimeSpan.Parse(db.CampoData("ChOco_HoraInicio").ToShortTimeString()); model.HoraFim = TimeSpan.Parse(db.CampoData("ChOco_HoraFim").ToShortTimeString()); model.DescricaoSolucao = db.CampoStr("ChOco_DescricaoSolucao"); model.DescricaoTecnica = db.CampoStr("ChOco_DescricaoTecnica"); model.Usuario.Nome = db.CampoStr("Usu_Nome"); lista.Add(model); } db.CloseReader(); } return(lista); }
public IEnumerable <ChamadoConsulta> Filtrar(ChamadoFiltro filtro, string campo, string texto, int usuarioId, bool contem, EnumChamado tipo) { var usuarioCliente = new UsuarioADO(); var sb = new StringBuilder(); string sTexto = ""; sTexto = "'" + texto + "%'"; if (contem) { sTexto = "'%" + texto + "%'"; } sb.AppendLine(" SELECT"); sb.AppendLine(" Cha_Id as Id,"); sb.AppendLine(" Cha_Descricao as Descricao,"); sb.AppendLine(" Cha_DataAbertura as DataAbertura,"); sb.AppendLine(" Cha_HoraAbertura as HoraAbertura,"); sb.AppendLine(" Sta_Nome as NomeStatus,"); sb.AppendLine(" Cha_Status as IdStatus,"); sb.AppendLine(" Tip_Nome as NomeTipo,"); sb.AppendLine(" Cli_Nome as RazaoSocial,"); sb.AppendLine(" Cli_Fantasia as Fantasia,"); sb.AppendLine(" CASE Cha_Nivel"); sb.AppendLine(" WHEN 1 THEN '1-Baixo'"); sb.AppendLine(" WHEN 2 THEN '2-Normal'"); sb.AppendLine(" WHEN 3 THEN '3-Alto'"); sb.AppendLine(" WHEN 4 THEN '4-Crítico'"); sb.AppendLine(" END AS Nivel,"); sb.AppendLine(" Usu_Nome as NomeUsuario"); sb.AppendLine(" FROM Chamado"); sb.AppendLine(" INNER JOIN Status ON Cha_Status = Sta_Id"); sb.AppendLine(" INNER JOIN Tipo ON Cha_Tipo = Tip_Id"); sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); sb.AppendLine(" INNER JOIN Usuario ON Cha_UsuarioAbertura = Usu_Id"); sb.AppendLine(" LEFT JOIN Revenda ON Cli_Revenda = Rev_Id"); if (!string.IsNullOrWhiteSpace(texto)) { sb.AppendLine(" WHERE " + campo + " LIKE " + sTexto); } else { sb.AppendLine("WHERE Cha_Id > 0"); } if (filtro.Id > 0) { sb.AppendLine(" AND Cha_Id = " + filtro.Id); } if (tipo == EnumChamado.Chamado) { sb.AppendLine(" AND Cha_TipoMovimento = 1"); } else { sb.AppendLine(" AND Cha_TipoMovimento = 2"); } sb.AppendLine(usuarioCliente.UsuarioCliente(usuarioId)); if ((!string.IsNullOrWhiteSpace(filtro.DataInicial)) && (filtro.DataInicial.Trim() != "/ /")) { sb.AppendLine(" AND Cha_DataAbertura >=" + Funcoes.DataIngles(filtro.DataInicial)); } if ((!string.IsNullOrWhiteSpace(filtro.DataFinal)) && (filtro.DataFinal.Trim() != "/ /")) { sb.AppendLine(" AND Cha_DataAbertura <=" + Funcoes.DataIngles(filtro.DataFinal)); } if (!string.IsNullOrWhiteSpace(filtro.IdCliente)) { sb.AppendLine(" AND Cha_Cliente IN " + filtro.IdCliente); } if (!string.IsNullOrWhiteSpace(filtro.idTipo)) { sb.AppendLine(" AND Cha_Tipo IN " + filtro.idTipo); } if (!string.IsNullOrWhiteSpace(filtro.IdStatus)) { sb.AppendLine(" AND Cha_Status IN " + filtro.IdStatus); } if (!string.IsNullOrWhiteSpace(filtro.IdModulo)) { sb.AppendLine(" AND Cha_Modulo IN " + filtro.IdModulo); } if (!string.IsNullOrWhiteSpace(filtro.IdRevenda)) { sb.AppendLine(" AND Cha_Revenda IN " + filtro.IdRevenda); } if (!string.IsNullOrWhiteSpace(filtro.IdUsuarioAbertura)) { sb.AppendLine(" AND Cha_UsuarioAbertura IN " + filtro.IdUsuarioAbertura); } if (filtro.clienteFiltro.UsuarioId > 0) { sb.AppendLine(" AND Cli_Usuario IN " + filtro.clienteFiltro.UsuarioId); } var lista = new List <ChamadoConsulta>(); using (var db = new BancoADO()) { db.RetornoReader(sb.ToString()); while (db.Read()) { var model = new ChamadoConsulta { //DataAbertura = db.CampoStr("DataAbertura"), Descricao = db.CampoStr("Descricao"), Fantasia = db.CampoStr("Fantasia"), //HoraAbertura = db.CampoStr("HoraAbertura"), Id = db.CampoInt32("Id"), IdStatus = db.CampoInt32("IdStatus"), Nivel = db.CampoStr("Nivel"), NomeStatus = db.CampoStr("NomeStatus"), NomeTipo = db.CampoStr("NomeTipo"), NomeUsuario = db.CampoStr("NomeUsuario"), RazaoSocial = db.CampoStr("RazaoSocial") }; lista.Add(model); } db.CloseReader(); } return(lista); }
public bool PermissaoChamadoOcorrenciaExcluir(int idUsuarioGravado, int idOcorrencia, EnumChamado tipo, Usuario usuario) { if (usuario.Adm) { return(true); } bool permissao = true; if (tipo == EnumChamado.Chamado) { permissao = _repUsuarioPermissao.PermissaoOcorrenciaChamadoExcluir(usuario.Id); } else { permissao = _repUsuarioPermissao.PermissaoOcorrenciaAtividadeExcluir(usuario.Id); } if (permissao) { if (idOcorrencia > 0) { permissao = (usuario.Id == idUsuarioGravado); } } return(permissao); }
public IQueryable <ProblemaSolucao> ProblemaSolucao(string texto, int idUsuario, int idCliente, EnumChamado enumChamado) { var sb = new StringBuilder(); string sTexto = "'%" + texto + "%'"; sb.AppendLine(" SELECT "); sb.AppendLine(" ChOco_Id as Id,"); sb.AppendLine(" ChOco_Chamado as IdChamado,"); sb.AppendLine(" ChOco_HoraInicio as HoraInicio,"); sb.AppendLine(" ChOco_HoraFim as HoraFim,"); sb.AppendLine(" ChOco_DescricaoSolucao as DescricaoSolucao,"); sb.AppendLine(" ChOco_DescricaoTecnica as DescricaoTecnica,"); sb.AppendLine(" Usu_Nome as NomeUsuario"); sb.AppendLine(" FROM Chamado_Ocorrencia"); sb.AppendLine(" INNER JOIN Chamado ON ChOco_Chamado = Cha_Id"); sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); sb.AppendLine(" INNER JOIN Usuario ON ChOco_Usuario = Usu_Id "); sb.AppendLine(" WHERE ((ChOco_DescricaoTecnica LIKE " + sTexto + ") OR (ChOco_DescricaoSolucao LIKE " + sTexto + "))"); if (idCliente > 0) { sb.AppendLine(" AND Cha_Cliente = " + idCliente); } if (enumChamado == EnumChamado.Chamado) { sb.AppendLine(" AND cha_TipoMovimento = 1"); } else { sb.AppendLine(" AND cha_TipoMovimento = 2"); } sb.AppendLine(_repUsuario.PermissaoUsuario(idUsuario)); sb.AppendLine(" ORDER BY ChOco_Data"); var temp = sb.ToString(); return(_rep.context.Database.SqlQuery <ProblemaSolucao>(temp).AsQueryable()); }
public bool PermissaoChamadoOcorrenciaDataHora(int idUsuarioGravado, ref string mensagem, EnumChamado tipo, Usuario usuario) { if (usuario.Adm) { mensagem = "OK"; return(true); } if (usuario.Id != idUsuarioGravado) { mensagem = "Somente o mesmo usuário poderá alterar!"; return(false); } bool permissao; if (tipo == EnumChamado.Chamado) { permissao = _repUsuarioPermissao.PermissaoAlterarDataHoraChamado(usuario.Id); } else { permissao = _repUsuarioPermissao.PermissaoAlterarDataHoraAtividade(usuario.Id); } mensagem = (permissao) ? "OK" : "Usuário sem Permissão!"; return(permissao); }
public IEnumerable <QuadroViewModelChamado> QuadroChamado(int idUsuario, int idRevenda, EnumChamado tipo) { var sb = new StringBuilder(); if (tipo == EnumChamado.Chamado) { sb.AppendLine(RetornarChamadoQuadro(idUsuario, idRevenda)); } else { sb.AppendLine(RetornarAtividadeQuadro(idUsuario, idRevenda)); } var lista = _repositorioQuadro.GetAll(sb.ToString()); return(lista); }
public List <ProblemaSolucao> ProblemaSolucao(string texto, int idUsuario, int idCliente, EnumChamado enumChamado) { return(_rep.ProblemaSolucao(texto, idUsuario, idCliente, EnumChamado.Chamado).ToList()); }
public IEnumerable <ChamadoConsultaViewModel> Filtrar(ChamadoFiltroViewModel filtro, string campo, string texto, int usuarioId, bool contem, EnumChamado tipo) { var usuarioCliente = new UsuarioEF(); var sb = new StringBuilder(); string sTexto = ""; sTexto = "'" + texto + "%'"; if (contem) { sTexto = "'" + texto + "%'"; } sb.AppendLine(" SELECT"); sb.AppendLine(" Cha_Id as Id,"); sb.AppendLine(" '' as Descricao,"); sb.AppendLine(" Cha_DataAbertura as DataAbertura,"); sb.AppendLine(" Cha_HoraAbertura as HoraAbertura,"); sb.AppendLine(" Sta_Nome as NomeStatus,"); sb.AppendLine(" Cha_Status as IdStatus,"); sb.AppendLine(" Tip_Nome as NomeTipo,"); sb.AppendLine(" Cli_Nome as RazaoSocial,"); sb.AppendLine(" Cli_Fantasia as Fantasia,"); sb.AppendLine(" CASE Cha_Nivel"); sb.AppendLine(" WHEN 1 THEN '1-Baixo'"); sb.AppendLine(" WHEN 2 THEN '2-Normal'"); sb.AppendLine(" WHEN 3 THEN '3-Alto'"); sb.AppendLine(" WHEN 4 THEN '4-Crítico'"); sb.AppendLine(" END AS Nivel,"); sb.AppendLine(" Usu_Nome as NomeUsuario"); sb.AppendLine(" FROM Chamado"); sb.AppendLine(" INNER JOIN Status ON Cha_Status = Sta_Id"); sb.AppendLine(" INNER JOIN Tipo ON Cha_Tipo = Tip_Id"); sb.AppendLine(" INNER JOIN Cliente ON Cha_Cliente = Cli_Id"); sb.AppendLine(" INNER JOIN Usuario ON Cha_UsuarioAbertura = Usu_Id"); sb.AppendLine(" LEFT JOIN Revenda ON Cli_Revenda = Rev_Id"); if (!string.IsNullOrWhiteSpace(texto)) { sb.AppendLine(" WHERE " + campo + " LIKE " + sTexto); } else { sb.AppendLine("WHERE Cha_Id > 0"); } if (filtro.Id > 0) { sb.AppendLine(" AND Cha_Id = " + filtro.Id); } if (tipo == EnumChamado.Chamado) { sb.AppendLine(" AND Cha_TipoMovimento = 1"); } else { sb.AppendLine(" AND Cha_TipoMovimento = 2"); } sb.AppendLine(usuarioCliente.PermissaoUsuario(usuarioId)); if ((!string.IsNullOrWhiteSpace(filtro.DataInicial)) && (filtro.DataInicial.Trim() != "/ /")) { sb.AppendLine(" AND Cha_DataAbertura >=" + Funcoes.DataIngles(filtro.DataInicial)); } if ((!string.IsNullOrWhiteSpace(filtro.DataFinal)) && (filtro.DataFinal.Trim() != "/ /")) { sb.AppendLine(" AND Cha_DataAbertura <=" + Funcoes.DataIngles(filtro.DataFinal)); } if (!string.IsNullOrWhiteSpace(filtro.IdCliente)) { sb.AppendLine(" AND Cha_Cliente IN " + filtro.IdCliente); } if (!string.IsNullOrWhiteSpace(filtro.IdTipo)) { sb.AppendLine(" AND Cha_Tipo IN " + filtro.IdTipo); } if (!string.IsNullOrWhiteSpace(filtro.IdStatus)) { sb.AppendLine(" AND Cha_Status IN " + filtro.IdStatus); } if (!string.IsNullOrWhiteSpace(filtro.IdModulo)) { sb.AppendLine(" AND Cha_Modulo IN " + filtro.IdModulo); } if (!string.IsNullOrWhiteSpace(filtro.IdRevenda)) { sb.AppendLine(" AND Cha_Revenda IN " + filtro.IdRevenda); } if (!string.IsNullOrWhiteSpace(filtro.IdUsuarioAbertura)) { sb.AppendLine(" AND Cha_UsuarioAbertura IN " + filtro.IdUsuarioAbertura); } if (filtro.ClienteFiltro.UsuarioId > 0) { sb.AppendLine(" AND Cli_Usuario IN " + filtro.ClienteFiltro.UsuarioId); } sb.AppendLine(" ORDER BY " + campo); var lista = _repositorioConsulta.GetAll(sb.ToString()); return(lista); }