基于springboot+vue的外卖配送系统

1 简介

今天向大家介绍一个帮助往届学生完成的毕业设计项目,外卖配送系统
 一、外卖系统源码开发功能

1、智能调度模式:通过设置一些配比后,系统会智能精准的计算出新订单附近外卖员的准确位置和订单详情,再自动将新订单派送给适合接单的外卖员。

2、中转模式:将配送员进行分工,设置中转站,派专门的配送员去附近商家取餐,取餐后按照不同的分类进行摆放,再由配送员从中转站送到下一个片区中转站,先汇集,再分发,可实现2小时送三千多单。

3、接单系统: 一个同城点餐配送系统平台基础的功能就是能够接收订单,还能接到来自后台指派的订单。

4、录单:点餐配送系统、接单,还应该具备录单的功能。万岳科技的点餐配送平台在自主录单这个功能上,还可以根据一些实际的情况需求发送出客户需要的点餐配送订单。

5、地图调度:通过在后台的地图上查看配送员的位置,外卖员手中的订单信息,再进行手动派单。

6、会员管理:有多种会员积分,实现不同的展现模式,提升服务体验。
 登录相关
*/
@RequestMapping(“users”)
@RestController
public class UserController{

@Autowired
private UserService userService;

@Autowired
private TokenService tokenService;

/**

  • 登录
    */
    @IgnoreAuth
    @PostMapping(value = “/login”)
    public R login(String username, String password, String captcha, HttpServletRequest request) {

    UserEntity user = userService.selectOne(new EntityWrapper().eq(“username”, username));
    if(user==null || !user.getPassword().equals(password)) {

    return R.error(“账号或密码不正确”);
    }
    String token = tokenService.generateToken(user.getId(),username, “users”, user.getRole());
    return R.ok().put(“token”, token);
    }

/**

  • 注册
    */
    @IgnoreAuth
    @PostMapping(value = “/register”)
    public R register(@RequestBody UserEntity user){

    // ValidatorUtils.validateEntity(user);
    if(userService.selectOne(new EntityWrapper().eq(“username”, user.getUsername())) !=null) {

    return R.error(“用户已存在”);
    }
    userService.insert(user);
    return R.ok();
    }

/**

  • 退出
    */
    @GetMapping(value = “logout”)
    public R logout(HttpServletRequest request) {

    request.getSession().invalidate();
    return R.ok(“退出成功”);
    }

/**

  • 密码重置
    */
    @IgnoreAuth
    @RequestMapping(value = “/resetPass”)
    public R resetPass(String username, HttpServletRequest request){

    UserEntity user = userService.selectOne(new EntityWrapper().eq(“username”, username));
    if(user==null) {

    return R.error(“账号不存在”);
    }
    user.setPassword(“123456”);
    userService.update(user,null);
    return R.ok(“密码已重置为:123456”);
    }

/**

  • 列表
    */
    @RequestMapping(“/page”)
    public R page(@RequestParam Map<String, Object> params,UserEntity user){

    EntityWrapper ew = new EntityWrapper();
    PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
    return R.ok().put(“data”, page);
    }

/**

  • 列表
    */
    @RequestMapping(“/list”)
    public R list( UserEntity user){

    EntityWrapper ew = new EntityWrapper();
    ew.allEq(MPUtil.allEQMapPre( user, “user”));
    return R.ok().put(“data”, userService.selectListView(ew));
    }

/**

  • 信息
    */
    @RequestMapping(“/info/{id}”)
    public R info(@PathVariable(“id”) String id){

    UserEntity user = userService.selectById(id);
    return R.ok().put(“data”, user);
    }

/**

  • 获取用户的session用户信息
    */
    @RequestMapping(“/session”)
    public R getCurrUser(HttpServletRequest request){

    Long id = (Long)request.getSession().getAttribute(“userId”);
    UserEntity user = userService.selectById(id);
    return R.ok().put(“data”, user);
    }

/**

  • 保存
    */
    @PostMapping(“/save”)
    public R save(@RequestBody UserEntity user){

    // ValidatorUtils.validateEntity(user);
    if(userService.selectOne(new EntityWrapper().eq(“username”, user.getUsername())) !=null) {

    return R.error(“用户已存在”);
    }
    userService.insert(user);
    return R.ok();
    }

/**

  • 修改
    */
    @RequestMapping(“/update”)
    public R update(@RequestBody UserEntity user){

    // ValidatorUtils.validateEntity(user);
    userService.updateById(user);//全部更新
    return R.ok();
    }

/**

  • 删除
    */
    @RequestMapping(“/delete”)
    public R delete(@RequestBody Long[] ids){

    userService.deleteBatchIds(Arrays.asList(ids));
    return R.ok();
    }
    }

二、外卖系统源码独特的优势:

1、餐厅介绍:讲述餐厅的创办初衷及发展故事,餐厅营业环境,营业执照,提升顾客的整体好感以及信任感;

2、自动定位:在地图上标注,方便顾客准确定位餐厅位置;

3、预约餐位:节省顾客排队点餐的时间,用餐过程更愉快;

4、订单管理:用时少、查询方便、实时定位外卖员位置,高效便捷;

外卖系统,外卖骑手接单,外卖管理,外卖商品管理

2 设计概要

21世纪是信息化时代,随着信息技术和网络技术的发展,信息化已经渗透到人们日常生活的各个方面,人们可以随时随地浏览到海量信息,但是这些大量信息千差万别,需要费事费力的筛选、甄别自己喜欢或者感兴趣的数据。对网络电影服务来说,需要用到优秀的协同过滤推荐功能去辅助整个系统。

本系统基于java技术,使用UML建模,采用springboot框架组合进行设计,Mysql数据库存储数据。

本系统的功能主要包括本系统的功能主要包括:

  1. 用户注册、登录、
  2. 信息维护、
  3. 会员搜索、
  4. 个性化推荐
  5. 管理员进行信息管理等
  6. 外卖系统
  7. 外卖骑手接单
  8. 外卖店铺管理

3 系统关键技术

使用springboot,vue,mysql, mybaties, typescript, html ,css, js 等进行开发

4 开发工具

开发工具主要有:idea、jdk1.8、maven、mysql5.7、Navicat等。

5 代码展示

@RequestMapping("/strategy")
@RestController
@Scope("prototype")
public class StrategyController {
    
    
    @Autowired
    private StrategyService strategyService;
    @Value("${web.upload-path}")
    private String path;

    @RequestMapping("/findPage")
    public ObjDat<Strategy> findPage(Strategy strategy, @RequestParam(value="page", defaultValue="1") int page, @RequestParam(value="limit", defaultValue="10") int limit){
    
    
        return strategyService.findPage(strategy,page-1,limit);
    }

    @RequestMapping("/edit")
    public JsonResult edit(HttpServletRequest request, Strategy strategy) throws IOException {
    
    
        User user=(User)request.getSession().getAttribute("user");
        if(user==null){
    
    
            return JsonResult.error("请登录");
        }
        String str=strategyService.edit(request,strategy);
        if(str.equals("成功")){
    
    
            return JsonResult.success("操作成功");
        }else{
    
    
            return JsonResult.error("操作失败");
        }
    }

6 系统功能描述

项目功能演示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42135426/article/details/128499957