【乐企文件生成工程】关于乐企文件生成工程的详细介绍

发票文件生成方式有两种思路:

1、根据已有的OFD模板,动态替换ofd模板内容;之后将ofd转pdf(局限:单行问题不大)
可在【乐企】专栏查看详细代码详情可以在此处了解【乐企】有关乐企能力测试接口对接-基础版(详细)

2、根据html模板动态占位:该工程就是这种方式 ,目前效果良好,可看下图。
源码获取方式:私信(有偿获取,谢谢,这个也是我周末疯狂加班整理)
拿去即用的源码!无任何保留,当然也并不是所有票种都支持(时间有限、精力有限、已经连着转了,要冒烟了…)
自己拿到源码之后可以自行适配其余模板类型,目前已经支持类型如下:

  • 数电专单行、多行;
  • 数电普单行、多行;
  • 成品油类型发票-专/普 单、多
  • 稀土类型发票-专/普 单、多
  • 货物运输-专-单行、多行;
  • 货物运输-普-单行、多行;
  • 旅客运输-专-单行、多行;
  • 旅客运输-普-单行、多行;
  • 不动产租赁-专
  • 不动产租赁-普

实现效果

增值税专用发票--单行

增值税普通发票--单行
增值税普通发票--单行

增值税专用发票--多行
在这里插入图片描述

增值税普通发票--多行
在这里插入图片描述
增值税专/普/多行 稀土
在这里插入图片描述
增值税专/普/多行 成品油
在这里插入图片描述
货物运输-(专普票都支持)单行
在这里插入图片描述

货物运输(专普票都支持)-多行
在这里插入图片描述
不动产租赁
在这里插入图片描述

旅客运输
在这里插入图片描述

项目结构说明

lq-Invoice-project
├── common-oss#文件工程
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ └── com.lq.file
│ │ │ │ ├── core #文件核心包:配置文件读取、操作模板方法定义
│ │ │ │ ├── local # 本地文件存储方式实现
│ │ │ │ ├── oss # OSS文件存储方式实现(支持aws)
│ │ │ │ └── utils
│ │ │ │ └── FileAutoConfiguration.java
│ │ │ └── resources
│ ├── pom.xml
└── lq-invoice#乐企工程
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com.lq.invoice
│ │ │ ├── controller
│ │ │ ├── domain
│ │ │ ├── enums
│ │ │ ├── exception
│ │ │ ├── factory
│ │ │ ├── service
│ │ │ └── util
│ └── resources
└── pom.xml

common-oss模块

application.yml

# 本地文件系统
file:local:enable: truebasePath: /Users/yanjun.hou/Downloads/files# 云存储文件系统oss:enable: falseendpoint: "" #对象存储服务的URLcustomDomain: "" #自定义域名appId: "" #应用IDregion: "" #区域accessKey: ""secretKey: ""

根据注解ConditionalOnProperty动态选择文件上传实现方式,默认本地
在这里插入图片描述
在这里插入图片描述

项目支持:
1、沙箱环境/正式环境测试
2、文件生成
其中:file文件夹下的数据是关于文件生成的实现
impl文件夹下的数据是关于乐企业务接口的具体实现。
在这里插入图片描述

业务实现大致如下:
在这里插入图片描述
文件实现大致如下:

在这里插入图片描述

由于项目比较繁忙,只有周末抽时间写一写,具体实现思路都是一样

Tips:旅客运输类发票,关于身份证号码需要做敏感信息加密处理,目前这部分代码未做处理!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56049.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web,RESTful API 在微服务中的作用是什么?

大家好,我是锋哥。今天分享关于【Web,RESTful API 在微服务中的作用是什么?】面试题?希望对大家有帮助; Web,RESTful API 在微服务中的作用是什么? 在微服务架构中,Web 和 RESTful …

Python语法结构(三)(Python Syntax Structure III)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

Python编程基础入门:从风格到数据类型再到表达式

前期已经详细介绍了环境搭建:PycharmPython、VsCodePython Python编程基础入门:从风格到数据类型再到表达式 在编写Python程序时,理解其基础结构和语法是每个初学者的必修课。这篇文章将带你深入了解Python的基本编程风格、数据类型、类型转…

【功能安全】相关项定义item definition

目录 01 item definition定义 02 相关项组成 03 相关项最佳实践 📖 推荐阅读 01 item definition定义 概念阶段的开发是以相关项定义(Item Definition)开始的,相关项定义是对系统的描述,此系统也是标准中安全要求应用的对象。 相关项定义目的: a) 在整车层面对相关…

【跑酷项目02】实现触发并在前方克隆金币

