SMILE 注文エクスポート追跡仕様(2026-03-03)
背景
- 注文について「エクスポート済みか」「いつエクスポートしたか」を明確に判別したい。
- 既存の
Order.customFields
による単一フラグ管理では、再エクスポート履歴や監査性が弱い。
採用方針
- 注文エクスポートの状態は
Order.customFields
ではなく、専用履歴テーブルで管理する。
- 後方互換は維持しない。
データモデル
- 新規テーブル:
ritsubi_smile_order_export
- 主な保持項目:
orderId
exportLogId
exportedAt
executedBy
executionMethod
判定ルール
- 未エクスポート:
orderId に対応する履歴が存在しない
- エクスポート済み: 履歴が1件以上存在する
- エクスポート日時:
MAX(exportedAt) を採用する
API
Order.smileExportedAt を追加し、最新エクスポート日時を返す。
null の場合は未エクスポートとして扱う。
追加合意(2026-03-04)
- 手動エクスポート画面の期間指定はオプションとする(既定OFF)。
- 期間指定OFF時は開始日時・終了日時UIを表示しない。
- 既定のエクスポート対象は「未エクスポート注文のみ」とする。
- 画面で
エクスポート済み受注も含める をONにした場合のみ再出力対象に含める。
- 注文プレビューは Dashboard 標準のデータテーブルを使用し、検索・列フィルター・並び替えを利用可能にする。
- 注文プレビューの行選択により、選択済み注文のみ個別エクスポート対象として指定できる。
移行
- 旧カラム
customFieldsSmileexported / customFieldsSmileexportedat /
customFieldsSmileexportlogid は削除する。