Skip to main content

Survey API

The survey API provides all the functions related to survey.

Endpoints

# Endpoints


Create survey

創建問卷

Request (SurveyCreationReq)

POST /web/survey
{
"title": "日常習慣調查",
"link": "http://www.google.com.hk"
}

Response

{
"success": true,
"message": "",
"data": null
}

Get survey

獲取問卷詳情

Request

GET /web/survey/{id}

Response (SurveyDetailResp)

{
"success": true,
"message": "",
"data": {
"id": "0d9a41b1-4681-4eda-a1cd-f0d15d43bd20",
"title": "日常習慣調查",
"link": "http://www.google.com.hk",
"createdAt": "2024-07-11T01:44:20.981262Z"
}
}

Survey page

問卷分頁

Request (SurveyFilterPageReq)

POST /web/survey/page
{
"searchKey": "調查",
"pagination": {
"page": 1,
"size": 10
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
]
}

Response (SurveyPageResp)

{
"success": true,
"message": "",
"data": {
"pagination": {
"page": 1,
"size": 10,
"totalItems": 1,
"totalPages": 1
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
],
"items": [
{
"id": "0d9a41b1-4681-4eda-a1cd-f0d15d43bd20",
"title": "日常習慣調查",
"link": "http://www.google.com.hk",
"createdAt": "2024-07-11T01:44:20.981262Z"
}
]
}
}

Update survey

更問卷信息

Request (SurveyUpdateReq)

PUT /web/survey
{
"id": "71ffcc0b-f4da-4fea-b1ed-887df98d05db",
"title": "日常習慣調查1",
"link": "http://www.baidu.com"
}

Response

{
"success": true,
"message": "",
"data": null
}

Delete survey

删除社區資源詳情

Request

DELETE /web/survey/{id}

Response

{
"success": true,
"message": "",
"data": null
}

Add survey org user

增加問卷機構對象

Request (SurveyBatchUserReq)

POST /web/survey/org-user
{
"surveyId": "5fe04663-2da9-47e7-8ee9-02ad8d011c93",
"userIds": [
"5cda9dfb-cc85-4e9b-a829-f270f40eabf4",
"93bd81f4-b9c1-4f80-942c-76ec4f82214d"
]
}

Response

{
"success": true,
"message": "",
"data": null
}

Add survey free user

增加問卷無機構對象

Request (SurveyBatchUserReq)

POST /web/survey/free-user
{
"surveyId": "5fe04663-2da9-47e7-8ee9-02ad8d011c93",
"userIds": [
"5cda9dfb-cc85-4e9b-a829-f270f40eabf4",
"93bd81f4-b9c1-4f80-942c-76ec4f82214d"
]
}

Response

{
"success": true,
"message": "",
"data": null
}


Survey org user page

問卷機構對象分頁

Request (SurveyUserPageFilterReq)

POST /web/survey/org-user/page
{
"surveyId": "5fe04663-2da9-47e7-8ee9-02ad8d011c93",
"loginID": "mha",
"pagination": {
"page": 1,
"size": 10
},
"sortings": []
}

Response (SurveyOrgUserPageResp)

{
"success": true,
"message": "",
"data": {
"pagination": {
"page": 1,
"size": 10,
"totalItems": 1,
"totalPages": 1
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
],
"items": [
{
"surveyUserId": "e4913a1a-3ee0-40d7-8eff-cb5b977feb00",
"userId": "5cda9dfb-cc85-4e9b-a829-f270f40eabf4",
"username": "mhahkNormal",
"email": "mhahkNormal@example.com",
"phone": null,
"district": "北區",
"userType": 1,
"staff": "",
"disabled": false,
"sendAt": "2024-07-15T07:12:57.052481Z",
"status": 1
}
]
}
}

Survey org join page

分配問卷機構對象分頁

Request (OrgUserPageDtoReq)

POST /web/survey/org-join/page
{
"surveyId": "610f0684-df3a-4222-9530-5fb8d6de6d7e",
"loginID": "examp",
"userTypes": [
2
],
"statuses": [
false
],
"districtIds": [
"81f6abaa-2930-11ef-b50f-4a12d8c2d6fc",
"81f6ac90-2930-11ef-b50f-4a12d8c2d6fc"
],
"staffIds": [
"81f6abaa-2930-11ef-b50f-4a12d8c2d6fc",
"81f6ac90-2930-11ef-b50f-4a12d8c2d6fc"
],
"pagination": {
"page": 1,
"size": 10
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
]
}

Response (OrgUserPageDtoResp)

