public RnRForm getRnrForm(long formId) throws LMISException {
   if (formId != 0) {
     isHistoryForm = true;
   }
   if (rnRForm != null) {
     return rnRForm;
   }
   // three branches: history, half completed draft, new draft
   if (isHistoryForm()) {
     return rnrFormRepository.queryRnRForm(formId);
   }
   RnRForm draftRequisition = rnrFormRepository.queryUnAuthorized();
   if (draftRequisition != null) {
     return draftRequisition;
   }
   return rnrFormRepository.initNormalRnrForm(periodEndDate);
 }
 public void removeRequisition() {
   if (!isHistoryForm()) {
     try {
       rnrFormRepository.removeRnrForm(rnRForm);
     } catch (LMISException e) {
       ToastUtil.show(context.getString(R.string.delete_rnr_form_failed_warning));
       e.reportToFabric();
     }
   }
 }
 public boolean validateFormPeriod() {
   return rnrFormRepository.isPeriodUnique(rnRForm);
 }