test #72

Merged
klaus merged 5 commits from test into main 2025-05-20 07:21:28 +00:00
1 changed files with 96 additions and 10 deletions
Showing only changes of commit 256f65e370 - Show all commits

View File

@ -39,6 +39,10 @@
{{ item.title }}
</template>
<template v-slot:item.policyType="{ item }">
{{ policy_type_map[item.policyType] }}
</template>
<template v-slot:item.actionType="{ item }">
{{ action_type_map[item.actionType] }}
</template>
@ -47,6 +51,10 @@
{{ item.threshold }}
</template>
<template v-slot:item.availableCount="{ item }">
{{ item.availableCount }}
</template>
<template v-slot:item.period="{ item }">
{{ item.startDate }} ~ {{ item.endDate }}
</template>
@ -101,6 +109,19 @@
required
/>
</v-card-text>
<v-card-text v-if="selected_point_policy === null">
<v-radio-group
v-model="point_policy.policy_type"
label="지급 유형 선택"
>
<v-radio
v-for="item in policy_type_list"
:key="item.value"
:label="item.name"
:value="item.value"
/>
</v-radio-group>
</v-card-text>
<v-card-text v-if="selected_point_policy === null">
<v-radio-group
v-model="point_policy.action_type"
@ -128,6 +149,13 @@
required
/>
</v-card-text>
<v-card-text v-if="selected_point_policy === null">
<v-text-field
v-model="point_policy.available_count"
label="참여 가능 횟수"
required
/>
</v-card-text>
<v-card-text>
<v-row align="center">
<v-col cols="4">
@ -210,24 +238,51 @@ export default {
show_write_dialog: false,
action_type_list: [
{
name: '회원가입',
value: 'SIGN_UP'
},
{
name: '본인인증',
value: 'USER_AUTHENTICATION'
},
{
name: '콘텐츠 댓글',
value: 'CONTENT_COMMENT'
},
{
name: '구매한 콘텐츠 댓글',
value: 'ORDER_CONTENT_COMMENT'
},
{
name: '라이브 연속 청취 30분',
value: 'LIVE_CONTINUOUS_LISTEN_30'
},
],
action_type_map: {
'SIGN_UP': '회원가입',
'USER_AUTHENTICATION': '본인인증'
'USER_AUTHENTICATION': '본인인증',
'CONTENT_COMMENT': '콘텐츠 댓글',
'ORDER_CONTENT_COMMENT': '구매한 콘텐츠 댓글',
'LIVE_CONTINUOUS_LISTEN_30': 'LIVE_CONTINUOUS_LISTEN_30',
},
policy_type_list: [
{
name: '매일',
value: 'DAILY'
},
{
name: '전체',
value: 'TOTAL'
},
],
policy_type_map: {
'DAILY': '매일',
'TOTAL': '전체',
},
point_policy: {
title: '',
policy_type: '',
action_type: '',
threshold: 0,
available_count: 0,
point: 0,
start_date: '',
end_date: ''
@ -245,6 +300,12 @@ export default {
sortable: false,
value: 'title',
},
{
text: '지급유형',
align: 'center',
sortable: false,
value: 'policyType',
},
{
text: '액션',
align: 'center',
@ -257,6 +318,12 @@ export default {
sortable: false,
value: 'threshold',
},
{
text: '참여 가능 횟수',
align: 'center',
sortable: false,
value: 'availableCount',
},
{
text: '기간',
align: 'center',
@ -306,8 +373,10 @@ export default {
this.selected_point_policy = item;
this.point_policy = {
title: item.title,
policy_type: item.policyType,
action_type: item.actionType,
threshold: item.threshold,
available_count: item.availableCount,
point: item.pointAmount,
start_date: item.startDate,
end_date: item.endDate,
@ -322,18 +391,23 @@ export default {
return
}
if (this.point_policy.policy_type.trim() === '') {
this.notifyError('지급유형을 선택하세요')
return
}
if (this.point_policy.action_type.trim() === '') {
this.notifyError('액션을 선택하세요')
return
}
if (isNaN(this.point_policy.threshold)) {
this.notifyError('참여 횟수는 숫자만 입력 가능합니다.')
this.notifyError('참여 해야하는 횟수는 숫자만 입력 가능합니다.')
return
}
if (this.point_policy.threshold <= 0) {
this.notifyError('참여 횟수는 1이상 입력 가능합니다.')
this.notifyError('참여 해야하는 횟수는 1이상 입력 가능합니다.')
return
}
@ -342,6 +416,16 @@ export default {
return
}
if (isNaN(this.point_policy.available_count)) {
this.notifyError('참여 가능 횟수는 숫자만 입력 가능합니다.')
return
}
if (this.point_policy.available_count <= 0) {
this.notifyError('참여 가능 횟수는 1이상 입력 가능합니다.')
return
}
if (this.point_policy.start_date.trim() === '') {
this.notifyError('정책 시작 날짜를 입력하세요')
return
@ -354,8 +438,10 @@ export default {
this.selected_charge_event = null;
this.point_policy = {
title: '',
policy_type: '',
action_type: '',
threshold: 0,
available_count: 0,
point: 0,
start_date: '',
end_date: ''
@ -371,8 +457,10 @@ export default {
try {
const request = {
'title': this.point_policy.title,
'policyType': this.point_policy.policy_type,
'actionType': this.point_policy.action_type,
'threshold': this.point_policy.threshold,
'availableCount': this.point_policy.available_count,
'pointAmount': this.point_policy.point,
'startDate': this.point_policy.start_date,
'endDate': this.point_policy.end_date
@ -418,8 +506,6 @@ export default {
request.isActive = this.point_policy.is_active
}
console.log(request);
const res = await api.updatePointPolicyList(this.selected_point_policy.id, request)
if (res.status === 200 && res.data.success === true) {