|
|
@@ -411,8 +411,43 @@
|
|
|
| computed
|
|
|
************************************************************************/
|
|
|
const currentUser = computed(() => {
|
|
|
- // 실제로는 인증 스토어에서 가져옴
|
|
|
- return JSON.parse(localStorage.getItem("authStore"))?.auth || {};
|
|
|
+ // 인증 스토어에서 사용자 정보 가져오기
|
|
|
+ const authStore = useAuthStore();
|
|
|
+
|
|
|
+ console.log('🔍 currentUser computed 디버깅:', {
|
|
|
+ 'authStore.auth': authStore.auth,
|
|
|
+ 'snsTempData': authStore.auth.snsTempData,
|
|
|
+ 'localStorage': localStorage.getItem("authStore")
|
|
|
+ });
|
|
|
+
|
|
|
+ // SNS 로그인 시 snsTempData가 있는 경우 해당 데이터 사용
|
|
|
+ if (authStore.auth.snsTempData?.user) {
|
|
|
+ console.log('✅ SNS 로그인 데이터 사용:', authStore.auth.snsTempData.user);
|
|
|
+ return authStore.auth.snsTempData.user;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 일반 로그인 시 auth 데이터 사용
|
|
|
+ if (authStore.auth.seq) {
|
|
|
+ console.log('✅ 일반 로그인 데이터 사용:', authStore.auth);
|
|
|
+ return authStore.auth;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 로컬스토리지 백업
|
|
|
+ try {
|
|
|
+ const localAuthData = JSON.parse(localStorage.getItem("authStore"))?.auth;
|
|
|
+ console.log('💾 localStorage 데이터:', localAuthData);
|
|
|
+
|
|
|
+ if (localAuthData?.snsTempData?.user) {
|
|
|
+ console.log('✅ localStorage SNS 데이터 사용:', localAuthData.snsTempData.user);
|
|
|
+ return localAuthData.snsTempData.user;
|
|
|
+ }
|
|
|
+
|
|
|
+ console.log('✅ localStorage 일반 데이터 사용:', localAuthData);
|
|
|
+ return localAuthData || {};
|
|
|
+ } catch (e) {
|
|
|
+ console.error('❌ localStorage authStore 파싱 오류:', e);
|
|
|
+ return {};
|
|
|
+ }
|
|
|
});
|
|
|
|
|
|
/************************************************************************
|
|
|
@@ -445,7 +480,7 @@
|
|
|
sortBy: sortOption.value,
|
|
|
page: currentPage.value,
|
|
|
size: pagination.value.pageSize,
|
|
|
- influencerSeq: currentUser.value.seq,
|
|
|
+ influencerSeq: currentUser.value.SEQ || currentUser.value.seq || currentUser.value.ID || currentUser.value.id,
|
|
|
};
|
|
|
|
|
|
useAxios()
|
|
|
@@ -473,7 +508,7 @@
|
|
|
const loadMyRequests = async () => {
|
|
|
try {
|
|
|
const params = {
|
|
|
- influencerSeq: currentUser.value.seq,
|
|
|
+ influencerSeq: currentUser.value.SEQ || currentUser.value.seq || currentUser.value.ID || currentUser.value.id,
|
|
|
// status 파라미터 제거하여 모든 상태의 요청을 로드
|
|
|
};
|
|
|
|
|
|
@@ -516,15 +551,36 @@
|
|
|
try {
|
|
|
submitting.value = true;
|
|
|
|
|
|
+ // 사용자 seq 필드 확인 (SNS 로그인 시 대문자 SEQ, 일반 로그인 시 소문자 seq)
|
|
|
+ console.log('🔍 currentUser.value 전체:', currentUser.value);
|
|
|
+ console.log('🔍 SEQ 후보들:', {
|
|
|
+ 'SEQ': currentUser.value.SEQ,
|
|
|
+ 'seq': currentUser.value.seq,
|
|
|
+ 'id': currentUser.value.id,
|
|
|
+ 'ID': currentUser.value.ID
|
|
|
+ });
|
|
|
+
|
|
|
+ const userSeq = currentUser.value.SEQ || currentUser.value.seq || currentUser.value.ID || currentUser.value.id;
|
|
|
+
|
|
|
+ console.log('🎯 최종 선택된 userSeq:', userSeq);
|
|
|
+
|
|
|
+ if (!userSeq) {
|
|
|
+ console.error('❌ userSeq가 비어있음:', currentUser.value);
|
|
|
+ $toast.error('로그인 정보를 확인할 수 없습니다. 다시 로그인해주세요.');
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
const params = {
|
|
|
vendorSeq: requestModal.value.vendor.SEQ,
|
|
|
- influencerSeq: currentUser.value.seq,
|
|
|
+ influencerSeq: userSeq,
|
|
|
requestType: "INFLUENCER_REQUEST",
|
|
|
requestMessage: requestModal.value.message,
|
|
|
- requestedBy: currentUser.value.seq,
|
|
|
+ requestedBy: userSeq,
|
|
|
commissionRate: requestModal.value.commissionRate,
|
|
|
specialConditions: requestModal.value.specialConditions,
|
|
|
};
|
|
|
+
|
|
|
+ console.log('📤 API 호출 파라미터:', params);
|
|
|
|
|
|
useAxios()
|
|
|
.post("/api/vendor-influencer/request", params)
|
|
|
@@ -556,7 +612,7 @@
|
|
|
try {
|
|
|
const params = {
|
|
|
mappingSeq: requestSeq,
|
|
|
- cancelledBy: currentUser.value.SEQ,
|
|
|
+ cancelledBy: currentUser.value.SEQ || currentUser.value.seq || currentUser.value.ID || currentUser.value.id,
|
|
|
cancelReason: "사용자에 의한 취소",
|
|
|
};
|
|
|
|