OneCareer mach-scout実装完了(マイグレーション除く)

Resolved 💬 2 comments Opened Oct 24, 2025 by ShoichiTect Closed Nov 29, 2025

実装概要

auto-browzing側のapp/onecareer/dsb.pyを参考に、mach-scout/onecareer/を実装しました。
ababaアプリの実装パターンに従い、common.views.api.baseのベースクラスを最大限活用した最小限の実装です。

実装完了項目

✅ 1. モデル実装 (models.py)

  • Applicant: BaseApplicantを継承、OneCareer固有フィールド(name, university, faculty, department, graduate_year)を追加
  • Recruitment: BaseRecruitmentを継承
  • RecruitmentApplicant: BaseRecruitmentApplicantを継承
  • Scout: BaseScoutを継承
  • Cancel: BaseCancelを継承
  • Approve: BaseApproveを継承

✅ 2. API Views実装

views/api/applicant.py
  • CreateApplicantView: BaseCreateApplicantViewを継承した応募者作成API
views/api/recruitment_applicant.py
  • CreateRecruitmentApplicantView: BaseCreateRecruitmentApplicantViewを継承
  • GetNgID: NGリスト取得API
  • GetNotScoutedIDs: 未スカウトID取得API
views/api/scout.py
  • CreateScoutView: BaseCreateScoutViewを継承したスカウト作成API
  • GetWillScouts: BaseGetWillScoutsViewを継承したピックアップ済みスカウト取得API (media_name='onecareer')
  • UpdateIsScouted: BaseUpdateIsScoutedViewを継承したスカウト送信完了フラグ更新API

✅ 3. URLルーティング (urls.py)

以下の7つのAPIエンドポイントを定義:

  • /onecareer/api/create_applicant/
  • /onecareer/api/create_recruitment_applicant/
  • /onecareer/api/create_scout/
  • /onecareer/api/get_ng_ids/
  • /onecareer/api/get_not_scouted_ids/
  • /onecareer/api/get_will_scouts/
  • /onecareer/api/update_is_scouted/

✅ 4. Django設定

  • config/settings/base.py: INSTALLED_APPSにonecareerを追加
  • config/urls.py: onecareer URLパターンを追加

✅ 5. その他ファイル

  • admin.py: Django管理画面設定(基本設定のみ)
  • apps.py: OnecareerConfigアプリケーション設定
  • forms.py, tests.py: 空ファイル
  • __init__.py: パッケージ初期化ファイル各種

コミット履歴

2cbc62f Add OneCareer basic configuration files
8a4624c Add OneCareer to Django settings and URL configuration
e794de1 Add OneCareer URL configuration
0ac6ec5 Add OneCareer scout API views
418d20e Add OneCareer recruitment applicant API views
90e2dd7 Add OneCareer applicant API view
40367f9 Add OneCareer models.py

🚧 未完了項目

マイグレーションファイル生成

  • Docker環境でのマイグレーション生成が必要
  • コマンド: make migrate または Docker内で python manage.py makemigrations onecareer

実装方針

  • ✅ ベースクラス(BaseCreateApplicantView等)を最大限活用
  • ✅ ababaアプリと同じ構造・パターンを踏襲
  • ✅ OneCareer固有のフィールドはapplicant_dataからそのまま受け取る
  • ✅ 1モジュールごとにコミット

次のステップ

  1. マイグレーションファイルの生成と適用
  2. auto-browzing側からの動作確認
  3. 必要に応じてテストの追加

参考ファイル

  • 参考元: autobrowzing_vscode/auto-browzing/app/onecareer/dsb.py
  • 実装パターン参考: cloud-rpa/mach-scout/ababa/

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