online 表单激活模板不生效

jeecg_3.6.5
zhangdaiscott 9 years ago
parent 6d23951b3c
commit aaddccdb7b

@ -8,16 +8,8 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject; import net.sf.json.JSONObject;
import org.jeecgframework.web.cgform.common.OfficeHtmlUtil;
import org.jeecgframework.web.cgform.entity.cgformftl.CgformFtlEntity;
import org.jeecgframework.web.cgform.service.cgformftl.CgformFtlServiceI;
import org.jeecgframework.web.cgform.service.config.CgFormFieldServiceI;
import org.jeecgframework.web.cgform.util.TemplateUtil;
import org.jeecgframework.web.system.service.SystemService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.jeecgframework.core.common.controller.BaseController; import org.jeecgframework.core.common.controller.BaseController;
@ -36,8 +28,14 @@ import org.jeecgframework.core.util.ResourceUtil;
import org.jeecgframework.core.util.StringUtil; import org.jeecgframework.core.util.StringUtil;
import org.jeecgframework.core.util.oConvertUtils; import org.jeecgframework.core.util.oConvertUtils;
import org.jeecgframework.tag.core.easyui.TagUtil; import org.jeecgframework.tag.core.easyui.TagUtil;
import org.jeecgframework.web.cgform.common.OfficeHtmlUtil;
import org.jeecgframework.web.cgform.engine.TempletContext;
import org.jeecgframework.web.cgform.entity.cgformftl.CgformFtlEntity;
import org.jeecgframework.web.cgform.entity.config.CgFormHeadEntity;
import org.jeecgframework.web.cgform.service.cgformftl.CgformFtlServiceI;
import org.jeecgframework.web.cgform.util.TemplateUtil;
import org.jeecgframework.web.system.service.SystemService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.util.FileCopyUtils; import org.springframework.util.FileCopyUtils;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
@ -70,7 +68,7 @@ public class CgformFtlController extends BaseController {
@Autowired @Autowired
private SystemService systemService; private SystemService systemService;
@Autowired @Autowired
private CgFormFieldServiceI cgFormFieldService; private TempletContext templetContext;
/** /**
@ -191,14 +189,18 @@ public class CgformFtlController extends BaseController {
AjaxJson j = new AjaxJson(); AjaxJson j = new AjaxJson();
try { try {
// 判断有没有激活过的模板 // 判断有没有激活过的模板
cgformFtl = systemService.getEntity(CgformFtlEntity.class, cgformFtl = systemService.getEntity(CgformFtlEntity.class,cgformFtl.getId());
cgformFtl.getId());
if (!cgformFtlService.hasActive(cgformFtl.getCgformId())) { if (!cgformFtlService.hasActive(cgformFtl.getCgformId())) {
cgformFtl.setFtlStatus("1"); cgformFtl.setFtlStatus("1");
cgformFtlService.saveOrUpdate(cgformFtl); cgformFtlService.saveOrUpdate(cgformFtl);
message = "激活成功"; message = "激活成功";
systemService.addLog(message, Globals.Log_Type_UPDATE, //update-begin----date:20160721------for:清除缓存---------------------------------------------
Globals.Log_Leavel_INFO); CgFormHeadEntity po = systemService.getEntity(CgFormHeadEntity.class, cgformFtl.getCgformId());
templetContext.removeTemplateFromCache(po.getTableName()+"_"+TemplateUtil.TemplateType.ADD.getName());
templetContext.removeTemplateFromCache(po.getTableName()+"_"+TemplateUtil.TemplateType.DETAIL.getName());
templetContext.removeTemplateFromCache(po.getTableName()+"_"+TemplateUtil.TemplateType.UPDATE.getName());
//update-end----date:20160721------for:清除缓存----------------------------------------------
systemService.addLog(message, Globals.Log_Type_UPDATE,Globals.Log_Leavel_INFO);
j.setSuccess(true); j.setSuccess(true);
j.setMsg(message); j.setMsg(message);
} else { } else {
@ -227,8 +229,13 @@ public class CgformFtlController extends BaseController {
String message = null; String message = null;
AjaxJson j = new AjaxJson(); AjaxJson j = new AjaxJson();
try { try {
cgformFtl = systemService.getEntity(CgformFtlEntity.class, cgformFtl = systemService.getEntity(CgformFtlEntity.class,cgformFtl.getId());
cgformFtl.getId()); //update-begin----date:20160721------for:清除缓存----------------------------------------------
CgFormHeadEntity po = systemService.getEntity(CgFormHeadEntity.class, cgformFtl.getCgformId());
templetContext.removeTemplateFromCache(po.getTableName()+"_"+TemplateUtil.TemplateType.ADD.getName());
templetContext.removeTemplateFromCache(po.getTableName()+"_"+TemplateUtil.TemplateType.DETAIL.getName());
templetContext.removeTemplateFromCache(po.getTableName()+"_"+TemplateUtil.TemplateType.UPDATE.getName());
//update-end----date:20160721------for:清除缓存-----------------------------------------------
cgformFtl.setFtlStatus("0"); cgformFtl.setFtlStatus("0");
cgformFtlService.saveOrUpdate(cgformFtl); cgformFtlService.saveOrUpdate(cgformFtl);
message = "取消激活成功"; message = "取消激活成功";
@ -619,7 +626,7 @@ public class CgformFtlController extends BaseController {
// System.out.println(json.getString("data")); // System.out.println(json.getString("data"));
// // 判断有没有激活过的模板 // // 判断有没有激活过的模板
// message = FormUtil.GetHtml(json.getString("parse"),json.getString("data"), action); // message = FormUtil.GetHtml(json.getString("parse"),json.getString("data"), action);
//update-begin--Author:jg_renjie Date:20150706 for更改解析前台传来的html
if(StringUtils.isNotBlank(parseForm)){ if(StringUtils.isNotBlank(parseForm)){
TemplateUtil tool = new TemplateUtil(); TemplateUtil tool = new TemplateUtil();
Map<String,Object> map = tool.processor(parseForm); Map<String,Object> map = tool.processor(parseForm);
@ -627,7 +634,7 @@ public class CgformFtlController extends BaseController {
} else { } else {
j.setMsg(""); j.setMsg("");
} }
//update-end--Author:jg_renjie Date:20150706 for更改解析前台传来的html
j.setSuccess(true); j.setSuccess(true);
} catch (Exception e) { } catch (Exception e) {
logger.info(e.getMessage()); logger.info(e.getMessage());

@ -65,11 +65,11 @@ public class TempletContext {
return null; return null;
} }
String oldTableName = tableName; String oldTableName = tableName;
// update-start--Author:zhangguoming Date:20140922 for根据ftlVersion动态读取模板
if (ftlVersion != null && ftlVersion.length() > 0) { if (ftlVersion != null && ftlVersion.length() > 0) {
tableName = tableName + "&ftlVersion=" + ftlVersion; tableName = tableName + "&ftlVersion=" + ftlVersion;
} }
// update-end--Author:zhangguoming Date:20140922 for根据ftlVersion动态读取模板
try { try {
if(CgAutoListConstant.SYS_MODE_DEV.equalsIgnoreCase(_sysMode)){//开发模式 if(CgAutoListConstant.SYS_MODE_DEV.equalsIgnoreCase(_sysMode)){//开发模式
template = freemarker.getTemplate(tableName,freemarker.getLocale(), ENCODING); template = freemarker.getTemplate(tableName,freemarker.getLocale(), ENCODING);
@ -113,6 +113,24 @@ public class TempletContext {
return template; return template;
} }
/**
* ftl
* @param template
* @param encoding
* @return
*/
public void removeTemplateFromCache(String tableName){
try {
//获取版本号
String version = cgFormFieldService.getCgFormVersionByTableName(tableName);
//cache的键类名.方法名.参数名
String cacheKey = FreemarkerHelper.class.getName()+".getTemplateFormCache."+tableName+"."+version;
ehCache.remove(cacheKey);
} catch (Exception e) {
e.printStackTrace();
}
}
public Configuration getFreemarker() { public Configuration getFreemarker() {
return freemarker; return freemarker;
} }
@ -128,7 +146,7 @@ public class TempletContext {
public void setTags(Map<String, TemplateDirectiveModel> tags) { public void setTags(Map<String, TemplateDirectiveModel> tags) {
this.tags = tags; this.tags = tags;
} }
//update-begin--Author:张忠亮 Date:20151121 for清除缓存
public void clearCache(){ public void clearCache(){
try{ try{
ehCache.removeAll(); ehCache.removeAll();
@ -136,5 +154,5 @@ public class TempletContext {
} }
} }
//update-end--Author:张忠亮 Date:20151121 for清除缓存
} }

Loading…
Cancel
Save