gtag 추가
This commit is contained in:
@@ -190,6 +190,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { useGtag } from 'vue-gtag-next';
|
||||
import { ref, reactive, computed, onMounted, watch } from 'vue';
|
||||
import clubService from '@/services/clubService';
|
||||
import { useClubStore } from '@/stores/clubStore';
|
||||
@@ -368,7 +369,8 @@ const loadMembers = async () => {
|
||||
|
||||
// 새 회원 추가 다이얼로그 열기
|
||||
const openNewMemberDialog = () => {
|
||||
member.value = {
|
||||
dialogMode.value = 'new';
|
||||
member.value = {
|
||||
name: '',
|
||||
gender: null,
|
||||
memberTypeObj: null,
|
||||
@@ -376,7 +378,6 @@ const openNewMemberDialog = () => {
|
||||
email: '',
|
||||
handicap: 0
|
||||
};
|
||||
dialogMode.value = 'new';
|
||||
memberDialog.value = true;
|
||||
};
|
||||
|
||||
@@ -392,6 +393,8 @@ watch(() => member.value.gender, (newGender) => {
|
||||
});
|
||||
|
||||
// 회원 수정 다이얼로그 열기
|
||||
const gtag = useGtag();
|
||||
|
||||
const editMember = (data) => {
|
||||
member.value = {
|
||||
...data
|
||||
@@ -410,12 +413,18 @@ const hideDialog = () => {
|
||||
const saveMember = async () => {
|
||||
try {
|
||||
const memberData = { ...member.value };
|
||||
|
||||
const isNew = dialogMode.value === 'new';
|
||||
const response = isNew
|
||||
? await clubService.addClubMember(clubId.value, memberData)
|
||||
: await clubService.updateClubMember(clubId.value, memberData.id, memberData);
|
||||
|
||||
// Google Analytics 이벤트 추적 - 회원 저장
|
||||
gtag.event(isNew ? 'add_member' : 'edit_member', {
|
||||
'event_category': '회원관리',
|
||||
'event_label': isNew ? '새 회원 추가' : '회원 정보 수정',
|
||||
'value': 1
|
||||
});
|
||||
|
||||
toast.add({
|
||||
severity: 'success',
|
||||
summary: '성공',
|
||||
@@ -444,6 +453,12 @@ const deleteMember = async () => {
|
||||
try {
|
||||
await clubService.deleteClubMember(clubId.value, selectedMember.value.id);
|
||||
deleteDialog.value = false;
|
||||
// Google Analytics 이벤트 추적 - 회원 삭제
|
||||
gtag.event('delete_member', {
|
||||
'event_category': '회원관리',
|
||||
'event_label': '회원 삭제',
|
||||
'value': 1
|
||||
});
|
||||
toast.add({ severity: 'success', summary: '성공', detail: '회원이 삭제되었습니다.', life: 3000 });
|
||||
await loadMembers();
|
||||
} catch (error) {
|
||||
@@ -453,6 +468,14 @@ const deleteMember = async () => {
|
||||
};
|
||||
|
||||
|
||||
onMounted(() => {
|
||||
// Google Analytics 페이지뷰 추적
|
||||
gtag.pageview({
|
||||
page_title: '회원 관리',
|
||||
page_path: window.location.pathname,
|
||||
page_location: window.location.href
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
Reference in New Issue
Block a user