---
# System prepended metadata

title: 通知管理

---

# 通知管理

---
* [TOC]
---

## 取得通知列表
* 可用角色: 平台管理員

```url
POST /push-mgmt/message/query
```


#### Request
* query(查詢條件json)
 
 欄位 | 型態  | 必填 | 預設 | 說明  
 ---|---|---|---|---
 pushDateStart | string | | | 推播時間查詢起日, 格式為YYYY-MM-DD
 pushDateEnd | string | | | 推播時間查詢迄日, 格式為YYYY-MM-DD
 pushStatus | string | | | 推播狀態, NONE:未推播, PUSHED:已推播
 title | string | | | 關鍵字, 查詢推播標題 
 
* pagination(分頁json)
 
 欄位 | 型態  | 必填 | 預設 | 說明
 ---|---|---|---|---
 current | int | | 1 | 當前頁數 
 pageSize | int | | 10 | 每頁結果數量，-1 為顯示所有
 
* sorter(排序json), 預設是用更新時間降序排列
 
 欄位 | 型態  | 必填 | 預設 | 說明
 ---|---|---|---|--- 
 field | string | | updateTime | 排序欄位,可排序欄位有 "updateTime", "title", "pushTarget", "pushTime", "pushStatus", "updateTime" 
 order | string | | asc | 升序或降序 

```javascript
{
    "query": {
        "title": "te",
        "pushStatus": "NONE",
        "pushDateStart": "2022-06-07",
        "pushDateEnd": "2022-06-10"
    },
    "pagination": {
        "current": 1,
        "pageSize": 15,
        "total": 0
    },
    "sorter": {}
}
```
#### Response
 欄位 | 型態 | 說明 
 ---  | --- | ---
 id | string | 推播id 
 tenantId | string | 要發送的租戶id, WMT代表全平台發送
 title | string | 推播標題
 content | string | 推播內容
 contentType|string|內容類型. CONTENT: 文字內容 URL: 連結
 pushTarget|string|推播對象. ALL:  全平台,對應的tenentId=WMT TENANT: 組織機構: 對應各自的tenantId
 pushStatus|string|推播狀態, NONE:未推播, PUSHED:已推播
 pushTime | timestamp(毫秒) | 預計推播時間
 createTime | timestamp(毫秒) | 建立時間
 updateTime | timestamp(毫秒) | 編輯時間
 

```javascript
{
    "httpCode": 200,
    "result": {
        "data": [
            {
                "id": "51f2b18f-87c8-4126-a454-95b61241a62c",
                "tenantId": "WMT",
                "title": "test titlsssae1",
                "content": " test contsdadasden1t",
                "contentType": "CONTENT",
                "pushTarget": "ALL",
                "pushStatus": "NONE",
                "pushTime": 1654759096539,
                "createTime": 1654684977510,
                "updateTime": 1654760860283
            }
        ],
        "total": 1
    }
}
```

## 新增推播訊息
* 可用角色: 平台管理員

```url
POST /push-mgmt/message/add
```


#### Request
 
 欄位 | 型態  | 必填 | 預設 | 說明  
 ---|---|---|---|---
 pushTime | timestamp(毫秒) | | | 預計推播時間
 pushTarget | string | Y| | 推播對象.<BR> ALL:  全平台, <BR>TENANT: 組織機構.<BR> MEMBER: 會員.<BR> SPECIFIC: 特定族群
 tenantId|string|||pushTarget = ALL的話不需要填tenantId. TENANT的話tenantId必填
 householdMemberId|string|||pushTarget = MEMBER的話必填
 content | string | | | 推播內容
 title | string | | | 推播標題 
 ageFilterStart | integer | | | pushTarget = SPECIFIC時須設定以下任一總條件<BR>年齡區間過濾-開始, 如果有設定年齡過濾條件, 開始和結束都必填
 ageFilterEnd | integer | | | 年齡區間過濾-結束
 birthdayFilterStart | string | | | 生日區間過濾-開始, 如果有設定生日過濾條件, 開始和結束都必填. 格式(YYYY-MM-DD)
 birthdayFilterEnd | string | | | 生日區間過濾-結束
 bloodTypeFilter | string | | | 血型過濾(A/B/AB/O)
 isFullScreen | boolean | | | 是否為滿屏提醒
 

