feat:영업파트너 고객관리 인계일 컬럼 동적 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
김보곤
2026-02-19 16:27:12 +09:00
parent 4ddc1efa34
commit 6a7a8d00d0
5 changed files with 93 additions and 4 deletions

View File

@@ -192,6 +192,7 @@ private function getIndexData(Request $request): array
$prospect->hq_status_label = $management?->hq_status_label ?? '대기';
$prospect->manager_user = $management?->manager;
$prospect->contracted_at = $management?->contracted_at;
$prospect->handover_at = $management?->handover_at;
$prospect->commission = $this->loadMergedCommission($management);
@@ -239,6 +240,7 @@ private function getIndexData(Request $request): array
$prospect->hq_status_label = $management?->hq_status_label ?? '대기';
$prospect->manager_user = $management?->manager;
$prospect->contracted_at = $management?->contracted_at;
$prospect->handover_at = $management?->handover_at;
// 수당 정보 (management가 있는 경우)
$prospect->commission = $this->loadMergedCommission($management);
@@ -301,14 +303,47 @@ public function updateHqStatus(int $id, Request $request)
$prospect = TenantProspect::findOrFail($id);
$management = SalesTenantManagement::findOrCreateByProspect($prospect->id);
$management->update([
'hq_status' => $request->input('hq_status'),
]);
$newStatus = $request->input('hq_status');
$updateData = ['hq_status' => $newStatus];
// 인계로 변경 시 오늘 날짜 자동 세팅, 다른 상태로 변경 시 초기화
if ($newStatus === SalesTenantManagement::HQ_STATUS_HANDOVER) {
$updateData['handover_at'] = now();
} else {
$updateData['handover_at'] = null;
}
$management->update($updateData);
return response()->json([
'success' => true,
'hq_status' => $management->hq_status,
'hq_status_label' => $management->hq_status_label,
'handover_at' => $management->handover_at?->format('Y-m-d'),
]);
}
/**
* 인계일 수동 변경
*/
public function updateHandoverDate(int $id, Request $request)
{
$this->checkAdminAccess();
$request->validate([
'handover_at' => 'required|date',
]);
$prospect = TenantProspect::findOrFail($id);
$management = SalesTenantManagement::findOrCreateByProspect($prospect->id);
$management->update([
'handover_at' => $request->input('handover_at'),
]);
return response()->json([
'success' => true,
'handover_at' => $management->handover_at?->format('Y-m-d'),
]);
}