refactor: implement RequestBuilder for main request

This commit is contained in:
2024-06-27 01:50:58 +03:00
parent e36376db3a
commit 8e738d9b3d
9 changed files with 151 additions and 75 deletions

@ -10,51 +10,88 @@ import {DateOnly} from "@model/DateOnly";
@Injectable()
export default class SetupService extends ApiService {
protected basePath = 'Setup/';
public readonly basePath = 'Setup/';
public readonly version = AvailableVersion.v1;
public checkToken(token: string) {
return this.get<boolean>('CheckToken', {token: token});
return this.createRequestBuilder()
.setEndpoint('CheckToken')
.setQueryParams({token: token})
.build<ApiService>()
.get<boolean>();
}
public setPsql(data: DatabaseRequest) {
return this.post<boolean>('SetPsql', data);
return this.createRequestBuilder()
.setEndpoint('SetPsql')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public setMysql(data: DatabaseRequest) {
return this.post<boolean>('SetMysql', data);
return this.createRequestBuilder()
.setEndpoint('SetMysql')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public setSqlite(path: string | null = null) {
return this.post<boolean>('SetSqlite', null, {path: path});
return this.createRequestBuilder()
.setEndpoint('SetSqlite')
.setQueryParams({path: path})
.build<ApiService>()
.get<boolean>();
}
public setRedis(data: CacheRequest) {
return this.post<boolean>('SetRedis', data);
return this.createRequestBuilder()
.setEndpoint('SetRedis')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public setMemcached() {
return this.post<boolean>('SetMemcached', null);
return this.post<boolean>('SetMemcached');
}
public createAdmin(data: CreateUserRequest) {
return this.post<boolean>('CreateAdmin', data);
return this.createRequestBuilder()
.setEndpoint('CreateAdmin')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public setLogging(data: LoggingRequest | null = null) {
return this.post<boolean>('SetLogging', data);
return this.createRequestBuilder()
.setEndpoint('SetLogging')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public setEmail(data: EmailRequest | null = null) {
return this.post<boolean>('SetEmail', data);
return this.createRequestBuilder()
.setEndpoint('SetEmail')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public setSchedule(data: ScheduleConfigurationRequest) {
data.startTerm = new DateOnly(data.startTerm).toString();
return this.post<boolean>('SetSchedule', data);
return this.createRequestBuilder()
.setEndpoint('SetSchedule')
.setData(data)
.build<ApiService>()
.post<boolean>();
}
public submit() {
return this.post<boolean>('Submit', null);
return this.post<boolean>('Submit');
}
}