数据库
https://blog.csdn.net/qq_47795870/article/details/121377654
后端代码
public ActionResult Index()
{
return View();
}
//修改
public ActionResult EditRole(string info)
{
using (AAAEntities db = new AAAEntities())
{
var newModel = info.ToObject<Models.Student>();
var model = db.Student.Find(newModel.id);
model.Sex = newModel.Sex;
model.institute = newModel.institute;
model.phone = newModel.phone;
model.Addtime = newModel.Addtime;
model.Admissiontime = newModel.Admissiontime;
model.Called = newModel.Called;
model.Class = newModel.Class;
model.Name = newModel.Name;
model.IsDel = 1;
if (db.SaveChanges() > 0)
{
return Content("OK");
}
else
{
return Content("Error");
}
}
}
//添加修改共同的用id判断
public ActionResult Addorupdate(string id)
{
using (AAAEntities db = new AAAEntities())
{
var model = new Models.Student();
if (!String.IsNullOrWhiteSpace(id))
{
model = db.Student.Find(id);
}
return View(model);
}
}
//添加
public ActionResult AddRole(string info)
{
var model = info.ToObject<Models.Student>();
using (AAAEntities db = new AAAEntities())
{
model.id = Common.StringHelper.GetPrimaryKey();
model.IsDel = 1;
db.Student.Add(model);
if (db.SaveChanges() > 0)
{
return Content("OK");
}
else
{
return Content("Error");
}
}
}
//删除
public ActionResult Del(string id)
{
using (AAAEntities db = new AAAEntities())
{
string[] lst = id.Split(',');
foreach (var item in lst)
{
var model = db.Student.Find(item);
model.IsDel = 0;
}
if (db.SaveChanges() > 0)
{
return Content("OK");
}
else
{
return Content("Error");
}
}
}
//查询
public ActionResult students(int page, int limit)
{
using (AAAEntities db = new AAAEntities())
{
var query = (from a in db.Student
select new ViewModel.TTbate
{
id = a.id,
Name = a.Name,
institute = a.institute,
Sex = a.Sex,
Class = a.Class,
Called = a.Called,
phone = a.phone,
Addtime = (DateTime)a.Addtime,
Admissiontime = (DateTime)a.Admissiontime,
IsDel = a.IsDel.Value
});
query = query.Where(u => u.IsDel == 1);
if (!String.IsNullOrWhiteSpace(Request["name"]))
{
string name = Request["name"].ToString();
query = query.Where(u => u.Name.Contains(name));
}
if (!String.IsNullOrWhiteSpace(Request["institute"]))
{
string institute = Request["institute"].ToString();
query = query.Where(u => u.institute.Contains(institute));
}
if (!String.IsNullOrWhiteSpace(Request["Class"]))
{
string Class = Request["Class"].ToString();
query = query.Where(u => u.Class.Contains(Class));
}
var lst = query.OrderBy(u => u.id).Skip((page - 1) * limit).Take(limit);
return Json(new { code = 0, msg = "", count = query.Count(), data = lst.ToList() }, JsonRequestBehavior.AllowGet);
}
}
}
}
数据展示页面代码
<link rel="stylesheet" href="~/Content/layuiadmin/layui/css/layui.css" media="all">
<link rel="stylesheet" href="~/Content/layuiadmin/style/admin.css" media="all">
</head>
<body>
<div class="layui-fluid">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-body">
<div class="layui-row">
<div class="layui-col-xs3">
<div class="layui-form-item">
<label class="layui-form-label">姓名</label>
<div class="layui-input-block">
<input type="text" name="name" id="name" autocomplete="off" placeholder="请输入姓名" class="layui-input">
</div>
</div>
</div>
<div class="layui-col-xs3">
<div class="layui-form-item">
<label class="layui-form-label">学院</label>
<div class="layui-input-block">
<input type="text" name="institute" id="institute" autocomplete="off" placeholder="请输入学院" class="layui-input">
</div>
</div>
</div>
<div class="layui-col-xs3">
<div class="layui-form-item">
<label class="layui-form-label">班级</label>
<div class="layui-input-block">
<input type="text" name="Class" id="Class" autocomplete="off" placeholder="请输入班级" class="layui-input">
</div>
</div>
</div>
<div class="layui-col-xs3">
<div class="layui-form-item" style="padding-left:20px">
<button type="button" id="btnQuery" class="layui-btn caller-pl32"><i class="layui-icon layui-icon-search"></i>查询</button>
</div>
</div>
</div>
<table class="layui-hide" id="tb1" lay-filter="tb1"></table>
</div>
</div>
</div>
</div>
</div>
<script type="text/html" id="toolbar">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="add"><i class="layui-icon layui-icon-add-1"></i>添加</button>
<button class="layui-btn layui-btn-sm layui-btn-warm" lay-event="update"><i class="layui-icon layui-icon-edit"></i>修改</button>
<button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="delAll"><i class="layui-icon layui-icon-delete"></i>删除</button>
</div>
</script>
</body>
</html>
<script src="~/Scripts/jquery-3.4.1.min.js"></script>
<script src="~/Content/layuiadmin/layui/layui.js"></script>
<script>
var indexOpen;
layui.config({
base: '../../Content/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(['index', 'table', 'form', 'laydate'], function () {
var admin = layui.admin
, table = layui.table
, form = layui.form,
laydate = layui.laydate;
var util = layui.util;
table.render({
elem: '#tb1'
, url: '/Home/students'
, toolbar: '#toolbar'
, cellMinWidth: 80
, cols: [[
{ type: 'checkbox' }
, { field: 'id', title: '主键', hide: true }
, { field: 'Name', title: '姓名' }
, { field: 'Sex', title: '性别', align: "center", templet: function (d) { if (d.Sex == 1) { return '女' } else { return '男' } } },
, { field: 'institute', title: '学院' }
, { field: 'Class', title: '班级' }
, { field: 'Called', title: '班级职位' }
, { field: 'phone', title: '手机号' }
, {
field: 'Admissiontime', width: 150, title: '入校时间', align: 'center', templet: function (d){
return util.toDateString(d.Admissiontime * 1000, "yyyy-MM-dd")
}
},
]]
, page: true
});
//头工具栏事件
table.on('toolbar(tb1)', function (obj) {
var checkStatus = table.checkStatus(obj.config.id);
switch (obj.event) {
case 'add':
layer.open({
type: 2,
area: ['1000px', '590px'],
fixed: false, //不固定
maxmin: true,
content: '/Home/Addorupdate'
});
break;
case 'delAll':
var data = checkStatus.data;
if (data.length == 0) {
layer.msg("请先选择要删除的数据!");
return;
}
layer.confirm('是否要删除数据?', { icon: 3, title: '提示' }, function (index) {
//执行删除的方法
delData(data);
layer.close(index);
});
break;
case 'update':
var data = checkStatus.data;
if (data.length == 0) {
layer.msg("请先选择要删除的数据!");
return;
}
if (data.length > 1) {
layer.msg("只能选择一条数据修改!");
return;
}
layer.open({
type: 2,
area: ['1000px', '590px'],
fixed: false, //不固定
maxmin: true,
content: '/Home/Addorupdate?id=' + data[0].id
});
break;
}
});
//使用JQuery进行点击事件绑定
$("#btnQuery").click(function () {
TableReload();
});
function delData(data) {
var ids = [];
for (var i = 0; i < data.length; i++) {
ids.push(data[i].id)
}
$.ajax({
url: "/Home/Del",
data: {
id: ids.toString(),
},
success: function (res) {
if (res == "OK") {
layer.msg("删除成功!");
TableReload();
}
}
});
}
function TableReload() {
table.reload("tb1", {
where: {
name: $("#name").val(),
institute: $("#institute").val(),
Class: $("#Class").val(),
}
})
}
});
</script>
添加和修改代码
@{
Layout = null;
}
@model ceshi.Models.Student
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Addorupdate</title>
<link rel="stylesheet" href="~/Content/layuiadmin/layui/css/layui.css" media="all">
<link rel="stylesheet" href="~/Content/layuiadmin/style/admin.css" media="all">
</head>
<body>
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">姓名</label>
<div class="layui-input-block">
<input type="text" name="Name" lay-verify="required" value="@Model.Name" autocomplete="off" placeholder="请输入姓名" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">性别</label>
<div class="layui-input-inline">
<select name="Sex" lay-verify="required">
<option value="">请选择性别</option>
<option value="0" @Html.Raw(Model.Sex == "0"? "selected" : "")>男</option>
<option value="1" @Html.Raw(Model.Sex == "1"? "selected" : "")>女</option>
</select>
</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">学院</label>
<div class="layui-input-block">
<input type="text" name="institute" lay-verify="required" value="@Model.institute" autocomplete="off" placeholder="请输入姓名" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">班级</label>
<div class="layui-input-block">
<input type="text" name="Class" lay-verify="required" value="@Model.Class" autocomplete="off" placeholder="请输入姓名" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">班级职位名称</label>
<div class="layui-input-block">
<input type="text" name="Called" lay-verify="required" value="@Model.Called" autocomplete="off" placeholder="请输入姓名" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">验证手机</label>
<div class="layui-input-inline">
<input type="text" name="phone" value="@Model.phone" lay-verify="required|phone" autocomplete="off" class="layui-input">
</div>
</div>
</div>
<div class="layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">添加时间</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" value="@Model.Addtime" lay-verify="required" id="test1" name="Addtime" placeholder="yyyy-MM-dd">
</div>
</div>
</div>
</div>
<div class="layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">入学时间</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" value="@Model.Admissiontime" lay-verify="required" id="test1" name="Admissiontime" placeholder="yyyy-MM-dd">
</div>
</div>
</div>
</div>
<div class="layui-form-item layui-layout-admin">
<div class="layui-input-block">
<div class="layui-footer" style="left: 0;">
<input type="hidden" id="id" />
<button class="layui-btn" lay-submit="" lay-filter="btnSubmit">提交</button>
<button type="button" class="layui-btn layui-btn-primary" οnclick="CloseWin()">关闭</button>
</div>
</div>
</div>
</form>
<script src="~/Scripts/jquery-3.4.1.min.js"></script>
<script src="~/Content/layuiadmin/layui/layui.js"></script>
<script>
layui.use(['form', 'layedit', 'laydate'], function () {
var form = layui.form
, layer = layui.layer
, layedit = layui.layedit
, laydate = layui.laydate;
var laydate = layui.laydate;
//常规用法
laydate.render({
elem: '#test1'
});
form.on('submit(btnSubmit)', function (data) {
$.ajax({
url: ($("#id").val() == "" ? "/Home/AddRole" : "/Home/EditRole"),
data: {
info: JSON.stringify(data.field)
},
success: function (res) {
if (res == "OK") {
parent.layer.msg("操作成功");
window.parent.$("#btnQuery").click()
CloseWin();
} else {
layer.msg("操作失败");
}
}
})
return false;
});
});
function CloseWin() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.layer.close(index); //再执行关闭
}
</script>
</body>
</html>