コンテンツにスキップ

マニフェスト / 案件管理

マニフェスト / 案件管理

collector(共栄)側の案件(jobs)受託・マニフェスト登録・処理段階(収集運搬/処分)記録の運用手順。案件そのものの「登録・定期対応」は 排出事業者(discharger)側の機能であり collector 側には無い(collector は届いた依頼を受託する側)。「マニフェスト PDF 発行」機能は 実装なし(下記「つまずき/注意」参照)。

マニフェスト登録画面のワイヤーフレーム

図: マニフェスト登録画面。①画像OCR ②管理票番号・交付日などの基本情報 ③廃棄物種別・数量 ④登録ボタン(凡例は図内)。

サブ業務A: 受託案件の受託 / 辞退(排出事業者からの依頼への応答)

  • 対象ロール: admin / normal(collector staff。書込は両ロール可)
  • 前提: 排出事業者が自社宛に案件依頼を出し job_assignmentsproposed 状態で存在すること(依頼が無ければ一覧は空)。マスタ設定は不要。
  • 操作手順:
  • ⚠️ ナビからは到達不可(後述)。実体は「受託案件」画面(/collector/requests)。到達できた場合、排出事業者からの依頼が DataTable で並ぶ(列: 案件 / 回収先 / 数量 / 希望日 / 提示価格 / ステータス「依頼中」バッジ)。
  • 受託する行の右端で 「受託する」 ボタンを押す(成功トースト「案件を受託しました」、assignment が accepted_by_discharger へ)。
  • 断る場合は同じ行の 「辞退」 ボタン → 確認ダイアログ「この案件を辞退します」で 「辞退する」declined_by_collector へ・成功トースト「案件を辞退しました」)。
  • 概要画面(「概要」/collector)でも「受託待ち」上位5件を閲覧できる(受託操作ボタンは無い・閲覧のみ)。KPI「受託待ち / 今日の配車 / 進行中 / 本日完了」も表示。
  • 確認/完了条件: 受託→行が受託待ち一覧から消え、以後「配車」「マニフェスト」の段階登録対象になる。辞退→再度受け直しはできない(確認ダイアログに明記)。
  • つまずき/注意:
  • ⚠️ 「受託案件」は現在ナビ上「準備中(soon)」扱い。nav-config で status: 'soon' のため SideNav・モバイル下部タブ・コマンドパレットのいずれからもリンクが出ない/押せない(aria-disabled、ラベルに「準備中」バッジ)。ルート実体・受託ロジックは温存されているが、通常操作では画面に入れない。概要画面の「受託待ち」にも「すべて見る」導線は意図的に非表示。運用上は受託応答フローは未開放と理解すること。
  • 「スケジュール」(/collector/schedule) と「月次集計」(/collector/monthly) も同様に準備中(soon)でナビ非表示。
  • driver ロールにはこの画面のナビ項目自体が無い。
  • 関連画面: 概要(/collector)、配車(/collector/dispatch)、マニフェスト(/collector/manifests)。

サブ業務B: 自社マニフェストの新規登録(OCR 補助あり)

  • 対象ロール: admin / normal(collector staff のみ。driver は登録導線・書込不可)
  • 前提: なし(マスタ不要)。tenant_id は自社に固定される(RLS mig88 の carve-out で staff の INSERT 許可)。案件詳細からのディープリンク(?jobId= / ?wasteType= 等)があれば案件へ紐付けて登録できる。
  • 操作手順:
  • 「マニフェスト」画面(SideNav「マニフェスト」/collector/manifests)を開く。右上の 「マニフェスト登録」(+アイコン)を押す(空状態からは 「マニフェストを登録」 ボタンでも可)。
  • 登録フォーム(/collector/manifests/new)で、任意で 「画像から取込」 ボタン(カメラ/ファイル選択)で管理票を撮影/選択すると OCR が各欄を自動入力(「テキストを読み取りました。内容をご確認ください」トースト)。※画像はテキスト読取専用でサーバー保存されない旨が明記される。
  • 「基本情報」に 管理票番号(必須・例 M-2026-0001)、交付日(必須・YYYY-MM-DD)、排出事業者名(必須) を入力。
  • 「廃棄物内訳」で 廃棄物種別(必須・select)、任意で 数量単位(数量が空だと単位は非活性)。
  • 「関係者(任意)」で 収集運搬業者処分業者 を入力(任意)。
  • 「マニフェストを登録」 を押す(登録中は「登録中...」表示)。
  • 確認/完了条件: 成功トースト「マニフェストを登録しました」→ 一覧(/collector/manifests)へ戻る。一覧に管理票番号・廃棄物種別・交付日・段階バッジ「未登録」で行が現れる。
  • つまずき/注意:
  • OCR 読取候補が種別/単位の候補一覧に一致しない場合、amber の注記が出て 手動選択が必須(誤った既定値での送信を防ぐためフィールドが空にクリアされる)。
  • 同一 (tenant, 管理票番号) の重複は「同じ管理票番号が既に登録されています。」で失敗。
  • OCR は課金を伴う外部処理(/manifests/ocr)。失敗時は「読み取れませんでした。手動で入力してください」等が出るが、手入力で登録は継続できる。
  • driver には「マニフェスト登録」ボタン・登録画面への到達がない(staff ゲート isCollectorStaff)。
  • 関連画面: マニフェスト一覧(/collector/manifests)。

