設備の期間スケジュールを登録できるようにする

インターン九日目です。

設備の日表示で期間スケジュールを表示できるようにするところで苦戦しました。

設備のスケジュールデータを取り出すために、FacilityIdで検索するのが必要ですが、

今までは、DBにUserIdで検索してスケジュールを取り出してましたが、設備の場合はFacilityIdでスケジュールを取り出すのが必要である。

UserIdはFacilityIdと違うテーブルに保存されてるので、新しいSQL文を発行してFacilityIdを取得するメソッドを作りましたが、


public int getFacilityId(long id) { int facilityId = 0; try { SelectQuery<EipMFacility> query = Database.query(EipMFacility.class); query.select(EipMFacility.FACILITY_ID_PK_COLUMN); List<EipMFacility> aList = query.fetchList(); EipMFacility record = aList.get(Integer.valueOf((int) id)); facilityId = record.getFacilityId(); } catch (Exception ex) { logger.error("schedule", ex); } return facilityId; }

午後いただいたアドバイスから、実はUserIdとFacilityIdが違うSCHEDULEMAP_TYPEで同じところに保存されてる可能性があることが分かりました。

無駄なSQL文を発行せず、操作ももっと簡単そうなので、もう一度既存のメソッドでFacilityId取得するのを試してみます。

明日は最終日ですが、完成を目指して頑張ります。

どうぞよろしくお願いします。