aboutsummaryrefslogtreecommitdiffstats
path: root/vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts')
-rw-r--r--vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts61
1 files changed, 60 insertions, 1 deletions
diff --git a/vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts b/vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts
index 3a7f4ecfa..d8d3c32ac 100644
--- a/vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts
+++ b/vid-webpack-master/src/app/shared/components/auditInfoModal/auditInfoModal.component.ts
@@ -11,6 +11,10 @@ import {NgRedux} from "@angular-redux/store";
import {AppState} from "../../store/reducers";
import {AuditInfoModalComponentService} from "./auditInfoModal.component.service";
import {FeatureFlagsService, Features} from "../../services/featureFlag/feature-flags.service";
+import * as XLSX from 'xlsx';
+import {DatePipe} from "@angular/common";
+import {SpaceToUnderscorePipe} from "../../pipes/spaceToUnderscore/space-to-underscore.pipe";
+import {ResizeEvent} from "angular-resizable-element";
@Component({
selector: 'audit-info-modal',
@@ -21,7 +25,7 @@ export class AuditInfoModalComponent {
static openModal: Subject<ServiceInfoModel> = new Subject<ServiceInfoModel>();
static openInstanceAuditInfoModal: Subject<{instanceId , type, model, instance}> = new Subject<{instanceId , type, model, instance}>();
@ViewChild('auditInfoModal', {static: false}) public auditInfoModal: ModalDirective;
- title: string = 'Service Instantiation Information';
+ title: string = 'Service Information';
modelInfoItems: ModelInformationItem[] = [];
serviceModel: ServiceModel;
serviceModelName: string;
@@ -39,17 +43,26 @@ export class AuditInfoModalComponent {
type : string = "Service";
showVidStatus : boolean = true;
auditInfoModalComponentService : AuditInfoModalComponentService;
+ serviceInstanceName : string;
+ serviceModelVersion : any;
+ exportMSOStatusFeatureEnabled: boolean;
+ dataIsReady : boolean = false;
+ jobDataLocal : any;
constructor(private _serviceInfoService: ServiceInfoService, private _iframeService : IframeService,
private _auditInfoModalComponentService : AuditInfoModalComponentService,
private _featureFlagsService: FeatureFlagsService,
+ private datePipe: DatePipe,
+ private spacetoUnderscore: SpaceToUnderscorePipe,
private store: NgRedux<AppState>) {
this.auditInfoModalComponentService = this._auditInfoModalComponentService;
AuditInfoModalComponent.openModal.subscribe((jobData: ServiceInfoModel) => {
this.isALaCarteFlagOn = this.store.getState().global.flags['FLAG_A_LA_CARTE_AUDIT_INFO'];
this.showMoreAuditInfoLink = _featureFlagsService.getFlagState(Features.FLAG_MORE_AUDIT_INFO_LINK_ON_AUDIT_INFO);
+ this.exportMSOStatusFeatureEnabled = _featureFlagsService.getFlagState(Features.FLAG_2011_EXPORT_MSO_STATUS);
this.initializeProperties();
this.showVidStatus = true;
if (jobData) {
+ this.jobDataLocal = jobData;
this.isAlaCarte = jobData.aLaCarte;
this.openAuditInfoModal(jobData);
_iframeService.addClassOpenModal(this.parentElementClassName);
@@ -57,6 +70,8 @@ export class AuditInfoModalComponent {
this.serviceModelId = jobData.serviceModelId;
this.jobId = jobData.jobId;
this.auditInfoModal.show();
+ this.serviceInstanceName = jobData.serviceInstanceName;
+ this.serviceModelVersion = jobData.serviceModelVersion;
} else {
_iframeService.removeClassCloseModal(this.parentElementClassName);
this.auditInfoModal.hide();
@@ -85,6 +100,29 @@ export class AuditInfoModalComponent {
});
}
+ public style: object = {};
+ validate(event: ResizeEvent): boolean {
+ console.log("event : ", event);
+ if(event.rectangle.width && event.rectangle.height &&
+ ( event.rectangle.width < 800 || event.rectangle.width > 1240)
+ ){
+ return false;
+ } else{
+ return true;
+ }
+ }
+ onResizeEnd(event: ResizeEvent): void {
+ console.log('Element was resized', event);
+ this.style = {
+ position: 'fixed',
+ left: `${event.rectangle.left}px`,
+ top: `${event.rectangle.top}px`,
+ width: `${event.rectangle.width}px`,
+ height: `${event.rectangle.height}px`
+ };
+ console.log("stle : ", this.style);
+ }
+
setModalTitles(type : string) : void{
this.type = AuditInfoModalComponentService.setModalTitlesType(type) ;
@@ -117,6 +155,20 @@ export class AuditInfoModalComponent {
});
}
+ exportMsoStatusTable(){
+ let currentTime = new Date();
+ let timestamp = this.datePipe.transform(currentTime, "MMMddyyyy")+'_'
+ +currentTime.getHours()+":"+currentTime.getMinutes()+":"+currentTime.getSeconds()
+ let fileName = this.spacetoUnderscore.transform(this.serviceInstanceName)+'_'+timestamp;
+ let msoStatusTableElement = document.getElementById('service-instantiation-audit-info-mso');
+ const ws: XLSX.WorkSheet = XLSX.utils.table_to_sheet(msoStatusTableElement);
+ const wb: XLSX.WorkBook = XLSX.utils.book_new();
+ XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
+ /* save to file */
+ XLSX.writeFile(wb, fileName+'.csv');
+ this._iframeService.addClassOpenModal(this.parentElementClassName);
+ }
+
onCancelClick() {
this._iframeService.removeClassCloseModal(this.parentElementClassName);
this.initializeProperties();
@@ -128,6 +180,13 @@ export class AuditInfoModalComponent {
window.open("http://ecompguide.web.att.com:8000/#ecomp_ug/c_ecomp_ops_vid.htmll#r_ecomp_ops_vid_bbglossary", "_blank");
}
+ refreshData(): void {
+ this.dataIsReady = false;
+ this.initAuditInfoData(this.jobDataLocal);
+ this.dataIsReady = true;
+
+ }
+
readOnlyRetryUrl = (): string =>
`../../serviceModels.htm?more#/servicePlanning/RETRY?serviceModelId=${this.serviceModelId}&jobId=${this.jobId}`
}