发表于: 2019-08-19 20:32:00

1 830


今天完成的事情:

1.完成前台开发方案

一.开发工具

编译器:vsconde、webstorm

版本管理:svn

使用框架:vue-cli 3.10.0  文档:https://cli.vuejs.org/zh/

组件:element-ui              文档:https://element.eleme.cn/#/zh-CN

切图:photoshop

二.项目文档架构


三.方案设计

1、支付

需求描述
作为一个对课程感兴趣的用户,我想要支付购买课程或会员,以便于我可以解锁课程进行学习。

验收标准

1、支付方式只支持微信支付,成功调取支付接口,弹出支付窗口;

实现方案:

1.使用饿了么ui中的弹框    

2.

//将支付的认证和回调 封装成函数
        onBridgeReady(){
            let that = this
            WeixinJSBridge.invoke(
            //微信支付的一些认证  需要去网站设置好  然后在这调用
                'getBrandWCPayRequest', {
                    "appId":that.appId,                            //公众号名称,由商户传入     
                    "timeStamp":that.timeStamp,         //时间戳,自1970年以来的秒数     
                    "nonceStr":that.nonceStr,                //随机串     
                    "package":that.package,     
                    "signType":that.signType,         //微信签名方式:     
                    "paySign":that.paySign             //微信签名 
                },
                function(res){
                //这个是支付成功的回调
                
                    if(res.err_msg == "get_brand_wcpay_request:ok" ){
                    // 使用以上方式判断前端返回,微信团队郑重提示:
                            //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。

                            // alert(1)
                            // alert(res.err_msg)
                            that.$router.push({
                                path:'/ing',
                                query:{
                                    ordersn:that.ordersn
                                }
                            })
                    } else{
                    //else 支付不成功的回调
                    
                        // alert(2)
                        // alert(res.err_msg)
                        that.$router.push({
                            path:'/ing',
                            query:{
                                ordersn:that.ordersn
                            }
                        })
                    }
                }); 
        },

2、我的消息

需求描述
作为一个收到消息的用户,我想要查看这些发送给我的消息,以便于我可以及时处理。

验收标准

1、消息内容根据后台消息推送任务编辑;列表排序根据消息推送时间倒序排序;时间显示为消息进入到“我的消息”的时间;

2、未读消息图标右上角红点提示,点击进入活动页面即为已读,已读不提示;

3、点击跳转后台设置URL的“跳转连接”;

实现方案:

1.用饿了么ui中的layout布局来实现框架

2.调用后台接口,实现跳转到那个页面

3、我的

需求描述
作为一个个人信息有误或空缺的用户,我想要修改和完善个人信息,以便于我可以展示我的个性化,提高辨识度。

验收标准

1、个人信息显示头像、昵称、年级部,点击头像、年级部弹出选择窗口,点击昵称可编辑;


2、点击保存提示保存成功,未保存退出、返回,不保存变更数据;


3、点击客服电话弹出客服电话弹窗,点击呼叫直接拨号;

实现方案:


1.布局:flex 

2.路由跳转:

默认进入个人中心

无请求参数,get请求调用接口,获得用户id 昵称 年级 用户头像

有以下可用组件

    2.账户设置(同上)

    3.个人资料(同上)

    3.关于我们(写死)

    4.客服电话(写死)

3.个人资料:

    1.get请求调用接口获得用户id 昵称 年级 用户头像

    2.修改个人资料:

        切换年级

           *ngif指令显示选择窗口

           点击年级按钮,put发送请求更改个人资料,关闭窗口

        切换个签

           1.点击个人签名,跳转编辑签名组件

           2.textarea标签来做,max-length限制字数,wrap控制换行,根据text.length显示还可输入多少字.zorro组件里好像有计数

           3.required验证输入

           4.disabled禁用按钮

4、会员中心

需求描述
作为一个想拥有更多权益的用户,我想要开通成为会员,以便于我可以获得更多的权益并能区分我和普通用户的不同。


验收标准

1、会员信息显示是否开通会员,开通会员显示到期时间;

2、点击分类,该分类标签变颜色区分,且支持tab标签切换;

3、点击选择套餐边框变红色,背景颜色加深区分;默认选择第一项;

4、套餐设置优惠价格时,显示“减”图标,未设置优惠价格,不显示图标;省“X”元!X=套餐价格-优惠价格;每天Y元   Y=套餐价格或优惠价格/会员期限天数;

5、支付金额跟选择套餐价格变化;

6、点击弹出支付弹窗,并生成订单;

实现方案:

1. 从后台获取数据是否开通了会员

2.在点初中或者高中的时候,从后台获取不同的数据,使用鼠标事件来实现tab的切换 

3.初始状态默认是第一项,做点击事件,点击的时候,背景颜色加深,边框变成红色

4.调用后台的数据,

5.用数据监听,在循环中判断他们的位置来,实现是多少钱         

6.使用饿了么ui来实现弹窗,支付成功后返回给后台数据 

5、我的收藏

需求描述
作为一个将喜欢的任务进行了收藏的用户,我想要查看我收藏的任务,以便于我可以快速找到我喜欢的任务并进行学习。

验收标准

1、列表排序按收藏时间倒序排序,显示任务/习题名称以及所属章节-课程-学科-年级部;


2、点击实心心形图标提示弹窗“取消收藏成功”,图标变空心,任务/习题不从列表删除,点击空心图标提示弹窗“收藏成功”,图标变实心;

实现方案:

1. 带class参数,默认文章get请求 获取该用户收藏内容;

2.在点击取消或者收藏时,把数据发送给后台。

6、我的订单

需求描述
作为一个购买过课程或会员的用户,我想要查看我的订单,以便于我可以清楚的了解到我进行过哪些消费以及消费的明细。

验收标准

1、订单列表根据订单状态分类,支持tab切换,订单信息显示订单编号、订单状态、课程名称、课程所属学科(会员订单显示所属会员套餐)及金额,排序按用户提交订单时间倒序排序;


2、待支付订单,提示15分钟倒计时,计时结束订单自动取消,点击取消订单并确认可手动取消订单,状态变为已取消,点击去支付弹出支付窗口;


3、点击订单进入相应的“订单详情”页面;


4、订单详情显示信息与列表页相同;


5、点击客服电话弹出客服电话号弹窗;


6、订单信息显示订单编号及下单时间,已支付订单显示支付时间,已取消订单显示取消时间;


7、待支付订单详情,顶部显示15分钟倒计时,计时结束订单自动取消,点击取消订单并确认可手动取消订单,状态变为已取消,点击去支付弹出支付窗口;

实现方案:

1.布局:flex,获取后台数据

2.倒计时用组件来实现,取消或者支付都发送数据给后台来改变他们的属性

3.跳转页面

4. 获取后台数据与列表页同步

5.气泡提示框显示客服电话(写死)

6.条件判断,支付了就没有时间,没支付就有倒计时

7.同上

7、我的课程

需求描述
作为一个购买并学习过课程的用户,我想要查看我购买和学习的课程,以便于我可以了解课程进度并继续学习。


需求描述
作为一个购买并学习过课程的用户,我想要查看我购买和学习的课程,以便于我可以了解课程进度并继续学习。


验收标准

1、分类根据用户选择年级部展示,如用户选择高中部,分类展示高中部学科分类;“全部”分类默认存在,且位于首位,其他分类排序同首页;

2、显示用户在该课程最后学习章节的名称,以及用户本课程已学完的百分比;

3、课程列表按用户开通课程时间倒序排序;

4、点击进入相应课程“章节列表”页面;

实现方案:

1.条件判断,高中部的放在一起,以此来归类,

2.按照条件来排顺序,购买了的放前面,

3.路由跳转

8、错题本

