OA系统中手写签批功能的实现
一、需求背景
OA系统审批中,有对word或者pdf文件源文档在指定的位置可以插入相应的文字,其实就是一个审批的功能,到了指定的人那边,他可以进行签批。这个功能一般来说,是针对于领导方面,对于一个事情或者流程同意了,需要在文档中签入自己的意见,比如说同意等。
二、实现方式
签批一般都是在h5页面上进行签批操作,那就需要将文档转换成h5格式,然后在其进行签批操作。
目前市面上发现有永中的转换文档服务,可以将word或者pdf文件转换成html格式,在html上进行签批保存,同时会像源文档保存签批后的内容,使源文档也有签批后的效果。
OA系统中嵌入永中的签批页面,等永中签批好之后,触发保存,会向父页面发送一个信息(通过postmessage技术实现不同页面之间的通信),以下是postmessage调用示例:
parent.html
<div>
<iframesrc="http://localhost:8081" id="iframe" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" ></iframe>
</div>
parent.js
window.addEventListener('message',function(e){console.log(e);//{data:'params'}});
child.js
window.parent.postMessage({ data:"params"},'*');
postMessage(data,origin) //两个参数
data //需要传递的参数
origin //发送消息窗口的源(协议+主机+端口号) [也可以设置'*']//指向当前的父窗口
信息的内容是当前保存是否成功,成功的话,有一个下载签批后文档的字段,OA方获取字段下载文档接口。
调用的方式如下图所示:

三、实现的效果
如下图所示,这个是签批后的一个样式展示,当前的模式正处于签批模式,可以在线体验手写签批。

四、结尾
这个只是永中转换服务的一部功能,还可以实现pdf加水印,office转html、图片(png、jpg、gif格式等)、pdf、ofd等等一系列的功能,大家如果有关于文档方面的转换功能,可以去使用一下永中转换服务:www.yozodcs.com。
OA系统中手写签批功能的实现的更多相关文章
- 支持pc和移动端的手写签批功能
由于之前的业务需要,要求在pc端(用鼠标写字).移动端(手写)实现会签功能,然后百度下载了个签字插件,经过一些修改和功能添加,实现了现有的功能插件,效果如图: 代码下载地址:https://githu ...
- 源码分析 | 手写mybait-spring核心功能(干货好文一次学会工厂bean、类代理、bean注册的使用)
作者:小傅哥 博客:https://bugstack.cn - 汇总系列原创专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言介绍 一个知识点的学习过程基本分为:运行helloworld ...
- 鸿雁电器oa系统中决策支持模块效果
公司简介鸿雁电器是国内著名的建筑电器产品的生产.经营企业,同时也是国家863计划CIMS(计算机集成制造系统)应用工程示范企业.浙江省高新技术企业.浙江省专利示范企业和杭州市信息化试点企业.企业系统泛 ...
- 在PeopleSoft系统中实现打印页面的功能
我们知道,在PeopleSoft HCM里,一般上了薪酬模块的话,都会客户化工资单页面,去匹配公司之前的工资单的报表的格式.有的时候,这个工资单页面又需要打印出来,以供员工的使用.PeopleSoft ...
- html 中手写阴影弹窗框封装
// 弹出提示框 function popup(pWidth,content) { $("#msg").remove(); var html ='<div id=" ...
- 利用神经网络算法的C#手写数字识别
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 下载Demo - 2.77 MB (原始地址):handwritten_character_recognition.zip 下载源码 - 70. ...
- 基于角色访问控制的OA系统的设计与实现
摘要:随着电子政务的快速发展和全面普及,办公自动化(OA)系统的安全性显得越来越重要.对基于Web 的B/S 结构的OA 系统结构和安全需求进行了分析,为了增强用户身份鉴别和授权控制的安全性,分析了基 ...
- 手写AOP实现过程
一.手写Aop前基础知识 1.aop是什么? 面向切面编程(AOP):是一种编程范式,提供从另一个角度来考虑程序结构从而完善面向对象编程(OOP). 在进行OOP开发时,都是基于对组件(比如类)进行开 ...
- 利用神经网络算法的C#手写数字识别(一)
利用神经网络算法的C#手写数字识别 转发来自云加社区,用于学习机器学习与神经网络 欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 下载Demo - 2.77 MB (原始地址):handwri ...
随机推荐
- oracle中char],varchar,varchar2
VARCHAR.VARCHAR2.CHAR的区别 1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的, 比如,存储字符串"abc",对于CHAR (20),表示你存储 ...
- 【c++】解析多文件编程的原理
其实一直搞不懂为什么头文件和其他cpp文件之间的关系,今晚索性一下整明白 [c++]解析多文件编程的原理 a.cpp #include<stdio.h> int main(){ a(); ...
- C++11的auto自动推导类型
auto是C++11的类型推导关键字,很强大 例程看一下它的用法 #include<vector> #include<algorithm> #include<functi ...
- java打jar包和运行jar包的两种方式
java打jar包和运行jar包的两种方式更详细的打包方式请参考https://www.cnblogs.com/mq0036/p/8566427.html 一.java类不依赖第三方jar包以简单的一 ...
- Tomcat(1):安装Tomcat
一,安装Tomcat服务器 1,下载tomcat网址: http://tomcat.apache.org/ 2,找到Download 3,下载 4:下载完成后,解压到任意目录 5:解压完成后得到目录 ...
- Zookeeper的选举算法和脑裂问题
ZK介绍 ZK = zookeeper ZK是微服务解决方案中拥有服务注册发现最为核心的环境,是微服务的基石.作为服务注册发现模块,并不是只有ZK一种产品,目前得到行业认可的还有:Eureka.Con ...
- 【Linux】【Basis】Grub
GRUB(Boot Loader): 1. grub: GRand Unified Bootloader grub 0.x: grub legacy grub 1.x: grub2 2. gr ...
- 【Linux卷管理】LVM原理
LVM 简介 每个Linux使用者在安装Linux时 都会遇到这样的困境:在为系统分区时,如何精确评估和分配各个硬盘分区的容量,因为系统管理员不但要考虑到当前某个分区需要的容量,还要预见该分区以后可能 ...
- 【Java 8】函数式接口(一)—— Functional Interface简介
什么是函数式接口(Functional Interface) 其实之前在讲Lambda表达式的时候提到过,所谓的函数式接口,当然首先是一个接口,然后就是在这个接口里面只能有一个抽象方法. 这种类型的接 ...
- C# 温故知新 第一篇 C# 与 .net 的关系
C# 与.net 的关系很多初学者或者未从事过.net 研发的编程人员 都不是很清楚,认为 C# 与.net 是一回事. 我们经常说java开发,C++开发,指的是两种开发语言:但是 经常看到 .ne ...