adjust query by appId

This commit is contained in:
Mariano 2024-03-27 10:27:14 -03:00
parent 015f8f16ad
commit 098b396e62
3 changed files with 12 additions and 8 deletions

View File

@ -144,16 +144,20 @@ func buildQueryOperationsByAppID(appID string, exclusive bool) bson.D {
return bson.D{{Key: "$match", Value: bson.M{}}}
}
var appIdsCondition interface{}
var matchingCondition bson.D
if exclusive {
appIdsCondition = bson.M{"$eq": []string{appID}}
matchingCondition = bson.D{
{Key: "$and", Value: bson.A{
bson.D{{Key: "rawStandardizedProperties.appIds", Value: bson.M{"$eq": []string{appID}}}},
bson.D{{Key: "rawStandardizedProperties.appIds", Value: bson.M{"$size": 1}}},
}},
}
} else {
appIdsCondition = bson.M{"$in": []string{appID}}
matchingCondition = bson.D{{Key: "rawStandardizedProperties.appIds", Value: bson.M{"$in": []string{appID}}}}
}
matchParsedVaa := bson.D{{Key: "$match", Value: bson.M{"rawStandardizedProperties.appIds": appIdsCondition}}}
return matchParsedVaa
return bson.D{{Key: "$match", Value: matchingCondition}}
}
// findOperationsIdByAddress returns all operations filtered by address.

View File

@ -291,7 +291,7 @@ func ExtractAppId(c *fiber.Ctx, l *zap.Logger) string {
return c.Query("appId")
}
func ExtractExclusiveAppId(c *fiber.Ctx, l *zap.Logger) (bool, error) {
func ExtractExclusiveAppId(c *fiber.Ctx) (bool, error) {
query := c.Query("exclusiveAppId")
if query == "" {
return false, nil

View File

@ -72,7 +72,7 @@ func (c *Controller) FindAll(ctx *fiber.Ctx) error {
}
appID := middleware.ExtractAppId(ctx, c.logger)
exclusiveAppId, err := middleware.ExtractExclusiveAppId(ctx, c.logger)
exclusiveAppId, err := middleware.ExtractExclusiveAppId(ctx)
if err != nil {
return err
}