Sectran Product Requirements Document
Ryan 1/5/2024
| Date | Revision History | Revision Class | Comments |
|---|---|---|---|
| 1/4/2024 | 1.0 | New Released new document. | Released new document. |
# Table of Contents
[TOC]
# Data Model
# Response status codes
| Status Code | Description | Response Message |
|---|---|---|
| 0x0060 | Request Successful | Successful request |
| 0x0061 | Invalid Parameter List | Bad request - Invalid parameter list |
| 0x0062 | User Needs Reauthentication | Unauthorized - User needs to reauthenticate |
| 0x0063 | Unauthorized User | Forbidden - Unauthorized user |
| 0x0064 | Requested Target Not Found | Not Found - Requested resource not found |
| 0x0065 | Forbidden Access to the API | Forbidden - Access to the API is not allowed |
| 0x0066 | Account Locked | Locked - User account is locked |
| 0x0067 | Request Timeout | Request Timeout |
| 0x0068 | Processing | Processing |
# User
# database structure
| Column Name | Data Type | Nullable | Default Value | Description |
|---|---|---|---|---|
| user_id | int(11) | No | AUTO_INCREMENT | User ID |
| account | varchar(255) | No | User account | |
| password | varchar(255) | No | User password | |
| username | varchar(255) | Yes | NULL | User name |
| dept_id | int(11) | No | User's department ID | |
| disable | tinyint(1) unsigned | No | 0 | Indicates if the account is disabled |
| description | varchar(255) | Yes | NULL | Account description |
| create_time | datetime(6) | No | CURRENT_TIMESTAMP(6) | Creation timestamp |
| create_by_uid | int(11) | No | Creator's user ID | |
| role_id | int(11) | No | User's role ID | |
| telephone | varchar(15) | Yes | NULL | User's phone number |
| varchar(100) | Yes | NULL | User's email address |
# User Addition API
# Overview
This API is used to add a new user to the system.
# Request
- URL:
/users/add - Method:
POST
# Request Parameters
| Parameter Name | Type | Required | Default | Description |
|---|---|---|---|---|
account | String | Yes | User account | |
password | String | Yes | User password (encrypted) | |
username | String | No | NULL | User name |
dept_id | Integer | Yes | User's department ID | |
disable | Boolean | No | false | Indicates if the account is disabled (default: false) |
description | String | No | NULL | Account description |
role_id | Integer | Yes | User's role ID | |
telephone | String | No | NULL | User's phone number |
email | String | No | NULL | User's email address |
# Response
| Field | Description | Example Value |
|---|---|---|
| Code | Status Code | 0x0060 |
| Msg | Message | Request Successful |
| Data | User info without Password | ...... |
| Field | Description | Example Value |
|---|---|---|
| Code | Status Code | 0x0061 |
| Msg | Message | Invalid Parameter List |
| Data | NULL | NULL |
# User Query API
# Overview
This API allows clients to perform a fuzzy search for users based on specified criteria with pagination support.
# Request
- URL:
/users/query - Method:
POST
# Request Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
account | String | No | Account name for fuzzy search |
username | String | No | Username for fuzzy search |
email | String | No | Email address for fuzzy search |
telephone | String | No | Telephone number for fuzzy search |
role_id | Integer | No | Role ID for fuzzy search |
is_disabled | Boolean | No | Filter by user account disable status (true/false) |
page | Integer | No | Page number for pagination (default: 1) |
page_size | Integer | No | Number of items per page (default: 10) |
# Response
| Field | Description |
|---|---|
Code | 0x0060 |
Msg | Request Successful |
Data.Users | Array[User] |
Data.TotalItems | Total number of users matching the criteria |
| Field | Description | Example Value |
|---|---|---|
| Code | Status Code | 0x0061 |
| Msg | Message | Invalid Parameter List |
| Data | NULL or | NULL |
# User Deletion API
# Overview
This API allows clients to delete one or more users based on the provided array of user IDs.
# Request
- URL:
/users/delete - Method:
DELETE
# Request Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
user_ids | Array[Integer] | Yes | Array of user IDs to identify users for deletion |
# Response
| Field | Description |
|---|---|
Code | 0x0064 |
Msg | Part Requested Targets Not Found |
Data.FailedUserIds | Array of user IDs that could not be deleted |
# DEPT
# database structure
| Column Name | Data Type | Nullable | Default Value | Description |
|---|---|---|---|---|
| dept_id | int(11) | No | AUTO_INCREMENT | Department ID |
| name | varchar(48) | No | Department name | |
| description | varchar(1024) | Yes | NULL | Department description |
| parent_id | int(11) | No | Parent department ID | |
| child_ids | varchar(4096) | No | Comma-separated list of immediate child department IDs, sorted in ascending order | |
| create_by_uid | int(11) | Yes | NULL | Creator's user ID |
| region | varchar(1024) | No | Department location | |
| create_time | datetime(6) | Yes | CURRENT_TIMESTAMP(6) | Creation timestamp |
# Role
# database structure
| Column Name | Data Type | Nullable | Default Value | Description |
|---|---|---|---|---|
| role_id | int(11) unsigned | No | AUTO_INCREMENT | Role ID |
| name | varchar(11) | No | Role name | |
| description | varchar(1024) | Yes | NULL | Role description |
| create_by_uid | int(11) | No | Creator's user ID | |
| create_time | datetime(6) | No | CURRENT_TIMESTAMP(6) | Creation timestamp |
