wei.zhang2 2017-10-16 16:19:38 +08:00
parent c4594da487
commit 8b7d4e53bd
7 changed files with 425 additions and 0 deletions

View File

@ -0,0 +1,77 @@
package {controllerPkgName};
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.boot.security.server.page.table.PageTableRequest;
import com.boot.security.server.page.table.PageTableHandler;
import com.boot.security.server.page.table.PageTableResponse;
import com.boot.security.server.page.table.PageTableHandler.CountHandler;
import com.boot.security.server.page.table.PageTableHandler.ListHandler;
import {daoPackageName}.{daoName};
import {beanPackageName}.{beanName};
import io.swagger.annotations.ApiOperation;
@RestController
@RequestMapping("/{beanParamName}s")
public class {controllerName} {
@Autowired
private {daoName} {daoParamName};
@PostMapping
@ApiOperation(value = "保存")
public {beanName} save(@RequestBody {beanName} {beanParamName}) {
{daoParamName}.save({beanParamName});
return {beanParamName};
}
@GetMapping("/{id}")
@ApiOperation(value = "根据id获取")
public {beanName} get(@PathVariable Long id) {
return {daoParamName}.getById(id);
}
@PutMapping
@ApiOperation(value = "修改")
public {beanName} update(@RequestBody {beanName} {beanParamName}) {
{daoParamName}.update({beanParamName});
return {beanParamName};
}
@GetMapping
@ApiOperation(value = "列表")
public PageTableResponse<{beanName}> list(PageTableRequest request) {
return PageTableHandler.<{beanName}> builder().countHandler(new CountHandler() {
@Override
public int count(PageTableRequest request) {
return {daoParamName}.count(request.getParams());
}
}).listHandler(new ListHandler<{beanName}>() {
@Override
public List<{beanName}> list(PageTableRequest request) {
return {daoParamName}.list(request.getParams(), request.getOffset(), request.getLimit());
}
}).build().handle(request);
}
@DeleteMapping("/{id}")
@ApiOperation(value = "删除")
public void delete(@PathVariable Long id) {
{daoParamName}.delete(id);
}
}

View File

@ -0,0 +1,33 @@
package {daoPackageName};
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import {beanPackageName}.{beanName};
@Mapper
public interface {daoName} {
@Select("select * from {table_name} t where t.id = #{id}")
{beanName} getById(Long id);
@Delete("delete from {table_name} where id = #{id}")
int delete(Long id);
int update({beanName} {beanParamName});
@Options(useGeneratedKeys = true, keyProperty = "id")
@Insert("insert into {table_name}({insert_columns}) values({insert_values})")
int save({beanName} {beanParamName});
int count(@Param("params") Map<String, Object> params);
List<{beanName}> list(@Param("params") Map<String, Object> params, @Param("offset") Integer offset, @Param("limit") Integer limit);
}

View File

@ -0,0 +1,61 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
{addDivs}
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='{beanParamName}List.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="add()">
<i class="fa fa-save"></i> 保存
</button>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
<script type="text/javascript" src="../../js/common.js"></script>
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript">
layui.use(['layer','laydate'], function(){
var layer = layui.layer;
});
function add() {
$('#form').bootstrapValidator();
var bootstrapValidator = $("#form").data('bootstrapValidator');
bootstrapValidator.validate();
if(!bootstrapValidator.isValid()){
return;
}
var formdata = $("#form").serializeObject();
$.ajax({
type : 'post',
url : '/{beanParamName}s',
contentType: "application/json; charset=utf-8",
data : JSON.stringify(formdata),
success : function(data) {
layer.msg("添加成功", {shift: -1, time: 1000}, function(){
location.href = "{beanParamName}List.html";
});
}
});
}
</script>
</body>
</html>

View File

