Skip to content

Commit

Permalink
save
Browse files Browse the repository at this point in the history
  • Loading branch information
PavelZubkov committed May 28, 2023
1 parent 1f6bb1d commit 133a841
Show file tree
Hide file tree
Showing 15 changed files with 152 additions and 160 deletions.
31 changes: 15 additions & 16 deletions cabinet/admin/admin.view.tree
Original file line number Diff line number Diff line change
@@ -1,63 +1,62 @@
$hyoo_intern_cabinet_admin $hyoo_intern_cabinet
profile_title \Администратор
campaign $hyoo_intern_campaign
- campaign $hyoo_intern_campaign
companies => companies
managers => managers
curators => curators
mentors => mentors
candidates_on_review => candidates_on_review
spreads *
profile <= Profile
campaign <= Campaign $hyoo_intern_campaign_card
- campaign <= Campaign $hyoo_intern_campaign_card
campaign <= campaign
curators <= Curators $hyoo_intern_catalog_curators
- curators <= Curators $hyoo_intern_catalog_curators
entity_links <= curators
menu_foot /
<= Add_curator $mol_button_minor
sub / <= Add_icon $mol_icon_plus
click? <=> add_curator? null
<= Add_curator_person $mol_string
value? <=> add_curator_person_id? \
resumes <= Resumes $hyoo_intern_catalog_interns
- resumes <= Resumes $hyoo_intern_catalog_interns
menu_title \Заявки на стажировку (резюме)
entity_links <= candidates_on_review
candidates <= Candidates $hyoo_intern_catalog_interns
- candidates <= Candidates $hyoo_intern_catalog_interns
menu_title \Кандидаты
requested_invitations <= Requested_invitations $hyoo_intern_catalog_vacancies
- requested_invitations <= Requested_invitations $hyoo_intern_catalog_vacancies
menu_title \Потребность в стажерах (приглашения)
- (тз) Модуль «Потребность в стажерах» - должен позволять видеть заполненные заявки на стажеров от кадров, редактировать их,
подтверждать публикацию в разделе «Приглашения».
- Кураторы просматривают статистику по заявкам и подтверждают публикацию заявок в разделе «Приглашения». Кураторы имеют возможность редактировать заявки.
- Заявки на стажеров отражаются в разделе «Приглашения», стажеры откликаются на них с помощью прохождения заданий.
- Результаты откликов на заявки отражаются в личных кабинетах Кадров, а также у кураторов стажировки в административном блоке.
- - мб оставить "подтвержденные" и "неподтвержденные" в одном разделе, сделав фильтр?
companies <= Companies $hyoo_intern_catalog_companies
- companies <= Companies $hyoo_intern_catalog_companies
entity_links <= companies
managers <= Managers $hyoo_intern_catalog_managers
- managers <= Managers $hyoo_intern_catalog_managers
entity_links <= managers
mentors <= Mentors $hyoo_intern_catalog_mentors
- mentors <= Mentors $hyoo_intern_catalog_mentors
entity_links <= mentors
menu_foot /
<= Add_mentor $mol_button_minor
sub / <= Add_icon $mol_icon_plus
click? <=> add_mentor? null
<= Add_mentor_person $mol_string
value? <=> add_mentor_person_id? \
vacancies <= Vacancies $hyoo_intern_catalog_vacancies
statistics <= Statistics $mol_page
- vacancies <= Vacancies $hyoo_intern_catalog_vacancies
- statistics <= Statistics $mol_page
title \Статистика
- (тз) Модуль «Статистика» – должен позволять автоматически сводить статистику по заявкам кандидатов, данным стажеров и заявкам на
стажеров, давать прогнозирование статистических данных с помощью искусственного интеллекта.
Статистика по заявкам кандидатов: 1. Количество откликов: всего, релевантных, нерелевантных 2. Возраст 3. Города 4. Вузы5. Образование 6. Статистика по опыту работы (необходимо продумать механику) 7. Направления стажировки 8. Каналы привлечения, по которым пришли кандидаты
Статистика по заявкам на стажеров: 1. Количество заявок на стажеров в рамках комплексов Правительства Москвы.2. Количество заявок от органов власти и учреждений 3. Статистика по образованию 4. Статистика по задачам стажеров
timesheet <= Timesheet $mol_page
- timesheet <= Timesheet $mol_page
title \Табель рабочего времени
- (тз, доп) Модуль «Табель» – должен позволять видеть и выгружать табель учета рабочего времени стажеров, видеть статистику по количеству подтверждений табелей наставниками и кадрами.
- (тз) Модуль «Школа наставников» - должен позволять видеть список наставников, которые прошли обучение в Школе наставников, а также
видеть их прогресс обучения, статус получения сертификата, повторное прохождение и рейтинг по оценкам стажеров.
- (тз, доп) Модуль «Заявления стажеров» – должен позволять отслеживать статус заявления на отпуск и увольнения стажера, автоматически интегрировать данные о согласованных заявлениях в табель стажеров
- (тз, доп) Модуль «Рассылки» – должен позволять делать автоматические рассылки по почтам стажеров, наставникам и кадровым специалистам, а также внутри сайта направлять уведомления.
career_school <= Career_school $mol_page
- career_school <= Career_school $mol_page
- (тз) Модуль «Карьерная школа» – должен позволять переводить на платформу с онлайн-треком Карьерной школы Правительства Москвы и telegram-канал.
- Этап 2. Релевантные кандидаты в течении недели просматривают вебинары для знакомства со структурой Правительства Москвы, а также проходят образовательный онлайн-трек с конспектами, тестированиями и видеоэкскурсиями.
title \Карьерная школа
Expand All @@ -66,7 +65,7 @@ $hyoo_intern_cabinet_admin $hyoo_intern_cabinet
value <= career_school_text \
\[Ссылка 1](https://talent.mos.ru)
\[Ссылка 2](https://talent.mos.ru)
tests <= Tests $mol_page
- tests <= Tests $mol_page
- (тз) Модуль «Тестирование» – должен позволять переводить на платформу для прохождения тестирования и сохранять результаты пройденного тестирования.
- Этап 3. Тестирование Релевантные кандидаты проходят тестирование по русскому языку, анализу информации, компьютерной грамотности.
title \Этап тестирования
Expand All @@ -81,7 +80,7 @@ $hyoo_intern_cabinet_admin $hyoo_intern_cabinet
\[Прохождение трека Word](https://talent.mos.ru)
\[Прохождение трека Excel](https://talent.mos.ru)
\[Прохождение трека PowerPoint](https://talent.mos.ru)
championship <= Championship $mol_page
- championship <= Championship $mol_page
- Этап 4. Кейс-чемпионат 400 участников, прошедших отбор по итогам тестирования, делятся на команды и решают кейсы – реальные задачи от организаций Правительства Москвы, презентуя решения перед членами жюри.
title \Кейс-чемпионат
body /
Expand Down
32 changes: 16 additions & 16 deletions cabinet/admin/admin.view.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@ namespace $.$$ {

export class $hyoo_intern_cabinet_admin extends $.$hyoo_intern_cabinet_admin {

add_curator() {
const person_id = this.add_curator_person_id()
if (!$mol_int62_string_ensure( person_id )){
$mol_fail( new $mol_data_error('person_id isnt int64_string') )
}
const curator = this.campaign().curator_add( $mol_int62_string_ensure( person_id )! )
return curator
}
// add_curator() {
// const person_id = this.add_curator_person_id()
// if (!$mol_int62_string_ensure( person_id )){
// $mol_fail( new $mol_data_error('person_id isnt int64_string') )
// }
// const curator = this.campaign().curator_add( $mol_int62_string_ensure( person_id )! )
// return curator
// }

add_mentor() {
const person_id = this.add_mentor_person_id()
if (!$mol_int62_string_ensure( person_id )){
$mol_fail( new $mol_data_error('person_id isnt int64_string') )
}
const mentor = this.campaign().curator_add( $mol_int62_string_ensure( person_id )! )
return mentor
}
// add_mentor() {
// const person_id = this.add_mentor_person_id()
// if (!$mol_int62_string_ensure( person_id )){
// $mol_fail( new $mol_data_error('person_id isnt int64_string') )
// }
// const mentor = this.campaign().curator_add( $mol_int62_string_ensure( person_id )! )
// return mentor
// }

}

Expand Down
13 changes: 0 additions & 13 deletions cabinet/cabinet.view.css.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,19 +31,6 @@ namespace $.$$ {
gap: $mol_gap.block,
},
},

Label: {
padding: $mol_gap.block,
},

Logo: {
width: '3rem',
height: '3rem',
},

Descr: {
color: $mol_theme.shade,
},

} )

Expand Down
31 changes: 24 additions & 7 deletions cabinet/cabinet.view.tree
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
$hyoo_intern_cabinet $mol_book2_catalog
user $hyoo_intern_person
campaign_current => campaign_current
campaign $hyoo_intern_campaign
yard $hyoo_sync_client
Placeholder null
role* null
menu_tools /
<= User $mol_link
uri <= uri*person
arg * section \person
sub / <= User_icon $mol_icon_account
hint \Учетная запись
Menu_logo $hyoo_intern_person_avatar
Expand All @@ -21,11 +20,29 @@ $hyoo_intern_cabinet $mol_book2_catalog
<= Online $hyoo_sync_online
yard <= yard
param \section
Menu_link*0 $mol_link
uri <= uri* \
sub <= menu_link_content*
Person_page $hyoo_intern_person_page
person <= user
Confirm_page $hyoo_intern_confirm
- Confirm_page $hyoo_intern_confirm
campaign <= campaign_current
yard <= yard
Staff_request_page $mol_page
title \Заявка сотрудника
body /
<= Staff_request_list $mol_list rows /
<= Person_form $hyoo_intern_person_form
person <= user
<= Role_select_field $mol_form_field
name \Выберите вашу роль
bid \*
control <= Role_select_control $mol_switch
value? <=> staff_request_role? \
options *
curator \Куратор
manager \Кадровый специалист
mentor \Наставник
<= Staff_link_field $mol_form_field
name \Передайте эту ссылку администратору, вы увидите личный кабинет когда администратор подтвердит заявку
control <= Staff_link_copy $mol_button_copy
enabled <= staff_link_copy_enabled false
text <= staff_request_link \
title \Копировать ссылку
34 changes: 25 additions & 9 deletions cabinet/cabinet.view.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,31 +2,47 @@ namespace $.$$ {

export class $hyoo_intern_cabinet extends $.$hyoo_intern_cabinet {

@ $mol_mem
campaign() {
return this.user().campaign_current()!
}

@ $mol_mem
Spread() {
if (this.campaign().person_wants_to_staff( this.user() )) return this.Staff_request_page()

if ( !this.spread() ) this.spread( Object.keys(this.spreads())[0] )

return {
person: this.Person_page(),
confirm: this.Confirm_page(),
// confirm: this.Confirm_page(),
...this.spreads(),
}[ this.spread() ]! as any
}

uri( spread: string ) {
return this.$.$mol_state_arg.make_link( this.arg( spread ) )
}[ this.spread() ]!
}

Menu_logo() {
return this.campaign_current()?.image_node()?.list()?.length ?? 0 > 0 ? super.Menu_logo() : null as any
return this.campaign()?.image_node()?.list()?.length ?? 0 > 0 ? super.Menu_logo() : null as any
}

@ $mol_mem
campaign_image_node() {
return this.campaign_current()?.image_node() ?? new $hyoo_crowd_blob
return this.campaign()?.image_node() ?? new $hyoo_crowd_blob
}

campaign_name() {
return this.campaign_current()?.name() || super.campaign_name()
return this.campaign()?.name() || super.campaign_name()
}

staff_request_role( next?: string ) {
return this.$.$mol_state_local.value(`${this}.staff_request_role()`, next) ?? super.staff_request_role()
}

staff_link_copy_enabled() {
return !!this.staff_request_role() && !!this.user().name() && !!this.user().name_family()
}

staff_request_link() {
return this.$.$mol_state_arg.make_link({ section: 'staff_approve', person: this.user().id(), campaign: this.campaign().id(), role: this.staff_request_role() })
}

}
Expand Down
24 changes: 1 addition & 23 deletions cabinet/norole/norole.view.css.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,8 @@ namespace $.$$ {

$mol_style_define( $.$hyoo_intern_cabinet_norole, {

Info: $hyoo_intern_cabinet_page_style,
Info_page: $hyoo_intern_cabinet_page_style,
Resume_page: $hyoo_intern_cabinet_page_style,
Sign: $hyoo_intern_cabinet_page_style,

Resume_link: {
width: '20rem',
flex: {
grow: 0,
},
alignSelf: 'center',
justifyContent: 'center',
},

Send_resume: {
width: '20rem',
flex: {
grow: 0,
},
alignSelf: 'center',
justifyContent: 'center',
margin: {
bottom: $mol_gap.block,
},
},

} )

Expand Down
46 changes: 12 additions & 34 deletions cabinet/norole/norole.view.tree
Original file line number Diff line number Diff line change
@@ -1,46 +1,24 @@
$hyoo_intern_cabinet_norole $hyoo_intern_cabinet
campaign_join $hyoo_intern_campaign
menu_tools /
spreads *
info <= Info $mol_page
info <= Info_page $mol_page
title \Информация для кандидатов
body /
<= Info_text $mol_text
text <= info_text \a
\# Стажировка в Правительстве Москвы
\Прямо сейчас ты делаешь свой первый шаг на пути к карьере в Правительстве Москвы — участвуешь в отборе на стажировку, которая пройдет с 1 августа 2023 года по 31 января 2024 года. **Мы ждем твою заявку до 17 апреля.**
\Стать стажерами Правительства Москвы могут студенты бакалавриата или специалитета, обучающиеся на последнем курсе, магистранты и выпускники вузов, получившие первое образование с 2016 по 2022 год.
\**Чтобы начать заполнение заявки, перейди по ссылке ниже. Внимательно проверь, правильно ли введены все данные и особенно адрес электронной почты — на него в течение двух недель после подачи заявки придет информация о твоих следующих шагах.**
\Анкета — это начало нашего знакомства. Мы хотим узнать о твоем образовании, опыте работы, если он есть, увлечениях или внеучебной деятельности, о навыках, которые ты приобрел во время учебы. Обязательно заполни анкету полностью перед подачей заявки — мы не сможем увидеть изменения, внесенные после отклика.
\Желаем удачи!
<= Resume_link $mol_button_major
title \Перейти к заполнению заявки
click? <=> open_resume? null
resume_page <= Resume_page $mol_page
text <= campaign_info \
<= Actions $mol_row sub /
<= Resume_link $mol_button_major
title \Заполнить заявку
click? <=> spread*resume?
<= Im_staff $mol_button_minor
title \Я сотрудник
click? <=> staff_request? null
resume <= Resume_page $mol_page
title \Заполнить заявку
body /
<= Resume $hyoo_intern_resume_card
person <= user
<= Send_resume $mol_button_major
- (тз) Модуль «Подать заявку» – должен позволять отправлять заявку на участие в отборе на стажировку, видеть статус заявки на стажировку: отказ в прохождении на стажировку, прохождение на следующий этап отбора, прохождение на стажировку.
title \Подать заявку
click? <=> send_resume? null
- <= Send_notify $mol_paragraph
title \Заявка подана, ответное письмо будет отправлено на твою электронную почту
sign <= Sign $mol_page
title \Вход в личный кабинет
body /
<= Sign_info $mol_text
text \
\Твой аккаунт будет автоматически привязан к браузеру на этом устройстве.
\Перейти в личный кабинет:
<= Open_intern $mol_button_minor
title \Стажера
click <= role*intern
<= Open_curator $mol_button_minor
title \Куратора
click <= role*curator
<= Open_mentor $mol_button_minor
title \Наставника
click <= role*mentor
<= Open_manager $mol_button_minor
title \Специалиста отдела кадров
click <= role*manager
14 changes: 11 additions & 3 deletions cabinet/norole/norole.view.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,22 @@ namespace $.$$ {

export class $hyoo_intern_cabinet_norole extends $.$hyoo_intern_cabinet_norole {

campaign() {
return this.campaign_join() ?? this.user().campaign_current()
}

campaign_info() {
return this.campaign().info()
}

@ $mol_action
send_resume() {
this.campaign().candidates_on_review().item_push( this.user() )
this.role( 'intern' )
}

open_resume() {
this.spread( 'resume_page' )
@ $mol_action
staff_request() {
this.user().campaigns().item_push( this.campaign() )
}

}
Expand Down
3 changes: 1 addition & 2 deletions cabinet/sign/sign.view.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,7 @@ namespace $.$$ {

@ $mol_action
campaign_add() {
const obj = this.person().campaign_add()
this.person().campaign_current( obj )
this.person().campaigns().item_make()
}

@ $mol_action
Expand Down
Loading

0 comments on commit 133a841

Please sign in to comment.