《仿盒马》app开发技术分享-- 逻辑优化第一弹(81)

鸿蒙小林
• 阅读 4

技术栈

Appgallery connect

开发准备

随着上一节我们兑换商品订单相关逻辑的实现,我们的app功能已经更加的完善了,接下来我们开始对整个app缺失的小功能以及对已有的功能bug进行优化和逻辑的新增,这一节我们新增的功能是,商城订单的揽收 功能,兑换订单的取消后积分退回功能,如果不实现积分退回,就会出现用户兑换后取消订单,但是积分已经消耗的情况

功能分析

要实现商城订单的揽收功能,首先需要在待发货列表里新增确认揽收按钮,并新增修改订单状态的功能,然后我们在兑换订单点击取消按钮后把扣除掉用户的积分返还给用户。

代码实现

首先我们在列表中新增确认揽收按钮,实现相关的逻辑

 Row({space:10}){
                  Text()
                  Blank()
                  Text("确认揽收")
                    .fontColor(Color.Black)
                    .fontSize(12)
                    .padding(5)
                    .borderRadius(10)
                    .backgroundColor(Color.Pink)
                    .onClick(async ()=>{
                      let orderPush=new order_list()
                      orderPush.id=item.id
                      orderPush.user_id=this.user!.user_id
                      orderPush.order_product_id=item.order_product_id
                      orderPush.order_code=item.order_code
                      orderPush.order_status=1
                      orderPush.order_remark=item.order_remark
                      orderPush.address=item.address
                      orderPush.nickname=item.nickname
                      orderPush.phone=item.phone
                      orderPush.order_create_time=item.order_create_time
                      orderPush.order_pay_time=this.formatCurrentDate()
                      orderPush.order_delivery_time=this.formatCurrentDate()
                      let num = await databaseZone.upsert(orderPush);
                      if (num>0) {
                        this.onRefresh()
                        showToast("揽收成功")
                      }
                    })

                }
                .width('100%')

然后我们实现积分兑换订单取消后把积分返还给用户

if (num>0) {
                      showToast("兑换取消成功")

                      let points=new points_info()
                      points.id=Math.floor(Math.random() * 1000000)
                      points.user_id=this.user!.user_id
                      points.points=String(item.points)
                      points.points_type='0'
                      points.address='客户端下单奖励'
                      points.year=this.year
                      points.month=this.month
                      points.day=this.day
                      points.time=this.time
                      points.create_time=this.year+"-"+this.month+"-"+this.day+" "+this.time
                      let nums1 =  await databaseZone.upsert(points);
                      this.onRefresh()
                    }

现在我们就不会出现用户退单后积分已经消费的问题了

点赞
收藏
评论区
推荐文章
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 确认订单页(业务逻辑)(30)
技术栈Appgalleryconnect开发准备上一节我们实现了确认订单页的页面绘制和价格计算优惠计算,订单列表展示等功能,这一节我们来实现确认订单页的整个业务逻辑。首先我们要实现的就是地址的选择,然后把我们计算的价格,商品列表等数据保存起来,然后我们开始
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 个人中心页优化(62)
技术栈Appgalleryconnect开发准备上一节我们实现了订单逻辑的优化,现在我们的app功能更加的完善了,并且随着我们的迭代逻辑疏漏越来越少,现在我们继续进行优化,在之前的业务逻辑中我们的个人中心页面展示了用户的余额以及积分商城入口,这里我们要展示
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 兑换页地址商品展示(71)
技术栈Appgalleryconnect开发准备上一节我们实现了商品兑换的校验功能,这能很好的帮助用户节省更多的时间,同时也能减小服务器的开销,同时我们的业务逻辑也会更加的完善功能也更加的丰富了,这一节我们实现校验通过后的内容,实现地址的选择和兑换商品信息
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 兑换订单提交(73)
技术栈Appgalleryconnect开发准备上一节我们实现了兑换提交前的准备页面,向用户展示了兑换相关的所有信息,这一节我们就可以实现兑换订单的提交了功能分析订单提交我们需要创建对应的兑换商品订单提交信息表,我们需要把地址,商品信息,积分,备注,订单状
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 兑换订单列表框架(75)
技术栈Appgalleryconnect开发准备上一节我们针对订单兑换的业务逻辑进行了完善,成功的在兑换物品之后修改了用户信息的修改,新增了积分消费的记录。这一节我们实现订单创建之后进入的列表展示页框架。功能分析兑换商品的订单列表框架我们选择使用tabs,
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 待发货兑换订单列表(76)
技术栈Appgalleryconnect开发准备上一节我们实现了兑换订单展示页面的框架,这一节我们要进行兑换订单的展示,在兑换订单提交后,默认的状态是待发货状态,我们用列表的方式展示出来功能分析进入页面时我们就要通过用户的userid去查询对应的订单,获取
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 兑换商品取消订单&取消列表展示(77)
技术栈Appgalleryconnect开发准备上一节我们实现了兑换订单待发货列表的展示逻辑,成功的在列表中展示出来,我们在订单条目中新增了两个按钮,确认揽收与取消订单,这一节我们要实现的功能是订单的取消,以及订单取消后取消列表的展示功能分析要实现订单取消
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 兑换商品确认揽收&待收货列表展示(78)
技术栈Appgalleryconnect开发准备上一节我们实现了订单取消功能,实现了tabs切换时的数据刷新,实现了已取消订单的列表展示。这一节我们要实现揽收功能,并且实现待收货的列表展示功能功能分析当我们点击确认揽收的时候,修改订单状态ordertype
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 兑换商品收货确认&已完成列表展示(79)
技术栈Appgalleryconnect开发准备上一节我们实现了兑换商品订单的确认揽收功能,实现了tabs切换时的数据刷新,实现了待收货订单的列表展示。这一节我们要实现确认收货功能,并且实现待收货的列表展示功能功能分析当我们点击确认揽收的时候,修改订单状态
鸿蒙小林 鸿蒙小林
10小时前
《仿盒马》app开发技术分享-- 逻辑优化第二弹(82)
技术栈Appgalleryconnect开发准备这一节我们继续对我们已有的业务逻辑进行优化,在积分兑换完商品后我们回到积分展示页面发现积分的数量并没有减少,而是重新进入才会发生变化,上一节我们实现商城订单的确认揽收之后继续在待收货页面实现确认揽收按钮的业务