From ff2f5a1c34f6be1b2c881c246743786efdeb9ae6 Mon Sep 17 00:00:00 2001 From: Gaurav Kumar Date: Mon, 3 Nov 2025 19:25:02 +0530 Subject: [PATCH] hartc --- .../chart-config/chart-template.service.ts | 2 +- .../component-property.service.ts | 2 +- .../chart-config/dynamic-field.service.ts | 2 +- .../chart-config/ui-component.service.ts | 2 +- .../chart-type-manager.component.ts | 36 --------------- .../edit-chart-type.component.html | 4 +- .../edit-chart-type.component.ts | 46 ++++++++++++++++++- 7 files changed, 50 insertions(+), 44 deletions(-) diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/chart-template.service.ts b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/chart-template.service.ts index 2ffc12c..f6d261e 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/chart-template.service.ts +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/chart-template.service.ts @@ -8,7 +8,7 @@ import { ChartTemplate } from './chart-config-manager.component'; } ) export class ChartTemplateService { - private chartTemplatesUrl = 'chart-templates'; + private chartTemplatesUrl = 'api/chart-templates'; constructor(private apiRequest: ApiRequestService) { } diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/component-property.service.ts b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/component-property.service.ts index 5904618..72f67af 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/component-property.service.ts +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/component-property.service.ts @@ -7,7 +7,7 @@ import { ComponentProperty } from './chart-config-manager.component'; providedIn: 'root' }) export class ComponentPropertyService { - private componentPropertiesUrl = 'component-properties'; + private componentPropertiesUrl = 'api/component-properties'; constructor(private apiRequest: ApiRequestService) { } diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/dynamic-field.service.ts b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/dynamic-field.service.ts index ae6cbfe..d48bc06 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/dynamic-field.service.ts +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/dynamic-field.service.ts @@ -7,7 +7,7 @@ import { DynamicField } from './chart-config-manager.component'; providedIn: 'root' }) export class DynamicFieldService { - private dynamicFieldsUrl = 'dynamic-fields'; + private dynamicFieldsUrl = 'api/dynamic-fields'; constructor(private apiRequest: ApiRequestService) { } diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/ui-component.service.ts b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/ui-component.service.ts index 9e0ec09..86afa27 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/ui-component.service.ts +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-config/ui-component.service.ts @@ -7,7 +7,7 @@ import { UiComponent } from './chart-config-manager.component'; providedIn: 'root' }) export class UiComponentService { - private uiComponentsUrl = 'ui-components'; + private uiComponentsUrl = 'api/ui-components'; constructor(private apiRequest: ApiRequestService) { } diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/chart-type-manager.component.ts b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/chart-type-manager.component.ts index 889cd70..3640074 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/chart-type-manager.component.ts +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/chart-type-manager.component.ts @@ -93,42 +93,6 @@ export class ChartTypeManagerComponent implements OnInit { return ''; } - deleteChartType(id: number): void { - if (!confirm('Are you sure you want to delete this chart type?')) { - return; - } - - this.chartTypeLoadingState = ClrLoadingState.LOADING; - this.chartTypeService.deleteChartType(id).subscribe({ - next: () => { - this.chartTypes = this.chartTypes.filter(ct => ct.id !== id); - this.showSuccess('Chart type deleted successfully'); - this.chartTypeLoadingState = ClrLoadingState.SUCCESS; - }, - error: (error) => { - console.error('Error deleting chart type:', error); - this.showError('Error deleting chart type: ' + (error.error?.message || error.message || 'Unknown error')); - this.chartTypeLoadingState = ClrLoadingState.ERROR; - } - }); - } -} - // Handle ISO string within object - if (date.date) { - return date.date; - } - - // Handle other object formats - try { - return new Date(date).toISOString(); - } catch { - return ''; - } - } - - return ''; - } - deleteChartType(id: number): void { if (!confirm('Are you sure you want to delete this chart type?')) { return; diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.html b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.html index 3ec1527..1d854ee 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.html +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.html @@ -137,11 +137,11 @@
- {{ chartType.createdAt | date:'medium' }} + {{ chartType.createdAt ? (chartType.createdAt | date:'medium') : 'N/A' }}
- {{ chartType.updatedAt | date:'medium' }} + {{ chartType.updatedAt ? (chartType.updatedAt | date:'medium') : 'N/A' }}
diff --git a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.ts b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.ts index 6f543ac..fd8846c 100644 --- a/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.ts +++ b/frontend/angular-clarity-master/src/app/modules/main/builder/dashboardnew/chart-type-manager/edit-chart-type.component.ts @@ -52,7 +52,12 @@ export class EditChartTypeComponent implements OnInit { this.loadingState = ClrLoadingState.LOADING; this.chartTypeService.getChartTypeById(id).subscribe({ next: (data) => { - this.chartType = data; + // Process the data to ensure dates are properly formatted + this.chartType = { + ...data, + createdAt: this.formatDate(data.createdAt), + updatedAt: this.formatDate(data.updatedAt) + }; this.loadingState = ClrLoadingState.SUCCESS; }, error: (error) => { @@ -63,6 +68,38 @@ export class EditChartTypeComponent implements OnInit { }); } + // Format date to handle both string and object formats + private formatDate(date: any): string { + if (!date) return ''; + + // If it's already a string, return as is + if (typeof date === 'string') { + return date; + } + + // If it's an object, try to convert to string + if (typeof date === 'object') { + // Handle various date object formats + if (date instanceof Date) { + return date.toISOString(); + } + + // Handle ISO string within object + if (date.date) { + return date.date; + } + + // Handle other object formats + try { + return new Date(date).toISOString(); + } catch { + return ''; + } + } + + return ''; + } + updateChartType(): void { if (!this.chartType || !this.chartType.name) { this.showError('Chart type name is required'); @@ -72,7 +109,12 @@ export class EditChartTypeComponent implements OnInit { this.loadingState = ClrLoadingState.LOADING; this.chartTypeService.updateChartType(this.chartType.id, this.chartType).subscribe({ next: (data) => { - this.chartType = data; + // Process the data to ensure dates are properly formatted + this.chartType = { + ...data, + createdAt: this.formatDate(data.createdAt), + updatedAt: this.formatDate(data.updatedAt) + }; this.showSuccess('Chart type updated successfully'); this.loadingState = ClrLoadingState.SUCCESS; // Redirect to chart types list after a short delay