giip
SES 商機登記
4分鐘閱讀

專案備忘錄列表指南

說明如何依專案(CSN)與伺服器(lssn)檢視、新增、編輯與刪除自由格式備忘錄(鍵 / 值 / 備註)。此頁面需要登入。

🚀 前往專案備忘錄頁面 →


📋 概述

專案備忘錄在單一畫面管理綁定至特定專案(CSN)與邏輯伺服器(lssn)的備忘錄。可用自由格式(鍵 / 值 / 詳細備註)保存連線資訊、檢查清單、參考 URL 等維運所需備忘。

每筆備忘錄包含以下欄位:

欄位意義
lcSn備忘錄序號(主鍵)。用於編輯/刪除
csn專案代碼
lssn關聯的邏輯伺服器編號(選填)
lcKey備忘錄鍵(如 ssh-port, admin-url)
lcVal備忘錄值(如 2222, https://...)
lcMemo自由文字備註

🔍 主要功能

1. 指定伺服器(lssn)· LSVR 選擇

在頂部 lssn 欄直接輸入伺服器編號,或用 [選擇 LSVR] 從目前專案的伺服器列表選取。所選伺服器編號會在新增備忘錄時一併傳遞。

2. 專案(CSN)綁定

CSN 會從 URL 的 ?csn= 參數或目前工作階段的專案自動填入。在頂部切換專案後,列表會依新專案重新查詢。

3. 查詢(Fetch)

[Fetch] 查詢所選專案的備忘錄。結果在桌面以表格、在行動裝置以卡片顯示。

  • URL 自動連結: 若值(lcVal)以 http(s):// 開頭,將顯示為在新分頁開啟的連結。
  • 伺服器連結: 伺服器(lssn)欄連結至該伺服器詳情頁(lsvrdetail)。

4. 新增 / 編輯 / 刪除

  • 新增: [新增備忘錄] 攜帶目前 CSN·lssn 前往新增頁(prjMemoPut)。也可從表內編輯彈窗直接新增。
  • 編輯: 列內 [Edit] 開啟預載該備忘錄(lcKey / lcVal / lcMemo)的彈窗。儲存時會送出 lcSn 以更新既有備忘錄。
  • 刪除: 列內 [Delete] 彈出確認框,確認後刪除備忘錄並重新查詢列表。刪除無法復原。

5. 前往機器詳情

[機器詳情] 前往所輸入 lssn 的伺服器詳情頁(lsvrdetail)。


🛠️ 使用步驟(概要)

  1. 在頂部輸入 lssn 或用 [選擇 LSVR] 選取伺服器。
  2. [Fetch] 查詢目前專案的備忘錄。
  3. 透過 [新增備忘錄] 或列內 [Edit] 撰寫/更新並儲存。
  4. 用列內 [Delete] 刪除多餘備忘錄(確認後立即生效)。

🔌 API 使用指南

此畫面透過 GIIP 公用 API 端點(/api/giipApi)呼叫三個命令運作。瀏覽器會自動送出登入工作階段權杖;從外部直接呼叫時使用 AK(存取權杖)

以下範例與在真實生產環境(CSN 47)以查詢→新增→刪除往返驗證過的呼叫相同。

通用規格

  • 端點: POST https://giipfaw.azurewebsites.net/api/giipApi
  • Content-Type: application/x-www-form-urlencoded
  • 認證: 在表單欄位 token / usertoken 放入 AK(登入使用者存取權杖)。
  • 呼叫形式: text 欄位放 命令 參數名…(是參數名而非值),jsondata 欄位以 JSON 放實際值。
    • 這與 corpMemo 等其他備忘錄畫面的約定一致。
命令作用textjsondata 欄位
prjMemoList查詢專案備忘錄列表prjMemoList csncsn
prjMemoPut新增/更新(upsert)prjMemoPut csn lssn lcKey lcVal lcMemo(更新時末尾加 lcSncsn, lssn, lcKey, lcVal, lcMemo, lcSn?
prjMemoDel刪除備忘錄prjMemoDel csn lcSncsn, lcSn

權限: AK 使用者必須是該 csn 的成員(tCorpUserRel),否則回傳 403 Forbidden。AK 無效回傳 401 Unauthorized

1) 列表查詢 — prjMemoList

curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "token=YOUR_AK" \
  --data-urlencode "usertoken=YOUR_AK" \
  --data-urlencode "text=prjMemoList csn" \
  --data-urlencode 'jsondata={"csn":47}'

回應(範例) — 每列包含備忘錄欄位與 tags(標籤 JSON 陣列,無則為 null)。

[
  { "lcSn": 12, "csn": 47, "lssn": 71198, "lcKey": "ssh-port", "lcVal": "2222", "lcMemo": "檢修連接埠", "tags": null }
]

若無備忘錄,回傳空回應。

2) 新增 / 更新 — prjMemoPut

