这段代码是订单管理页面的前端逻辑,主要用于展示所有订单信息,并提供订单状态修改、房间详情查看和分页浏览功能

gaoyating_branch
gaoyating 4 months ago
parent 16cc28b92d
commit 100f736be5

@ -3,6 +3,7 @@ var pageSize=8;
var l;
$(document).ready(function(){
// 加载订单列表数据
getorderList();
$("#pre").on('click',function(){
getPre();
@ -16,14 +17,16 @@ $(document).ready(function(){
//判断对象/JSON是否为空 空返回1 非空返回0
function isEmptyObject(e) {
var t;
// 遍历对象,若存在属性则非空
for (t in e)
return 0;
return 1;
}
// 全局变量:存储订单列表数据
var list;
// 从后端获取订单列表并展示
function getorderList(){
$.ajax({
type:"post",
@ -33,6 +36,7 @@ function getorderList(){
"pageNum":pageNum,
"pageSize":pageSize
},
// 请求成功的回调函数
success:function(data){
if(isEmptyObject(data.List)&&pageNum>0){
pageNum=pageNum-1;
@ -46,13 +50,16 @@ function getorderList(){
var sdate;
var edate;
l=0;
// 默认显示上一页、下一页按钮
$("#pre").css("display","block");
$("#next").css("display","block");
$("#orderList").empty();
$("#orderList").append("<tr><th>入住人</th><th>身份证号</th><th>开始时间</th><th>结束时间</th><th>总金额</th><th>状态</th><th>操作</th></tr>")
// 遍历订单列表,生成表格内容
for(i in list){
sdate=/\d{4}-\d{1,2}-\d{1,2}/g.exec(list[i].starttime);
edate=/\d{4}-\d{1,2}-\d{1,2}/g.exec(list[i].endtime);
// 根据订单状态编码设置状态文本和操作按钮
if(list[i].state=="0"){
state="未付款";
btnStr="<input type=\"button\" class=\"btn btn-info\" data-roomid=\""+list[i].roomid+"\" id=\"showRoom\" data-toggle=\"modal\" data-target=\"#showRoomT\" value=\"查看房间\"> <input type=\"button\" class=\"btn btn-success\" data-orderid=\""+list[i].orderid+"\" id=\"setPaied\" value=\"已收款\"> <input type=\"button\" class=\"btn btn-danger\" data-orderid=\""+list[i].orderid+"\" id=\"setNone\" value=\"取消\">";
@ -69,6 +76,7 @@ function getorderList(){
state="已取消";
btnStr="<input type=\"button\" class=\"btn btn-info\" data-roomid=\""+list[i].roomid+"\" id=\"showRoom\" data-toggle=\"modal\" data-target=\"#showRoomT\" value=\"查看房间\">";
}
// 拼接表格行(包含订单信息和操作按钮)
htmlStr="<tr data-orderid=\""+list[i].orderid+"\"><td>"+list[i].householdname+"</td><td>"+list[i].id+"</td><td>"+sdate+"</td><td>"+edate+"</td><td>"+list[i].money+"</td><td>"+state+"</td><td>"+btnStr+"</td></tr>";
$("#orderList").append(htmlStr);
l++;
@ -84,37 +92,41 @@ function getorderList(){
}
})
}
// 绑定页面中操作按钮的点击事件
function btnOn(){
// 给"跳转页码"按钮绑定点击事件,触发页码跳转
$("input").filter("#setPageBtn").on('click',function( ){
setPage( );
});
// 给"查看房间"按钮绑定点击事件,触发查看房间详情
$("input").filter("#showRoom").on('click',function(event){
showRoom(event);
})
// 给"已收款"按钮绑定点击事件,将订单状态改为"已付款"1
$("input").filter("#setPaied").on('click',function(event){
setState(event,"1");
});
// 给"退房"按钮绑定点击事件,将订单状态改为"已完成"2
$("input").filter("#setFinish").on('click',function(event){
setState(event,"2");
});
// 给"取消"按钮绑定点击事件,将订单状态改为"已取消"3
$("input").filter("#setNone").on('click',function(event){
setState(event,"3");
});
}
// 加载上一页数据
function getPre(){
pageNum=pageNum-1;
getorderList();
}
// 加载下一页数据
function getNext(){
pageNum=pageNum+1;
getorderList();
}
// 修改订单状态
function setState(event,alter){
var orderid=$(event.target).data("orderid");
$.ajax({
@ -138,7 +150,7 @@ function setState(event,alter){
}
})
}
// 跳转到指定页码
function setPage(){
if($("#inputPage").val()<0 || $("#inputPage").val()==0)
@ -149,7 +161,7 @@ function setPage(){
}
}
// 查看订单对应的房间详情
function showRoom(event){
var roomid=$(event.target).data("roomid");
$.ajax({
@ -174,6 +186,7 @@ function showRoom(event){
state="已预定(入住)";
else
state="待清扫";
// 转换房间类型编码为文本
if(room.type=="1")
type="单人间";
else if(room.type=="2")
@ -182,6 +195,7 @@ function showRoom(event){
type="大床房";
else
type="套房";
// 拼接房间详情表格内容(位置、价格、类型、状态)
htmlStr="<tr><th>位置</th><td>"+room.local+"</td></tr><tr><th>价格</th><td>"+room.money+"</td></tr><tr><th>类型</th><td>"+type+"</td></tr><tr><th>状态</th><td>"+state+"</td></tr>"
$("#roomTable").append(htmlStr);
}

Loading…
Cancel
Save