use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class PaymentBatchMenu method findRecentPaymentBatches.
@Action(semantics = SemanticsOf.SAFE)
@MemberOrder(sequence = "300.15")
public List<PaymentBatch> findRecentPaymentBatches() {
DateTime now = clockService.nowAsDateTime();
DateTime threeMonthsAgo = now.minusMonths(3);
return paymentBatchRepository.findByCreatedOnBetween(threeMonthsAgo, now);
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class Task_categoriseDocumentAsOtherInvoice method act.
@Action(domainEvent = ActionDomainEvent.class, semantics = SemanticsOf.IDEMPOTENT)
@ActionLayout(contributed = Contributed.AS_ACTION, cssClassFa = "folder-open-o")
public Object act(final IncomingInvoiceType incomingInvoiceType, @Nullable final String comment, final boolean goToNext) {
final Object nextTaskIfAny = nextTaskOrWarnIfRequired(goToNext);
Object mixinResult = mixin().act(incomingInvoiceType, comment);
if (mixinResult instanceof IncomingDocViewModel) {
IncomingDocViewModel viewModel = (IncomingDocViewModel) mixinResult;
// to support 'goToNext' when finished with the view model
viewModel.setOriginatingTask(task);
}
return coalesce(nextTaskIfAny, mixinResult);
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class LeaseMenu method verifyLeasesUntil.
@Action(semantics = SemanticsOf.IDEMPOTENT)
@MemberOrder(sequence = "4")
public String verifyLeasesUntil(final LeaseItemType leaseItemType, final LocalDate untilDate) {
DateTime start = DateTime.now();
List<Lease> leases = allLeases();
for (Lease lease : leases) {
for (LeaseItem leaseItem : lease.getItems()) {
if (leaseItem.getType().equals(leaseItemType)) {
leaseItem.verifyUntil(untilDate);
}
}
}
Period p = new Period(start, DateTime.now());
return String.format("Verified %d leases in %s", leases.size(), JodaPeriodUtils.asString(p));
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class CommunicationChannel_findCommunications method act.
@Action(semantics = SemanticsOf.SAFE, domainEvent = ActionDomainEvent.class)
public List<Communication> act(final LocalDate from, final LocalDate to) {
final DateTime fromDateTime = toDateTime(from);
final DateTime toDateTime = toDateTime(to).plusDays(1);
return communicationRepository.findByCommunicationChannelAndPendingOrCreatedAtBetween(this.communicationChannel, fromDateTime, toDateTime);
}
use of org.apache.isis.applib.annotation.Action in project estatio by estatio.
the class PartyRole method remove.
@Action(semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE)
public Party remove() {
Party party = getParty();
remove(this);
return party;
}
Aggregations