springboot+vue をベースにしたフードデリバリー システム

1 はじめに

今日は、これまでの学生たちが完成させた卒業設計プロジェクト、フードデリバリーシステムを紹介したいと思います
 1. フードデリバリーシステムのソースコード開発機能

1. スマート スケジューリング モード: いくつかの比率を設定した後、システムは新しい注文の近くにある配達スタッフの正確な位置と注文の詳細をインテリジェントかつ正確に計算し、新しい注文を受け取りに適した配達スタッフに自動的に発送します。注文。

2.トランジットモード:配達スタッフを分割し、中継ステーションを設置し、専属の配達スタッフを派遣して近くの店舗から食事を受け取り、食事を受け取った後、カテゴリーごとに配置し、次に配達スタッフが配置します。中継ステーションから次の中継エリアまで配送し、最初に集荷してから配布し、3,000 件以上の注文を 2 時間以内に配達できます。

3. 受注システム:都市内受発注・配送システムプラットフォームの基本機能は、バックグラウンドで受注・割当てを受け取れることです。

4. 注文の記録: 注文を受け取る食品の注文および配送システムには、注文を記録する機能も必要です。Wanyue Technology の食品注文および配達プラットフォームは、自己記録注文機能に基づいて、顧客が必要とする食品注文および配達注文を送信することもできます。

5. マップスケジュール: 背景の地図上で配達スタッフの位置と配達スタッフの手元にある注文情報を確認し、手動で注文を発送します。

6. メンバー管理: さまざまな表示モードを実現し、サービス エクスペリエンスを向上させるためのさまざまなメンバーシップ ポイントがあります。
 ログイン関連
*/
@RequestMapping("users")
@RestController
public class UserController{

@Autowired
プライベート UserService userService;

@Autowired
プライベート TokenService tokenService;

/**

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

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

    return R.error("アカウントまたはパスワードが間違っています");
    }
    String token = tokenService.generateToken(user.getId(),username, “users”, user.getRole());
    return R.ok().put ( "トークン", トークン);
    }

/**

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

    // ValidatorUtils.validateEntity(user);
    if(userService.selectOne(new EntityWrapper().eq(“ユーザー名”, 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 replacePass(String username, HttpServletRequest request){

    UserEntity user = userService.selectOne(new EntityWrapper().eq(“ユーザー名”, ユーザー名));
    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 ページ = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
    return R.ok().put(“データ”, ページ);
    }

/**

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

    EntityWrapper ew = new EntityWrapper();
    ew.allEq(MPUtil.allEQMapPre( ユーザー, “ユーザー”));
    return R.ok().put(“データ”, userService.selectListView(ew));
    }

/**

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

    UserEntity ユーザー = userService.selectById(id);
    return R.ok().put(“データ”, ユーザー);
    }

/**

  • ユーザーのセッションユーザー情報を取得します
    */
    @RequestMapping(“/session”)
    public R getCurrUser(HttpServletRequest request){

    Long id = (Long)request.getSession().getAttribute(“userId”);
    UserEntity ユーザー = userService.selectById(id);
    return R.ok().put(“データ”, ユーザー);
    }

/**

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

    // ValidatorUtils.validateEntity(user);
    if(userService.selectOne(new EntityWrapper().eq(“ユーザー名”, 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));
    R.ok() を返します。
    }
    }

2. フードデリバリーシステムのソースコード特有の利点:

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