add rules service

This commit is contained in:
Dan Percic 2021-10-14 21:56:24 +03:00
parent d8594964e9
commit 9a73d3d1d9
3 changed files with 25 additions and 7 deletions

View File

@ -1,6 +1,5 @@
import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';
import { PermissionsService } from '@services/permissions.service';
import { RulesControllerService } from '@redaction/red-ui-http';
import { Debounce, IconButtonTypes, LoadingService, Toaster } from '@iqser/common-ui';
import { TranslateService } from '@ngx-translate/core';
import { saveAs } from 'file-saver';
@ -9,6 +8,7 @@ import { ActivatedRoute } from '@angular/router';
import { AppStateService } from '@state/app-state.service';
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
import { DossierTemplatesService } from '@services/entity-services/dossier-templates.service';
import { RulesService } from '../../services/rules.service';
import ICodeEditor = monaco.editor.ICodeEditor;
import IModelDeltaDecoration = monaco.editor.IModelDeltaDecoration;
import IStandaloneEditorConstructionOptions = monaco.editor.IStandaloneEditorConstructionOptions;
@ -38,7 +38,7 @@ export class RulesScreenComponent extends ComponentHasChanges implements OnInit
constructor(
readonly permissionsService: PermissionsService,
private readonly _rulesControllerService: RulesControllerService,
private readonly _rulesService: RulesService,
private readonly _appStateService: AppStateService,
private readonly _dossierTemplatesService: DossierTemplatesService,
private readonly _toaster: Toaster,
@ -88,7 +88,7 @@ export class RulesScreenComponent extends ComponentHasChanges implements OnInit
async save(): Promise<void> {
this._loadingService.start();
await this._rulesControllerService
await this._rulesService
.uploadRules({
rules: this._codeEditor.getModel().getValue(),
dossierTemplateId: this._dossierTemplatesService.activeDossierTemplateId,
@ -148,8 +148,8 @@ export class RulesScreenComponent extends ComponentHasChanges implements OnInit
private async _initialize() {
this._loadingService.start();
await this._rulesControllerService
.downloadRules(this._dossierTemplatesService.activeDossierTemplateId)
await this._rulesService
.download(this._dossierTemplatesService.activeDossierTemplateId)
.toPromise()
.then(
rules => {

View File

@ -0,0 +1,20 @@
import { Injectable, Injector } from '@angular/core';
import { GenericService, RequiredParam, Validate } from '@iqser/common-ui';
import { Rules } from '@redaction/red-ui-http';
@Injectable()
export class RulesService extends GenericService<Rules> {
constructor(protected readonly _injector: Injector) {
super(_injector, 'rules');
}
@Validate()
download(@RequiredParam() dossierTemplateId: string) {
return this._getOne([dossierTemplateId]);
}
@Validate()
uploadRules(@RequiredParam() body: Rules) {
return this._post<unknown>(body);
}
}

View File

@ -1,7 +1,6 @@
import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';
import { Configuration } from './configuration';
import { HttpClient } from '@angular/common/http';
import { RulesControllerService } from './api/rulesController.service';
import { SmtpConfigurationControllerService } from './api/smtpConfigurationController.service';
import { UploadControllerService } from './api/uploadController.service';
import { ViewedPagesControllerService } from './api/viewedPagesController.service';
@ -14,7 +13,6 @@ import { NotificationControllerService } from './api/notificationController.serv
declarations: [],
exports: [],
providers: [
RulesControllerService,
SmtpConfigurationControllerService,
UploadControllerService,
ViewedPagesControllerService,