/// <summary> /// Atualiza Disponibilidade do profissional /// </summary> /// <param name="idUsuario">ID usuario logado</param> /// <returns>ComissaoProfissionalEntidade</returns> public void AtualizaDisponibilidadeProfissional(long idColaboradorEmpresa, DisponibilidadeFiltro filtro) { using (var sqlConnection = this.InstanciaConexao()) { // Verifica se já existe o registro string queryVer = @"select count(*) as bit from tblColaboradoresEmpresaDisponiveis where idColaboradorEmpresaSistema = @id"; var resultado = sqlConnection.QueryFirstOrDefault <bool>(queryVer, new { id = idColaboradorEmpresa }); // Update ou insert if (resultado) { // Query string query = @"update tblColaboradoresEmpresaDisponiveis set bitDisponivel = @disponivel, geoPosicao = (select geometry::Point(@log, @lat, 4326)), idTipoProfissional = @tipoProfissional1, dtUltimaAtualizacao = getdate() where idColaboradorEmpresaSistema = @id"; // Query Multiple sqlConnection.Execute(query, new { id = idColaboradorEmpresa, disponivel = filtro.bitDisponivel, lat = filtro.latitude, log = filtro.longitude, tipoProfissional1 = filtro.idTipoProfissional }); } else { // Query string query = @"INSERT INTO [dbo].[tblColaboradoresEmpresaDisponiveis] ([idColaboradorEmpresaSistema] ,[idTipoProfissional] ,[geoPosicao] ,[bitDisponivel] ,[dtUltimaAtualizacao]) VALUES (@id ,@tipoProfissional1 ,(select geometry::Point(@log, @lat, 4326)) ,@disponivel ,getdate())"; // Query Multiple sqlConnection.Execute(query, new { id = idColaboradorEmpresa, disponivel = filtro.bitDisponivel, lat = filtro.latitude, log = filtro.longitude, tipoProfissional1 = filtro.idTipoProfissional }); } } }
public IHttpActionResult PutDisponibilidade([FromBody] DisponibilidadeFiltro filtro) { // Variaveis var rep = new ProfissionalRepositorio(); // Busca Dados resumidos var perfil = rep.BuscaPerfilProfissional(UsuarioAutenticado.LoginID); // Validacao if (perfil == null) { return(StatusCode(System.Net.HttpStatusCode.NoContent)); } // Atualiza rep.AtualizaDisponibilidadeProfissional(perfil.idColaboradorEmpresaSistema, filtro); // Return return(Ok()); }