Skip to content

Commit 09dd871

Browse files
committed
change design of achievements, additional, team on half & remove old params in project
1 parent b6623a3 commit 09dd871

40 files changed

Lines changed: 407 additions & 279 deletions

projects/core/src/consts/navProjectItems.ts

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,26 @@ import { EditStep } from "@office/projects/edit/services/project-step.service";
99
export const navItems = [
1010
{
1111
step: "main" as EditStep, // Идентификатор шага
12-
src: "/assets/images/projects/edit/main.svg", // Путь к иконке
1312
label: "Основные данные", // Отображаемый текст
1413
},
1514
{
1615
step: "contacts" as EditStep,
17-
src: "/assets/images/projects/edit/contacts.svg",
18-
label: "Контакты и ссылки",
16+
label: "Партнеры и ресурсы",
1917
},
2018
{
2119
step: "achievements" as EditStep,
22-
src: "/assets/images/projects/edit/achievements.svg",
2320
label: "Достижения",
2421
},
2522
{
2623
step: "vacancies" as EditStep,
27-
src: "/assets/images/projects/edit/vacancies.svg",
2824
label: "Вакансии",
2925
},
3026
{
3127
step: "team" as EditStep,
32-
src: "/assets/images/projects/edit/team.svg",
3328
label: "Команда",
3429
},
3530
{
3631
step: "additional" as EditStep,
37-
src: "/assets/images/projects/edit/additional.svg",
38-
label: "Доп. сведения",
32+
label: "Данные для конкурсов",
3933
},
4034
];

projects/social_platform/src/app/office/projects/edit/edit.component.html

Lines changed: 30 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,37 @@
11
<!-- @format -->
22
<div>
33
<div class="project__top">
4-
<p class="project__title">Редактировать проект</p>
5-
<a class="project__back" [routerLink]="'/office/projects/' + profileId">
6-
<app-button size="big" [color]="'grey'" customTypographyClass="text-body-12"
7-
>Назад</app-button
4+
<div class="project__back" [routerLink]="'/office/projects/' + profileId">
5+
<i appIcon icon="left-arrow" appSquare="24"></i>
6+
<h1 class="project__title">Редактировать проект</h1>
7+
</div>
8+
<div class="project__save">
9+
<app-button
10+
size="medium"
11+
customTypographyClass="text-body-12"
12+
color="red"
13+
(click)="deleteProject()"
14+
>
15+
Удалить проект
16+
</app-button>
17+
<app-button
18+
size="medium"
19+
customTypographyClass="text-body-12"
20+
appearance="outline"
21+
[loader]="projFormIsSubmittingAsDraft"
22+
(click)="saveProjectAsDraft()"
823
>
9-
</a>
24+
Сохранить черновик
25+
</app-button>
26+
<app-button
27+
size="medium"
28+
customTypographyClass="text-body-12"
29+
[loader]="projFormIsSubmittingAsPublished"
30+
(click)="saveProjectAsPublished()"
31+
>
32+
{{ isCompetitive ? "Отправить заявку" : "Сохранить" }}
33+
</app-button>
34+
</div>
1035
</div>
1136
<main class="project">
1237
<form [formGroup]="projectForm" class="project__form">
@@ -53,28 +78,6 @@
5378
></app-project-additional-step>
5479
}
5580
</div>
56-
<div class="project__save">
57-
<app-button customTypographyClass="text-body-12" color="red" (click)="deleteProject()">
58-
Удалить проект
59-
</app-button>
60-
<app-button
61-
size="medium"
62-
customTypographyClass="text-body-12"
63-
color="grey"
64-
[loader]="projFormIsSubmittingAsDraft"
65-
(click)="saveProjectAsDraft()"
66-
>
67-
Сохранить черновик
68-
</app-button>
69-
<app-button
70-
size="medium"
71-
customTypographyClass="text-body-12"
72-
[loader]="projFormIsSubmittingAsPublished"
73-
(click)="saveProjectAsPublished()"
74-
>
75-
{{ isCompetitive ? "Отправить заявку" : "Сохранить" }}
76-
</app-button>
77-
</div>
7881
</form>
7982
<app-modal
8083
[open]="

projects/social_platform/src/app/office/projects/edit/edit.component.scss

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,21 @@
77
position: relative;
88
height: 100%;
99
min-height: 800px;
10-
padding: 24px;
10+
padding: 100px 24px;
1111
background-color: var(--white);
1212
border-radius: var(--rounded-md);
1313

1414
&__top {
15+
position: fixed;
16+
top: 5%;
17+
left: 20%;
18+
z-index: 10;
1519
display: flex;
1620
align-items: center;
1721
justify-content: space-between;
18-
margin-top: 17px;
19-
margin-bottom: 18px;
22+
width: 72%;
23+
background-color: var(--white);
24+
border-radius: var(--rounded-xl);
2025
}
2126

2227
&__title {
@@ -30,23 +35,16 @@
3035
}
3136

3237
&__back {
33-
width: 20%;
38+
display: flex;
39+
gap: 10px;
40+
align-items: center;
41+
cursor: pointer;
3442
}
3543

3644
&__form {
3745
display: flex;
3846
flex-direction: column;
39-
padding: 15px;
4047
color: var(--black);
41-
background-color: var(--white);
42-
border: 1px solid var(--grey-button);
43-
border-radius: var(--rounded-md);
44-
45-
@include responsive.apply-desktop {
46-
flex-direction: column;
47-
align-items: flex-start;
48-
padding: 24px;
49-
}
5048
}
5149

