SSCC · 숭실컴퓨팅클럽 운영관리시스템
운영관리시스템
사용 설명서
업무·하위 업무 등록부터 승인, 회원 관리, 폼 제작까지 — 운영진이 이 어드민에서 하는 일을 화면 순서대로 안내합니다. 화면 이미지는 실제 배치를 그대로 옮긴 참고용 스케치이며, 세부 문구는 실제 화면과 다를 수 있습니다.
개정 이력
이 문서 자체의 변경 기록
| 일자 | 버전 | 내용 |
|---|---|---|
| 2026-08-19 | v1.1 |
대시보드 목업의 "내 업무 목록" 예시를 서버 판정 수정 결과에 맞게 갱신
(마감 당일 건이 지연 → 마감임박). 근거:
ssccops-server
#121
— 지연 판정 경계를 초 단위(ddln_dt < now)에서 날짜 단위
(ddln_dt < 오늘 0시)로 변경. 웹 코드는 변경되지 않았고
서버가 내려주는 isDelayed 값만 바뀌었다.
|
| 2026-08-19 | v1.0 | 최초 작성 — 전체 도메인(로그인 · 대시보드 · 운영 · 회원 · 역할 · 폼) 통합 가이드 |
로그인
/login
운영관리시스템은 별도의 아이디·비밀번호를 만들지 않습니다. 소속 Google 계정으로 로그인하면 그 계정이 그대로 회원 식별에 쓰입니다. 처음 로그인하는 사람은 자동으로 임시회원 등급으로 시작하고, 이후 운영진이 등급을 조정합니다.
운영관리시스템
Google 계정으로 로그인합니다. 내부 회원 식별은 로그인 이후
회원 도메인에서 처리됩니다.
처음 가입하면 임시회원 등급으로 바로 시작할 수 있습니다. 졸업생도 동일하게 가입할 수 있습니다.
로그인 화면 — /login
로그인하는 순서
- 1Google로 계속하기 버튼을 누른다Google 로그인 창으로 이동합니다.
- 2소속 Google 계정을 선택한다개인 계정이 아니라 동아리 활동에 쓰는 계정으로 로그인해야 회원 정보와 연결됩니다.
- 3권한 동의 후 자동으로 운영관리시스템으로 돌아온다처음 로그인이면 임시회원으로 등록되고, 이미 등록된 사람이면 바로 대시보드로 이동합니다.
같은 화면인데 로그인이 계속 풀린다면 대부분 권한이 없는 메뉴에 접근했거나 서버 세션이 만료된 경우입니다. 다시 로그인해도 반복되면 운영진에게 등급·권한 확인을 요청하세요.
운영 대시보드
/dashboard 로그인 후 처음 보는 화면
대시보드는 세 가지만 보여줍니다 — 내가 승인해야 할 것, 곧 마감인 것, 내가 지금 하고 있는 것. 매일 아침 이 화면 하나로 오늘 무엇을 해야 하는지 확인하도록 설계돼 있습니다.
운영 대시보드 — /dashboard
| 영역 | 보여주는 것 |
|---|---|
| 승인 대기 목록 | 지금 나에게 승인 요청이 와 있는 하위 업무 미리보기. 행을 누르면 승인함으로 이동합니다. 이 카드는 WORK_MANAGE 권한이 있어야 보입니다. |
| 다가오는 마감 | 마감이 임박한 순서대로 나열됩니다. 배지는 D-DAY·D-1 식으로 남은 일수를 보여주며, 이미 지난 것은 빨간 테두리로 구분됩니다. |
| 내 업무 목록 | 담당자가 나인 하위 업무 전체. 상단 칩으로 전체·마감임박·지연만 골라볼 수 있습니다. |
업무를 새로 만들 권한이 있으면 화면 오른쪽 위 + 등록 버튼이 활성 상태로 보입니다. 권한이 없으면 버튼은 그대로 있지만 눌러도 반응하지 않고, 위에 마우스를 올리면 이유가 말풍선으로 뜹니다.
운영 통합 · 등록
/operations /operations/new
업무(work)·하위 업무(sub_work)·회의(mtg)는 모두 하나의 운영(oper)이라는 뿌리에서 갈라져 나옵니다. 운영 통합 화면은 이 세 가지를 한 화면에서 조망하고, 등록 화면은 그중 무엇을 새로 만들지에 따라 입력창 구성이 달라집니다.
운영 통합 — 전체를 한눈에
운영 통합 — /operations
새로 등록하기
+ 등록 버튼을 누르면 무엇을 만들지부터 고릅니다 — 업무는 처음부터 새로 만드는 큰 단위이고, 회의도 마찬가지입니다. 하위 업무는 반드시 어떤 업무에 딸려야 하므로, 업무 상세 화면의 + 하위 업무 버튼으로만 만들 수 있습니다 — 등록 화면에 하위 업무를 독립적으로 고르는 선택지가 없는 것은 의도된 제약입니다.
하위 업무 등록 — 업무 상세의 [+ 하위 업무]에서만 진입
하위 업무 유형을 고르면 아래에 규칙 요약이 뜹니다. 승인이 필요한지, 누가 승인하는지, 완료 전 체크해야 할 항목이 몇 개인지는 이 시점에 유형에서 그대로 복사됩니다 — 등록 후에는 유형을 바꿀 수 없으니 신중하게 고르세요.
업무
/operations/works /operations/works/{id} /operations/works/{id}/edit
업무는 하위 업무를 담는 큰 그릇입니다 — "2026 동아리 박람회" 같은 행사 하나, 또는 "회계 정산" 같은 상시 운영 하나가 업무 한 건입니다. 목록에서 카드 형태로 전체를 훑어보고, 카드를 누르면 그 업무에 속한 하위 업무들을 확인합니다.
업무 목록
업무 목록 — /operations/works
업무 상세 — 하위 업무 진행 현황
- 유형
- 행사
- 담당자
- 이지원
- 기간
- 08.10 ~ 08.22
- 업무상태
- 진행
- 진행률
- 64%
업무 상세 — /operations/works/{id}
업무 수정에서 바꿀 수 있는 것
| 항목 | 비고 |
|---|---|
| 운영 제목 · 우선순위 · 기간 | 자유롭게 수정 |
| 업무 유형 · 총평 | 자유롭게 수정 |
| 담당자 | 읽기 전용 — 담당자를 바꾸는 기능은 아직 없습니다 |
수정 화면은 선택 입력란도 비워 두면 지워진 것으로 저장됩니다. 부분 수정이 아니라 전체 교체이므로, 저장 전 화면에 채워진 값이 맞는지 한 번 더 확인하세요.
하위 업무
/operations/sub-works /operations/sub-works/{id} /operations/sub-works/{id}/edit
실제로 손을 움직여 처리하는 최소 단위입니다. 기획 → 진행 → 검토 → 완료 네 단계를 순서대로 밟으며, 유형에 따라 완료 전에 승인이 필요할 수 있습니다.
목록에서 상태 훑어보기
하위 업무 목록 — /operations/sub-works
상세 — 지금 할 수 있는 전이 하나만 보인다
하위 업무 상세 화면의 버튼은 언제나 지금 단계에서 다음으로 넘어가는 동작 하나만 보여줍니다. 두 단계를 한 번에 건너뛰는 버튼은 없습니다 — 중간에 요청이 끊기면 누른 적 없는 상태로 남는 것을 막기 위한 설계입니다.
- 유형
- 예산지출
- 마감_일시
- 08.18 D-DAY
- 업무_상태
- 검토
- 승인_상태
- 대기
하위 업무 상세 — /operations/sub-works/{id} (검토 단계 · 정족수 대기 예시)
단계별 버튼
| 현재 단계 | 보이는 버튼 | 다음 단계 |
|---|---|---|
| 기획 | 착수 | 진행 |
| 진행 | 완료 승인 요청 | 검토 |
| 검토 | 완료 승인 / 반려 | 완료 / 진행(반려 시) |
승인 버튼과 완료 점검은 서로 다른 조건입니다. 승인 버튼이 보이는 것은 "권한이 있다"는 뜻일 뿐이고, 실제로 눌러 완료 처리하려면 오른쪽 완료 점검 목록이 전부 체크돼 있어야 합니다(정족수가 있는 유형은 정족수도 함께 채워야 합니다). 체크가 덜 됐는데 버튼이 잠겨 있다면 권한 문제가 아니라 점검 미완료입니다.
하위 업무 수정에서 바꿀 수 없는 것
담당자·하위 업무 유형·상위 업무는 등록 시점에 고정됩니다. 유형이 바뀌면 승인 필요 여부·승인자·정족수·완료 점검 항목이 통째로 달라지는데, 이미 등록 시점에 복사된 값이라 되돌릴 방법이 없기 때문입니다. 유형을 잘못 골랐다면 해당 하위 업무를 마감하고 새로 등록해야 합니다.
승인함
/approvals
승인이 필요한 하위 업무를 대기 · 승인 · 반려 탭으로 나눠 모아 봅니다. 정족수가 필요한 유형은 카드 안에서 바로 찬반 투표를 던질 수 있습니다 — 투표와 최종 완료 승인은 별개입니다.
승인함 — /approvals (대기 탭)
대시보드의 승인 대기 목록에서 행을 누르면 이 화면으로 넘어오면서 해당 카드가 파란 테두리로 강조되고 자동으로 스크롤됩니다. 카드를 못 찾겠으면 대시보드를 거쳐 들어오는 것이 가장 빠릅니다.
회원 명부 · 상세
/members /members/{id} /members/{id}/edit
전체 회원을 이름·학번으로 검색하고, 등급·상태로 걸러 봅니다. 새 회원을 운영진이 직접 만드는 기능은 없습니다 — 신규 회원은 본인이 Google 계정으로 로그인해 가입하거나, 과거 명단을 CSV로 이관해 들어옵니다.
회원 명부 — /members
회원 상세
- 학번
- 20231234
- 기수
- 15기
- 학과
- 컴퓨터학부
- 학년
- 3학년
회원 상세 — /members/{id}
| 화면 | 바꿀 수 있는 것 |
|---|---|
| 정보 수정 | 회원명 · 기수 · 학과 · 학년 · 전화번호 · 이메일. 학번 · 가입일은 이 화면에서 바꿀 수 없습니다. |
| 등급 · 상태 변경 | 상세 화면의 별도 버튼으로만 — 정보 수정 화면에 섞여 있지 않습니다. |
| 역할 부여 · 종료 | 역할 권한이 있어야 보입니다. |
CSV 회원 이관
/members/csv-import
과거 명단(엑셀·구글 시트를 CSV로 내보낸 파일)을 한 번에 등록하는 4단계 마법사입니다. 중복으로 보이는 행은 자동으로 병합하지 않고 건너뜁니다 — 실행 결과는 되돌릴 수 없으므로 3단계 검증에서 반드시 내용을 확인하세요.
CSV 회원 이관 — 1단계 파일 선택
3단계 사전 검증 — 이 숫자를 반드시 확인하고 다음으로
- 1양식 CSV를 먼저 내려받아 형식을 맞춘다필수·조건부·선택 컬럼이 표로 안내됩니다.
- 2내 파일의 헤더를 시스템 필드에 연결한다헤더명이 정확히 일치하지 않아도 직접 매핑할 수 있습니다.
- 3오류·중복 행을 확인한다이 행들은 이관되지 않고 건너뜁니다 — 실행 전 사유를 꼭 읽어보세요.
- 4"되돌릴 수 없다는 것을 확인했습니다"에 체크 후 실행한다실행하면 정상 후보만 새 회원으로 등록됩니다.
이관된 회원은 아직 로그인 계정과 연결되지 않은 상태입니다(이름 옆에 "이관" 표시). 본인이 Google로 가입하면 그때 실제 계정과 연결됩니다 — 이관만으로 로그인이 가능해지는 것은 아닙니다.
역할 · 권한
/members/roles /members/roles/{id}/authorities /members/authorities
"회장", "국장", "박람회 총괄" 같은 역할을 만들고, 역할마다 어떤 권한을 줄지 정하는 화면입니다. 화면에 뜨는 모든 버튼·메뉴는 결국 이 권한 배열로 결정됩니다.
WORK_MANAGE
MEMBER_MANAGE
상위에서 부여
FORM_LABEL_MANAGE
역할별 권한 부여 — 체크는 직접 부여, 파란 배지는 상위 권한에서 상속됨
| 개념 | 의미 |
|---|---|
| 역할 | 회원에게 붙는 이름표. 한 회원이 역할을 여러 개 가질 수 있고, 그중 하나를 "대표" 역할로 지정할 수 있습니다. |
| 권한 | 화면 기능 하나하나에 매달린 코드(예: WORK_MANAGE). 역할에 권한을 체크해야 그 역할을 가진 회원이 해당 기능을 씁니다. |
| 상속 | 권한 트리에서 상위 권한을 가지면 하위 권한도 자동으로 포함됩니다. "상위에서 부여" 배지가 붙은 항목은 체크를 해제할 수 없습니다. |
묶음 권한만으로는 세부 권한이 열리지 않습니다. 예를 들어 어떤 역할에 "업무 쓰기" 권한만 주면 "업무 관리" 묶음 권한은 자동으로 따라오지 않습니다 — 화면은 정확히 그 회원이 가진 권한 코드만 보고 버튼을 그립니다.
폼 관리 · 편집기
/forms /forms/{id} /forms/{id}/edit
신입회원 모집, 행사 참가 신청 같은 외부 공개 설문을 만듭니다. 여러 페이지로 나눌 수 있고, 선택지에 따라 다음 페이지를 다르게 보여주는 분기도 지원합니다. 작성 중인 내용은 자동으로 저장됩니다.
폼 목록 — /forms
편집기 — 페이지와 문항 구성
폼 편집기 — /forms/{id}/edit
| 문항 유형 | 비고 |
|---|---|
| 단답형 · 장문형 | 텍스트 입력. 정규식으로 입력 형식을 검증할 수 있습니다(고급 설정). |
| 단일 선택 · 다중 선택 | 선택지별로 다음에 어느 페이지로 보낼지 분기를 지정할 수 있습니다. |
| 날짜 | 날짜 선택 입력. |
화면 상단에는 항상 저장 상태 표시줄이 떠 있습니다. 입력을 멈추면 자동으로 저장되므로 별도로 저장 버튼을 계속 누르지 않아도 되지만, 다른 화면으로 옮기기 전에는 표시줄이 "저장됨"으로 바뀌었는지 한 번 확인하는 습관을 들이세요.
접수 상태 바꾸기
폼 상세 화면 하단에서 접수를 시작하거나 마감할 수 있습니다. 접수를 마감하면 공개 링크에 들어온 응답자는 더 이상 새 응답을 제출할 수 없고, 이미 제출된 응답은 그대로 남습니다.
응답 확인
/forms/{id}/responses /forms/{id}/responses/{rid}
제출된 응답을 훑어보고, 필요하면 승인·반려로 상태를 매깁니다.
응답 목록 — /forms/{id}/responses (상태 클릭 시 변경 창)
응답 상세 화면 하단의 이전 · 다음 버튼으로 목록을 다시 열지 않고도 연속으로 검토할 수 있습니다.
공개 폼 — 응답자가 보는 화면
/f/{formId} 로그인 없이 접근 가능
운영진이 만든 폼의 공개 링크를 응답자에게 공유하면, 응답자는 이 화면에서 어드민 로그인 없이 작성합니다. 다만 회원 식별이 필요한 폼은 응답자에게도 Google 로그인을 요구할 수 있습니다.
공개 폼 작성 화면 — /f/{formId}
마지막 페이지까지 마치고 제출하면 완료 화면으로 넘어가며, 이후에는 같은 링크로 다시 들어가도 재작성할 수 없습니다(폼이 재제출을 허용하지 않는 한).
내 계정
/my
본인이 직접 고칠 수 있는 정보와, 운영진만 바꿀 수 있는 정보가 한 화면에서 분리돼 보입니다.
- 이름
- 이지원
- 학번
- 20231234
- 학과
- 컴퓨터학부
- 학년
- 3학년
- 전화번호
- 010-****-5678
- 기수
- 15기
- 등급
- 정회원
- 상태
- 활동
- 현재역할
- 회장 대표
내 계정 — /my
학번·이메일·기수·등급·상태·역할은 본인이 직접 바꿀 수 없습니다. 잘못 등록됐다면 운영진(회원 관리 권한자)에게 요청하세요.
배지 · 표기 범례
화면 전반에서 반복되는 시각 표기
상태 배지 톤
마감 표기
| 배지 | 의미 |
|---|---|
| D-3, D-1 … | 마감까지 남은 일수 |
| D-DAY | 오늘이 마감일 — 아직 지연은 아닙니다 |
| D+2 · 지연 | 마감을 넘긴 상태. 빨간 글자·배지로 표시됩니다 |
| 마감임박 | 마감 3일 이내 |
목록 스크롤 — "더 보기"
목록은 페이지 번호가 아니라 더 보기 버튼으로 다음 묶음을 이어 받습니다. 전체 개수는 알 수 있지만 "3페이지로 바로 이동" 같은 기능은 없습니다.
권한 안내
버튼이 안 눌리거나 메뉴가 안 보일 때
이동은 감추고, 동작은 잠급니다. 갈 수 없는 메뉴는 사이드바에서 아예 보이지 않지만, 이미 보고 있는 화면 안의 버튼은 사라지지 않고 잠긴 채 남아 사유를 알려줍니다. 버튼에 마우스를 올려 이유를 확인하세요.
| 증상 | 의미 |
|---|---|
| 버튼이 흐리게 잠겨 있다 | 그 동작에 필요한 권한이 없습니다. 마우스를 올리면 어떤 권한이 필요한지 나옵니다. |
| 멀쩡하던 화면에서 갑자기 403 | 권한이 방금 바뀐 것입니다. 화면이 자동으로 최신 상태로 다시 맞춥니다 — 그래도 안 되면 새로고침하세요. |
| 조회는 되는데 저장만 안 된다 | 조회 권한과 쓰기 권한이 분리된 화면입니다(하위 업무 유형 관리 등). 정상 동작입니다. |