一括 OCR 取込とレビューキュー

  • 対象ロール: admin / normal(collector staff。driver は取込・確定不可)
  • 前提: 「マニフェスト」ハブを開き、上部の「一括取込」または「レビュー」タブへ移動できること。
  • 操作手順:
  • 「一括取込」(/collector/manifests/import) を開き、「画像・PDFを選択」で複数ファイルを選ぶ。1 バッチは最大 50 枚で、PDF はページごとに画像化して処理する。
  • 選択した画像を一括 OCR にかける。画面に OCR 処理中 の進捗が表示され、完了後は OCR 完了 N/N(上限到達時は一部完了)と失敗件数が表示される。OCR 結果と原本画像は保存付きのレビューキューへ入る。
  • 「レビューキューへ」または上部の「レビュー」(/collector/manifests/review) を開く。左の 要レビュー / 確認待ち 一覧から対象を選ぶ。
  • 原本画像を確認しながら、管理票番号・排出事業者名・廃棄物種別・数量・単位・収集運搬業者名・処分業者名・交付日を編集する。低信頼項目は 低信頼 バッジで示される。
  • 不要な項目は「破棄」、内容を確認した項目は「確定」。既存の管理票番号がある場合は重複警告を確認し、「既存を上書きして確定」で確定できる。
  • 確認/完了条件: 「確定」でレビュー項目がマニフェストとして登録され、「破棄」でレビューキューから除外される。OCR の一部失敗や上限到達時も、処理済みの項目はレビューキューで確認できる。
  • つまずき/注意:
  • OCR の候補は自動登録されない。低信頼項目や候補外の廃棄物種別・単位は、レビューで手動選択してから確定する。
  • 一括取込の失敗・上限到達は画面の件数表示で確認し、残りの画像は必要に応じて別バッチで再実行する。
  • 関連画面: マニフェスト一覧(/collector/manifests)、単票登録(/collector/manifests/new)

交付区分・JWNET 状態・報告年度(データ保持)

  • delivery_methodpaper / electronicjwnet_statenot_registered / registered / cancelled を保持する。既存行は NULL の項目だけ paper / not_registered で補完され、既存の値は上書きされない。
  • reporting_fiscal_year交付日 から自動導出される。4 月〜12 月はその暦年、1 月〜3 月は前年として保持する。交付日を含む更新でも再導出される。
  • これは将来の報告集計に使う データ項目の器であり、現行の登録・レビュー画面には交付区分や JWNET 状態を入力・変更する UI はない。JWNET 連携も未実装である。

サブ業務C: 処理段階(収集運搬 / 処分)の登録

  • 対象ロール: admin / normal(書込は staff のみ。driver は一覧の閲覧のみで段階登録ボタンは出ない)
  • 前提: 対象マニフェストが「自社に書ける」状態であること = ①自社が登録したマニフェスト(自社所有)、または ②排出事業者発行のマニフェストで、その job が自社に 受託済み(accepted/completed) で割り当たっていること(mig89 のガードトリガ/RLS が通る条件と一致)。この条件を満たさない行にはボタンが出ない。
  • 操作手順:
  • 「マニフェスト」一覧(/collector/manifests)を開く。各行の右端「段階」セルに、未登録の段階について 「収集運搬 登録」 / 「処分 登録」 ボタンが並ぶ(両段階を担うなら2つ並ぶ)。
  • ボタンを押すと確認ダイアログ(例「収集運搬を登録しますか?」本文に管理票番号と「登録日時が記録され、この操作は元に戻せません」)→ 「収集運搬を登録」/「処分を登録」 で確定。
  • 成功トースト「収集運搬を登録しました」/「処分を登録しました」。
  • 確認/完了条件: 段階セルが緑バッジ「収集運搬済」/「処分済」+登録日時(サーバ権威時刻 now() でスタンプ)に変わる。行左の「段階」列バッジも「未登録」→「収集運搬済」→(処分完了で)「処分済」へ遷移。登録日時はクライアント送信ではなくサーバがスタンプするため端末時計ズレの影響を受けない。
  • つまずき/注意:
  • 受託していない案件のマニフェストには段階登録ボタンが出ない(押しても RLS/トリガで失敗するボタンを意図的に出さない設計)。受託前に段階を記録したい場合はまず受託(サブ業務A)が前提。ただし A の受託画面がナビ準備中のため、実運用では受託が別経路で済んでいる前提になる。
  • 段階登録は 取り消し不可(ダイアログに明記)。
  • 収集運搬・処分は順序を強制しない(独立して登録可)。処分済が付けば一覧バッジは処分済を優先表示。
  • driver は一覧を開けても段階セルに操作要素が出ない(isCollectorStaff ゲート)。そもそも driver のナビにマニフェスト項目が無いため通常は到達しない。
  • 関連画面: 受託案件(/collector/requests)、配車(/collector/dispatch)。

未実装 / 準備中の明示

  • ⚠️ マニフェスト PDF 発行 / 帳票出力は未実装。web 側に PDF 生成・印刷・帳票出力の導線は存在しない(pdf-to-images は OCR 取込のための PDF→画像変換のみで、発行機能ではない)。マニフェスト管理は「登録+処理段階の記録」までが現状の範囲。
  • ⚠️ 案件(jobs)の新規登録・定期(recurring)回収の設定は collector 側に無い。案件生成・定期対応は排出事業者(discharger)側の機能(discharger-recurring 等)で、collector は届いた依頼を受託する側。
  • ⚠️ 受託案件(/collector/requests)・スケジュール(/collector/schedule)・月次集計(/collector/monthly) はナビ準備中(soon)。ルートは生きているがナビ/コマンドパレットから到達できない。