zoukankan      html  css  js  c++  java
  • 消息系统的设计

    简介:

    消息系统主要分为了两种

    ① 站内信

        公告,私信(运营到用户),群组通信,全员信息

    ② 站外信

        短信,邮件,微信提醒

    例图:

    数据库设计:

    一、消息信息表

    create table `news` (

        `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',

        `content` text NOT NULL COMMENT '消息内容',

        `type` tinyint(1) NOT NULL COMMENT '消息类型,1:公告,2:站内信,3:群组信,4:全员发送',

        `sender` int(11) unsigned NOT NULL COMMENT '发送者id',

        `senderName` varchar(80) NOT NULL DEFAULT '' COMMENT '发送者名称',

        `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '1,发送,2,撤销',

        `createTime` int(11) unsigned NOT NULL,

        PRIMARY KEY (`id`),

        KEY index_c (`createTime`)

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='消息信息表';

    用户消息表

    create table `userNews` (

        `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',

        `isRead` tinyint NOT NULL DEFAULT 0 COMMENT '是否已经读取 0,未读:1,已读',

        `user_id` int unsigned NOT NULL COMMENT '消息所有者',

        `notify_id` int unsigned NOT NULL COMMENT '关联notify表的id',

        `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '1,发送,2,撤销',

        `createTime` int(11) unsigned NOT NULL,

        PRIMARY KEY (`id`),

        KEY index_u_s_c (`user_id`, `status`, `createTime`)

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户消息表'

    分组关联表

    create table `userGroup` (

        `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',

        `groupName` varchar(40) NOT NULL COMMENT '分组名',

        `groupId` int(11) unsigned NOT NULL DEFAULT 0,

        `user_id` int(11) unsigned NOT NULL COMMENT '消息所有者',

        `createTime` int(11) unsigned NOT NULL,

        PRIMARY KEY (`id`),

        KEY index_g (`groupId`)

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户分组表'


    服务层设计:

    新建一条公告

    1. 请求地址

    2. 请求类型
      POST

    新建一条私信

    1. 请求地址

    2. 请求类型
      POST

    新建一条群组消息

    1. 请求地址

    2. 请求类型
      POST

    新建一条全员消息

    1. 请求地址

    2. 请求类型
      POST

    获取用户未读消息数

    1. 请求地址

    2. 请求类型
      POST

    获取用户消息列表

    1. 请求地址

    2. 请求类型
      POST

    实时获取用户消息

    1. 请求地址

    2. 请求类型
      POST

    发送短信

    1. 请求地址

    2. 请求类型
      POST

    发送邮件

    1. 请求地址

    2. 请求类型
      POST
  • 相关阅读:
    springcloud-Ribbon之手写轮询算法
    springcloud-Ribbon负载均衡规则的替换
    git本地库和远程库的连接和断开
    本地项目第一次提交到码云或github
    python基础语法练习
    Xss-labs-level11-15
    Vulnhub-靶机-ESCALATE_LINUX: 1
    Xss-labs-level7-10
    Vulnhub-靶机-DC: 6
    Jenkins入门之执行Powershell脚本
  • 原文地址:https://www.cnblogs.com/tangchuanyang/p/6004106.html
Copyright © 2011-2022 走看看