# 管理個人基本資料
Custos-EnterpriseAPP-API-018
V1.0
2023-11-01
Custos 企業會員之員工可於 APP 會員專區的設定中管理個人基本資料。
[toc]
## 作業啟動
1. 以傳入之使用者 token 取得使用者流水編號 #emp_data_id
2. 傳入執行動作 #action,U 為更新、R 為讀取
3. #action 為 U 時,記錄 SystemLog:#emp_data_id|更新個人基本資料|作業啟動
## API 作業啟動
1. #action 為 R 時,以 #emp_data_id 查詢使用者個人基本資料檔 corp_member_emp 並回傳
2. #action 為 U 時,以 #emp_data_id 更新使用者個人基本資料
## 作業結束
#action 為 U 時,記錄 SystemLog:#emp_data_id|更新個人基本資料|作業結束
## 例外處理
若執行中有發生異常,將攔截到的 exception 訊息記錄 ErrorLog:[YYYYMMDDHHMMSS] EnterpriseAPP-API-018 發生異常:【#攔截到的 exception 訊息】
## 規格及範例
|API No|EnterpriseAPP-API-018|
|-|-|
|API Name|mgtMemberInfo|
|URL|${url}/APP/setData/mgtMemberInfo|
|Purpose|管理個人基本資料|
|Description|透過 API 進行個人基本資料管理|
|Protocol|JSON over HTTP POST|
|Content-Type|application/json|
**Request**
|參數|型態|必填|長度|說明|
|-|-|:-:|:-:|-|
|token|String|Y||使用者驗證字串|
|emp_avatar|String|N||使用者頭像,action 為 U 時必填|
|emp_name|String|N|50|使用者名稱,action 為 U 時必填|
|language_setting|String|N|10|使用者所在地區,對應 APP 畫面上的 location 欄位。,action 為 U 時必填|
|birth_date|Date|N||使用者生日,action 為 U 時必填|
|emp_email|String|N|50|使用者 email,action 為 U 時必填|
|self_intro|String|N|200|使用者自我簡介,action 為 U 時必填|
|public_audience_all_custos_clients_setting|String|N|1|Marketplace 顯示設定|
|modify_oper|String|Y|10|手機平台,iOS 或 Android|
**Response**
|參數|型態|必回|說明|
|-|-|:-:|-|
|result|String|Y|API 執行結果,Y:成功,N:失敗|
|message|String|N|API 執行失敗的訊息說明|
|emp_avatar|String|N|使用者頭像,action 為 R 時必回|
|emp_name|String|N|使用者名稱,action 為 R 時必回|
|language_setting|String|N|使用者所在地區,對應 APP 畫面上的 location 欄位。,action 為 R 時必回|
|birth_date|Date|N|使用者生日,action 為 R 時必回|
|emp_email|String|N|使用者 email,action 為 R 時必回|
|self_intro|String|N|使用者自我簡介,action 為 R 時必回|
|public_audience_all_custos_clients_setting|String|N|Marketplace 顯示設定|
**Request Sample (action = 'U')**
```javascript
var input = {
"token": "...",
"emp_avatar": "abc.png",
"emp_name": "David",
"language_setting": "en-SG",
"birth_date": "1985-03-16",
"emp_email": "david@gmail.com",
"self_intro": "...",
"public_audience_all_custos_clients_setting": "Y",
"modify_oper": "iOS"
}
```
**Response Sample (action = 'R')**
```javascript
{
"result": "Y", //API 結果,Result = Y 時才會有 data 資料
"message": "...", //API 訊息,Ex:"執行失敗,原因:XXXXXXXXX"
"emp_avatar": "abc.png",
"emp_name": "David",
"language_setting": "en-SG",
"birth_date": "1985-03-16",
"emp_email": "david@gmail.com",
"self_intro": "...",
"public_audience_all_custos_clients_setting": "Y"
}
```