# 兰州大学点餐 **Repository Path**: dsffs/lanzhou-university-ordering ## Basic Information - **Project Name**: 兰州大学点餐 - **Description**: 兰州大学点餐系统 点餐平台系统分成账号登录注册子系统、前台订餐管理子系统、店家商品管理子系统和后台账号管理子系统这4个子系统。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 7 - **Forks**: 1 - **Created**: 2022-06-25 - **Last Updated**: 2025-08-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: 外卖平台, 外卖, lzu, ThinkPHP ## README # "兰州大学点餐平台"开发文档 | 成员 | | | ------ | ---- | | 赵琪润 | | | 杜晓涛 | 1090540062@qq.com | ## 项目概述 ##### 背景及意义 随着网络的普及化,网上支付近些年来发展迅猛,人们的生活方式发生改变,订购外卖成为人们适应快节奏生活的方式。外卖订餐系统开 发能够实现提高餐馆外卖业务效率、缩短顾客订餐时间。 ##### 项目简介 点餐平台系统分成账号登录注册子系统、前台订餐管理子系统、店家商品管理子系统和后台账号管理子系统这4个子系统。 - 用户分为商家和消费者 - 账号登录注册子系统,user可以选择注册为商家或者消费者(普通用户) - 消费者(user)通过此平台注册登录后,可以浏览商家发布菜品、查询菜品,以及将菜品加入购物车、提交订单、查询订单、管理个人信息等 - 商家(sell)通过此平台注册登录后可以新增菜品、编辑删除菜品信息、查看菜品基本信息、下架或者推荐菜品以及订单查询、修改订单信息等。 - 后台管理员(admin)可以对店家、消费者进行管理,包括注册新用户、编辑删除用户信息、禁用账户等操作。另外,管理员还可以实现店家推荐功能,推荐会影响消费者浏览店家的顺序。 ## 需求分析 ### 项目说明 ![QQ图片20220624074943](images/QQ图片20220624074943.png) #### 登陆系统 ![QQ图片20220624081700](images/QQ图片20220624081700.png) * 用户可以使用数据库中已有的用户名和密码登录,账号分成三类,普通用户(消费者),商家,管理员。 * 登陆界面提供注册按钮,用户填写用户名、密码并且选择消费者或者商家身份,如果用户名不为空且与已有用户名没有重复即可成功注册。不提供管理员注册功能。 #### 用户系统 ![QQ图片20220624083336](images/QQ图片20220624083336.png) - 在外卖平台首页,用户可以查看店铺的具体信息包括联系方式、地址、简介、完成订单数。用户也可以查看每家店铺上架商品信息,用户可以将菜品加入购物车或删除,点击菜品详情可以进一步查看菜品名称、打分人数及评分、账户单次限购数量、销量、是否是特色菜以及简介。通过搜索栏用户可以搜索名字带有关键字的所有菜品信息。 - 在购物车页面,用户可以查看购物车的菜品信息以及购买的数量与价格,并对数量进行修改。用户可以在购物车中选中某些菜品下单订购。在下单时,如果用户未设置过联系方式,会提示无法完成订单,需要完善联系方式。 - 在订单中心页面,用户可以查看自己的交易订单信息包括总金额、商品总类、订单的商品信息以及完成状态。用户可以根据订单号或者菜品名称筛选自己的历史订单。在订单完成后,用户可以对订单中的菜品进行打分。 - 在个人信息中心页面,用户可以查看个人信息,包括账户昵称、简介、性别、年龄、email、联系电话、地址等。用户也可以修改包括密码在内的个人信息,后端检测修改信息是合法格式后会在数据库中更新相关信息。 #### 商家系统 ![QQ图片20220624091123](images/QQ图片20220624091123.png) - 在商品列表页面,商家可以对菜品信息进行管理,包括添加新的菜品,编辑或删除现有菜品。商家也可以搜索名字带有搜索关键字的菜品信息。 - 在订单中心页面,商家可以看到自己的历史订单信息包括用户名、总金额、商品总类、订单状态以及订单的商品信息。商家可以接受新的订单,接单后可以选择取消或是完成订单。 #### 管理员系统 ![QQ图片20220624081909](images/QQ图片20220624081909.png) * 在普通用户(消费者)列表,管理员可以查看用户信息,添加新用户,删除已有用户或是编辑已有用户的密码、昵称信息,决定是否禁用用户。管理员还可以搜索名字符合要求的用户。 * 在商家用户列表,除了普通用户列表的功能外,管理员还可以查看商家用户的店铺名以及店铺上架商品数,并决定是否推荐商家用户。 ### 数据流图 ![QQ图片20220624120605](images/QQ图片20220624120605.png) #### 约束 - 注册账户时,用户名不为空、两次输入密码一致且与已有用户名没有重复即可成功注册。不提供管理员注册功能。 - 用户在下单时,如果用户未设置过联系方式或者地址,会提示无法完成订单,需要完善联系方式。 - ## 软件设计 #### 环境要求 - php:5.6 - thinkphp5.1 - windows - 安装有node.js、vue --------- #### ER图 ![image-20220624000030159](images/image-20220624000030159.png) ---------------------- #### 数据库表 ##### admin表: ![image-20220623220435016](images/image-20220623220435016.png) ![image-20220623220928913](images/image-20220623220928913.png) ##### goodslist表: ![image-20220623220506468](images/image-20220623220506468.png) ![image-20220623221002563](images/image-20220623221002563.png) --------- - 讲讲三个表如何寻找 - 如何表示订单还是购物车 ##### order表: ![image-20220623220542370](images/image-20220623220542370.png) ##### busorder表: ![image-20220623220616469](images/image-20220623220616469.png) ##### orderitem表: ![image-20220623220700431](images/image-20220623220700431.png) ### 软件模块图 ### 软件结构模块与对应接口 [php大作业 / 接口文档]: https://console-docs.apipost.cn/preview/479c4b697fa4db4a/2ddb9d1ff3accc77 #### 账号管理与登录 ###### 申请注册账户(选择以商家还是消费者身份注册) image-20220623222809832 前端确认账号不为空、且两次输入密码一致后,调用后端接口 | register界面register接口 | http://{{ip}}/php_big_project/api/public/api/register/register | | ------------------------ | ------------------------------------------------------------ | | 应用界面: | register界面 | | 前端参数: | username 用户名 | | | password 密码 | | | role 角色(2表示商家,3表示普通用户) | | | create_time 创建时间戳 | | | nickname 普通用户登记为昵称,商家登记为店铺名 | | 代码功能: | 根据用户名查询admin表,如果不存在相同的username则插入一条新记录 | | 返回值: | 成功插入新数据时返回成功提示信息code及msg,失败时返回失败提示信息code及msg | image-20220623223020850 -------------- ###### 账号登录 ​ ![image-20220623223114156](images/image-20220623223114156.png) | login界面登录接口 | http://{{ip}}/php_big_project/api/public/api/login/login | | ----------------- | ------------------------------------------------------------ | | 应用界面: | login界面 | | 前端参数: | username 用户名 | | | password 密码 | | 代码功能: | 查询admin表,当用户名密码正确时生成token | | 返回值: | 如果用户名密码匹配成功返回token以及用户信息,失败时返回失败信息code及msg | ![image-20220623223227976](images/image-20220623223227976.png) ----------------- ---------------- #### 管理员模块 - 用户和商家管理:系统管理员获取用户和商家列表(获取普通用户或者商家列表)、新增或者删除用户和商家 - 用户和商家信息修改:包括用户和商家的昵称(店铺名)修改、**启用和禁用用户和商家(是否能够登录账号)、推荐和取消推荐商家(影响用户浏览顺序)** ![image-20220623224629607](images/image-20220623224629607.png) | adminhome页面展示商家用户(查询) | http://{{ip}}/php_big_project/api/public/api/Admin/sellindex | | --------------------------------- | ------------------------------------------------------------ | | 应用界面: | sell_user界面 | | 前端参数: | key 搜索关键字(为空表示显示所有用户) | | | page 分页页码 | | | limit 分页大小 | | 代码功能: | 根据分页页码与大小查询admin表的商家用户信息,如果设置了关键字key,就显示username包含key的用户信息 | | 返回值: | 成功时返回成功提示信息code及msg,并返回包括所有符合条件用户信息的数组data以及数量total | ![image-20220623230209890](images/image-20220623230209890.png) | 删除商家账号 | http://{{ip}}/php_big_project/api/public/api/Admin/selldel | | ------------ | ------------------------------------------------------------ | | 应用界面: | sell_user界面点击删除按钮 | | 前端参数: | id 预计删除的商家id | | 代码功能: | 根据id删除admin表的商家用户 | | 返回值: | 成功时返回成功提示信息code及msg,失败时返回失败提示信息code及msg | ![image-20220623230846010](images/image-20220623230846010.png) | 编辑商家账号信息 | http://{{ip}}/php_big_project/api/public/api/Admin/selledit | | ---------------- | ------------------------------------------------------------ | | 应用界面: | sell_user界面点击编辑按钮 | | 前端参数: | id 预计编辑的商家id | | | password 密码 | | | nickname 店铺名字 | | | status 是否禁用,0正常,1禁用 | | | is_recommended 是否推荐,0正常,1推荐 | | 代码功能: | 根据id找到admin表中的特定商家并根据参数更新数据 | | 返回值: | 成功时返回成功提示信息code及msg,失败时返回失败提示信息code及msg | ![image-20220623230953697](images/image-20220623230953697.png) --- --------- #### 用户订餐功能模块 ###### 浏览外卖店家模块 包括 - 查看商家已完成订单数量,查看商家消息(店名、联系方式、地址) - 查看供应菜品、可以搜索菜品。点击菜品进入详情介绍页面,包括已售数量、菜品状态 - 查看菜品:推荐菜品,菜品基本信息,已售数量,状态 - 餐车功能:用户将菜品加入或者删除购物车 image-20220623232502512 | index页面普通用户获取所有外卖店家以及商品的信息 | http://{{ip}}/php_big_project/api/public/api/Userindex/index | | ----------------------------------------------- | ------------------------------------------------------------ | | 应用页面: | Index界面 | | 前端参数: | key 搜索关键字 | | 代码功能: | 使用双层循环,外循环根据admin表中找到所有的商家并遍历; | | | 内循环根据admin表的商家id在goodslist表中找到所有对应的菜品并记录在数组中; | | | 当设置了key时,在内循环开始前为goodslist表的链式查询增加一个where条件筛选菜品名goods_name含有key的菜品 | | 返回值: | 更新成功返回成功提示信息code及msg以及数组shop_goods_list,包含所有的商家信息及商家符合搜索条件的菜品信息 | ```json { "shop_goods_list": [ { "username": "sell", "nickname": "快餐店", "busid": 2, "addr": "兰州大学", "telephone": "12345678999", "brief": "未添加任何描述", "order_finished_number": 10, "img": "https://tse2-mm.cn.bing.net/th/id/OIP-C.xnB1DrWN7l__VbzMZwgIZgHaE7?pid=ImgDet&rs=1", "recommended_count": 1, "goods": [ { "goods_name": "5号商品", "goods_id": 5, "goods_price": 12, "goods_count": 100, "goods_img": "https://img.zcool.cn/community/01fc295d6c6fe8a80120526da4918a.jpg@1280w_1l_2o_100sh.jpg", "is_recommended": 1, "sellcount": 72, "brief": "商家未添加任何描述", "score_people": 4, "score": "4.75" }, { "goods_name": "3号商品", "goods_id": 3, "goods_price": 15, "goods_count": 100, "goods_img": "https://img.zcool.cn/community/0105ec5b5ac3cba801206a35cf08a8.jpg@1280w_1l_2o_100sh.jpg", "is_recommended": 0, "sellcount": 33, "brief": "商家未添加任何描述", "score_people": 0, "score": "未打分" }, ] }, { "username": "sell1", "nickname": "烧烤店", "busid": 4, "addr": "兰州大学", "telephone": "12345678989", "brief": "未添加任何描述", "order_finished_number": 0, "img": "https://img.zcool.cn/community/0127225cb58f04a801214168786d4e.png@1280w_1l_2o_100sh.png", "recommended_count": 0, "goods": [] } ], "code": 1, "msg": "获取信息成功" } ``` | index页面用户购物车点击加入购物车(新增物品或者增加数量) | http://{{ip}}/php_big_project/api/public/api/Usershopcart/insert | | --------------------------------------------------------- | ------------------------------------------------------------ | | 应用页面: | index界面点击 加入购物车 按钮 | | 前端参数: | userid 用户id | | | user_name 用户名 | | | shop_id 商家id | | | shop_name 店铺名 | | | goods_id 菜品id | | | goods_name 菜品名 | | | goods_img 菜品图片 | | | count 购买数量 | | | status 默认为0,orderitem表中表示购物车中的项目status为0 | | 代码功能: | 根据userid与goods_id查询orderitem可以确定菜品是否已在购物车; | | | 如果在购物车,该操作为更新操作(增加数量),更新orderitem表中对应的记录; | | | 如果不在购物车,该操作为插入操作(新增物品),在orderitem表中插入一条新记录,记录的各字段值与前端参数一致; | | | 无论更新还是插入操作,都会在goodslist表中找到对应的菜品的单次最大限购数量count,如果超过这个值就返回失败信息 | | 返回值: | 更新与插入操作成功时返回成功提示信息code及msg,失败时返回相应的失败提示信息code及msg | ![image-20220624081149107](images/image-20220624081149107.png) | index页面和shopcart页面用户删除购物车单个商品 | http://{{ip}}/php_big_project/api/public/api/Usershopcart/del | | --------------------------------------------- | ------------------------------------------------------------ | | 应用页面: | Index界面点击 从购物车中删除 按钮或者在ShopCart界面中点击删除按钮 | | 前端参数: | userid 用户id | | | goods_id 菜品id | | 代码功能: | 根据userid和goods_id以及status为0(购物车)三个条件在orderitem表中确定订单项的记录是否存在; | | | 如果存在则删除并返回成功信息; | | | 如果失败返回失败信息 | | 返回值: | 更新成功返回成功提示信息code及msg,失败时返回相应的失败提示信息code及msg | image-20220624081218724 ------- ------- ###### 购物车 - 可以查询购物车的信息 - 可以修改购物车中商品的数量以及批量删除商品 - **下单功能:用户可以购买选中的菜品,强制约束下单时必须提供用户电话和地址**(不等于未设置)。 ![image-20220624081406644](images/image-20220624081406644.png) | ShopCart页面用户删除购物车多个商品 | http://{{ip}}/php_big_project/api/public/api/Usershopcart/delall?userid=2&goods_id[]=3&goods_id[]=4 | | ---------------------------------- | ------------------------------------------------------------ | | 应用页面: | 在ShopCart界面中勾选了菜品之后点击 删除选中商品 按钮 | | 前端参数: | userid 用户id | | | goods_id[] 菜品id | | 代码功能: | 实现多选删除购物车项目,因为在购物车中进行操作,前端传入的goods_id都能确认在orderitem中存在,不需要考虑该订单项不存在的情况 | | 返回值: | 更新成功返回成功提示信息code及msg | image-20220624082051916 | shopcart页面显示购物车商品(查询功能) | http://{{ip}}/php_big_project/api/public/index.php/api/Usershopcart/query | | -------------------------------------- | ------------------------------------------------------------ | | 应用页面: | 在ShopCart界面搜索栏输入内容并搜索 | | 前端参数: | userid 用户id | | | key 搜索关键字 | | 代码功能: | 没有设置key值时功能为显示用户购物车所有内容; | | | 设置key值时功能为显示用户购物车中菜品名称带有key值的项目 | | 返回值: | 更新成功返回成功提示信息code及msg,和一个data数组包括所有符合条件的购物车项目的信息 | image-20220624082455165 | shopcart页面更新购物车指定商品的数量 | http://{{ip}}/php_big_project/api/public/api/Usershopcart/update | | ------------------------------------ | ------------------------------------------------------------ | | 应用页面: | 在ShopCart项的数量一栏输入新的值时 | | 前端参数: | userid 用户id | | | goods_id 菜品id | | | count 用户新设置的菜品购买数量 | | 代码功能: | 根据userid和goods_id以及status为0三个条件在orderitem表中确定订单项的记录; | | | 根据goods_id在goodslist表中找到该菜品的单次最大限购数量count; | | | 如果购买数量超出限额返回错误信息,否则更新orderitem表中对应项的count字段 | | 返回值: | 更新成功返回成功提示信息code及msg,失败时返回相应的失败提示信息code及msg | | | | image-20220624082920544 | shopcart页面将选中的购物车商品转为订单 | http://{{ip}}/php_big_project/api/public/api/Usershopcart/order?username=user&userid=1&goods_id[]=4&goods_id[]=5&totalAmout=&totalNum=&create_time= | | -------------------------------------- | ------------------------------------------------------------ | | 应用界面: | ShopCart页面点击 去支付 按钮 | | 前端参数: | username 用户名 | | | userid 用户id | | | goods_id[] 以数组表示订单中所有菜品的id | | | totalAmout 订单总价 | | | totalNum 订单包含的菜品总类 | | | create_time 订单创建时间戳 | | 代码功能: | 当goods_id[]没有元素时表示没有选中购物车中任何一项,返回错误信息; | | | 根据userid在admin表中找到对应的用户信息**,如果telephone不符合规定(长度不等于11)或者地址未设置,返回错误信息;** | | | 上述两次验证通过后,用传给接口的参数在order表中新增一条订单记录并记录订单id; | | | 根据userid、goods_id[]以及status为0三个条件可以找到orderitem里所有符合条件的订单项,用订单id更新orderid并将status变为1; | | | 对orderitem表发起一次查询,找到本次订单包括的所有商家id以及他们的总价和总类; | | | 遍历上一步的结果,在busorder表中为每个商家分别插入一条新记录,并在orderitem表的对应项里更新busorderid的值 | | 返回值: | 如果没有选中购物车或者telephone不符合规定返回相应的错误提示信息code及msg,否则返回订单成功生成的成功提示信息code及msg | ![image-20220624083040804](images/image-20220624083040804.png) ###### 订单 - 订单管理:用户可以查看自己的订单状态,查看历史订单 - 订单搜索功能:用户在订单页面,用订单号或者商品名搜索历史订单 - **用户可以查看订单的状态,当订单完成时用户可以打分操作(orderitem有一项记录是否打分),打分后,修改该orderitem的是否打分状态、记录分数。商家商品的打分人数和评分会改变** image-20220624084413338 | order页面展示用户所有的订单 | http://{{ip}}/php_big_project/api/public/api/Usershopcart/showorder | | --------------------------- | ------------------------------------------------------------ | | 应用页面: | Order界面 | | 前端参数: | userid 用户id | | | key key不为空时表示搜索关键词 | | | kind 0表示按订单搜索,1表示按菜品命搜索 | | 代码功能: | 与商家订单界面相同,展示满足条件的订单记录,并按时间戳降序排序 | | 返回值: | 成功提示信息code及msg,和一个数组order_list,数组包含所有符合条件的订单信息,以及每个订单所包含的菜品信息 | image-20220624084517333 image-20220624084825382 | 用户为菜品打分 | http://{{ip}}/php_big_project/api/public/api/User/score | | -------------- | ------------------------------------------------------------ | | 应用页面: | Order界面已完成的订单 | | 前端参数: | id 菜品id | | | score 用户为该菜品打的分数,五分制 | | | orderid 订单id | | 代码功能: | 根据id和orderid在orderitem表中找到对应的记录,更新打分状态score_state为1并记录score的值; | | | 同时根据菜品id在goodslist表中找到对应的菜品,总分total_score增加对应的值,打分人数people_score_number+1 | | 返回值: | 成功提示信息code及msg | ![image-20220624085318339](images/image-20220624085318339.png) ###### 个人信息模块(商家和用户公用) - 修改用户或者商家信息:用户可以添加修改自己的个人消息(头像、性别、年龄、电话、qq、email) ![image-20220624091434433](images/image-20220624091434433.png) | PerCenter页面获取用户信息 | http://{{ip}}/php_big_project/api/public/api/User/info | | ------------------------- | ------------------------------------------------------------ | | 应用页面: | PerCenter页面 | | 前端参数: | userid 用户id | | | role 使用角色 | | | 根据userid在admin表中查询对应的用户信息; | | | 如果查询失败返回错误信息; | | 代码功能: | 如果查询成功,过滤一些不允许用户自己更改的信息如角色role、是否禁用status等并将其余的信息返回 | | 返回值: | 更新成功返回成功提示信息code及msg,以及data数组包含该用户的信息;失败时返回相应的失败提示信息code及msg | image-20220624090855963 | PerCenter页面修改用户信息 | http://{{ip}}/php_big_project/api/public/api/User/updateuser | | ------------------------- | ------------------------------------------------------------ | | 应用页面: | PerCenter页面修改用户的信息之后点击 提交修改信息 按钮 | | 前端参数: | userid 用户id | | | role | | | oldpassword 旧密码 | | | password 新密码 | | | sex 性别 | | | age 年龄 | | | qq qq账号 | | | email 邮箱 | | | brief 简介 | | | addr 地址 | | | telephone 联系方式 | | | nickname 用户名 | | | img 头像 | | 代码功能: | 根据userid在admin表中确认用户; | | | 规定sex输入’男‘、’女‘之外的输入为无效输入; | | | 利用正则表达式以及长度等方式规定age的输入必须是12~120的数字,qq必须是6~10位的数字; | | | telephone必须是11位的数字,邮箱必须是符合邮箱正则表达式的格式; | | | 上述检查都通过后,对admin表执行更新操作。 | | 返回值: | 更新成功返回成功提示信息code及msg,以及data数组包含该用户修改后的信息;失败时返回相应的失败提示信息code及msg | #### 商家模块 ###### 商品列表 - 添加菜品:(菜品基本信息 名称、图片、简介、价格) - 菜品管理:修改、删除、是否推荐、是否下架 - 菜品显示:推荐菜品、菜品基本信息,已售数量,状态 ![image-20220624092942040](images/image-20220624092942040.png) | 卖家selllist页面卖家外卖商店清单 | http://{{ip}}/php_big_project/api/public/api/Goodslist/index | | -------------------------------- | ------------------------------------------------------------ | | 应用界面: | sellList页面 从token中获取的id | | 前端参数: | key 搜索关键字(为空表示显示所有菜品) | | | page 分页页码 | | | limit 分页大小 | | 代码功能: | 根据分页页码与大小查询goodslist表的菜品信息,如果设置了关键字key,就显示goods_name包含key的菜品信息 | | 返回值: | 成功时返回成功提示信息code及msg,并返回包括所有符合条件菜品信息的数组data以及数量total | image-20220624094941168 | 卖家selllist页面卖家更新或者添加页面 | http://{{ip}}/php_big_project/api/public/api/Goodslist/save | | ------------------------------------ | ------------------------------------------------------------ | | 应用界面: | sellList页面点击添加或者编辑按钮 | | 前端参数: | goods_name 商品名 | | | price 价格 | | | count 单次最大限购数量 | | | img 图片路径 | | | id 菜品id,如果不存在,则为添加操作,否则为更新操作 | | 代码功能: | 如果id不存在,则利用已有信息在goodslist生成一条新数据,反之根据id找到对应菜品并更新数据 | | 返回值: | 更新成功返回更新成功提示,插入成功返回插入成功提示,否则返回失败提示信息 | image-20220624095349261 | 卖家selllist页面外卖商品删除 | http://{{ip}}/php_big_project/api/public/api/Goodslist/delete | | ---------------------------- | ------------------------------------------------------------ | | 应用界面: | sellList页面点击删除按钮 | | 前端参数: | id 菜品id | | 代码功能: | 根据id删除goodslist表中的对应项 | | 返回值: | 删除成功时返回成功提示信息code及msg,失败时返回失败提示信息code及msg | ###### 商家订单 - 查看订单:商家查看订单消息以及新订单提示 - 修改订单:改变订单状态:已接单、已完成(商家订单数量增加、通知,菜品销量增加)、已取消 - 订单、菜品搜索 ![image-20220624095934749](images/image-20220624095934749.png) | 商家获取订单 | http://{{ip}}/php_big_project/api/public/api/Userindex/busindex | | ------------ | ------------------------------------------------------------ | | 应用界面: | sellOrder页面 | | 前端参数: | busid 商家id | | | key key不为空时表示搜索关键词 | | | kind 0表示按订单搜索,1表示按菜品命搜索 | | 代码功能: | 使用双层循环,外循环根据busid在busorder表中找到这个商家对应的所有订单并遍历; | | | 内循环根据busorder表的商家订单id在orderitem表中找到所有对应的订单项并记录在数组中; | | | 当设置了key时,如果kind为0,在外循环开始前为busorder表的链式查询增加一个where条件筛选订单号orderid含有key的订单; | | | 如果kind为1,在内循环开始前为orderitem表的链式查询增加一个where条件筛选菜品名goods_name含有key的订单项; | | | 当按菜品搜索时,还能过滤所有不包含符合条件菜品的订单项 | | 返回值: | 返回成功提示信息code及msg,以及一个数组order_list,数组包含所有符合条件的订单信息,以及每个订单所包含的菜品信息 | image-20220624095720251 | 商家修改订单状态 | http://{{ip}}/php_big_project/api/public/api/User/changestate | | ---------------- | ------------------------------------------------------------ | | 应用界面: | sellOrder页面点击按钮 | | 前端参数: | orderid 订单id | | | busid 商家id | | | state 订单修改之后的状态,0未接单,1接单,2已完成,3商家取消订单 | | 代码功能: | 根据orderid和busid可以唯一确定busorder表中的商家订单并更新状态; | | | 如果更新之后state为2,表明此时订单已完成,需要根据busid在admin表中找到对应商家并让订单完成数order_finished_order增加; | | | 同时根据商家订单id在orderitem表中找到所有包含在这个订单中的菜品并在goodslist表中相应地完成销量增加操作 | | 返回值: | 返回成功提示信息code及msg | ``` {"code":1,"msg":"接单成功"} ``` #### 其他通用模块 | 通用上传图片 | http://{{ip}}/php_big_project/api/public/api/Imagecommon/uploadimg | | ------------ | ------------------------------------------------------------ | | 应用界面: | 上传图片时通用 | | 前端参数: | formData 文件类型 | | 代码功能: | 将文件上传至应用根目录的upload子目录下 | | 返回值: | 成功时返回成功文件存储路径url以及提示信息code及msg,失败时返回失败信息code及msg | -