基于javaweb+mysql的springboot在线电影售票系统设计和实现(java+springboot+jpa+mysql+freemarker+maven)
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SpringBoot在线电影售票系统设计和实现(java+springboot+jpa+mysql+freemarker+maven)
一、项目简述
前台:
1、正在上映的电影浏览查看。
2、影院信息浏览查看。
3、新闻咨询信息浏览查看。
4、地域信息查看切换。
5、用户注册登录。
6、电影排期查看。
7、在线选座生成订单并支付。
8、电影、影院的评价及评价浏览。
9、用户个人中心。
10、用户中心订单管理。
11、用户中心余额充值。
12、用户中心电影评价、影院评价管理。
后台:
1、地域管理。
2、电影管理、电影评价管理。
3、影院管理、影院评价管理。
4、影厅管理。
5、拍片场次管理。
6、新闻咨询管理。
7、用户管理。
8、订单管理。
9、支付管理。
10、统计类:包括用户、电影、影院、票房等等的统计。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: Springboot+ SpringMVC + Spring Data JPA + freemarker + JavaScript + JQuery + Ajax + maven等等
@Autowired
private MovieService movieService;
@Autowired
private MovieCommentService movieCommentService;
/**
* 电影列表页面
* @param model
* @return
*/
@RequestMapping(value="/list")
public String list(Model model, Movie movie, PageBean<Movie> pageBean){
model.addAttribute("pageBean", movieService.findPage(movie, pageBean));
model.addAttribute("name",movie.getName());
return "admin/movie/list";
}
/**
* 电影添加页面
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
model.addAttribute("movieAreaList", MovieArea.values());
model.addAttribute("movieTypeList", MovieType.values());
model.addAttribute("movieLangList", MovieLang.values());
return "admin/movie/add";
}
/**
* 电影编辑页面
* @param model
* @param id
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.GET)
public String edit(Model model,@RequestParam(name="id",required=true)Long id){
model.addAttribute("movie", movieService.findById(id));
model.addAttribute("movieAreaList", MovieArea.values());
model.addAttribute("movieTypeList", MovieType.values());
model.addAttribute("movieLangList", MovieLang.values());
return "admin/movie/edit";
return Result.error(CodeMsg.HOME_ORDER_BALANCE_OUT);
}
//订单状态都合适
//1、订单状态修改成已支付;2、扣除用户余额
if(!orderService.paySuccess(order)){
return Result.error(CodeMsg.HOME_ORDER_PAY_ERROR);
}
return Result.success(true);
}
}
/**
* 公用的上传类
*
*/
@RequestMapping("/upload")
@Controller
public class UploadController {
@Value("${movie.upload.photo.sufix}")
private String uploadPhotoSufix;
@Value("${movie.upload.photo.maxsize}")
private long uploadPhotoMaxSize;
private String uploadPhotoPath = System.getProperty("user.dir") + "/src/main/resources/upload/";
// TODO Auto-generated catch block
e.printStackTrace();
}
log.info("视频上传成功,保存位置:" + uploadVideoPath + filename);
return Result.success(filename);
}
}
/**
* 前台首页
*
*/
@RequestMapping("/home/index")
@Controller
public class IndexController {
@Autowired
private AreaService areaService;
@Autowired
private MovieService movieService;
@Autowired
private CinemaService cinemaService;
@Autowired
private NewsService newsService;
@Autowired
private AccountService accountService;
/**
/**
* 座位保存
* @param seats
* @return
*/
@RequestMapping(value="/edit_seat",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> editSeat(@RequestParam(name="seats",required=true)String seats){
List<CinemaHallSeat> seatList = JSONObject.parseArray(seats, CinemaHallSeat.class);
cinemaHallSeatService.saveAll(seatList);
return Result.success(true);
}
/**
* 根据影院id查找影厅
* @param cid
* @return
*/
@RequestMapping(value="/get_cinema_halls",method=RequestMethod.POST)
@ResponseBody
public Result<List<CinemaHall>> getCinemaHalls(@RequestParam(name="cid",required=true)Long cid){
return Result.success(cinemaHallService.findAll(cid));
}
}
/**
* 后台用户管理控制器
*
*/
@RequestMapping("/admin/user")
@Controller
public class UserController {
Account account = (Account)SessionUtil.get(SessionConstant.SESSION_ACCOUNT_LOGIN_KEY);
model.addAttribute("orderList", orderService.findAll(account.getId()));
return "home/account/user-order-list";
}
/**
* 用户评价列表
* @param model
* @return
*/
@RequestMapping(value="/user-comment",method=RequestMethod.GET)
public String userComment(Model model,@RequestParam(name="type",defaultValue="0")Integer type){
Account account = (Account)SessionUtil.get(SessionConstant.SESSION_ACCOUNT_LOGIN_KEY);
if(type != 0){
model.addAttribute("cinemaCommentList", cinemaCommentService.findByAccount(account.getId()));
}else{
model.addAttribute("movieCommentList", movieCommentService.findByAccount(account.getId()));
}
model.addAttribute("type", type);
return "home/account/user-comment";
}
/**
* 获取订单子项
* @param sn
* @return
*/
@RequestMapping(value="/get_order_item",method=RequestMethod.POST)
@ResponseBody
public Result<List<OrderItem>> getOrderItem(@RequestParam(name="order_sn",required=true)String sn){
Order order = orderService.find(sn);
if(order == null){
return Result.error(CodeMsg.HOME_ORDER_NO_EXIST);
}
return Result.success(orderItemService.find(order.getId()));
}
/**
* 删除订单
return string;
}
/**
* 获取指定格式时间再指定分钟后的时间字符串
* @param date
* @param formatter
* @param minites
* @return
*/
public static String getFormatterDate(String date,String formatter,int minites){
SimpleDateFormat sdf = new SimpleDateFormat(formatter);
String ret = null;
try {
Date parse = sdf.parse(date);
Calendar calendar = Calendar.getInstance();
calendar.setTime(parse);
calendar.add(Calendar.MINUTE, minites);
ret = sdf.format(calendar.getTime());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ret;
}
/**
* 获取指定分钟前的时间
* @param date
* @param afterMinites
* @return
*/
public static Date getBeforeDate(Date date,int beforeMinites){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.MINUTE, -beforeMinites);
return calendar.getTime();
}
/**
* 获取制定天数前的日期
public Result<Boolean> login(HttpServletRequest request, User user, String cpacha){
if(user == null){
return Result.error(CodeMsg.DATA_ERROR);
}
//用统一验证实体方法验证是否合法
CodeMsg validate = ValidateEntityUtil.validate(user);
if(validate.getCode() != CodeMsg.SUCCESS.getCode()){
return Result.error(validate);
}
//表示实体信息合法,开始验证验证码是否为空
if(StringUtils.isEmpty(cpacha)){
return Result.error(CodeMsg.CPACHA_EMPTY);
}
//说明验证码不为空,从session里获取验证码
Object attribute = request.getSession().getAttribute("admin_login");
if(attribute == null){
return Result.error(CodeMsg.SESSION_EXPIRED);
}
//表示session未失效,进一步判断用户填写的验证码是否正确
if(!cpacha.equalsIgnoreCase(attribute.toString())){
return Result.error(CodeMsg.CPACHA_ERROR);
}
//表示验证码正确,开始查询数据库,检验密码是否正确
User findByUsername = userService.findByUsername(user.getUsername());
//判断是否为空
if(findByUsername == null){
return Result.error(CodeMsg.ADMIN_USERNAME_NO_EXIST);
}
//表示用户存在,进一步对比密码是否正确
if(!findByUsername.getPassword().equals(user.getPassword())){
return Result.error(CodeMsg.ADMIN_PASSWORD_ERROR);
}
//表示密码正确,接下来判断用户状态是否可用
if(findByUsername.getStatus() == User.ADMIN_USER_STATUS_UNABLE){
return Result.error(CodeMsg.ADMIN_USER_UNABLE);
}
//检查用户所属角色状态是否可用
if(findByUsername.getRole() == null || findByUsername.getRole().getStatus() == Role.ADMIN_ROLE_STATUS_UNABLE){
return Result.error(CodeMsg.ADMIN_USER_ROLE_UNABLE);
}
//检查用户所属角色的权限是否存在
if(findByUsername.getRole().getAuthorities() == null || findByUsername.getRole().getAuthorities().size() == 0){
return Result.error(CodeMsg.ADMIN_USER_ROLE_AUTHORITES_EMPTY);
}
*/
@RequestMapping("/admin/cinema_hall_session")
@Controller
public class CinemaHallSessionController {
@Autowired
private CinemaService cinemaService;
@Autowired
private CinemaHallService cinemaHallService;
@Autowired
private MovieService movieService;
@Autowired
private CinemaHallSessionService cinemaHallSessionService;
/**
* 排片场次列表页面
* @param model
* @return
*/
@RequestMapping(value="/list")
public String list(Model model, CinemaHallSession cinemaHallSession, PageBean<CinemaHallSession> pageBean){
model.addAttribute("pageBean", cinemaHallSessionService.findPage(cinemaHallSession, pageBean));
model.addAttribute("showDate",cinemaHallSession.getShowDate());
return "admin/cinema_hall_session/list";
}
/**
* 排片场次添加页面
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
model.addAttribute("cinemaList", cinemaService.findAll());
model.addAttribute("movieList", movieService.findAll());
model.addAttribute("cinemaSessionTypeList", CinemaSessionType.values());
return "admin/cinema_hall_session/add";
}
/**
* 排片场次编辑页面
* @param model
* @param id
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.GET)
public String edit(Model model,@RequestParam(name="id",required=true)Long id){
model.addAttribute("cinemaHallSession", cinemaHallSessionService.findById(id));
model.addAttribute("movieList", movieService.findAll());
model.addAttribute("cinemaList", cinemaService.findAll());
model.addAttribute("cinemaSessionTypeList", CinemaSessionType.values());
/**
* 后台用户管理控制器
*
*/
@RequestMapping("/admin/user")
@Controller
public class UserController {
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
@Autowired
private OperaterLogService operaterLogService;
/**
* 用户列表页面
* @param model
* @param user
* @param pageBean
* @return
*/
@RequestMapping(value="/list")
public String list(Model model, User user, PageBean<User> pageBean){
model.addAttribute("title", "用户列表");
model.addAttribute("username", user.getUsername());
model.addAttribute("pageBean", userService.findList(user, pageBean));
return "admin/user/list";
}
/**
* 新增用户页面
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
model.addAttribute("roles", roleService.findAll());
return "admin/user/add";
}
/**
* 用户添加表单提交处理
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> add(User user){
model.addAttribute("msg", "订单编号不存在!");
return RuntimeConstant.RUN_ERROR_VIEW;
}
if(order.getStatus() != Order.status_unpay){
model.addAttribute("msg", "订单状态不可支付!");
return RuntimeConstant.RUN_ERROR_VIEW;
}
long passTime = System.currentTimeMillis()/1000 - order.getCreateTime().getTime()/1000;
if(passTime > orderTimeout){
model.addAttribute("msg", "订单已超时,不可支付!");
return RuntimeConstant.RUN_ERROR_VIEW;
}
//订单状态都合适
model.addAttribute("leftTime", orderTimeout - passTime);
model.addAttribute("order", order);
model.addAttribute("orderItemList", orderItemService.find(order.getId()));
return "home/order/pay_order";
}
/**
* 订单支付
* @param sn
* @return
*/
@RequestMapping(value="order_pay",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> orderPay(@RequestParam(name="order_sn",required=true)String sn){
Order order = orderService.find(sn);
if(order == null){
return Result.error(CodeMsg.HOME_ORDER_NO_EXIST);
}
if(order.getStatus() != Order.status_unpay){
return Result.error(CodeMsg.HOME_ORDER_STATUS_UNABLE);
}
long passTime = System.currentTimeMillis()/1000 - order.getCreateTime().getTime()/1000;
if(passTime > orderTimeout){
return Result.error(CodeMsg.HOME_ORDER_STATUS_TIMEOUT);
}
if(order.getAccount().getBalance().compareTo(order.getNewMoney()) < 0){
return Result.error(CodeMsg.HOME_ORDER_BALANCE_OUT);
}
//订单状态都合适
//1、订单状态修改成已支付;2、扣除用户余额
if(!orderService.paySuccess(order)){
return Result.error(CodeMsg.HOME_ORDER_PAY_ERROR);
}
return Result.success(true);
}
}
* @return
*/
@RequestMapping(value="/user-pay-to-account",method=RequestMethod.GET)
public String userPayToAccount(Model model){
model.addAttribute("payments", PaymentType.values());
return "home/account/user-pay-to-account";
}
/**
* 修改个人资料
* @param account
* @return
*/
@RequestMapping(value="/update_info",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> updateInfo(Account account){
Account loginedAccount = (Account)SessionUtil.get(SessionConstant.SESSION_ACCOUNT_LOGIN_KEY);
loginedAccount.setNickname(account.getNickname());
loginedAccount.setSex(account.getSex());
if(accountService.save(loginedAccount) == null){
return Result.error(CodeMsg.SAVE_ERROR);
}
//表示用户已经修改成功,放入session
SessionUtil.set(SessionConstant.SESSION_ACCOUNT_LOGIN_KEY, loginedAccount);
return Result.success(true);
}
/**
* 修改图片
* @param account
* @return
*/
@RequestMapping(value="/update_head_pic",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> updateHeadPic(Account account){
Account loginedAccount = (Account)SessionUtil.get(SessionConstant.SESSION_ACCOUNT_LOGIN_KEY);
loginedAccount.setHeadPic(account.getHeadPic());
if(accountService.save(loginedAccount) == null){
return Result.error(CodeMsg.SAVE_ERROR);
}
//表示用户已经修改成功,放入session
SessionUtil.set(SessionConstant.SESSION_ACCOUNT_LOGIN_KEY, loginedAccount);
return Result.success(true);
}
/**
* 修改密码
* @param password
* @return
*/
@RequestMapping(value="/update_pwd",method=RequestMethod.POST)
@ResponseBody
User findById = userService.find(user.getId());
//讲提交的用户信息指定字段复制到已存在的user对象中,该方法会覆盖新字段内容
BeanUtils.copyProperties(user, findById, "id","createTime","updateTime");
if(userService.save(findById) == null){
return Result.error(CodeMsg.ADMIN_USE_EDIT_ERROR);
}
operaterLogService.add("编辑用户,用户名:" + user.getUsername());
return Result.success(true);
}
/**
* 删除用户
* @param id
* @return
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> delete(@RequestParam(name="id",required=true)Long id){
try {
userService.delete(id);
} catch (Exception e) {
return Result.error(CodeMsg.ADMIN_USE_DELETE_ERROR);
}
operaterLogService.add("添加用户,用户ID:" + id);
return Result.success(true);
}
}
model.addAttribute("movieList", movieService.findAll());
model.addAttribute("cinemaSessionTypeList", CinemaSessionType.values());
return "admin/cinema_hall_session/add";
}
/**
* 排片场次编辑页面
* @param model
* @param id
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.GET)
public String edit(Model model,@RequestParam(name="id",required=true)Long id){
model.addAttribute("cinemaHallSession", cinemaHallSessionService.findById(id));
model.addAttribute("movieList", movieService.findAll());
model.addAttribute("cinemaList", cinemaService.findAll());
model.addAttribute("cinemaSessionTypeList", CinemaSessionType.values());
return "admin/cinema_hall_session/edit";
}
/**
* 添加排片场次表单提交
* @param cinemaHallSession
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> add(CinemaHallSession cinemaHallSession){
if(cinemaHallSession == null){
return Result.error(CodeMsg.DATA_ERROR);
}
CodeMsg validate = ValidateEntityUtil.validate(cinemaHallSession);
if(validate.getCode() != CodeMsg.SUCCESS.getCode()){
return Result.error(validate);
}
//判断是否是编辑
if(cinemaHallSession.getId() != null && cinemaHallSession.getId() > 0){
CinemaHallSession findById = cinemaHallSessionService.findById(cinemaHallSession.getId());
cinemaHallSession.setCreateTime(findById.getCreateTime());
}
//生成散场时间
String startTime = cinemaHallSession.getShowDate() + " " + cinemaHallSession.getShowTime();
cinemaHallSession.setStartTime(startTime);
cinemaHallSession.setEndTime(StringUtil.getFormatterDate(startTime, "yyyy-MM-dd HH:mm", Integer.valueOf(cinemaHallSession.getMovie().getTime())));
if(cinemaHallSessionService.isExistHall(cinemaHallSession.getId(),cinemaHallSession.getCinemaHall().getId(), cinemaHallSession.getShowDate(), startTime,cinemaHallSession.getEndTime())){
return Result.error(CodeMsg.ADMIN_CINEMA_HALL_SESSION_SAVE_EXIST);
}
//表示数据合法,可以保存到数据库
if(cinemaHallSessionService.save(cinemaHallSession) == null){
Area area = (Area) SessionUtil.get(SessionConstant.SESSION_HOME_AREA);
model.addAttribute("cinemaList", area == null ? cinemaService.findAll() : cinemaService.findAll(area.getId()));
model.addAttribute("topNewsList", newsService.findTop());
model.addAttribute("topMoneyMovieList", movieService.findTopMoneyList());
return "home/cinema/list";
}
/**
* 影院详情页面
* @param model
* @param id
* @return
*/
@RequestMapping("/detail")
public String detail(Model model,@RequestParam(name="id",required=true) Long id){
Cinema findById = cinemaService.findById(id);
model.addAttribute("cinema", findById);
model.addAttribute("cinemaHallSessionList", cinemaHallSessionService.findDistinctShowDateByCinemaList(id));
model.addAttribute("nearCinemaList", cinemaService.findAll(findById.getArea().getCityId()));
model.addAttribute("commentList", cinemaCommentService.findByCinema(id));
return "home/cinema/detail";
}
/**
* 获取指定影院、指定日期下的上映影片
* @param model
* @param cid
* @param showDate
* @return
*/
@RequestMapping("/get_show_movie")
public String getShowMovie(Model model,
@RequestParam(name="cid",required=true) Long cid,
@RequestParam(name="showDate",required=true) String showDate){
model.addAttribute("cinemaHallSessionList", cinemaHallSessionService.findDistinctMovieByCinemaList(cid, showDate));
return "home/cinema/get_show_movie";
}
/**
* 统计影院上映场次
@Autowired
private CinemaHallSessionService cinemaHallSessionService;
@Autowired
private CinemaService cinemaService;
@Autowired
private CinemaHallSeatService cinemaHallSeatService;
@Value("${movie.select.seat.max.num}")
private Integer selectedSeatMax;//最大选座数
@Autowired
private OrderService orderService;
@Autowired
private OrderItemService orderItemService;
/**
* 电影列表页面
* @param model
* @return
*/
@RequestMapping("/list")
public String list(Model model,@RequestParam(name="type",defaultValue="0") Integer type){
model.addAttribute("movieList", type == 0 ? movieService.findShowList() : movieService.findFutureList());
model.addAttribute("type", type);
model.addAttribute("topNewsList", newsService.findTop());
model.addAttribute("topMoneyMovieList", movieService.findTopMoneyList());
return "home/movie/list";
}
/**
* 电影详情页面
* @param model
* @param id
* @return
*/
@RequestMapping("/detail")
public String detail(Model model,@RequestParam(name="id",required=true) Long id){
model.addAttribute("movie", movieService.findById(id));
model.addAttribute("topMovieList", movieService.findTopList(5));
model.addAttribute("distinctCinemaHallSessionList", cinemaHallSessionService.findDistinctCinemaByMovieId(id));
model.addAttribute("distinctShowDateCinemaHallSessionList", cinemaHallSessionService.findDistinctShowDateByMovieId(id));
model.addAttribute("commentList", movieCommentService.findByMovie(id));
return "home/movie/detail";
}
/**
* 选座页面
* @param model
* @param id
* @return
*/
public class CinemaController {
@Autowired
private CinemaService cinemaService;
@Autowired
private AreaService areaService;
@Autowired
private CinemaCommentService cinemaCommentService;
/**
* 电影院列表页面
* @param model
* @return
*/
@RequestMapping(value="/list")
public String list(Model model, Cinema cinema, PageBean<Cinema> pageBean){
model.addAttribute("pageBean", cinemaService.findPage(cinema, pageBean));
model.addAttribute("name",cinema.getName());
return "admin/cinema/list";
}
/**
* 电影院添加页面
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
model.addAttribute("provinceList", areaService.getAllProvince());
model.addAttribute("cinemaServiceList", CinemaServices.values());
return "admin/cinema/add";
}
/**
* 电影院编辑页面
* @param model
* @param id
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.GET)
public String edit(Model model,@RequestParam(name="id",required=true)Long id){
Cinema cinema = cinemaService.findById(id);
model.addAttribute("cinema", cinema);
model.addAttribute("provinceList", areaService.getAllProvince());
model.addAttribute("cityList", areaService.getAllCity(cinema.getArea().getProvinceId()));
model.addAttribute("districtList", areaService.getAllDistrict(cinema.getArea().getCityId()));
model.addAttribute("cinemaServiceList", CinemaServices.values());
return "admin/cinema/edit";
}
/**
* 添加电影院表单提交
* @param cinema
log.info("进入支付宝电脑网站支付");
return "home/pay/alipay_pc";
}
default:
break;
}
model.addAttribute("msg", "未定义的支付方式!");
return RuntimeConstant.RUN_ERROR_VIEW;
}
/**
* 支付宝异步通知
* @param request
* @return
*/
@RequestMapping(value="/alipay_notify")
@ResponseBody
public String alipayNotify(HttpServletRequest request){
if(!Alipay.isValid(request)){
log.error("支付宝异步通知签名验证失败!");
return "fail";
}
//签名验证通过
//商户订单号
String sn = request.getParameter("out_trade_no");
//支付宝交易金额
String total_amount = request.getParameter("total_amount");
//交易状态
String trade_status = request.getParameter("trade_status");
if("TRADE_SUCCESS".equals(trade_status)){
//表示是支付成功
//查询支付记录
PayLog payLog = payLogService.find(sn);
if(payLog == null){
log.error("支付记录未找到sn=" + sn);
return "fail";
}
//检查支付记录的状态
if(payLog.getStatus() != PayLog.status_unpay){
log.error("支付记录状态错误,status=" + payLog.getStatus());
return "fail";
}
public static String getMac(){
String mac = "";
try {
InetAddress localHost = InetAddress.getLocalHost();
byte[] hardwareAddress = NetworkInterface.getByInetAddress(localHost).getHardwareAddress();
StringBuffer sb = new StringBuffer("");
for(int i=0; i<hardwareAddress.length; i++) {
//字节转换为整数
int temp = hardwareAddress[i]&0xff;
String str = Integer.toHexString(temp);
//System.out.println("每8位:"+str);
if(str.length()==1) {
sb.append("0"+str);
}else {
sb.append(str);
}
}
mac = sb.toString();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mac.toUpperCase();
}
public static boolean authOrder(String orderSn,String phone){
Map<String, String> headerParaMap = new HashMap<String, String>();
String mac = getMac();
String paramToken = DESUtil.encrypt(orderSn, mac+"#"+orderSn+"#"+phone);
headerParaMap.put("paramToken", paramToken);
String timeToken = DESUtil.encrypt("muyi_ylrc", System.currentTimeMillis()+"");
headerParaMap.put("timeToken", timeToken);
String sendPost = HttpUtil.sendPost("http://120.25.120.129:8081/order_auth/verify",headerParaMap,"orderSn="+orderSn+"&phone="+phone+"&mac="+mac);
JSONObject parseObject = JSONObject.parseObject(sendPost);
if(parseObject.getIntValue("code") != CodeMsg.SUCCESS.getCode()){
return false;
}
return true;
}
public static String readFileToString(File file){
String string = "";
if(file != null){
try {
BufferedReader br = new BufferedReader(new FileReader(file));
String line = null;
while ((line = br.readLine()) != null) {
string += line;
}