easyController.ftl 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. <#import "function.ftl" as func>
  2. <#assign package=model.variables.package>
  3. <#assign class=model.variables.class>
  4. <#assign system=vars.system>
  5. <#assign comment=model.tabComment>
  6. <#assign subtables=model.subTableList>
  7. <#assign classVar=model.variables.classVar>
  8. <#assign pk=func.getPk(model) >
  9. <#assign pkVar=func.convertUnderLine(pk) >
  10. package ${vars.packagePre}.${system}.controller.${package};
  11. import java.util.List;
  12. import java.util.Map;
  13. import javax.annotation.Resource;
  14. import javax.servlet.http.HttpServletRequest;
  15. import javax.servlet.http.HttpServletResponse;
  16. import org.springframework.stereotype.Controller;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.ResponseBody;
  19. import org.springframework.web.servlet.ModelAndView;
  20. import ${vars.packagePre}.platform.annotion.Action;
  21. import ${vars.packagePre}.core.page.PageList;
  22. import ${vars.packagePre}.core.util.BeanUtils;
  23. import ${vars.packagePre}.core.web.ResultMessage;
  24. import ${vars.packagePre}.core.web.controller.BaseController;
  25. import ${vars.packagePre}.core.web.query.QueryFilter;
  26. import ${vars.packagePre}.core.web.util.RequestUtil;
  27. import ${vars.packagePre}.core.api.util.ContextUtil;
  28. import ${vars.packagePre}.platform.model.system.SysUser;
  29. <#if func.supportFlow(model)>
  30. import ${vars.packagePre}.platform.model.bpm.ProcessRun;
  31. import ${vars.packagePre}.platform.service.bpm.ProcessRunService;
  32. import ${vars.packagePre}.core.bpm.BpmAspectUtil;
  33. </#if>
  34. import ${vars.packagePre}.${system}.model.${package}.${class};
  35. import ${vars.packagePre}.${system}.service.${package}.${class}Service;
  36. <#if func.isSubTableExist( subtables)>
  37. <#list subtables as table>
  38. import ${vars.packagePre}.${system}.model.${table.variables.package}.${table.variables.class};
  39. </#list>
  40. </#if>
  41. /**
  42. *<pre>
  43. * 对象功能:${comment} 控制器类
  44. <#if vars.company?exists>
  45. * 开发公司:${vars.company}
  46. </#if>
  47. <#if vars.developer?exists>
  48. * 开发人员:${vars.developer}
  49. </#if>
  50. * 创建时间:${date?string("yyyy-MM-dd HH:mm:ss")}
  51. *</pre>
  52. */
  53. @Controller
  54. @RequestMapping("/${system}/${package}/${classVar}/")
  55. public class ${class}Controller extends BaseController
  56. {
  57. @Resource
  58. private ${class}Service ${classVar}Service;
  59. <#--直接绑定工作流生成-->
  60. <#if func.supportFlow(model)>
  61. private final String flowKey = "${model.variables.flowKey}"; //绑定流程定义
  62. @Resource
  63. private ProcessRunService processRunService;
  64. </#if>
  65. /**
  66. * 取得${comment}分页列表
  67. * @param request
  68. * @param response
  69. * @param page
  70. * @return
  71. * @throws Exception
  72. */
  73. @RequestMapping("getList")
  74. @Action(description="查看${comment}分页列表")
  75. @ResponseBody
  76. public Object getList(HttpServletRequest request,HttpServletResponse response) throws Exception
  77. {
  78. PageList list=(PageList)${classVar}Service.getAll(new QueryFilter(request,true));
  79. return getMapByPageList(list);
  80. }
  81. /**
  82. * 删除${comment}
  83. * @param request
  84. * @param response
  85. * @throws Exception
  86. */
  87. @RequestMapping("del")
  88. @Action(description="删除${comment}")
  89. public void del(HttpServletRequest request, HttpServletResponse response) throws Exception
  90. {
  91. String preUrl= RequestUtil.getPrePage(request);
  92. ResultMessage message=null;
  93. try{
  94. Long[] lAryId =RequestUtil.getLongAryByStr(request, "${pkVar}");
  95. ${classVar}Service.delByIds(lAryId);
  96. message=new ResultMessage(ResultMessage.Success, "删除${comment}成功!");
  97. }catch(Exception ex){
  98. message=new ResultMessage(ResultMessage.Fail, "删除失败" + ex.getMessage());
  99. }
  100. addMessage(message, request);
  101. response.sendRedirect(preUrl);
  102. }
  103. /**
  104. * 编辑${comment}
  105. * @param request
  106. * @param response
  107. * @throws Exception
  108. */
  109. @RequestMapping("edit")
  110. @Action(description="编辑${comment}")
  111. public ModelAndView edit(HttpServletRequest request) throws Exception
  112. {
  113. <#if func.supportFlow(model)>
  114. Long taskId=RequestUtil.getLong(request,"taskId",0L);
  115. Long runId=RequestUtil.getLong(request,"runId",0L);
  116. </#if>
  117. Long ${pkVar}=RequestUtil.getLong(request,"${pkVar}",0L);
  118. String returnUrl=RequestUtil.getPrePage(request);
  119. ${class} ${classVar}=${classVar}Service.getById(${pkVar});
  120. <#if func.isSubTableExist( subtables)>
  121. <#list subtables as table>
  122. <#assign vars=table.variables>
  123. List<${table.variables.class}> ${table.variables.classVar}List=${classVar}Service.get${vars.classVar?cap_first}List(${pkVar});
  124. </#list>
  125. </#if>
  126. ModelAndView mv=getAutoView();
  127. mv.addObject("${classVar}",${classVar})
  128. <#if func.isSubTableExist( subtables)>
  129. <#list subtables as table>
  130. .addObject("${table.variables.classVar}List",${table.variables.classVar}List)
  131. </#list>
  132. </#if>
  133. .addObject("returnUrl",returnUrl)
  134. <#if func.supportFlow(model)>
  135. .addObject("flowKey",flowKey)
  136. .addObject("taskId",taskId)
  137. </#if>;
  138. <#if func.supportFlow(model)>
  139. //审批
  140. if(taskId>0){
  141. Map<String,Object> flowMap= BpmAspectUtil.getModelByTaskId(taskId);
  142. mv.addAllObjects(flowMap);
  143. }
  144. //草稿的状态
  145. else if(runId>0){
  146. Map<String,Object> flowMap= BpmAspectUtil.getModelByRunId(runId);
  147. mv.addAllObjects(flowMap);
  148. }
  149. </#if>
  150. return mv;
  151. }
  152. /**
  153. * 取得${comment}明细
  154. * @param request
  155. * @param response
  156. * @return
  157. * @throws Exception
  158. */
  159. @RequestMapping("get")
  160. @Action(description="查看${comment}明细")
  161. public ModelAndView get(HttpServletRequest request, HttpServletResponse response) throws Exception
  162. {
  163. Long ${pkVar}=RequestUtil.getLong(request,"${pkVar}");
  164. ${class} ${classVar} = ${classVar}Service.getById(${pkVar});
  165. <#if func.supportFlow(model)>
  166. ProcessRun processRun=processRunService.getByBusinessKey(id.toString());
  167. </#if>
  168. ModelAndView mv= getAutoView().addObject("${classVar}",${classVar});
  169. <#if func.isSubTableExist( subtables)>
  170. <#list subtables as table>
  171. <#assign vars=table.variables>
  172. List<${vars.class}> ${vars.classVar}List=${classVar}Service.get${vars.class}List(${pkVar});
  173. mv.addObject("${vars.classVar}List",${vars.classVar}List);
  174. </#list>
  175. </#if>
  176. <#if func.supportFlow(model)>
  177. if(processRun!=null){
  178. mv.addObject("processRun",processRun);
  179. }
  180. </#if>
  181. return mv;
  182. }
  183. <#if func.supportFlow(model)>
  184. @RequestMapping("getMyTodoTaskJson")
  185. @Action(description="查看我的${comment}任务分页列表")
  186. @ResponseBody
  187. public Map<String,Object> getMyTodoTaskJson(HttpServletRequest request,HttpServletResponse response) throws Exception
  188. {
  189. SysUser sysUser=(SysUser)ContextUtil.getCurrentUser();
  190. Long userId=sysUser.getUserId();
  191. PageList list=(PageList) ${classVar}Service.getMyTodoTask(userId, new QueryFilter(request,true));
  192. return getMapByPageList(list);
  193. }
  194. @RequestMapping("getMyDraftJson")
  195. @Action(description="查看我的${comment}草稿")
  196. @ResponseBody
  197. public Map<String,Object> getMyDraftJson(HttpServletRequest request,HttpServletResponse response) throws Exception
  198. {
  199. SysUser sysUser=(SysUser)ContextUtil.getCurrentUser();
  200. Long userId=sysUser.getUserId();
  201. PageList list=(PageList) ${classVar}Service.getMyDraft(userId, new QueryFilter(request,true));
  202. return getMapByPageList(list);
  203. }
  204. @RequestMapping("getMyEndJson")
  205. @Action(description="查看我结束的${comment}实例")
  206. @ResponseBody
  207. public Map<String,Object> getMyEndJson(HttpServletRequest request,HttpServletResponse response) throws Exception
  208. {
  209. SysUser sysUser=(SysUser)ContextUtil.getCurrentUser();
  210. Long userId=sysUser.getUserId();
  211. PageList list=(PageList) ${classVar}Service.getMyEnd(userId, new QueryFilter(request,true));
  212. return getMapByPageList(list);
  213. }
  214. </#if>
  215. }