基于微信小程序的springboot校园班车预定系统源码和论文

校车是服务教职工和学生的交通工具,有着特殊的运行方式和用途,它一般 用于多个校区之间的往来交通,或者作为教职工上下班的交通工具。校园班车预定系统是后勤服务工作的主要组成部分,与高校教师、学生和工 作员的工作、学习和生活等息息相关。随着人口的增加,由于高校的规模逐步扩 张,车辆数目也逐步增加,造成后勤车辆管理的难度增大。同时公车私用、无车 可用等现象也存在。车辆管理系统有助于提高后勤车辆管理过程中的管理效率, 进而提高服务质量。通过信息化的手段对后勤车辆进行管理,规范管理过程中的 每个环节,并且形成一套标准,能够大大提高工作开展的效率。

为了解决上述的问题,本系统将车票购买与线上购买的方式结合了起来,系统分为后台管理系统和微信小程序,为用户及管理员提供美观、便利、合理的操作界面与信息交互,通过后端与数据库之间的交互使乘车人可以在线上完成车票的购买,修改以及退票等的操作。

其次,对当前软件开发技术进行了研究,提出了基于微信小程序平台,采用微信开发者工具、idea开发,使用MySQL数据库管理数据的开发方案。再次,采用UML建模技术对系统进行需求分析、功能设计以及类的设计;最后为给汽车售票系统提供一个管理的平台,特开发了本微信小程序汽车售票系统。用户可以随时查看汽车售票信息、在线购票等。系统功能齐全,方便易用。

经过测试和运行,系统的运用,将为微信用户提供一个更加方便、快捷、高效的平台,节省了车票购买的人力资源以及时间成本。具有实际意义和推广价值。

关键词:汽车售票 微信小程序 微信 Springboot

【589】基于微信小程序的springboot校园班车预定系统源码和论文

Abstract

The school bus is a transportation tool serving teaching staff and students. It has a special operation mode and purpose. It is generally used for the traffic between multiple campuses or as a transportation tool for teaching staff to work.The campus bus reservation system is the main component of the logistics service, which is closely related to the work, study and life of college teachers, students and staff. With the increase of population, as the scale of colleges and universities gradually expands, the number of vehicles also gradually increases, which makes the management of logistics vehicles more difficult. At the same time, there are also phenomena such as private use of public cars and no cars available. The vehicle management system is helpful to improve the management efficiency in the logistics vehicle management process, and then improve the service quality. To manage logistics vehicles by means of informatization, standardize every link in the management process, and form a set of standards, which can greatly improve the efficiency of work.

In order to solve the above problems, the system combines ticket purchase with online purchase. The system is divided into a background management system and a wechat applet to provide users and administrators with a beautiful, convenient and reasonable operation interface and information interaction. Through the interaction between the back-end and the database, passengers can complete the purchase, modification and refund of tickets online.

Secondly, the current software development technology is studied, and a development scheme based on wechat small program platform, using wechat developer tools and idea development, and using MySQL database to manage data is proposed. Thirdly, the UML modeling technology is used to analyze the system requirements, function design and class design; Finally, in order to provide a management platform for the auto ticketing system, this wechat small program auto ticketing system is specially developed. The user can view the ticket sales information and purchase tickets online at any time. The system has complete functions and is easy to use。

 

package com.poiu.ticket.domain.controller;


import com.poiu.ticket.core.entity.BasePageVO;
import com.poiu.ticket.domain.entity.User;
import com.poiu.ticket.domain.model.dto.*;
import com.poiu.ticket.domain.model.vo.UserInfoVO;
import com.poiu.ticket.domain.service.IUserService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

/**
 * <p>
 * 用户表 前端控制器
 * </p>
 *
 * @author poiu
 * @since 2023-03-21
 */
@RestController
@RequestMapping("/domain/user")
public class UserController {
    @Resource
    private IUserService userService;

    @PostMapping("/login")
    public UserInfoVO login(@RequestBody @Validated UserLoginDTO loginDTO) {
        User user = userService.login(loginDTO);
        return new UserInfoVO().setId(user.getId()).setPhone(user.getPhone()).setUserName(user.getUserName());
    }

    @PostMapping("/detail")
    public User detail(@RequestBody UserQueryDTO userQueryDTO){
        return userService.getById(userQueryDTO.getId());
    }

    @PostMapping("/register")
    public UserInfoVO register(@RequestBody @Validated UserRegisterDTO registerDTO) {
        User user = userService.register(registerDTO);
        return new UserInfoVO().setId(user.getId()).setPhone(user.getPhone()).setUserName(user.getUserName());
    }

    @PostMapping("/update")
    public void update(@RequestBody @Validated UserUpdateDTO updateDTO) {
        userService.update(updateDTO);
    }

    @PostMapping("/updatePassword")
    public void updatePassword(@RequestBody @Validated UserPasswordDTO updateDTO) {
        userService.update(updateDTO);
    }

    @PostMapping("/updateUserName")
    public void updateUserName(@RequestBody @Validated UserNameDTO updateDTO) {
        userService.update(updateDTO);
    }

    @PostMapping("/delete")
    public void delete(@RequestBody UserDeleteDTO deleteDTO) {
        userService.removeByIds(deleteDTO.getIdList());
    }

