• 计算机毕业设计 基于Web铁路订票管理系统 火车订票管理系统的设计与实现 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试


    🍊作者:计算机编程-吉哥
    🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。
    🍊心愿:点赞 👍 收藏 ⭐评论 📝
    🍅 文末获取源码联系

    👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~
    Java毕业设计项目~热门选题推荐《1000套》

    目录

    1.技术选型

    2.数据库表结构

    3.开发工具

    4.功能

    4.1【角色】

    4.2【前台功能模块】

    4.3【后台功能模块】

    5.项目演示截图

    5.1 首页

    5.2 火车信息

    5.3 火车预订

    5.4 预订订单

    5.5 个人中心

    5.6 后台登录

    5.7 车票预订管理

    5.8 火车信息管理

    5.9 用户车票退票管理

    6.数据库文件设计

    7.核心代码 

    7.1 车票预订Controller

    7.2 车票预定Service

    7.3 车票预定ServiceImpl

    7.4 车票预定DAO

    8.参考文档


    1.技术选型

    springboot、mybatisplus、vue、elementui、html、css、js、mysql、jdk1.8

    2.数据库表结构

    15张 

    3.开发工具

    idea、navicat

    4.功能

    4.1【角色】

    管理员、用户

    4.2【前台功能模块】

    • 登录注册
    • 首页
    • 火车信息
    • 公告资讯
    • 个人中心
    • 后台管理

    4.3【后台功能模块】

    • 登录
    • 首页
    • 个人中心
    • 用户管理
    • 火车类型管理
    • 火车信息管理
    • 车票预订管理
    • 车票退票管理
    • 系统管理

    5.项目演示截图

    5.1 首页

    5.2 火车信息

     

    5.3 火车预订

     

    5.4 预订订单

     

    5.5 个人中心

     

    5.6 后台登录

     

    5.7 车票预订管理

     

    5.8 火车信息管理

     

    5.9 用户车票退票管理

     

    6.数据库文件设计

    1. CREATE TABLE `aboutus` (
    2. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    3. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    4. `title` varchar(200) NOT NULL COMMENT '标题',
    5. `subtitle` varchar(200) DEFAULT NULL COMMENT '副标题',
    6. `content` longtext NOT NULL COMMENT '内容',
    7. `picture1` longtext COMMENT '图片1',
    8. `picture2` longtext COMMENT '图片2',
    9. `picture3` longtext COMMENT '图片3',
    10. PRIMARY KEY (`id`)
    11. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='关于我们';
    12. CREATE TABLE `bupiaoxinxi` (
    13. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    14. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    15. `bupiaobianhao` varchar(200) DEFAULT NULL COMMENT '补票编号',
    16. `bupiaoshijian` datetime DEFAULT NULL COMMENT '补票时间',
    17. `checihao` varchar(200) DEFAULT NULL COMMENT '车次号',
    18. `chepiaojiage` varchar(200) DEFAULT NULL COMMENT '车票价格',
    19. `shangchedian` varchar(200) DEFAULT NULL COMMENT '上车点',
    20. `xiachedian` varchar(200) DEFAULT NULL COMMENT '下车点',
    21. `bupiaobeizhu` longtext COMMENT '补票备注',
    22. `yonghuzhanghao` varchar(200) DEFAULT NULL COMMENT '用户账号',
    23. `yonghuxingming` varchar(200) DEFAULT NULL COMMENT '用户姓名',
    24. `sfsh` varchar(200) DEFAULT '待审核' COMMENT '是否审核',
    25. `shhf` longtext COMMENT '审核回复',
    26. `ispay` varchar(200) DEFAULT '未支付' COMMENT '是否支付',
    27. PRIMARY KEY (`id`),
    28. UNIQUE KEY `bupiaobianhao` (`bupiaobianhao`)
    29. ) ENGINE=InnoDB AUTO_INCREMENT=79 DEFAULT CHARSET=utf8 COMMENT='补票信息';
    30. CREATE TABLE `chepiaotuipiao` (
    31. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    32. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    33. `tuipiaobianhao` varchar(200) DEFAULT NULL COMMENT '退票编号',
    34. `chexuhao` varchar(200) DEFAULT NULL COMMENT '车序号',
    35. `huocheleixing` varchar(200) DEFAULT NULL COMMENT '火车类型',
    36. `checihao` varchar(200) DEFAULT NULL COMMENT '车次号',
    37. `qidianzhan` varchar(200) NOT NULL COMMENT '起点站',
    38. `zhongdianzhan` varchar(200) NOT NULL COMMENT '终点站',
    39. `kaicheshijian` datetime NOT NULL COMMENT '开车时间',
    40. `daozhanshijian` datetime NOT NULL COMMENT '到站时间',
    41. `chepiaoleixing` varchar(200) DEFAULT NULL COMMENT '车票类型',
    42. `zuoweileixing` varchar(200) DEFAULT NULL COMMENT '座位类型',
    43. `chepiaojiage` int(11) NOT NULL COMMENT '车票价格',
    44. `tuipiaoshijian` datetime DEFAULT NULL COMMENT '退票时间',
    45. `tuipiaobeizhu` longtext COMMENT '退票备注',
    46. `yonghuzhanghao` varchar(200) DEFAULT NULL COMMENT '用户账号',
    47. `yonghuxingming` varchar(200) DEFAULT NULL COMMENT '用户姓名',
    48. `sfsh` varchar(200) DEFAULT '待审核' COMMENT '是否审核',
    49. `shhf` longtext COMMENT '审核回复',
    50. PRIMARY KEY (`id`),
    51. UNIQUE KEY `tuipiaobianhao` (`tuipiaobianhao`)
    52. ) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8 COMMENT='车票退票';
    53. CREATE TABLE `chepiaoyuding` (
    54. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    55. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    56. `yudingbianhao` varchar(200) DEFAULT NULL COMMENT '预订编号',
    57. `chexuhao` varchar(200) DEFAULT NULL COMMENT '车序号',
    58. `huocheleixing` varchar(200) DEFAULT NULL COMMENT '火车类型',
    59. `checihao` varchar(200) DEFAULT NULL COMMENT '车次号',
    60. `qidianzhan` varchar(200) NOT NULL COMMENT '起点站',
    61. `zhongdianzhan` varchar(200) NOT NULL COMMENT '终点站',
    62. `kaicheshijian` datetime NOT NULL COMMENT '开车时间',
    63. `daozhanshijian` datetime NOT NULL COMMENT '到站时间',
    64. `chepiaoleixing` varchar(200) DEFAULT NULL COMMENT '车票类型',
    65. `zuoweileixing` varchar(200) DEFAULT NULL COMMENT '座位类型',
    66. `chepiaojiage` int(11) NOT NULL COMMENT '车票价格',
    67. `chepiaoshu` int(11) NOT NULL COMMENT '车票',
    68. `yudingshijian` datetime DEFAULT NULL COMMENT '预订时间',
    69. `yudingbeizhu` longtext COMMENT '预订备注',
    70. `yonghuzhanghao` varchar(200) DEFAULT NULL COMMENT '用户账号',
    71. `yonghuxingming` varchar(200) DEFAULT NULL COMMENT '用户姓名',
    72. `sfsh` varchar(200) DEFAULT '待审核' COMMENT '是否审核',
    73. `shhf` longtext COMMENT '审核回复',
    74. `ispay` varchar(200) DEFAULT '未支付' COMMENT '是否支付',
    75. PRIMARY KEY (`id`),
    76. UNIQUE KEY `yudingbianhao` (`yudingbianhao`)
    77. ) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8 COMMENT='车票预订';
    78. CREATE TABLE `config` (
    79. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    80. `name` varchar(100) NOT NULL COMMENT '配置参数名称',
    81. `value` varchar(100) DEFAULT NULL COMMENT '配置参数值',
    82. PRIMARY KEY (`id`)
    83. ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='配置文件';
    84. CREATE TABLE `discusshuochexinxi` (
    85. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    86. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    87. `refid` bigint(20) NOT NULL COMMENT '关联表id',
    88. `userid` bigint(20) NOT NULL COMMENT '用户id',
    89. `avatarurl` longtext COMMENT '头像',
    90. `nickname` varchar(200) DEFAULT NULL COMMENT '用户名',
    91. `content` longtext NOT NULL COMMENT '评论内容',
    92. `reply` longtext COMMENT '回复内容',
    93. PRIMARY KEY (`id`)
    94. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='火车信息评论表';
    95. CREATE TABLE `huocheleixing` (
    96. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    97. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    98. `huocheleixing` varchar(200) DEFAULT NULL COMMENT '火车类型',
    99. PRIMARY KEY (`id`)
    100. ) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8 COMMENT='火车类型';
    101. CREATE TABLE `news` (
    102. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    103. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    104. `title` varchar(200) NOT NULL COMMENT '标题',
    105. `introduction` longtext COMMENT '简介',
    106. `picture` longtext NOT NULL COMMENT '图片',
    107. `content` longtext NOT NULL COMMENT '内容',
    108. PRIMARY KEY (`id`)
    109. ) ENGINE=InnoDB AUTO_INCREMENT=99 DEFAULT CHARSET=utf8 COMMENT='公告资讯';
    110. CREATE TABLE `storeup` (
    111. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    112. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    113. `userid` bigint(20) NOT NULL COMMENT '用户id',
    114. `refid` bigint(20) DEFAULT NULL COMMENT '商品id',
    115. `tablename` varchar(200) DEFAULT NULL COMMENT '表名',
    116. `name` varchar(200) NOT NULL COMMENT '名称',
    117. `picture` longtext NOT NULL COMMENT '图片',
    118. `type` varchar(200) DEFAULT '1' COMMENT '类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注)',
    119. `inteltype` varchar(200) DEFAULT NULL COMMENT '推荐类型',
    120. `remark` varchar(200) DEFAULT NULL COMMENT '备注',
    121. PRIMARY KEY (`id`)
    122. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='收藏表';
    123. CREATE TABLE `systemintro` (
    124. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    125. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    126. `title` varchar(200) NOT NULL COMMENT '标题',
    127. `subtitle` varchar(200) DEFAULT NULL COMMENT '副标题',
    128. `content` longtext NOT NULL COMMENT '内容',
    129. `picture1` longtext COMMENT '图片1',
    130. `picture2` longtext COMMENT '图片2',
    131. `picture3` longtext COMMENT '图片3',
    132. PRIMARY KEY (`id`)
    133. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='关于我们';
    134. CREATE TABLE `users` (
    135. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    136. `username` varchar(100) NOT NULL COMMENT '用户名',
    137. `password` varchar(100) NOT NULL COMMENT '密码',
    138. `role` varchar(100) DEFAULT '管理员' COMMENT '角色',
    139. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
    140. PRIMARY KEY (`id`)
    141. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='用户表';
    142. CREATE TABLE `xiachexinxi` (
    143. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    144. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    145. `xiachebianhao` varchar(200) DEFAULT NULL COMMENT '下车编号',
    146. `xiachezhandian` varchar(200) DEFAULT NULL COMMENT '下车站点',
    147. `xiacheshijian` datetime DEFAULT NULL COMMENT '下车时间',
    148. `xiachebeizhu` longtext COMMENT '下车备注',
    149. `yonghuzhanghao` varchar(200) DEFAULT NULL COMMENT '用户账号',
    150. `yonghuxingming` varchar(200) DEFAULT NULL COMMENT '用户姓名',
    151. PRIMARY KEY (`id`),
    152. UNIQUE KEY `xiachebianhao` (`xiachebianhao`)
    153. ) ENGINE=InnoDB AUTO_INCREMENT=69 DEFAULT CHARSET=utf8 COMMENT='下车信息';
    154. CREATE TABLE `yonghu` (
    155. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    156. `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    157. `yonghuzhanghao` varchar(200) NOT NULL COMMENT '用户账号',
    158. `mima` varchar(200) NOT NULL COMMENT '密码',
    159. `yonghuxingming` varchar(200) NOT NULL COMMENT '用户姓名',
    160. `xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
    161. `yonghudianhua` varchar(200) DEFAULT NULL COMMENT '用户电话',
    162. `touxiang` longtext COMMENT '头像',
    163. PRIMARY KEY (`id`),
    164. UNIQUE KEY `yonghuzhanghao` (`yonghuzhanghao`)
    165. ) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8 COMMENT='用户';

    7.核心代码 

    7.1 车票预订Controller

    1. package com.controller;
    2. /**
    3. * 车票预订
    4. * 后端接口
    5. * @author 计算机编程-吉哥
    6. */
    7. @RestController
    8. @RequestMapping("/chepiaoyuding")
    9. public class ChepiaoyudingController {
    10. @Autowired
    11. private ChepiaoyudingService chepiaoyudingService;
    12. /**
    13. * 后端列表
    14. */
    15. @RequestMapping("/page")
    16. public R page(@RequestParam Map params,ChepiaoyudingEntity chepiaoyuding,
    17. HttpServletRequest request){
    18. String tableName = request.getSession().getAttribute("tableName").toString();
    19. if(tableName.equals("yonghu")) {
    20. chepiaoyuding.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
    21. }
    22. EntityWrapper ew = new EntityWrapper();
    23. PageUtils page = chepiaoyudingService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, chepiaoyuding), params), params));
    24. return R.ok().put("data", page);
    25. }
    26. /**
    27. * 前端列表
    28. */
    29. @IgnoreAuth
    30. @RequestMapping("/list")
    31. public R list(@RequestParam Map params,ChepiaoyudingEntity chepiaoyuding,
    32. HttpServletRequest request){
    33. EntityWrapper ew = new EntityWrapper();
    34. PageUtils page = chepiaoyudingService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, chepiaoyuding), params), params));
    35. return R.ok().put("data", page);
    36. }
    37. /**
    38. * 列表
    39. */
    40. @RequestMapping("/lists")
    41. public R list( ChepiaoyudingEntity chepiaoyuding){
    42. EntityWrapper ew = new EntityWrapper();
    43. ew.allEq(MPUtil.allEQMapPre( chepiaoyuding, "chepiaoyuding"));
    44. return R.ok().put("data", chepiaoyudingService.selectListView(ew));
    45. }
    46. /**
    47. * 查询
    48. */
    49. @RequestMapping("/query")
    50. public R query(ChepiaoyudingEntity chepiaoyuding){
    51. EntityWrapper< ChepiaoyudingEntity> ew = new EntityWrapper< ChepiaoyudingEntity>();
    52. ew.allEq(MPUtil.allEQMapPre( chepiaoyuding, "chepiaoyuding"));
    53. ChepiaoyudingView chepiaoyudingView = chepiaoyudingService.selectView(ew);
    54. return R.ok("查询车票预订成功").put("data", chepiaoyudingView);
    55. }
    56. /**
    57. * 后端详情
    58. */
    59. @RequestMapping("/info/{id}")
    60. public R info(@PathVariable("id") Long id){
    61. ChepiaoyudingEntity chepiaoyuding = chepiaoyudingService.selectById(id);
    62. return R.ok().put("data", chepiaoyuding);
    63. }
    64. /**
    65. * 前端详情
    66. */
    67. @IgnoreAuth
    68. @RequestMapping("/detail/{id}")
    69. public R detail(@PathVariable("id") Long id){
    70. ChepiaoyudingEntity chepiaoyuding = chepiaoyudingService.selectById(id);
    71. return R.ok().put("data", chepiaoyuding);
    72. }
    73. /**
    74. * 后端保存
    75. */
    76. @RequestMapping("/save")
    77. public R save(@RequestBody ChepiaoyudingEntity chepiaoyuding, HttpServletRequest request){
    78. chepiaoyuding.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    79. //ValidatorUtils.validateEntity(chepiaoyuding);
    80. chepiaoyudingService.insert(chepiaoyuding);
    81. return R.ok();
    82. }
    83. /**
    84. * 前端保存
    85. */
    86. @RequestMapping("/add")
    87. public R add(@RequestBody ChepiaoyudingEntity chepiaoyuding, HttpServletRequest request){
    88. chepiaoyuding.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    89. //ValidatorUtils.validateEntity(chepiaoyuding);
    90. chepiaoyudingService.insert(chepiaoyuding);
    91. return R.ok();
    92. }
    93. /**
    94. * 修改
    95. */
    96. @RequestMapping("/update")
    97. @Transactional
    98. public R update(@RequestBody ChepiaoyudingEntity chepiaoyuding, HttpServletRequest request){
    99. //ValidatorUtils.validateEntity(chepiaoyuding);
    100. chepiaoyudingService.updateById(chepiaoyuding);//全部更新
    101. return R.ok();
    102. }
    103. /**
    104. * 删除
    105. */
    106. @RequestMapping("/delete")
    107. public R delete(@RequestBody Long[] ids){
    108. chepiaoyudingService.deleteBatchIds(Arrays.asList(ids));
    109. return R.ok();
    110. }
    111. /**
    112. * 提醒接口
    113. */
    114. @RequestMapping("/remind/{columnName}/{type}")
    115. public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
    116. @PathVariable("type") String type,@RequestParam Map map) {
    117. map.put("column", columnName);
    118. map.put("type", type);
    119. if(type.equals("2")) {
    120. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    121. Calendar c = Calendar.getInstance();
    122. Date remindStartDate = null;
    123. Date remindEndDate = null;
    124. if(map.get("remindstart")!=null) {
    125. Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
    126. c.setTime(new Date());
    127. c.add(Calendar.DAY_OF_MONTH,remindStart);
    128. remindStartDate = c.getTime();
    129. map.put("remindstart", sdf.format(remindStartDate));
    130. }
    131. if(map.get("remindend")!=null) {
    132. Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
    133. c.setTime(new Date());
    134. c.add(Calendar.DAY_OF_MONTH,remindEnd);
    135. remindEndDate = c.getTime();
    136. map.put("remindend", sdf.format(remindEndDate));
    137. }
    138. }
    139. Wrapper wrapper = new EntityWrapper();
    140. if(map.get("remindstart")!=null) {
    141. wrapper.ge(columnName, map.get("remindstart"));
    142. }
    143. if(map.get("remindend")!=null) {
    144. wrapper.le(columnName, map.get("remindend"));
    145. }
    146. String tableName = request.getSession().getAttribute("tableName").toString();
    147. if(tableName.equals("yonghu")) {
    148. wrapper.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
    149. }
    150. int count = chepiaoyudingService.selectCount(wrapper);
    151. return R.ok().put("count", count);
    152. }
    153. /**
    154. * (按值统计)
    155. */
    156. @RequestMapping("/value/{xColumnName}/{yColumnName}")
    157. public R value(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName,HttpServletRequest request) {
    158. Map params = new HashMap();
    159. params.put("xColumn", xColumnName);
    160. params.put("yColumn", yColumnName);
    161. EntityWrapper ew = new EntityWrapper();
    162. String tableName = request.getSession().getAttribute("tableName").toString();
    163. if(tableName.equals("yonghu")) {
    164. ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
    165. }
    166. List> result = chepiaoyudingService.selectValue(params, ew);
    167. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    168. for(Map m : result) {
    169. for(String k : m.keySet()) {
    170. if(m.get(k) instanceof Date) {
    171. m.put(k, sdf.format((Date)m.get(k)));
    172. }
    173. }
    174. }
    175. return R.ok().put("data", result);
    176. }
    177. /**
    178. * (按值统计)时间统计类型
    179. */
    180. @RequestMapping("/value/{xColumnName}/{yColumnName}/{timeStatType}")
    181. public R valueDay(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,HttpServletRequest request) {
    182. Map params = new HashMap();
    183. params.put("xColumn", xColumnName);
    184. params.put("yColumn", yColumnName);
    185. params.put("timeStatType", timeStatType);
    186. EntityWrapper ew = new EntityWrapper();
    187. String tableName = request.getSession().getAttribute("tableName").toString();
    188. if(tableName.equals("yonghu")) {
    189. ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
    190. }
    191. List> result = chepiaoyudingService.selectTimeStatValue(params, ew);
    192. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    193. for(Map m : result) {
    194. for(String k : m.keySet()) {
    195. if(m.get(k) instanceof Date) {
    196. m.put(k, sdf.format((Date)m.get(k)));
    197. }
    198. }
    199. }
    200. return R.ok().put("data", result);
    201. }
    202. /**
    203. * 分组统计
    204. */
    205. @RequestMapping("/group/{columnName}")
    206. public R group(@PathVariable("columnName") String columnName,HttpServletRequest request) {
    207. Map params = new HashMap();
    208. params.put("column", columnName);
    209. EntityWrapper ew = new EntityWrapper();
    210. String tableName = request.getSession().getAttribute("tableName").toString();
    211. if(tableName.equals("yonghu")) {
    212. ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
    213. }
    214. List> result = chepiaoyudingService.selectGroup(params, ew);
    215. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    216. for(Map m : result) {
    217. for(String k : m.keySet()) {
    218. if(m.get(k) instanceof Date) {
    219. m.put(k, sdf.format((Date)m.get(k)));
    220. }
    221. }
    222. }
    223. return R.ok().put("data", result);
    224. }
    225. /**
    226. * 总数量
    227. */
    228. @RequestMapping("/count")
    229. public R count(@RequestParam Map params,ChepiaoyudingEntity chepiaoyuding, HttpServletRequest request){
    230. String tableName = request.getSession().getAttribute("tableName").toString();
    231. if(tableName.equals("yonghu")) {
    232. chepiaoyuding.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
    233. }
    234. EntityWrapper ew = new EntityWrapper();
    235. int count = chepiaoyudingService.selectCount(MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, chepiaoyuding), params), params));
    236. return R.ok().put("data", count);
    237. }
    238. }

    7.2 车票预定Service

    1. package com.service;
    2. /**
    3. * 车票预订
    4. *
    5. * @author 计算机编程-吉哥
    6. */
    7. public interface ChepiaoyudingService extends IService {
    8. PageUtils queryPage(Map params);
    9. List selectListVO(Wrapper wrapper);
    10. ChepiaoyudingVO selectVO(@Param("ew") Wrapper wrapper);
    11. List selectListView(Wrapper wrapper);
    12. ChepiaoyudingView selectView(@Param("ew") Wrapper wrapper);
    13. PageUtils queryPage(Map params,Wrapper wrapper);
    14. List> selectValue(Map params,Wrapper wrapper);
    15. List> selectTimeStatValue(Map params,Wrapper wrapper);
    16. List> selectGroup(Map params,Wrapper wrapper);
    17. }

    7.3 车票预定ServiceImpl

    1. package com.service.impl;
    2. import org.springframework.stereotype.Service;
    3. import java.util.Map;
    4. import java.util.List;
    5. import com.baomidou.mybatisplus.mapper.Wrapper;
    6. import com.baomidou.mybatisplus.mapper.EntityWrapper;
    7. import com.baomidou.mybatisplus.plugins.Page;
    8. import com.baomidou.mybatisplus.service.impl.ServiceImpl;
    9. import com.utils.PageUtils;
    10. import com.utils.Query;
    11. import com.dao.ChepiaoyudingDao;
    12. import com.entity.ChepiaoyudingEntity;
    13. import com.service.ChepiaoyudingService;
    14. import com.entity.vo.ChepiaoyudingVO;
    15. import com.entity.view.ChepiaoyudingView;
    16. @Service("chepiaoyudingService")
    17. public class ChepiaoyudingServiceImpl extends ServiceImpl implements ChepiaoyudingService {
    18. @Override
    19. public PageUtils queryPage(Map params) {
    20. Page page = this.selectPage(
    21. new Query(params).getPage(),
    22. new EntityWrapper()
    23. );
    24. return new PageUtils(page);
    25. }
    26. @Override
    27. public PageUtils queryPage(Map params, Wrapper wrapper) {
    28. Page page =new Query(params).getPage();
    29. page.setRecords(baseMapper.selectListView(page,wrapper));
    30. PageUtils pageUtil = new PageUtils(page);
    31. return pageUtil;
    32. }
    33. @Override
    34. public List selectListVO(Wrapper wrapper) {
    35. return baseMapper.selectListVO(wrapper);
    36. }
    37. @Override
    38. public ChepiaoyudingVO selectVO(Wrapper wrapper) {
    39. return baseMapper.selectVO(wrapper);
    40. }
    41. @Override
    42. public List selectListView(Wrapper wrapper) {
    43. return baseMapper.selectListView(wrapper);
    44. }
    45. @Override
    46. public ChepiaoyudingView selectView(Wrapper wrapper) {
    47. return baseMapper.selectView(wrapper);
    48. }
    49. @Override
    50. public List> selectValue(Map params, Wrapper wrapper) {
    51. return baseMapper.selectValue(params, wrapper);
    52. }
    53. @Override
    54. public List> selectTimeStatValue(Map params, Wrapper wrapper) {
    55. return baseMapper.selectTimeStatValue(params, wrapper);
    56. }
    57. @Override
    58. public List> selectGroup(Map params, Wrapper wrapper) {
    59. return baseMapper.selectGroup(params, wrapper);
    60. }
    61. }

     7.4 车票预定DAO

    1. package com.dao;
    2. /**
    3. * 车票预订
    4. *
    5. * @author 计算机编程-吉哥
    6. */
    7. public interface ChepiaoyudingDao extends BaseMapper {
    8. List selectListVO(@Param("ew") Wrapper wrapper);
    9. ChepiaoyudingVO selectVO(@Param("ew") Wrapper wrapper);
    10. List selectListView(@Param("ew") Wrapper wrapper);
    11. List selectListView(Pagination page,@Param("ew") Wrapper wrapper);
    12. ChepiaoyudingView selectView(@Param("ew") Wrapper wrapper);
    13. List> selectValue(@Param("params") Map params,@Param("ew") Wrapper wrapper);
    14. List> selectTimeStatValue(@Param("params") Map params,@Param("ew") Wrapper wrapper);
    15. List> selectGroup(@Param("params") Map params,@Param("ew") Wrapper wrapper);
    16. }

    8.参考文档

    你可能还有感兴趣的项目👇🏻👇🏻👇🏻

    更多项目推荐:计算机毕业设计项目

    如果大家有任何疑虑,请在下方咨询或评论

  • 相关阅读:
    抗疫逆行者HTML网页作业 感动人物网页代码成品 最美逆行者网页模板 致敬疫情感动人物网页设计制作
    [附源码]java毕业设计高铁售票管理系统
    国庆《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书行将售罄
    深度学习·理论篇(2023版)·第004篇深度学习和概率论基础01:使用大白话举例说明条件概率独立概率+期望值方差+协方差+熵和平均编码长度的关系
    Vue自定义指令
    [vue3+elementuiplus]el-select下拉框会自动触发校验规则的最强解决方案
    【每日一题】658. 找到 K 个最接近的元素
    【深度学习实验】线性模型(二):使用NumPy实现线性模型:梯度下降法
    使用 Python 进行 GUI 掷骰子模拟
    mysql8.0.28下载和安装详细教程,适配win11
  • 原文地址:https://blog.csdn.net/weixin_51966461/article/details/133830720