{
"success": true,
"message": "",
"data": {
"pagination": {
"page": 1,
"size": 10,
"totalItems": 5,
"totalPages": 1
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
],
"items": [
{
"userId": "93bd81f4-b9c1-4f80-942c-76ec4f82214d",
"email": "cheaper@example.com",
"lastLogin": "2024-06-19T16:37:55.171929",
"username": "cheaper",
"phone": "67654321",
"district": "九龍城",
"userType": 2,
"serviceNumber": "123456789",
"staff": "呂渚餁",
"disabled": false,
"status": 1,
"joinedAt": "2024-06-19T12:29:14.335698"
},
{
"userId": "b67b50e3-bd7f-4d79-a788-7a168f4f0a20",
"email": "mhahkPIR@example.com",
"lastLogin": null,
"username": "mhahkPIR",
"phone": null,
"district": "北區",
"userType": 2,
"serviceNumber": "12345678",
"staff": "史大督",
"disabled": false,
"status": 1,
"joinedAt": "2024-06-13T12:26:08.765752"
}
]
}
}

Survey free user page

問卷無機構對象分頁

Request (SurveyUserPageFilterReq)

POST /web/survey/org-user/page
{
"surveyId": "5fe04663-2da9-47e7-8ee9-02ad8d011c93",
"loginID": "mha",
"pagination": {
"page": 1,
"size": 10
},
"sortings": []
}

Response (SurveyFreeUserPageResp)

{
"success": true,
"message": "",
"data": {
"pagination": {
"page": 1,
"size": 10,
"totalItems": 1,
"totalPages": 1
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
],
"items": [
{
"surveyUserId": "e4913a1a-3ee0-40d7-8eff-cb5b977feb00",
"userId": "5cda9dfb-cc85-4e9b-a829-f270f40eabf4",
"username": "mhahkNormal",
"email": "mhahkNormal@example.com",
"phone": null,
"district": "北區",
"disabled": false,
"sendAt": "2024-07-15T07:12:57.052481Z",
"status": 1
}
]
}
}

Survey free join page

分配問卷無機構對象分頁

Request (FreeUserPageDtoReq)

POST /web/survey/free-join/page
{
"surveyId": "610f0684-df3a-4222-9530-5fb8d6de6d7e",
"loginID": "exam",
"districtIds": [
"81f6ae5c-2930-11ef-b50f-4a12d8c2d6fc",
"81f6a9e8-2930-11ef-b50f-4a12d8c2d6fc"
],
"statuses": [
false
],
"pagination": {
"page": 1,
"size": 10
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
]
}

Response (FreeUserPageDtoResp)

{
"success": true,
"message": "",
"data": {
"pagination": {
"page": 1,
"size": 3,
"totalItems": 7,
"totalPages": 3
},
"sortings": [
{
"direction": "DESC",
"property": "createdAt"
}
],
"items": [
{
"userId": "78eb4f9e-b186-45c1-80f7-8de49dd455ee",
"email": "gabik@example.com",
"lastLogin": null,
"username": "gabik",
"phone": "97654321",
"nickname": "賈碧",
"district": "中西區",
"disabled": false,
"status": 1
},
{
"userId": "1905e907-20e3-46b7-80ec-01ec976d6d78",
"email": "user5@example.com",
"lastLogin": null,
"username": "user5",
"phone": null,
"nickname": null,
"district": "其他",
"disabled": false,
"status": 1
},
{
"userId": "605655bd-aae0-4ba7-b9ca-ac017cd54385",
"email": "user9@example.com",
"lastLogin": null,
"username": "user9",
"phone": null,
"nickname": null,
"district": "中西區",
"disabled": false,
"status": 1
}
]
}
}

Send survey

發送問卷給對象

Request (SurveyUserBatchReq)

POST /web/survey/send
{
"surveyUserIds": [
"5cda9dfb-cc85-4e9b-a829-f270f40eabf4",
"93bd81f4-b9c1-4f80-942c-76ec4f82214d"
]
}

Response

{
"success": true,
"message": "",
"data": null
}

Delete survey user

刪除問卷對象

Request (SurveyUserBatchReq)

DELETE /web/survey/users
{
"surveyUserIds": [
"5cda9dfb-cc85-4e9b-a829-f270f40eabf4",
"93bd81f4-b9c1-4f80-942c-76ec4f82214d"
]
}

Response

{
"success": true,
"message": "",
"data": null
}

Resources

SurveyCreationReq

properties
  • title
    string
    required
    [1 ... 50]
    問卷標題
  • link
    string
    required
    [1 ... 255]
    問卷連結

