33 lines
1.1 KiB
Plaintext
33 lines
1.1 KiB
Plaintext
{{#apiInfo}}
|
|
{{#apis}}
|
|
{{#operations}}
|
|
import { inject, Injectable } from '@angular/core';
|
|
import { Observable } from 'rxjs';
|
|
|
|
import { {{classname}}UseCases } from './{{classFilename}}.use-cases.contract';
|
|
|
|
import { {{constantName}}_REPOSITORY, {{classname}}Repository } from '@/domain/repositories/{{classFilename}}/{{classFilename}}.repository.contract';
|
|
{{#imports}}
|
|
import { {{classname}} } from '@/entities/models/{{tagFilename}}/{{classFilename}}.model';
|
|
{{/imports}}
|
|
|
|
/**
|
|
* {{classname}} Use Cases Implementation
|
|
* Generated from OpenAPI tag: {{classname}}
|
|
*/
|
|
@Injectable()
|
|
export class {{classname}}UseCasesImpl implements {{classname}}UseCases {
|
|
#{{classVarName}}Repository: {{classname}}Repository = inject({{constantName}}_REPOSITORY);
|
|
|
|
{{#operation}}
|
|
{{nickname}}({{#allParams}}{{paramName}}{{^required}}?{{/required}}: {{{dataType}}}{{^-last}}, {{/-last}}{{/allParams}}): Observable<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> {
|
|
return this.#{{classVarName}}Repository.{{nickname}}({{#allParams}}{{paramName}}{{^-last}}, {{/-last}}{{/allParams}});
|
|
}
|
|
|
|
{{/operation}}
|
|
}
|
|
|
|
{{/operations}}
|
|
{{/apis}}
|
|
{{/apiInfo}}
|