Coder Social home page Coder Social logo

hi-e's Introduction

1. 프로젝트 개요

  • 프로젝트 명칭: Hi-E
  • 프로젝트 소개: 스프링부트를 활용한 ERP 인사시스템
  • 기획 배경 : 중소기업에게 편리한 인사관리 시스템을 제공해 경제 발전에 기여
  • 기대 효과 : 중소기업의 인사 관리 능력 향상, 필요정보의 공유화가 가능, 정보의 흐름의 일원화
  • 개발 인원: 3명
  • 주요 기능
    • 유환인

      • 폼 로그인 및 OAuth 2.0 구글, 네이버, 카카오 로그인 기능
      • 회원가입 시 유효성 검사
      • 메인 페이지 다크모드 기능
      • 자유 게시판
      • 마이 페이지
      • 사용자 권한 관리
      • 사용자 그룹 관리
    • 최민지

      • FullCalendar API를 통한 근무 일정 등록,수정,삭제 관리
      • 휴가 등록 및 관리 기능
      • 출/퇴근 기록 기능
    • 박준영

      • 공지사항 게시판
      • 경조사 게시판
      • 인사카드관리
  • 백엔드 개발 언어: Java
  • 백엔드 개발 환경
    • Windows
    • STS4
    • SpringBoot 3.0.2
    • Spring Data JPA
    • Spring Security 6
    • OAuth 2.0
  • 프론트 개발 언어 및 환경
    • HTML5
    • jQuery
    • JavaScript
    • Bootstrap
    • React
  • DBMS: Mysql

2. 프로젝트 요구사항

  • 폼 로그인 및 OAuth 2.0 구글, 네이버, 카카오 로그인 기능
  • 회원가입 시 유효성 검사
  • 메인 페이지 다크모드 기능
  • 자유 게시판
  • 마이 페이지
  • 사용자 권한 관리
  • 사용자 그룹 관리
  • FullCalendar API를 통한 근무 일정 등록,수정,삭제 관리
  • 휴가 등록 및 관리 기능
  • 출/퇴근 기록 기능
  • 공지사항
  • 경조사
  • 인사카드관리리

회원기능

  • 회원가입 시 유효성 검사를 통과해야 한다.
  • 폼 로그인 및 OAuth 2.0 페이스북 로그인 기능을 사용할 수 있어야 한다.
  • 프로필 사진, 닉네임, 비밀번호, 이메일 등의 정보를 수정할 수 있어야 한다.

자유게시판 기능

  • 댓글이 등록 가능하여야 한다
  • 페이지네이션이 적용되어야 한다. (글 8개)
  • 제목으로 검색 기능이 있어야 한다.

마이페이지 기능

  • 사용자 프로필, 닉네임, 비밀번호 등 회원정보 수정 기능
  • 로그아웃 기능
  • 회원탈퇴 기능

권한관리 기능

  • 관리자만 접근 가능하여야 한다.
  • 사용자의 권한을 관리자로 올릴 수 있어야 한다.
  • 사용자의 권한을 BANNED로 금지할 수 있어야 한다.
  • 페이지네이션이 적용되어야 한다. (멤버 5명)
  • 이름이나 사번 혹은 권한으로 검색할 수 있도록 한다.

그룹관리 기능

  • 관리자만 접근 가능하여야 한다.
  • 드래그엔 드롭으로 사원의 그룹을 이동시킬 수 있어야 한다.
  • 사원을 더블클릭해 사원의 정보를 볼 수 있어야 한다.
  • 사원의 정보를 pdf로 인쇄할 수 있어야 한다.

일정 기능

  • 원하는 날짜에 일정 등록 가능
  • 일정 변경,삭제는 작성자만 가능해야 한다.

휴가신청 기능

출/퇴근 기능

  • 전체 직원의 근태현황은 관리자만 볼 수 있다.
  • 출근 전에는 출근버튼만 출력하고, 근무 중에는 퇴근버튼만 출력한다.
  • 퇴근시간 전에 실수로 퇴근을 누르면 관리자가 수정해 줄수 있어야 한다.

공지사항 기능

  • 관리자만 글 작성, 수정, 삭제가 가능하여야 한다.
  • 전체직원이 조회할 수 있어야 한다.

경조사 기능

  • 전체 직원이 글 작성, 수정, 삭제가 가능하여야 한다.
  • 주소찾기 API연동으로 주소 등록이 가능하여야 한다.
  • 경조사 등록시 전체 직원에게 e-mail 발송 가능하여야 한다.

인사카드관리 기능

  • 관리자만 글 작성, 수정, 삭제가 가능하여야 한다.
  • 인사 카드에 등록된 정보를 프린트 출력 가능하여야 한다.

기본데이터 비밀번호 qwe123!@#

🚀 Skills

https://velog.io/@luna7182/%EB%B0%B1%EC%97%94%EB%93%9C-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-README-%EC%93%B0%EB%8A%94-%EB%B2%95

https://github.com/Envoy-VC/awesome-badges

JavaScript

Java

React

BootStrap

JQuery

MySql


4. API 설계

image image image


5. 프로젝트 후기

유환인

ERP 사이트를 개발하면서 데이터베이스 설계 시 테이블 간의 관계 해소와 정규화의 중요성을 깨달았습니다. 협업을 통해 지속적인 통합의 중요성을 체감하였으며 TDD를 함으로써 통합 테스트 시간을 절약할 수 있다는 것을 깨달았습니다. 앞으로의 프로젝트에서 아쉬웠던 점과 어려웠던 점을 개선해서 프로젝트를 진행할 수 있는 사람이 되고 싶습니다.

최민지

팀 프로젝트를 수행하면서 설계의 중요성을 깨달았습니다. API 명세서와 테스트 케이스 작성 단계에서 놓치고 있었던 부분까지 살펴볼 수 있었습니다. 뿐만 아니라 코드리뷰를 통해 코드 품질을 향상시키고, 구글 캘린더 연동 및 Fullcalendar API를 활용하여 오픈 소스 해석 능력을 키우고 SPA 방식의 서버와의 통합에서 발생한 CORS 문제 및 라우팅에 대한 이해를 높일 수 있었습니다. 협업을 통해 함께 프로그램을 개발하는 과정이 매우 즐거웠습니다. 앞으로의 프로젝트에서는 코드뿐만 아니라 네트워크와의 상호작용에도 주의를 기울여 더욱 다양한 역할을 수행하는 능력을 키워 나갈 것입니다.

박준영

처음으로 팀 프로젝트를 진행하며 역할분담과 초기 세팅의 중요성을 깨달았으며, 팀원들과의 지속적인 통합의 필요성도 깨달았습니다. 하지만 그런 과정을 겪어가며, 문제를 해결하고 조금씩 완성되어가는 프로젝트를 보며 조금의 성취감을 얻었습니다. 앞으로 진행하는 협업 프로젝트에서는 이런 부분들을 더욱 보완하며 진행하도록 하겠습니다.

hi-e's People

Contributors

yoohwanihn avatar minji856 avatar jpark1125 avatar

Watchers

 avatar

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.