省略 lcSn 為新增帶上 lcSn 為更新(upsert)。更新時在 text 末尾追加 lcSn

# 新增(insert)
curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "token=YOUR_AK" \
  --data-urlencode "usertoken=YOUR_AK" \
  --data-urlencode "text=prjMemoPut csn lssn lcKey lcVal lcMemo" \
  --data-urlencode 'jsondata={"csn":47,"lssn":71198,"lcKey":"admin-url","lcVal":"https://portal.example.com","lcMemo":"管理主控台"}'
# 更新(update) — 包含 lcSn
$body = @{
  token     = "YOUR_AK"
  usertoken = "YOUR_AK"
  text      = "prjMemoPut csn lssn lcKey lcVal lcMemo lcSn"
  jsondata  = '{"csn":47,"lssn":71198,"lcKey":"admin-url","lcVal":"https://portal2.example.com","lcMemo":"URL 變更","lcSn":12}'
}
Invoke-RestMethod -Method Post -Uri "https://giipfaw.azurewebsites.net/api/giipApi" `
  -ContentType "application/x-www-form-urlencoded" -Body $body

回應(範例) — 回傳儲存後的更新列表以及新建/更新的 lcSn

[ [ { "lcSn": 12, "csn": 47, "lcKey": "admin-url", "lcVal": "https://portal.example.com", "tags": null } ], [ { "lcSn": 12 } ] ]

3) 刪除 — prjMemoDel

curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "token=YOUR_AK" \
  --data-urlencode "usertoken=YOUR_AK" \
  --data-urlencode "text=prjMemoDel csn lcSn" \
  --data-urlencode 'jsondata={"csn":47,"lcSn":12}'

回應(範例)

{ "status": "Success", "lcSn": 12 }

結果代碼(RstVal)

RstVal意義處理
(成功)成功。回傳資料列或 status:"Success"
401Unauthorized — AK 缺少/無效token/usertoken 放入正確 AK
403Forbidden — 無該 CSN 權限確認 AK 使用者是該專案成員

完整結果代碼定義請參見 API 結果代碼指南(RstVal)


💡 注意事項

  • 若 CSN 為空可能不顯示結果,請先指定專案。
  • 刪除在確認後立即生效且無法復原。
  • lcVal 放入 URL 後可在列表中直接點擊,可當作連結庫使用。

🔧 疑難排解

現象原因解決
不顯示備忘錄CSN 為空或錯誤在頂部指定正確專案並按 [Fetch]
API 回傳 401AK 缺少/無效token/usertoken 送出有效 AK
API 回傳 403AK 使用者非該 CSN 成員檢查專案成員關係(tCorpUserRel)
更新被存為新備忘錄請求缺少 lcSntext 末尾加 lcSn 並在 jsondata 包含 lcSn
刪除失敗結果缺少 lcSn 或工作階段過期重新查詢列表或重新登入後重試

版本: 1.0 最後更新: 2026-07-24 來源檔案: giipv3/public/help/prjmemolist.zh-TW.md