AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / coding / 问题

All perguntas(coding)

Martin Hope
Bernietechy
Asked: 2025-04-06 21:22:07 +0800 CST

Como encontrar o roleDefinitionId de funções unificadas na API do Microsoft Graph ao criar um relacionamento de administração delegada POST

  • 6

Pretendo integrar o PHP CRM com o Microsoft Graph e o Partner Center para poder criar relacionamentos de administração delegada a partir do CRM para os clientes que gerencio. Este é o artigo da Microsoft que ilustra o objeto de criação de relacionamento de administração.

Preciso de ajuda para saber como obter roleDefinitionIdum specific administrative role in the tenantpara que eu possa passá-lo no corpo da solicitação POST ou como posso listá-lo unified rolese obtê-lo roleDefinitionIdprogramaticamente. Obrigado.

No corpo da solicitação POST, temos " roleDefinitionIde" requiredque significa "a unified roleser solicitado". A função unificada é a função administrativa sendo solicitada, por exemplo Global admin, User administratoretc., do locatário do cliente.

Abaixo do corpo da solicitação do Microsoft POST, só não sei como eles sabem a ' in the body stands for whichfunção administrativa roleDefinitionId'

POST https://graph.microsoft.com/v1.0/tenantRelationships/delegatedAdminRelationships
Content-Type: application/json

{
  "displayName": "Contoso admin relationship",
  "duration": "P730D",
  "customer": {
    "tenantId": "4b827261-d21f-4aa9-b7db-7fa1f56fb163",
    "displayName": "Contoso subsidiary Inc"
  },
  "accessDetails": {
    "unifiedRoles": [
      {
        "roleDefinitionId": "29232cdf-9323-42fd-ade2-1d097af3e4de"
      },
      {
        "roleDefinitionId": "3a2c62db-5318-420d-8d74-23affee5d9d5"
      }
    ]
  },
  "autoExtendDuration": "P180D"
}

No meu formulário HTML, é claro, preciso que o usuário selecione a função administrativa com base no nome, por exemplo global admin, e, em seguida, o backend para poder traduzir para o roleDefinitionIdformato que ele usa na interface gráfica do Partner Center . No momento, preciso inserir o arquivo roleDefinitionId.

Meu fluxo de design insira a descrição da imagem aqui

microsoft-graph-api
  • 1 respostas
  • 21 Views
Martin Hope
oemer ok
Asked: 2025-04-06 21:13:58 +0800 CST

É possível fazer o pedido hoje e depois fazer o pedido normalmente?

  • 6

Tenho um aplicativo onde um usuário pode criar um pedido. Quero mostrar a ele os pedidos de hoje e então fazer o pedido normalmente. Assim:

Data de hoje: 2024-04-06

2024-04-06 #order1
2024-04-06 #order2
-then sort by normal
2024-04-08 #order4
2024-04-01 #order7

O que está passando pela minha cabeça é se eu classificar por normal, então minhas datas são mostradas duplicadas? Quero dizer, no começo é 2024-04-06, então eu classifico por normal a partir de 2024-04-08, então ele vai para baixo e então eu chego novamente em 2024-04-06. Então é possível classificar por hoje e depois por descanso sem mostrar duplicado?

atualmente este é meu código:

          SELECT 
          
          l.id as location_id,
          l.name,

          lo.id,
          lo.start_time,
          lo.end_time,
          lo.leader_id,
          lo.is_storno,
          lo.storno_at,
          lo.storno_by,
          lo.employees_need,
          lo.created_at

          FROM location_orders lo

          INNER JOIN location l
          ON l.id = lo.location_id

          WHERE lo.tenant_id = $1 AND lo.deleted_by IS NULL

          ORDER BY lo.start_time DESC LIMIT 50;
postgresql
  • 1 respostas
  • 34 Views
Martin Hope
L.dev
Asked: 2025-04-06 21:01:27 +0800 CST

Consulta ORACLE para todos os registros conectados

  • 5

Tenho uma tabela de junção que realiza uma associação bidirecional usando um único registro. No exemplo abaixo, o registro com id=8 está vinculado ao registro com id=4, e o registro com id=4 está vinculado ao registro com id=8.

eu ia ID do objeto id_do_objeto_conectado
1 1 2
2 1 4
3 2 4
4 5 1
5 8 4
6 12 2

