Commit Graph

1307 Commits

Author SHA1 Message Date
김보곤
8f6911121c feat: [payroll] 급여관리 기능 구현
- Payroll, PayrollSetting 모델 생성
- PayrollService 구현 (CRUD, 자동계산, 간이세액표, 일괄생성)
- Web/API 컨트롤러 생성 (HTMX/JSON 이중 응답)
- 급여 목록, 통계 카드, 급여 설정 뷰 생성
- 라우트 추가 (web.php, api.php)
- 상태 흐름: draft → confirmed → paid
2026-02-27 09:13:10 +09:00
김보곤
5283487f7e feat: [attendance] 근태현황/근태관리 메뉴 분리
- 근태현황(/hr/attendances): 조회 전용 (목록/캘린더/요약)
- 근태관리(/hr/attendances/manage): CRUD + 승인 관리
- table-manage.blade.php: 관리용 테이블 (체크박스/수정/삭제)
- table.blade.php: 조회용 테이블 (GPS 포함, CRUD 제거)
- API 컨트롤러 view 파라미터로 테이블 분기
2026-02-27 09:10:43 +09:00
김보곤
82513645e7 fix: [leave] 휴가 신청 422 에러 메시지 표시 개선 2026-02-27 09:06:52 +09:00
김보곤
8c4b6a2786 feat: [leave] 휴가관리 Phase 1 구현
- Leave, LeavePolicy, LeaveGrant 모델 생성
- LeaveBalance 헬퍼 메서드 추가 (useLeave, restoreLeave, canUse)
- LeaveService 핵심 로직 (신청, 승인, 반려, 취소, 잔여연차, 통계)
- API 컨트롤러 (목록, 등록, 승인/반려/취소, 잔여연차, 통계, CSV 내보내기)
- 뷰 컨트롤러 + 라우트 등록 (web, api)
- Blade 뷰 (index + 3개 탭 partials: table, balance, stats)
2026-02-27 09:06:52 +09:00
김보곤
2f739d0d55 feat: [hr] 입퇴사자 현황 페이지 구현
- EmployeeService에 근속기간 조회/통계/CSV 내보내기 메서드 추가
- API 컨트롤러에 tenure/tenureExport 엔드포인트 추가
- EmployeeTenureController 뷰 컨트롤러 생성
- 통계 카드 6개 (전체/재직/퇴직/평균근속/올해입사/올해퇴사)
- HTMX 테이블 (사원/부서/직책/상태/입사일/퇴사일/근속기간/근속일수)
- 필터: 이름검색, 부서, 상태, 입사기간 범위, 정렬
- CSV 엑셀 다운로드 기능
2026-02-27 09:04:07 +09:00
김보곤
adc587292f feat: [attendance] 근태관리 2차 고도화 8개 기능 구현
- 월간 캘린더 뷰 (사원별 필터, 날짜 클릭 등록, HTMX 월 이동)
- 일괄 등록 (다수 사원 체크박스 선택 후 일괄 등록, upsert 처리)
- 사원별 월간 요약 (상태별 카운트 + 총 근무시간 집계 테이블)
- 초과근무 알림 (주 48h 경고 / 52h 위험 배너)
- 근태 승인 워크플로우 (신청→승인→근태 레코드 자동 생성)
- 자동 결근 처리 (매일 23:50 스케줄러, 주말 제외)
- 연차 관리 연동 (휴가 등록 시 leave_balances 자동 차감)
- GPS 출퇴근 UI (테이블 GPS 아이콘 + 상세 모달)
- 탭 네비게이션 (목록/캘린더/요약/승인) HTMX 기반 전환
2026-02-26 21:29:25 +09:00
김보곤
402e264290 feat: [attendance] 근태현황 Phase 1 구현
- 1-1: 등록/수정 버그 수정 (created_by 덮어쓰기 방지)
- 1-2: 엑셀(CSV) 다운로드 기능 추가
- 1-3: 체크박스 일괄 삭제 기능 추가
- 1-4: 월간 통계 연/월 선택 기능 추가
2026-02-26 21:29:25 +09:00
김보곤
607593ff3f feat: [hr] 근태현황 MNG 프론트엔드 구현
- Attendance 모델 (attendances 테이블, 상태/색상 매핑, check_in/check_out accessor)
- AttendanceService (목록/월간통계/CRUD, 부서/사원 드롭다운)
- API 컨트롤러 (HTMX+JSON 이중 응답, stats/index/store/update/destroy)
- 페이지 컨트롤러 (index 페이지 렌더링)
- 웹/API 라우트 등록 (hr/attendances, api/admin/hr/attendances)
- index.blade.php (통계카드+필터+등록/수정 모달)
- partials/table.blade.php (HTMX 부분 로드 테이블)
2026-02-26 21:29:25 +09:00
김보곤
d2c3ce678a feat: [journal] 일반전표입력에 카드사용내역 분개 기능 추가
- JournalEntryController에 cardTransactions/storeFromCard/cardJournals/deleteCardJournal 메서드 추가
- 카드거래 분개 라우트 4개 추가 (card-transactions, store-from-card, card-journals, delete-card-journal)
- JournalEntryList에 카드거래 탭/필터/통계 통합
- CardJournalEntryModal 컴포넌트 추가 (공제/불공제에 따른 기본 분개 라인 자동 생성)
- source_type=ecard_transaction 호환 (기존 ecard 페이지 분개와 동일 키)
2026-02-26 21:18:08 +09:00
김보곤
2edce0d282 feat: [hr] 사원등록 기능 확장
- 기본정보에 주민등록번호 필드 추가
- 급여이체정보 섹션 추가 (이체은행, 예금주, 계좌번호)
- 부양가족 정보 섹션 추가 (동적 행 추가/삭제)
- 첨부파일 업로드/다운로드/삭제 기능 추가
- 은행 목록 config/banks.php 설정 파일 생성
- show 페이지 주민등록번호 뒷자리 마스킹 처리
2026-02-26 20:21:24 +09:00
김보곤
5e06f53d2d feat: [employee] 입사일/퇴직일 컬럼 헤더에 정렬 아이콘 추가
- 입사일/퇴직일 컬럼 클릭 시 오름차순/내림차순 토글
- 현재 정렬 상태를 아이콘으로 표시 (↑ 오름차순, ↓ 내림차순, ↕ 미선택)
- 기본 정렬: 입사일 빠른순(오름차순)
2026-02-26 19:46:16 +09:00
김보곤
ce942e8999 feat: [employee] 사원관리 정렬 기능 추가 (입사일/퇴직일)
- 정렬 드롭다운 추가: 입사일 빠른순/최신순, 퇴직일 최신순/빠른순, 상태순
- 기본 정렬을 입사일 빠른순으로 설정
- JSON 컬럼(json_extra.hire_date, resign_date) 기반 정렬
2026-02-26 19:46:16 +09:00
김보곤
39061c244d refactor: [hr] 사번 필드 제거, 비밀번호 제거, 퇴직일 추가 2026-02-26 19:27:15 +09:00
김보곤
20fd449c39 feat: [hr] 사원 등록 - 기존 직원 불러오기 기능 추가
- 검색 API (GET /api/admin/hr/employees/search-users)
- 테넌트 소속 + 사원 미등록 사용자 검색
- 기존 사용자 선택 시 Employee만 생성 (User 생성 건너뜀)
- Alpine.js 검색 UI (포커스시 목록, debounce 검색, 선택/해제)
2026-02-26 18:40:01 +09:00
김보곤
2b3cb3bb92 fix: [hr] 사원 등록/수정 에러 메시지 화면 표시 개선
- API 컨트롤러 store/update/destroy에 try-catch 추가
- debug 모드에서 상세 에러 메시지 포함 응답
- create/edit 뷰에 showToast 기반 에러 표시 추가
- 422 validation 에러 필드별 메시지 표시
- 500 서버 에러 시 사용자 친화적 메시지 표시
2026-02-26 18:40:01 +09:00
김보곤
56e4ce937a feat: [hr] 직급/직책 인라인 추가 기능 구현
- Position 생성 API 엔드포인트 추가 (POST /admin/hr/positions)
- 직급/직책 select 옆 "+" 버튼으로 모달 열기
- 모달에서 이름 입력 → API 저장 → 드롭다운에 자동 추가 및 선택
- 중복 key 방지 (기존 값이면 그대로 반환)
- create/edit 뷰 모두 적용
2026-02-26 18:40:01 +09:00
김보곤
29ca022321 feat: [hr] 인사관리 사원관리 Phase 1 구현
- Employee, Position 모델 생성 (tenant_user_profiles, positions 테이블)
- EmployeeService 생성 (CRUD, 통계, 필터/검색/페이지네이션)
- 뷰 컨트롤러(HR/EmployeeController) + API 컨트롤러 생성
- Blade 뷰: index(통계카드+HTMX테이블), create, edit, show, partials/table
- 라우트: web.php(/hr/employees/*), api.php(/admin/hr/employees/*)
2026-02-26 18:40:01 +09:00
김보곤
b3a2ced834 fix: [finance] 일일자금일보 입금 테이블 잔액 열 제거 2026-02-26 16:48:46 +09:00
김보곤
d7b8e866b2 fix: [holidays] 대량 등록 모달에 기존 등록 데이터 표시
- 해당 연도에 등록된 휴일이 있으면 기존 데이터를 텍스트 형식으로 표시
- 등록된 데이터가 없을 때만 기본 공휴일 예시 표시
2026-02-26 14:37:57 +09:00
김보곤
5793845def feat: [business-cards] 처리완료 삭제 기능 추가 및 기본 매수 500매로 변경
- 관리자 화면 처리완료 카드에 삭제 버튼 추가
- processed 상태만 삭제 가능 (서비스 검증)
- 파트너 명함신청 기본 매수 100매 → 500매 변경
2026-02-26 14:06:36 +09:00
김보곤
b01d7a0ed6 fix: [equipment] 설비 사진 원본 비율 유지 + 클릭 시 모달 확대 2026-02-26 13:28:40 +09:00
김보곤
3084b3d219 feat: [equipment] 수리이력 등록에 목업 데이터 자동 입력 버튼 추가
- 번개 아이콘 클릭 시 전체 필드에 랜덤 목업 데이터 채움
- 설비/수리자는 기존 옵션에서 랜덤 선택
- 외주업체는 보전구분이 외주일 때만 입력
2026-02-26 13:28:40 +09:00
김보곤
c187a0fca3 feat: [equipment] 목록 필터 상태를 sessionStorage에 저장/복원
- 검색/필터 후 수정 페이지 이동 → 목록 복귀 시 필터 유지
- 페이지네이션, select 변경 시에도 자동 저장
2026-02-26 13:28:40 +09:00
김보곤
e228348deb fix: [equipment] 사진 URL을 Signed URL로 변경 (비공개 GCS 버킷 대응)
- getPhotoUrls(): 공개 URL → GoogleCloudStorageService.getSignedUrl() 사용
- basic-info 탭: 동일하게 Signed URL로 변경
- URL 유효기간 120분
2026-02-26 13:28:40 +09:00
김보곤
dc40e3dc6b fix: [equipment] Ctrl+V 붙여넣기 클립보드 이미지 추출 수정
- DataTransferItemList 전통적 for 루프로 변경 (for...of 호환성 문제)
- kind === 'file' 조건 추가로 이미지 파일만 정확히 필터링
2026-02-26 13:28:40 +09:00
김보곤
eca26d557f feat: [equipment] 사진 업로드에 Ctrl+V 클립보드 붙여넣기 기능 추가
- create/edit 페이지에서 Ctrl+V로 클립보드 이미지 즉시 업로드
- 드롭존에 붙여넣기 안내 텍스트 추가
2026-02-26 13:28:40 +09:00
김보곤
0c9d2fd441 feat: [equipment] 사진 멀티 업로드(GCS) + 엑셀 Import 기능 추가
- EquipmentPhotoService: GCS 기반 사진 업로드/삭제/조회 (최대 10장)
- EquipmentImportService: 엑셀 파싱 → 설비 일괄 등록 (한글 헤더 자동 매핑)
- API: 사진 업로드/목록/삭제, Import 미리보기/실행 엔드포인트
- 뷰: create/edit에 드래그앤드롭 사진 업로드, show에 갤러리 표시
- import.blade.php: 3단계 Import UI (파일선택 → 미리보기 → 결과)
- phpoffice/phpspreadsheet 패키지 추가
2026-02-26 13:28:40 +09:00
김보곤
d9c9739de1 fix: [equipment] API URL 경로 /api 접두사 누락 수정
- 모든 HTMX hx-get 및 fetch() URL에 /api 접두사 추가
- /admin/equipment → /api/admin/equipment 일괄 변경
- 대상: index, create, edit, show, inspections, repairs 뷰 7개 파일
2026-02-26 13:28:18 +09:00
김보곤
11a7f89216 feat: [equipment] 설비관리 모듈 구현
- 모델 6개 (Equipment, InspectionTemplate, Inspection, InspectionDetail, Repair, Process)
- 서비스 3개 (Equipment, Inspection, Repair)
- API 컨트롤러 3개 + FormRequest 4개
- Blade 컨트롤러 + 라우트 등록
- 뷰: 대시보드, 등록대장(CRUD), 일상점검표(캘린더 그리드), 수리이력
2026-02-26 13:28:18 +09:00
김보곤
f0178d8928 fix: [vat] 부가세 관리에서 매출(종이세금계산서) 항목 삭제
- 요약 테이블 행 삭제
- 필터 드롭다운 옵션 삭제
- 컨트롤러 계산 로직 및 stats 응답 제거
- React state 초기값에서 관련 필드 제거
2026-02-26 13:24:39 +09:00
김보곤
405fbaf5da fix: [sms] 발신번호 02-6347-0005로 수정 2026-02-26 12:40:49 +09:00
김보곤
bcf64dc95c fix: [sms] API URL을 Blade route() 헬퍼로 변경 및 에러 상세 표시
- 하드코딩 URL → route() 기반으로 환경별 자동 대응
- 422 에러 시 validation 에러 메시지 상세 표시
2026-02-26 12:40:49 +09:00
김보곤
f12f0c34c9 feat: [sms] 번개 아이콘 클릭 시 테스트 데이터 자동 입력 2026-02-26 12:40:49 +09:00
김보곤
6d63c37371 fix: [sms] 발신번호를 고정 텍스트로 변경 (셀렉트박스 제거) 2026-02-26 12:40:49 +09:00
김보곤
964f0030dd fix: [sms] 발신번호 기본값 02-0005-0006 설정 2026-02-26 12:40:49 +09:00
김보곤
401ac649ae feat: [sms] SMS 발송 테스트 메뉴 추가
- SmsController (WEB): 카카오톡 패턴 동일한 HX-Redirect 처리
- BarobillSmsController (API): 발송, 발신번호 조회/확인, 전송상태 조회
- SMS 발송 테스트 블레이드 뷰: 발신번호 목록, 바이트 카운터, 발송 결과 표시
- web.php: barobill/sms/send 라우트 추가
- api.php: barobill/sms API 라우트 4개 추가
2026-02-26 12:40:49 +09:00
김보곤
59f68e272c feat: [esign] OTP 인증코드 SMS 발송 기능 추가
- send_method가 alimtalk/both일 때 SMS로 OTP 발송
- 바로빌 sendATKakaotalkEx SMS 대체발송 기능 활용
- SMS 실패 시 이메일 폴백
- auth.blade.php UI 메시지 SMS/이메일 분기 표시
2026-02-26 09:14:16 +09:00
김보곤
e9325ff74d feat: [esign] 알림톡 템플릿 선택 기능 추가
- 바로빌 승인된 알림톡 템플릿 목록 조회 API 추가
- 서명 요청 발송 시 템플릿 선택 드롭다운 UI 추가
- 템플릿 미리보기 (본문 + 버튼) 표시
- send()에 template_name 파라미터 전달 지원
- 미선택 시 기존 하드코딩 폴백 유지
2026-02-26 08:27:02 +09:00
김보곤
8c24b0ae24 feat: [equipment] 설비관리 도움말 페이지 추가
- /equipment/guide 라우트 및 컨트롤러 메서드 추가
- guide.blade.php 신규 생성 (히어로+TOC+5섹션+FAQ)
- academy-glossary에 equipment 도메인 용어 20개 추가
- 품질인정심사(ISO 9001) 대응 가이드, 보전 기초지식 포함
2026-02-25 22:15:15 +09:00
김보곤
36fdb75641 fix: [academy] 경정청구 페이지 이미지 hover 확대 효과 복원 2026-02-25 17:07:25 +09:00
김보곤
dc56468f6b feat: [academy] 경정청구 페이지 UI/UX 개선
- CSS 애니메이션 시스템 추가 (fadeUp, popIn, float, drawLine 등 @keyframes)
- 히어로 배너 SVG 일러스트 업그레이드 (세금문서→SAM→환급 플로우)
- 섹션별 SVG 인포그래픽 5종 추가 (플로우차트, Before/After, 타임라인, 효익 아이콘, SAM 아키텍처)
- IntersectionObserver 기반 스크롤 애니메이션 (AOS)
- KPI 카운트업 애니메이션 (requestAnimationFrame easeOut)
- TOC 활성 섹션 하이라이트
- 프로세스 토글 CSS 트랜지션 적용
- 미사용 데드코드 제거 (lightbox, hover-preview DOM/CSS/JS)
2026-02-25 17:07:25 +09:00
김보곤
62cd1c0938 feat: [academy] 경정청구 메뉴 추가
- 아카데미 하위에 경정청구 페이지 신규 생성
- sales 경정청구 자료를 MNG 아카데미 패턴으로 변환
- SAM 제안 형태: 청년 판정, 권역 판정, 데이터 통합 자동화
- Chart.js 차트 4종 포함 (소요시간, 비용절감, 오류유형, 이용자추이)
- 학습 가이드 (용어 해설 + 퀴즈 5문항)
2026-02-25 17:07:25 +09:00
d1363336b3 Merge pull request '운영 배포: 전자계약 도장 기본값, 아카데미 Git 관리도구, 명함신청, 미수금/미지급금 이월잔액' (#2) from develop into main
Reviewed-on: #2
2026-02-25 15:00:00 +09:00
김보곤
8b25140a81 fix: [esign] 서명 방법 기본값을 도장으로 변경
- signMode 기본값 signature → stamp 변경
- creator(본사)에서도 서명/도장 선택 UI 표시
2026-02-25 13:47:41 +09:00
883ec23ed9 fix:바로빌 페이지 Babel in-browser 경고 억제
React/Babel CDN 직접 로드를 partials.react-cdn으로 통일

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 13:35:59 +09:00
김보곤
9a7c548246 style: Pint 포맷팅 적용 2026-02-25 11:45:01 +09:00
김보곤
68b1622a4e feat: [academy] Git 관리도구 페이지 추가
- 라우트, 컨트롤러 메서드 추가
- git-tools.blade.php 뷰 생성 (violet 테마, 8개 섹션)
- 용어집 git-tools 도메인 20개 용어 추가
2026-02-25 11:44:56 +09:00
김보곤
f624ae65a2 fix: [academy] docker-commands @push('scripts')가 @endsection 밖으로 이동 및 @endpush 추가 2026-02-25 11:22:37 +09:00
김보곤
597c081571 fix: [academy] Docker 명령어 페이지 @endsection 중복 제거 2026-02-25 11:15:22 +09:00
김보곤
c81166b571 feat: [academy] Docker 명령어 페이지 추가
- Docker 기본 확인/컨테이너 제어/진입&실행/로그/Compose/볼륨&네트워크/트러블슈팅/위험명령어 8개 섹션
- SAM 전용 docker exec 패턴 표 포함
- 용어집 23개 항목 추가
2026-02-25 10:33:43 +09:00