Ringkasan Xenocrates Xenocrates adalah aplikasi yang dirancang untuk menyediakan perusahaan dengan sistem manajemen karyawan untuk memastikan organisasi yang lebih baik. Xenocrates dibangun di ASP.NET MVC dengan SQL Server sebagai database dan jQuery untuk permintaan data ASYNC. Layanan Xenocrates dibagi dalam tiga kategori utama
Layanan Admin: • Statistik untuk seluruh perusahaan yang membuatnya tetap up to date untuk perusahaannya. • Lihat penghitungan karyawan di setiap peran. • Operasi CRUD pada semua pekerja di perusahaannya, menavigasi untuk menemukan setiap detail yang ia inginkan tentang karyawannya • Operasi CRUD di semua departemennya dan melihat perincian spesifik dari setiap departemen • Lihat semua proyek aktif tetapi juga selesai di semua departemennya dengan rincian. • Sistem pembayaran terintegrasi dengan PayPal yang memungkinkannya membayar dengan cepat dengan mengklik tombol. • Riwayat pembayaran analitik untuk setiap karyawan. Layanan Pengawas: • Statistik departemennya. • Lihat rincian setiap pekerja di departemennya • Operasi CRUD pada kalender individu untuk karyawannya • Operasi CRUD pada proyek • Kemampuan untuk mengatur dan berkomunikasi dengan obrolan langsung
Layanan Karyawan: • Komunikasi dengan semua orang di departemennya dengan obrolan langsung • Lihat kalendernya untuk melihat jadwalnya untuk bulan itu • Lihat dan selesaikan proyek yang ditugaskan kepadanya
Rincian Layanan: • PayPal sekarang terintegrasi dalam mode Sandbox tetapi memiliki semua potensi untuk ditayangkan. Untuk saat ini Xenocrates bekerja sama dengan layanan pembayaran API Paypal. Sistem pembayaran untuk xenocrates dibangun sehingga dapat melindungi admin dari melakukan kesalahan dalam pembayaran. Setelah seorang karyawan dibayar, sebuah pesan muncul yang mengingatkannya bahwa admin telah membayar karyawan tertentu dan tidak mengizinkannya membayarnya lagi selama bulan ini. Setelah setiap upaya pembayaran, sistem mendeteksi status permintaan dan jika itu positif, ia menghemat pembayaran yang berhasil ke sistem dan menyimpannya dalam data pribadi karyawan sehingga admin dapat memiliki jejak penuh pembayarannya, jika tidak sistem mengumumkan bahwa itu menjadi masalah dengan transaksi. • Email dan telepon yang dimasukkan untuk setiap karyawan dicari dalam skala global untuk memeriksa apakah mereka valid sehingga tidak ada akun palsu yang terdaftar. API untuk itu termasuk neutronapiphone dan Zerobounce1. • Metode keamanan yang sering berjalan untuk memastikan bahwa tidak ada entri yang tidak pantas disimpan di dalam database • Obrolan langsung dengan implementasi pada teknologi SignalR yang memungkinkan setiap karyawan departemen untuk mengobrol satu sama lain secara real time. Setiap pesan disimpan di database sehingga dapat ditambahkan ke riwayat pesan. • Implementasi kalender dengan kalender penuh sebagai dasar tetapi sepenuhnya dipersonalisasi untuk kebutuhan pengawas. Pengawas memeriksa proyek -proyek yang ditugaskan kepada masing -masing karyawan dan tergantung pada beban kerja menyesuaikan jadwal bulanan untuk masing -masing karyawan. Di sisi lain, karyawan hanya dapat melihat kalendernya tanpa dapat melakukan tindakan untuk itu. • Bagan dan grafik dengan panggilan vanilla javacript dan jax yang dipersonalisasi dengan jQuery agar sesuai dengan persyaratan. • Ponsel dikonfirmasi menggunakan Twillio dengan akun uji coba gratis. Ponsel dimasukkan dan dikonfirmasi pada login pertama dari setiap pengguna baru. Pertama, sebuah API memvalidasi bahwa nomor telepon ada dan kemudian pesan dikirim dari Twillio dengan kode keamanan untuk melanjutkan dengan keselamatan. Untuk memastikan bahwa pekerjaan konfirmasi twillio mengisi gratis untuk menghubungi tim pyravlos sehingga kami dapat memasukkan nomor Anda di akun kami karena akun uji coba bebas hanya mengirim teks ke nomor yang diverifikasi dari akun. • Konfirmasi email diimplementasikan dengan bantuan metode bawaan yang disediakan dari ASP.NET yang memungkinkan kami untuk mengirim email konfirmasi baru kepada setiap karyawan baru untuk memastikan bahwa email mereka dikonfirmasi.
Analisis back-end: Xenocrates dibangun dengan gagasan komponen utama yang disediakan dengan data dan layanan dari penyedia independen. Pengontrol tidak memiliki akses ke basis data atau menarik berat tugas yang sulit. Jadi setiap pengontrol memiliki repositori data sendiri dan juga akses ke layanan yang melakukan semua tugas. Oleh karena itu repositori data untuk setiap pengontrol juga dibagi menjadi berbagai kelompok tergantung pada jenis data.
Pemisahan keprihatinan adalah fokus utama kami saat membangun xenocrates sehingga kami dapat memiliki banyak metode independen yang membangun sistem yang cepat, dapat dipelihara dan terintegrasi. Metode yang memiliki tanggung jawab tunggal sehingga kode sumber lebih mudah dipahami dan meninggalkan jendela untuk pengujian xunit di tambalan di masa mendatang sehingga semuanya akan lebih terkontrol.
SortingAndfiltering Repositori dan juga repositori untuk tas view diimplementasikan mengikuti pola repositori data. Segala sesuatu yang perlu dilakukan agar aturan "jangan ulangi diri Anda" dan pemisahan kekhawatiran tercapai.
Skema Database:
Database dirancang dan dibuat dengan fokus utama, berinteraksi dengan entitas entitas kerangka kerja sesedikit mungkin karena kompleksitas entitas dengan kunci yang menyediakan dan mengikat entitasnya bisa sangat berbahaya untuk stabilitas database kami. Kami mencoba menormalkan database kami sebanyak mungkin sehingga semuanya dapat dimanipulasi tanpa menyebabkan tsunami reaksi. Dalam kebanyakan kasus kami berhasil dalam membagi entitas kami dengan dua entitas utama. Yang pertama adalah pengguna aplikasi yang dibuat dan dilindungi dari kerangka entitas yang mewakili profil online seorang karyawan dan detail pribadi seorang karyawan yang dalam database kami diakui dalam tabel pekerja. Semuanya kecuali kedua entitas ini dapat dihapus atau diedit kapan saja tanpa biaya.
Masalah yang kami hadapi: kami mengalami berbagai jenis masalah kecil: • Manipulasi dan tampilan datetime • Konversi C# datetimes menjadi tanggal javascript • Manipulasi template yang kami gunakan untuk ujung depan tetapi masalah yang lebih mengganggu kami: • Versi alfa dari Xenocrates yang dibangun di sekitar tabel ASP. ke ASP.Netusers diekspos. Jadi kami harus memulai lagi dan menemukan jalan menuju desain akhir database. Itulah sebabnya folder ini dinamai ManagementSystemversiontwo. • Perpustakaan kalender penuh tidak berguna bagi kami sehingga kami harus menghabiskan beberapa hari membaca semua dokumentasi untuk memahami cara memanipulasinya sehingga bisa berfungsi. Terima kasih! Christos Lagos Iliana Beikou Spyros Tsamis George Chatziadis John Podogorianiotis