Quero consultar todos os objetos conectados direta ou indiretamente ao objeto fornecido.

Minha consulta se parece com:

Select * from TABLE t
START WITH t.object_id = xxx
CONNECT BY NOCYCLE PRIOR t.object_id = t.object_id
OR PRIOR t.connected_object_id = t.connected_object_id
OR PRIOR t.object_id = t.connected_object_id
OR PRIOR t.connected_object_id = t.object_id

Por exemplo, se eu consultar o objeto com id=12, gostaria de obter todos os registros da tabela acima.

Infelizmente, esta consulta não funcionará se os registros com id = 12 estiverem apenas na coluna connected_object_id. Além disso, a consulta trava em alguns casos.

@Consulta final com ajuda de @Abdul Alim Shakir

WITH all_links(source, target) AS (
SELECT object_id, connected_object_id FROM connections
UNION
SELECT connected_object_id, object_id FROM connections
),
connected(object_id) AS (
SELECT 12 FROM DUAL
UNION ALL
SELECT source from all_links START WITH source = 12
       CONNECT BY NOCYCLE PRIOR source = target
)
SELECT DISTINCT c.*
FROM connections c
JOIN connected co
ON c.object_id = co.object_id OR c.connected_object_id = 
co.object_id;
sql
  • 1 respostas
  • 73 Views
Martin Hope
MaxBrandtner
Asked: 2025-04-06 20:14:56 +0800 CST

clangd não respeita diretórios de inclusão definidos em .clangd

  • 6

Recentemente troquei o ctags pelo clangd para melhor suporte ao lsp no neovim. Agora o clangd não reconhece meus diretórios include locais.

Tentei os seguintes arquivos .clangd sem sucesso (com o primeiro pelo menos as macros funcionaram, o que é alguma coisa)

CompileFlags:
    Add:
        - -I./include
        - -I./lib
        - -D_GNU_SOURCE
        - -DSHELL="/bin/sh"
CompileFlags:
  Add: [-D_GNU_SOURCE, -DSHELL="/bin/sh", -I./include, -I./lib]

o arquivo .clangd está na raiz do projeto, mas ele simplesmente não funciona. O que acontece?

neovim
  • 1 respostas
  • 18 Views
Martin Hope
AdirMor
Asked: 2025-04-06 20:06:12 +0800 CST

Projetando um DFA para um Lexer: nós de caracteres compartilhados vs. separados

  • 5

Ao criar o DFA para o analisador léxico da minha linguagem de programação, cada caractere (por exemplo, n, i, f) deve aparecer como um único nó compartilhado em todos os caminhos de token ou devo permitir nós duplicados para o mesmo caractere se eles aparecerem em caminhos diferentes (por exemplo, nós separados npara int, return, e blank)?

Quais são as compensações entre essas duas abordagens em termos de eficiência de implementação, clareza e correção?

insira a descrição da imagem aqui

Adicionei uma imagem para visualizar o que quis dizer.

lexer
  • 1 respostas
  • 27 Views
Martin Hope
PatPanda
Asked: 2025-04-06 19:42:36 +0800 CST

Jackson desserializa enum sem distinção entre maiúsculas e minúsculas

  • 5

Gostaria de decodificar valores maiúsculos e minúsculos para um Java Enum em valores simples e em Array.

Eu tentei este pedaço de código:

public enum FooBarEnum {
    FOO,
    BAR
}

os seguintes POJOs para desserializar coisas:

public record Aaa(String something, FooBarEnum foobar)

public record Bbb(String something, List<FooBarEnum> foobarList)

Ao tentar obter o objeto via solicitação HTTP:

@GetExchange("/api/test1")
Aaa getAaa(@PathVariable int key);

Para isso, funciona, não importa se o servidor responde a um objeto com FOO, foo, BAR ou bar, funciona.

No entanto, tenho isto:

@GetExchange("/api/test2")
Bbb getBbb(@PathVariable int key);

Quando estiver em letras minúsculas, encontrarei esta exceção:

JSON decoding error: Cannot deserialize value of type `com.FooBarEnum` from String "foo": not one of the values accepted for Enum class: [FOO, BAR]

