/E.B.S

Primary LanguageEJS

E.B.S

2B04 베타테스터

팀장 : 202068061 최세은

팀원 : 202068061 김은지

팀장 최세은의 프로젝트 진행내역

진행 주차는 월~일의 일주일 기준이 아닌 회의일(수 or 목) 기준으로 작성.

3주차

  • 2021.09.12 프로젝트 세팅 및 깃허브 저장소 생성

  • 2021.09.12 게시판 기본 목록 작성

  • 2021.09.12 게시판 라우팅

  • 2021.09.12 ~ 2021.09.13 게시판 기본 틀(디자인) 작성

  • 2021.09.14 ~ 2021.09.15 로그인/회원가입 화면 작성

4주차

  • 2021.09.16 로고/안내 이미지 적용

  • 2021.09.16 DB 연결

  • 2021.09.17 ~ 2021.09.23 로그인 기능 구현 (사설인증서 적용 X)

  • 2021.09.18 회원가입 기능 구현

  • 2021.09.18 비로그인 시, 게시판 진입 거부 구현

  • 2021.09.23 마이페이지 틀 작성

  • 2021.09.23 개인정보 열람 기능 구현

5주차

  • 2021.09.24 글 작성 틀 작성

  • 2021.09.25 공고 작성 기능 구현

  • 2021.09.26 공고에 파일 저장 기능 구현 (파일 경로로 DB에 저장)

  • 2021.09.26 게시글 목록 디자인

  • 2021.09.27 게시글 목록에 출력

  • 2021.09.29 게시글 클릭하면 게시물 열람

  • 2021.09.29 파일 클릭 시 파일 다운로드

6주차

  • 2021.10.01 검색 목록 디자인

  • 2021.10.01 공고 검색 기능 구현 (페이징 관련 문제 있음)

  • 2021.10.02 공고 수정 기능 구현

  • 2021.10.02 공고 삭제 기능 구현

  • 2021.10.05 공고 검색 기능 보완

7주차

  • 2021.10.04 개찰 결과(내가 입찰한 공고/개찰 결과 등록) 페이지 작성

  • 2021.10.07 공고 DB 수정 및 입찰 기능 구현

  • 2021.10.08 입찰 현황 열람 기능 구현

  • 2021.10.10 개찰 결과 등록 기능 구현

  • 2021.10.11 개찰 결과 확인 페이지 작성

8주차

  • 2021.10.13 로고 재디자인 적용

  • 2021.10.14 ~ 2021.10.15 칼라팔레트 결정 및 색상 적용

  • 2021.10.17 로고 및 메인화면 이미지 최종

  • 2021.10.18 공지사항 및 Q&A 페이지

9주차

  • 2021.10.19 ~ 2021.10.23 개찰 후 대화하기 시스템 구현

  • 2021.10.23 ~ 2021.10.25 자잘한 수정 (마감일 지난 공고 수정/삭제 불가, 개찰 결과 확인 배치 수정, 대화하기 파일 첨부 등)

  • 2021.10.25 개인정보 수정 기능 구현

  • 2021.10.26 마이페이지 내 공고 검색 기능

10주차

  • 2021.10.26 Q&A, 공지사항 작성

  • 2021.10.26 ~ 2021.10.29 파일 암호화 저장

  • 2021.10.26 ~ 2021.10.29 파일 다운로드 시 복호화

  • 2021.10.31 ~ 2021.11.01 암/복호화 후 파일 삭제

  • 2021.10.31 암/복호화 키 설정

11주차

  • 2021.10.29 ~ 2021.11.06 디자인 보완

  • 2021.11.04 공고 게시글 작성

  • 2021.11.05 ~ 2021.11.06 테스트

  • 2021.11.06 시연 영상 촬영

  • 2021.11.09 발표

12주차

  • 2021.11.11 ~ 2021.11.12 문의 알림 표시

  • 2021.11.15 회원가입 시 이메일 저장

  • 2021.11.15 ~ 2021.11.17 이메일 인증

13주차

  • 2021.11.18 ~ 2021.11.19 유찰 시 재입찰

  • 2021.11.18 ~ 2021.11.24 디자인 보완

14주차

  • 2021.11.26 ~ 2021.11.28 검색 세분화

  • 2021.11.28 ~ 2021.12.06 코드 정리

15주차

  • 보고서 작성

개인 노트

오류 노트

