项目一

这次来说说我做的项目里的一个功能,就是乘车选座,下面简单介绍一下这个功能。为满足需求需要在售票界面添加选座功能,也就是说售票方式分为两种,一种是选座,另一种是直售(批量直接销售)现在先讲第一种,因为选座是要车票的信息一块绑定到这个班次的这车座位上。所以代码有点多。这个比较依赖于layui的表格单击时间。言语不详还是看代码吧。

layuiTable.on('row(tbPilotManagements)', function (obj) {//单击事件
                    $.ajaxSettings.async = false;
                    $("#showhide").empty();
                    sea = obj.data;
                    //console.log(obj.data);
                    obj.tr.addClass("layui-table-click").siblings()
.removeClass("layui-table-click");
                    var sum;
                    var arr = new Array();
                    $.post("Checkseat", obj.data, function (fun) {
                        if (fun == "") {
                            sum = "0";
                            arr = "0";
                        } else {
                            sum = fun;
                            for (var i = 0; i < fun.length; i++) {
                                arr[i] = fun[i].Seat.toString();
                            }
                        }
                    })
                    for (var i = 0; i < obj.data.SeatNumber; i++) {
                        for (var j = 0; j < sum.length; j++) {//检索两个字符窜,
                            if (arr.indexOf((i * 1 + 1).toString()) > -1) {

                                var content = ('<div class="di border" onclick="fick(' + (i + 1) + ',' + sum[0].BillDetailsID + ',' + sum[0].BillID + ')" ><img src="/Content/wei.png" />' + (i + 1) + '</div>');
                                if (sum.length>1) {
                                    sum = sum.slice(1);
                                } 
                                break;
                            }
                            else {
                                var content = ('<div class="di border" onclick="fick(' + (i + 1) + ',false,false)" ><img src="/Content/空.png" />' + (i + 1) + '</div>');
                                break;
                            }
                        }
                        $("#showhide").append(content);
                    }
                })

下面是再打开页面时判断是否有人的控制器的代码,此处一定要按升序排列,不然检索票号时座位号会不对应

public ActionResult Checkseat(int ShiftScheduleID)
        {
            var billdelt = (from tb in myModuls.R_BillDetails
                            where tb.ShiftScheduleID == ShiftScheduleID
                            orderby tb.Seat 
                            select tb).ToList();
            return Json(billdelt, JsonRequestBehavior.AllowGet);
        }

下面是效果图,应收、找补自动计算,输入收取后点击回车这次的交易就完成了,还有一个换座位的功能。这次的说的功能就到这里结束了。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值