开源协同办公OA项目:
O2OA——提供了符合国家党政机关公文格式标准(GB/T 9704—2012)的公文编辑组件,可以让用户在不需要付出额外成本,就可以实现标准化公文格式的编辑。
适用范围公文编辑器不同于我们其他的在线文档编辑器,它基本上只限于公文系统中对红头文件的编辑和查看,规定了标准的格式、字体、行距、字据等,编辑自由度是比较低的。O2OA的公文编辑器适用于红头文件的处理,或是对格式要求非常严格的文书编辑。其他情况下的在线文档编辑功能,我们可以选择OnlyOffice、WPS等其他产品,您可以在我们的文档库中找到相关的内容。
一、公文格式简介O2OA公文编辑器中的格式规范,是参照《党政机关公文格式》国家标准(GB/T9704—2012)来设定的,下面简略说明一下红头文件的组成和相关格式规范。
一个标准的红头文件,基本上是下面的样式:
当然不同的文种的格式会略有不同,但主要元素基本一致。下面我们对规范上要求的各个标准做一个简要的说明。
版面公文用纸采用A4型纸,幅面尺寸为:210mm x 297mm。
页边与版心尺寸公文用纸天头(上白边)为37mm(相当于约104.9pt),公文用纸订口(左白边)为28mm(相当于约74.9pt),版心尺寸为:156mm x 225mm,由此可计算出,下白边为:35mm(相当于约99.2pt),右白边为:26mm(相当于约73.7pt)。
字体和字号无特殊说明,公文各要素一般使用3号仿宋字体。
行数和字数每页22行,每行28个字。
颜色无特殊说明,公文中的文字颜色都为黑色。
版头版头内容包括:份号、密级和保密期限、紧急程度、发文机关标志(红头)、发文字号、签发人。
份号、密级和保密期限、紧急程度左上角顶格编排,份号一般用6位阿拉伯数字,3号黑体字。
发文机关标志(红头)推荐使用小标宋体字,颜色为红色。
发文字号发文机关标志下空两行,上行文居左空一字编排,平行文下行文居中编排。采用3号仿宋字体。
签发人只有上行文应标注签发人姓名。发文机关标志下空两行编排,“签发人”三字加全角冒号和签发人姓名组成。“签发人”三字用3号仿宋字体,签发人姓名用3号楷体字体,多个签发人每行编排两个姓名。
主体主体部分包括:标题、主送、正文、附件说明、发文机关署名、成文日期、印章、附注。
标题一般用2号宋体字,分一行或多行居中排布。至于标题的位置,规范中说明在红线下方空两行,但在实际使用中,几乎所有项目的客户都反馈反馈,要求标题在红线下方空一行,所以现在公文编辑组件的默认模板设置为红线下空一行编排标题。可以通过自定义模板修改这一规则。
主送单位在标题下空一行位置,居左顶格。最后一个单位名称后标全角冒号,使用3号仿宋字体。
正文用3号仿宋字体,编排于主送单位名称下一行,每个自然段左空两字,回行顶格。
文中结构层次用:“一”、“(一)”、“1.”、“(1)”标注,第一层用3号黑体字,第二层用3号楷体字,第三第四层用仿宋字体,
附件说明如有附件,在正文下空一行,左空两字编排“附件”二字,后标全角冒号和附件名称。多个附件使用阿拉伯数字标注序号,附件名称较长需要回行时,与上一行附件名称的首字对齐。
发文机关署名和成文日期成文日期一般右空四字编排,发文机关在成文日期之上,以成文日期为准居中编排。
发文机关署名长于成文日期,发文机关署名居右空二字编排,成文日期发文机关首字为准,右移二字。
采用3号仿宋字体。
附注如有附注,居左空二字加圆括号,采用3号仿宋字体。
版记版记内容包括:抄送单位、印发单位和印发日期。版记要置于最后一页的最后位置。
版记中的分隔线分隔线与版心等宽,首条分隔线和末条分隔线使用粗线,中间分隔线用细线。
抄送单位一般用4号仿宋字体,左右各空一字编排。
印发单位和印发日期一般用4号仿宋字体,印发机关左空一字,印发日期右空一字。
以上是简略的说明公文中的一些要素编排的格式规范,参考自《党政机关公文格式》国家标准应用指南(GB/T9704—2012),中国质检出版社、中国标准出版社。
二、基本使用接着我们介绍一下公文编辑组件的基本用法。
公文编辑器可以在流程表单和内容管理表单中使用。
直接将公文编辑器组件拖动到表单中合适的位置,然后设置相关属性即可。
公文编辑器数据结构和默认值
基本属性在往下,是默认值的配置:
当公文编辑器存储的数据是一个JSON对象数据,每个数据都对应公文中的元素的显示内容,它的结构大概是下面的样子:
{
"annotation": "附注",
"attachment": [
"logo_new_blue",
"logo_new_grey_x"
],
"attachmentTitle": "附件:",
"copies": " ",
"copyto": "[抄送]",
"copyto2": "[发]",
"copyto2Title": "发:",
"copytoTitle": "抄送:",
"editionDate": "[印发日期]",
"editionUnit": "[印发机关]",
"fileno": "[文号]",
"filetext": "\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e 正文内容\u003c/div\u003e\n\n\u003cdiv\u003e\u003c/div\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n",
"issuanceDate": "[成文日期]",
"issuanceUnit": "[发文机关]",
"mainSend": "[主送单位:]",
"meetingAttend": "",
"meetingAttendTitle": "出席:",
"meetingLeave": "",
"meetingLeaveTitle": "请假:",
"meetingRecord": "",
"meetingSit": "",
"meetingSitTitle": "列席:",
"priority": " ",
"redHeader": "文件红头",
"secret": " ",
"signer": "[签发人]",
"signerTitle": "签发人:",
"subject": "[文件标题]",
"seals": [
"http://develop.o2oa.net:20020/x_processplatform_assemble_surface/jaxrs/attachment/download/b6941e81-c24b-47a4-ad22-2a31898b936c/work/9994247e-bd6d-4ffb-85aa-04bbc1fd356f"
]}
再往下是CSS属性,我们可以给版式正文定义额外的样式。接着是校验,这两部分我们将在后续的章节说明。
配置属性
公文编辑组件属性的“配置”部分,主要是控制公文中各个内容项的显示和值的绑定。
编辑文件标题和发文单位文件标题元素一般会绑定到文档subject字段,此字段一般是Textfield类型的字段。文件标题过长时,会自动换行,规范要求标题换行要词义完整、长短适宜,这就需要用户手工进行换行,在这种情况下,我们就需要设置文件标题元素为可编辑。
文件标题配置有“允许编辑”属性,三个选项为:“允许”、“不允许”和“根据脚本”,默认值为“不允许”。
允许:可以让用户在公文编辑器中直接编辑标题,一般都是进行换行分隔操作。
不允许:不可在公文编辑器中直接编辑标题。
根据脚本:通过脚本运行返回true表示“允许”,否则“不允许”。
注意:当标题可编辑时,不要绑定表单数据(保持绑定值选“表单数据”;表单数据为空)。因为如果绑定了数据,用户的修改会被表单上的值重新覆盖。
我们还可以配置“同步数据路径”,将编辑的内容同步回表单字段,在此处输入表单上的字段标识即可。
发文单位和标题一样,由于一些格式要求,可设置允许编辑,但没有同步回表单数据的功能。
一些特殊的元素值一般情况下,公文元素内容绑定的值都是字符串,但有以下一些内容,可绑定特殊的值:
附件:表单数据可以绑定一个附件组件,会计算此附件组件中上传的所有附件,作为公文附件展示在公文内容中。
签发人:可绑定组织类型的表单字段。选择类型为“身份”。
主送单位和抄送单位:可绑定组织类型的表单字段。选择类型为“组织”。
自定义元素配置在公文编辑器属性的“配置”页面中,有一个“自定义元素配置”,这是用在系统默认元素不够用的情况下,可以在模板中增加自定义元素,并将其要显示的内容,与业务数据绑定。
可以按以下步骤来实现:1、拷贝模板l文件
系统模板路径在webserver/x_component_process_FormDesigner/Module/Documenteditor/templete目录下,我们看到templete.json文件,里面设定了每种类型的模板对应的html文件。拷贝一个标准文件模板(standard.html)进行修改。
2、修改模板文件
在拷贝后的模板文件中,找到Class为“doc_layout_editionArea”的div元素,在此元素上面加如下html代码:
<p class="doc_block doc_layout" data-doc-layout="doc_data_other"></p>
其中P元素的class设置了“doc_layout”代表这是公文编辑器中的一个有效元素,“data-doc-layout”属性定义了此元素的自定义名称。
编辑完成后,保存文件,并上传到服务器。本例中,上传到了webserver的filetemplate目录中。
3、使用自定义模板在表单编辑中,设置公文编辑器属性中的文件模板为“自定义模板”,模板路径输入上传的模板文件路径。在本例中就是“../filetemplate/standard.html”。(关于自定义模板的制作,我们将在第三章中详细描述)
4、配置数据绑定在公文编辑器属性的“配置”页中,配置自定义元素如下:
其中“doc_data_other”为模板中定义的元素的“data-doc-layout”属性值。
explain为表单中的任意文本类字段的标识。
保存表单后,只要explain字段值改变,并触发“change”事件,公文编辑器中的对应元素的显示内容就会发生改变。
配置完以上内容后,我们就可以使用公文编辑组件了。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31563356/viewspace-2784969/
,如需转载,请注明出处,否则将追究法律责任。