完整代码 using System.Collections; using System.Collections.Generic; using UnityEngine;public class CoinColoneManager : MonoBehaviour {// 这个脚本用来检测金币触发区,一旦触发就在前方指定位置克隆金币// 首先做触发检测 OnEnterTrigger(), // 用克隆函…

如何打包和分发 Python 应用程序

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 简介 所有使用包管理器(例如 pip)下载的 Python 库(即应用程序包)都是使用专门执行此任务…

rootless模式下istio ambient鉴权策略

环境说明 rootless模式下测试istio Ambient功能 四层鉴权策略 这里四层指的是网络通信模型的第四层,主要的传输协议为TCP和UDP。 用于限制服务间的通信,比如下面的策略应用于带有 app: productpage 标签的 Pod, 并且仅允许来自服务帐户 clus…

js动态生成二维码

html&#xff1a; <script type"text/javascript" src"js/qrcode.min.js"></script>&#xff08;资源里可下载&#xff09; <div class"tan_ma" style"width:100%; height:100%; position:fixed; left:0; top:0; backgrou…

云计算第四阶段: cloud二周目 07-08

cloud 07 一、k8s服务管理 创建服务 # 资源清单文件 [rootmaster ~]# kubectl create service clusterip websvc --tcp80:80 --dry-runclient -o yaml [rootmaster ~]# vim websvc.yaml --- kind: Service apiVersion: v1 metadata:name: websvc spec:type: ClusterIPselector…

速盾:免费cdn加速节点是什么?

免费CDN加速节点是指一种提供免费的内容分发网络&#xff08;CDN&#xff09;服务的网络节点。CDN是一种通过将网站的静态内容分布到全球各个节点上&#xff0c;从而加快网站访问速度的技术。免费CDN加速节点是免费提供这种服务的节点&#xff0c;在全球范围内分布着许多这样的…

ChatTTS在Windows电脑的本地部署与远程生成音频详细实战指南

文章目录 前言1. 下载运行ChatTTS模型2. 安装Cpolar工具3. 实现公网访问4. 配置ChatTTS固定公网地址 前言 本篇文章主要介绍如何快速地在Windows系统电脑中本地部署ChatTTS开源文本转语音项目&#xff0c;并且我们还可以结合Cpolar内网穿透工具创建公网地址&#xff0c;随时随…

面试头棒-Java如何判断两个对象是否相等

在Java中&#xff0c;判断两个对象是否相等通常涉及两个层面的比较&#xff1a;引用相等&#xff08;也称为身份相等&#xff09;和内容相等&#xff08;也称为值相等&#xff09;。 引用相等&#xff08;Identity Equality&#xff09;&#xff1a; 使用 运算符。如果两个引…

react里实现左右拉伸实战

封装组件&#xff1a; 我自己写的一个简单的组件&#xff0c;可能有bug。不想自己写&#xff0c;建议用第三方库实现。 新建一个resizeBox.tsx文件写上代码如下&#xff1a; import React, { ReactNode, useState, useEffect, useRef } from react; import styles from &quo…

【中危】Oracle TNS Listener SID 可以被猜测

一、漏洞详情 Oracle 打补丁后&#xff0c;复测出一处中危漏洞&#xff1a;Oracle TNS Listener SID 可以被猜测。 可以通过暴力猜测的方法探测出Oracle TNS Listener SID&#xff0c;探测出的SID可以用于进一步探测Oracle 数据库的口令。 建议解决办法&#xff1a; 1. 不应该使…

大数据治理的关键技术:构建稳固的数据基石

在这个信息爆炸的时代&#xff0c;数据已经成为企业最宝贵的资产之一。然而&#xff0c;随着数据量的爆炸性增长&#xff0c;如何有效治理这些数据成为了一个巨大的挑战。今天&#xff0c;我们就来聊聊大数据治理的关键技术&#xff0c;看看如何构建一个稳固的数据基石&#xf…

【某农业大学计算机网络实验报告】实验四 路由信息协议RIP

实验目的&#xff1a; 1&#xff0e;深入了解RIP协议的特点和配置方法&#xff1a;通过此次实验&#xff0c;掌握RIP协议作为一种动态路由协议的基本工作原理&#xff0c;了解其距离向量算法的核心概念&#xff0c;以及如何在网络设备上配置RIP协议&#xff1b; 2.验证RIP协议…

基于微信小程序的电影交流平台

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

【Next.js 项目实战系列】02-创建 Issue

原文链接 CSDN 的排版/样式可能有问题&#xff0c;去我的博客查看原文系列吧&#xff0c;觉得有用的话&#xff0c;给我的库点个star&#xff0c;关注一下吧 上一篇【Next.js 项目实战系列】01-创建项目 创建 Issue 配置 MySQL 与 Prisma​ 在数据库中可以找到相关内容&…

Java项目-基于Springboot的招生管理系统项目(源码+说明).zip

作者&#xff1a;计算机学长阿伟 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、ElementUI等&#xff0c;“文末源码”。 开发运行环境 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBoot、Vue、Mybaits Plus、ELementUI工具&#xff1a;IDEA/…

智联云采 SRM2.0 testService SQL注入漏洞复现

0x01 产品简介 智联云采是一款针对企业供应链管理难题及智能化转型升级需求而设计的解决方案,针对企业供应链管理难题,及智能化转型升级需求,智联云采依托人工智能、物联网、大数据、云等技术,通过软硬件系统化方案,帮助企业实现供应商关系管理和采购线上化、移动化、智能…