mirror of
https://github.com/michaeldv/pit.git
synced 2025-12-09 16:05:35 +00:00
59 lines
2.6 KiB
C
59 lines
2.6 KiB
C
#if !defined(__MODELS_H__)
|
|
#define __MODELS_H__
|
|
|
|
typedef struct _Project {
|
|
ulong id;
|
|
char name[128]; /* Project name. */
|
|
char status[16]; /* Project status. */
|
|
ulong number_of_open_tasks; /* Number of open tasks. */
|
|
ulong number_of_closed_tasks; /* Number of closed tasks. */
|
|
ulong closed_by; /* Who closed the project? */
|
|
ulong created_by; /* Who created the project? */
|
|
ulong updated_by; /* Who last updated the project? */
|
|
time_t closed_at; /* When the project was closed? */
|
|
time_t created_at; /* When the project was created? */
|
|
time_t updated_at; /* When the project was last updated? */
|
|
} Project, *PProject;
|
|
|
|
typedef struct _Task {
|
|
ulong id;
|
|
ulong project_id; /* Which project the task belongs to? */
|
|
char name[128]; /* Task name. */
|
|
char status[16]; /* Task status. */
|
|
char priority[16]; /* Task priority. */
|
|
time_t deadline; /* Task deadline. */
|
|
ulong number_of_notes; /* Number of notes. */
|
|
ulong closed_by; /* Who closed the task? */
|
|
ulong created_by; /* Who created the task? */
|
|
ulong updated_by; /* Who last updated the task? */
|
|
time_t closed_at; /* When the task was closed? */
|
|
time_t created_at; /* When the task was created? */
|
|
time_t updated_at; /* When the task was last updated? */
|
|
} Task, *PTask;
|
|
|
|
typedef struct _Note {
|
|
ulong id;
|
|
ulong task_id; /* Task the note belongs to. */
|
|
char message[255]; /* The body of the note. */
|
|
ulong created_by; /* Who created the note? */
|
|
ulong updated_by; /* Who last updated the note? */
|
|
time_t created_at; /* When the note was created? */
|
|
time_t updated_at; /* When the note was last updated? */
|
|
} Note, *PNote;
|
|
|
|
typedef struct _Activity {
|
|
ulong subject_id; /* Reference to the specific Project, Task, or Note. */
|
|
char subject[16]; /* Project, Task, or Note. */
|
|
char message[255]; /* Log message. */
|
|
ulong created_by; /* Who added log message? */
|
|
time_t created_at; /* When log message was added? */
|
|
} Activity, *PActivity;
|
|
|
|
typedef struct _User {
|
|
ulong id;
|
|
char username[32]; /* Username. */
|
|
char email[32]; /* User's email. */
|
|
} User, *PUser;
|
|
|
|
#endif
|