基于Web的电子发票管理系统设计与实现

2023-05-30 10:48钟姿伊李小兰李玉婷
电脑知识与技术 2023年2期
关键词:图像增强财务管理

钟姿伊 李小兰 李玉婷

关键词:发票管理系统;图像增强;区块链电子发票;财务管理

中图分类号:TP311 文献标识码:A

文章编号:1009-3044(2023)02-0039-03

1 概述

随着计算机信息技术飞速发展,各行业都在尝试运用更为先进的技术解决烦琐的业务问题。但部分企业还是选择人工管理发票数据,但该种管理方式存在以下问题[1]:1)录入发票系统信息时不仅消耗大量人力物力且错误率较高;2)纸质发票作为原始凭证却容易受潮导致字迹模糊或缺损,不易保存;3)随着电子发票逐渐增多,查验真伪过程复杂,保存方式更加复杂不便。因此,在这飞速发展的经济时代,传统人工管理发票的方式已经不能满足实际增长的业务需求。这时,能够识别电子发票和纸质发票的发票管理系统应运而生,成了各企业不可或缺的财务管理工具[2]。

该文设计开发的基于Web的电子发票管理系统,相较于传统的纸质发票管理,该系统省去了烦琐的人力保管查询过程,实现无纸化办公,对发票实现了数字化管理,达到了节能减耗的效果。同时,该系统具有在线查验发票真伪功能,用户可通过输入发票代码、发票号码、校验码等票面信息,即可查验该发票的相关信息,有效帮助财务人员查验发票真伪。面对各企业发票类型的差异性,该系统具有较强的通用性,能够满足多数企业对发票业务处理需求。

2 电子发票系统的设计

1)设计思路

电子发票管理系统是对市面上主流的电子發票进行报销、核验、存档的一套管理系统,主要使用人员包括普通员工、财务人员、档案管理人员以及系统管理员。对于不同角色,权限和功能都有不同的划分:普通员工主要是上传发票用于报销;财务人员主要是在员工报销时核验电子发票真伪和信息,并在一段时间内对发票进行归档;档案管理人员则主要是查收电子发票的档案信息;系统管理员除了管理系统用户之外,还需要配置手动上传发票的功能,主要针对特殊情况无法正常上传的发票使用;此外,所有用户均可管理自己的账户,对自己上传的发票在一定期限内有删除权限。系统的整体逻辑设计如图1所示。

2)系统框架

电子发票管理系统整体架构[3]是基于Struts2的框架进行设计和开发的,Struts2框架是一个按照MVC设计模式设计的WEB 层框架,采用拦截器的机制来处理用户的请求,如图2所示。根据框架,可将系统划分为表示层、逻辑层和数据访问层。表示层即用户所见界面,提供数据输入输出接口,为逻辑层传输用户请求,并返回处理结果;逻辑层则是接受表示层请求,调用系统函数和方法分析请求,传输数据,并反馈处理结果;数据访问层执行请求与数据之间的交互,其核心就是链接数据库,对数据库进行增删查改等操作。

3 系统开发

3.1 主要技术

1)图像增强技术

电子发票管理系统上传电子发票的目的是将发票通过表示层提供的接口,读取到发票中的关键信息,比如开票日期、发票号码、发票代码、开票金额等信息,并将发票文件作为附件上传到系统中,其中的关键技术就是二维码解析。大部分电子发票都会附带一个二维码,通常二维码中携带了这些关键信息,基于谷歌的Zxing工具可以实现二维码的扫描解析,只需要在项目中嵌入相关的包和文件,做好配置就能使用。但是在使用过程中,该工具经常报出“com.google.zxing.NotFoundExceptionm”的异常错误,分析后发现,是由于工具不能正确识别二维码,对此,本系统加入图像增强技术[4]。

首先将上传的电子发票文件转换为图片,如图3所示,并将彩色图片转换为灰度图,然后统计每个灰度值在图像中的占比,以小于当前灰度值的所有灰度值在总像素中所占的比例作为增益系数,对所有像素点进行调节,从而使得图像对比度增强,解决了二维码无法识别的问题,处理效果如图4所示。

2)区块链电子发票解析

区块链电子发票,是区块链技术、大数据和税务治理的结合体,区块链电子发票具有可溯源、易核验、成本低等优势,解决了以往报销过程中的一些难题。在国家税务总局的推动下,区块链电子发票或将成为未来市场的主流,而区块链电子发票的解析不同于传统A类或B类发票。