[...]
Caused by: com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type `com.FooBarEnum` from String "foo": not one of the values accepted for Enum class: [FOO, BAR]

 at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 996] (through reference chain: com.Bbb["fooBarList"]-java.util.ArrayList[0])
    at com.fasterxml.jackson.databind.exc.InvalidFormatException.from(InvalidFormatException.java:67) ~[jackson-databind-2.18.3.jar:2.18.3]

Eu até tentei adicionar

@JsonFormat(with = {JsonFormat.Feature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, JsonFormat.Feature.ACCEPT_CASE_INSENSITIVE_VALUES})

mas sem sorte.

Existe uma maneira de lidar com o caso de ignorar para array também?

java
  • 1 respostas
  • 60 Views
Martin Hope
Dominik Kaszewski
Asked: 2025-04-06 19:21:51 +0800 CST

IPC portátil C++

  • 8

Estou portando um aplicativo de console que foi escrito em C visando Linux. Quero tornar o código o mais portátil possível, para que ele também possa ser usado no Windows e outros sistemas operacionais. Até agora, consegui substituir todo o código específico do Linux, como pthreads, semáforos e operações de sistema de arquivos, com cabeçalhos stdlib C++ correspondentes.

Um dos recursos que o aplicativo tem é executar como arquitetura cliente-servidor, para permitir cálculos em segundo plano e persistir e reutilizar o estado quando o cliente CLI sai. Eu li sobre vários métodos IPC, como sockets, pipes e memória compartilhada, mas eles sempre usam syscalls não portáveis.

Existe alguma maneira de fazer isso usando apenas C++ e stdlib? A única solução que consigo pensar é a comunicação baseada em arquivo, mas parece muito difícil manter a atomicidade, especialmente com vários clientes, e o servidor tem que pesquisar o arquivo para alterações, pois todos os métodos de notificação parecem ser específicos do SO também. A última pergunta no Stackoverflow sobre isso tem 15 anos, então talvez algo tenha sido proposto para resolver isso em C++23 e posteriores.

c++
  • 2 respostas
  • 113 Views
Martin Hope
Christian
Asked: 2025-04-06 18:13:36 +0800 CST

Atualizar zIndex com base na posição de rolagem em ScrollView

  • 5

Este código mostra uma visualização no estilo cover-flow onde você pode rolar pelas imagens em uma Scroll View, enquanto as imagens em si vêm de uma matriz. O espaçamento é -100 para permitir que as outras imagens que não estão no meio da tela apareçam atrás da imagem atual. Embora isso esteja funcionando bem no lado esquerdo, no lado direito da imagem atual, as outras imagens na ScrollView estão se cruzando: insira a descrição da imagem aqui (o avião de papel está no meio e os símbolos de download estão na frente dele)

Usando zIndex, gostaria de atualizar dinamicamente a visualização quando o usuário estiver rolando pela galeria. Tentei usar GeometryReader com @State var selectedItemInd, mas isso não funcionou muito bem para mim, pois a visualização não foi atualizada. Acredito que toda vez que o usuário rolar, eu não precisaria apenas saber qual item está na posição do meio, mas também onde todos os outros itens estão.

import SwiftUI
import MusicKit

struct ContentView: View {
#if false
    let images = ["Ghost - Single", "Burre - Single", "Butterfly 3001", "Tension (Deluxe)", "Shreya Ghoshal_ Best of Me", "Life - EP", "Liebeskummer lohnt sich nicht"]
#else
    let images = ["externaldrive.fill.badge.checkmark", "square.and.arrow.up.fill", "square.and.arrow.up.circle", "folder.circle", "paperplane.fill", "square.and.arrow.down", "square.and.arrow.down.fill", "doc.badge.gearshape", "square.and.arrow.up.on.square.fill"]
    let colours = [Color.red, Color.blue, Color.green, Color.yellow, Color.orange, Color.purple, Color.pink, Color.cyan, Color.indigo]
#endif
    var itemWidthHeight: CGFloat = CGFloat(200)
    @StateObject var albums = MusicStorage.shared
    @StateObject var authorizationObject = AuthorizationHandler.shared
//    @State var selectedItemInd: Int = 0
    
