ControllerTemplate.ftl
3.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
package ${mainPackageInfo}.${moduleName}.controller;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.taover.base.ResultInfo;
import ${mainPackageInfo}.contants.ResultInfoCode;
import ${poPackageInfo}.${poClassName};
import ${mainPackageInfo}.${moduleName}.service.${serviceImplClassName};
import com.taover.tools.CustomTimestampEditor;
@Controller
@RequestMapping("/${controllerUri}")
public class ${controllerClassName} {
@Resource
private ${serviceImplClassName} ${serviceImplFieldName};
Log log = LogFactory.getLog(this.getClass());
/**
* 绑定日期参数
* @param request
* @param binder
*/
@InitBinder
protected void init(HttpServletRequest request, WebDataBinder binder){
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
dateFormat.setLenient(false);
binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));
SimpleDateFormat datetimeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
datetimeFormat.setLenient(false);
binder.registerCustomEditor(java.sql.Timestamp.class,new CustomTimestampEditor(datetimeFormat, true));
}
@RequestMapping(value="/add", method=RequestMethod.POST)
@ResponseBody
public ResultInfo add(
${poClassName} ${poFieldName},
Model model,
HttpServletRequest request){
return this.${serviceImplFieldName}.add(${poFieldName});
}
@RequestMapping(value="/delete")
@ResponseBody
public ResultInfo delete(
@RequestParam(value="ids", required=false) String ids,
Model model,
HttpServletRequest request){
//创建返回对象
ResultInfo result = new ResultInfo();
//参数检验
if(ids == null || ids.length() == 0){
result.setResultId("200");
result.setResultMessage("删除失败,缺少主键信息");
return result;
}
return result = this.${serviceImplFieldName}.delete(ids);
}
@RequestMapping(value="/edit", method=RequestMethod.POST)
@ResponseBody
public ResultInfo edit(
${poClassName} ${poFieldName},
Model model,
HttpServletRequest request){
return this.${serviceImplFieldName}.edit(${poFieldName});
}
/**
* 分页条件查询
* @param page
* @param pageSize
* @return
*/
@RequestMapping(value = "/query")
@ResponseBody
public Map<String, Object> query(
@RequestParam(value="sort", required=false) String sort,
@RequestParam(value="order", required=false) String order,
@RequestParam(value="page", required=false) Integer page,
@RequestParam(value="rows", required=false) Integer pageSize,
HttpServletRequest request) {
//参数检验
if(page == null){
page = 1;
}
if(pageSize == null){
pageSize = 20;
}
if("".equals(sort)){
sort = "id";
order = "desc";
}
//调用Service层查询方法
List<Object[]> arrayCondition = new ArrayList<Object[]>();
<#list fields as tempField>
${tempField["conditionCode"]}
</#list>
Map<String, Object> result = this.${serviceImplFieldName}.query(arrayCondition, sort, order, page, pageSize);
result.put("resultId", "200");
result.put("resultMessage", "请求成功");
return result;
}
}