请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师能加个qq吗?

https://img1.sycdn.imooc.com/szimg//581f5f9b000180e309601280.jpg

老师 我在做一个项目 是不是能基于我们的建站课程的思路来做 想请老师 提供一些思路 感谢老师

这是一个客户推荐记录的系统 首先 A 只要推荐给3个人 就会从未达标显示成一个 达标,这样应该怎么去写?

第二,能查到 a 或者其他人 发送了给谁 我使用随机生成码的办法来记录 这样就知道谁是谁推荐的了 ,然后 现在又有两个问题 1.用什么方式来生成随机码? 2.以往 查询某人 在课程中的方法是id 即 findById: 那么 这里应该用什么? 我的想法是 在如图 第4列的随机码(别人的)那里 查询一个例如:xx1 那么就能显示 这一列所有xx1的都显示出来 就可以查到 但具体用什么方法?

第3,推荐3个人以上 就显示达标 那么该用什么方法?

正在回答

3回答

Scott 2016-11-07 08:49:55

用户的 schema 增加 3 个字段就够了

- A 自己的推荐码,存到自己身上的: code

- B 注册人填入的推荐码,也会存到自己身上: inviteCode

- A 是否达标,inviteDone,它的值是 true 或者 false,默认给它存 false


A 推荐给  3 个人,或者 30 个人你其实没办法知道,所以这应该是 A 推荐成功 3 个人就达标对吧。


推荐成功也就是这 3 个人,拿着 A 的码注册成功,那么逻辑写在这里就可以了,每一个人来注册的时候,先正常保存,保存的时候,再为这个人也生成一个随机码,生成随机码可以用 https://sedemo-mktb.rhcloud.com/ 的示例 2 也就是 https://github.com/speakeasyjs/speakeasy 来做,保存之后,然后看看它从前台有没有提交推荐码,如果有,再:


User.find({inviteCode: 'xxx'}) 看看查到的 users 是不是大于等于 3,如果满足,说明 A 推荐的人达标


此时再去把 A 从数据库里揪出来: User.findOne({code: 'xxx'}),找到 A 之后,把 A 的 inviteDone 改成 true 保存。


以后从数据库里查 User.find({inviteDone: true}) 就把所有达标的用户给揪出来了。

1 回复 有任何疑惑可以回复我~
  • 提问者 莫大帅逼 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2016-11-07 16:37:09
Scott 2016-11-07 17:20:32

判断条件加上,if (inviteDone) 显示达标 else 显示未达标

0 回复 有任何疑惑可以回复我~
  • 提问者 莫大帅逼 #1
    好的,那A 自己生成的随机码 是schma里面去写一个静态方法吗?
    回复 有任何疑惑可以回复我~ 2016-11-07 23:00:05
提问者 莫大帅逼 2016-11-07 16:40:08

老师 A自己生成一个码 且保存 和   invitecode 默认一个false 但是 前端页面是写成未达标 这个应该怎么写? 老师启发一下~~

0 回复 有任何疑惑可以回复我~
  • 提问者 莫大帅逼 #1
    好的,那A 自己生成的随机码 是schma里面去写一个静态方法吗?
    回复 有任何疑惑可以回复我~ 2016-11-07 22:59:41
  • Scott 回复 提问者 莫大帅逼 #2
    可以从外面新建用户数据的时候,生成存上去,这样比较灵活
    回复 有任何疑惑可以回复我~ 2016-11-08 11:12:57
  • 提问者 莫大帅逼 回复 Scott #3
    哦 好的  谢谢老师 课程中 schma中的静态方法 有fetch  和 findnById 还有什么其他的吗? 还是说这个名字是自定义的?  如果想在schma中在写一个方法 例如查询含有某个数据的所有人 他该怎么写?
    回复 有任何疑惑可以回复我~ 2016-11-08 11:21:03
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信