Giter Site home page Giter Site logo

billowdev / internship-management-system Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 13.07 MB

example nodejs application | Internship Form for student. Director confirm the Form...

JavaScript 99.27% CSS 0.20% HTML 0.45% Shell 0.08%
mernstack mysql nodejs react react-redux sequelize tailwindcss redux-middleware old-project

internship-management-system's Introduction

Contributors Forks Stargazers Issues MIT License LinkedIn

ระบบสารสนเทศเพื่อจัดการสถานที่ฝึกประสบการณ์วิชาชีพสาขาวิชาคอมพิวเตอร์

ระบบนี้ได้ถูกพัฒนาขึ้นเพื่อแก้ไขปัญหาความล่าช้าในการส่งแบบฟอร์มฝึกประสบการณ์วิชาชีพของนักศึกษา โดยพัฒนาด้วย React.js Redux Node.js Express MySQL Sequelize
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Roadmap
  4. Project Stucture
  5. Contributing
  6. Contact

About The Project

(back to top)

Built With

(back to top)

Getting Started

ระบบสารสนเทศเพื่อจัดการสถานที่ฝึกประสบการณ์วิชาชีพสาขาวิชาคอมพิวเตอร์ ซึ่งเป็นโครงงานคอมพิวเตอร์นี้ขึ้นมา เพื่อแก้ปัญหา ในการจัดการแบบฟอร์มสถานที่ฝึกประสบการณ์วิชาชีพสาขาวิชาคอมพิวเตอร์

Prerequisites

BACK END - Node.js

หลังบ้านจัดการฐานข้อมูลด้วย sequelize
  • models
  • routes
  • controllers

FRONT END - React.js & Redux

หน้าบ้านพัฒนาด้วย React.js ร่วมกับไลบรารี่จัดการ State Redux แบ่งเป็น 3 ส่วนหลักๆ
  • infrastructure ( Axios - การเชื่อมต่อกับ api)
  • views ( React - admin, director, student)
  • redux ( Redux - action middleware reducer selector store)
  • npm
    npm install npm@latest -g

Installation

  1. Clone the repo
    git clone https://github.com/lacakira/internship-management-system.git
  2. Install NPM packages
    npm install
  3. Enter your API in /server/infrastructure/services/config/index.js
     const BASE_URL = "http://localhost:5000/api";
  4. DOT ENV /src/.env
     NODE_ENV=development
     CLIENT_URL= "http://localhost"
     PORT="YOUR PORT"
     JWT_SECRET= "YOUR JWT RANDOM THING"
     DB_USERNAME= "DBUSERNAME"
     DB_PASSWORD="DBPASS"
     DB_HOST=
    
     DB_DATABASE_MAIN_DEV= internship_db
     DB_DATABASE_ADDRESS_DEV=thai_addresses_db
    
     DB_DATABASE_MAIN_PRODUCTION=internship_db
     DB_DATABASE_ADDRESS_PRODUCTION=thai_addresses_db
    
     DB_DATABASE_MAIN_TEST=internship_db
     DB_DATABASE_ADDRESS_TEST=thai_addresses_db
    
     PATH_TO_SAVE_IMG_PRODUCTION=/var/www/html/images
     PATH_TO_SAVE_IMG_DEVELOPMENT=../public/images

(back to top)

Roadmap

  • Make code cleaner
  • keep images with another option

Release version 1.0.0

นักศึกษา

  • สามารถเข้าสู่ระบบได้
  • สามารถดูแบบฟอร์มฝึกประสบการณ์วิชาชีพได้
  • สามารถเพิ่มข้อมูลแบบฟอร์มฝึกประสบการณ์วิชาชีพได้
  • สามารถส่งแบบฟอร์มฝึกประสบการณ์วิชาชีพได้
  • เมื่อส่งแบบฟอร์มจะไม่สามารถบันทึกข้อมูลแบบฟอร์มฝึกประสบการณ์วิชาชีพได้
  • สามารถยกเลิกการส่งแบบฟอร์มวิชาชีพได้
  • สามารถดูข้อมูลแบบฟอร์มประวัติส่วนตัวได้
  • สามารถเพิ่มข้อมูลแบบฟอร์มประวัติส่วนตัวได้
  • สามารถบันทึกแบบฟอร์มประวัติส่วนตัวได้
  • สามารถออกจากระบบได้

