add watermark service

This commit is contained in:
Dan Percic 2021-10-14 22:38:34 +03:00
parent d4a2629e8f
commit 6106c2dfe4
4 changed files with 42 additions and 8 deletions

View File

@ -45,6 +45,7 @@ import { BaseAdminScreenComponent } from './base-admin-screen/base-admin-screen.
import { LicenseReportService } from './services/licence-report.service';
import { RulesService } from './services/rules.service';
import { SmtpConfigService } from './services/smtp-config.service';
import { WatermarkService } from './services/watermark.service';
const dialogs = [
AddEditDossierTemplateDialogComponent,
@ -95,7 +96,15 @@ const components = [
@NgModule({
declarations: [...components],
providers: [AdminDialogService, AuditService, DigitalSignatureService, LicenseReportService, RulesService, SmtpConfigService],
providers: [
AdminDialogService,
AuditService,
DigitalSignatureService,
LicenseReportService,
RulesService,
SmtpConfigService,
WatermarkService,
],
imports: [CommonModule, SharedModule, AdminRoutingModule, NgxChartsModule, ColorPickerModule, MonacoEditorModule],
})
export class AdminModule {}

View File

@ -5,12 +5,13 @@ import { environment } from '@environments/environment';
import { HttpClient } from '@angular/common/http';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { Debounce, IconButtonTypes, LoadingService, Toaster } from '@iqser/common-ui';
import { WatermarkControllerService, WatermarkModel } from '@redaction/red-ui-http';
import { WatermarkModel } from '@redaction/red-ui-http';
import { ActivatedRoute } from '@angular/router';
import { BASE_HREF } from '../../../../tokens';
import { stampPDFPage } from '@utils/page-stamper';
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
import { DossierTemplatesService } from '@services/entity-services/dossier-templates.service';
import { WatermarkService } from '../../services/watermark.service';
export const DEFAULT_WATERMARK: WatermarkModel = {
text: null,
@ -37,7 +38,7 @@ export class WatermarkScreenComponent implements OnInit {
constructor(
readonly permissionsService: PermissionsService,
@Inject(BASE_HREF) private readonly _baseHref: string,
private readonly _watermarkControllerService: WatermarkControllerService,
private readonly _watermarkService: WatermarkService,
private readonly _toaster: Toaster,
private readonly _http: HttpClient,
private readonly _changeDetectorRef: ChangeDetectorRef,
@ -79,8 +80,8 @@ export class WatermarkScreenComponent implements OnInit {
const dossierTemplateId = this._dossierTemplatesService.activeDossierTemplateId;
const observable = watermark.text
? this._watermarkControllerService.saveWatermark(watermark, dossierTemplateId)
: this._watermarkControllerService.deleteWatermark(dossierTemplateId);
? this._watermarkService.saveWatermark(watermark, dossierTemplateId)
: this._watermarkService.deleteWatermark(dossierTemplateId);
observable.toPromise().then(
() => {
@ -108,7 +109,7 @@ export class WatermarkScreenComponent implements OnInit {
}
private _loadWatermark() {
this._watermarkControllerService.getWatermark(this._dossierTemplatesService.activeDossierTemplateId).subscribe(
this._watermarkService.getWatermark(this._dossierTemplatesService.activeDossierTemplateId).subscribe(
watermark => {
this._watermark = watermark;
this.configForm.setValue({ ...this._watermark });

View File

@ -0,0 +1,25 @@
import { Injectable, Injector } from '@angular/core';
import { GenericService, RequiredParam, Validate } from '@iqser/common-ui';
import { WatermarkModel } from '@redaction/red-ui-http';
@Injectable()
export class WatermarkService extends GenericService<WatermarkModel> {
constructor(protected readonly _injector: Injector) {
super(_injector, 'watermark');
}
@Validate()
saveWatermark(@RequiredParam() body: WatermarkModel, @RequiredParam() dossierTemplateId: string) {
return this._post(body, `${this._defaultModelPath}/${dossierTemplateId}`);
}
@Validate()
deleteWatermark(@RequiredParam() dossierTemplateId: string) {
return super.delete({}, `${this._defaultModelPath}/${dossierTemplateId}`);
}
@Validate()
getWatermark(@RequiredParam() dossierTemplateId: string) {
return this._getOne([dossierTemplateId]);
}
}

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 { WatermarkControllerService } from './api/watermarkController.service';
import { SearchControllerService } from './api/searchController.service';
import { NotificationControllerService } from './api/notificationController.service';
@ -9,7 +8,7 @@ import { NotificationControllerService } from './api/notificationController.serv
imports: [],
declarations: [],
exports: [],
providers: [WatermarkControllerService, SearchControllerService, NotificationControllerService],
providers: [SearchControllerService, NotificationControllerService],
})
export class ApiModule {
constructor(@Optional() @SkipSelf() parentModule: ApiModule, @Optional() http: HttpClient) {