Merge pull request '콘텐츠 가격 수정, 시그니처 정렬' (#21) from test into main

Reviewed-on: #21
This commit is contained in:
klaus 2024-05-29 17:16:28 +00:00
commit 4cdcf1d0b6
3 changed files with 99 additions and 6 deletions

View File

@ -1,7 +1,7 @@
import Vue from 'vue' import Vue from 'vue'
async function getSignatureList(page) { async function getSignatureList(page, sort) {
return Vue.axios.get('/creator-admin/signature?page=' + (page - 1) + "&size=20"); return Vue.axios.get('/creator-admin/signature?page=' + (page - 1) + "&size=20" + "&sort-type=" + sort);
} }
async function createSignature(formData) { async function createSignature(formData) {

View File

@ -227,6 +227,20 @@
</v-col> </v-col>
</v-row> </v-row>
</v-card-text> </v-card-text>
<v-card-text>
<v-row align="center">
<v-col cols="4">
가격
</v-col>
<v-col cols="8">
<v-text-field
v-model="audio_content.price"
label="가격"
required
/>
</v-col>
</v-row>
</v-card-text>
<v-card-text> <v-card-text>
<v-row> <v-row>
<v-col cols="4"> <v-col cols="4">
@ -652,7 +666,7 @@ export default {
audio_content: { audio_content: {
price: 0, price: 0,
is_adult: false, is_adult: false,
is_generate_preview: true, is_generate_preview: false,
is_comment_available: true, is_comment_available: true,
}, },
audio_contents: [], audio_contents: [],
@ -699,6 +713,7 @@ export default {
this.audio_content.id = item.audioContentId this.audio_content.id = item.audioContentId
this.audio_content.title = item.title this.audio_content.title = item.title
this.audio_content.detail = item.detail this.audio_content.detail = item.detail
this.audio_content.price = item.price
this.audio_content.is_adult = item.isAdult this.audio_content.is_adult = item.isAdult
this.audio_content.is_comment_available = item.isCommentAvailable this.audio_content.is_comment_available = item.isCommentAvailable
this.audio_content.cover_image_url = item.coverImageUrl this.audio_content.cover_image_url = item.coverImageUrl
@ -963,6 +978,10 @@ export default {
request.isCommentAvailable = this.audio_content.is_comment_available request.isCommentAvailable = this.audio_content.is_comment_available
} }
if (this.audio_content.price !== this.selected_audio_content.price) {
request.price = this.audio_content.price
}
if (this.audio_content.cover_image !== null) { if (this.audio_content.cover_image !== null) {
formData.append("coverImage", this.audio_content.cover_image) formData.append("coverImage", this.audio_content.cover_image)
} }

View File

@ -20,6 +20,57 @@
</v-btn> </v-btn>
</v-col> </v-col>
</v-row> </v-row>
<v-row class="row-sort">
<v-col>
<input
id="sort-newest"
v-model="sort_type"
type="radio"
value="NEWEST"
class="radio-sort"
@change="changeSortType"
>
<label
for="sort-newest"
class="radio-label-sort"
>
최신순
</label>
</v-col>
<v-col>
<input
id="sort-can-high"
v-model="sort_type"
type="radio"
value="CAN_HIGH"
class="radio-sort"
@change="changeSortType"
>
<label
for="sort-can-high"
class="radio-label-sort"
>
높은캔순
</label>
</v-col>
<v-col>
<input
id="sort-can-low"
v-model="sort_type"
type="radio"
value="CAN_LOW"
class="radio-sort"
@change="changeSortType"
>
<label
for="sort-can-low"
class="radio-label-sort"
>
낮은캔순
</label>
</v-col>
<v-col cols="10" />
</v-row>
<v-row> <v-row>
<v-col> <v-col>
<v-data-table <v-data-table
@ -346,6 +397,7 @@ export default {
image_url: null, image_url: null,
is_active: null, is_active: null,
selected_signature_can: {}, selected_signature_can: {},
sort_type: 'NEWEST',
headers: [ headers: [
{ {
@ -449,11 +501,15 @@ export default {
this.show_modify_dialog = true this.show_modify_dialog = true
}, },
async changeSortType() {
await this.getSignatureList();
},
async getSignatureList() { async getSignatureList() {
this.isLoading = true this.is_loading = true
try { try {
let res = await api.getSignatureList(this.page); let res = await api.getSignatureList(this.page, this.sort_type);
if (res.status === 200 && res.data.success === true) { if (res.status === 200 && res.data.success === true) {
const data = res.data.data const data = res.data.data
@ -469,7 +525,7 @@ export default {
} catch (e) { } catch (e) {
this.notifyError("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.") this.notifyError("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
} finally { } finally {
this.isLoading = false this.is_loading = false
} }
}, },
@ -639,4 +695,22 @@ export default {
display: block; display: block;
margin: 0 auto; margin: 0 auto;
} }
.row-sort {
margin-top: 40px;
}
.radio-sort {
display: none;
}
.radio-label-sort {
font-weight: normal;
color: black;
}
.radio-sort:checked + .radio-label-sort {
font-weight: bold;
color: #3bb9f1;
}
</style> </style>