一种基于互联网门店系统实现打印组合支付订单统计结果的方法与流程

专利2022-06-29  62

本发明基于互联网门店系统平台,特别涉及一种实现打印组合支付订单统计结果的方法。
背景技术
::在门店使用组合支付进行订单结账时,一个订单可以有多种结算方式,虽然解决了用户在门店购买商品时因现金不足或者其它金额不足时导致交易失败的问题,但对于门店收银员来说,在完成了一天销售或者在交接班时,都需要进行销售对帐,如果没有打印汇总的功能,对于组合支付这种复杂的支付方式让他们用手工进行汇总,就非常的艰难,容易计算错误,浪费时间。本发明就是针以上问题,开发自定浏览器,在浏览器中实现pos打印的功能,并提供给前端js页面调用的接口;然后将组合支付的具体金额进行汇总,使用bootstraptable插件进行展示;最后打印时将表格中的数据进行封装,传入到浏览器中的打印函数中进行解析与排版,实现小票汇总打印的功能。技术实现要素:本发明解决的技术问题在于提供一种基于互联网门店系统实现打印组合支付订单统计结果的方法;本发明解决了门店在最后完工或交接班时统计当天各类支付总额与次数时没有支付小票可参考核对的问题。本发明解决上述技术问题的技术方案是:将收银结账后的支付订单数据,通过ssm框架的数据层与实现层方法读取数据并组装,然后经控制层以json格式返回页面前端,使用bootstraptable获取解析,将组合支付订单的信息展示出来;打印时,获取当前表格中的数据及当前的日期,将表格中满足当前日期的支付金额与支付次数按支付类型进行统计,再调用自定义浏览器封装好的打印功能进行打印,最后通过pos打印机将其以小票的格式打印出来。所述的方法具体包括如下步骤:步骤一、将收银结账后的支付订单数据,通过ssm框架的数据层进行查询:(1)创建订单实体类salepayorder,用于映射数据;(2)创建salepayorderdao层接口,并在其中创建支付订单查询方法list<salepayorder>findsalepayorder(map<string,object>params),做为数据层与实现层的通信桥梁;(3)创建数据层的配置文件salepayorderdao.xml,配置实体类字段的节点,并实现支付订单查询方法findsalepayorder。步骤二、在实现层调用dao层接口方法;所述的具体步骤如下:(1)根据sessionutil.getlocaluser().getstoreid()方法获取门店编号;(2)从前端页面传来的数据中获取订单编号saleorderno;(3)将上述两个参数传入findsalepayorder方法中,实现对数据层的操作,将查询的结果映射成salepayorder类格式的数据;步骤三、经控制层以json格式返回页面前端;步骤四、使用bootstraptable获取解析,将组合支付订单的信息展示出来;步骤五、打印时,获取当前表格中的数据及当前的日期,将表格中满足当前日期的支付金额与支付次数按支付类型进行统计;步骤六、再调用自定义浏览器封装好的打印功能进行打印,所述的打印方法具体实现步骤如下:(1)使用c#语言创建打印函数openmypc,函数体内设计打印的字体、大小、排列及数据的来源等,并调用自定义的print方法;(2)创建自定义的print方法,在方法中创建printdocument对象pd,并设置pd的分页、边矩、名称、默认打印机,最后调用pd.print()方法;(3)将上述方法集成到自定义浏览器中,使用自定义浏览器打开门店系统;(4)在门店系统中的js中创建调用自定义浏览器的接口方法;(5)当客户点击打印按钮进行打印时,通过js中的接口方法启动浏览器中的打印方法,实现打印;步骤七、将收银机连接上pos打印机,打印时默认调用pos打印机,最终以小票的格式打印出来。本发明的有益效果:将组合支付的订单数据先通过列表进行展示,打印时,将数据按日期与支付类型进行汇总,传入到自定义的浏览器中的使用c#语言创建的打印方法中,然后连接pos打印机,实现了能够对组合支付汇总进行打印的目的。有效地解决了门店在最后完工或交接班时统计当天各类支付总额与次数时没有支付小票可参考核对的问题。附图说明下面结合附图对本发明进一步说明:图1为本发明的流程图。具体实施方式如图1所示,本发明采用如下步骤:步骤一、将收银结账后的支付订单数据,通过ssm框架的数据层进行查询:(1)创建订单实体类salepayorder,用于映射数据;(2)创建salepayorderdao层接口,并在其中创建支付订单查询方法list<salepayorder>findsalepayorder(map<string,object>params),做为数据层与实现层的通信桥梁;(3)创建数据层的配置文件salepayorderdao.xml,配置实体类字段的节点,并实现支付订单查询方法findsalepayorder。步骤二、在实现层调用dao层接口方法;所述的具体步骤如下:(1)根据sessionutil.getlocaluser().getstoreid()方法获取门店编号;(2)从前端页面传来的数据中获取订单编号saleorderno;(3)将上述两个参数传入findsalepayorder方法中,实现对数据层的操作,将查询的结果映射成salepayorder类格式的数据;步骤三、经控制层以json格式返回页面前端;步骤四、使用bootstraptable获取解析,将组合支付订单的信息展示出来;步骤五、打印时,获取当前表格中的数据及当前的日期,将表格中满足当前日期的支付金额与支付次数按支付类型进行统计;步骤六、再调用自定义浏览器封装好的打印功能进行打印,所述的打印方法具体实现步骤如下:(1)使用c#语言创建打印函数openmypc,函数体内设计打印的字体、大小、排列及数据的来源等,并调用自定义的print方法;如:publicvoidopenmypc(stringinfo){string[]proinfo=info.split('^');printmodelpmtitle=newprintmodel();pmtitle.fontfamily="宋体";pmtitle.fontsize=convert.toint32(12);pmtitle.text=newsystem.io.stringreader("\n" "" proinfo[1] "");//首行需要空行,某些打印机首行不为空时会出现“首行乱码问题printmodelpmcontext=newprintmodel();printmodel[]pms;//有结尾if(proinfo.length>1){printmodelpmendone=newprintmodel();pmendone.fontfamily="宋体";pmendone.fontsize=convert.toint32(8);pmendone.text=newsystem.io.stringreader(proinfo[2]);pms=newprintmodel[]{pmtitle,pmcontext,pmendone};}else{pms=newprintmodel[]{pmtitle,pmcontext};}ticketprinterhelper.print(pms);}(2)创建自定义的print方法,在方法中创建printdocument对象pd,并设置pd的分页、边矩、名称、默认打印机,最后调用pd.print()方法;如:publicstaticboolprint(printmodel[]pms){boolresult=true;try{printmodels=pms;printdocumentpd=newprintdocument();pd.printcontroller=newsystem.drawing.printing.standardprintcontroller();papersizepagesize=newpapersize("custom",getyc(193),600);pd.printersettings.printername=pd.defaultpagesettings.printersettings.printername;//默认打印机pd.printpage =newprintpageeventhandler(pd_printpage1);pd.print();}catch(exceptionex){result=false;}finally{if(sr!=null)sr.close();}returnresult;}(3)将上述方法集成到自定义浏览器中,使用自定义浏览器打开门店系统;(4)在门店系统中的js中创建调用自定义浏览器的接口方法;(5)当客户点击打印按钮进行打印时,通过js中的接口方法启动浏览器中的打印方法,实现打印;步骤七、将收银机连接上pos打印机,打印时默认调用pos打印机,最终以小票的格式打印出来。当前第1页1 2 3 当前第1页1 2 3 
技术特征:

