Commit ceaab87f by chent

用户管理增删改

parent 6b26411b
......@@ -20,5 +20,7 @@ public class MyMvcConfig extends WebMvcConfigurerAdapter {
registry.addViewController("/serviceform").setViewName("servicefrom");
registry.addViewController("/serviceupdate").setViewName("serviceupdate");
registry.addViewController("/serviceCapability").setViewName("serviceCapability");
registry.addViewController("/mebersform").setViewName("mebersfrom");
}
}
......@@ -44,4 +44,32 @@ public class MemberController {
resultMap =userService.userAll(user);
return resultMap;
}
/*
保存用户
*/
@PostMapping("/savemembers")
@ResponseBody
public XzxtRestResult savemembers(User user){
return userService.SaveUser(user);
}
/*
修改用户页面
*/
@GetMapping("/members/{id}")
public String getServices(@PathVariable("id") Integer id,Model model){
model.addAttribute("user",userService.SelectUser(id).getData());
return "mebersupdate";
}
//修改
@PutMapping("/members")
@ResponseBody
public XzxtRestResult updateServices(User user){
return userService.updateUser(user);
}
//服务删除
@DeleteMapping("/members/{id}")
@ResponseBody
public XzxtRestResult deleteUser(@PathVariable("id") Integer id){
return userService.deleteUser(id);
}
}
......@@ -28,5 +28,8 @@ public interface UserMapper {
List<User> selectPageList(User user);
int selectPageCount(User user);
int saveUser(User user);
User selectUser(int id);
int updateUser(User user);
int deleteUser(int id);
}
......@@ -25,4 +25,8 @@ public interface UserService {
*/
XzxtRestResult login(String username, String password);
ResultMap userAll(User user);
XzxtRestResult SaveUser(User user);
XzxtRestResult SelectUser(int id);
XzxtRestResult updateUser(User user);
XzxtRestResult deleteUser(int id);
}
......@@ -55,4 +55,40 @@ public class UserServiceImpl implements UserService {
}
return resultMap ;
}
@Override
public XzxtRestResult SaveUser(User user) {
int num=userMapper.saveUser(user);
if(num==1){
return XzxtRestResult.build(201,"存入成功");
}else{
return XzxtRestResult.build(202,"存入失败");
}
}
@Override
public XzxtRestResult SelectUser(int id) {
User service=userMapper.selectUser(id);
if(!StringUtils.isEmpty(service)){
return XzxtRestResult.build(201,"读取成功",service);
}else{
return XzxtRestResult.build(202,"读取失败","");
}
}
@Override
public XzxtRestResult updateUser(User user) {
int num=userMapper.updateUser(user);
if(num==1){
return XzxtRestResult.build(201,"更新成功");
}else{
return XzxtRestResult.build(202,"更新失败");
}
}
@Override
public XzxtRestResult deleteUser(int id) {
int num=userMapper.deleteUser(id);
if(num==1){
return XzxtRestResult.build(201,"删除成功");
}else{
return XzxtRestResult.build(202,"删除失败");
}
}
}
......@@ -4,17 +4,21 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cc.mapper.UserMapper">
<resultMap id="BaseResultMap" type="com.cc.bean.User" >
<id column="id" property="id" jdbcType="VARCHAR" />
<id column="id" property="id" jdbcType="INTEGER" />
<result column="email" property="email" jdbcType="VARCHAR" />
<result column="sex" property="sex" jdbcType="VARCHAR" />
<result column="staffname" property="staffname" jdbcType="VARCHAR" />
<result column="sex" property="sex" jdbcType="INTEGER" />
<result column="username" property="username" jdbcType="VARCHAR" />
<result column="password" property="password" jdbcType="VARCHAR" />
<result column="status" property="status" jdbcType="VARCHAR" />
<result column="status" property="status" jdbcType="INTEGER" />
</resultMap>
<!-- public Employee getEmpById(Integer id);
public void insertEmp(Employee employee);-->
<sql id="Base_Column_List" >
id, email, sex, username, password, status
</sql>
<select id="login" resultType="com.cc.bean.User">
SELECT * FROM t_user WHERE username=#{username}
</select>
......@@ -46,8 +50,46 @@
select count(1) from t_user
<include refid="queryWhere"/>
</select>
<!-- 保存服务 -->
<insert id="saveUser" parameterType="com.cc.bean.User">
insert into t_user ( <include refid="Base_Column_List"/>)
values (
#{id,jdbcType=INTEGER},
#{email,jdbcType=VARCHAR},
#{sex,jdbcType=INTEGER},
#{username,jdbcType=VARCHAR},
#{password,jdbcType=VARCHAR},
#{status,jdbcType=INTEGER})
</insert>
<select id="selectUser" parameterType="java.lang.Integer" resultType="com.cc.bean.User">
select <include refid="Base_Column_List"/>
from t_user
where id = #{ id,jdbcType=INTEGER }
</select>
<update id="updateUser" parameterType="com.cc.bean.User" >
update t_user
<set>
<if test="email != null" >
email = #{email,jdbcType=VARCHAR},
</if>
<if test="sex != null" >
sex = #{sex,jdbcType=INTEGER},
</if>
<if test="username != null" >
username = #{username,jdbcType=VARCHAR},
</if>
<if test="password != null" >
password = #{password,jdbcType=VARCHAR},
</if>
<if test="status != null" >
status = #{status,jdbcType=INTEGER},
</if>
</set>
where id = #{ id,jdbcType=INTEGER }
</update>
<delete id="deleteUser" parameterType="java.lang.Integer" >
delete from t_user
where id = #{id,jdbcType=INTEGER}
</delete>
</mapper>
\ No newline at end of file
......@@ -38,17 +38,37 @@
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
<button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
<button class="layui-btn layui-btn-sm" lay-event="insertService">新增</button>
<button class="layui-btn layui-btn-sm" lay-event="updateService">修改</button>
<button class="layui-btn layui-btn-sm" lay-event="deletService">删除</button>
<%-- <button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>--%>
</div>
</script>
<script type="text/html" id="barDemo">
<%--<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>--%>
<script type="text/html" id="barDemo1">
{{# if (d.status=== 0) {}}
<i class="fa fa-circle fa-color1"></i>
{{# } else { }}
<i class="fa fa-circle fa-color2"></i>
{{# } }}
</script>
<script type="text/html" id="barDemo2">
{{# if (d.sex=== "0") { }}
<span>未知性别</span>
{{# } else if(d.sex=== "1") { }}
<span></span>
{{# } else { }}
<span></span>
{{# } }}
</script>
<script src="/layui/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
......@@ -66,26 +86,18 @@
,limit: 10
,cols: [[
{type: 'checkbox', fixed: 'left',align:'center'}
,{field:'id', title:'ID', width:200, fixed: 'left', align:'center',unresize: true, sort: true}
/* ,{field:'id', title:'ID', width:200, fixed: 'left', align:'center',unresize: true, sort: true}*/
,{field:'username', title:'用户名',align:'center', width:200, edit: 'text'}
,{field:'email', title:'邮箱', width:250,align:'center', edit: 'text', templet: function(res){
return '<em>'+ res.email +'</em>'
}} ,{field:'yhzt', title:'用户状态', width:150,align:'center', edit: 'text', templet: function(res){
return '<i class="fa fa-circle fa-color1"></i>'
}}
,{field:'sex', title:'性别',align:'center', width:100, edit: 'text', sort: true}
,{field:'status', title:'状态',align:'center', width:100}
/* ,{field:'city', title:'城市',align:'center', width:100}
,{field:'sign', title:'签名'}
,{field:'experience', title:'积分', width:80, sort: true}
,{field:'ip', title:'IP', width:120}
,{field:'logins', title:'登入次数', width:100, sort: true}
,{field:'joinTime', title:'加入时间', width:220}*/
,{fixed: 'right', title:'操作',align:'center', toolbar: '#barDemo', width:350}
} , sort: true}
,{field:'sex', title:'性别',align:'center', width:100, edit: 'text', sort: true, templet:'#barDemo2'}
,{field:'status', title:'状态',align:'center', width:100, templet:'#barDemo1'}
]]
});
//头工具栏事件
/* //头工具栏事件
table.on('toolbar(test)', function(obj){
var checkStatus = table.checkStatus(obj.config.id);
switch(obj.event){
......@@ -123,15 +135,108 @@
layer.close(index);
});
}
});*/
//头工具栏事件
table.on('toolbar(test)', function(obj){
debugger
var checkStatus = table.checkStatus(obj.config.id);
switch(obj.event){
//插入
case'insertService':
//iframe层
layer.open({
type: 2,
title: '新增用户',
shadeClose: true,
shade: 0.8,
area: ['500px', '60%'],
content: '/mebersform',
end:function(){
$('.layui-laypage-btn').click();//模拟点击
}
});
break;
//更新
case'updateService':
var data = checkStatus.data;
// layer.msg('选中了:'+ data.length + ' 个');
// layer.alert(data[0].id);
if(data.length==1){
debugger;
layer.open({
type: 2,
title: '修改用户',
shadeClose: true,
shade: 0.8,
area: ['500px', '90%'],
content: '/members/'+data[0].id,
end:function(){
$('.layui-laypage-btn').click();//模拟点击
}
});
}
else
{
layer.msg("请选择一个用户!")
}
break;
//刪除
case'deletService':
var data = checkStatus.data;
//alert(data[0].id);
//layer.msg('选中了:'+ data.length + ' 个');
if(data.length!=0){
layer.confirm('确认要删除所选的用户吗?',function(index){
for(var i=0;i<=data.length;i++){
$.ajax({
type: "DELETE",
url: "/members/"+data[i].id,
dataType: "json",
success: function(data){
console.log(data);
if (data.status == "201") {
layer.msg("删除成功");
layer.close(index);
$('.layui-laypage-btn').click();//模拟点击
} else {
layer.close(index);
layer.msg("删除失败");
}
}
});
//批量删除提交
}
});
}
else
{
layer.msg("请选择要删除的用户!")
}
break;
case 'getCheckData':
var data = checkStatus.data;
layer.alert(JSON.stringify(data));
break;
case 'getCheckLength':
var data = checkStatus.data;
layer.msg('选中了:'+ data.length + ' 个');
break;
case 'isAll':
layer.msg(checkStatus.isAll ? '全选': '未全选');
break;
};
});
});
/* //批量删除提交
function delAll () {
layer.confirm('确认要删除吗?',function(index){
//捉到所有被选中的,发异步进行删除
layer.msg('删除成功', {icon: 1});
});
}
}*/
</script>
......
<%--
Created by IntelliJ IDEA.
User: changc
Date: 2018/9/6
Time: 14:37
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="/layui/css/layui.css" media="all">
<link rel="stylesheet" href="/css/xadmin.css">
<link rel="stylesheet" href="/fenye/fenye.css" media="all">
<link rel="stylesheet" href="/fenye/font-awesome.min.css" media="all">
<script type="text/javascript" src="/jquery/jquery.min.js"></script>
<!-- 引入公共js-->
<script type="text/javascript" src="/js/common.js"></script>
<!-- 引入公共页面-->
<jsp:include page="../common/index.jsp"></jsp:include>
</head>
<body>
<form class="layui-form" action="" method="post">
<div class="layui-form-item">
<label class="layui-form-label">用户名:</label>
<div class="layui-input-block">
<input type="text" name="username" required lay-verify="required" placeholder="请输入用户名" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">密码:</label>
<div class="layui-input-block">
<input type="password" name="password" required lay-verify="required" placeholder="请输入密码" autocomplete="off" class="layui-input">
<%-- <input type="password" id="L_pass" name="pass" required lay-verify="pass" autocomplete="off" class="layui-input" placeholder="登陆密码">
<input type="password" id="L_repass" name="repass" required lay-verify="repass" autocomplete="off" class="layui-input">--%>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">性别:</label>
<div class="layui-input-block">
<select name="sex" lay-verify="required">
<option value=""></option>
<option value="0">未知性别</option>
<option value="1"></option>
<option value="2"></option>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">电子邮箱:</label>
<div class="layui-input-block">
<input type="text" name="email" required lay-verify="required" placeholder="请输入电子邮箱" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态:</label>
<div class="layui-input-block">
<select name="status" lay-verify="required">
<option value=""></option>
<option value="0">开启</option>
<option value="1">关闭</option>
</select>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
<script src="/layui/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
<script>
//Demo
layui.use('form', function(){
var form = layui.form;
//监听提交
form.on('submit(formDemo)', function(data){
debugger;
var services=JSON.stringify(data.field);
$.ajax({
type: "POST",
url: "/savemembers",
data: $(".layui-form").serialize(),
dataType: "json",
success: function(data){
console.log(data.status);
if(data.status=="201"){
debugger;
layer.msg("保存成功");
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);//关闭当前页
//window.parent.location.reload(); //刷新父页面
}else{
//layer.close(index);
layer.msg("保存失败");
}
}
});
return false; //必须加上这个!!!
});
});
/* //自定义验证规则
form.verify({
pass: [/(.+){6,12}$/, '密码必须6到12位']
,repass: function(value){
var repassvalue = $('#L_repass').val();
if(value != repassvalue){
return '两次输入的密码不一致!';
}
}
});*/
</script>
</body>
</html>
<%--
Created by IntelliJ IDEA.
User: changc
Date: 2018/9/6
Time: 14:37
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="/layui/css/layui.css" media="all">
<link rel="stylesheet" href="/css/xadmin.css">
<link rel="stylesheet" href="/fenye/fenye.css" media="all">
<link rel="stylesheet" href="/fenye/font-awesome.min.css" media="all">
<script type="text/javascript" src="/jquery/jquery.min.js"></script>
<!-- 引入公共js-->
<script type="text/javascript" src="/js/common.js"></script>
<!-- 引入公共页面-->
<jsp:include page="../common/index.jsp"></jsp:include>
</head>
<body>
<form class="layui-form" action="" method="post" >
<%-- <input type="hidden" name="_method" value="put"/>--%>
<div class="layui-form-item">
<label class="layui-form-label">用户名:</label>
<div class="layui-input-block">
<input type="text" name="username" value="${user.username}" required lay-verify="required" placeholder="请输入用户名" autocomplete="off" class="layui-input">
<input type="hidden" name="id" id="id" value="${user.id}"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">密码:</label>
<div class="layui-input-block">
<input type="text" name="password" value="${user.password}" required lay-verify="required" placeholder="请输入密码" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">性别:</label>
<div class="layui-input-block">
<select name="sex" lay-verify="required" id="sex">
<option value=""></option>
<option value="0">未知性别</option>
<option value="1"></option>
<option value="2"></option>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">电子邮箱:</label>
<div class="layui-input-block">
<input type="text" name="email" value="${user.email}" required lay-verify="required" placeholder="请输入电子邮箱" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态:</label>
<div class="layui-input-block">
<select name="status" lay-verify="required" id="status">
<option value=""></option>
<option value="0">开启</option>
<option value="1">关闭</option>
</select>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formDemo">更新</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
<script src="/layui/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
<script>
$(function () {
$("#sex").val(${user.sex});
$("#status").val(${user.status});
})
//Demo
layui.use('form', function(){
var form = layui.form;
//监听提交
form.on('submit(formDemo)', function(data){
debugger;
var services=JSON.stringify(data.field);
$.ajax({
type: "PUT",
url: "/members",
data: $(".layui-form").serialize(),
dataType: "json",
success: function(data){
console.log(data.status);
if(data.status=="201"){
debugger;
layer.msg("修改成功");
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);//关闭当前页
}else{
//layer.close(index);
layer.msg("修改失败");
}
}
});
return false; //必须加上这个!!!
});
});
</script>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment