【作品分享】90%参照教程开发的小程序成品——花辞典
69

需求分析

花辞典是我们将要构建的项目名称,是一个对内容付费类型的小程序。本软件将使用完全定制化的方式来构建,仅基于Laravel框架。

1. 角色

在辞典中,将会出现以下角色:

  • 空白用户——仅仅是访问过小程序;
  • 授权用户——授权小程序获取过昵称及头像;
  • 正式用户——绑定完手机号;
  • 会员——付费用户,拥有特殊权限(阅读、下载);
  • 管理员——辅助站长做内容管理;
  • 站长——权限最高的用户角色;

2. 信息结构

主要信息有:

  • 用户——模型名称 User,付费阅读为“用户核心”产品,除花卉数据外所有内容都围绕用户来进行;
  • 分类——模型名称 Category,花卉大类,例如鲜切花、塑料花、盆栽。
  • 品类——模型名称 Sort,鲜切花的品类,每一个品种必须对应一个品类,品类由管理员创建;
  • 花卉(品种)——模型名称 Breed,花辞典最核心数据;
  • 品牌——模型名称 Brand,花卉的品牌;
  • 颜色——模型名称 Color,花卉的颜色,用于编码,存在“双色”等情况;
  • 色值——模型名称 ColorItem,具体描述花卉颜色,例如:红、蓝、白;
  • 属性——模型名称 AttrName、AttrValue,花卉的属性,用于编码;
  • 花卉图片——模型名称 Image,花图册核心数据,每一张图片必须对应一个花卉;
  • 广告——模型名称 Advert,前期主要盈利点;
  • 订单——模型名称 Order,会员购买订单,支持团购活动,记录会员购买;
  • 团购——模型名称 Group,让用户能够进行团购;
  • 下载记录——模型名称 DownloadLog,记录用户下载;
  • 用户反馈——模型名称 Suggest,记录用户反馈;
  • 用户图片——模型名称 UserImage,用户自己上传的图片;
  • 下载次数增加记录——模型名称 TimeLog,记录用户下载次数增加的原因;

次要信息有:

  • 消息通知
  • 足迹
  • 搜索记录
  • 花卉行情
  • 站点配置

3. 用例

为了减少重复,用例的顺序做了编排,排后的高权限角色适用前面角色的用例。

1. 游客

  • 游客可以通过微信接口自动创建空白用户(能记录分享链接)
  • 游客可以绑定手机号码,绑定之后赠送免费阅读权限

2. 正式用户

  • 正式用户可以查看所有品类的列表
  • 正式用户可以查看所有会员购买规则
  • 正式用户可以创建会员购买订单
  • 正式用户可以分享会员购买订单(拼团)
  • 正式用户可以对订单进行支付
  • 正式用户可以看到个人页面
  • 正式用户可以查看会员权益页面、用户协议页面、续费提醒页面等站点信息
  • 正式用户可以创建建议反馈
  • 正式用户可以查看消息列表
  • 正式用户可以分享程序吸引新用户注册并获得下载次数奖励

3. 会员

  • 会员可以查看所有花卉(品种)列表
  • 会员可以查看所有花卉(品种)详情(包括花卉图片)
  • 会员可以查看花卉行情
  • 会员可以使用搜索功能对花卉进行检索
  • 会员可以查看历史搜索记录
  • 会员可以查看足迹列表
  • 会员在有下载次数的情况下可以下载花卉原图

4. 团购流程

用户所创建的团购类型订单总共存在五个状态:待发起、拼团中、拼团成功、已退款、发起失败

  • 用户通过购买规则创建订单,状态为待发起,收到支付接口成功通知之后变为拼团中
  • 其他用户可以直接对拼团中的订单进行支付,发起成功之时起24小时内有3个人同时对此订单成功支付,则视为拼团成功,否则失败退款(可配置)

实际情况比需求描述复杂的多得多

5. 花卉图片

  • 花卉图片上传之后系统会进行处理,保存为三份:原图、下载图、水印缩略图
  • 对花卉图片的资源进行防下载处理,无法通过本程序之外的任何客户端进行访问

实际情况比需求描述复杂的多得多得多

接口编写

整个项目完成之后总共有40个接口,使用Dingo\Api进行编写

界面展示

file

file

file

file

file

file

后台截图

file

file

file

file

小程序二维码

file

暂时不考虑开源,但准备将来把一些难点单独写成文章分享给各位同学
比如图片处理、图片下载、支付、团购等等
祝大家学习愉快~

本帖已被设为精华帖!
本帖由系统于 1周前 自动加精
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 12
Summer

难得看到如此高品质的作品分享,界面很棒 :+1:

1周前

厉害咯!

1周前
野犭

很强
个人觉得小程序 UI 简洁精致
全部都是一个人完成的么
厉害了

另外 手机型号 iphone 7
file

1周前
huajuntang

可惜不开源;-(

1周前

@huajuntang 。。。

1周前
patrickouc

能开源吗

1周前
BradStevens

漂亮

1周前
surest

好赞

1周前

后台界面用的什么 UI,看着很舒心

1周前

不错!!!

1周前

做了多久?

1周前

希望你能把团购,拼团这部分的思路分享一下

1周前

  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!