```javascript=
// pushTarget: TENANT
{
    "title": "test title",
    "content": " test content",
    "pushTarget": "TENANT",
    "tenantId": "858b7fbb-3ba0-4d49-9882-c893a1ef07dc",
    "pushTime":1654759096539,
    "contentType": "CONTENT"
}
// pushTarget: SPECIFIC
{
    "title": "test-bt:B age:28-30 birth: 510-701",
    "content": " test content",
    "pushTarget": "SPECIFIC",
    "tenantId": "WMT",
    "contentType": "CONTENT",
    "bloodTypeFilter": "B",
    "ageFilterStart": 28,
    "ageFilterEnd": 30,
    "birthdayFilterStart": "2022-05-10",
    "birthdayFilterEnd": "2022-07-01",
    "pushTime": "2022-05-11",
    "isFullScreen": true
}
```
#### Response
 欄位 | 型態 | 說明 
 ---  | --- | ---
 id | string | 推播id 
 tenantId | string | 要發送的租戶id
 title | string | 推播標題
 content | string | 推播內容
 contentType|string|內容類型. CONTENT: 文字內容 URL: 連結
 pushTarget|string|推播對象.<BR> ALL:  全平台, <BR>TENANT: 組織機構.<BR> MEMBER: 會員.<BR> SPECIFIC: 特定族群
 ageFilterStart | integer  | pushTarget = SPECIFIC時須設定以下任一總條件<BR>年齡區間過濾-開始, 如果有設定年齡過濾條件, 開始和結束都必填
 ageFilterEnd | integer | 年齡區間過濾-結束
 birthdayFilterStart | string | 生日區間過濾-開始, 如果有設定生日過濾條件, 開始和結束都必填. 格式(YYYY-MM-DD)
 birthdayFilterEnd | string | 生日區間過濾-結束
 bloodTypeFilter | string | 血型過濾(A/B/AB/O)
 isFullScreen | boolean | 是否為滿屏提醒
 pushStatus|string|推播狀態, NONE:未推播, PUSHED:已推播
 pushTime | timestamp(毫秒) | 預計推播時間
 createTime | timestamp(毫秒) | 建立時間
 updateTime | timestamp(毫秒) | 編輯時間
 

```javascript
{
    "httpCode": 200,
    "result": {
        "data": {
            "id": "51f2b18f-87c8-4126-a454-95b61241a62c",
            "tenantId": "858b7fbb-3ba0-4d49-9882-c893a1ef07dc",
            "title": "test title,
            "content": " test content",
            "contentType": "CONTENT",
            "pushTarget": "TENANT",
            "pushStatus": "NONE",
            "pushTime": 1654759096539,
            "createTime": 1654684977510,
            "updateTime": 1654760860283
        }
    }
}
```
## 編輯推播訊息
* 可用角色: 平台管理員

```url
POST /push-mgmt/message/update
```


#### Request
 
 欄位 | 型態  | 必填 | 預設 | 說明  
 ---|---|---|---|---
 pushTime | timestamp(毫秒) | | | 預計推播時間
 pushTarget | string | | | 推播對象.<BR> ALL:  全平台, <BR>TENANT: 組織機構.<BR> MEMBER: 會員.<BR> SPECIFIC: 特定族群 
 tenantId|string|||pushTarget = ALL的話不需要填tenantId. TENANT的話tenantId必填
 content | string | | | 推播內容
 title | string | | | 推播標題
 id | string | Y| | 推播ID
  ageFilterStart | integer | | | 年齡區間過濾-開始, 如果有設定年齡過濾條件, 開始和結束都必填
 ageFilterEnd | integer | | | 年齡區間過濾-結束
 birthdayFilterStart | string | | | 生日區間過濾-開始, 如果有設定生日過濾條件, 開始和結束都必填. 格式(YYYY-MM-DD)
 birthdayFilterEnd | string | | | 生日區間過濾-結束
 bloodTypeFilter | string | | | 血型過濾(A/B/AB/O)
 isFullScreen | boolean | | | 是否為滿屏提醒

