SUPPORT-9339: add sign verify

This commit is contained in:
Eduard Tihomirov 2025-08-28 14:15:18 +03:00
parent 838e1f8358
commit af52f7df8d
18 changed files with 1662 additions and 270 deletions

View file

@ -855,7 +855,7 @@
overflow: hidden;
padding-left: 56px;
}
.webbpm.ervu_lkrp_ul .modal.show ervu-file-upload .selected-file .selected-file-name::before {
.webbpm.ervu_lkrp_ul .modal.show ervu-file-upload .selected-file .icon-csv::before {
position: absolute;
content: url(../img/svg/file-csv.svg);
top: -2px;

View file

@ -18,7 +18,7 @@
hidden>
<div class="selected-file-list" *ngIf="isFilesListVisible">
<div class="selected-file" *ngFor="let item of uploader.queue">
<span class="selected-file-name">{{item?.file?.name}}</span>
<span class="selected-file-name" [ngClass]="getFileIconClass()">{{item?.file?.name}}</span>
<span class="selected-file-size" *ngIf="displayFileSize">{{item?.file?.size/1024/1024 | number: '.2'}} MB</span>
<button class="selected-file-delete-btn" (click)="removeFile(item)">{{removeFileButtonName}}</button>
</div>

View file

@ -5,7 +5,7 @@ import {
Event,
MessagesService,
UnsupportedOperationError,
AppConfigService
AppConfigService, ObjectRef
} from "@webbpm/base-package";
import {ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef} from "@angular/core";
import {FileItem, FileUploader} from "ng2-file-upload";
@ -23,6 +23,10 @@ import {TokenConstants} from "../../../modules/security/TokenConstants";
export class ErvuFileUpload extends InputControl {
private static readonly BACKEND_URL: string = "backend.context";
@ObjectRef()
public signFileUploadRef: ErvuFileUpload;
@ObjectRef()
public mchdFileUploadRef: ErvuFileUpload;
@NotNull("true")
public selectFileFieldText: string;
@NotNull("true")
@ -137,24 +141,32 @@ export class ErvuFileUpload extends InputControl {
private setUploaderMethods() {
this.uploader.onBeforeUploadItem = (fileItem: FileItem) => {
const additionalParams: any = {
signFile: this.signFileUploadRef.uploader.queue[0]._file
};
if (this.mchdFileUploadRef && this.mchdFileUploadRef.uploader.queue.length > 0) {
additionalParams.mchdFile = this.mchdFileUploadRef.uploader.queue[0]._file;
}
//refresh headers
this.uploader.setOptions({
headers: [
{
name: "X-Employee-Info-File-Form-Type",
value: EmployeeInfoFileFormType[this.formType]
},
{
name: "Client-Time-Zone",
value: Intl.DateTimeFormat().resolvedOptions().timeZone
},
{
name: TokenConstants.CSRF_HEADER_NAME,
value: this.cookieService.get(TokenConstants.CSRF_TOKEN_NAME)
}
]
});
this.uploader.setOptions({
headers: [
{
name: "X-Employee-Info-File-Form-Type",
value: EmployeeInfoFileFormType[this.formType]
},
{
name: "Client-Time-Zone",
value: Intl.DateTimeFormat().resolvedOptions().timeZone
},
{
name: TokenConstants.CSRF_HEADER_NAME,
value: this.cookieService.get(TokenConstants.CSRF_TOKEN_NAME)
}
],
additionalParameter: additionalParams
});
this.fileUploadStartEvent.trigger();
this.isDropZoneVisible = false;
this.isFilesListVisible = false;
@ -221,6 +233,13 @@ export class ErvuFileUpload extends InputControl {
return undefined;
}
getFileIconClass(): string {
if (this.extensionFilter && this.extensionFilter.length > 0) {
return `icon-${this.extensionFilter[0].toLowerCase()}`;
}
return 'icon-default';
}
subscribeToModelChange() {
//empty because there is no ngModel here
}