# サイト関連図:稟議承認ワークフロー関連サイト群 `config.json` の `SiteId` に列挙された10サイト(稟議申請〜承認〜集計〜通知にまたがる連携システム)について、 サイトツリー・明示的な連携(Links)・暗黙的な連携(ServerScripts/Scriptsのハードコード参照)を1枚にまとめたもの。 各サイトの詳細(項目定義・権限・プロセス等)は個別の仕様書(`site-{SiteId}_{サイト名}_spec.md`)を参照。 ## 1. サイトツリー(ParentId) 10サイトは実際には2つの異なる外部フォルダ(`ParentId`)の配下に分かれて配置されている。 ``` 63543(外部フォルダ、詳細不明) ├─ 319014 新・稟議申請 ※実データを持たないフォルダ型サイト(ReferenceType: Sites) │ ├─ 319015 新・稟議申請書 …… 稟議申請の実務データを保持するメインサイト │ ├─ 319016 【ISO】稟議管理 …… ISO向けの稟議管理・集計サイト │ ├─ 319017 【ISO】部署担当者別稟議集計 …… 319016の按分集計データ │ └─ 319022 【部署別】稟議改善 …… 稟議を起点にした改善活動の管理 └─ 160926 稟議コード管理 …… 稟議コードの採番・発行マスタ 319018(外部フォルダ、詳細不明。63543とは別系統) ├─ 319020 稟議項目 …… 稟議項目マスタ(選択肢用) ├─ 319021 稟議通知管理 …… エリア別の通知先マスタ ├─ 335730 組織エリアマスタ …… 組織・エリアマスタ └─ 319027 事前稟議一覧 …… 契約前の事前稟議データ ``` **注記**: サイト名「新・稟議申請」(319014・フォルダ)と「新・稟議申請書」(319015・実データサイト)は名称が酷似しているため混同に注意。`63543`・`319018`はいずれも今回取得した10サイトのJSONには含まれない外部の親サイト(社内ポータルの上位フォルダ等と推測されるが、今回の取得範囲では実体不明)。 ## 2. サイト一覧 | SiteId | サイト名 | 役割(推測) | 概要書 | |---|---|---|---| | 319014 | 新・稟議申請 | 4サイトをまとめるフォルダ(実データなし) | [概要書](../configs/site-319014_新・稟議申請/docs/site-319014_新・稟議申請_overview.md) | | 319015 | 新・稟議申請書 | 稟議申請〜承認〜決裁のメインワークフロー(プロセス18件) | [概要書](../configs/site-319015_新・稟議申請書/docs/site-319015_新・稟議申請書_overview.md) | | 319016 | 【ISO】稟議管理 | ISO向けの稟議データ集約・分析 | [概要書](../configs/site-319016_【ISO】稟議管理/docs/site-319016_【ISO】稟議管理_overview.md) | | 319017 | 【ISO】部署担当者別稟議集計 | 319016の按分計上データ(閲覧専用) | [概要書](../configs/site-319017_【ISO】部署担当者別稟議集計/docs/site-319017_【ISO】部署担当者別稟議集計_overview.md) | | 319020 | 稟議項目 | 稟議項目の選択肢マスタ | [概要書](../configs/site-319020_稟議項目/docs/site-319020_稟議項目_overview.md) | | 319021 | 稟議通知管理 | エリア別の稟議通知先マスタ | [概要書](../configs/site-319021_稟議通知管理/docs/site-319021_稟議通知管理_overview.md) | | 319022 | 【部署別】稟議改善 | 稟議に紐づく改善活動の登録・共有 | [概要書](../configs/site-319022_【部署別】稟議改善/docs/site-319022_【部署別】稟議改善_overview.md) | | 319027 | 事前稟議一覧 | 契約前段階の事前稟議データ | [概要書](../configs/site-319027_事前稟議一覧/docs/site-319027_事前稟議一覧_overview.md) | | 335730 | 組織エリアマスタ | 組織・エリアの対応マスタ | [概要書](../configs/site-335730_組織エリアマスタ/docs/site-335730_組織エリアマスタ_overview.md) | | 160926 | 稟議コード管理 | 稟議コードの採番・発行・取消管理 | [概要書](../configs/site-160926_稟議コード管理/docs/site-160926_稟議コード管理_overview.md) | ## 3. 明示的な連携(Links) | 起点サイト | 起点列 | 参照先サイト | 内容 | |---|---|---|---| | 319015(新・稟議申請書) | ClassL | 160926(稟議コード管理) | 稟議コード・エリア・稟議分類の値を自動コピー | | 319015(新・稟議申請書) | ClassD | 319027(事前稟議一覧) | 関連する事前稟議レコードを選択 | | 319015(新・稟議申請書) | Class011 | 189112(対象10サイト外「マスターシート」) | 契約コード・工事名等を参照 | | 319016(【ISO】稟議管理) | ClassD, ClassL | 160926(稟議コード管理) | 稟議コード・エリア・稟議分類の値を自動コピー | | 319016(【ISO】稟議管理) | Class110 | 319020(稟議項目) | 稟議項目を選択肢として参照 | | 319016(【ISO】稟議管理) | Class111 | 319019(対象10サイト外「稟議の原因」) | 原因を選択肢として参照 | | 319016(【ISO】稟議管理) | Class011 | 189112(対象10サイト外「マスターシート」) | 319015と同じ外部マスタを参照 | | 319016(【ISO】稟議管理) | ―(埋め込み表示) | 319022, 319017 | 編集画面に関連レコード一覧を埋め込み表示 | | 319017(部署担当者別稟議集計) | ClassO | 319020(稟議項目) | 稟議項目を選択肢として参照 | | 319017(部署担当者別稟議集計) | Class100 | 319016(【ISO】稟議管理) | 元の稟議管理レコードを参照(319016側から見た逆リンクも設定=双方向) | | 319017(部署担当者別稟議集計) | ClassP | 319019(対象10サイト外「稟議の原因」) | 原因を選択肢として参照 | | 319022(部署別稟議改善) | ClassZ | 319016(【ISO】稟議管理) | 元の稟議管理レコードを参照・列表示 | | 319027(事前稟議一覧) | ClassD | 61259(対象10サイト外「契約コード」) | 契約コードを参照 | | 319027(事前稟議一覧) | ClassE | 64583 / 74927 / 72434(対象10サイト外「派生コード」) | 派生コードを参照 | | 160926(稟議コード管理) | ClassD | 61259(対象10サイト外「契約コード」) | 319027と同じ契約コードマスタを参照 | | 160926(稟議コード管理) | ClassE | 64583 / 74927 / 72434(対象10サイト外「派生コード」) | 319027と同じ派生コードマスタを参照 | | 319020(稟議項目) | ―(選択肢として参照される側) | 319016, 319017 | 319016・319017のドロップダウン選択肢として使われる(値コピーなし) | 補足: 189112(マスターシート)、319019(稟議の原因)、61259/64583/74927/72434(契約・派生コード)、63543・319018(親フォルダ)は、いずれも今回ドキュメント化対象の10サイトには含まれない外部サイトであり、実体は今回の取得範囲では確認できていない。 ## 4. 暗黙的な連携(ServerScripts/Scriptsのハードコード参照) 正式なLinks設定には現れないが、スクリプト内でSiteIdが直接指定されている(今回の調査で発見できた分のみ)。 | 起点サイト | 参照先サイト | 該当スクリプトファイル | 目的(推測) | |---|---|---|---| | 319015(新・稟議申請書) | 319021(稟議通知管理) | `scripts/1_1.新・稟議申請書.js`(`getTuuchiData`) | 選択したエリアに応じた通知先担当者を自動補完 | | 319015(新・稟議申請書) | 319016(【ISO】稟議管理) | `scripts/2_2.稟議申請_作成時処理など.js`(`uploadISOdata`) | 赤稟議の最終決裁時にサマリをISO管理サイトへ複写・計上(`upsert`) | | 319015(新・稟議申請書) | 189112(対象10サイト外) | `scripts/1_1.新・稟議申請書.js`(`updateMSSdata`) | 決裁時にMSSサイトの残金項目を直接更新(書き込み方向) | | 319016(【ISO】稟議管理) | 319017(部署担当者別稟議集計) | `scripts/1_1.ISO稟議管理スクリプト.js`(`updateSummary`) | プロセス完了時に部署ごとの按分金額を都度アップサート | | 319016(【ISO】稟議管理) | 335730(組織エリアマスタ) | `serverscripts/1_年選択肢表示.js` | 部署→エリア名の対応表を取得し編集画面に埋め込み | | 160926(稟議コード管理) | 319027(事前稟議一覧) | `scripts/3_03.更新時の処理.js` | 更新後のレコード内容を事前稟議一覧へ複製送信(`upsert`) | ## 5. セキュリティ上の重要な指摘(横断) 個別調査の過程で、以下3サイトのクライアントスクリプトに **Pleasanter APIキーとみられる文字列が平文でハードコードされている** ことが判明した。クライアントスクリプトはブラウザ上で実行され、ソースコードがログイン可能な全ユーザーに公開されるため、深刻な漏えいリスクがある。 - 160926(稟議コード管理): `scripts/3_03.更新時の処理.js` - 319015(新・稟議申請書): `scripts/1_1.新・稟議申請書.js`、`scripts/2_2.稟議申請_作成時処理など.js` - 319016(【ISO】稟議管理): `scripts/1_1.ISO稟議管理スクリプト.js` 値そのものは本書・各spec.mdのいずれにも転記していない。該当ファイルを直接確認のうえ、APIキーの失効・再発行と、サーバースクリプト側への移設(サーバースクリプトはクライアントに配信されないため安全)を推奨する。