คณะกรรมการฝึกประสบการณ์วิชาชีพ

  • สามารถเข้าสู่ระบบได้
  • สามารถดูข้อมูลรายการฝึกประบการณ์วิชาชีพนักศึกษา สถาณะ "รออนุมัติ" ได้
  • สามารถดูข้อมูลแบบฟอร์มฝึกประสบการณ์วิชาชีพของนักศึกษาได้
  • สามารถอนุมัติแบบฟอร์มฝึกประสบการณ์วิชาชีพของนักศึกษาได้
  • สามารถส่งคืนแบบฟอร์มฝึกประสบการณ์วิชาชีพของนักศึกษาได้
  • สามารถดูข้อมูลรายการฝึกประบการณ์วิชาชีพนักศึกษา สถาณะ "อนุมัติ" ได้
  • สามารถเปลี่ยนสถานะแบบฟอร์มฝึกประสบการณ์วิชาชีพของนักศึกษา เป็น "รออนุมัติ" ได้
  • สามารถออกจากระบบได้

ผู้ดูแลระบบ

  • สามารถเข้าสู่ระบบได้
  • สามารถดูข้อมูลรายการข้อมูลสมาชิกได้
  • สามารถเพิ่มสมาชิกได้
  • สามารถแก้ไขข้อมูลการเข้าสู่ระบบของสมาชิกได้
  • สามารถแก้ไขประวัติส่วนตัวของนักศึกษาได้
  • สามารถออกจากระบบได้

Project Stucture


