/*
这个控制器主要处理与订单相关的后端操作,包括订单列表、详情、保存、修改、删除、统计等。以下是每个部分的详细解释:
1. **后端列表 (`page` 方法)**:
* 功能:获取订单列表并进行分页。根据当前用户角色(是否为管理员)来决定是获取所有订单还是仅获取当前用户相关的订单。
2. **前端列表 (`list` 方法)**:
* 功能:提供前端的订单列表接口,不检查用户角色。
3. **列表 (`lists` 方法)**:
* 功能:根据输入的订单条件查询订单列表。
4. **查询 (`query` 方法)**:
* 功能:根据输入的订单条件查询订单详情。
5. **后端详情 (`info` 方法) 和 前端详情 (`detail` 方法)**:
* 功能:根据订单ID查询订单的具体详情。
6. **后端保存 (`save` 方法) 和 前端保存 (`add` 方法)**:
* 功能:保存新的订单数据到数据库,并设置用户ID(从session中获取)。
7. **获取用户密保 (`security` 方法)**:
* 功能:根据用户名查询用户信息(可能包含敏感信息如密码等)。
8. **修改 (`update` 方法)**:
* 功能:更新订单数据,会验证输入的数据是否合法。
9. **删除 (`delete` 方法)**:
* 功能:根据输入的ID列表删除多个订单。
10. **前端智能排序 (`autoSort` 方法)**:
* 功能:根据输入的参数对订单进行智能排序并返回分页数据。
11. **按值统计**:
* 这几个方法主要用于按不同的字段进行统计,例如按某个字段的值进行统计,按时间进行统计等。结果会进行格式化处理,例如将日期格式化为"yyyy-MM-dd"格式。
12. **分组统计 (`group` 方法)**:
* 根据指定的列进行分组统计,结果中的日期也会被格式化为"yyyy-MM-dd"格式。
总的来说,这个控制器提供了与订单相关的各种操作,如查询、添加、修改、删除、统计等。
*/
package com.controller;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;
import com.entity.OrdersEntity;
import com.entity.view.OrdersView;
import com.service.OrdersService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MPUtil;
import com.utils.MapUtils;
import com.utils.CommonUtil;
import java.io.IOException;
/**
* 订单
* 后端接口
* @author
* @email
* @date 2024-03-08 20:23:45
*/
@RestController
@RequestMapping("/orders")
public class OrdersController {
@Autowired
private OrdersService ordersService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,OrdersEntity orders,
HttpServletRequest request){
if(!request.getSession().getAttribute("role").toString().equals("管理员")) {
orders.setUserid((Long)request.getSession().getAttribute("userId"));
}
EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();
PageUtils page = ordersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, orders), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,OrdersEntity orders,
HttpServletRequest request){
EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();
PageUtils page = ordersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, orders), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( OrdersEntity orders){
EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();
ew.allEq(MPUtil.allEQMapPre( orders, "orders"));
return R.ok().put("data", ordersService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(OrdersEntity orders){
EntityWrapper< OrdersEntity> ew = new EntityWrapper< OrdersEntity>();
ew.allEq(MPUtil.allEQMapPre( orders, "orders"));
OrdersView ordersView = ordersService.selectView(ew);
return R.ok("查询订单成功").put("data", ordersView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
OrdersEntity orders = ordersService.selectById(id);
return R.ok().put("data", orders);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
OrdersEntity orders = ordersService.selectById(id);
return R.ok().put("data", orders);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody OrdersEntity orders, HttpServletRequest request){
orders.setUserid((Long)request.getSession().getAttribute("userId"));
ordersService.insert(orders);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody OrdersEntity orders, HttpServletRequest request){
ordersService.insert(orders);
return R.ok();
}
/**
* 获取用户密保
*/
@RequestMapping("/security")
@IgnoreAuth
public R security(@RequestParam String username){
OrdersEntity orders = ordersService.selectOne(new EntityWrapper<OrdersEntity>().eq("", username));
return R.ok().put("data", orders);
}
/**
* 修改
*/
@RequestMapping("/update")
@Transactional
@IgnoreAuth
public R update(@RequestBody OrdersEntity orders, HttpServletRequest request){
ordersService.updateById(orders);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
ordersService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 前端智能排序
*/
@IgnoreAuth
@RequestMapping("/autoSort")
public R autoSort(@RequestParam Map<String, Object> params,OrdersEntity orders, HttpServletRequest request,String pre){
EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();
Map<String, Object> newMap = new HashMap<String, Object>();
Map<String, Object> param = new HashMap<String, Object>();
Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, Object> entry = it.next();
String key = entry.getKey();
String newKey = entry.getKey();
if (pre.endsWith(".")) {
newMap.put(pre + newKey, entry.getValue());
} else if (StringUtils.isEmpty(pre)) {
newMap.put(newKey, entry.getV
没有合适的资源?快使用搜索试试~ 我知道了~
(源码)基于Spring Boot框架的车票管理系统.zip

共620个文件
svg:159个
java:124个
vue:95个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 82 浏览量
2025-06-10
01:48:41
上传
评论
收藏 23.94MB ZIP 举报
温馨提示
# 基于Spring Boot框架的车票管理系统 ## 项目简介 本项目是一个基于Web的车票管理系统,采用Spring Boot框架,使用Java语言编写。系统实现了车票的管理、查询、预定等功能,同时涵盖用户管理、系统设置等模块。 ## 项目的主要特性和功能 1. 票务管理可进行票务的添加、修改、删除。 2. 票务查询支持按日期、车次、票价等多种方式查询。 3. 票务预定用户能够执行票务预定操作。 4. 用户管理包含用户注册、登录、信息修改功能。 5. 系统设置管理员可进行系统参数设置,如修改密码、更换背景图。 6. 智能排序部分功能支持智能排序,如在线客服可按点击时间排序。 7. 通用接口提供获取表列列表、获取单条记录等通用数据查询和统计功能。 ## 安装使用步骤(假设已下载项目源码文件) 1. 配置Java开发环境确保JDK1.8正确安装。 2. 安装并配置Tomcat服务器安装Tomcat7并完成相关配置。
资源推荐
资源详情
资源评论


























收起资源包目录





































































































共 620 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论


t0_54program
- 粉丝: 1492
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 利用微博推广旅游网站的技巧(1).docx
- (标准版)电子商务代运营合作协议(5)(1).doc
- jspm基于Java的汽车销售系统(源码、数据库文档、说明文档、论文).zip
- 交规划发[XXXX]192号-公路水路交通运输信息化“十二五(1).docx
- 2017年计算机一级Photoshop单选试题【有答案】(1).docx
- 互联网+翻转课堂在中职数学教学中的应用(1).docx
- 电子商务对多行业竞争的结构影响--学位论文(1).doc
- 经典指标:龙腾四海下载好股票网股票软件-通达信公式(1).doc
- jspm东风锻造有限公司重大停管理系统(源码、数据库文档、说明文档、论文).zip
- 毕业论文设计在路上网站设计(1)(1).doc
- 怎样选择符合国家2013新版GSP的要求的软件(1).doc
- 软件开发合同(3)(1).docx
- 企业信息化建设情况-基于云计算的信息化运营支撑平台【方案之家】(2)(1).doc
- CeBIT2014焕然一新大数据处理成焦点(1).docx
- 本科生软件工程7(1).ppt
- 刍议高校档案信息化建设(1).docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
