use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class EstatioSecurityModuleFixturesMenu method installFixturesAndReturnFirstRole.
// //////////////////////////////////////
@Action(semantics = SemanticsOf.NON_IDEMPOTENT, restrictTo = RestrictTo.PROTOTYPING)
@ActionLayout(cssClassFa = "fa-bolt")
@MemberOrder(sequence = "20")
public Object installFixturesAndReturnFirstRole() {
final List<FixtureResult> fixtureResultList = fixtureScripts.findFixtureScriptFor(EstatioSecurityModuleSeedFixture.class).run(null);
for (FixtureResult fixtureResult : fixtureResultList) {
final Object object = fixtureResult.getObject();
if (object instanceof ApplicationRole) {
return object;
}
}
container.warnUser("No rules found in fixture; returning all results");
return fixtureResultList;
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class Property_newBudgetContribution method newBudget.
@Action(semantics = SemanticsOf.NON_IDEMPOTENT)
@MemberOrder(name = "budgets", sequence = "1")
public Budget newBudget(final Property property, final int year) {
Budget budget = budgetRepository.newBudget(property, new LocalDate(year, 01, 01), new LocalDate(year, 12, 31));
budget.findOrCreatePartitioningForBudgeting();
return budget;
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class Lease method verifyUntil.
@Action(semantics = SemanticsOf.IDEMPOTENT)
public Lease verifyUntil(final LocalDate date) {
for (LeaseItem item : getItems()) {
LocalDateInterval effectiveInterval = item.getEffectiveInterval();
item.verifyUntil(ObjectUtils.min(effectiveInterval == null ? null : effectiveInterval.endDateExcluding(), date));
}
return this;
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class InvoiceForLease_prepareAbstract method $$.
@Action(domainEvent = ActionDomainEvent.class, semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE)
@ActionLayout(contributed = Contributed.AS_ACTION)
public Invoice $$() throws IOException {
final DocumentTemplate template = documentTemplateFor(invoiceForLease);
final Document document = documentCreatorService.createDocumentAndAttachPaperclips(invoiceForLease, template);
document.render(template, invoiceForLease);
return invoiceForLease;
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class InvoiceMenu method newInvoiceForLease.
@ActionLayout(contributed = Contributed.AS_NEITHER)
@Action(semantics = SemanticsOf.NON_IDEMPOTENT)
@MemberOrder(sequence = "1")
public Invoice newInvoiceForLease(final Lease lease, final LocalDate dueDate, @Parameter(optionality = Optionality.OPTIONAL) final PaymentMethod paymentMethod, final Currency currency) {
final Property propertyIfAny = lease.getProperty();
final Party seller = lease.getPrimaryParty();
final Party buyer = lease.getSecondaryParty();
final ApplicationTenancy propertySellerTenancy = estatioApplicationTenancyRepositoryForLease.findOrCreateTenancyFor(propertyIfAny, seller);
return invoiceForLeaseRepository.newInvoice(propertySellerTenancy, seller, buyer, paymentMethod == null ? lease.defaultPaymentMethod() : paymentMethod, currency, dueDate, lease, null);
}
Aggregations