    var body: some View {
        VStack{
            GeometryReader { geo in
                ScrollView(.horizontal, showsIndicators: false){
                    HStack(spacing: -100) {
                        ForEach(0..<images.count) { s in
                            Image(systemName: images[s])
                                .resizable()
                                .aspectRatio(contentMode: .fit)
                                .frame(width: itemWidthHeight, height: itemWidthHeight)
                                .background(colours[s])
                                .visualEffect { effect, proxy in
                                    let frame = proxy.frame(in: .scrollView(axis: .horizontal))
                                    let distance = frame.minX
//                                    print(distance)
                                    
                                    return effect
                                    //only rotate at left or right swipe, not both at once
                                    // distance to left is negative, distance to right is positive value
                                        .rotation3DEffect(Angle(degrees: distance < 0 ? min(-distance * 0.3, 40) : 0), axis: (x: 0.0, y: 1.0, z: 0.0))
                                        .rotation3DEffect(Angle(degrees: distance > 0 ? max(-distance * 0.3, -40) : 0), axis: (x: 0.0, y: 1.0, z: 0.0))
                                }
//                                .frame(width: itemWidthHeight, height: itemWidthHeight, alignment: .center)
                        }
                    }
                    .scrollTargetLayout()
                }
                .frame(width: geo.size.width, height: geo.size.height, alignment: .center)
                .contentMargins((geo.size.width / 2) - itemWidthHeight / 2) // scroll view item should be in middle position
                .scrollTargetBehavior(.viewAligned(limitBehavior: .automatic))
            }
        }
        .onAppear() {
            albums.loadAlbums()
        }
        // Sheet is presented if authorization failed (init)
        .sheet(isPresented: $authorizationObject.isSheetPresented) {
            AuthorizationSheet(musicAuthorizationStatus: $authorizationObject.isAuthorizedForMusicKit)
                .interactiveDismissDisabled()
        }
    }
}


#Preview {
    ContentView()
}

Mas talvez eu esteja errado e haja uma solução simples. Alguma ideia?

swift
  • 1 respostas
  • 43 Views
Martin Hope
firstpostcommenter
Asked: 2025-04-06 17:39:58 +0800 CST

Como fazer a anotação JsonUwrapped funcionar na classe de dados Kotlin

  • 5

Como fazer @JsonUnwrappeda anotação Jackson funcionar corretamente na classe de dados Kotlin para desserialização?

Além da criação de um desserializador personalizado para esta classe e adicioná-lo ao mapeador de objetos como um módulo, não encontrei nenhuma solução simples.

Aqui está meu exemplo de código:

@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY)
@JsonNaming(PropertyNamingStrategies.LowerCamelCaseStrategy::class)
@Schema(description = "Customer Details", allOf = [Address::class, Person::class])
data class CustomerDetails(
  @JsonUnwrapped val addressDetails: Address?,// address related fields
  @JsonUnwrapped val personDetails: Person? // person related fields
)

@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY)
@JsonNaming(PropertyNamingStrategies.LowerCamelCaseStrategy::class)
data class Address(
  val houseNumber: Int?,
  val streetName: String?,
  val city: String?
)

@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY)
@JsonNaming(PropertyNamingStrategies.LowerCamelCaseStrategy::class)
data class Person(
  val firstName: String?,
  val lastName: String?,
  val initials: String?
)

Por causa da anotação @Schema, a página swagger funciona bem. Por causa da anotação @JsonUnwrapped, a serialização do objeto para JSON funciona como pretendido. Mas a desserialização falha com o erro: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Não é possível definir a propriedade do criador "nome da propriedade" como @JsonUnwrapped: combinação ainda não suportada

kotlin
  • 1 respostas
  • 32 Views
Martin Hope
Olibarer
Asked: 2025-04-06 17:31:27 +0800 CST

Maneira eficiente e legível de obter uma matriz de índice N-dimensional em ordem C usando NumPy

  • 7

Quando preciso gerar uma matriz de índices N-dimensional em ordem C, tento algumas abordagens diferentes do NumPy.

O mais rápido para matrizes maiores, mas menos legível:

np.stack(np.meshgrid(*[np.arange(i, dtype=dtype) for i in sizes], indexing="ij"), axis=-1).reshape(-1, len(sizes))

Mais legível com bom desempenho:

np.ascontiguousarray(np.indices(sizes, dtype=dtype).reshape(len(sizes), -1).T)

