⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dynaformfunction.java

📁 OA系统实现以下功能: a、个人办公,我的办公桌 b、公文管理 c、工作流程 d、组织管理 e. 权限管理
💻 JAVA
字号:
package com.bjsxt.oa.web;

import java.io.StringWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;

import com.bjsxt.oa.freemarker.FreemarkerManager;
import com.bjsxt.oa.managers.FormManager;
import com.bjsxt.oa.model.FlowForm;

import freemarker.template.Configuration;
import freemarker.template.Template;

public class DynaFormFunction {
	
	private static FormManager formManager;
	private static String defaultTemplate = "document_form.ftl";
	
	public static String form(int workflowId){
		
		try {
			//查找表单定义
			FlowForm form = formManager.findForm(workflowId);
			
			if(form == null){
				return null;
			}
			
			Configuration cfg = FreemarkerManager.getConfiguration();
			
			Template template = null;
			if(form.getTemplate() == null || form.getTemplate().trim().equals("")){
				template = cfg.getTemplate(defaultTemplate);
			}else{
				template = cfg.getTemplate(form.getTemplate());
			}
			
			//最终输出的位置
			Writer out = new StringWriter();
			
			//数据模型
			Map rootMap = new HashMap();
			rootMap.put("form", form);
			
			//模版引擎解释模版
			template.process(rootMap, out);
			
			return out.toString();
			
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
		
	}

	public void setFormManager(FormManager formManager) {
		DynaFormFunction.formManager = formManager;
	}

	public void setDefaultTemplate(String defaultTemplate) {
		DynaFormFunction.defaultTemplate = defaultTemplate;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -