add csc pages

This commit is contained in:
Tykayn 2025-08-07 16:42:16 +02:00 committed by tykayn
parent 4ca4745c2a
commit edbda87b2b
11 changed files with 247 additions and 2 deletions

View file

@ -0,0 +1,34 @@
<div class="case-result">
<!--case result-->
<div class="title">
-7B / 72-21-02 / Booster blades stg 3 / LPC STG.3 BLADES DISLOCATION / 894773
<div class="button button-toggle chevron">v</div>
</div>
<div class="row tabs">
<div class="tab-item" (click)="selectCaseTab('information')">
<i class="ri-file-list-2-line"></i>
<div class="label">
Information
</div>
</div>
</div>
<div class="row selected-tab-content">
AIs summary : Work stoppage case for CFM56-7B engine (ESN: 894773) at MTU Zhuhai. LPC Stage 3 blade platform
dislocation detected during shop visit BSI. Maximum dislocation: 1.22mm axial, 0.63mm radial. Customer requests
evaluation, acceptance criteria, or DICA for further action. No corresponding limits in AMM 72-00-00 BSI inspection
chapter.
</div>
<div class="row case-more-infos">
<div class="info-item">
<span class="label">Date :</span>
<span class="value">2023-12-12</span>
</div>
<div class="info-item">
<span class="label">Chrono ID :</span>
<span class="value">CSC/CFM/2023-10/00446-A</span>
</div>
</div>
</div>

View file

@ -0,0 +1,23 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { CaseResult } from './case-result';
describe('CaseResult', () => {
let component: CaseResult;
let fixture: ComponentFixture<CaseResult>;
beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [CaseResult]
})
.compileComponents();
fixture = TestBed.createComponent(CaseResult);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View file

@ -0,0 +1,17 @@
import { Component } from '@angular/core';
@Component({
selector: 'app-case-result',
imports: [],
templateUrl: './case-result.html',
styleUrl: './case-result.scss'
})
export class CaseResult {
public activeTab:string = ''
selectCaseTab(activeTab: string) {
console.log('todo')
this.activeTab = activeTab
}
}

View file

@ -1 +1,96 @@
<p>similar-cases works!</p>
<div class="similar-cases">
<header>
<div class="row">
<button class="button">
toggle
</button>
<div class="title-box">
Work stoppage case for CFM56-7B engine (ESN: 802379)...
</div>
<div class="buttons">
<button class="button">
new question
</button>
<button class="button">
Search similar cases
</button>
</div>
</div>
<div class="row filters-row">
<lib-filters-group></lib-filters-group>
</div>
</header>
<main>
<div class="row bot-talks">
<lib-bot-talks></lib-bot-talks>
</div>
<div class="tabs-container">
<div class="tabs-selector">
<div class="columns">
<div class="column">
<div class="tab-button is-active">
Similar cases
</div>
</div>
<div class="column">
<div class="tab-button is-active">
Technical manual
</div>
</div>
</div>
</div>
<div class="tabs-body">
@if (displayedTab == 'similar-cases') {
<div id="similar_cases_tab">
<div class="top-bar">
<input type="text" class="search-input" [(ngModel)]="searchInput">
<div class="chips-container">
<button class="button chips">
DICA
</button>
</div>
</div>
<div class="row">
<div class="columns">
<div class="found-infos column">
24 cases found, 3 cases suggested by AI
</div>
<div class="toggle-ai-suggestion column">
AI suggestions
<!-- applied-->
<!-- disabled-->
</div>
</div>
</div>
<div class="row cases-results">
<!-- boucle des résultats-->
<app-case-result></app-case-result>
</div>
</div>
} @else {
<div id="technical_manuals_tab">
<lib-bot-talks></lib-bot-talks>
</div>
}
</div>
</div>
</main>
<footer>
<app-bottom-navigation></app-bottom-navigation>
</footer>
</div>

View file

@ -0,0 +1,3 @@
.toggle-ai-suggestion{
color: #FEAD02;
}

View file

@ -1,11 +1,24 @@
import { Component } from '@angular/core';
import {FiltersGroup} from '../../../../../my-workspace/projects/my-lib/filters/filters-group/filters-group';
import {BotTalks} from '../../../../../my-workspace/projects/my-lib/chatbot/bot-talks/bot-talks';
import {FormsModule} from '@angular/forms';
import {CaseResult} from './case-result/case-result';
import {BottomNavigation} from '../../shared/navigation/bottom-navigation/bottom-navigation';
@Component({
selector: 'app-similar-cases',
imports: [],
imports: [
FiltersGroup,
BotTalks,
FormsModule,
CaseResult,
BottomNavigation
],
templateUrl: './similar-cases.html',
styleUrl: './similar-cases.scss'
})
export class SimilarCases {
public searchInput: string = '';
public displayedTab: 'similar-cases' | 'technical-manual' = 'similar-cases';
}

View file

@ -0,0 +1,20 @@
<div class="bot-talks-container">
<!-- avatar-->
<div class="bubble">
{{message}}
<br>
@for (link of links; track link.title) {
<span class="link-title">
{{link.title}}
</span>
<span class="taget">
<a href="{{link.url}}">
{{link.label}}
<!-- copy button-->
</a>
</span>
}
</div>
</div>

View file

@ -0,0 +1,23 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { BotTalks } from './bot-talks';
describe('BotTalks', () => {
let component: BotTalks;
let fixture: ComponentFixture<BotTalks>;
beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [BotTalks]
})
.compileComponents();
fixture = TestBed.createComponent(BotTalks);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View file

@ -0,0 +1,17 @@
import {Component} from '@angular/core';
@Component({
selector: 'lib-bot-talks',
imports: [],
templateUrl: './bot-talks.html',
styleUrl: './bot-talks.css'
})
export class BotTalks {
public message = 'I found useful document(s) which can help to answer to this question ! Check if these documents are applied to similar cases';
public links: any = [
{
title: 'Refusal notice :',
label: 'DMP-00051341: Avis de refus',
url: 'https://www.cipherbliss.com/fake-link',
}]
}