传统发票二维码解析后可以直接获取到发票信息,而区块链电子发票二维码扫描后返回的是一个URL[5],需要先截取该URL中的域名,然后将该域名与文件名“/dzswj/bers_ep_web/query_bill_detail”进行组合,得到一个新的路径,通过访问该路径,获取到发票的相关信息,然后对信息进行一些处理,比如返回的金额需要乘以0.01才是实际金额,返回的开票时间是一个时间戳,需要解析时间戳才能得到“YYYY-MMDD”格式的时间。

3.2 系统功能

发票系统主要功能根据面向的人群可分为四大模块:一般用户模块、财务人员模块、档案管理员模块以及系统管理员模块[6-8]。每个模块根据用户角色开发了相应功能,系统功能结构如图5所示,发票管理系统菜单页面如图6所示。

1)一般用户功能模块

由于个人用户使用发票系统主要完成的就是发票的上传,所以对于该模块是实现发票的报销上传、上传记录的查看以及密码的修改这三个主要功能。

该系统支持的发票格式有PNG/JPG/PDF三种主流的发票文件格式,用户选中发票文件上传之后,后台通过解析发票的二维码来读取发票中的发票号码、发票金额、开票日期、校验码等关键信息,并将识别到的信息自动填入页面中的发票信息表格中,用户无须自己手动输入以上发票信息,只需核对系统识别的发票信息是否正确。由于发票号码是所有发票的唯一标识,所有用户每次上传发票时,系统都会比对数据库,若存在相同发票号码的记录,则提醒用户该发票已核验报销,从而有效规避了重复报销的情况。

2)财务人员功能模块

针对财务人员模块,系统主要提供了三大功能:发票验证、报销查询、发票存档。其中发票验证提供了扫码验证、输入验证、官方验证这三种可供选择的发票验证方式,以方便财务人员验证用户所上传的发票的真伪。其中,官方验证是通过提供国家税务总局全国增值税发票查验平台接口进行验证。

报销查询是针对一般用户上传发票的查询功能,支持通过发票的基本信息如发票号码、发票代码、金额,以及报账的相关信息如申请报账人,发票上传日期,报销年份,记账凭证等查询该发票对应的信息。针对系统中的发票,系统会统计已查验发票数量、异常发票数量、发票总数量等基本信息,可以方便财务人员合理安排工作进度。财务人员在完成该发票的报销工作之后就可以对该发票进行归档处理。发票归档之后,档案管理员就可以查看该发票报销的相关信息,而财务人员将无法查看到已归档发票信息。另外,一个企业的财务部门也可能会对外开具发票,因此,该系统对于本企业开具的发票向财务人员提供了相关接口,可用于此类发票的存档查询。

3)档案管理人员功能模块

檔案管理员模块配置的功能就是对已经归档的发票信息以及该发票对应的财务报销信息进行查看、查询。在需要以纸质文件的形式保存已归档发票的报销相关信息时可以在档案管理员的档案详情页面导出全部或某些符合给定条件的发票及报销相关信息的发票档案Excel文件。另外,在需要查询某个已归档的发票的报销信息时可以根据发票号码、发票代码等发票信息查询报销信息;也可以根据报销凭证去查询对应的发票信息。

4)系统管理人员功能模块

系统管理员主要负责用户管理和发票手动上传,功能主要包括:新建账号、注销账号以及用户密码管理。在注册时可以设定用户的角色信息,系统会根据管理员设置的角色为用户赋予对应的权限,显示不同的用户界面。发票手动上传主要针对某些无法正常上传的发票开发的接口,由此保证系统在遇到特殊异常时能正常使用。

4 结束语

本文介绍了一种基于Web的电子发票管理系统,该系统综合运用了图像处理、区块链电子发票二维码解析、Web程序开发等技术,实现了安全、泛化、精确和可视化界面友好的电子发票管理系统。企业员工只需要登录系统,将需报销的发票上传到系统,系统自动进行识别并录入信息;财务人员可通过该系统对所有发票进行真伪查验、业务处理和数据归档,所有发票都可随时高效率地查询管理。该系统不仅能作为企业内部系统对财务数据保密,还能对发票数据进行永久存储,不仅提高了财务人员的工作效率,也积极响应了信息时代下“互联网+”的号召。

猜你喜欢
图像增强财务管理
一种基于轻量级深度网络的无参考光学遥感图像增强算法
图像增强技术在超跨声叶栅纹影试验中的应用
水下视觉SLAM图像增强研究
财务管理
虚拟内窥镜图像增强膝关节镜手术导航系统
强化医院财务管理是医改的重要环节
基于图像增强的无人机侦察图像去雾方法
自收自支事业单位财务管理探讨
论新形势下酒店财务管理
加强村级财务管理迫在眉睫