김보곤
a44bb85f76
fix: [finance] 계정코드 매핑 이미지 기준 재수정
...
- 204→25300(미지급금), 205→26200(미지급비용)
- 207→25400(예수금), 208→25500(부가세예수금)
- 826→83700(건물관리비), 253→30800(장기성지급어음)
- 501→45100(상품매출원가), 117→13500(부가세대급금)
- 201→25100(외상매입금)
- 801 대표이사→80100(임원급여), 나머지→80200(직원급여) 분기
2026-03-17 18:15:34 +09:00
김보곤
0cc0ddf4b9
fix: [finance] 전체 하드코딩 계정코드 3자리→5자리 수정
...
- 급여전표: 801→80100, 207→20700, 205→20500
- 카드전표: 135→13500, 826→82600, 205→20500
- 홈택스분개: 108→10800, 401→40100, 208→20800, 501→50100, 117→11700, 201→20100
- 일반전표: 135→13500, 253→25300, 103→10300
2026-03-17 16:21:40 +09:00
김보곤
5de768b7f6
fix: [finance] 미수금/미지급금 계정코드 5자리로 수정
...
- 외상매출금 108 → 10800
- 미지급금 204 → 20400
- 미지급비용 205 → 20500
2026-03-17 16:13:19 +09:00
김보곤
9432eb1bb8
feat: [finance] 은행거래 레코드 삭제 기능 추가 (관리자 전용)
...
- 은행거래 행에 레코드 삭제 버튼 추가 (분개 유무 무관)
- 삭제 시 연결된 분개 전표도 함께 삭제
- 관리자(isAdmin) 권한 검증 적용
2026-03-17 13:18:05 +09:00
김보곤
c04ef81523
feat: [finance] 일반전표 목록에서 관리자 삭제 기능 추가
...
- 목록 행에 삭제 아이콘 추가 (수정 아이콘 옆, 관리자에게만 표시)
- 컨트롤러 destroy()에 관리자 권한 검증 추가
- 은행거래/수동전표 모두 삭제 가능
2026-03-17 13:07:07 +09:00
김보곤
2096b2c65a
refactor: [finance] 계정과목 카테고리를 API 영문 표준으로 통일
...
- AccountCode 모델에 API와 동일한 필드 추가 (sub_category, parent_code, depth 등)
- 카테고리 상수 정의 (CATEGORY_ASSET 등)
- 블레이드 뷰에서 영문 카테고리 키 + 한글 라벨 매핑 적용
2026-03-17 11:00:12 +09:00
김보곤
1c25ff9fd1
fix: [finance] 계정과목 설정 모달 중복 코드 조회 수정
...
- AccountCode 모델에 BelongsToTenant trait 추가하여 테넌트별 필터링 적용
- accountCodeStore에서 하드코딩된 tenant_id를 세션 기반으로 변경
2026-03-17 09:22:50 +09:00
김보곤
a8dfa85858
feat: [dashboard] 달력 휴가 표시에 사유 추가
2026-03-17 08:23:27 +09:00
김보곤
fd1dde90e7
feat: [dashboard] 달력에 승인된 휴가/근태 표시 기능 추가
...
- Leave 모델에서 승인된 휴가 데이터 조회
- 달력에 [연차] 홍길동 형태로 휴가 표시
- 휴가 유형별 색상 구분 (연차/반차: amber, 병가/경조사: pink, 출장/외근: blue 등)
2026-03-16 21:11:49 +09:00
김보곤
a04a10f15c
feat: [finance] 일일업무일지 기간 보기 기능 추가
...
- 시작일~종료일 설정하여 기간 내 업무일지 한번에 조회
- 데이터 없는 날짜는 자동 필터링 (작성된 일지만 표시)
- 카드형 읽기 뷰 (날짜/항목/메모/회고/달성률)
- 편집 버튼으로 단건 모드 전환 가능
2026-03-16 16:33:07 +09:00
김보곤
540ce35ec1
fix: [daily-work-log] 파일 저장 정책 준수 (docs 기준)
...
- 경로: {tenant_id}/daily-work-log/{year}/{month}/{hex}.ext 형식으로 변경
- 파일명: UUID → 64bit 난수 hex (bin2hex(random_bytes(8)))
- 최대 크기: 10MB → 20MB (file-storage-guide.md 기준)
2026-03-16 16:00:40 +09:00
김보곤
1b43000382
feat: [daily-work-log] 메모/회고 파일 업로드 기능 추가
...
- 메모, 회고 섹션에 파일 첨부 기능 추가
- 드래그앤드롭 및 클릭 업로드 지원
- 이미지 썸네일 미리보기, 파일 다운로드/삭제
- Boards\File 모델 재사용 (document_type: daily_work_log)
2026-03-16 15:56:16 +09:00
김보곤
a352fa105b
fix: [leave] 결재 승인 시 soft delete된 근태 레코드 중복 오류 수정
...
- SoftDeletes로 삭제된 Attendance 레코드가 있을 때 updateOrCreate가
기존 레코드를 찾지 못해 INSERT 시도 → unique 제약 위반 발생
- withTrashed() 추가하여 soft delete된 레코드도 조회하고 복원하도록 수정
2026-03-16 15:28:21 +09:00
김보곤
f6876cf481
fix: [sales] Alpine.js promoFreeMonths 미정의 및 closeModal 미정의 오류 수정
...
- product-selection: Alpine x-data에 promoFreeMonths 속성 추가 및 저장 데이터에 포함
- price-simulator: promoFreeMonths 속성 추가 및 resetPromo()에 초기화 추가
- DemoTenantController: HX-Boosted 제외 조건 제거하여 hx-boost 탐색 시에도 전체 페이지 로드
2026-03-16 14:54:17 +09:00
김보곤
c7c2fb1f2d
fix: [sales] 무료 체험 기간을 1주일(7일)로 변경
...
- 가격 시뮬레이터: 1/2/3/6개월 선택 → 없음/1주일 토글로 변경
- promoFreeMonths → promoFreeTrial (boolean)으로 변환
- 연 구독료 계산: 1주일분(7/30) 차감 방식 적용
- 데모 테넌트: free_months → free_trial 필드 변경
- 계약 컨트롤러: validation 규칙 업데이트
2026-03-15 11:13:07 +09:00
김보곤
27c95cb252
fix: [sales] 수당 계산 로직을 정책(시뮬레이터)과 일치시킴
...
- 유치수당률: 개인 5% / 단체 3% → 개인/단체 동일 3%로 통일
- 매니저 수당: 구독료 정액 → 개발비 × 5% (비율 기반)로 변경
- 상수 정리: DEFAULT_INDIVIDUAL/GROUP_REFERRER_RATE → DEFAULT_REFERRER_RATE 통합
- 상수 추가: DEFAULT_MANAGER_RATE = 5.00 (개인 가입만 적용)
- recalculateCommission()도 동일 로직 적용
2026-03-14 18:15:27 +09:00
김보곤
23aa38baef
feat: [sales] 영업 시나리오 상품선택에 프로모션 할인 기능 추가
...
- 개발비 할인 (비율/금액/전액면제), 구독료 할인, 무료기간, 메모
- 상품 변경 시 프로모션 최대값 자동 조절 (clampPromoValues)
- 프로모션 데이터 management options에 저장/로드
- 합계 영역에 프로모션 적용 금액, 절감액 표시
2026-03-14 16:53:13 +09:00
김보곤
2c652a7bc7
fix: [영업관리] codebridge DB 테이블 exists 검증 오류 수정
...
- tenant_prospects, tenants, sales_products 등이 codebridge DB에 있으므로
exists:테이블명 → exists:codebridge.테이블명 으로 변경
- SalesScenarioController, SalesContractController, ConsultationController,
SalesProductController 일괄 수정
2026-03-14 16:41:05 +09:00
김보곤
8bbf436a37
feat: [demo-tenant] 프로모션 설정 기능 추가
...
- 생성 모달에 프로모션 섹션 추가 (개발비 할인/면제, 구독료 할인, 무료기간)
- Alpine.js 기반 슬라이더/토글 UI, 자동 비율 조절
- options JSON에 promotion 키로 프로모션 데이터 저장
- 상세 모달에 프로모션 조건 표시
2026-03-14 16:32:42 +09:00
김보곤
9ec944f3f7
fix: [demo] addDays()에 int 캐스팅 추가 (Carbon TypeError 수정)
2026-03-14 16:22:27 +09:00
김보곤
c405f875f2
fix: [demo] findAndAuthorize 권한 로직을 index()와 일치시킴
...
- 파트너 없는 HQ 멤버(본사 직원)도 데모 상세 조회 허용
- 파트너인 경우에만 소유권 체크
2026-03-14 16:16:21 +09:00
김보곤
0df2badbdf
fix: [상품관리] 최저가 설정을 상품별로 변경
...
- 카테고리 레벨 최저가 → 상품별 최저가로 변경
- 상품 추가/수정 모달에 최저 개발비, 최저 구독료 입력 필드 추가
- 빨간 잠금 아이콘 + '절대 이 금액 이하로 내릴 수 없음' 경고 표시
- 상품 카드에 최저가 정보 표시 (설정된 경우)
2026-03-14 14:46:23 +09:00
김보곤
bd81eebf07
feat: [상품관리] 카테고리별 최저 개발비/최저 구독료 설정 기능 추가
...
- 카테고리 관리에서 최저 개발비, 최저 구독료 설정 가능
- 상품 추가/수정 시 최저가 이하 입력 차단 (서버 검증)
- 상품 목록에 최저가 안내 배너 표시 (경고 아이콘)
- 상품 모달에서 실시간 최저가 미달 경고 표시 (빨간 테두리)
2026-03-14 14:43:03 +09:00
김보곤
70f35e1e7b
feat: [demo] MNG 데모 체험 관리 페이지 추가
...
- DemoTenantController: CRUD + 연장/전환/삭제
- Blade 뷰: index, demo-list, create-modal, show-modal
- 라우트: sales/demo-tenants 그룹 등록
- 메뉴: 영업관리 하위에 '데모 체험 관리' 추가
2026-03-14 14:43:03 +09:00
김보곤
16437c542a
feat: [sales] 가격 시뮬레이터 추가
...
- 영업파트너용 상품 조합별 예상 비용/수당 실시간 시뮬레이션
- 개인/단체 가입유형별 수당률 자동 전환
- 재량권 상품 가격 슬라이더 조정 기능
- 할인율, 본사 마진율 실시간 계산
2026-03-14 14:43:03 +09:00
845ffb58b8
fix: [document-template] R2 file_id 기반 이미지 URL 수정
...
- 문서양식 섹션 이미지를 file_id 기반 R2 프록시 URL로 변경
- getSectionImageUrl, _previewImageUrl에 file_id 우선 처리 추가
- 서버사이드 Blade(print, show)도 file_id 기반 URL 생성
- DocumentTemplateSection 모델에 file_id fillable 추가
- 업로드 응답에 file_id 반환, 복제 시 file_id 복사
2026-03-13 21:51:08 +09:00
432888980b
Revert "fix: [tenant-console] 테넌트 콘솔 분리작업"
...
This reverts commit 8da1702e
2026-03-13 21:24:18 +09:00
c3bc7912dd
Revert "feat: [tenant] 컨텍스트 메뉴 테넌트 설정 + 콘솔 사이드바 DB 메뉴 적용"
...
This reverts commit cb254cf138 .
2026-03-13 21:21:21 +09:00
cb254cf138
feat: [tenant] 컨텍스트 메뉴 테넌트 설정 + 콘솔 사이드바 DB 메뉴 적용
...
- 컨텍스트 메뉴 "이 테넌트로 전환" → "테넌트 설정" (보라색, 설정 아이콘)
- context-menu.js에서 직접 window.open 처리 (openTenantConsole 의존 제거)
- 테넌트 콘솔 사이드바 하드코딩 → DB 기반 메뉴 시스템 전환
- SidebarMenuService에 getTenantMenusBySection() 추가
- AppServiceProvider에 tenant-console-sidebar View Composer 추가
2026-03-13 21:18:54 +09:00
김보곤
91d51a39a9
feat: [finance] 일일업무일지 기능 추가
...
- 마이그레이션: daily_work_logs, daily_work_log_items 테이블 생성
- 모델: DailyWorkLog, DailyWorkLogItem (멀티테넌트, SoftDeletes)
- 컨트롤러: CRUD + 완료토글 + 이전일지 복사
- 뷰: React(Babel) 기반, 날짜 화살표 네비게이션, 달성률 표시
- 라우트: finance/daily-work-log 하위 API 라우트
2026-03-13 18:10:37 +09:00
김보곤
bc72fadf2e
fix: [esign] 근로계약서 연봉계약종료연도 및 연봉 상세내역 자동반영
...
- 연봉계약 기간: salary_effective_date 없을 때 입사일 기념일 기준
현재 계약기간 산출 (직전 기념일~다음 기념일-1일)
- API 응답에 기본급, 고정연장근로수당, 식대, 월급여, 통상시급 추가
- labelMap에 기본급, 고정연장근로수당, 식대, 통상시급 패턴 추가
2026-03-13 17:59:42 +09:00
김보곤
19b3db0499
feat: [bim] BIM 생성기 메뉴 추가
...
- 방화셔터/방화문/방화댐퍼 파라메트릭 3D 설계
- 실시간 Three.js 프리뷰 + IfcProduct JSON 생성
- IFC STEP 파일 내보내기
- PMIS 사이드바에 BIM 생성기 메뉴 등록
2026-03-13 17:41:30 +09:00
김보곤
ba0824dc1d
feat: [rd] 방화셔터 BIM 뷰어 메뉴 추가
...
- Three.js 기반 파라메트릭 방화셔터 3D 모델링
- 제품타입별(철재/스크린) 기본값 및 자동 계산
- 6방향 카메라 프리셋, 개폐율/투명도 조절
- 부품별 표시 토글, 레이캐스팅 선택, 스크린샷 기능
2026-03-13 17:41:22 +09:00
8da1702e47
fix: [tenant-console] 테넌트 콘솔 분리작업
...
- 라우트 파라미터 충돌 수정 (Layer 4 확장)
- TenantScope 글로벌 스코프가 테넌트 콘솔에서 올바른 tenant_id 사용하도록 수정
- 감사로그 상세 테넌트 콘솔 레이아웃 적용
- 테넌트 전환: 모달 → 컨텍스트 메뉴로 이동, 스타일 변경 (녹색+전환아이콘)
- 테넌트 전환 이벤트를 openTenantConsole 호출로 통일
- 사이드바 스타일 메인과 통일 + 리포트 주의사항 정리
2026-03-13 10:18:23 +09:00
a077bd5710
fix: [user] forceDeleteUser에 tenant_user_profiles 삭제 추가
...
- 영구삭제 시 orphan tenant_user_profiles 방지
2026-03-13 10:16:09 +09:00
김보곤
2102f4a398
feat: [pmis] PMIS 자료실/안전관리/품질관리 기능 추가 및 개선
...
- 자료실 하위 3개 메뉴: 자료보관함, 매뉴얼, 공지사항
- 자료보관함: 폴더 트리 + 파일 업로드/다운로드/삭제
- 매뉴얼/공지사항: 게시판형 CRUD + 첨부파일
- 안전관리: 안전보건교육, TBM현황, 위험성평가, 재해예방조치
- 품질관리: 시정조치 UI 페이지
- 대시보드: 슈퍼관리자 전용 레거시 사이트 참고 카드
- 작업일보/출면일보 오류 수정 및 기능 개선
- 설비 사진 업로드, 근로계약서 종료일 수정
2026-03-12 21:11:21 +09:00
김보곤
3074e45ca9
feat: [pmis] 작업일보 6탭 CRUD 구현
...
- 마스터 + 인원/장비/자재/공사량/작업사진 6테이블 마이그레이션
- 6개 탭: 작업내용, 인원, 장비, 자재, 공사량, 작업사진
- 작업내용: 금일/명일 텍스트 + 날씨/기온/강수/미세먼지 메타
- 전일누계 + 금일 + 총계 누적 패턴 (인원/장비/자재/공사량)
- 작업사진: 파일 업로드 + 사진목록/사진정보 2단 레이아웃
- 상태별 버튼 제어 (작성중→저장/삭제, 검토중→읽기전용)
- 양식보기: 3페이지 전체화면 뷰어 (작업일보/인원장비/자재)
- 검토자 지정 모달, 캘린더 스트립, 번개 랜덤데이터
2026-03-12 17:06:23 +09:00
김보곤
6c968dbb6f
feat: [pmis] 출면일보 CRUD 구현
...
- 일별 출면일보 마스터 + 인원/장비 3테이블 마이그레이션
- 캘린더 스트립 (1~31일) 날짜 선택 및 상태 닷 표시
- 인원/장비 탭 CRUD (추가/수정/삭제/번개 랜덤데이터)
- 검토자 확인 모달 (조직도 + 검색 + 검토라인)
- 양식보기 모달 (출면일보/장비일보 인쇄 양식)
- 날씨/특이사항/상태 업데이트 API
2026-03-12 16:43:36 +09:00
김보곤
1bd5ba817a
feat: [pmis] 공사량관리 CRUD 구현
...
- pmis_work_volumes 마이그레이션/모델/컨트롤러 생성
- 공사량 탭 (등록, 수정, 삭제, 일보적용 토글)
- 실적현황 탭 (전일누계, 금일, 총계 표시)
- 공사량정보 모달 (공종, 세부공종, 단위, 설계량)
- 번개 아이콘 랜덤 데이터 추가 기능
2026-03-12 15:59:51 +09:00
김보곤
304c689c00
fix: [hr] 월 고정연장근로시간 최대값 52시간으로 제한
2026-03-12 14:39:08 +09:00
김보곤
38002c3c50
feat: [pmis] 자재관리 CRUD 구현
...
- 자재등록 탭: 등록/수정/삭제, 페이지네이션, 검색, 필터
- 입고현황 탭: 자재 목록 기반 입고 현황 조회
- 기준자재정보 모달: 30종 건설자재 선택 등록
- 번개 아이콘 랜덤 데이터 등록 기능
2026-03-12 14:37:45 +09:00
김보곤
de6ef7472a
feat: [hr] 사원 연봉 등록 시 급여 산정 테이블 추가
...
- 고정연장근로수당 산정 계산 로직 구현 (기본급, 통상시급, 고정OT 자동 계산)
- 수정 모드에서 실시간 급여 산정 미리보기 테이블
- 조회 모드에서 요약/상세 급여 산정 내역 표시
- 식대, 월 고정연장근로시간 입력 필드 추가
- 계산 결과를 salary_info에 저장하여 급여관리에서 활용 가능
2026-03-12 14:34:21 +09:00
김보곤
9889658caa
feat: [pmis] 장비관리 실제 CRUD 구현
...
- PmisEquipmentController: 장비 CRUD API
- PmisEquipment 모델 추가
- 3개 탭: 장비등록(CRUD), 출역현황, 투입현황
- 장비정보 모달 (저장/수정/삭제)
- API 라우트 추가 (equipments)
2026-03-12 14:13:38 +09:00
김보곤
babccc0f23
feat: [pmis] 인원관리 실제 CRUD 구현
...
- PmisWorkforceController: 인원/직종 CRUD API
- PmisConstructionWorker, PmisJobType 모델 추가
- 인원등록 탭: 실제 DB CRUD, 페이지네이션, 필터, 모달
- 직종 44개 시드 데이터 등록
- API 라우트 추가 (workers, job-types)
2026-03-12 14:02:54 +09:00
김보곤
c8fd3e2739
feat: [pmis] 시공관리 하위메뉴 6개 추가 및 인원관리 페이지 구현
...
- 시공관리 하위메뉴: 인원관리, 장비관리, 자재관리, 공사량관리, 출면일보, 작업일보
- 인원관리 4개 탭 구현: 인원등록, 출역현황, 투입현황(업체별), 투입현황(근로자별)
- PMIS 사이드바에 시공관리 children 메뉴 추가 (대시보드, BIM 뷰어 포함)
- 나머지 5개 메뉴 placeholder 페이지 생성
2026-03-12 13:52:20 +09:00
김보곤
953cadfd99
feat: [pmis] BIM 뷰어 3D 프로토타입 구현
...
- Three.js 기반 3D 건물 모델 뷰어
- 기둥/보/벽/창/지붕 등 요소별 색상 구분 및 클릭 선택
- 시점 전환(투시도/정면/우측/상부/배면), 요소 토글, 와이어프레임
- PMIS 사이드바 아코디언 메뉴 + BIM 뷰어 링크 추가
2026-03-12 12:39:15 +09:00
김보곤
dbab583e5a
feat: [pmis] PmisWorker 모델 분리 및 개인정보 관리 개선
...
- pmis_workers 전용 모델 생성 (SAM 사원관리와 분리)
- 프로필 API 응답 worker 키로 변경
- 직책/소속업체 편집 기능 추가
- React 컴포넌트 data.user → data.worker 전환
2026-03-12 12:22:55 +09:00
김보곤
bafc40e43d
feat: [juil] 건설PMIS 좌측 사이드바 및 개인정보 관리 모달 구현
...
- PMIS 전용 좌측 사이드바 (사용자 프로필 + 네비게이션 메뉴)
- 개인정보 관리 모달 (보기/수정 모드 전환)
- 연락처, 이메일, 성별 편집 및 서버 저장 기능
- 프로필 조회/수정 JSON API 엔드포인트 추가
- 3컬럼 레이아웃 (좌측 사이드바 + 대시보드 + 우측 퀵메뉴)
2026-03-12 11:17:19 +09:00
김보곤
85c1a8acbe
feat: [juil] 건설PMIS 날씨 위젯 WeatherService API 연동
...
- 기존 대시보드 WeatherService를 활용한 JSON API 추가
- React 날씨 위젯에서 /juil/construction-pmis/weather 호출
- 기상청 API 기반 오늘/내일 날씨, 기온, 강수확률 표시
- Blade weather-icon과 동일한 SVG 아이콘 React 컴포넌트 구현
2026-03-12 11:09:06 +09:00
김보곤
21b8fcdde8
feat: [juil] 건설PMIS 페이지 및 업무 Flow 모달 추가
...
- 건설PMIS 메뉴 페이지 생성 (construction-pmis.blade.php)
- 업무 Flow 보기 버튼 → 모달창 4개 탭 구현
- KCC KOUP 업무 Flow 이미지 4장 포함
- PlanningController에 constructionPmis 메서드 추가
2026-03-12 10:47:33 +09:00