5250
&__inner {
@@ -113,13 +111,8 @@
113111

114112
&__save {
115113
@include responsive.apply-desktop {
116-
position: absolute;
117-
right: 50px;
118-
bottom: 48px;
119114
display: flex;
120115
gap: 10px;
121-
justify-content: flex-end;
122-
order: unset;
123116
}
124117
}
125118

projects/social_platform/src/app/office/projects/edit/services/project-achievements.service.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -56,23 +56,23 @@ export class ProjectAchievementsService {
5656

5757
// Считываем вводимые данные
5858
const achievementsName = projectForm.get("achievementsName")?.value;
59-
const achievementsPrize = projectForm.get("achievementsPrize")?.value;
59+
const achievementsDate = projectForm.get("achievementsDate")?.value;
6060

6161
// Проверяем, что поля не пустые
6262
if (
6363
!achievementsName ||
64-
!achievementsPrize ||
64+
!achievementsDate ||
6565
achievementsName.trim().length === 0 ||
66-
achievementsPrize.trim().length === 0
66+
achievementsDate.trim().length === 0
6767
) {
6868
return; // Выходим из функции, если поля пустые
6969
}
7070

7171
// Создаем FormGroup для нового достижения
7272
const achievementItem = this.fb.group({
7373
id: achievementsFormArray.length,
74-
title: achievementsName.trim(),
75-
status: achievementsPrize.trim(),
74+
achievementsName: achievementsName.trim(),
75+
achievementsDate: achievementsDate.trim(),
7676
});
7777

7878
// Проверяем, редактируется ли существующее достижение
@@ -97,8 +97,8 @@ export class ProjectAchievementsService {
9797
projectForm.get("achievementsName")?.reset();
9898
projectForm.get("achievementsName")?.setValue("");
9999

100-
projectForm.get("achievementsPrize")?.reset();
101-
projectForm.get("achievementsPrize")?.setValue("");
100+
projectForm.get("achievementsDate")?.reset();
101+
projectForm.get("achievementsDate")?.setValue("");
102102
}
103103

104104
/**
@@ -120,8 +120,8 @@ export class ProjectAchievementsService {
120120

121121
// Заполняем поля формы проекта для редактирования
122122
projectForm.patchValue({
123-
achievementsName: source?.title || "",
124-
achievementsPrize: source?.status || "",
123+
achievementsName: source?.achievementsName || "",
124+
achievementsDate: source?.achievementsDate || "",
125125
});
126126
// Устанавливаем текущий индекс редактирования в сервисе
127127
this.projectFormService.editIndex.set(index);

projects/social_platform/src/app/office/projects/edit/services/project-form.service.ts

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ export class ProjectFormService {
4343
imageAddress: [""],
4444
name: ["", [Validators.required]],
4545
region: ["", [Validators.required]],
46-
step: [null, [Validators.required]],
4746
implementationDeadline: [null],
4847
trl: [null],
4948
links: this.fb.array([]),
@@ -52,13 +51,13 @@ export class ProjectFormService {
5251
description: ["", [Validators.required]],
5352
presentationAddress: ["", [Validators.required]],
5453
coverImageAddress: ["", [Validators.required]],
55-
actuality: ["", [Validators.max(1000)]],
56-
targetAudience: ["", [Validators.required, Validators.max(500)]],
57-
problem: ["", [Validators.required, Validators.max(1000)]],
54+
actuality: ["", [Validators.maxLength(1000)]],
55+
targetAudience: ["", [Validators.required, Validators.maxLength(500)]],
56+
problem: ["", [Validators.required, Validators.maxLength(1000)]],
5857
partnerProgramId: [null],
5958
achievements: this.fb.array([]),
6059
achievementsName: [""],
61-
achievementsPrize: [""],
60+
achievementsDate: [""],
6261
draft: [null],
6362
});
6463

@@ -99,7 +98,6 @@ export class ProjectFormService {
9998
imageAddress: project.imageAddress,
10099
name: project.name,
101100
region: project.region,
102-
step: project.step,
103101
industryId: project.industry,
104102
description: project.description,
105103
implementationDeadline: project.implementationDeadline ?? null,
@@ -146,17 +144,15 @@ export class ProjectFormService {
146144
private populateAchievementsFormArray(achievements: any[]): void {
147145
const achievementsFormArray = this.projectForm.get("achievements") as FormArray;
148146

149-
// Очищаем существующие контролы
150147
while (achievementsFormArray.length !== 0) {
151148
achievementsFormArray.removeAt(0);
152149
}
153150

154-
// Добавляем новые контролы
155151
achievements.forEach((achievement, index) => {
156152
const achievementGroup = this.fb.group({
157153
id: achievement.id ?? index,
158-
title: achievement.title || "",
159-
status: achievement.status || "",
154+
achievementsName: [achievement.achievementsName || "", Validators.required],
155+
achievementsDate: [achievement.achievementsDate || "", Validators.required],
160156
});
161157
achievementsFormArray.push(achievementGroup);
162158
});
@@ -207,10 +203,6 @@ export class ProjectFormService {
207203
return this.projectForm.get("industryId");
208204
}
209205

210-
public get step() {
211-
return this.projectForm.get("step");
212-
}
213-
214206
public get description() {
215207
return this.projectForm.get("description");
216208
}

0 commit comments

Comments
 (0)