Разбил страницу с резюме на отдельные вьюшки
This commit is contained in:
		
							parent
							
								
									9f204cef99
								
							
						
					
					
						commit
						4018fd3334
					
				| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
{
 | 
			
		||||
    "name": "new-site",
 | 
			
		||||
    "name": "new.site",
 | 
			
		||||
    "lockfileVersion": 3,
 | 
			
		||||
    "requires": true,
 | 
			
		||||
    "packages": {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,7 +5,7 @@
 | 
			
		|||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Resume from "./views/resume/Resume.vue";
 | 
			
		||||
import Resume from "./views/Resume/Resume.vue";
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
    name: "App",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,21 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div class="pa-5">
 | 
			
		||||
        <Skills/>
 | 
			
		||||
        <Experience/>
 | 
			
		||||
        <Education/>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Skills from "./About/Skills.vue";
 | 
			
		||||
import Experience from "./About/Experience.vue";
 | 
			
		||||
import Education from "./About/Education.vue";
 | 
			
		||||
export default {
 | 
			
		||||
    name: "About",
 | 
			
		||||
    components: {Education, Experience, Skills}
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,63 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div>
 | 
			
		||||
        <p class="text-h5 pb-3">Образование</p>
 | 
			
		||||
        <v-table class="pb-5 main-sheet-bg">
 | 
			
		||||
            <tbody>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td>2020</td>
 | 
			
		||||
                <td>
 | 
			
		||||
                    <p>Братский государственный университет, Братск</p>
 | 
			
		||||
                    <p>Факультет экономики и управления, Прикладная информатика в экономике (бакалавриат)</p>
 | 
			
		||||
                </td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td>2024</td>
 | 
			
		||||
                <td>
 | 
			
		||||
                    <p>Братский государственный университет, Братск</p>
 | 
			
		||||
                    <p>Факультет энергетики и автоматики, Веб технологии и информационный анализ данных (магистратура)</p>
 | 
			
		||||
                </td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            </tbody>
 | 
			
		||||
        </v-table>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
    name: "Education",
 | 
			
		||||
    data: () => ({
 | 
			
		||||
        windowHeight: document.documentElement.clientHeight,
 | 
			
		||||
        windowWidth: document.documentElement.clientWidth,
 | 
			
		||||
        isWide: window.innerWidth > 1000,
 | 
			
		||||
        tableClass: 'w-25'
 | 
			
		||||
    }),
 | 
			
		||||
    created() {
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler);
 | 
			
		||||
    },
 | 
			
		||||
    mounted() {
 | 
			
		||||
        this.myEventHandler();
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler, { passive: true });
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
        myEventHandler(e) {
 | 
			
		||||
            this.windowHeight = document.documentElement.clientHeight;
 | 
			
		||||
            this.windowWidth = document.documentElement.clientWidth;
 | 
			
		||||
            if (this.windowWidth < 1000){
 | 
			
		||||
                this.isWide = false;
 | 
			
		||||
                this.tableClass = 'w-66';
 | 
			
		||||
            } else {
 | 
			
		||||
                this.isWide = true;
 | 
			
		||||
                this.tableClass = 'w-33';
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
    .main-sheet-bg {
 | 
			
		||||
        background-color: #424242;
 | 
			
		||||
        color: #E0E0E0;
 | 
			
		||||
        text-decoration-color: #E0E0E0;
 | 
			
		||||
    }
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,57 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div>
 | 
			
		||||
        <p class="text-h5 pb-3">Опыт работы</p>
 | 
			
		||||
        <v-table class="pb-5 main-sheet-bg">
 | 
			
		||||
            <tbody>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td>Февраль 2022 — август 2023</td>
 | 
			
		||||
                <td><p>Муниципальное казенное учреждение «Центр информационно-технического и транспортного обслуживания» муниципального образования города Братска</p></td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td>Сентябрь 2023 — по настоящее время</td>
 | 
			
		||||
                <td>Государственное Автономное Учреждение «Иркутский областной многофункциональный центр предоставления государственных и муниципальных услуг»</td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            </tbody>
 | 
			
		||||
        </v-table>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
    name: "Experience",
 | 
			
		||||
    data: () => ({
 | 
			
		||||
        windowHeight: document.documentElement.clientHeight,
 | 
			
		||||
        windowWidth: document.documentElement.clientWidth,
 | 
			
		||||
        isWide: window.innerWidth > 1000,
 | 
			
		||||
        tableClass: 'w-25'
 | 
			
		||||
    }),
 | 
			
		||||
    created() {
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler);
 | 
			
		||||
    },
 | 
			
		||||
    mounted() {
 | 
			
		||||
        this.myEventHandler();
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler, { passive: true });
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
        myEventHandler(e) {
 | 
			
		||||
            this.windowHeight = document.documentElement.clientHeight;
 | 
			
		||||
            this.windowWidth = document.documentElement.clientWidth;
 | 
			
		||||
            if (this.windowWidth < 1000){
 | 
			
		||||
                this.isWide = false;
 | 
			
		||||
                this.tableClass = 'w-66';
 | 
			
		||||
            } else {
 | 
			
		||||
                this.isWide = true;
 | 
			
		||||
                this.tableClass = 'w-33';
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
    .main-sheet-bg {
 | 
			
		||||
        background-color: #424242;
 | 
			
		||||
        color: #E0E0E0;
 | 
			
		||||
        text-decoration-color: #E0E0E0;
 | 
			
		||||
    }
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,21 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div>
 | 
			
		||||
        <p class="text-h5 pb-3">Профессиональные навыки</p>
 | 
			
		||||
        <p style="text-indent: 1em; text-align: justify" class="pb-5">Хорошо знаю Java, на прошлом месте работы в основном занимался разработкой консольных/десктопных приложений на данном языке
 | 
			
		||||
            (муниципальный сектор). Планирую в ближайшее время изучить Spring Framework. В работе активно использую Git. Из СУБД плотно работаю с
 | 
			
		||||
            MySQL, Postgresql. Иногда по работе приходилось писать или дорабатывать небольшие сайты на HTML+CSS+JS (и иногда PHP) и
 | 
			
		||||
            дорабатывать веб-приложение на ASP.NET (Жил. фонд). На текущем месте работы занимаюсь разработкой/дработкой сайтов и веб-приложений
 | 
			
		||||
            на стеке Laravel+Vue. Так же переносил веб-приложение на десктоп с помощью фреймворка ElectronJs. В рамках программы ВУЗа изучал C#, Python, поверхностно проходил Django.
 | 
			
		||||
            Владею английским языком на среднем уровне.</p>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
    name: "Skills"
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,65 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div class="d-flex flex-row align-center">
 | 
			
		||||
        <p class="text-h4 w-75 ma-2 pa-2 justify-start">Белезов Павел</p>
 | 
			
		||||
        <div v-if="this.isWide" class="d-flex justify-end">
 | 
			
		||||
            <v-btn v-for="item in linksData" :key="item" color="#21abf6" variant="text" class="ma-2 pa-2 justify-end" :href="item.link">{{ item.name }}</v-btn>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div v-else class="d-flex justify-end w-25 pr-3">
 | 
			
		||||
            <v-menu location="bottom" color="#424242">
 | 
			
		||||
                <template class="justify-end" v-slot:activator="{ props }">
 | 
			
		||||
                    <v-btn color="#424242" icon="mdi-dots-vertical" v-bind="props"></v-btn>
 | 
			
		||||
                </template>
 | 
			
		||||
                <v-list>
 | 
			
		||||
                    <v-list-item v-for="item in linksData" :key="item" :href="item.link">
 | 
			
		||||
                        <v-list-item-title>
 | 
			
		||||
                            {{ item.name }}
 | 
			
		||||
                        </v-list-item-title>
 | 
			
		||||
                    </v-list-item>
 | 
			
		||||
                </v-list>
 | 
			
		||||
            </v-menu>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
    name: "Header",
 | 
			
		||||
    data: () => ({
 | 
			
		||||
        linksData: [
 | 
			
		||||
            {name: "Github", link: "https://github.com/Dhaverd"},
 | 
			
		||||
            {name: "HeadHunter", link: "https://irkutsk.hh.ru/resume/d8c67e1dff0843f1900039ed1f7839666b4559"},
 | 
			
		||||
            {name: "Habr", link: "https://career.habr.com/dhaverd"},
 | 
			
		||||
            {name: "Replit", link: "https://replit.com/@DHAVERD"},
 | 
			
		||||
            {name: "Резюме docx", link: "/download/resume.docx"}
 | 
			
		||||
        ],
 | 
			
		||||
        windowHeight: document.documentElement.clientHeight,
 | 
			
		||||
        windowWidth: document.documentElement.clientWidth,
 | 
			
		||||
        isWide: window.innerWidth > 1000,
 | 
			
		||||
        tableClass: 'w-25'
 | 
			
		||||
    }),
 | 
			
		||||
    created() {
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler);
 | 
			
		||||
    },
 | 
			
		||||
    mounted() {
 | 
			
		||||
        this.myEventHandler();
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler, { passive: true });
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
        myEventHandler(e) {
 | 
			
		||||
            this.windowHeight = document.documentElement.clientHeight;
 | 
			
		||||
            this.windowWidth = document.documentElement.clientWidth;
 | 
			
		||||
            if (this.windowWidth < 1000){
 | 
			
		||||
                this.isWide = false;
 | 
			
		||||
                this.tableClass = 'w-66';
 | 
			
		||||
            } else {
 | 
			
		||||
                this.isWide = true;
 | 
			
		||||
                this.tableClass = 'w-33';
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,77 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div class="d-flex justify-end align-center">
 | 
			
		||||
        <v-table class="main-sheet-bg pl-5" :class="[this.isWide ? 'w-25' : 'w-66']" style="text-align: left">
 | 
			
		||||
            <tbody>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td><v-icon :icon="`mdi-account`"></v-icon>Возраст</td>
 | 
			
		||||
                <td>{{ personalData.age }}</td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td><v-icon :icon="`mdi-city`"></v-icon>Город</td>
 | 
			
		||||
                <td>{{ personalData.location }}</td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td><v-icon :icon="`mdi-at`"></v-icon>E-mail</td>
 | 
			
		||||
                <td>{{ personalData.email }}</td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            <tr>
 | 
			
		||||
                <td><v-icon :icon="`mdi-phone`"></v-icon>Телефон</td>
 | 
			
		||||
                <td>{{ personalData.phoneNumber }}</td>
 | 
			
		||||
            </tr>
 | 
			
		||||
            </tbody>
 | 
			
		||||
        </v-table>
 | 
			
		||||
        <div class="w-33">
 | 
			
		||||
            <v-img class="image-gradient" src="./resume.png"></v-img>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
    name: "PersonalInfo",
 | 
			
		||||
    data: () => ({
 | 
			
		||||
        personalData: {
 | 
			
		||||
            age: '25 лет',
 | 
			
		||||
            location: 'г. Иркутск',
 | 
			
		||||
            email: 'belezov.pavel@mail.ru',
 | 
			
		||||
            phoneNumber: '+7-914-919-21-17'
 | 
			
		||||
        },
 | 
			
		||||
        windowHeight: document.documentElement.clientHeight,
 | 
			
		||||
        windowWidth: document.documentElement.clientWidth,
 | 
			
		||||
        isWide: window.innerWidth > 1000,
 | 
			
		||||
        tableClass: 'w-25'
 | 
			
		||||
    }),
 | 
			
		||||
    created() {
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler);
 | 
			
		||||
    },
 | 
			
		||||
    mounted() {
 | 
			
		||||
        this.myEventHandler();
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler, { passive: true });
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
        myEventHandler(e) {
 | 
			
		||||
            this.windowHeight = document.documentElement.clientHeight;
 | 
			
		||||
            this.windowWidth = document.documentElement.clientWidth;
 | 
			
		||||
            if (this.windowWidth < 1000){
 | 
			
		||||
                this.isWide = false;
 | 
			
		||||
                this.tableClass = 'w-66';
 | 
			
		||||
            } else {
 | 
			
		||||
                this.isWide = true;
 | 
			
		||||
                this.tableClass = 'w-33';
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
    .main-sheet-bg {
 | 
			
		||||
        background-color: #424242;
 | 
			
		||||
        color: #E0E0E0;
 | 
			
		||||
        text-decoration-color: #E0E0E0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    .image-gradient {
 | 
			
		||||
        mask-image: linear-gradient( to bottom, rgba(0, 0, 0, 1) 70%, rgba(0, 0, 0, 0) 100%);
 | 
			
		||||
    }
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,74 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <v-sheet class="bg-gradient justify-center d-flex h-auto" style="height: 100%">
 | 
			
		||||
        <v-sheet :elevation="4" class="mt-5 mb-5 align-center justify-center h-auto rounded-lg main-sheet-bg w-75">
 | 
			
		||||
            <Header/>
 | 
			
		||||
            <PersonalInfo/>
 | 
			
		||||
            <About/>
 | 
			
		||||
        </v-sheet>
 | 
			
		||||
    </v-sheet>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Header from "./Header.vue";
 | 
			
		||||
import PersonalInfo from "./PersonalInfo.vue";
 | 
			
		||||
import About from "./About.vue";
 | 
			
		||||
export default {
 | 
			
		||||
    name: "Resume",
 | 
			
		||||
    components: {About, PersonalInfo, Header},
 | 
			
		||||
    data: () => ({
 | 
			
		||||
        windowHeight: document.documentElement.clientHeight,
 | 
			
		||||
        windowWidth: document.documentElement.clientWidth,
 | 
			
		||||
        isWide: window.innerWidth > 1000,
 | 
			
		||||
        tableClass: 'w-25'
 | 
			
		||||
    }),
 | 
			
		||||
    created() {
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler);
 | 
			
		||||
    },
 | 
			
		||||
    mounted() {
 | 
			
		||||
        this.myEventHandler();
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler, { passive: true });
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
        myEventHandler(e) {
 | 
			
		||||
            this.windowHeight = document.documentElement.clientHeight;
 | 
			
		||||
            this.windowWidth = document.documentElement.clientWidth;
 | 
			
		||||
            if (this.windowWidth < 1000){
 | 
			
		||||
                this.isWide = false;
 | 
			
		||||
                this.tableClass = 'w-66';
 | 
			
		||||
            } else {
 | 
			
		||||
                this.isWide = true;
 | 
			
		||||
                this.tableClass = 'w-33';
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
 | 
			
		||||
.bg-gradient {
 | 
			
		||||
    background: linear-gradient(-45deg, #f103b0, #f0a068, #4fdbfeff);
 | 
			
		||||
    background-size: 200% 200%;
 | 
			
		||||
    animation: gradient 15s ease infinite;
 | 
			
		||||
    height: 100vh;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@keyframes gradient {
 | 
			
		||||
    0% {
 | 
			
		||||
        background-position: 0 50%;
 | 
			
		||||
    }
 | 
			
		||||
    50% {
 | 
			
		||||
        background-position: 100% 50%;
 | 
			
		||||
    }
 | 
			
		||||
    100% {
 | 
			
		||||
        background-position: 0 50%;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.main-sheet-bg {
 | 
			
		||||
    background-color: #424242;
 | 
			
		||||
    color: #E0E0E0;
 | 
			
		||||
    text-decoration-color: #E0E0E0;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -3,9 +3,9 @@
 | 
			
		|||
        <v-sheet class="mt-5 mb-5 rounded-lg w-75">
 | 
			
		||||
            <p class="text-h3 ma-5">Расписание стримов</p>
 | 
			
		||||
            <p class="ma-5 text-h4">{{ parseDate(dates[0].current_date) }} - {{ parseDate(dates[1].current_date) }}</p>
 | 
			
		||||
            <ScheduleTable></ScheduleTable>
 | 
			
		||||
            <ScheduleTable/>
 | 
			
		||||
            <p class="text-h3 ma-5">Ссылочки</p>
 | 
			
		||||
            <Links></Links>
 | 
			
		||||
            <Links/>
 | 
			
		||||
        </v-sheet>
 | 
			
		||||
    </v-sheet>
 | 
			
		||||
</template>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,177 +0,0 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <v-sheet class="bg-gradient justify-center d-flex h-auto" style="height: 100%">
 | 
			
		||||
        <v-sheet :elevation="4" class="mt-5 mb-5 align-center justify-center h-auto rounded-lg main-sheet-bg w-75">
 | 
			
		||||
            <div class="d-flex flex-row align-center">
 | 
			
		||||
                <p class="text-h4 w-75 ma-2 pa-2 justify-start">Белезов Павел</p>
 | 
			
		||||
                <div v-if="this.isWide" class="d-flex justify-end">
 | 
			
		||||
                    <v-btn v-for="item in linksData" :key="item" color="#21abf6" variant="text" class="ma-2 pa-2 justify-end" :href="item.link">{{ item.name }}</v-btn>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div v-else class="d-flex justify-end w-25 pr-3">
 | 
			
		||||
                    <v-menu location="bottom" color="#424242">
 | 
			
		||||
                        <template class="justify-end" v-slot:activator="{ props }">
 | 
			
		||||
                            <v-btn color="#424242" icon="mdi-dots-vertical" v-bind="props"></v-btn>
 | 
			
		||||
                        </template>
 | 
			
		||||
                        <v-list>
 | 
			
		||||
                            <v-list-item v-for="item in linksData" :key="item" :href="item.link">
 | 
			
		||||
                                <v-list-item-title>
 | 
			
		||||
                                    {{ item.name }}
 | 
			
		||||
                                </v-list-item-title>
 | 
			
		||||
                            </v-list-item>
 | 
			
		||||
                        </v-list>
 | 
			
		||||
                    </v-menu>
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="d-flex justify-end align-center">
 | 
			
		||||
                <v-table class="main-sheet-bg pl-5" :class="[this.isWide ? 'w-25' : 'w-66']" style="text-align: left">
 | 
			
		||||
                    <tbody>
 | 
			
		||||
                    <tr>
 | 
			
		||||
                        <td><v-icon :icon="`mdi-account`"></v-icon>Возраст</td>
 | 
			
		||||
                        <td>{{ personalData.age }}</td>
 | 
			
		||||
                    </tr>
 | 
			
		||||
                    <tr>
 | 
			
		||||
                        <td><v-icon :icon="`mdi-city`"></v-icon>Город</td>
 | 
			
		||||
                        <td>{{ personalData.location }}</td>
 | 
			
		||||
                    </tr>
 | 
			
		||||
                    <tr>
 | 
			
		||||
                        <td><v-icon :icon="`mdi-at`"></v-icon>E-mail</td>
 | 
			
		||||
                        <td>{{ personalData.email }}</td>
 | 
			
		||||
                    </tr>
 | 
			
		||||
                    <tr>
 | 
			
		||||
                        <td><v-icon :icon="`mdi-phone`"></v-icon>Телефон</td>
 | 
			
		||||
                        <td>{{ personalData.phoneNumber }}</td>
 | 
			
		||||
                    </tr>
 | 
			
		||||
                    </tbody>
 | 
			
		||||
                </v-table>
 | 
			
		||||
                <div class="w-33">
 | 
			
		||||
                    <v-img class="image-gradient" src="./resume.png"></v-img>
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="pa-5">
 | 
			
		||||
                <div>
 | 
			
		||||
                    <p class="text-h5 pb-3">Профессиональные навыки</p>
 | 
			
		||||
                    <p style="text-indent: 1em; text-align: justify" class="pb-5">Хорошо знаю Java, на прошлом месте работы в основном занимался разработкой консольных/десктопных приложений на данном языке
 | 
			
		||||
                        (муниципальный сектор). Планирую в ближайшее время изучить Spring Framework. В работе активно использую Git. Из СУБД плотно работаю с
 | 
			
		||||
                        MySQL, Postgresql. Иногда по работе приходилось писать или дорабатывать небольшие сайты на HTML+CSS+JS (и иногда PHP) и
 | 
			
		||||
                        дорабатывать веб-приложение на ASP.NET (Жил. фонд). На текущем месте работы занимаюсь разработкой/дработкой сайтов и веб-приложений
 | 
			
		||||
                        на стеке Laravel+Vue. Так же переносил веб-приложение на десктоп с помощью фреймворка ElectronJs. В рамках программы ВУЗа изучал C#, Python, поверхностно проходил Django.
 | 
			
		||||
                        Владею английским языком на среднем уровне.</p>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div>
 | 
			
		||||
                    <p class="text-h5 pb-3">Опыт работы</p>
 | 
			
		||||
                    <v-table class="pb-5 main-sheet-bg">
 | 
			
		||||
                        <tbody>
 | 
			
		||||
                        <tr>
 | 
			
		||||
                            <td>Февраль 2022 — август 2023</td>
 | 
			
		||||
                            <td><p>Муниципальное казенное учреждение «Центр информационно-технического и транспортного обслуживания» муниципального образования города Братска</p></td>
 | 
			
		||||
                        </tr>
 | 
			
		||||
                        <tr>
 | 
			
		||||
                            <td>Сентябрь 2023 — по настоящее время</td>
 | 
			
		||||
                            <td>Государственное Автономное Учреждение «Иркутский областной многофункциональный центр предоставления государственных и муниципальных услуг»</td>
 | 
			
		||||
                        </tr>
 | 
			
		||||
                        </tbody>
 | 
			
		||||
                    </v-table>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div>
 | 
			
		||||
                    <p class="text-h5 pb-3">Образование</p>
 | 
			
		||||
                    <v-table class="pb-5 main-sheet-bg">
 | 
			
		||||
                        <tbody>
 | 
			
		||||
                        <tr>
 | 
			
		||||
                            <td>2020</td>
 | 
			
		||||
                            <td>
 | 
			
		||||
                                <p>Братский государственный университет, Братск</p>
 | 
			
		||||
                                <p>Факультет экономики и управления, Прикладная информатика в экономике (бакалавриат)</p>
 | 
			
		||||
                            </td>
 | 
			
		||||
                        </tr>
 | 
			
		||||
                        <tr>
 | 
			
		||||
                            <td>2024</td>
 | 
			
		||||
                            <td>
 | 
			
		||||
                                <p>Братский государственный университет, Братск</p>
 | 
			
		||||
                                <p>Факультет энергетики и автоматики, Веб технологии и информационный анализ данных (магистратура)</p>
 | 
			
		||||
                            </td>
 | 
			
		||||
                        </tr>
 | 
			
		||||
                        </tbody>
 | 
			
		||||
                    </v-table>
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
        </v-sheet>
 | 
			
		||||
    </v-sheet>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
    name: "Resume",
 | 
			
		||||
    data: () => ({
 | 
			
		||||
        linksData: [
 | 
			
		||||
            {name: "Github", link: "https://github.com/Dhaverd"},
 | 
			
		||||
            {name: "HeadHunter", link: "https://irkutsk.hh.ru/resume/d8c67e1dff0843f1900039ed1f7839666b4559"},
 | 
			
		||||
            {name: "Habr", link: "https://career.habr.com/dhaverd"},
 | 
			
		||||
            {name: "Replit", link: "https://replit.com/@DHAVERD"},
 | 
			
		||||
            {name: "Резюме docx", link: "/download/resume.docx"}
 | 
			
		||||
        ],
 | 
			
		||||
        personalData: {
 | 
			
		||||
            age: '25 лет',
 | 
			
		||||
            location: 'г. Иркутск',
 | 
			
		||||
            email: 'belezov.pavel@mail.ru',
 | 
			
		||||
            phoneNumber: '+7-914-919-21-17'
 | 
			
		||||
        },
 | 
			
		||||
        windowHeight: document.documentElement.clientHeight,
 | 
			
		||||
        windowWidth: document.documentElement.clientWidth,
 | 
			
		||||
        isWide: window.innerWidth > 1000,
 | 
			
		||||
        tableClass: 'w-25'
 | 
			
		||||
    }),
 | 
			
		||||
    created() {
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler);
 | 
			
		||||
    },
 | 
			
		||||
    mounted() {
 | 
			
		||||
        this.myEventHandler();
 | 
			
		||||
        window.addEventListener("resize", this.myEventHandler, { passive: true });
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
        myEventHandler(e) {
 | 
			
		||||
            this.windowHeight = document.documentElement.clientHeight;
 | 
			
		||||
            this.windowWidth = document.documentElement.clientWidth;
 | 
			
		||||
            if (this.windowWidth < 1000){
 | 
			
		||||
                this.isWide = false;
 | 
			
		||||
                this.tableClass = 'w-66';
 | 
			
		||||
            } else {
 | 
			
		||||
                this.isWide = true;
 | 
			
		||||
                this.tableClass = 'w-33';
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
 | 
			
		||||
.bg-gradient {
 | 
			
		||||
    background: linear-gradient(-45deg, #f103b0, #f0a068, #4fdbfeff);
 | 
			
		||||
    background-size: 200% 200%;
 | 
			
		||||
    animation: gradient 15s ease infinite;
 | 
			
		||||
    height: 100vh;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@keyframes gradient {
 | 
			
		||||
    0% {
 | 
			
		||||
        background-position: 0 50%;
 | 
			
		||||
    }
 | 
			
		||||
    50% {
 | 
			
		||||
        background-position: 100% 50%;
 | 
			
		||||
    }
 | 
			
		||||
    100% {
 | 
			
		||||
        background-position: 0 50%;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.main-sheet-bg {
 | 
			
		||||
    background-color: #424242;
 | 
			
		||||
    color: #E0E0E0;
 | 
			
		||||
    text-decoration-color: #E0E0E0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.image-gradient {
 | 
			
		||||
    mask-image: linear-gradient( to bottom, rgba(0, 0, 0, 1) 70%, rgba(0, 0, 0, 0) 100%);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
		Loading…
	
		Reference in New Issue