```javascript
{
    "id": "51f2b18f-87c8-4126-a454-95b61241a62c",
    "title": "test title",
    "content": " test content",
    "pushTarget": "TENANT",
    "tenantId": "858b7fbb-3ba0-4d49-9882-c893a1ef07dc",
    "pushTime":1654759096539,
    "contentType": "CONTENT"
}
```
#### Response
 欄位 | 型態 | 說明 
 ---  | --- | ---
 id | string | 推播id 
 tenantId | string | 要發送的租戶id, WMT代表全平台發送
 title | string | 推播標題
 content | string | 推播內容
 contentType|string|內容類型. CONTENT: 文字內容 URL: 連結
 pushTarget|string|推播對象.<BR> ALL:  全平台, <BR>TENANT: 組織機構.<BR> MEMBER: 會員.<BR> SPECIFIC: 特定族群
 pushStatus|string|推播狀態, NONE:未推播, PUSHED:已推播
 pushTime | timestamp(毫秒) | 預計推播時間
 createTime | timestamp(毫秒) | 建立時間
 updateTime | timestamp(毫秒) | 編輯時間
 

```javascript
{
    "httpCode": 200,
    "result": {
        "data": {
            "id": "51f2b18f-87c8-4126-a454-95b61241a62c",
            "tenantId": "858b7fbb-3ba0-4d49-9882-c893a1ef07dc",
            "title": "test title,
            "content": " test content",
            "contentType": "CONTENT",
            "pushTarget": "TENANT",
            "pushStatus": "NONE",
            "pushTime": 1654759096539,
            "createTime": 1654684977510,
            "updateTime": 1654760860283
        }
    }
}
```

## 刪除推播訊息
* 可用角色: 平台管理員

```url
POST /push-mgmt/message/delete
```


#### Request
 
 欄位 | 型態  | 必填 | 預設 | 說明  
 ---|---|---|---|---
 id | string | Y| | 推播ID
 

```javascript
{
    "id": "51f2b18f-87c8-4126-a454-95b61241a62c"
}
```
#### Response
 欄位 | 型態 | 說明 
 ---  | --- | ---
 data | integer | 刪除數量 
 

```javascript
{
    "httpCode": 200,
    "result": {
        "data": 0
    }
}
```

## 取得單一推播訊息
* 可用角色: 平台管理員

```url
POST /push-mgmt/message/info
```


#### Request
 
 欄位 | 型態  | 必填 | 預設 | 說明  
 ---|---|---|---|---
 id | string | Y| | 推播ID
 

```javascript
{
    "id": "51f2b18f-87c8-4126-a454-95b61241a62c"
}
```
#### Response
 欄位 | 型態 | 說明 
 ---  | --- | ---
 id | string | 推播id 
 tenantId | string | 要發送的租戶id, WMT代表全平台發送
 title | string | 推播標題
 content | string | 推播內容
 contentType|string|內容類型. CONTENT: 文字內容 URL: 連結
 pushTarget|string|推播對象.<BR> ALL:  全平台, <BR>TENANT: 組織機構.<BR> MEMBER: 會員.<BR> SPECIFIC: 特定族群
 pushTime | timestamp(毫秒) | 預計推播時間
 pushStatus|string|推播狀態, NONE:未推播, PUSHED:已推播
 createTime | timestamp(毫秒) | 建立時間
 updateTime | timestamp(毫秒) | 編輯時間
 

```javascript
{
    "httpCode": 200,
    "result": {
        "data": {
            "id": "51f2b18f-87c8-4126-a454-95b61241a62c",
            "tenantId": "858b7fbb-3ba0-4d49-9882-c893a1ef07dc",
            "title": "test title,
            "content": " test content",
            "contentType": "CONTENT",
            "pushTarget": "TENANT",
            "pushStatus": "NONE",
            "pushTime": 1654759096539,
            "createTime": 1654684977510,
            "updateTime": 1654760860283
        }
    }
}
```