first commit 2
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
if (!defined('_GNUBOARD_')) exit;
|
||||
|
||||
// 이 파일은 write_update.php 파일의 가장 마지막, 페이지 이동 직전에 include 됩니다.
|
||||
// 고객 또는 상담가가 견적서를 처음 작성(w='')하거나 수정(w='u')할 때 동작합니다.
|
||||
|
||||
if (($w == '' || $w == 'u' || $w=='r') && isset($wr_id) && $wr_id) {
|
||||
|
||||
// 1. EstimateManager 클래스를 포함합니다.
|
||||
include_once(G5_ADMIN_PATH . '/order_manage/classes/EstimateManager.class.php');
|
||||
|
||||
try {
|
||||
// 2. EstimateManager 인스턴스를 생성합니다.
|
||||
$estimateManager = new EstimateManager();
|
||||
|
||||
if (!isset($_POST['estimate']) || empty($_POST['estimate'])) {
|
||||
return; // 견적 데이터가 없으면 처리하지 않음
|
||||
}
|
||||
|
||||
// 3. [핵심 수정] 새로운 메서드를 호출하여 견적 데이터를 저장/업데이트합니다.
|
||||
// 폼에서 넘어온 모든 $_POST 데이터를 그대로 전달합니다.
|
||||
|
||||
if ($w == '' || ($w == 'u' && empty($write['wr_reply']))) {
|
||||
// 🔥 고객 견적 신청 (신규 작성/원본 글 수정)
|
||||
$estimate_id = $estimateManager->saveCustomerRequest($wr_id, $_POST);
|
||||
error_log('고객 견적 저장 결과 - wr_id: ' . $wr_id . ', 결과: ' . ($estimate_id ? '성공' : '실패'));
|
||||
}
|
||||
// 💡 [수정] 대리점 기능 비활성화 -> 전문가(Level 9) 또는 관리자(Level 10)에게는 활성화
|
||||
else if (($w == 'r' || ($w == 'u' && !empty($write['wr_parent']))) && ($member['mb_level'] == 9 || $member['mb_level'] == 10)) {
|
||||
// 🔥 전문가/관리자 견적 제안 (답변 작성/답변 수정)
|
||||
// saveAgentProposal 로직은 대리점용이지만, 전문가/관리자가 작성하는 경우에도 동일한 DB 구조를 사용한다면
|
||||
// 이 메서드를 활용하거나 별도의 전문가용 메서드를 호출해야 할 수 있음.
|
||||
// 여기서는 기존 로직(대리점 로직)을 재사용하여 "대리점이 작성한 것처럼" 동작하게 함.
|
||||
|
||||
$estimate_id = $estimateManager->saveAgentProposal($wr_id, $_POST);
|
||||
error_log('전문가/관리자 견적 제안 저장 결과 - 답변글ID: ' . $wr_id . ', 결과: ' . ($estimate_id ? '성공' : '실패'));
|
||||
}
|
||||
else {
|
||||
// 일반 사용자가 r 모드로 접근 시도한 경우 등
|
||||
// error_log('견적 제안 권한 없음 - wr_id: ' . $wr_id);
|
||||
}
|
||||
|
||||
if (!$estimate_id) {
|
||||
// 견적서 저장 실패 시 로그를 남깁니다.
|
||||
error_log("견적서 저장 실패: wr_id={$wr_id}");
|
||||
}
|
||||
|
||||
} catch (Exception $e) {
|
||||
// 예외 발생 시(예: DB 오류) 처리
|
||||
error_log("견적서 저장 중 예외 발생: " . $e->getMessage());
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user