Skip to content

ADM-001-2 pworld_archive_job_status

← EP-一覧 · 共通前提

概要

手動取得ジョブの状態をポーリングする。完了時はジョブ結果に加え、指定に応じてメール一覧ペイロードrecent / mail_list_*)をマージして返し得る。

POST パラメータ

フィールド必須説明
job_idポーリング対象のジョブ ID(空は不可)
mail_list_subject_search任意完了時に一覧をマージする場合の件名検索(ajax_mail_list と同じ解釈)
mail_list_date_from / mail_list_date_to任意受信日範囲フィルタ(Y-m-d

wp_optionsテーブルからデータ取得

カラム名where検索値
option_namejob_id
option_value

pworld_mail_archiveテーブルからデータ取得

カラム名where検索値
subjectmail_list_subject_search
received_datemail_list_date_from, mail_list_date_to
created_at

成功時 data(ジョブ状態 running

論理名物理名
ジョブ状態statusstring(固定値 running
メッセージmessagestring(PworldArchiveCopy::PWORLD_ARCHIVE_JOB_RUNNING

成功時 data(ジョブ状態 done

ジョブ完了時は、集計値に加え メール一覧build_mail_list_ajax_payload_for_page と同形)をマージして返す。一覧マージに失敗しても 成功レスポンス本体は維持され、ログに記録されるのみ。

mail_list_per_page の意味および recent の要素数については ADM-001-13 pworld_archive_mail_list を参照(本 done 応答と同一の一覧ペイロードである)。

論理名物理名
ジョブ状態statusstring(固定値 done
サマリメッセージmessagestring(取得・保存・スキップ件数を含む整形文言)
取得件数fetchedint
保存件数savedint
スキップ件数skippedint
クールダウン秒cooldown_secondsint(実装定数 COOLDOWN_SECONDS、概ね 60)
一覧行データrecentobject の配列(管理画面一覧 1 行。entity_to_admin_row_array 相当)
一覧総件数mail_list_totalint
一覧ページ番号mail_list_pageint
1 ページあたり件数mail_list_per_pageint(20
一覧総ページ数mail_list_total_pagesint
表示範囲(開始)mail_list_showing_fromint
表示範囲(終了)mail_list_showing_toint
フィルタ有効mail_list_filter_activebool
件名検索(エコー)mail_list_subject_searchstring
受信日 From(エコー)mail_list_date_fromstring(未指定時は空文字)
受信日 To(エコー)mail_list_date_tostring(未指定時は空文字)

失敗

success: false のとき、data に少なくとも message(汎用エラー)が含まれる。ジョブ状態が error 等のときは error_detail に内部メッセージ文字列が付く場合あり。

条件メッセージ例
job_id 不一致・状態なしPworldArchiveCopy::PWORLD_ARCHIVE_JOB_NOT_FOUND
done だが result が壊れているPworldArchiveCopy::PWORLD_ARCHIVE_RUN_ERROR