    @PostMapping("/pageUser")
    public BasePageVO pageUser(@RequestBody UserQueryDTO queryDTO){
        return userService.pageUser(queryDTO);
    }
}

 

package com.poiu.ticket.domain.controller;


import com.poiu.ticket.core.entity.BasePageVO;
import com.poiu.ticket.domain.entity.Order;
import com.poiu.ticket.domain.model.dto.OrderCreateDTO;
import com.poiu.ticket.domain.model.dto.OrderEntityDTO;
import com.poiu.ticket.domain.model.dto.OrderQueryDTO;
import com.poiu.ticket.domain.model.vo.OrderListVO;
import com.poiu.ticket.domain.service.IOrderService;
import com.poiu.ticket.domain.util.AssertUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 订单信息 前端控制器
 * </p>
 *
 * @author poiu
 * @since 2023-03-21
 */
@RestController
@RequestMapping("/domain/order")
public class OrderController {

    @Resource
    private IOrderService orderService;

    @PostMapping("/create")
    public Map<String,String> create(@RequestBody OrderCreateDTO createDTO) {
        String orderNumber = orderService.create(createDTO);
        Map<String,String> map = new HashMap<>(1);
        map.put("orderNumber",orderNumber);
        return map;
    }

    @PostMapping("/pageOrder")
    public BasePageVO pageOrder(@RequestBody OrderQueryDTO queryDTO) {
        return orderService.pageOrder(queryDTO);
    }

    @PostMapping("/listOrder")
    public List<OrderListVO> listOrder(@RequestBody OrderQueryDTO queryDTO) {
        return orderService.listOrder(queryDTO);
    }

    @PostMapping("/detail")
    public OrderListVO getDetail(@RequestBody OrderQueryDTO queryDTO){
        return orderService.getDetail(queryDTO.getId());
    }

    @PostMapping("/updateStatus")
    public void updateStatus(@RequestBody OrderEntityDTO entityDTO){
        orderService.updateStatus(entityDTO);
    }
}

package com.poiu.ticket.domain.controller;


import com.poiu.ticket.core.annotation.IgnoreGlobalResponseAdvice;
import com.poiu.ticket.domain.service.IAvatarService;
import jdk.nashorn.internal.objects.annotations.Getter;
import org.apache.tomcat.util.http.fileupload.FileUtils;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import org.springframework.web.multipart.MultipartFile;

import javax.annotation.Resource;
import java.nio.charset.StandardCharsets;

/**
 * <p>
 * 用户表 前端控制器
 * </p>
 *
 * @author poiu
 * @since 2023-03-21
 */
@RestController
@RequestMapping("/domain/avatar")
public class AvatarController {

    @Resource
    private IAvatarService avatarService;

    @PostMapping("update")
    public void update(MultipartFile file, Long userId) throws Exception {
        avatarService.insertOrUpdate(userId, file.getBytes());
    }

    @GetMapping("/getByUser")
    @IgnoreGlobalResponseAdvice
    public ResponseEntity<byte[]> getByUser(@RequestParam("userId") Long userId){
        byte[] bytes = avatarService.getByUser(userId);
        HttpHeaders headers = new HttpHeaders();
        String downloadFileName = new String("p.jpg".getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1);
        //通知浏览器以attachment(下载方式)打开图片
        headers.setContentDispositionFormData("attachment", downloadFileName);
        //application/octet-stream 二进制流数据(最常见的文件下载)
        headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
        //201 HttpStatus.CREATED
        return new ResponseEntity<>(bytes, headers, HttpStatus.CREATED);
    }
}

package com.poiu.ticket.domain.controller;


import com.poiu.ticket.core.entity.BasePageVO;
import com.poiu.ticket.domain.entity.Station;
import com.poiu.ticket.domain.model.dto.StationAddDTO;
import com.poiu.ticket.domain.model.dto.StationDeleteDTO;
import com.poiu.ticket.domain.model.dto.StationQueryDTO;
import com.poiu.ticket.domain.model.dto.StationUpdateDTO;
import com.poiu.ticket.domain.service.IStationService;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.List;

/**
 * <p>
 * 车站信息 前端控制器
 * </p>
 *
 * @author poiu
 * @since 2023-03-21
 */
@RestController
@RequestMapping("/domain/station")
public class StationController {

    @Resource
    private IStationService stationService;

    @PostMapping("/add")
    public void add(@RequestBody StationAddDTO addDTO) {
        stationService.addStation(addDTO);
    }

    @PostMapping("/update")
    public void update(@RequestBody StationUpdateDTO updateDTO) {
        stationService.update(updateDTO);
    }

    @PostMapping("/delete")
    public void delete(@RequestBody StationDeleteDTO deleteDTO) {
        stationService.removeByIds(deleteDTO.getIdList());
    }

    @PostMapping("/pageStation")
    public BasePageVO pageStation(@RequestBody StationQueryDTO StationQueryDTO) {
        return stationService.pageStation(StationQueryDTO);
    }

    @PostMapping("/listStation")
    public List<Station> listStation(){
        return stationService.list();
    }
}

  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序猿毕业分享网

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

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

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

打赏作者

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

抵扣说明:

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

余额充值