一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种提高门店收银可用性的方法与流程

2022-10-07 03:21:27 来源:中国专利 TAG:


1.本发明属于线下门店商品交易管理领域,具体涉及一种提高门店收银可用性的方法。


背景技术:

2.随着互联网的普及,以及商家线上业务与线下业务打通场景的出现,门店收银系统越来越多地采用saas(软件即服务)软件,通过云端软件服务,将数据存储在云端,并与线上打通商品、库存、交易、财务等信息,作为线下业务,门店在运营过程中,通过会员成长体系,积分累计、节假日促销等活动,增加用户粘性,收银员通过扫码枪扫描顾客的微信/支付宝/三方支付码快速收银,大大提高了门店运营的效率和效果。但是saas软件的弊端在于所有的操作都依赖于网络和云端软件服务,网络故障以及云端服务器故障时将无法正常收银,门店的运作将受到极大的影响,造成门店的直接损失。
3.中国cn111639929a公开了一种离线收银系统,包括执行模块,根据预设优先级执行事件;计算模块:根据商品条目以及所涉及商品活动计算价格;所述执行模块的执行规则如下:预设事件优先级;建立自动录入储存事件的事件池;按照优先级的排序依次执行事件池中所有的事件。该发明在于提供一种功能合理齐全,可广泛应用的离线收银系统。但该系统缺少离线收银后对商品库存信息、会员积分的校验更新,对于门店运作造成一定影响。


技术实现要素:

