data lake

This commit is contained in:
Gaurav Kumar
2025-11-05 17:40:43 +05:30
parent 53424f0a7c
commit 534bc307a7
3 changed files with 62 additions and 15 deletions

View File

@@ -434,8 +434,25 @@
</select> </select>
</div> </div>
<!-- Add ref_datalake_id dropdown --> <!-- Data Lake Type -->
<div class="clr-col-sm-12"> <div class="clr-col-sm-12">
<label>Data Lake Type</label>
<select class="clr-input" [(ngModel)]="rowSelected.datalake_type" name="datalake_type">
<option *ngFor="let type of dataLakeTypes" [value]="type.value">{{ type.label }}</option>
</select>
</div>
<!-- Blending Data Lakes (only show when blending type is selected) -->
<div class="clr-col-sm-12" *ngIf="rowSelected.datalake_type === 'blending'">
<label>Blending Data Lakes</label>
<select class="clr-input" [(ngModel)]="rowSelected.blending_lakeids" name="blending_lakeids" multiple size="4">
<option *ngFor="let dataLake of dataLakeList" [value]="dataLake.id">{{ dataLake.name }}</option>
</select>
<small class="clr-subtext">Hold Ctrl/Cmd to select multiple data lakes</small>
</div>
<!-- Reference Data Lake (only show when normal type is selected) -->
<div class="clr-col-sm-12" *ngIf="rowSelected.datalake_type === 'normal'">
<label>Reference Data Lake</label> <label>Reference Data Lake</label>
<select class="clr-input" [(ngModel)]="rowSelected.ref_datalake_id" name="ref_datalake_id"> <select class="clr-input" [(ngModel)]="rowSelected.ref_datalake_id" name="ref_datalake_id">
<option value="">Select Data Lake</option> <option value="">Select Data Lake</option>
@@ -563,8 +580,25 @@
</select> </select>
</div> </div>
<!-- Add ref_datalake_id dropdown --> <!-- Data Lake Type -->
<div class="clr-col-sm-12"> <div class="clr-col-sm-12">
<label>Data Lake Type</label>
<select formControlName="datalake_type">
<option *ngFor="let type of dataLakeTypes" [value]="type.value">{{ type.label }}</option>
</select>
</div>
<!-- Blending Data Lakes (only show when blending type is selected) -->
<div class="clr-col-sm-12" *ngIf="entryForm.get('datalake_type')?.value === 'blending'">
<label>Blending Data Lakes</label>
<select formControlName="blending_lakeids" multiple size="4">
<option *ngFor="let dataLake of dataLakeList" [value]="dataLake.id">{{ dataLake.name }}</option>
</select>
<small class="clr-subtext">Hold Ctrl/Cmd to select multiple data lakes</small>
</div>
<!-- Reference Data Lake (only show when normal type is selected) -->
<div class="clr-col-sm-12" *ngIf="entryForm.get('datalake_type')?.value === 'normal'">
<label>Reference Data Lake</label> <label>Reference Data Lake</label>
<select formControlName="ref_datalake_id"> <select formControlName="ref_datalake_id">
<option value="">Select Data Lake</option> <option value="">Select Data Lake</option>

View File

@@ -384,3 +384,16 @@
border: 1px solid #ccc; border: 1px solid #ccc;
border-radius: 4px; border-radius: 4px;
} }
/* Data Lake Type Styles */
.clr-subtext {
display: block;
margin-top: 5px;
font-size: 12px;
color: #666;
}
[data-multiple] {
height: auto !important;
min-height: 80px;
}

View File

@@ -66,6 +66,12 @@ export class Data_lakeComponent implements OnInit {
dataLakeList: any[] = []; dataLakeList: any[] = [];
selectedDataLake: any = null; selectedDataLake: any = null;
// New properties for data lake type
dataLakeTypes = [
{ value: 'normal', label: 'Normal' },
{ value: 'blending', label: 'Blending' }
];
// Calculated field properties // Calculated field properties
calculatedFieldModalOpen = false; calculatedFieldModalOpen = false;
availableKeys: string[] = []; availableKeys: string[] = [];
@@ -124,23 +130,18 @@ export class Data_lakeComponent implements OnInit {
this.getDataLakeList(); // Fetch Data Lake list for reference dropdown this.getDataLakeList(); // Fetch Data Lake list for reference dropdown
this.entryForm = this._fb.group({ this.entryForm = this._fb.group({
name: [null], name: [null],
url: [null], url: [null],
schedule: [null], schedule: [null],
cron_job: [null], cron_job: [null],
json: [null], json: [null],
url_endpoint: [null], url_endpoint: [null],
batch_volume: [null], batch_volume: [null],
sure_connect_id: [null],
ref_datalake_id: [null],
datalake_type: ['normal'], // Default to normal
blending_lakeids: [[]] // Array for multiple selections
});
sure_connect_id: [null], // Add SureConnect field
ref_datalake_id: [null], // Add Data Lake reference field
}); // component_button200
// form code start // form code start
this.extensionService.getJsonObjectsByFormCodeList(this.formcode).subscribe(data => { this.extensionService.getJsonObjectsByFormCodeList(this.formcode).subscribe(data => {
console.log(data); console.log(data);
@@ -240,8 +241,7 @@ export class Data_lakeComponent implements OnInit {
// Fetch Data Lake list for reference dropdown // Fetch Data Lake list for reference dropdown
getDataLakeList() { getDataLakeList() {
this.mainService.getAll().subscribe((data: any[]) => { this.mainService.getAll().subscribe((data: any[]) => {
// Filter out the current item to avoid self-reference this.dataLakeList = data;
this.dataLakeList = data.filter(item => item.id !== (this.rowSelected?.id || 0));
console.log('Data Lake List:', this.dataLakeList); console.log('Data Lake List:', this.dataLakeList);
}, (error) => { }, (error) => {
console.log('Error fetching Data Lake list:', error); console.log('Error fetching Data Lake list:', error);