开发工具与关键技术:VS 后端
作者:陈芝番
撰写时间:2019.5.1
员工基础信息管理简单新增数据
思路:数据查询—构造实体类接收—方法渲染—重置表单—执行新增—提取修改数据—重置表单—异步提交数据—执行删除—关闭加载层
弹出模态框:
首先实例化模型实体,查询数据,获取总行数,获取显示数据,倒叙排序,开始的索引,获取条数,进行数据方法渲染,查询源码:
public ActionResult SelectemployeeAll(LayuiTablePage layuiTablePage)
{
获取总行数:
int EmployeeCount = (from tbemployee in Models.PW_Employee select tbemployee).Count();
获取显示数据:
List<PW_Employee> employeeData =
(from tbEmployee in Models.PW_Employee
orderby tbEmployee.employeeID descending//倒叙排序
select tbEmployee)
.Skip(layuiTablePage.GetStartIndex())//开始的索引
.Take(layuiTablePage.limit).ToList();//获取总条数
用自己构造的实体类接收List
LayuiTableData<PW_Employee> layuiTableData = new LayuiTableData<PW_Employee>();
layuiTableData.count = EmployeeCount;
layuiTableData.data = employeeData;
return Json(layuiTableData, JsonRequestBehavior.AllowGet);}
紧接着新增数据操作:
第一:判断页面传输数据为空,
第二:数据是否存在,
第三:执行新增操作。
控制器源码:
public ActionResult Insertemployee(PW_Employee sysemployee){
ReturnJson returnJson = new ReturnJson();
try{
if (!string.IsNullOrEmpty(sysemployee.employeeNum) && !string.IsNullOrEmpty(sysemployee.employeeName))
{
int oldCount = (from tbemployee in Models.PW_Employee
where tbemployee.employeeName == sysemployee.employeeName
|| tbemployee.employeeNum == sysemployee.employeeNum
select tbemployee).Count();
if (oldCount == 0){
Models.PW_Employee.Add(sysemployee);
新增操作:判断是否和以前重复,如果重复,则返回数据异常;
还有判断传输过来数据是否为空,如果传输过来的数据为空,
则返回数据异常。
if (Models.SaveChanges() > 0){
returnJson.State = true;
returnJson.Text = "保存成功!";}
else{
returnJson.State = false;
returnJson.Text = "保存失败";}
}
else{
returnJson.State = false;
returnJson.Text = "和以前的重复";}
}
else{
returnJson.State = false;
returnJson.Text = "传输过来的数据为空";}
}
catch (Exception e){
Console.WriteLine(e);
returnJson.State = false;
returnJson.Text = "数据异常";}
return Json(returnJson, JsonRequestBehavior.AllowGet);}
类名跟上面的id相一致,否则对应不上,还有上传的路径要跟控制器命名相一致,否则路径不对,就会出现错误。模态窗体构建,重置表单,对数据进行保存,数据库也保存新增数据。Index源码:
打开新增模态框:
function openInsert() {
重置表单:
$('#formEmployee input[type="reset"]').click();
打开模态框:
$("#modalEmployee").modal('show');}
保存新增
function savaInsert(){
获取input输入数据
var employeeName = $("#employeeName").val();
var employeeNum = $("#employeeNum").val();//判断
if (employeeName != '' && employeeName != undefined
&& employeeNum != '' && employeeNum != undefined){
对于需要新增的数据要进行获取,获取路径,该获取的数据就要赋值。需要验证的,还是需要对其进行验证,如:
电话号码(telephone)需要正则表达式去验证,电话号码不可能会出现汉字,英文字母等。
验证电话号码格式:^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$。
$.post("/Main/Insertemployee", { employeeName: employeeName, employeeNum: employeeNum , telephone: telephone, address: address }, function (returnJson) {
if (returnJson.State == true) { //关闭模态框 $("#modalEmployee").modal('hide');//刷新table
employee = layuiTable.reload('employee');}
layer.alert(returnJson.Text);}, "json")}
else {//提示
layer.alert('请填写完整', { title: '提示', icon: 0 });}
}
结语:新增第一步:获取新增数据,
第二步:给实体赋值,执行新增,
最后一步:保存新增。当然修改与新增不同,
而修改的第一步:检查和其他是否有冲突,
第二步:提取要修改数据,
第三步:修改赋值,最后修改赋值。
注意:需要验证的地方,还是需要验证,如:电话号码。