2023.7.17
主要开发人员是我,卓哥,易佬。
今天下午和那边对接,大概知道了目前开发进度,需要的技术栈。准备补充一下微信小程序开发方面的知识。
7.21
后端文档来之前先对现有代码进行布局调整及功能规划。
主要修改了界面输入限制问题 界面排布问题。
左右布局改为上下布局,有效解决左右对齐问题。
7.22
记录一下对抽奖以及验券过程的思考:
用户扫商家码 - 》 检测是否登录 - 》 已登录 - 》 解析商家码 - 》 将解析出的id传给后端 - 》 后端通过id找出对应店家 将必要信息返回前端 - 》 前端本地获取用户位置,进行位置校验 - 》距离合格 - 》 将用户信息 商家id传给后端 作为参数调用开盲盒的api - 》 抽出奖券 存入卡包 同时用户界面跳转到奖券图案界面
位置校验+抽奖(建议在原接口基础上修改) —— 通过storeid + 用户位置 判断用户是否处在其范围内,失败返回非成功值,如成功则进行抽奖,并返回奖券图片。
校验:商家用户扫奖券上的码 检查奖券和消费商家是否一致 奖券是否已使用 满足条件后 后端完成验券 返回成功的信息
数据反馈:
前端提供商户storeid 后端返回给前端以下数据:
1. 返回商家的推广次数
2. 返回商家的被推广次数
关于推广/被推广次数的解释:
被推广次数:
未来收取服务费的基础,所有商家二维码产生店家券的次数
推广次数:
本店的二维码产生的扫码数量,是支付服务费的基础
举例:
某景区当日扫码人数为10000,因为扫码会带出推广,因此产生收益,同日,本景区的推广信息在其他店的二维码扫中15000次,这数据是需要支付推广费用的。假如推广和被推广都是1元一条,即该景区当天的收益是10000元、需支付的推广费为15000元。
通过商业合作或者商家入驻来获得商家的身份权限 达到和普通用户区分开的目的
7.23
调通了登录和获取位置信息的api,可以获取奖券。
7.24
开发时使用的getuserProfile在查阅文档之后发现已经不能使用,开发时还是要注意阅读更新文档。
7.25
由于后端团队api给的太慢 先开发一些可有可无的功能 设置昵称 名字等。
7.26
使用了二维码库来生成每张奖券对应的唯一二维码,以供商家进行核销,但现在后端还没做出核销api,所以整体功能还是无法展示。
上传用户头像只能以文件形式上传而不能url,向后端团队反映了此问题,进行接口修改。
7.27
发现bug 用户位置超出范围或其他要求不达标 也会获取奖券成功 初步断定为后端问题 没有对错误信息进行校验 而是设计时打算让前端进行。另外写了个测试版本供月底的公共展示使用。卓哥开发时遇到了设置昵称时的bug。自定义昵称会显示为null,或者此次设置的昵称在下次设置时出现。
7.30
今天实现了按钮从下到上渐入动画。
WXML
<view class="box"></view>
WXSS
@-webkit-keyframes my-animation {
0% {
opacity: 0;
-webkit-transform: translateY(100%);
transform: translateY(100%);
}
100% {
opacity: 1;
-webkit-transform: translateY(0);
transform: translateY(0);
}
}
.box {
width: 100px;
height: 100px;
background-color: red;
-webkit-animation: my-animation 1s ease-in-out;
animation: my-animation 1s ease-in-out;
}
以及实现了页面间奖券信息的传递,以供第二个页面渲染出获得的奖券信息。这里踩了几个坑,原因是对微信小程序本地存储与页面间信息传递不熟练。
wx.setStorageSync('key', data); //使用这个函数进行存储要传递的信息
在接受数据页面先在data里定义变量
data:{
key2:""
}
再在onLoad里调出存储数据,存储到页内变量中。
const key = wx.getStorageSync('key');
this.setData({
key2:key
});
最后在wxml中进行调用渲染。
<image src="{{key2}}" ......><image>
8.4
今天修改了抽奖后界面的跳转,后端增加了appid path url三个参数,appid path决定了跳转外部小程序的页面,url则是跳转到外部链接。
页面间传递这三个参数用的是wx.setStorageSync()api,要注意的是,如果有参数为空,则不能使用此api,否则会产生报错而阻塞。应该在保存前使用判断是否为null来决定是否保存。
通过今天的coding,主要加深了页面间参数传递方法的理解,以及对各页面参数指定有了初步理解。that.data. this.data. ....。还有内部外部页面 链接 其他小程序等的跳转api以及规则。
8.13
实现了旅游打卡路径的前端显示,使用小程序的map库实现把点连成线,以及进一步的api对接开发建议。
8.15-8.16凌晨
今天卓哥主要搞了打卡记录的分享,最初想法是调用截屏类api,后来发现没有这类api,猜测是权限过高,最后使用检测截屏的api引导用户主动截屏实现。我主要负责商家版登录和推送,被推送次数的返回。这里踩进了个大坑,每次登录都会显示一次非法用户,推送次数等也显示不了,除非用静态变量作为storeid参数。最后推测是js异步问题导致。小程序onshow()部分和onload()部分还要区分一下,最开始把返回api写在onshow,会导致显示不了,如果放在onload的登录后就ok,最后是把推送被推送api以及头像昵称请求都放在了onload里,显示正常,非法用户显示也消失了。 奇妙的异步。
8.18
今天主要问题是验券api加入了经纬度两个参数,要想办法在验券时将用户当前经纬度作为参数给商家验券。最后的解决方法是在用户进入奖券二维码界面时,将用户当前位置拼接到二维码字符串中,商家端扫码后将得到的result字符串进行分割,分离出经纬度数据插入data完成验券,避免截图进行验券情况的发生。
9.23-9.24
bug:点击奖券后逻辑为跳转到外部链接视频,同时小程序内跳转到赞助页面。安卓、鸿蒙均跳转正常,ios出现无法跳转外部链接的问题,尝试修改跳转到现有界面等方法均失败,无法触发navigateto。但在一次成功后,均未出现该问题。猜测是小程序对ios的策略问题。
10.27
商家端增加了手机号绑定,增加短信发送验证码,如果后台检测账号未与手机号绑定,则进行绑定,再跳转到商家主页。
Comments NOTHING