@ -0,0 +1,129 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/dataTables.bootstrap.min.css">
<link rel="stylesheet" href="../../layui/css/layui.css" media="all" />
</head>
<body>
<div>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div>
<header style="height: 100%">
<div align="left">
<table style="width: 100%">
<tr>
<td>
<form class="form-inline" onsubmit="return false">
<div class="form-group">
id
<input id="id" type="text" class="form-control" placeholder="id">
<button id="searchBt" class="layui-btn layui-btn-small"><i class="layui-icon">&#xe615;</i>搜索</button>
</div>
</form>
</td>
<td align="right">
<button class="layui-btn layui-btn-small" onclick="location.href='add{beanName}.html'">
<i class="layui-icon">&#xe608;</i> 添加
</button>
</td>
</tr>
</table>
</div>
</header>
<div>
<div class="widget-body no-padding">
<table id="dt-table" class="table table-striped table-bordered table-hover" style="width:100%">
<thead>
<tr>
</tr>
<tr>
{ths} <th>操作</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
<script type="text/javascript" src="../../js/plugin/datatables/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="../../js/plugin/datatables/dataTables.bootstrap.min.js"></script>
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript" src="../../js/my/permission.js"></script>
<script type="text/javascript">
var pers = checkPermission();
var example;
function init(){
example =
$('#dt-table').DataTable({
"searching": false,
"processing": false,
"serverSide" : true,
"ajax": {
"url" : "/{beanParamName}s",
"type":"get",
"data":function(d){
d.id = $("#id").val();
}
},
"dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-10 col-xs-12 hidden-xs'i><'col-xs-12 col-sm-10' p v>>",
"columns": [
{columnsDatas} { "data": "", "defaultContent": ""},
],
"columnDefs": [
{columnDefs}
{
"targets": {lastIndex},
"render": function (data, type, row) {
var id = row['id'];
var href = "update{beanName}.html?id=" + id;
var edit = buttonEdit(href, "", pers);
var del = buttonDel(id, "", pers);
return edit + del;
}
},
],
"order": [[ 0, "asc" ]]
} );
}
layui.use('layer', function(){
var layer = layui.layer;
});
function del(id){
layer.confirm('确定要删除吗?', {
btn : [ '确定', '取消' ]
}, function() {
$.ajax({
type : 'delete',
url : '/{beanParamName}s/'+id,
success : function(data) {
example.ajax.reload();
layer.msg("删除成功");
}
});
layer.close(1);
});
}
$("#searchBt").click(function(){
example.ajax.reload();
});
init();
</script>

View File

@ -0,0 +1,79 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<input type="hidden" id="id" name="id">
{addDivs}
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='{beanParamName}List.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="update()">
<i class="fa fa-save"></i> 保存
</button>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
<script type="text/javascript" src="../../js/common.js"></script>
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript">
layui.use(['layer','laydate'], function(){
var layer = layui.layer;
});
initData();
function initData(){
var id = getUrlParam("id");
if(id != ""){
$.ajax({
type : 'get',
url : '/{beanParamName}s/'+id,
async : false,
success : function(data) {
{initData}
}
});
}
}
function update() {
$('#form').bootstrapValidator();
var bootstrapValidator = $("#form").data('bootstrapValidator');
bootstrapValidator.validate();
if(!bootstrapValidator.isValid()){
return;
}
var formdata = $("#form").serializeObject();
$.ajax({
type : 'put',
url : '/{beanParamName}s',
contentType: "application/json; charset=utf-8",
data : JSON.stringify(formdata),
success : function(data) {
layer.msg("修改成功", {shift: -1, time: 1000}, function(){
location.href = "{beanParamName}List.html";
});
}
});
}
</script>
</body>
</html>

View File

@ -0,0 +1,13 @@
package {beanPackageName};
{import}
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class {beanName} extends BaseEntity<Long> {
{filelds}
}

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="{daoPackageName}.{daoName}">
<sql id="where">
<where>
{where}
</where>
</sql>
<select id="count" resultType="int">
select count(1) from {table_name} t
<include refid="where" />
</select>
<select id="list" resultType="{beanName}">
select * from {table_name} t
<include refid="where" />
${params.orderBy}
limit #{offset}, #{limit}
</select>
<update id="update">
update {table_name} t
<set>
{update_sets}
</set>
where t.id = #{id}
</update>
</mapper>