zoukankan      html  css  js  c++  java
  • 网上售票系统第五天

    前面的订单功能实现的有点粗糙,特别是座位号 的问题,还有退票,改签的问题,这里我们改签是 把之前的订单取消掉,然后重新 生成一个新的订单

    今日任务: 

    1,实现改签,改签后座位号会放在一个表中,等待下个同伴次的客车  订票的时候 使用,使用后变为0

    2,后台功能

        1,车站管理

        2,班次管理

        3,用户管理

        4,留言管理

    先把前台的一个改签功能 做完,前面已经分析过了,这里的改签只是把之前的订单 状态改变为不可用,然后重新插入用户新的订单,同时退/改签表中插入一条数据来记录改用户改签的班次 和座位号以便下次使用。

    点击改签====跳转到搜索订票页面 

    之后的流程 和之前订票的流程一样,在这里我们要保存 需要改签订单id 和班次id 以及座位号 

    在后面提交订单的时候 进行判断 如果变量里面有 需要改签订单的id  我们就认为 这是一个改签单, 然后提交这个改签,之后把 该变量的值 设置为null 以便下次 买票的时候 进行再次使用。

    贴一点代码

     $(".btn").click(function () {
           if(timetop>0)
           {
             if(gqorderid==0){
                  var myDate = new Date();            
                  var year=myDate.getFullYear();        //获取当前年
                  var month=myDate.getMonth()+1;   //获取当前月
                  var date=myDate.getDate();            //获取当前日
                  var now=year+'-'+getNow(month)+"-"+getNow(date);
                  var cc = new Object();
                  cc.orderseat=shu2.zuohao;
                  cc.orderfreid=shu2.banciid;
                  cc.orderuserid=userid;
                  cc.orderprice=shu3.price;
                  cc.orderdate=now;
                  cc.orderplaydate=null;
                  cc.orderstatus=1;
                  cc.orderremark='未';
                  cc.orderissue=startDate;
                  cc.orderusernumber=idnumberziji;
                 // alert(cc.orderusernumber)
                   $.ajax({
                       url:webname+'/car/ticket/insertorder',
                       dataType:"json",
                       type:"post",
                      contentType:"application/json;charset=UTF-8",
                      data:JSON.stringify(cc),
                      success:function (data) {
                      if(data>0)
                      {
                     // alert(data)
                      document.cookie = "cookie_unsoldTicket_price = " + cc.orderprice + "; path=/myticket/static/html/";
                      document.cookie = "cookie_neworderid = " + data + "; path=/myticket/static/html/";
                      window.location.href=(webname+'/static/html/pay.html');
                      }
                      
                }
                   ,error:function (e) {
                     alert("未知错误!");
                            }
                   })
                  }
                  if(gqorderid>0){
                  var myDate = new Date();            
                  var year=myDate.getFullYear();        //获取当前年
                  var month=myDate.getMonth()+1;   //获取当前月
                  var date=myDate.getDate();            //获取当前日
                  var now=year+'-'+getNow(month)+"-"+getNow(date);
                  var cc = new Object();
                 cc.orderid=gqorderid;
                  cc.orderseat=shu2.zuohao;
                  cc.orderfreid=shu2.banciid;
                  cc.orderuserid=userid;
                  cc.orderprice=shu3.price;
                  cc.orderdate=now;
                  cc.orderplaydate=null;
                  cc.orderstatus=1;
                  cc.orderremark='未';
                  cc.orderissue=startDate;
                  cc.orderusernumber=idnumberziji;
                  //alert(cc.orderid);
                   $.ajax({
                       url:webname+'/car/user/gaiqianorder',
                       dataType:"json",
                       type:"post",
                      contentType:"application/json;charset=UTF-8",
                      data:JSON.stringify(cc),
                      success:function (data) {
                      if(data>0)
                      {
                       document.cookie = "cookie_neworderid = " + data + "; path=/myticket/static/html/";
                        document.cookie = "cookie_unsoldTicket_price = " + cc.orderprice + "; path=/myticket/static/html/";
                       document.cookie = "cookie_gqorderid = " + 0 + "; path=/myticket/static/html/";
                      alert("成功改签!")
                      window.location.href=webname+'/static/html/pay.html';
                      }
                      
                }
                   ,error:function (e) {
                     alert("改签失败,可能是余票不足!");
                            }
                   })
                  }
               }
                  
            })
             $(".btn92").click(function () {
                window.location.href=webname+'/html/12306/settlement.html';
                 })
    
    
       })
       
     
        function timedCount() {
            if(timetop >= 0) {
                t = setTimeout( "timedCount()",1000);
                minutes = Math.floor(timetop / 60);
                seconds = Math.floor(timetop % 60);
                msg =   minutes + "分" + seconds + "秒";
                timetop = timetop - 1;
                document.getElementById('txt').innerText =  msg
            } else {
                alert("时间到")
            }
        }
    
        window.onload=timedCount;
    

      

    @RequestMapping("/car/user/gaiqianorder")
        public int gaiqian(@RequestBody Orderinfo orderinfo)
        {
    //        System.out.println(orderinfo.getOrderid());
    //        return 1;
            SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");
            Date date = new Date(System.currentTimeMillis());
            //System.out.println(formatter.format(date));
            String refundtime=formatter.format(date);
            Orderinfo oo=orderinfoService.getbyid(orderinfo.getOrderid());
            System.out.println(orderinfo.getOrderid());
             orderinfoService.updategaiqian(orderinfo);
            if (orderinfoService.add(orderinfo)>0) {
                
                 Refund refund=new Refund();
                    refund.setRefundnumber(oo.getOrderusernumber());
                    refund.setOrderfreid(oo.getOrderfreid());
                    refund.setRefundremark("改签");
                    refund.setRefundseat(oo.getOrderseat());
                    refund.setRefundstatus(0);
                    refund.setRefundtime(refundtime);
                    refund.setRefunduserid(oo.getOrderuserid());
                 refundService.add(refund);
                 System.out.println(orderinfo.getOrderid());
                 return orderinfo.getOrderid();
            }
            else {
                return 0;
            }
        }

     =============================================================

    下面写后台的功能;  后台的功能 基本比较单一,基本对表的一些操作,在下面我也找了一个 layui框架,  使用框架的效率比较高;;

    大致页面如下:

     这个没什么业务,就是对表的一些操作  贴一些代码吧

    @Resource
        IUserticketService userticketService;
        
        
         @RequestMapping("/car/user/login")
            public Userticket UserLogin(@RequestBody Userticket userticket){
             
                return userticketService.userlogin(userticket);
            }
         @RequestMapping("/car/user/getuserinfo")
            public Userticket getUserticket(@RequestBody Userticket userticket){
           
                return userticketService.getbyid(userticket.getUserid());
            }
         @RequestMapping("/car/user/changephone")
         public int changephone(@RequestBody Userticket userticket)
         {
            String pwd= userticketService.getbyid(userticket.getUserid()).getUserpwd();
            
            if (pwd.equals(userticket.getUserpwd())) {
                if (userticketService.changePhone(userticket)>0) {
                    return 1;
                }
                 else {
                    return 0;
                }
            }
            else {
                return 0;
            }
             
         }
         @RequestMapping("/car/user/adduser")
         public int add(@RequestBody Userticket userticket)
         {
             if (userticketService.checkInfo(userticket)>0) {
                return 0;
            }
             return userticketService.add(userticket);
         }
    <select id="getlist" resultType="com.hp.entity.Userticket">
      select *from Userticket;
    </select>
    <select id="getbyid" resultType="com.hp.entity.Userticket" parameterType="_int">
      select *from Userticket u where u.userid=#{id};
    </select>
    <update id="update" parameterType="com.hp.entity.Userticket">
    update Userticket set username=#{username},usernumber=#{usernumber},userrealname=#{userrealname},userpwd=#{userpwd},usertype=#{usertype},usertelephone=#{usertelephone},useremail=#{useremail},userguhua=#{userguhua},useraddress=#{useraddress},useryoubian=#{useryoubian} where userid=#{userid};
    </update>
    <delete id="delete" parameterType="_int">
    delete from Userticket  where userid=#{id};
    </delete>
    <insert id="add" parameterType="com.hp.entity.Userticket">
    insert into userticket values(#{username},#{usernumber},#{userpwd},#{usersex},#{userrealname},#{usertype},#{usertelephone},#{userguhua},#{useraddress},#{useryoubian},#{useremail})
    </insert>
    
    <select id="userlogin" resultType="com.hp.entity.Userticket" parameterType="com.hp.entity.Userticket">
    select *from userticket where username=#{username} and userpwd=#{userpwd};
    </select>
    <update id="changePhone" parameterType="com.hp.entity.Userticket">
    update userticket set usertelephone=#{usertelephone} where userid=#{userid};
    </update>
    
    <select id="checkInfo" resultType="java.lang.Integer">
    select count(usernumber) from userticket where usernumber=#{usernumber};
    </select>

    未完成任务:

       班次管理,车站管理,留言管理

     这周主要是 ssm 的培训, 时间比较紧张

    未实现功能:  使用layui进行 销售的一个统计,打算做一个饼状图或者 柱状图

    更新一下燃尽图:

  • 相关阅读:
    基于策略梯度的强化学习论文调研
    Soft Actor-Critic: Off-Policy Maximum Entropy Deep Reinforcement Learning with a Stochastic Actor
    固定随机种子比较强化学习算法
    Action and learning shape the activity of neuronal circuits in the visual cortex
    大脑中的记忆机制
    A Simple Neural Attentive Meta-Learner
    【Error】Creating Server TCP listening socket *:6379: bind: No such file or directory
    Redis安装配置
    MySQL中文入库问题
    Nginx启动/重启失败
  • 原文地址:https://www.cnblogs.com/duchen/p/13410162.html
Copyright © 2011-2022 走看看