会社2024.01 — 2024.10更新日 2026-08-10

Jeongdo UIT システム統合管理

既存の社内統合管理システムに、複数の地理空間システム向けの導入機関、サーバー、日程、ユーザー、統計機能を追加し、運用上の不具合を改善した保守プロジェクトです。

役割
プラットフォーム開発部 開発2チーム · 既存社内システムのフロントエンド・バックエンド機能追加および保守
技術
  • React 17
  • JavaScript
  • Ant Design
  • Axios
  • ECharts 5
  • OpenLayers 6
  • Java 8
  • Spring MVC 4.3
  • Spring Security/JWT
  • MyBatis
  • Oracle Database
  • Apache POI

公開運用画面

運用画面の記録

プロジェクト概要

社内でサポートする複数の地理空間システムについて、機関ごとの導入・運用情報を一元管理する業務ツールです。機関とサーバーの基本情報、導入日程、ライセンス関連ファイル、ユーザーと権限、共通コードを関連付け、全国の導入状況を地域別・システム種別に確認できるよう構成しました。

フロントエンド機能拡張

• React 17・React Router・Ant Designで、機関一覧・詳細・登録・更新と、日程、統計、共通コード、ユーザー管理画面を連携 • システム種別に応じて機関・サーバー入力フォームを分岐し、サーバー追加・削除、住所検索、入力検証、ライセンスファイルのアップロード・ダウンロードを実装 • OpenLayers 6で機関座標を地域境界上にシステム別ポイントとして表示し、選択した機関の名称・位置・システム種別を確認できる分布図を構成 • EChartsで地域別の導入・未導入状況とシステム別分布を可視化し、システム選択メニューと折りたたみ式サイドバーで統計探索を改善 • 画面幅に応じたレスポンシブ・モバイルUI、検索状態の維持、権限別メニューと登録操作、Axiosの認証・エラー処理を改善

バックエンド機能拡張

• Java 8・Spring MVCのController–Service–DAO構成とMyBatis・Oracleで、機関、サーバー設定、ユーザー、共通コード、日程、統計、地図データAPIを実装・改善 • システム種別に応じて機関と複数サーバーまたはサーバー設定をまとめて登録・更新・削除するトランザクション処理と、詳細表示用の関連データ組み立てを実装 • 地域、導入状態、システム種別ごとの集計クエリと機関座標クエリを追加し、OpenLayers地図とECharts統計へ提供 • Spring SecurityのJWT認証とBCryptパスワード処理を、ユーザー承認・所属・権限管理フローと連携 • 複数ファイルのアップロード・ダウンロードと、Apache POIによる機関・サーバー情報のExcel出力を業務機能へ統合

初担当プロジェクトで向き合ったレガシーReact

入社後に初めて担当したプロジェクトで、フロントエンドはReact 17を使用しながらも、関数コンポーネントとHooksではなく、クラスコンポーネントのstate、ライフサイクル、thisバインディングを中心に構成されていました。慣れていない実装方式で画面ごとの状態遷移と重複コードを把握することに苦労しましたが、全面的な書き換えは行わず、既存構造と運用への影響を先に理解し、必要な機能を小さな単位で追加しながら一部の重複を整理しました。この経験から、レガシーコードを読み、変更範囲を制御し、稼働中のシステムを安全に改善する方法を学びました。

機能追加・保守と貢献範囲

2024年1月から10月までのGit履歴では、システム種別の追加、機関・サーバー管理の統合、システム別・地域別統計、住所検索とモバイル画面、ユーザー所属・権限、新規種別の地図・チャート、サーバー登録・削除不具合の改善を確認できます。私は最初の設計者・構築者ではなく、既存コードを引き継いで要望機能を追加し、不具合を修正した範囲のみを開発2チームでの貢献として記録しています。

検証・公開範囲

機能と技術は、提供されたフロントエンド・バックエンドの両リポジトリとコミット履歴に基づいて整理しました。運用ページがHTTPで応答し、配布中のフロントエンドバンドルが提供されたローカルビルドと一致することを確認しました。認証後の運用データと画面は公開根拠に使用せず、内部アドレス、アカウント、データベース値、ライセンスファイル、非公開設定は除外しています。