const stock = await this.repoStock.find({ where: { goods: { sort: EType.noCode }, }, select: ['id', 'shopID', 'goodsID'] }) let where: {} for (let tmp of stock) { where = { order: { shopID: tmp.id }, goodsID: tmp.goodsID, } //查询订单制作数量 const makeNum = sumBy(await this.repoOrderDetail.find({ where }), 'makeNum') //查询门店签收 const goodCarryInfo = await this.repoGoodCarryInfo.find({ where: { goodsID: tmp.goodsID, stockID: tmp.id } }) let amount = sumBy(goodCarryInfo, 'signForCount') //计算报损数量 let breakageNum = amount - makeNum - tmp.num - tmp.readyOut this.repoBreakage.save({ goodsID: tmp.goodsID, cause: ECause.cause, shopID: tmp.shopID, num: breakageNum }) //计算门店库存 let stockNum = amount - makeNum - tmp.readyOut - breakageNum this.repoStock.update({ id: tmp.id }, { num: stockNum }) } return stock
时间: 2023-03-30 12:00:55 浏览: 102
webadb.js:基于WebUSB的ADB主机实现
这是一段 TypeScript 代码,用于查询商品库存并更新库存信息。它首先查询所有未编码的商品库存,然后对每个库存进行以下操作:查询订单制作数量,查询门店签收数量,计算报损数量并保存报损记录,计算门店库存并更新库存信息。最后返回所有库存信息。
阅读全文