Laravel-小程序买票之生成订单并支付

本文详细介绍了如何使用 Laravel 框架为小程序开发购票功能,涵盖了从生成订单到对接支付系统的整个过程,重点讨论了利用 Redis 缓存优化数据库操作的策略。
摘要由CSDN通过智能技术生成
<?php

namespace App\Http\Controllers\api;

use App\Http\Controllers\Controller;
use App\Models\ych\Concert;
use App\Models\ych\Hall;
use App\Models\ych\Seat;
use App\Models\ych\Ticket;
use App\Models\ych\User;
use App\Service\SendCode;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class ConcertController extends Controller
{
    public function order(Request $request)
    {
        //生成订单了,根据座位和时间戳的拼接生成唯一的票号。
        $id = $request->get('id');// ych列表id
        $uid = $request['uid'];
        $sid = $request->get('sid');//厅id
        $data = $this->getTicketNum($id,$sid);
        $hall = Hall::where('id',$sid)->first();//大厅
        $seat =  array_rand($data,1);//随机取出一个
        $seat = $data[$seat];

        DB::beginTransaction();

        try {
            Seat::where(['id'=>$sid,'seat'=>$seat])->update(['status'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是一个简单的 Java Swing 实现登录买票小程序的基本代码: ```java import javax.swing.*; import java.awt.*; import java.awt.event.*; public class TicketBookingApp extends JFrame implements ActionListener { private JLabel usernameLabel, passwordLabel; private JTextField usernameTextField; private JPasswordField passwordField; private JButton loginButton; public TicketBookingApp() { //设置窗口标题 setTitle("登录买票小程序"); //创建登录表单 usernameLabel = new JLabel("用户名:"); passwordLabel = new JLabel("密码:"); usernameTextField = new JTextField(20); passwordField = new JPasswordField(20); loginButton = new JButton("登录"); loginButton.addActionListener(this); //添加组件到登录表单 JPanel panel = new JPanel(new GridLayout(3, 2)); panel.add(usernameLabel); panel.add(usernameTextField); panel.add(passwordLabel); panel.add(passwordField); panel.add(new JLabel()); panel.add(loginButton); //添加登录表单到窗口 getContentPane().add(panel, BorderLayout.CENTER); //设置窗口大小和关闭行为 setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } @Override public void actionPerformed(ActionEvent e) { //获取用户名和密码 String username = usernameTextField.getText().trim(); String password = new String(passwordField.getPassword()); //验证用户名和密码 if(username.equals("admin") && password.equals("123456")) { //登录成功,打开买票窗口 dispose(); new TicketBookingWindow(); } else { //登录失败,提示错误信息 JOptionPane.showMessageDialog(this, "用户名或密码错误!", "登录失败", JOptionPane.ERROR_MESSAGE); } } public static void main(String[] args) { //启动应用程序 new TicketBookingApp(); } } class TicketBookingWindow extends JFrame { public TicketBookingWindow() { //设置窗口标题 setTitle("买票"); //创建买票表单 JLabel fromLabel = new JLabel("出发地:"); JLabel toLabel = new JLabel("目的地:"); JLabel dateLabel = new JLabel("日期:"); JTextField fromTextField = new JTextField(20); JTextField toTextField = new JTextField(20); JTextField dateTextField = new JTextField(20); JButton bookButton = new JButton("预订"); //添加组件到买票表单 JPanel panel = new JPanel(new GridLayout(4, 2)); panel.add(fromLabel); panel.add(fromTextField); panel.add(toLabel); panel.add(toTextField); panel.add(dateLabel); panel.add(dateTextField); panel.add(new JLabel()); panel.add(bookButton); //添加买票表单到窗口 getContentPane().add(panel, BorderLayout.CENTER); //设置窗口大小和关闭行为 setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } } ``` 这个程序包含两个窗口:登录窗口和买票窗口。在登录窗口中,用户需要输入用户名和密码才能进入买票窗口。在买票窗口中,用户可以输入出发地、目的地和日期,然后点击预订按钮购买车票。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悄悄顽皮的猴头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值