• mynote modules
  • 首页
  • 文章缩略图
  • footer
  • feedback
  • 推荐作者、文章
  • 推荐文章
  • 用户
  • 用户表
  • 注册
  • 登录
  • 注销
  • 个人中心
  • git remote url & git ssh key
  • 新用户流程
  • 用户配置 user config
  • 关注逻辑
  • 用户信息统计
  • 获取 用户信息 api
  • 推荐作者页
  • 消息系统
  • log系统
  • mynote modules

    首页

    banner管理 
    lv1=mynote lv2= type=done
    banner水平、垂直居中,不要拉伸;同理,缩略图一样处理
    lv1= lv2= type=todo
    图片的content type要正确设置 (头像)
      nginx add header?
    不要加随机数,使其能够缓存

    文章缩略图

    需要提前剪裁

    footer

    feedback

    推荐作者、文章

    排序逻辑
    1、置顶的
    2、推荐时间
    推荐文章管理 

    推荐文章

    三数据:评论、点赞、阅读数
    加载更多 后,所有数据重新测试

    用户

    lv1=mynote lv2= type=todo

    用户表

    username -
    name + ,账号名,注册时用户设置的唯一
    id从10000开始

    注册

    注册后自动生成用户文件夹,初始化git仓库,设置好git remote url。参见git remote url & git ssh key 
    curl gogs 添加协作者 windows下有问题: 

    登录

    http://zentao.uninote.com.cn/zentao/task-view-3.html
    /**
     * 登录弹框
     */
    showLogin() {
      this.$store.commit("auth/SHOW_LOGIN", true);
    },

    注销

    个人中心

    lv1= lv2= type=todo

    git remote url & git ssh key

    注册后自动生成git url & git ssh key,用户可以在此设置、获取
    lv1= lv2= type=todo
    gogs 用户登录:用户可以在用户中心设置密码;如果用户登录了mynote,gogs可以免登录

    新用户流程

    注册用户,得到id
    根据id,修改git server config,push
    将id配置到client
    执行init docs
    写一篇文章
    lv1= lv2= type=todo

    用户配置 user config

    界面布局等

    关注逻辑

    uid 关注 fuid;取消关注,status = 0,而不是删除记录
    SELECT
      '--' as '用户信息',
    	u.nick,
      u.username,
      '--' as '关注的用户信息',
      u2.id,
      u2.username,
      u2.nick
    ''
    FROM
    	`user` u
    LEFT JOIN `userfollow` f ON u.id = f.uid and f.`status` = 1
    LEFT JOIN `user` u2 ON f.fuid = u2.id
    order by nick
    -- select * from user
    lv1= lv2= type=

    用户信息统计

    E:\uninote\mynote\sql\tools\user_stat.sql
    所属模块:首页、作者页、个人主页、作者搜索、用户中心
    数据统计字段:(文章、关注、粉丝)
    统一格式,顺序,中文冒号
    三种改变情况:
    手动(增量)、repo update(增量)、repo sync(完成后重新统计指定用户的文章数)
    外部修改更新 repo update 
    repo sync 
    ---- 考虑点:
    follow:检查 uid 是否存在
    检查是否存在记录
    可能删除多个文件
    文件系统与数据库 不同步状态下,以实际删除为准
    重复发送请求处理

    获取 用户信息 api

    换一换:从头开始
    是否包含最近文章?
    用 lastid 分页还是 offset? 后者

    推荐作者页

    http://uninote.com.cn/author
    lv1= lv2= type=todo
    点击头像到作者首页
    以后有了作者信息页,展示此页
    lv1=mynote lv2= type=todo

    消息系统

    系统消息,全部用户,登录才读取,写到个人信箱
    用户动态,写入动态表,粉丝需要时再拉取,不广播
    点赞、评论是一类消息(类似朋友圈),但与聊天消息区分
    自己不能关注自己
    站内通讯系统推送消息结构
    动态类型推送消息:
    发送文章 => 关注的人(public)
    文章点赞 => 关注的人(public) 文章作者(private)
    发送评论 => 本层的人和文章作者(private)
    评论点赞 => 本层的人和文章作者(private)
    影响:
    1)自己关注自己,自己给自己的文章点赞就会是2情况有两条。
    2)自己关注自己,自己发文章会手到关注消息我发了文章。
    3)发送评论由于推送消息的对象是集合(本层的人和文章作者),聊天消息栏目会有显示自己给多个人发信息。
    4)评论点赞和上面一个3)的影响一样。
    先简单处理:用户注册时间晚于消息创建时间的,不显示
    全部、部分 * 已读、删除、未读
    仿照qq邮箱,这个不要了

    log系统

    mynote tool links 
    log输出sessionid
    log查询
    log parser/ana