业务逻辑学习!

获取地址列表

  1. 方法传入一个token参数,首先解析获取token信息
  2. 获取用户id
  3. 构建查询条件,指定查询的用户id
  4. 设置查询结果按照地址进行降序
  5. 调用dao层查询 然后返回

查询条件为启用的json数组

  1. 首先创造查询条件,条件为1的,即状态为启用的
  2. 调用dao层进行查询返回一个数组对象
  3. 遍历查询结果并将结果构建到json对象中
  4. 最后存入数据

抽奖逻辑

  1. 方法中传入一个json和一个token
  2. 然后创建一个json的对象,用来获取其中的抽奖池id,抽奖次数以及支付金额
  3. 拿到token信息验证,获取用户id
  4. 根据拿到的id查询用户信息,获取用户当前的支付金额
  5. 判断用户的钱是否够抽奖
  6. 用数组集合 初始化抽奖结果列表,根据抽奖池ID查询普通商品列表,并根据商品概率初始化抽奖池
  7. 查询默认谢谢参与的商品ID和概率
  8. 进行多次抽奖,根据抽奖次数和抽奖池进行抽奖,并保存抽奖结果
  9. 根据商品ID查询商品封面图片,并添加到抽奖结果列表
  10. 更新用户支付金额和积分,根据新的积分值更新用户会员等级

登录

  • 首先参数json数据 需要从中获取用户名和密码
  • 创建查询条件,定义一个实例对象,绑定对应的账号和密码,并且设置状态必须为1
  • 调用dao层的查询返回一个集合对象
  • 判断查询结果至少存在一个管理员记录,则用户名和密码则匹配,否则登录失败
  • 当判断至少存在一条记录时,获取它的id并生成一个jwt令牌token对象
  • 创建一个新的 JSONObject 来存储管理员的 ID、姓名和生成的令牌。

处理订单请求

  1. 传入json和token数据,通过json得到用用户支付金额
  2. 验证用户的令牌并获取id,根据id查询用户信息
  3. 判断支付金额是否足够进行支付,从请求参数中获取订单详情
  4. 创建订单,在插入数据库,更新商品的销量、支付金额、积分。

商品发货

  1. 传入一个json对象,从json中获取商品的发货信息
  2. 创建商品实例,并设置订单id等信息,设置订单状态为已发货的状态
  3. 调用dao层更新订单信息

处理支付前的签名生成流程

  1. 通过jwt工具类解析出用户信息,获取唯一uid,通过uid调用dao层查询用户信息
  2. 获取支付金额,然后生成支付的订单,唯一的一个订单号,设置订单信息,最后将订单信息插入dao层的数据库中。
  3. 调用方法获取预支付的id,个方法通常与第三方支付平台(如微信支付)交互,以准备支付交易。
  4. 创建 SignInfo 对象并设置必要的信息,包括应用ID (appId)、时间戳 (timeStamp)、随机字符串 (nonceStr) 和预支付ID (repay_id)。生成签名信息
  5. 创建一个新的 JSONObject,并将签名信息和其它必要数据放入其中。
  6. 最后返回

与微信支付接口交互以获取预支付ID

  1. 创建一个 OrderInfo 对象并设置必要的订单信息
  2. 调用 Signature.getSign 方法生成签名,并将签名设置到 OrderInfo 对象上。
  3. 使用 HttpRequest.sendPost 方法向微信支付的统一下单接口发送 POST 请求,并接收返回的结果。
  4. 使用 XStream 库将从微信支付接口接收到的 XML 响应转换为 OrderReturnInfo 对象。
  5. 返回预支付的id
posted @   东三元  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示