【注記】 TeamWorks 提供のテーブル定義書(全29テーブル)を
prisma/schema.prisma手書き作成(D-056)のために転記した記録です。3分割の1つです。 当時の記録であり、現行方針ではありません。 定義書には誤記・廃止済み項目が含まれることが実DDL照合で判明しており、以後は実DDLを正とします(D-059)。 現在のスキーマの正はprisma/schema.prisma、経緯はdocs/decisions.mdとdocs/handoff.mdを参照してください。
出典: TeamWorks テーブル定義書(fileContent, 763行)のうち 262〜528行目。
役割: エリア/タイムテーブル毎の清掃ロボットの異常情報 新規追加 UI: 要(Request) 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | varchar | 50 | ○ | pk | 管理ID, エラーIDのいずれかで一意性を確保できるのであれば, いずれかを削除する | |
| 2 | 障害ID | error_id | varchar | 50 | ○ | |||
| 3 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 4 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 5 | ロボットID | robot_id | unsigned bigint | ○ | fk | |||
| 6 | タイムテーブルID | clean_timetable_id | unsigned bigint | 要確認. 清掃タイムテーブルに該当する情報がない場合, 登録しないでよいのか. | ||||
| 7 | 製品(管理)番号 | serial_number | varchar | 50 | ○ | |||
| 8 | 製品コード | product_code | varchar | 50 | ||||
| 9 | 機器バージョン | hardware_version | varchar | 50 | ||||
| 10 | ソフトウェアバージョン | software_version | varchar | 50 | ||||
| 11 | OSバージョン | os_version | varchar | 50 | ||||
| 12 | 障害レベル | error_level | varchar | 20 | ○ | |||
| 13 | 障害種別 | error_type | varchar | 100 | ○ | |||
| 14 | 障害詳細 | error_detail | text | ○ | ||||
| 15 | 状態 | status | unsigned tinyint | ○ | 0 | 0: 未対応, 1:対応中, 2:対応済 | ||
| 16 | 備考 | comment | text | |||||
| 17 | 発生日時 | errored_at | datetime | ○ | ||||
| 18 | 対応開始日時 | responsed_at | datetime | 状態を対応中(1)に変更した日時を格納する | ||||
| 19 | 対応完了日時 | resolved_at | datetime | 状態を対応済(2)に変更した日時を格納する | ||||
| 20 | 登録日時 | created_at | timestamp | ○ | システム日付 | |||
| 21 | 更新日時 | updated_at | timestamp | ○ | システム日付 |
インデックス: | 名称 | タイプ | 対象カラム | 備考 | |---|---|---|---| | pk_robot_error_reports_id | primary key | id | もしくはid, report_id の2カラムで主キーを定義する. | | fk_robot_error_reports_facility_id | forigne key | facility_id | | | fk_robot_error_reports_section_id | forigne key | section_id | | | fk_robot_error_reports_robot_id | forigne key | robot_id | |
役割: エリア毎の清掃ロボットへの指示回数(履歴)。 UI: 不要 備考: 補足として次の一文が記載されている。「※当初D-S制御盤-清掃ロボットの関係でシステムが構築されていた為, 物理名をcontrol_robot_instruct_historiesとしていた」
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto_increment | ||
| 2 | ロボットID | robot_id | unsigned bigint | ○ | fk | |||
| 3 | 指示内容 | instruct | unsigned tinyint | ○ | idx | 1: 清掃開始, 3: 清掃一時停止, 4: 清掃キャンセル | ||
| 4 | 登録日時 | created_at | timestamp | ○ | システム日付 |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_robot_instruct_histories_id | primary key | id | | fk_robot_instruct_histories_robot_id | forigne key | robot_id | | idx_robot_instruct_histories_instruct | index | instruct |
役割: D-S制御盤の正常稼働報告を管理する。 UI: 要(Request) 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto_increment | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | 追加 | ||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | 制御デバイスID | control_id | unsigned bigint | ○ | fk | |||
| 5 | 製品(管理)番号 | sireal_number | varchar | 100 | ○ | |||
| 6 | 報告日時 | reported_at | timestamp | ○ | システム日付 | |||
| 7 | 登録日時 | created_at | timestamp | ○ | システム日付 | |||
| 8 | 更新日時 | updated_at | timestamp | ○ | システム日付 |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_control_reports_id | primary key | id | | fk_control_reports_facility_id | forigne key | facility_id | | fk_control_reports_section_id | forigne key | section_id | | fk_control_reports_serial_number | forigne key | serial_number |
※定義書原文どおり。カラム5の物理名は「sireal_number」(serial ではなく sireal の綴り)で、インデックス4の対象カラムは「serial_number」と記載されており、綴りが一致していない(原文ママ)。
役割: D-S制御盤の異常発生履歴を管理する。 UI: 不要 現時点では未使用. 清掃状態, 清掃状態履歴で確認できるため. テーブル名変更 備考: 上記の役割欄に「UI: 不要」「現時点では未使用」「テーブル名変更」の注記あり(原文ママ)。
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto_increment | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | 制御デバイスID | control_id | unsigned bigint | ○ | fk | |||
| 5 | 状態 | status | unsigned tinyint | ○ | 0 | 0: 未対応, 1: 対応中, 2:対応済 | ||
| 6 | 備考 | comment | text | |||||
| 7 | 発生日時 | occurred_at | datetime | ○ | システム日付 | |||
| 8 | 対応開始日時 | responsed_at | datetime | 状態を対応中(1)に変更した日時を格納する | ||||
| 9 | 対応完了日時 | resolved_at | datetime | 状態を対応済(2)に変更した日時を格納する |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_control_error_histories_id | primary key | id | | fk_control_error_histories_facility_id | foreign key | facility_id | | fk_control_error_histories_section_id | foreign key | section_id | | fk_control_error_histories_control_id | foreign key | control_id |
役割: エリアのセキュリティ状態を管理する. UI: 要 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto_increment | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | 状態 | status | unsigned tinyint | ○ | 1 | 0: 無効(セキュリティOFF/ブレーク), 1: 有効(セキュリティON/メーク) | ||
| 5 | 報告日時 | reported_at | timestamp | ○ | システム日付 | テーブル更新時にシステム日付で更新する | ||
| 6 | 登録日時 | created_at | timestamp | ○ | システム日付 | |||
| 7 | 更新日時 | updated_at | timestamp | ○ | システム日付 | テーブル更新時にシステム日付で更新する |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_security_statuses_id | primary key | id | | fk_security_statuses_facility_id | forigne key | facility_id | | fk_security_statuses_section_id | forigne key | section_id |
役割: 制御デバイスの正常稼働報告を管理する。 UI: 不要. 備考: なし(ただし役割欄の文言について【矛盾・不明瞭】に記載)
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto_increment | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | 状態 | status | unsigned tinyint | ○ | 0: 無効(セキュリティOFF/ブレーク), 1: 有効(セキュリティON/メーク) | |||
| 5 | 報告日時 | reported_at | timestamp | ○ | システム日付 | |||
| 6 | 登録日時 | created_at | timestamp | ○ | システム日付 |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_2s_histories_id | primary key | id | | fk_2s_facility_id | forigne key | facility_id | | fk_2s_section_id | forigne key | section_id |
※インデックス名が他テーブルの命名規則(テーブル名を含む)と異なり「2s」という略称になっている(原文ママ)。
役割: 清掃状態を管理する。 UI: 要(Request) 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto_increment | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | 追加 | ||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | タイムテーブルID | clean_timetable_id | unsigned bigint | ○ | fk | 追加 | ||
| 5 | 状態 | clean_status | unsigned tinyint | ○ | 0 | 0: 清掃前, 1: 清掃中, 2: 清掃終了(セキュリティ有効), -1: 清掃完了(セキュリティ無効) | ||
| 6 | 状態推移 | clean_status_trans | unsigned tinyint | ○ | 0 | 0: 清掃開始前, 1: 清掃指示, 2: 清掃中. 3: 清掃一時停止指示, 4: 清掃キャンセル指示, 8:清掃完了(正常), 9: 清掃完了(異常) | ||
| 7 | エラー | clean_error | unsigned tinyint | ○ | 0 | 0: 正常, 1: 異常(清掃未実施), 2: 異常(セキュリティ有効), 3: 異常(D-S制御盤異常), 4: 異常(清掃ロボット異常) | ||
| 8 | 清掃対象面積 | task_area | unsigned decimal | (12, 6) | ○ | 0 | PUDU Cloud のclean task logから取得する(task_area), 追加 | |
| 9 | 清掃実施面積 | clean_area | unsigned decimal | (12, 6) | ○ | 0 | PUDU Cloud のclean task logから取得する(clean_area), 追加 | |
| 10 | 清掃実施面積(百分率) | clean_ratio | unsigned tinyint | ○ | 0 | 清掃実施面積 / 清掃対象面積 で計算する. 100を超過する値が生成される場合もある. 小数点以下は四捨五入とする. | ||
| 11 | 清掃開始日時 | started_at | datetime | |||||
| 12 | 清掃終了日時 | ended_at | datetime | |||||
| 13 | 登録日時 | created_at | timestamp | ○ | システム日付 | |||
| 14 | 更新日時 | updated_at | timestamp | ○ | システム日付 | |||
| 15 | 削除日時 | deleted_at | timestamp | 不要 |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_clean_statuses_id | primary key | id | | fk_clean_statuses_facility_id | foreign key | facility_id | | fk_clean_statuses_section_id | foreign key | section_id |
※カラム5「状態(clean_status)」の型は unsigned tinyint だが、備考に -1(清掃完了(セキュリティ無効))という負の値が記載されており、型と値の整合性が取れていない(原文ママ)。
役割: 清掃結果履歴を管理する。 UI: 不要 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | uk | |||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | タイムテーブルID | clean_timetable_id | unsigned bigint | ○ | fk | |||
| 5 | 状態 | clean_status | unsigned tinyint | ○ | 0 | 2: 清掃終了(セキュリティ有効), -1: 清掃完了(セキュリティ無効) | ||
| 6 | 結果 | clean_error | unsigned tinyint | ○ | 0 | 0: 正常, 1: 異常(清掃未実施), 2: 異常(セキュリティ有効), 3: 異常(D-S制御盤異常), 4: 異常(清掃ロボット異常) | ||
| 7 | 清掃対象面積 | task_area | decimal | (12, 6) | ○ | 0 | PUDU Cloud のclean task logから取得する(task_area), | |
| 8 | 清掃実施面積 | clean_area | decimal | (12, 6) | ○ | 0 | PUDU Cloud のclean task logから取得する(clean_area), | |
| 9 | 清掃実施面積(百分率) | clean_ratio | unsigned tinyint | ○ | 0 | 清掃実施面積 / 清掃対象面積 で計算する. 100を超過する値が生成される場合もある. 小数点以下は四捨五入とする. | ||
| 10 | 清掃開始日時 | started_at | datetime | ○ | 清掃スケジュールの清掃開始日時を格納する | |||
| 11 | 清掃終了日時 | ended_at | datetime | ○ | 清掃スケジュールの清掃終了日時を格納する | |||
| 12 | 登録日時 | created_at | timestamp | ○ | システム日付 |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | uk_clean_status_histories_id | unique key | id | | fk_clean_status_histories_facility_id | foreign key | facility_id | | fk_clean_status_histories_section_id | foreign key | section_id |
※カラム1「id」のキー種別は他テーブルの「pk」ではなく「uk」(unique key)と記載されている(原文ママ)。カラム5の備考も clean_statuses と異なり「0/1」の説明がなく「2」「-1」のみが列挙されている(原文ママ)。
役割: ロボット毎の清掃タスク報告情報を管理する。この情報を元に清掃状態情報を定期的に更新する. UI: 不要 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | レポートID | report_id | varchar | 20 | ○ | pk | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | ロボットID | robot_id | unsigned bigint | ○ | fk | 該当する清掃ロボットがあれば記録する, 無ければ記録しない. | ||
| 5 | タイムテーブルID | clean_timetable_id | unsigned bigint | 該当するロボットID, 情報の取得日時から該当する清掃タイムテーブル情報を引き当てる. | ||||
| 6 | 製品(管理)番号 | serial_number | varchar | 20 | ○ | |||
| 7 | 清掃結果 | status | unsigned tinyint | ○ | 0 | (備考欄の記載なし) | ||
| 8 | 清掃対象面積 | task_area | decimal | (12, 6) | ○ | 0 | PUDU Cloud のclean task logから取得する(task_area), 追加 | |
| 9 | 清掃実施面積 | clean_area | decimal | (12, 6) | ○ | 0 | PUDU Cloud のclean task logから取得する(clean_area), 追加 | |
| 10 | 清掃実施面積(百分率) | clean_ratio | unsigned tinyint | ○ | 0 | 清掃実施面積 / 清掃対象面積 で計算する. 100を超過する値が生成される場合もある. 小数点以下は四捨五入とする. | ||
| 11 | 清掃開始日時 | started_at | datetime | ○ | ||||
| 12 | 清掃終了日時 | ended_at | datetime | |||||
| 13 | 清掃時間 | clean_time | unsigned int | ○ | 0 | |||
| 14 | 登録日時 | created_at | timestamp | ○ | システム日付 | 清掃日を設定(Y-m-d 23:59:59) | ||
| 15 | 更新日時 | updated_at | timestamp | ○ | システム日付 |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_clean_task_reports_report_id | primary key | report_id | | fk_clean_task_reports_facility_id | foreign key | facility_id | | fk_clean_task_reports_section_id | foreign key | section_id | | fk_clean_task_reports_robot_id | foreign key | robot_id |
※カラム7「清掃結果(status)」は unsigned tinyint だが、他の status/state 系カラム(例: robot_error_reports.status 等)と異なり、備考欄に取りうる値の説明が一切記載されていない(原文ママ、「読み取れず」ではなく「定義書に記載なし」)。
役割: 区画毎の清掃スケジュールを管理する UI: 要 備考: なし
| # | 論理カラム名 | 物理カラム名 | データ型 | サイズ | 必須 | 初期値 | キー | 備考 |
|---|---|---|---|---|---|---|---|---|
| 1 | 管理ID | id | unsigned bigint | ○ | pk | auto increment | ||
| 2 | 施設ID | facility_id | unsigned bigint | ○ | fk | |||
| 3 | エリアID | section_id | unsigned bigint | ○ | fk | |||
| 4 | 曜日 | weeks | varchar | 7 | ○ | 清掃を行う曜日を1, 行わない曜日を0とする。日月火水木金土で設定する。 例) 日火木土に清掃を行う場合 1010101 | ||
| 5 | 開始時間 | start_time | varchar | 4 | ○ | 時分を格納する。0930や1245等 範囲は0000~2359 | ||
| 6 | 終了時間 | end_time | varchar | 4 | ○ | 時分を格納する。0930や1245等, 範囲は0000~2959(日跨ぎを想定) | ||
| 7 | 清掃開始日時 | started_at | datetime | idx | 曜日, 開始時間から直近の清掃開始日時を生成し格納する | |||
| 8 | 清掃終了日時 | ended_at | datetime | idx | 曜日, 開始時間から直近の清掃終了日時を生成し格納する | |||
| 9 | 契約 | contract | varchar | 10 | ○ | 0000000000 | 各サービス毎にフラグとして機能する. D-Securityを1桁目, D-Watchを2桁目とし, 契約済(有効)なサービスを1とする. 例えばD-Security, D-Watchを契約している場合は次のように表現される. 例) 1100000000 | |
| 10 | 無効フラグ | inactive | unsigned tinyint | ○ | 0 | 0: 有効, 1: 無効 | ||
| 11 | 登録日時 | created_at | timestamp | ○ | システム日付 | |||
| 12 | 更新日時 | updated_at | timestamp | ○ | システム日付 | |||
| 13 | 削除日時 | deleted_at | timestamp |
インデックス: | 名称 | タイプ | 対象カラム | |---|---|---| | pk_clean_schedules_id | primary key | id | | fk_clean_schedules_facility_id | foreign key | facility_id | | fk_clean_schedules_section_id | foreign key | section_id |
※カラム6「終了時間(end_time)」の備考は「範囲は0000~2959(日跨ぎを想定)」となっており、カラム5「開始時間」の範囲(0000~2359)と桁の意味が異なるように見える(原文ママ、意図不明)。
report_id は、robot_error_reports のカラム一覧には存在しない(存在するのは error_id 等で、report_id は clean_task_reports のカラム名)。テーブルをまたいだ記述の可能性。sireal_number(serial の綴りが sireal になっている)だが、インデックス4「fk_control_reports_serial_number」の対象カラムは serial_number と記載されており、両者の綴りが一致していない。pk_2s_histories_id / fk_2s_facility_id / fk_2s_section_id となっており、他の全テーブルの命名規則(pk_<table>_id 等、テーブル名をフルで含む)と異なり 2s という略称になっている。unsigned tinyint だが、備考に -1: 清掃完了(セキュリティ無効) という負の値が記載されており、unsigned 型と矛盾している。task_area)・清掃実施面積(clean_area) の型が、clean_statuses では unsigned decimal(unsigned 付き)、clean_status_histories と clean_task_reports では decimal(unsigned なし)と、同じ論理カラムでもテーブルによって型表記が異なる。uk(unique key)で、他テーブルの pk(primary key)と異なる。responsed_at と記載されている(英単語としては respond の過去分詞は responded であり、綴りの誤りの可能性があるが、原文ママ転記)。(型・サイズ・必須・初期値等で「読み取れず」に該当する箇所はありませんでした。全セルが判読可能でした。)