18 , _account_service(services.account_service())
19 , _post_budget_service(services.post_budget_service())
20 , _banner_budget_service(services.banner_budget_service())
29 close_budget(_post_budget_service, op);
31 case budget_type::banner:
32 close_budget(_banner_budget_service, op);
37 template <protocol::budget_type budget_type_v>
41 FC_ASSERT(budget_svc.
is_exists(op.uuid),
"Budget with uuid ${id} doesn't exist", (
"id", op.uuid));
43 const auto& budget = budget_svc.
get(op.uuid);
44 FC_ASSERT(budget.owner == op.owner,
"These is not [${o}/${id}] budget", (
"o", op.owner)(
"id", op.uuid));
void do_apply(const operation_type &op)
close_budget_evaluator(data_service_factory_i &services)
virtual void check_account_existence(const account_name_type &, const optional< const char * > &context_type_name=optional< const char * >()) const =0
virtual bool is_exists(const uuid_type &uuid) const =0
virtual void finish_budget(const uuid_type &uuid)=0
virtual const adv_budget_object< budget_type_v > & get(const oid< adv_budget_object< budget_type_v >> &) const =0
Closes advertising budget, remaining funds will be returned to creator.