const { shopID } = query; const queryBuilder = this.repoStock.createQueryBuilder('stock') .select('stock.shopID', 'shopID') .leftJoin('stock.shop', 'shop') .addSelect('shop.name', 'shopName') .addSelect('SUM(stock.num)', 'num') .addSelect('SUM(stock.alertNum - stock.num - stock.readyOut)', 'alertNumDiff') .addSelect('SUM(stock.readyOut)', 'readyOut') .where('stock.shopID IS NOT NULL') .groupBy('stock.shopID'); if (shopID) { queryBuilder.andWhere('stock.shopID = :shopID', { shopID }); } const data = await queryBuilder.getRawMany() await Promise.all(data.map(async row => { row.status = !!(await this.repoGoodCarry.findOneBy({ shopID: row.shopID, status: EGoodCarryStatus.notShipped, type: ECarryType.admin, })) })) return data
时间: 2023-03-30 14:04:15 浏览: 84
这是一个关于查询库存的代码,其中包括了店铺ID、店铺名称、库存数量、预警数量差、已出库数量等信息。在查询时,如果有指定店铺ID,则会根据该ID进行筛选。最后,还会对查询结果进行处理,判断每个店铺是否存在未发货的订单。
相关问题
const eventChannel = this.getOpenerEventChannel()应该放在跳转前的页面吗
`const eventChannel = this.getOpenerEventChannel()` 是用于在跳转后的页面获取上一个页面的事件通道对象,因此应该放在跳转后的页面中。具体来说,可以在 `onLoad` 生命周期函数中获取事件通道对象,例如:
```js
onLoad: function(options) {
const eventChannel = this.getOpenerEventChannel()
// 接下来可以使用 eventChannel 进行事件通信
}
```
const id = +this.route.snapshot.paramMap.get('id');对象可能为 "null"。
是的,当路由参数中的"id"无法被解析成一个数字时,它会返回null。因此,为了避免出现类型错误,通常需要在进行类型转换之前检查该值是否为null。可以使用以下代码进行检查:
```
const idParam = this.route.snapshot.paramMap.get('id');
const id = idParam ? +idParam : 0; // 如果idParam不为null,则将其转换为数字,否则将其设置为0
```
这样,如果"id"为null,"id"变量将被设置为0,而不会抛出类型错误。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)