- 在一个表格中选择到多条数据 ,将选择到的数据添加到另一个表格中
- 点击添加按钮后就会将勾选的数据在原表格中去除掉 ,在下面表格中显现出来
- 页面中的实现代码如下
//多台预约添加
function addLeisureTableMessage() {
//获取空闲的行数据
var checkStatus = layuiTable.checkStatus('leisureTableMessage');
//判断是否选择数据
if (checkStatus.data.length > 0) {
var TableMessageIDLength = checkStatus.data.length;
//定义一个变量来接收行的主键值
var TableMessageIDs = "";
//循环点击的条数
for (var i = 0; i < checkStatus.data.length; i++) {
//拼接它的状态ID值
TableMessageIDs += checkStatus.data[i].TableMessageID + ";";
}
TableMessageIDs = TableMessageIDs.substring(0, TableMessageIDs.length - 1);
$.post("/BackStageManagement/EssentialData/addLeisureTableMessage", { TableMessageIDs: TableMessageIDs, TableMessageIDLength: TableMessageIDLength }, function (data) {
if (data.State == true) {
layer.msg(data.Text);
leisureTableMessage.reload();
}
else {
layer.msg(data.Text);
}
});
reservedTableRemark.reload({
url: "/BackStageManagement/EssentialData/reservedTableRemark",
});
}
else {
layer.msg("请选择需要添加的数据");
}
}
- 控制器中的代码如下
//多台预约模态框 添加方法
public ActionResult addLeisureTableMessage(string TableMessageIDs, int TableMessageIDLength)
{
ReturnJsonVo returnJson = new ReturnJsonVo();
//判断参数是否传输完整
if (!string.IsNullOrEmpty(TableMessageIDs))
{
//定义一个字符串数组来接收分割后的主键ID值
string[] stringTableMessageIDs = TableMessageIDs.Split(';');
//声明对象列表,存放刚刚点击添加的桌位信息
List<TableMessageVo> listTableMessageVo = new List<TableMessageVo>();
//遍历循环字符串数组内的主键ID值
foreach (string stringTableMessageID in stringTableMessageIDs)
{
//将遍历出来的字符串ID值转为int型
int TableMessageID = Convert.ToInt32(stringTableMessageID);
//创建TableMessageVo对象保存每一条数据
TableMessageVo tableMessageVo = new TableMessageVo();
//根据桌位表主键ID值查询出那一条数据
TableMessage tableMessage = myModels.TableMessage.Where(L => L.TableMessageID == TableMessageID).Select(L => L).Single();
//开始修改查询出数据的状态ID
tableMessage.TableRemarkID = 2;
//将tableMessageVo中的数据查询出来
tableMessageVo.TableMessageID = TableMessageID;
tableMessageVo.TableRemarkID = tableMessage.TableRemarkID;
tableMessageVo.DepartmentID = tableMessage.DepartmentID;
tableMessageVo.FloorID = tableMessage.FloorID;
tableMessageVo.TableRemarks = "已预订";
tableMessageVo.TableNumber = tableMessage.TableNumber;
tableMessageVo.TableName = tableMessage.TableName;
tableMessageVo.Galleryful = tableMessage.Galleryful;
tableMessageVo.TableRemark = tableMessage.TableRemark;
tableMessageVo.FloorName = (from tbTableMessage in myModels.TableMessage
join tbFloor in myModels.Floor on tbTableMessage.FloorID equals tbFloor.FloorID
where tbTableMessage.TableMessageID == TableMessageID
select new
{
FloorName = tbFloor.FloorName,
}).SingleOrDefault().FloorName;
myModels.Entry(tableMessage).State = EntityState.Modified;
if (myModels.SaveChanges() > 0)
{
listTableMessageVo.Add(tableMessageVo);
returnJson.State = true;
returnJson.Text = "添加成功";
}
else
{
returnJson.Text = "添加失败";
}
}
//将数据保存到session中
Session["listTableMessageVo"] = listTableMessageVo;
}
else
{
returnJson.Text = "数据异常";
}
return Json(returnJson, JsonRequestBehavior.AllowGet);
}
显示出点击添加方法添加的数据
public ActionResult reservedTableRemark(LayuiTablePage layuiTablePage) {
List<TableMessageVo> listTableMessageVo = new List<TableMessageVo>();
if (Session["listTableMessageVo"] != null)
{
listTableMessageVo = Session["listTableMessageVo"] as List<TableMessageVo>;
}
for (int i = 0; i < listTableMessageVo.Count(); i++)
{
listTableMessageVo[i].TableRemarkID = 2;
}
//计算数据的总条数
int totalRow = listTableMessageVo.Count();
List<TableMessageVo> listTableMessage = listTableMessageVo
.Skip(layuiTablePage.GetStartIndex())
.Take(layuiTablePage.limit)
.ToList();
//实例化
LayuiTableData<TableMessageVo> layuiTabelData = new LayuiTableData<TableMessageVo>();
layuiTabelData.count = totalRow;
layuiTabelData.data = listTableMessage;
return Json(layuiTabelData, JsonRequestBehavior.AllowGet);
}