From 168bbb9352d22a03dbed5f09d8c878915b4783ef Mon Sep 17 00:00:00 2001 From: Ching Date: Mon, 7 Oct 2024 18:46:48 +0800 Subject: [PATCH] =?UTF-8?q?feat(api):=20=E6=B7=BB=E5=8A=A0=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=95=86=E5=93=81=E6=A0=87=E5=BF=97=E4=BD=8D=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 为消耗流添加了一个新的功能,可以通过发送特定的消息来设置添加商品标志位。当接收到消息为 'add-product' 时,会设置添加商品标志位,并删除消耗商品标志位和连续消耗标志位。 --- app.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app.py b/app.py index 09f8f80..68d69e8 100644 --- a/app.py +++ b/app.py @@ -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