博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
大型运输行业实战_day06_1_购票功能简单实现
阅读量:4709 次
发布时间:2019-06-10

本文共 6912 字,大约阅读时间需要 23 分钟。

1.添加购票按钮

  

   对应的html代码

     因为列表是js函数动态填充的,故添加按钮应该在js函数中,完整代码如下:

1  /** 2    *  注意在调用该函数时必须输入参数 3    *  查询+ 分页 4    *  */ 5     function query(_pageSize,_currentPage){ 6        // alert("------query------"); 7         //1.获取参数 8         var  startStation = $("#startStation").val(); 9         var  stopStation = $("#stopStation").val();10         //2.发送请求11         var params = {12             startStation:startStation,13             stopStation:stopStation,14             _pageSize:_pageSize,//分页需要的数据15             _currentPage:_currentPage//分页需要的数据16         };17         var url = 'http://localhost:8080/ticket2/data3';18         jQuery.ajax({19             type: 'POST',20             contentType: 'application/x-www-form-urlencoded',21             url: url,22             data: params,23             dataType: 'json',24             success: function (data) {25                 //取出列表26                var ticketList = data.list;27                 //取出分页数据28                 var currentPage= data.currentPage;29                 var count= data.count;30                 var pageSize= data.pageSize;31                 var totalPage= data.totalPage;32                 var html=''+33                         '编号'+34                         '开始车站'+35                         '到达车站'+36                         '余票数'+37                         '操作'+  //添加购票按钮38                         '';39                 //解析数据到table表中40                 for (var i=0;i
'+id+''+49 ''+startStation+''+50 ''+stopStation+''+51 ''+standby+''+52 '
'+ //添加购票按钮53 '';54 }55 //3.填充数据56 //填充列表57 $("#ticketList").html(html);58 //填充分页数据59 $("#totalPage").html(totalPage);60 $("#pageSize").html(pageSize);61 $("#count").html(count);62 $("#currentPage").html(currentPage);63 },64 error: function (data) {65 alert("失败啦");66 }67 });68 }
View Code

    购买js函数

1  function buyTicket(id){ 2        alert("buyTicket----"+id); 3        //2.发送请求 4        var params = { 5            id:id 6        }; 7        var url = 'http://localhost:8080/ticket2/buyTicket'; 8        jQuery.ajax({ 9            type: 'POST',10            contentType: 'application/x-www-form-urlencoded',11            url: url,12            data: params,13            dataType: 'json',14            success: function (data) {15                alert("成功");16                //刷新数据17                query(5,1);18            },19            error: function (data) {20                alert("失败啦");21            }22        });23    }

 

 2.控制层代码

1  /** 2      * 购票功能 3      * @param id 4      * @param req 5      * @return 6      */ 7     @RequestMapping("/buyTicket") 8     @ResponseBody  //请求数据必须写这个 9     public Result getData3(Integer id,HttpServletRequest req){10         //1.接收参数11         //2.调用业务方法12         HttpSession session = req.getSession();13         LoginUser loginUser = (LoginUser) session.getAttribute("LOGIN_IN_SESSION");14         Result objectResult = ticketService.buyTicket(id,loginUser);15         //3.控制跳转16         return  objectResult;17     }

 

3.业务层代码

@Override    public Result buyTicket(Integer id,LoginUser loginUser) {        Result result = new Result();        //1.修改原来的余票数               //查询出车票        Ticket ticket = ticketDao.queryById(id);        Integer standby = ticket.getStandby();        if (standby<=0){
//购票失败 余票不足 result.setSuccess(false); result.setCode("0001");//余票不足 result.setMsg("余票不足"); return result; } // 修改车票 ticket.setStandby(standby-1);//余票减1 ticketDao.update(ticket); //2.创建订单 车票id 用户id 购票数 订单编号(业务编号 + 时间 + 序列号 + 用户id) TicketOrder ticketOrder = new TicketOrder(); //车票id ticketOrder.setTicketId(id); //用户id session ticketOrder.setUserId(loginUser.getId()); //订单编号 String orderNUm = UUID.randomUUID().toString(); ticketOrder.setOrderNumber(orderNUm); //3.保存订单数据 tiketOrderDao.saveTicketOrder(ticketOrder); return result; }

 

4.dao层接口

   4.1对车票的查询与修改接口

1 /** 2      * 根据id查询车票对象 3      * @param id 4      * @return 5      */ 6     Ticket queryById(Integer id); 7  8     /** 9      * 根据id修改余票数修改余票数10      * @param ticket11      */12     void update(Ticket ticket);

 

    4.2对车票的查询与修改 mapper 文件

1  
2 5
6
7 UPDATE ticket SET standby=#{standby} WHERE id=#{id}8

 

 4.3对订单保存接口

1  /**2      * 保存订单3      * @param ticketOrder4      */5     void saveTicketOrder(TicketOrder ticketOrder);

 

4.4对订单保存 mapper 文件

1  
2
3 INSERT INTO ticket_order (order_number,user_id,ticket_id) VALUES (#{orderNumber},#{userId},#{ticketId})4

 

5.测试各dao

1   /** 2      * 测试 根据id查询车票 3      */ 4     @Test 5     public void testQueryById(){ 6         Ticket ticket = ticketDao.queryById(1); 7         System.out.println("ticket="+ticket); 8     } 9 10     /**11      * 测试  更新12      */13     @Test14     public void testUpdate(){15         Ticket ticket1 = new Ticket();16         ticket1.setId(1);17         ticket1.setStandby(32);18       ticketDao.update(ticket1);19     }20 21     /**22      * 测试保存订单23      */24     @Test25     public void testSave(){26         TicketOrder ticketOrder = new TicketOrder();27         ticketOrder.setOrderNumber("123456");28         ticketOrder.setUserId(5);29         ticketOrder.setTicketId(2);30         this.ticketOrder.saveTicketOrder(ticketOrder);31     }
View Code

6.新增的ticketOrder.java模型

1 package com.day02.sation.model; 2  3 /** 4  * Created by Administrator on 1/2. 5  */ 6 public class TicketOrder { 7     private Integer id; 8     private String orderNumber; 9     private Integer userId;10     private Integer ticketId;11 12     public Integer getId() {13         return id;14     }15 16     public void setId(Integer id) {17         this.id = id;18     }19 20     public String getOrderNumber() {21         return orderNumber;22     }23 24     public void setOrderNumber(String orderNumber) {25         this.orderNumber = orderNumber;26     }27 28     public Integer getUserId() {29         return userId;30     }31 32     public void setUserId(Integer userId) {33         this.userId = userId;34     }35 36     public Integer getTicketId() {37         return ticketId;38     }39 40     public void setTicketId(Integer ticketId) {41         this.ticketId = ticketId;42     }43 }
TicketOrder.java

到此购票功能完成,重启项目购票吧!

转载于:https://www.cnblogs.com/newAndHui/p/8177661.html

你可能感兴趣的文章
android多层树形结构列表学习笔记
查看>>
Android_去掉EditText控件周围橙色高亮区域
查看>>
《构建之法》第一、二、十六章阅读笔记
查看>>
arrow:让Python的日期与时间变的更好
查看>>
(转)Excel的 OleDb 连接串的格式(连接Excel 2003-2013)
查看>>
Java并发编程
查看>>
Git Stash用法
查看>>
sql server 2008学习8 sql server存储和索引结构
查看>>
Jquery radio选中
查看>>
memcached 细究(三)
查看>>
RSA System.Security.Cryptography.CryptographicException
查看>>
webservice整合spring cxf
查看>>
[解题报告] 100 - The 3n + 1 problem
查看>>
Entity Framework 学习高级篇1—改善EF代码的方法(上)
查看>>
Mybatis逆向工程配置文件详细介绍(转)
查看>>
String类的深入学习与理解
查看>>
不把DB放进容器的理由
查看>>
OnePage收集
查看>>
Java parseInt()方法
查看>>
yahoo的30条优化规则
查看>>