feat(api): 添加添加商品标志位功能
Some checks reported errors
continuous-integration/drone/push Build was killed
continuous-integration/drone Build is passing

为消耗流添加了一个新的功能,可以通过发送特定的消息来设置添加商品标志位。当接收到消息为 'add-product' 时,会设置添加商品标志位,并删除消耗商品标志位和连续消耗标志位。
This commit is contained in:
Ching 2024-10-07 18:46:48 +08:00
parent 36c34d4170
commit 168bbb9352

6
app.py
View File

@ -420,6 +420,7 @@ def consume_product_by_barcode(barcode):
def consume_stream():
consume_product_flag_key = 'consume-product-flag'
continuous_consume_flag_key = 'continuous-consume-flag'
add_product_flag_key = 'add-product-flag'
try:
# 读取 Stream 中的消息,设置阻塞时间为 0
messages = r.xreadgroup(CONSUMER_GROUP, CONSUMER_NAME, {STREAM_KEY: '>'}, count=10, block=1000)
@ -439,6 +440,11 @@ def consume_stream():
# 如果消息内容为 'continuous-consume',则设置连续消耗标志位
logger.info(f"Setting continuous-consume flag")
r.set(continuous_consume_flag_key, '1', ex=60 * 5)
elif msg['data'] == add_product_flag_key:
# 如果消息内容为 'add-product',则设置添加商品标志位
logger.info(f"Setting add-product flag")
r.delete(consume_product_flag_key)
r.delete(continuous_consume_flag_key)
else:
logger.info(f"Skip non-numeric barcode: {msg['data']}")
continue