需求描述
作为一个做错过习题的用户,我想要查看我做错了哪些习题,以便于我可以了解我哪些知识掌握不好并及时巩固。

验收标准

1、错题本分类根据用户选择年级部展示;如用户选择高中部,分类展示高中部学科分类;显示该学科下所有错题数量,没有显示0;无错题学科不可点击跳转;


2、点击学科分类,进入对应学科”错题列表“页面;错题排序按时间倒序,单个错题显示8行数据,超过部分用“...”表示;


3、点击错题,进入对应”错题详情”页面;


4、点击查看解析,展开解析内容,查看解析按钮隐藏,正确选项图标亮色区分;


5、点击知识点进入习题所属章节列表,同时展开习题所在的任务列表;

实现方案:

1. 调用后台数据,显示在页面,做条件判断,显示为0的,不能跳转

2.点击对应学科跳转到对应错题列表,按时间排序,超过8行数据用...表示

3.点击错题,进行跳转页面

4.点击查看解析,显示隐藏部分,正确的选项图标用颜色分。

5.点击进行页面跳转到习题所在的任务列表

9、任务习题模块

需求描述
作为一个在学习时发现学习的知识点有欠缺的用户,我希望能在学习时收藏任务,以便下次查找并巩固。

验收标准

课程详情页上方显示课程封面,由后台新增课程里的封面上传;

封面上显示专题所属学科和课程名称;

下方显示章节列表,点击章节card展开任务列表,再次点击收起;

章节详情页,展开章节,出现章节下任务列表

列表样式同任务详情页的任务列表;


若为教学视频,显示视频任务图标
若为刷题先锋,显示刷题先锋图标;
若为习题,显示习题图标;

点击任务跳转到任务详情页

学过的任务图标、连接线和文字显示为该专题颜色



任务类型分为两种:视频和习题;

视频任务分为两种:刷题先锋和教学视频;

习题任务分为:选择、判断、填空;

任务的图标分为三种,详见原型图;


视频任务:

任务详情页任务封面后台上传,

任务简介由后台上传;

刷题先锋可以在后台设置难度等级,以星星方式展示,点击问号跳转难度等级说明页面;后台未勾选则不显示此模块;


猜你薄弱:

猜你薄弱内容由后台设置:

里面可以是课程、章节、任务,由后台添加
点击课程跳转到该课程的课程详情页;课程只显示课程封面(后台上传封面),和课程名称(课程名称最多15个字)
点击章节跳转到该章节的章节详情页并展开该章节下的所有任务,跳转到该课程的课程简介页;章节只显示章节封面和章节名称
点击任务,则跳转到该任务页
视频任务显示视频封面,视频名称和视频图标;

习题任务显示习题封面,习题名称和习题图标;


后台没有添加相关内容时,不显示该板块;
个数超出3个时的情况,可以左右切换;


进度条:

底部按钮上方由进度条,几个任务就是几个条数,蓝色表示看过的任务和正在看的任务,灰色表示没有点开过的任务;

退出能保存进度


收藏:

点击收藏可以收藏任务,按钮变为已收藏,再次点击可以取消收藏;

未登录状态下点击收藏夹,弹出登陆页面;

下个任务:

点击下个任务跳转到下个任务页面;

若学习完该课程下所有任务,下个任务按钮变成学习完成;


任务列表:

点击任务列表, 按顺序展示所有任务,用图标区分任务,点击某一个任务跳转到该任务页,默认选中当前正在进行的任务,点击X收起任务列表;

任务列表固定上边界与视频下边界对齐,任务很多时可以滑动到下面;


若任务是视频:

非会员和未登录用户进入VIP任务页,视频无法播放;

播放器显示:开通会员或购买课程后可以观看所有视频;

播放器页面显示开通vip按钮,购买课程按钮

点击立即开通
1、如果用户已经登录,打开新页面跳转到会员简介页
2、用户未登录,点击开通会员弹出的登陆弹窗;