2021.09.25 - 로그인 시 mysql 오류가 계속 나길래 최근 포트번호와 비밀번호를 변경한게 문제인가, 해서 1시간 반 동안 env 파일을 건드려야 하나, installer로 재설정도 해보고 헤멨는데 session 문제였다. FileStore를 MySQLStore로 변경하는 과정에서 문제가 있었던듯... 시간 엄청 썼다 괴롭다. + response와 res, request와 req를 너무 혼용해놔서 오류가 자주 뜬다. 내일 전부 통일하기로 함.

2021.09.26 - 파일 경로를 DB에 저장시키려고 하고 있는데 ejs 파일에 enctype="multipart/form-data"를 빼먹은 것을 js파일에서만 해메느라 40분 소요.

2021.09.27 - DB에 시간을 YYYY-MM-DD HH24:MI:SS 형식으로 잘 저장하였으나 node로 가져올 시 다른 형태로 출력된다. js의 DB 연결 코드에 'dateStrings: 'date' 추가하여 해결.

2021.09.29 - mime.getType() is not a function 오류 발생. mime.lookup()으로 변경하니 정상 작동. 그냥 버전 문제인 것 같음.

2021.10.01 - 페이지 넘어가는 페이징과 체크박스 및 텍스트 입력으로 검색하는 기능을 각각 param과 query로 받아서 화면 전환해주는 코드를 함께 작성. 페이징 기능과 검색 기능이 각각 따로로는 정상 작동하나, 검색 시 페이지를 전환하면 검색하기 전의 전체 페이지로 보여짐. 페이징과 검색 기능을 각각 따로 처리해서 보여줘야 할 것 같은데... 게다가 어째선지 마지막 포스트가 여러 개로 분열함. 글 개수를 계산하는 변수에 문제가 있는 듯. 나중에 수정.

2021.10.04 - 포스트 분열은 해결. 검색과 페이징 동시 처리는 교수님께 조언 구하기

2021.10.05 - 페이징과 검색이 동시에 구현되지 않아 페이징 기능을 없애고 대신 검색 기능을 세분화함. 날짜/마감날짜 최신/오래된 순으로 정렬, 분류에 따라 출력, 오래된 공고 제거/마감/마감임박 공고 제거/제목 중복 공고 제거, 텍스트로 검색할 수 있도록 함.

2021.10.19 - 1:1 대화하기 기능에서 시행착오. 실시간 1:1 채팅이 기능적으로도, 실제로 필요한지도 애매하기 때문에 '문의하기'의 개념으로 변경. 문의하는 글을 작성하고 공고 작성자는 해당 문의 글을 마이페이지에서 받아볼 수 있는 형식으로 변경한다.

2021.10.25 - session 관리 방법 보완이 필요... 로그인 시 소메뉴와 비로그인 시 소메뉴 적용 필요. 다만 많은 파일들을... 변경해야하니 보류. 보안 측면에 있어서는 파일 암호화에 손써보기로. 모두에게 노출되는 공고 게시물을 제외하고 입찰 신청 시 파일, 1:1 문의 시 첨부하는 파일을 전부 암호화되게 구현할 예정. +파일 다운로드에 문제가 있어 확인해보았더니 한글 파일명일 경우 다운로드가 안 된다 이런...

2021.11.03 - heroku를 이용해 호스팅 시도. 다행히도 mysql을 지원한다. 호스팅하여 띄우는 것까지는 성공. 그러나 동적 파일 저장을 제공하지 않는다... 하필이면 EBS는 공고 및 입찰 시 필수적으로 파일을 첨부 받는데... 찾아보니 AWS등을 사용하여 파일만 다른 곳에 저장해주면 되지만 또 또 하필이면 EBS는 multer 미들웨어로 이미지를 다운받고 cryptoJS라는 node 모듈로 파일을 암복호화 한다... 바꾸라면 바꿀 수 있겠지만 졸작 발표 5일 전... 그냥 완벽한 호스팅은 포기하고(firebase 말고 다른 업체로 호스팅 해봤다는 것에 의의를 두기) 디자인을 뜯어고치는 데에 집중하기로. 호스팅하고 제3자들에게 테스트를 부탁할 생각이었지만 무산되었으니 그냥 직접 찾아가서 사용을 부탁해봐야겠다. 졸작 발표 후에 호스팅은... API가 성공하면 홈서버도 고려해봐야겠다. 다음에는 어떻게 호스팅 할건지, 호환되는 무슨 DB를 쓸건지 고심해보고 시작하기로...

2021.11.09 - 졸업작품 전시회, 무난하게 발표했고 대상. 보완하거나 리팩토링 할 부분이 많이 남았다. 12주차부터 프로젝트 완료 시까지는 구조 자체를 바꾸기보다는 기능 추가, 보완, 코드 정리를 위주로 진행 할 예정