通过按角度分组Firestore中的字段值进行计数

问题描述

我试图从firestore数据库中按角度分组相似值的计数,但对我没有用。在这里初始化了空余额和余额数组。 请帮我解决此问题。

这是我的工作代码:


this.db.collection('asset_master',ref => ref.orderBy('part_name')).valueChanges().subscribe(res => res.map(
  data => {// checking the value with arrary value
      if ( this.balances.some(check => check.part_name === data['part_name']) && this.balances.some(check => check.model_name === data['model_name']) && this.balances.some(check => check.manufacturer === data['manufacturer'])) { 
      // getting index value of matched value.
      let index = this.balances.findIndex(d => d.part_name === data['part_name']);
      console.log('in if condition index array value',this.balances[index].part_name);
      this.balances[index].count += 1;
    } else {
      console.log('in else condition value is',data['part_name']);
      this.balance = {'asset_type': data['asset_type'],'part_name': data['part_name'],'model_name': data['model_name'],'manufacturer':data['manufacturer'],'count': 1}
      this.balances.push(this.balance);
    }
  }
)
);

Firestore数据库结构为:

Collection:        Document:                  Collection:
assset_master      fhjhgjhggh65yt765ty7      asset_type: IT
                                             part_name: SMPS
                                             asset_type: IT
                                             part_name: HARDISK
                                             asset_type: IT
                                             part_name: SMPS

必需的输出应为:

     SMPS       2
     HARDISK    4

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...