登录成功后若用户为非会员,跳转会员简介页;成功开通会员后,回到此页面,可以观看视频;
若用户已开通过会员,可以直接观看视频;

若后台未添加视频链接,显示固定封面;


习题任务:

点击提交出现答案解析,提交按钮消失;

填空题点击提交显示的正确答案,如有多个,答案与答案之间要用一个字符空格隔开;

任务里,视频下方的文字、图片,练习题中的文字、图片、音频、视频的样式;

实现方案:

1.布局:flex 

2.从后台调用数据,来显示圆形需要的样式。

10、章节

需求描述
作为一个未购买会员或未购买课程的用户,我希望能看到课程简介和目录,以便于我了解这个课程是否适合自己

验收标准

课程详情页上方显示课程封面,由后台新增课程里的封面上传;

封面上显示专题所属学科和课程名称;

下方显示章节列表,点击章节card展开任务列表,再次点击收起;

章节详情页,展开章节,出现章节下任务列表

实现方案:

1.从后台获取数据, 

2.根据原型图来实现布局

11、课程

需求描述
作为一个新用户,我希望能看到每个学科相对应的课程列表,以便于我查看一个学科下所有的课程

验收标准

先选择年级部,选择学科,显示学科对应的课程列表

年级部分为初中部和高中部

学科分为初中数学、初中语文、初中英语、初中物理、初中化学

              高中数学、高中语文、高中英语、高中物理、高中化学

课程列表页显示课程封面、课程名称、课程已购人数和价格

课程封面由后台新增课程里的封面上传决定;

点击某一课程跳转至课程详情页,若课程为收费课程,跳转到课程简介页;


专题可以在后台专题管理设置价格

所有课程必须购买或者开通会员

会员可观看所有收费内容;


点击付费课程:

1、若用户已经登录注册,并且是会员或购买过该课程,点击该课程直接进入课程详情页;

如果未开通过会员或购买过课程,跳转到课程简介页;

2、用户未登录注册,点击购买弹出登录注册弹窗

登录注册成功后:
若用户未购买过该课程或未办理过会员,直接进入课程简介页,点击购买课程弹出购买弹框,点击办理会员进入开通简介页
成功购买课程或开通会员后,登录成功后直接进入课程详情页,可以观看所有视频


课程简介页

课程简介页内容由后台上传,包含课程名称、课程封面、简介、价格

下方有购买课程按钮和加入vip按钮;固定在底部;

点击加入vip按钮进入会员简介页;

点击购买课程弹出支付弹框:

实现方案:

1.同上来实现效果。

2.在客户要看课程的时候需要收费,但是收费的前提是需要账号的,这时候需要用户申请一个账号。

3.有了账号后才能购买课程

12、推荐课程

需求描述
作为一个运营,我希望给好的课程增加曝光,以便让更多人了解课程并学习课程。

验收标准

点击推荐课程进入课程详情页面

课程详情显示推荐课程封面、主题、价格、介绍

实现方案:

1.当点击课程后进行页面跳转。

2.严格按照原型图来实现功能

13、登录注册

需求描述
作为一个想学习的用户,我想要登陆注册,以便于使用应用更多的功能

验收标准

绑定新账号:

可绑定未注册过的手机号;

输入手机号,手机号格式为11位数字,输入正确时可点击获取验证码按钮,点击“获取验证码”按钮,“获取验证码”按钮置灰
按钮变为“获取验证码(60)”并开始倒计时,倒计时结束数字为0后按钮恢复原样,可点击“获取验证码”再次获取验证码。

· 所有验证码输入框设置最多输入6位;

· 手机号已注册直接进入h5

· 验证码错误,点击登录提示“验证码错误”

实现方案:

1.在微信上显示是否授权,是的话,自己进入页面。

2.绑定为注册过的手机号码,发送给后台,后台发送验证码。

明天计划的事情:

1.开始复盘

遇到的问题:

1.暂时还没

收获:

1.梳理了下自己要写的代码



返回列表 返回列表
评论

    分享到