📦internship-management-system
 ┣ 📂public
 ┃ ┣ 📂images
 ┃ ┣ 📜favicon.ico
 ┃ ┣ 📜index.html
 ┃ ┣ 📜logo192.png
 ┃ ┣ 📜logo512.png
 ┃ ┣ 📜manifest.json
 ┃ ┗ 📜robots.txt
 ┣ 📂README
 ┃ ┗ 📂system-analysis
 ┃ ┃ ┗ 📜ER-Diagram.png
 ┣ 📂server
 ┃ ┣ 📂config
 ┃ ┃ ┗ 📜config.js
 ┃ ┣ 📂controllers
 ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┣ 📜admin.students.controller.js
 ┃ ┃ ┃ ┗ 📜login.controller.js
 ┃ ┃ ┣ 📜addresses.controller.js
 ┃ ┃ ┣ 📜auth.controllers.js
 ┃ ┃ ┣ 📜directors.controller.js
 ┃ ┃ ┣ 📜internships.controller.js
 ┃ ┃ ┣ 📜students.controller.js
 ┃ ┃ ┣ 📜thaiAddresses.controller.js
 ┃ ┃ ┗ 📜upload.controller.js
 ┃ ┣ 📂database
 ┃ ┃ ┣ 📜internship_db.sql
 ┃ ┃ ┗ 📜thai_addresses_db.sql
 ┃ ┣ 📂middlewares
 ┃ ┃ ┗ 📜auth.middleware.js
 ┃ ┣ 📂models
 ┃ ┃ ┣ 📂internship
 ┃ ┃ ┃ ┣ 📜Addresses.js
 ┃ ┃ ┃ ┣ 📜Companies.js
 ┃ ┃ ┃ ┣ 📜ContactPersons.js
 ┃ ┃ ┃ ┣ 📜CoStudentInternships.js
 ┃ ┃ ┃ ┣ 📜Directors.js
 ┃ ┃ ┃ ┣ 📜Educations.js
 ┃ ┃ ┃ ┣ 📜HometownAddresses.js
 ┃ ┃ ┃ ┣ 📜index.js
 ┃ ┃ ┃ ┣ 📜Internships.js
 ┃ ┃ ┃ ┣ 📜Login.js
 ┃ ┃ ┃ ┣ 📜PresentAddresses.js
 ┃ ┃ ┃ ┗ 📜Students.js
 ┃ ┃ ┗ 📂thaiAddresses
 ┃ ┃ ┃ ┣ 📜Districts.js
 ┃ ┃ ┃ ┣ 📜Geographies.js
 ┃ ┃ ┃ ┣ 📜index.js
 ┃ ┃ ┃ ┣ 📜Provinces.js
 ┃ ┃ ┃ ┗ 📜SubDistricts.js
 ┃ ┣ 📂routes
 ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┣ 📜admin.students.route.js
 ┃ ┃ ┃ ┗ 📜login.route.js
 ┃ ┃ ┣ 📜addresses.route.js
 ┃ ┃ ┣ 📜auth.route.js
 ┃ ┃ ┣ 📜directors.route.js
 ┃ ┃ ┣ 📜internships.route.js
 ┃ ┃ ┣ 📜students.route.js
 ┃ ┃ ┣ 📜thaiAddresses.route.js
 ┃ ┃ ┗ 📜upload.route.js
 ┃ ┣ 📜.env
 ┃ ┣ 📜.eslintrc.js
 ┃ ┣ 📜.gitignore
 ┃ ┣ 📜app.js
 ┃ ┣ 📜Copy.env
 ┃ ┣ 📜index.js
 ┃ ┣ 📜package.json
 ┃ ┣ 📜README.md
 ┃ ┣ 📜server.zip
 ┃ ┗ 📜yarn.lock
 ┣ 📂src
 ┃ ┣ 📂helpers
 ┃ ┃ ┗ 📜Persist.js
 ┃ ┣ 📂infrastructure
 ┃ ┃ ┗ 📂services
 ┃ ┃ ┃ ┣ 📂api
 ┃ ┃ ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┃ ┃ ┣ 📜login.js
 ┃ ┃ ┃ ┃ ┃ ┗ 📜profile.js
 ┃ ┃ ┃ ┃ ┣ 📂auth
 ┃ ┃ ┃ ┃ ┃ ┣ 📜index.js
 ┃ ┃ ┃ ┃ ┃ ┗ 📜login.js
 ┃ ┃ ┃ ┃ ┣ 📂director
 ┃ ┃ ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┃ ┃ ┃ ┣ 📂student
 ┃ ┃ ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┃ ┃ ┃ ┣ 📂thaiAddresses
 ┃ ┃ ┃ ┃ ┃ ┣ 📜index.js
 ┃ ┃ ┃ ┃ ┃ ┗ 📜thaiAddressApi.js
 ┃ ┃ ┃ ┃ ┣ 📂upload
 ┃ ┃ ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┃ ┃ ┃ ┣ 📂users
 ┃ ┃ ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┃ ┃ ┣ 📂config
 ┃ ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┃ ┃ ┣ 📂logger
 ┃ ┃ ┃ ┃ ┣ 📜console.js
 ┃ ┃ ┃ ┃ ┗ 📜elastic-search.js
 ┃ ┃ ┃ ┗ 📜index.js
 ┃ ┣ 📂redux
 ┃ ┃ ┣ 📂actions
 ┃ ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┃ ┣ 📜login.js
 ┃ ┃ ┃ ┃ ┗ 📜profile.js
 ┃ ┃ ┃ ┣ 📂director
 ┃ ┃ ┃ ┃ ┗ 📜internship.js
 ┃ ┃ ┃ ┣ 📂student
 ┃ ┃ ┃ ┃ ┣ 📜internship.js
 ┃ ┃ ┃ ┃ ┗ 📜resume.js
 ┃ ┃ ┃ ┣ 📜auth.js
 ┃ ┃ ┃ ┣ 📜ui.js
 ┃ ┃ ┃ ┣ 📜upload.js
 ┃ ┃ ┃ ┗ 📜users.js
 ┃ ┃ ┣ 📂middleware
 ┃ ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┃ ┣ 📜login.js
 ┃ ┃ ┃ ┃ ┗ 📜profile.js
 ┃ ┃ ┃ ┣ 📂director
 ┃ ┃ ┃ ┃ ┗ 📜internship.js
 ┃ ┃ ┃ ┣ 📂student
 ┃ ┃ ┃ ┃ ┣ 📜internship.js
 ┃ ┃ ┃ ┃ ┗ 📜resume.js
 ┃ ┃ ┃ ┣ 📜auth.js
 ┃ ┃ ┃ ┣ 📜index.js
 ┃ ┃ ┃ ┣ 📜ui.js
 ┃ ┃ ┃ ┣ 📜upload.js
 ┃ ┃ ┃ ┗ 📜users.js
 ┃ ┃ ┣ 📂reducers
 ┃ ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┃ ┣ 📜login.js
 ┃ ┃ ┃ ┃ ┗ 📜profile.js
 ┃ ┃ ┃ ┣ 📂director
 ┃ ┃ ┃ ┃ ┗ 📜internship.js
 ┃ ┃ ┃ ┣ 📂student
 ┃ ┃ ┃ ┃ ┗ 📜internship.js
 ┃ ┃ ┃ ┣ 📜auth.js
 ┃ ┃ ┃ ┣ 📜index.js
 ┃ ┃ ┃ ┗ 📜ui.js
 ┃ ┃ ┣ 📂selectors
 ┃ ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┃ ┣ 📜login.js
 ┃ ┃ ┃ ┃ ┗ 📜profile.js
 ┃ ┃ ┃ ┣ 📂director
 ┃ ┃ ┃ ┃ ┗ 📜internship.js
 ┃ ┃ ┃ ┣ 📂student
 ┃ ┃ ┃ ┃ ┗ 📜internship.js
 ┃ ┃ ┃ ┣ 📜auth.js
 ┃ ┃ ┃ ┣ 📜ui.js
 ┃ ┃ ┃ ┗ 📜users.js
 ┃ ┃ ┗ 📜store.js
 ┃ ┣ 📂views
 ┃ ┃ ┣ 📂admin
 ┃ ┃ ┃ ┣ 📂manages
 ┃ ┃ ┃ ┃ ┣ 📜Login.jsx
 ┃ ┃ ┃ ┃ ┣ 📜LoginAdd.jsx
 ┃ ┃ ┃ ┃ ┣ 📜LoginUpdate.jsx
 ┃ ┃ ┃ ┃ ┣ 📜StudentUpdate.jsx
 ┃ ┃ ┃ ┃ ┗ 📜StudentUpdateHook.jsx
 ┃ ┃ ┃ ┣ 📜Controllers.jsx
 ┃ ┃ ┃ ┗ 📜index.jsx
 ┃ ┃ ┣ 📂components
 ┃ ┃ ┃ ┣ 📜Footer.jsx
 ┃ ┃ ┃ ┣ 📜Layout.jsx
 ┃ ┃ ┃ ┣ 📜Missing.jsx
 ┃ ┃ ┃ ┣ 📜Navbar.jsx
 ┃ ┃ ┃ ┣ 📜RequireAuth.jsx
 ┃ ┃ ┃ ┣ 📜Signin.jsx
 ┃ ┃ ┃ ┗ 📜Unauthorized.jsx
 ┃ ┃ ┣ 📂director
 ┃ ┃ ┃ ┣ 📂internship
 ┃ ┃ ┃ ┃ ┣ 📜InternshipsConfirmed.jsx
 ┃ ┃ ┃ ┃ ┣ 📜InternshipsPending.jsx
 ┃ ┃ ┃ ┃ ┗ 📜InternshipsViews.jsx
 ┃ ┃ ┃ ┗ 📜index.jsx
 ┃ ┃ ┣ 📂students
 ┃ ┃ ┃ ┣ 📜Controllers.jsx
 ┃ ┃ ┃ ┣ 📜index.jsx
 ┃ ┃ ┃ ┣ 📜InternshipForm.jsx
 ┃ ┃ ┃ ┣ 📜InternshipHook.jsx
 ┃ ┃ ┃ ┣ 📜ResumeForm.jsx
 ┃ ┃ ┃ ┣ 📜ResumeHook.jsx
 ┃ ┃ ┃ ┗ 📜StudentHomePage.jsx
 ┃ ┃ ┣ 📜Home.jsx
 ┃ ┃ ┗ 📜index.jsx
 ┃ ┣ 📜index.css
 ┃ ┗ 📜index.js
 ┣ 📜.gitignore
 ┣ 📜package-lock.json
 ┣ 📜package.json
 ┣ 📜postcss.config.js
 ┣ 📜README.md
 ┣ 📜tailwind.config.js
 ┣ 📜webpack.config.js
 ┗ 📜yarn.lock

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Contact

Akkarapon Phikulsri - [email protected]

Project Link: https://github.com/billowdev/internship-management-system

(back to top)

(back to top)

internship-management-system's People

Contributors

billowdev avatar

Stargazers

 avatar  avatar

Watchers

 avatar

internship-management-system's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.