SurveyDetailResp

properties
  • id
    string
    required
    問卷ID
  • title
    string
    required
    問卷標題
  • link
    string
    required
    問卷連結
  • createdAt
    string
    required
    問卷創建時間

SurveyFilterPageReq

properties
  • searchKey
    string
    required
    關鍵字

SurveyPageResp

This class extends PaginationAndSorting

properties
  • items
    surveyDetailResp[]
    required
    關鍵字

SurveyUpdateReq

properties
  • id
    string
    required
    問卷ID
  • title
    string
    [1 ... 50]
    問卷標題
  • link
    string
    [1 ... 255]
    問卷連結

SurveyBatchUserReq

properties
  • surveyId
    string
    required
    問卷ID
  • userIds
    array[string]
    問卷接收對象ID

SurveyUserPageFilterReq

properties
  • surveyId
    string
    required
    問卷ID
  • loginID
    string
    問卷對象搜索關鍵詞

SurveyOrgUser

properties
  • surveyUserId
    String
    required
    問卷用戶關係ID
  • userId
    String
    required
    用戶ID
  • username
    String
    required
    用戶名稱
  • email
    String
    required
    用戶信箱
  • phone
    String
    用戶電話
  • district
    String
    required
    用戶地區
  • userType
    Number
    required
    用戶類型
  • staff
    String
    跟進員工
  • disabled
    Boolean
    required
    是否凍結
  • sendAt
    String
    required
    發送時間
  • status
    number
    用戶狀態:0-凍結,1-正常,2-等待移除

SurveyOrgUserPageResp

This class extends PaginationAndSorting

properties
  • items
    SurveyOrgUser[]
    required
    問卷用戶列表

SurveyFreeUser

properties
  • surveyUserId
    String
    required
    問卷用戶關係ID
  • userId
    String
    required
    用戶ID
  • username
    String
    required
    用戶名稱
  • email
    String
    required
    用戶信箱
  • phone
    String
    用戶電話
  • district
    String
    required
    用戶地區
  • disabled
    Boolean
    required
    是否凍結
  • sendAt
    String
    required
    發送時間
  • status
    number
    用戶狀態:0-凍結,1-正常,2-等待移除

SurveyFreeUserPageResp

This class extends PaginationAndSorting

properties
  • items
    SurveyFreeUser[]
    required
    問卷用戶列表

SurveyUserBatchReq

properties
  • surveyUserIds
    array[string]
    required
    問卷接收對象ID列表

OrgUserPageDtoReq

properties
  • surveyId
    string
    required
    surveyId
  • loginID
    string
    搜索字段
  • userTypes
    array[int]
    用戶類別:1-普通會員 2-計畫會員
  • statuses
    array[boolean]
    用戶狀態:true-凍結,false-正常
  • districtIds
    array[string]
    區域ID
  • staffIds
    array[string]
    職員ID
  • pagination
    pagination
    required
    分頁參數
  • sortings
    排序字段

OrgUserPageDtoResp

This class extends PaginationAndSorting

properties
  • userId
    String
    required
    用戶ID
  • email
    String
    required
    郵箱
  • lastLogin
    datetime
    最後上線日期
  • username
    String
    用戶名
  • phone
    String
    電話號碼
  • district
    String
    required
    區域
  • userType
    int
    required
    1,2
    用戶類別:1-普通會員 2-計畫會員
  • serviceNumber
    String
    服務編號
  • staff
    String
    負責職員
  • disabled
    boolean
    required
    用戶狀態:true-凍結,false-正常
  • status
    number
    用戶狀態:0-凍結,1-正常,2-等待移除
  • joinedAt
    datetime
    required
    入會時間

FreeUserPageDtoReq

properties
  • surveyId
    string
    required
    surveyId
  • loginID
    string
    搜索字段
  • statuses
    array[boolean]
    用戶狀態:true-凍結,false-正常
  • districtIds
    array[string]
    區域ID
  • pagination
    pagination
    required
    分頁參數
  • sortings
    排序字段

FreeUserPageDtoResp

This class extends PaginationAndSorting

properties
  • userId
    String
    required
    用戶ID
  • email
    String
    required
    郵箱
  • lastLogin
    datetime
    最後上線日期
  • username
    String
    用戶名
  • phone
    String
    電話號碼
  • district
    String
    required
    區域
  • nickname
    String
    暱稱
  • disabled
    boolean
    required
    用戶狀態:true-凍結,false-正常
  • status
    number
    用戶狀態:0-凍結,1-正常,2-等待移除