我的毕业设计--数据库设计之工单管理

Posted in 2017-1-1 9:3 | Category: 生活随笔 | Tags: 毕业设计 工单 生活随笔

工单设计

工单基本字段

  • 工单标题
  • 工单类型
  • 工单状态
    • 已提交
    • 已确认
    • 正在处理
    • 已完成
  • 工单内容
  • 工单附件 可多个附件(最多3个)
    • 图片
    • 文档
  • 提交人
  • 提交人手机
  • 提交人邮箱
  • 处理内容
    • 处理单独分表
  • 处理人
    • 可有多个处理人
  • 时间相关
    • 提交时间
    • 处理时间

逻辑实现

数据库设计

工单表

tablename: ticket
字段名 字段类型 字段描述 是否为空 是否unique 默认值
title String(128) 工单标题 False False  
description String(1024) 工单内容 False False  
ticket\_type String(10) 工单类型 False False 产品服务
status String(10) 状态 False False 已提交
phone String(14) 手机号 False False  
email String(49) 邮箱 False False  

处理表

tablename: handle
字段名 字段类型 字段描述 是否为空 是否unique 默认值
content String(1024) 处理内容 False False  
ticket\_id Integer 关联ticket的主键 False False  
ticket   工单 False False  

附件表

tablename …

我的毕业设计--数据库设计之站内信(二)

Posted in 2017-1-1 9:3 | Category: 生活随笔 | Tags: 毕业设计 站内信 生活随笔

基本站内信

需要的字段:

  • 发送方
  • 发送时间
  • 信件标题
  • 信件内容
  • 信件类型
    • 公告
    • 账户信息
    • 工单信息
    • 产品服务
    • 申请结果
    • 其他
  • 信件状态
    • 未读
    • 已读
    • 删除
  • 接收方
    • 某个人
    • 某个群体
    • 全部用户

设计

message_text表

字段名 描述 其他
title 信件标题  
content 信件内容  
message\_type 信件分类  
sender 发送者  
groups 接收组 可为空,可多个

message表

字段名 描述 其他
status 信件状态  
receiver 接收人 只能为一
message\_text 关联的信件主体内容 不能为空

逻辑实现

到全部用户

发送

直接保存内容到 message_text 表中 指定接收方设为空

接收

先找到 message_text 表的关联数据 messages 为空的全部数据

保存数据到 message 表中

message:

  • receiver
    • 为当前登陆用户
  • message_text …

我的毕业设计--数据库设计之站内信

Posted in 2016-12-26 14:56 | Category: 生活随笔 | Tags: 毕业设计 站内信 生活随笔

站内信设计

<2016-12-29 四>更新 添加站内信与用户组关系

逻辑实现

点对点(私信)

  • 发送方 sender
  • 接收方 receiver
  • 状态 status
  • 信息内容 message
  • 信息分类 message_type
  • 发送时间 created_at

    点对点发送消息比较简单,每次发送为单表时插入 sender, receiver, message, created_at

    (伪代码) - 获取未读信息

    select message from message where reveiver_id == 'user.id' and status = 'unread';
    
    • 获取系统未读信息

      select message from message where reveiver_id == 'user.id' and status = 'unread' and message_type = 'sys' - 获取已读信息

      status = 'read'

点到局部(新增)

考虑到发送消息到某一特定群体,某一组,需要站内信与用户组关联

使用多对多关系

group_message = db.Table(
    'group_message',
    db.Column('group_id', db.Integer, db.ForeignKey('group.id')),
    db.Column('message_text_id', db.Integer, db.ForeignKey('message_text.id')))

class MessageText():
    ......
    groups = db.relationship(
        Group,
        secondary=group_message …

我的毕业设计--数据库设计之登陆注册

Posted in 2016-12-25 8:4 | Category: 生活随笔 | Tags: 毕业设计

登陆注册数据库设计

共同字段:

  • id 主键,自增ID

用户表

tablename: user
字段名 字段类型 字段描述 是否为空 是否unique 默认值
username string(20) 用户名 False True  
password string(100) 密码 False False  
email string(49) 邮箱 False True  
is_superuser bool 是否为超级管理员 False False False
is_confirmed bool 邮箱是否验证 False False False
register_time datetime 注册时间 False False UTC时间
last_login datetime 上次登陆 True False  

用户信息表

tablename: userinfo
字段名 字段类型 字段描述 是否为空 是否unique 默认值
avatar string(128) 头像路径 True False  
company string(128) 公司 True False  
website string(128) 网址 True False  
user_id integer 关联用户表外键 True True  
user   与用户信息成一对一关系      

用户设置表

tablename: usersetting
字段名 字段类型 字段描述 是否为空 是否unique …