로딩 중...
+로딩 중...
현재 위치에서 출퇴근을 기록하세요
+{userName}
+{userDepartment} {userPosition}
+{currentTime}
+출퇴근 가능 범위({SITE_LOCATION.radius}m) 밖에 있습니다.
+ )} +{userName}
-- {userDepartment} {userPosition} -
+현재 위치에서 출퇴근을 기록하세요
{currentTime}
-{currentDate}
- {attendanceStatus === 'checked-in' && ( -출근중
- )} -{userName}
+{userDepartment} · {userPosition}
+{currentTime}
+- 출퇴근 가능 범위({SITE_LOCATION.radius}m) 밖에 있습니다. -
- )} + {!isInRange && distance !== null && ( +출퇴근 가능 범위({SITE_LOCATION.radius}m) 밖에 있습니다.
+ )} + + {attendanceStatus === 'checked-in' && ( +출근 완료
+출근 시간: {checkInTime}
+데이터를 불러오는 중...
++ {checkpoint.highlights && checkpoint.highlights.length > 0 ? ( + renderMessageWithHighlights(checkpoint.message, checkpoint.highlights) + ) : ( + <> + {checkpoint.message} + {checkpoint.highlight && ( + {checkpoint.highlight} + )} + > + )} +
++ {card.label} +
++ {formatCardAmount(card.amount)} +
+ {/* subItems 배열이 있는 경우 (매출, 입금 등 다중 서브 정보) */} + {card.subItems && card.subItems.length > 0 && ( ++ {label} +
++ {typeof count === 'number' ? `${count}건` : count} +
+ {subLabel && ( ++ {subLabel} +
+ )} +전사 경영 현황 및 핵심 지표 · {currentTime}
+전체 업무 프로세스 실시간 모니터링
+진행중
+{detail.customer}
+{detail.item}
++ {Math.round(detail.amount / 1000000)}M원 +
+ )} + {'progress' in detail && detail.progress !== undefined && ( ++ 검사: + {detail.testResult} +
+ )} + {'scheduleDate' in detail && detail.scheduleDate && ( ++ 예정일: + {detail.scheduleDate} +
+ )} + {'shipDate' in detail && detail.shipDate && ( ++ 출고일: + {detail.shipDate} +
+ )} +통합 일정 및 업무 관리 시스템
++ 📅 캘린더 컴포넌트는 공간 절약을 위해 간소화되었습니다. 전체 기능은 원래 위치에서 확인하실 수 있습니다. +
+목표
+{(ceoData.salesTarget.daily.target / 1000000).toFixed(0)}M
+실적
+{(ceoData.salesTarget.daily.actual / 1000000).toFixed(0)}M
+목표
+{(ceoData.salesTarget.monthly.target / 100000000).toFixed(1)}억
+실적
+{(ceoData.salesTarget.monthly.actual / 100000000).toFixed(1)}억
+목표
+{(ceoData.salesTarget.yearly.target / 1000000000).toFixed(0)}0억
+실적
+{(ceoData.salesTarget.yearly.actual / 1000000000).toFixed(0)}2억
+평균 달성률
++ {(ceoData.salesTarget.monthlyTrend.reduce((sum, m) => sum + m.achievement, 0) / ceoData.salesTarget.monthlyTrend.length).toFixed(1)}% +
+최고 달성률
++ {Math.max(...ceoData.salesTarget.monthlyTrend.map(m => m.achievement)).toFixed(1)}% +
+최저 달성률
++ {Math.min(...ceoData.salesTarget.monthlyTrend.map(m => m.achievement)).toFixed(1)}% +
+평균 미수금
++ {(ceoData.salesTarget.monthlyTrend.reduce((sum, m) => sum + m.receivable, 0) / ceoData.salesTarget.monthlyTrend.length).toFixed(0)}M원 +
+최고 미수금
++ {Math.max(...ceoData.salesTarget.monthlyTrend.map(m => m.receivable))}M원 +
+최저 미수금
++ {Math.min(...ceoData.salesTarget.monthlyTrend.map(m => m.receivable))}M원 +
+월 총 매입액
+{Math.round(ceoData.purchaseData.monthlyAmount / 100000000)}억원
+매출 대비 매입률
+{ceoData.purchaseData.salesRatio}%
+{Math.round(supplier.amount / 1000000)}M원
+{supplier.ratio}%
+{receivable.name}
+{receivable.days}일 경과
+{receivable.amount.toLocaleString()}원
+기초잔고
+{Math.round(ceoData.cashFlow.opening / 100000000)}억원
+기말잔고
+{Math.round(ceoData.cashFlow.closing / 100000000)}억원
+{transaction.description}
+{transaction.time}
+미출고 주문
+지연 중
+{order.orderNo}
+긴급 요청
+{request.requestTime}
+재고 총액
+안전재고 이하
+현재: {item.currentStock} / 안전: {item.safetyStock}
+장기재고
+과재고
+{Math.round(item.value / 1000000)}M원
+생산량 대비 효율성
+{ceoData.materialEfficiency.efficiency}%
+자재 폐기율
+{ceoData.materialEfficiency.wasteRate}%
+출근율
+결근
+지각
+적합률
+부적합률
+승인 대기 중
+실시간 인력 관리 대시보드
+Vacation Status
+Business Trip Status
+Department Status
+Recent Activities
+30일 이상 연체
+{Math.round(ceoData.receivables.over30Days / 100000000)}억원
+미수금 회수율
+{ceoData.receivables.collectionRate}%
+통합 일정 및 업무 관리 시스템
++ {calendarDate ? '선택된 날짜의 상세 정보와 일정을 확인하세요' : '캘린더에서 날짜를 클릭하여 상세 정보를 확인하세요'} +
+{event.title}
+{employee.name}
+{employee.department}
+{employee.reason}
+{trip.name}
+{trip.department}
+{trip.purpose}
+{trip.destination}
+출근: {dayAttendance.employees}명
+고객: {dayOutgoing.customer}
+작업: {dayMaterials.activity}
+대상: {dayMaterials.items}품목
+해당 날짜에 등록된 일정이 없습니다.
+ +{customer.name}
+{customer.amount.toLocaleString()}원
+{notification.title}
+{userName}
-{userPosition}
-{userName}
+{userPosition}
+{userName}
+{userPosition}
+회사 선택
+ +