1.一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:将收银结账后的支付订单数据,通过ssm框架的数据层与实现层方法读取数据并组装,然后经控制层以json格式返回页面前端,使用bootstraptable获取解析,将组合支付订单的信息展示出来;打印时,获取当前表格中的数据及当前的日期,将表格中满足当前日期的支付金额与支付次数按支付类型进行统计,再调用自定义浏览器封装好的打印功能进行打印,最后通过pos打印机将其以小票的格式打印出来。

2.根据权利要求1所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:将收银结账后的支付订单数据,通过ssm框架的数据层进行查询,其具体步骤如下:

第一步,创建订单实体类salepayorder,用于映射数据;

第二步,创建salepayorderdao层接口,并在其中创建支付订单查询方法list<salepayorder>findsalepayorder(map<string,object>params),做为数据层与实现层的通信桥梁;

第三步,创建数据层的配置文件salepayorderdao.xml,配置实体类字段的节点,并实现支付订单查询方法findsalepayorder。

3.根据权利要求1所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:在实现层调用dao层接口方法,具体步骤如下:

第一步,根据sessionutil.getlocaluser().getstoreid()方法获取门店编号;

第二步,从前端页面传来的数据中获取订单编号saleorderno;

第三步,将上述两个参数传入findsalepayorder方法中,实现对数据层的操作,将查询的结果映射成salepayorder类格式的数据。

4.根据权利要求1所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:经控制层以json格式返回页面前端。

5.根据权利要求4所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:使用bootstraptable获取解析,将组合支付订单的信息展示出来。

6.根据权利要求4所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:打印时,获取当前表格中的数据及当前的日期,将表格中满足当前日期的支付金额与支付次数按支付类型进行统计。

7.根据权利要求1所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:再调用自定义浏览器封装好的打印功能进行打印,所述的打印方法具体实现步骤如下:

第一步:使用c#语言创建打印函数openmypc,函数体内设计打印的字体、大小、排列及数据的来源等,并调用自定义的print方法;

第二步:创建自定义的print方法,在方法中创建printdocument对象pd,并设置pd的分页、边矩、名称、默认打印机,最后调用pd.print()方法;

第三步:将上述方法集成到自定义浏览器中,使用自定义浏览器打开门店系统;

第四步:在门店系统中的js中创建调用自定义浏览器的接口方法;

第五步:当客户点击打印按钮进行打印时,通过js中的接口方法启动浏览器中的打印方法,实现打印。

8.根据权利要求7所述的一种基于互联网门店系统实现打印组合支付订单统计结果的方法,其特征在于:将收银机连接上pos打印机,打印时默认调用pos打印机,最终以小票的格式打印出来。

技术总结
本发明基于互联网门店系统平台,特别涉及一种实现打印组合支付订单统计结果的方法。本发明将收银结账后的支付订单数据,通过SSM框架的数据层与实现层方法读取数据并组装,然后经控制层以json格式返回页面前端,使用bootstrapTable获取解析,将组合支付订单的信息展示出来;打印时,获取当前表格中的数据及当前的日期,将表格中满足当前日期的支付金额与支付次数按支付类型进行统计,再调用自定义浏览器封装好的打印功能进行打印,最后通过POS打印机将其以小票的格式打印出来。本发明实现了门店系统支付信息的日常统计的打印功能,解决了门店在最后完工或交接班时统计当天各类支付总额与次数时没有支付小票可参考核对的问题。

技术研发人员:陈林;张来卿;庞严冬
受保护的技术使用者:珠海横琴盛达兆业科技投资有限公司
技术研发日:2018.11.29
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-50956.html

最新回复(0)