瑞吉外卖项目遇到的问题

管理端业务开发

1.员工管理相关业务

1.1 新增员工

问题:在输入电话号码后死活不能通过前端验证,一直让我输入正确的手机号码,换成自己的电话号码19818713221也不行,中间以为是我不小心修改了前端的代码,替换成老师的前端代码也不行。

解决方法:把电话号码换成了老师在视频里的输入的那个13112345678,就行了,自己不太清楚前端验证的原理,反正自己的电话号码就是不行。好了,自己发现了他的校验规则代码,在名为validate.js的文件中,以下是代码,不支持19开头的手机号,真垃圾。

1
2
3
4
5
6
7
function isCellPhone (val) {
if (!/^1(3|4|5|6|7|8)\d{9}$/.test(val)) {
return false
} else {
return true
}
}

2.分类管理相关业务

2.1 菜品或套餐分类的删除

问题:执行两段基本一样的代码,第一段代码可以正常执行,第二段代码却不行。

访问路径为http://localhost/category?id=1397844263642378242

具体代码为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@DeleteMapping
public R<String> delete(Long id) {
log.info("删除分类,id为{}", id);
categoryService.removeById(id);

return R.success("分类删除成功");
}

@DeleteMapping("/{id}")
public R<String> delete(@PathVariable Long id) {
log.info("删除分类,id为{}", id);
categoryService.removeById(id);

return R.success("分类删除成功");
}

问题原因:第二种是rest风格,请求路径必须用/分隔开,而自己的请求路径最后是用?分割的,所以这个方法不行。

移动端业务开发

1. 购物车相关业务

1.1 购物车点击减号删除菜品时异常

问题:在购物车点击+时正常添加,但是当点击-减号时减到0,菜品仍然在购物车中。

解决办法:还是因为自己很菜看不懂前端代码,我是看弹幕才知道的,前端控制购物车中菜品的出现是返回值的number,具体原理和前端代码我也看不明白,反正把返回值Shoppingcart的number当减为零时设置为0就可以了。

linux配置服务

1. 无法远程连接linux中的mysql服务器

解决办法:主要是怪自己粗心大意,直接粘贴了资料上的命令没有仔细看,最后一个root要填的是自己的密码,但自己一直直接复制使用的,导致昨晚搞了很长时间,如果仔细看视频的也不会出现这些问题,主要是自己倍速看很粗心。

1
grant all on *.* to 'root'@'%' identified by 'root';    -- 这里最后的root填写自己的密码

未解决的问题

1. 修改地址簿时回显有问题

它的标签并不会显示在数据库中保存的标签,而是默认的标签,没找到解决办法。