一 httpClient
二、小程序登录,微信登录
1、用户登录
{1}查看api 前端传入code 也就是UserLoginDTO,最后返回 id,openid,token 也就是UserLoginVO
{2}controller
这里通过JwtUtil.createJWT来获取token , jwtProperties.getUserSecretKey(), jwtProperties.getUserTtl()在yml配置文件中写了,这里直接调用的
{3}UserServiceImpl
这里直接调用的getopenid方法 1.这里使用HttpClientUtil来访问微信小程序
2.判断openid是否存在,不存在就直接抛出
3.openid为新用户就注册 注意builder() 用在实体类上这里的是User 而不是user,最后需要用.build()接
如下是小程序的调用方式,请求参数需要填到HttpClientUtil的doGet里面去
{4}mapper
{5}最后创建JwtTokenUserInterceptor ,跟JwtTokenAdminInterceptor一样
添加自定义拦截器
三、购物车开发
1、添加购物车
前端传的参数是ShoppingCartDTO
{1} controller
{2}serviceImpl
1、这里我们需要把ShoppingCartDTO复制带ShoppingCart,用ShoppingCart进行数据库的增删改查
2、首先判断加入购物车的商品是否已经存在 ,加入商品一次只能传入一个 (这里根据ShoppingCart去动态查询)
2.1、如果存在加入的商品数量就加1
2.2、如果不存在那就添加到购入车数据
2.2.1、如果传入的是dish_id(菜品id) 这里需要根据dish_id去查询菜品,将菜品信息存入ShoppingCart
如果传入的是setmeal_id(套餐id) 同样这里需要根据setmeal_id去查询套餐,将套餐信息存入ShoppingCart
这里的userid是在token里面导出来的
2、查看购物车
在serviceImpl中 通过token得到userId,由于在添加购物车中mapper已经有了动态查询购物车,
所以这里将userId存入到 new的ShoppingCart中,再直接调用已有的动态查询购物车。
标签:02,这里,token,购物车,ShoppingCart,外卖,查询,苍穹,id From: https://www.cnblogs.com/1468697304qq/p/17689112.html