現在JavaでApache Click とDB Fluteを使用し画面作成を行っております。
コンポーネントファイルでDBから情報の取得を行い、取得できていた場合クラスファイルの方でボタンを表示させるという実装を行いたいのですが、上手くいかず停滞してしまっております。
public CreditLimitDto searchMember(CreditLimitCondition condition) { log.debug("Condition===> " + condition.toString()); CreditLimitDto result = new CreditLimitDto(); if(!TestStringUtil.isNullOrEmpty(condition.getMemberId())){ //会員情報の取得 memberBhv.selectEntity(cb -> { cb.query().setMemberId_Equal(condition.getMemberId()); cb.query().setDeleteFlag_Equal_Off(); }).ifPresent(member -> { result.setMemberId(member.getMemberId()); result.setAmountLimitShopTimesIssr(member.getAmountLimitShopTimesIssr()); result.setAmountLimitShopDayIssr(member.getAmountLimitShopDayIssr()); result.setAmountLimitShopMonthIssr(member.getAmountLimitShopMonthIssr()); result.setAmountLimitAtmTimesIssr(member.getAmountLimitAtmTimesIssr()); result.setAmountLimitAtmDayIssr(member.getAmountLimitAtmDayIssr()); result.setAmountLimitAtmMonthIssr(member.getAmountLimitAtmMonthIssr()); //カード情報の取得 cardBhv.selectEntity(cb -> { cb.query().setMemberId_Equal(member.getMemberId()); cb.query().addOrderBy_CardSeq_Desc(); cb.query().setStopFlag_Equal_Off(); cb.query().setDeleteFlag_Equal_Off(); cb.query().setExpire_GreaterEqual(TestDateUtil.getFormatSystemDate()); cb.fetchFirst(1); }).ifPresent(card -> { result.setCardKind(card.getCardKind()); }); }); } return result; }
上記がコンポーネントファイルとなります。
クラスファイルには以下のよう記載しております。
/* ボタン */ form.add(new Submit("back", Constants.BACK_BUTTON, this, "onSubmitBack")); Object condition; //TODO:cardKindを取得した場合ボタン表示 if(getCardKind(card.)){ submitRegist = new Submit("submitRegist", Constants.REGIST_BUTTON2, this, "onSubmitRegist"); }else { form.setError("有効なカードがない為、限度額設定できません"); }
cardKindを取得した場合にボタンを表示させるという処理の実装が最終的な目標です。クラスファイルif文の書き方について
どなたかご教授のほどよろしくお願いいたします。
あなたの回答
tips
プレビュー