Aqui, não tenho certeza se a cópia ascontiguousarray é realmente necessária ou se há uma maneira melhor de garantir que o resultado esteja na ordem C sem forçar uma cópia.

Mais legível, mas de longe o mais lento:

np.vstack([*np.ndindex(sizes)], dtype=dtype)

A conversão do iterador é bastante lenta para matrizes maiores.

Existe uma maneira integrada mais direta e legível de fazer isso que corresponda ao desempenho de np.meshgrid ou np.indices usando NumPy? Caso contrário, as abordagens meshgrid ou indices podem ser otimizadas para evitar cópias de memória desnecessárias (como ascontiguousarray), garantindo ainda que o array seja C-contíguo?

Exemplo:

sizes = (3, 1, 2)
idx = np.ascontiguousarray(np.indices(sizes).reshape(len(sizes), -1).T)
print(idx)
print(f"C_CONTIGUOUS: {idx.flags['C_CONTIGUOUS']}")
# [[0 0 0]
#  [0 0 1]
#  [1 0 0]
#  [1 0 1]
#  [2 0 0]
#  [2 0 1]]
# C_CONTIGUOUS: True
python
  • 1 respostas
  • 152 Views
Prev
Próximo

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Reformatar números, inserindo separadores em posições fixas

    • 6 respostas
  • Marko Smith

    Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não?

    • 2 respostas
  • Marko Smith

    Problema com extensão desinstalada automaticamente do VScode (tema Material)

    • 2 respostas
  • Marko Smith

    Vue 3: Erro na criação "Identificador esperado, mas encontrado 'import'" [duplicado]

    • 1 respostas
  • Marko Smith

    Qual é o propósito de `enum class` com um tipo subjacente especificado, mas sem enumeradores?

    • 1 respostas
  • Marko Smith

    Como faço para corrigir um erro MODULE_NOT_FOUND para um módulo que não importei manualmente?

    • 6 respostas
  • Marko Smith

    `(expression, lvalue) = rvalue` é uma atribuição válida em C ou C++? Por que alguns compiladores aceitam/rejeitam isso?

    • 3 respostas
  • Marko Smith

    Um programa vazio que não faz nada em C++ precisa de um heap de 204 KB, mas não em C

    • 1 respostas
  • Marko Smith

    PowerBI atualmente quebrado com BigQuery: problema de driver Simba com atualização do Windows

    • 2 respostas
  • Marko Smith

    AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos

    • 1 respostas
  • Martin Hope
    Fantastic Mr Fox Somente o tipo copiável não é aceito na implementação std::vector do MSVC 2025-04-23 06:40:49 +0800 CST
  • Martin Hope
    Howard Hinnant Encontre o próximo dia da semana usando o cronógrafo 2025-04-21 08:30:25 +0800 CST
  • Martin Hope
    Fedor O inicializador de membro do construtor pode incluir a inicialização de outro membro? 2025-04-15 01:01:44 +0800 CST
  • Martin Hope
    Petr Filipský Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não? 2025-03-23 21:39:40 +0800 CST
  • Martin Hope
    Catskul O C++20 mudou para permitir a conversão de `type(&)[N]` de matriz de limites conhecidos para `type(&)[]` de matriz de limites desconhecidos? 2025-03-04 06:57:53 +0800 CST
  • Martin Hope
    Stefan Pochmann Como/por que {2,3,10} e {x,3,10} com x=2 são ordenados de forma diferente? 2025-01-13 23:24:07 +0800 CST
  • Martin Hope
    Chad Feller O ponto e vírgula agora é opcional em condicionais bash com [[ .. ]] na versão 5.2? 2024-10-21 05:50:33 +0800 CST
  • Martin Hope
    Wrench Por que um traço duplo (--) faz com que esta cláusula MariaDB seja avaliada como verdadeira? 2024-05-05 13:37:20 +0800 CST
  • Martin Hope
    Waket Zheng Por que `dict(id=1, **{'id': 2})` às vezes gera `KeyError: 'id'` em vez de um TypeError? 2024-05-04 14:19:19 +0800 CST
  • Martin Hope
    user924 AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos 2024-03-20 03:12:31 +0800 CST

Hot tag

python javascript c++ c# java typescript sql reactjs html

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve