Python写一个电子发票管理工具2:前端界面开发

用一系列文章介绍如何用Python写一个发票管理小工具。

发票管理小工具要支持B/S和C/S两种部署模式,因为涉及到发票这种隐私数据,能够安装到自己电脑运行可能是大部分人更能接受的方式。

先看一下最终的页面效果。

Python写一个电子发票管理工具2:前端界面开发

发票夹页面

Python写一个电子发票管理工具2:前端界面开发

设置页面

Python写一个电子发票管理工具2:前端界面开发

添加抬头页面

技术选型

这个工具我不用通常的Python可视化编程如tkinter或Qt来开发PC客户端,给大家介绍一个不太一样的套路,采用前后端分离的模式来实现。

使用FastAPI做服务端,Vue做前端页面。

B/S模式将程序部署到服务器,用户使用浏览器访问即可;C/S模式用python自动打开浏览器页面的方式来运行,打包成exe下载安装。

需求梳理

首先简单地用思维导图将页面需求整理一下。主要分为两个功能模块:发票管理(取名发票夹)和设置。发票夹功能为发票的增删改查以及导入导出。设置目前包括抬头管理和自定义费用类型管理。

Python写一个电子发票管理工具2:前端界面开发

CDN模式使用ElementPlus

对Vue熟悉的朋友看下面的内容就相当简单了,用Vue3和ElementPlus开发网页。对于网页前端或Vue不太熟悉的朋友可以先看一下Vue的文档和ElementPlus的文档,Vue学习起来还是很简单的。

因为功能很简单这里我直接使用一个单页面来开发这个页面,这样用Vue就相当于Jquery一样。不需要nodejs,不需要脚手架,使用起来相当简单。但是这种用法仅限于类似的简单项目,稍微多几个页面还是需要模块化开发,便于代码复用、代码阅读和代码管理。

首先我们用ElmentPlus提供的CDN引入模式(注意:CDN不稳定网站就无法显示了)写一个有两个菜单的页面,通过点击菜单切换显示的内容。这里需要引入vue、element-plus的css和js()。

说明1:可以通过浏览器调试界面查看当前使用的vue和elementplus版本,在CDN链接中指定版本和实际css与js链接,这样可以避免版本升级后引入问题,并且省去几次302跳转加快加载时间。

说明2:C/S版本将css和js都下载到本地打包,不使用CDN。


Python写一个电子发票管理工具2:前端界面开发


我的发票夹

发票夹
设置

发票夹
设置

Python写一个电子发票管理工具2:前端界面开发

使用Icon图标

新版的ElementPlus提供了CDN模式的Icon,需要引入以下js,并且对图标组件进行全局注册。


const app = Vue.createApp(App);
app.use(ElementPlus);
//注册icon组件
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
app.component(key, component);
}

下面为发票夹和设置添加图标:

发票夹
设置

Python写一个电子发票管理工具2:前端界面开发

图标就出来了

注意1:直接复制ElementPlus示例代码到html中是不能正常显示的,因为这样单标签的写法是不可以的,因为这些标签都不是html原生的标签,必须写成这样的双标签。

注意2:使用两个或以上单词的组件,如,需要使用-隔开单词。

当然,不使用Icon组件,直接使用SVG也可以。例如上面的folder图标,将源码中的SVG直接拷贝出来使用就可以。



国际化

因为ElementPlus默认语言是英语,所以需要引入中文国际化组件才能显示中文。引入方法如下:


app.use(ElementPlus, {locale: ElementPlusLocaleZhCn,});

JS加载完再显示页面

这样的单html页面,在js加载完之前,会显示一些页面标签和文字,然后再展示正常页面。如下图:

Python写一个电子发票管理工具2:前端界面开发

可以先将body设置为不显示,然后onload后再显示。


......

页面代码

页面就是施展CV大法了,选择需要使用的组件,将ElementPlus页面上的示例代码拷贝粘贴,修改样式和JS代码,基础页面就写完了。接下来就是定义接口、设计数据库和编写前后端逻辑代码了~

我的发票夹




发票夹
设置

开票时间
导入时间

搜索
重置

批量导入

手动添加

删除

导出

Excel报表
合并PDF发票

设置费用类型

{{item}}

设置发票状态

已使用
未使用

名称: {{ scope.row.seller_name }}
税号: {{ scope.row.seller_tax_number }}

{{ scope.row.seller_name }}

<!-- -->

修改
删除

添加抬头

用于校验有效发票抬头

修改
删除

{{ tag }}

+ 添加费用类型

确定
取消

以上内容来源于网络,由“WiFi之家网”整理收藏!

原创文章,作者:电脑教程,如若转载,请注明出处:https://www.224m.com/218523.html

(0)
电脑教程电脑教程
宽带密码忘记查看路由器宽带密码的方法(附路由器密码查看器下载地址)
上一篇 2023年2月20日 08:14
表格导入功能(表格导入功能在哪里)
下一篇 2023年2月20日 08:22

相关推荐

  • 小爱同学怎么更换网络(图文)

    【导读】小爱同学怎么更换网络,下面就是WiFi之家网整理的网络知识百科,来看看吧!大家好,我是191路由器网小编,上述问题将由我为大家讲解。小爱同学更换网络也就是需要重新设置网络,如果是已经连接过wif

    2021年7月28日
    105.3K
  • win7旗舰版降级到win7家庭高级版的详细教程(图)

    原标题:"win7旗舰版降级到win7家庭高级版的详细教程"相关电脑问题教程分享。 - 来源:WiFi之家网。如何将win7旗舰版降级到win7家庭高级版?不少使用win7旗舰版系统的朋友,在习惯使用w

    2021年6月23日
    4.0K
  • 192.168.2.1登录入口-192.168.2.1路由器怎样修改密码.

    192.168.2.1登录入口本文目录192.168.2.1路由器怎样修改密码?光猫IP地址192.168.1.1改成192.168.2.1,进不了设置页面了怎么办?19216821路由器手机设置?手机怎么登陆路由器?手机怎么开通168?192.168.2.1路由器怎样修改密码?1、查看路由器背面的路由器管理网址,在电脑浏览器的网址栏输

    2023年8月7日
    14.5K
  • 荣耀3路由器咋样设置(荣耀路由器信道设置)

    荣耀3路由器咋样设置(荣耀路由器信道设置) 荣耀3路由器是一款功能强大的智能路由器,其信道设置可以让用户根据自己的网络环境进行优化,提升网络速度和稳定性。 如何进行荣耀路由器信道设…

    网络 2024年8月27日
    3.6K
  • 苹果192.168.0.1 登陆页面(华为wifi6路由器登录入口)

    本文目录1、苹果192.168.0.1登陆页面,华为wifi6路由器登录入口?2、giwifi登录入口?3、为什么我输入网址192168161进不去?4、192168311小米路由器登录入口?5、19216801手机怎么登陆路由器?苹果192.168.0.1登陆页面1、苹果192.168.0.1登陆页面,华为wifi6路由器登录入口?华为路由器的登录地址是192.168.3.1,电脑/手机连接到

    192.168.0.1 2023年3月24日
    1.6K
  • 华为HG520s路由器设置步骤图文

    原标题:"华为HG520s路由器介绍设置教程"相关路由器设置经验分享。 - 来源:WiFi之家网  宽带路由器在一个紧凑的箱子中集成了路由器、防火墙、带宽控制和管理等功能,具备快速"

    2021年2月10日
    11.4K
  • 如何搜隐藏的wifi信号 ?(如何搜索隐藏的wifi信号?)

    当你把自己家的wifi隐藏后,你自己的手机、电脑正常情况下也搜不到原来的wifi信号。这种情况下,自己想要连接原来的wifi上网应该怎么办呢? 很简单,只需要在手机、电脑上手动输入wifi名称、wifi密码,选择加密方式,就能连接已经隐藏的wifi信号了,

    2022年1月26日
    24.4K
  • 小米路由器3g双千兆智能无线路由器评测

    原标题:"小米路由器3G双千兆详细评测"的相关路由器设置教程资料分享。- 来源:WiFi之家网。
      路由器系统构成了基于TCP/IP 的国际互联网络Internet 的主体脉络,也可以说,路由器"

    小米(mi)路由器 2021年2月25日
    32.0K
  • Win7系统出现蓝屏错误代码BlueScreen修复方法

    原标题:"Win7系统出现蓝屏错误代码为BlueScreen的解决方法"相关电脑问题教程分享。 - 来源:WiFi之家网。Win7系统出现蓝屏错误代码为BlueScreen怎么办?近日有不少用户表示,

    2021年8月16日
    11.9K
  • 联普路由器无线桥接设置(两台路由器无线桥接)

    联普路由器无线桥接设置(两台路由器无线桥接) 在家庭网络中使用多个路由器的情况下,无线桥接可以使得不同的路由器共享网线连接和无线信号,从而扩大了覆盖范围和提高了网络稳定性。 步骤一…

    网络 2024年11月18日
    4.9K