4.本发明为了解决上述现有技术和传统收银系统中的不足,提供了一种提高门店收银可用性的方法,能够在收银系统离线时仍能正常收银,不影响门店正常运作,并且不影响商品库存的最终扣减、会员积分数据准确性。
5.本发明提供了如下方案:
6.一种提高门店收银可用性的方法,基于由收银客户端和云端服务器组成的收银系统实现,包括以下步骤:
7.s1:商家登录在线收银系统,进行离线收银初始化设置,上述设置储存至收银客户端数据库中,供离线模式时使用;
8.s2:管理员登录在线收银系统,审核上述离线收银初始化设置,审核无误后点击启用离线收银功能;
9.s3:离线状态或云端服务器故障时,收银员通过收银客户端的离线模式进入离线收银模式;
10.s4:进入离线收银模式后,收银员收银时,收银客户端生成离线交易单据;
11.s5:网络或云端服务器恢复后,收银客户端退出离线模式,重新登录在线收银系统,则转为在线收银模式,收银客户端将存储在本地的离线交易单据上传至云端服务器;
12.s6:云端服务器储存并处理上述离线交易单据;
13.优选地,其中步骤s1中离线收银初始化设置包含下列步骤:
14.s11:设置离线收银所需信息,包括应急密码和收款码图片;
15.s12:定时异步从云端服务器中下载店铺商品库,并储存至收银客户端数据库。
16.所述应急密码通过md5加盐值的方式加密,盐值取设备码,保存应急密码时,同时保存该应急密码对应的当前登录的商家id、店铺id至收银客户端数据库;
17.所述收款码图片采用base64、gzip压缩,将得到结果通过aes128加密保存到当前安卓收银设备数据库中,aes种子为当前登录店铺id加设备码。
18.所述定时异步从云端服务器中下载店铺商品库具体指将云端商品库下载到本地商品库中,包括商品id、商品条码、商品名称、价格,采用全量加增量同步的方式,即第一次下载时为全量同步,下载完成后在收银客户端数据库中记录最后下载时间点(last_download_time),之后为定时增量同步,下载时将上一次下载成功的时间点作为参数传到云端服务器,云端服务器在查询更新过的商品数据时带上last_download_time条件(大于last_download_time),将这段时间内更新过的商品数据返回并更新至收银客户端的本地商品数据库中。
19.优选地,其中步骤s3中离线收银包含下列步骤:
20.s31:收银员在收银客户端中输入应急密码,收银客户端转为离线收银模式;
21.s32:收银员通过扫码枪扫描商品条码,收银客户端通过上述商品条码在本地数据库中匹配本地商品,若匹配成功则显示商品名称及价格,若未匹配成功则显示条码,此时价格由收银员手动输入;
22.s33:收银客户端计算整单价格,收银员进行调整、确认,若顾客为会员则输入会员手机号,选择支付方式后点击结算,收银客户端在客显中显示预设的收款码图片,顾客通过相应支付软件扫码支付。
23.优选地,其中步骤s4中生成离线交易单据包含下列步骤:顾客完成支付后出示支付账单条码,收银员通过扫码枪扫描条码获得支付流水号,点击确认完成交易单据,收银客户端将离线交易单据信息作为离线交易单据保存至安卓本地数据库中;所述离线交易单据信息包括商品id、商品条码、价格、数量、整单价格、实付价、会员手机号、商家id、店铺id、交易时间、支付方式、支付流水号。
24.优选地,其中步骤s5中所述离线交易单据由收银客户端通过后台线程异步调用云端服务器的https接口传输离线交易单据。
25.优选地,其中步骤s6中云端服务器处理离线交易单据具体包括以下步骤:
26.s61:成功接收离线交易单据后,云端服务器校验商家id和店铺id是否存在于数据库;校验成功后在数据库中匹配离线交易单据中的商品信息,匹配成功后扣除相应商品库存;
27.s62:校验支付流水号,通过支付类型,将支付流水号传递到对应支付机构的支付查询接口,支付机构会对支付进行校验确认,确认是否支付成功,如未支付成功,则在云端的在线交易单据上打上异常标记,待收银员核实确认;
28.s63:校验价格、数量信息;
29.s64:校验会员手机号,根据离线交易单据中的会员手机号信息,在云端服务器数据库中匹配会员,如匹配到会员,则给该会员增加相应积分;
30.s65:根据上述校验信息,将离线交易单据转换成在线交易单据,并存储至云端服
务器数据库;
31.本发明的有益效果如下:
32.(1)本发明补齐了极端情况下saas软件在线收银的短板,在软件服务出现故障,包括系统登录功能出现故障或者门店所在地的网络出现故障时,收银系统仍然能运作,不影响顾客买单,可以极大提升系统的可用性和可靠性;
33.(2)本发明提供的收银方法,在网络或云端服务器故障时不影响顾客买单,不影响商品库存的最终扣减(线下业务,不会导致超卖)、会员积分等最终数据的准确性,最大化地保障商家的店铺运营。
34.(3)收银客户端定时异步从云端下载商品至本地数据库,并附带每次下载时间点,减小了下载的数据量,以减少收银客户端本地资源的占用。
附图说明
35.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1是本发明设置本地应急密码的流程示意图;
37.图2是本发明设置收款码的流程示意图;
38.图3是本发明管理员启用离线功能的流程示意图;
39.图4是本发明登录及进入离线模式的界面示意图。
具体实施方式
40.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本技术保护的范围。
41.实施例1
42.本实施例涉及一种提高门店收银可用性的方法,基于收银一体机上安装的安卓收银系统实现,所述收银系统包括客户端和云端服务器,客户端和云端服务器的通讯方式是通过https接口进行通讯,数据格式按照json格式进行传输。这里说的客户端即为收银客户端,即为收银一体机上安装的安卓端app。其中收银客户端包括:
[0043][0044][0045]
注:上表中的用途一栏中是大致的模块功能和流程,详见本发明后面的步骤。
[0046]
云端服务器包括由云端登录模块、云端收银模块、云端交易单模块、云端商品模块、云端会员模块构成。
[0047]
基于该收银系统提高门店收银可行性的方法包括以下步骤:
[0048]
s1:商家通过收银一体机上的收银客户端登录在线收银系统,进行离线收银初始化设置,上述设置储存至收银客户端数据库中,供离线模式时使用,有多台收银一体机设备时,需要分别设置;
[0049]
s11:登录成功后设置离线收银所需信息,包括应急密码和收款码图片;
[0050]
如图1所示为进行离线收银初始化设置的流程图,商家登录收银系统后,根据收银系统引导设置应急密码,上传店铺对应的收款码图片。
[0051]
所述收银客户端采用一种安卓收银设备,即收银一体机,一种带有客显的双屏安卓小型机器,用于收银员操作收银的机器。
[0052]
所述应急密码和收款码图片以及对应的商家id和店铺id将保存至收银客户端数据库中,数据储存信息如表1所示,同一商家可能存在多家店铺,为避免数据错乱,保存应急
密码和收款码的同时,会保存对应商家id与店铺id,当收银员用不同的应急密码登录时,会对应不同的收款码、商家id与店铺id。
[0053]
所述应急密码通过md5加盐值的方式加密,所述盐值取设备码(一串32位的字符串,每台安卓设备对应设备码不一样)。
[0054]
如图2所示,所述收款码图片控制在50kb以内,并采用base64加gzip压缩,将得到结果通过aes128加密保存至当前收银客户端数据库中,aes种子为当前登录店铺id加上述设备码。
[0055]
表1离线收银初始化设置中的数据储存信息
[0056][0057][0058]
s12:收银客户端定时异步从云端服务器中下载店铺商品库,并储存至数据库。
[0059]
所述店铺商品库储存信息如表2所示,所述定时异步从云端服务器中下载店铺商品库具体指将云端商品库下载到本地商品库中,包括商品id、商品条码、商品名称、价格,采用全量加增量同步的方式,即第一次下载时为全量同步,下载完成后在收银客户端数据库中记录最后下载时间点(last_download_time),之后为定时增量同步,下载时将上一次下载成功的时间点作为参数传到云端服务器,云端服务器在查询更新过的商品数据时带上last_download_time条件(大于last_download_time),将这段时间内更新过的商品数据返回并更新至收银客户端的本地商品数据库中,从而减小了下载的数据量,以减少收银客户端资源的占用。
[0060]
所述云端服务器在更新商品任何信息时,同时更新最后更新时间(last_update_time)的字段值,以便收银客户端在增量同步商品时,匹配到上一次下载时间到现在这段时间内所有更新过的商品信息。
[0061]
表2店铺商品库数据储存信息
[0062][0063]
s2:如图3所示,管理员通过收银一体机上的收银客户端登录在线收银系统,审核步骤s11中设置的离线收银初始化设置,审核无误后点击启用离线收银功能,有多台收银客户端时,需要分别登录审核;
[0064]
s3:离线状态或云端服务器故障时,收银员通过收银客户端离线模式进行收银,离线模式登录界面如图4所示。
[0065]
s31:收银员在收银客户端中输入应急密码,收银客户端转为离线收银模式。
[0066]
s32:收银员通过扫码枪扫描商品条码,收银客户端通过上述商品条码在本地安卓数据库中匹配本地离线商品,若匹配成功则显示商品名称及价格,同时商品id和规格id记录在当前离线交易单信息中,若未匹配成功则显示条码(记录在当前离线交易单信息中),此时价格由收银员手动输入。
[0067]
s33:收银客户端计算整单价格,收银员进行调整、确认,若顾客为会员则输入会员手机号,选择支付方式后点击结算,收银客户端在客显中显示预设的收款码图片,顾客通过自己手机上相应的支付软件扫码支付。
[0068]
s4:进入离线收银模式后,收银员收银时,收银客户端生成离线交易单据;
[0069]
所述生成离线交易单据包含下列步骤:顾客完成支付后出示支付账单条码,收银员通过扫码枪扫描条码获得支付流水号,点击确认完成交易单据,收银客户端将离线交易单据信息作为离线交易单据保存至数据库;所述离线交易单据信息包括商品id、商品条码、价格、数量、整单价格、实付价、会员手机号、商家id、店铺id、交易时间、支付方式、支付流水号、设备类型、设备版本,离线交易单据主体存储信息如表3所示。
[0070]
表3离线交易单据主体存储信息
[0071][0072][0073]
其中离线交易单据编号唯一,收银客户端通过设备码加当前设备时间戳加当前设备的顺序号,来保证单据编号唯一,因每台设备出厂时设备码唯一,加上时间戳以及顺序号(每天每设备从1开始计数,隔天清零),从而保证即使一家门店有多台收银一体机设备,交易单编号也会保证唯一;交易单总价price等于payment实付 优惠discount;支付类型可选为云闪付、支付宝、微信、现金等支付通道和方式;设备类型和设备版本是当前生成交易单的客户端设备信息,用于排查跟踪问题时的一种补充信息,可空;离线交易单据明细储存信息如表4所示。
[0074]
表4离线交易单据明细存储信息
[0075][0076]
其中,交易单据总价price等于各个明细的商品数量乘以明细单价的总和。
[0077]
s5:网络或云端服务器恢复后,收银客户端退出离线模式,重新登录在线收银系统,则转为在线收银模式,收银客户端会异步将存储在本地的离线交易单据逐渐上传至云端服务器;
[0078]
所述离线交易单据由收银客户端通过后台线程异步调用云端服务器的https接口传输离线交易单据。
[0079]
s6:云端服务器储存并处理上述离线交易单据;
[0080]
s61:成功接收离线交易单据后,校验商家id和店铺id是否存在于云端服务器的数据库中,如无,则报错,代表数据非法;校验成功后在数据库中匹配离线交易单据中的商品信息,如找不到,则该商品明细变为无码商品(该字段设置为空),如找到关联系统商品,匹配成功后扣除相应商品库存;
[0081]
所述的匹配逻辑为:
[0082]
如离线交易单明细中商品id、规格id和商品条码都为空,则该交易明细中的该商品记为无码商品;
[0083]
如离线交易单明细中商品id和规格id不为空,商品条码为空,则根据商品id和规格id校验云端服务器数据库中是否有该商品,如无,则该交易明细中的该商品记为无码商品,如有,则该明细的商品为当前商品的商品id和规格id;
[0084]
如离线交易单明细中商品id和规格id为空,商品条码不为空,则根据商品条码校验云端服务器数据库中是否有该商品,如无,则该交易明细中的该商品记为无码商品,如有,则将匹配到的商品的商品id和规格id记录到交易单明细中;
[0085]
s62:校验支付流水号,如果离线交易单据中的支付流水号不为空,则根据离线交易单据中的支付类型(pay_type),传递支付流水号调用对应支付机构的查询接口,校验支付状态是否为成功,如成功,标记该离线交易单据为完成,如未完成,标记为异常状态,在系
统消息中提示收银员核实处理;
[0086]
s63:校验价格、数量信息,如异常,标记异常状态,在系统消息中提示收银员人工处理;
[0087]
s64:校验会员手机号,云端数据库中如匹配到会员,根据商家在云端设置的积分规则,对该会员增加相应的积分增加相应积分;
[0088]
s65:根据上述校验信息,将离线交易单据转换成在线交易单据(填充商品、会员等信息),并存储至云端服务器数据库;
[0089]
离线收银(模式):
[0090]
指发生网络故障等问题后,进入的一种收银模式,即本发明要阐述的一种技术。
[0091]
离线交易单据:
[0092]
在离线收银模式下发生的交易单据称之为离线交易单据。
[0093]
离线商品:
[0094]
云端服务器商品同步到本地收银客户端后,称之为离线商品。
[0095]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,熟悉该本领域的技术人员应该明白本发明包括但不限于上面具体实施方式中描述的内容。任何不偏离本发明的功能和结构原理的修改都将包括在权利要求书的范围中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献