Skip to content

A project that provices the api interface for fontend,which helps people to manage their daily project whenever cooperat with others or self.

Notifications You must be signed in to change notification settings

CoderWDD/Cooperation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cooperation

A project that provices the api interface for fontend,which helps people to manage their daily project whenever cooperat with others or self.

需求分析:

  • 为什么要做:
    • 原因一:
      • 现状:在现有的To Do List软件中,都是以细化粒度来实现对时间的划分安排
      • 现实:我们在对学习/项目等进行安排计划时,很难将其粒度细化,此时,不妨将粒度划分地稍大些,将每日每时的计划,安排为阶段性来实施
      • 好处:划分简易,任务大体进度把握有度
    • 原因二:
      • 现状:在进行团队合作的时候,我们很需要将项目进行分工,并且可以实时了解到其他人的进度,方便调整自己的进度和需求
    • 原因三:
      • 现状:市面上的大部分类似软件,要么功能过于单一简单,要么功能种类繁多,上手有一定门槛,为学习增加了无形的压力
      • 好处:自定义性高,上手无难道,基本必须功能整合

数据表关系:

image

数据表创建:

  • user表:
    create table user(
        user_id int unique not null auto_increment primary key comment '主键id,自增长',
        user_name varchar(64) not null default 'username' comment '用户名称',
        nick_name varchar(64) default 'nickname' comment '用户昵称',
        password varchar(64) not null default 'password' comment '用户密码,默认为NULL',
        phone varchar(32) default null comment '用户注册时候的手机号',
        first_name varchar(64) default 'firstname' comment '用户名字',
        last_name varchar(64) default 'lastname' comment '用户姓氏',
        department varchar(64) default 'department' comment '用户所属部门',
        `description` varchar(128) default 'description' comment '用户个性签名',
        avatar mediumblob default null comment '用户头像',
        delete_flag int default '0' comment '删除标志(0代表未删除,1代表已删除)',
        create_time datetime default now() comment '用户注册时间,默认为当前时间,类型为:YYYY-MM-DD HH:MM:SS',
        sex varchar(1) default '0' comment '用户性别(0男,1女,2未知)'
    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 comment '用户表';
    
  • project表:
    create table project(
        project_iD int auto_increment unique not null primary key comment '项目id,自增长',
        `status` varchar(32) default 'todo' comment '项目当前状态,默认未完成',
        project_name varchar(64) default 'project name' comment '项目名,默认为project name',
        project_time datetime default now() comment '项目创建时间,默认为当前时间,类型为:YYYY-MM-DD HH:MM:SS',
        `description` varchar(100) default 'no description' comment '项目描述,简介',
        priority int default 1 comment '1:重要紧急;2:重要不紧急;3:不重要紧急;4:不重要不紧急',
        `invitation_code` varchar(32) unique default '0' comment '该项目的邀请码',
        author varchar(32) default 'author' comment '项目的创建者,默认为author'
    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 comment '项目表';
    
  • taskitem表:
    create table taskitem(
        `item_id` int auto_increment unique not null primary key comment '任务id,自增长',
        project_id int not null default 0 comment '任务所属的项目的id,默认为0,即0为所有任务共属的项目id',
        project_name varchar(64) default 'project name' comment '项目名,默认为project name',
        `status` varchar(32) not null default '未完成' comment '任务当前状态,默认未完成',
        author varchar(64) default 'author' comment '任务的创建者,默认为author',
        executor varchar(64) default 'executor' comment '任务的执行者,默认为executor',
        priority int default 1 comment '1:重要紧急;2:重要不紧急;3:不重要紧急;4:不重要不紧急',
        item_name varchar(64) default 'item name' comment '任务名,默认为item name',
        item_time datetime default now() comment '任务创建时间,默认为当前时间,类型为:YYYY-MM-DD HH:MM:SS',
        `description` varchar(128) default 'description' comment '任务介绍、简介,默认为description'
    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 comment '任务表';
    
  • uidpid表:
    create table uidpid(
        user_id int not null comment '用户id',
        project_id int not null default 0 comment '项目id,默认为0'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment '用户项目关联表';
    
  • pidtid表:
    create table pidtid(
        project_id int not null default 0 comment '项目id,默认为0',
        item_id int not null comment '任务id'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment '项目任务关联表';
    
  • uidpidauid表:
    create table uidpidauid(
        user_id int not null comment '用户id',
        project_id int not null comment'项目id',
        au_id int not null comment '权限id'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment '用户权限管理表';
    
  • authentication表:
    create table authentication(
        au_id int auto_increment not null primary key comment '权限id,从1开始自增长',
        an_name varchar(32) not null default 'user' comment '权限名,默认为普通'
    )ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 comment '权限表';
    
  • uidtidauid表:
    create table uidtidauid(
        user_id int not null comment '用户id',
        item_id int not null comment '任务id',
        au_id int not null comment '权限id'
    )ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment '用户任务权限关联表';
    

About

A project that provices the api interface for fontend,which helps people to manage their daily project whenever cooperat with others or self.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published