## 合同文本生成
合同文本生成允许用户定义不同内容的合同模板，通过各项数据配置，对其中的文字、表格、水印以及批注等内容进行修改。  
1. 进入合同模板定义功能  
先在表格中定义好模板的代码、名称、用途、类型以及说明等信息进行保存。 

| 字段名 | 说明 |
| :--: | :--: |
| 模板代码 | 模板的唯一标示，不可重复 |
| 模板名称 | 用于标识一个文件模板 |
| 模板用途 | 暂时只有*合同文本*一种用途 |
| 模板类型 |  |
| 说明 | 文件模板的说明 |
| 参数集 | 参与该模板生成时，所需要使用到的参数 |
![合同模板定义功能](/assets/tempDefine.png)
2. 上传合同模板  
通过合同模板定义功能表格中的**模板上传**功能，将预先设计好的模板上传到服务器。**该功能只支持2007版本以上的，docx后缀的word文档**。
![合同模板上传](/assets/tempUpload.png)
3. 定义合同模板参数
通过合同模板定义功能表格中**参数集**设置，将需要与合同模板关联的参数进行设置。
![合同模板参数集设置](/assets/paramSet.png)
- 若是有在已有的参数列表中没有需要的使用参数设置，则可以在参数集配置中手动添加
    - 参数定义中的字段说明

    > | 字段名 | 说明 |  
    > | :--: | :--: |
    > | 书签代码  | 书签的唯一标识，需要和模板文件中定义的书签名称一致 |  
    > | 书签描述  | 对该书签的文字描述  |
    > | 书签类型  | 书签类型目前有：文本、表单、表单域、横向表单四种  <ul><li>文本类型对应的是替换后为文档中普通文本 </li><li>表单类型对应着word文档中一个表格的数据，表格的每一列的配置信息都是在列配置中完成</li><li>表单域对应word文档中一个文本域\窗体域，最终的替换结果会显示在文本域的位置</li><li>横向表单对应的是替换的文档中，书签所对应的是文档中一整块内容，内容中可能包含了多个书签，每个书签的名称在列配置中进行配置，最后根据结果生成多块结构类似的文本</ul> |
    > | 数据源  | 选择该参数的值来源，配置该项之后可不用配置SQL  |
    > | SQL  | 从数据库进行数据查询使用的SQL语句  |
    > | 列配置  | 只有在书签类型为表单或横向表单时，才可以进行配置  |
    > | 字体型号  | 生成的文本使用的字体类型  |
    > | 字体大小  | 生成的文本使用的字体大小  |
    > | 下划线  | 生成的文本使用的下划线类型：无、单下划线、双下划线  |
    > | 是否加粗 | 生成的文本是否需要加粗  |
![合同模板参数定义](/assets/paramDefine.png)
4. 去生成最终的合同文本
生成合同文本时在合同状态为**新建**时才可以生成合同文本
![合同文本生成入口](/assets/docxGenEntry.png)
![合同文本生成](/assets/docxGen.png)