| | |
| | | <!-- 模板绑定表单区:填报项 + 审批流程 + 附件(须挂在外层 el-form 下) --> |
| | | <template> |
| | | <template v-if="activeTemplate"> |
| | | <el-form-item v-if="showTemplateName && !hideTemplateName && !flowAttachmentsOnly" label="审批模板"> |
| | | <el-form-item |
| | | v-if="showTemplateName && !hideTemplateName && !flowAttachmentsOnly && !flowOnly" |
| | | label="审批模板" |
| | | > |
| | | <span class="template-name">{{ activeTemplate.label }}</span> |
| | | <el-button v-if="allowChangeTemplate" type="primary" link class="ml12" @click="emit('change-template')"> |
| | | 更换模板 |
| | | </el-button> |
| | | </el-form-item> |
| | | |
| | | <FormPayloadFields v-if="!hideFormFields && !flowAttachmentsOnly" :fields="fields" :form-payload="formPayload" /> |
| | | <FormPayloadFields |
| | | v-if="!hideFormFields && !flowAttachmentsOnly && !flowOnly" |
| | | :fields="fields" |
| | | :form-payload="formPayload" |
| | | /> |
| | | |
| | | <el-form-item label="审批流程" required> |
| | | <TemplateFlowEditor v-model="flowNodesModel" :user-options="userOptions" /> |
| | | <p class="section-tip">流程与审批人由模板预置,可按需微调节点审批人。</p> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="templateAttachments.length" label="模板参考"> |
| | | <el-form-item v-if="!flowOnly && templateAttachments.length" label="模板参考"> |
| | | <el-tag |
| | | v-for="(f, i) in templateAttachments" |
| | | :key="`tpl-${i}`" |
| | |
| | | <p class="section-tip">以上为模板附带文件,仅供参考;提交附件请在下方上传。</p> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="附件"> |
| | | <el-form-item v-if="!flowOnly" label="附件"> |
| | | <FileUpload |
| | | v-model:file-list="attachmentsModel" |
| | | :limit="uploadLimit" |
| | |
| | | hideTemplateName: { type: Boolean, default: false }, |
| | | /** 为 true 时仅展示审批流程与附件(填报项由父级单独渲染) */ |
| | | flowAttachmentsOnly: { type: Boolean, default: false }, |
| | | /** 为 true 时仅展示审批流程(不展示模板填报项、附件等) */ |
| | | flowOnly: { type: Boolean, default: false }, |
| | | uploadLimit: { type: Number, default: 10 }, |
| | | }); |
| | | |