Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
quasar-web-base
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nguyễn Hải Sơn
quasar-web-base
Commits
2ff46e31
Commit
2ff46e31
authored
Jul 16, 2021
by
Tình Trương
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
bf724c73
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
126 additions
and
72 deletions
+126
-72
type.ts
src/assets/type.ts
+15
-0
index.vue
src/components/artist-information/VAB-account/index.vue
+3
-3
index.vue
...mponents/update-info-vab/update-info-vab-dialog/index.vue
+69
-10
index.ts
src/i18n/vi/index.ts
+11
-6
index.vue
src/pages/thong-tin-chung/index.vue
+28
-53
No files found.
src/assets/type.ts
View file @
2ff46e31
...
@@ -520,6 +520,11 @@ export type VABInfoType = {
...
@@ -520,6 +520,11 @@ export type VABInfoType = {
website
:
string
;
website
:
string
;
phone
:
string
;
phone
:
string
;
address
:
string
;
address
:
string
;
insLink
:
string
;
linked
:
string
;
snapchat
:
string
;
twtLink
:
string
;
fbLink
:
string
;
};
};
export
type
DetailVABInfoType
=
{
export
type
DetailVABInfoType
=
{
...
@@ -530,6 +535,11 @@ export type DetailVABInfoType = {
...
@@ -530,6 +535,11 @@ export type DetailVABInfoType = {
website
:
string
;
website
:
string
;
phone
:
string
;
phone
:
string
;
address
:
string
;
address
:
string
;
insLink
:
string
;
linked
:
string
;
snapchat
:
string
;
twtLink
:
string
;
fbLink
:
string
;
};
};
export
type
UpdateVABInfoType
=
{
export
type
UpdateVABInfoType
=
{
...
@@ -540,4 +550,9 @@ export type UpdateVABInfoType = {
...
@@ -540,4 +550,9 @@ export type UpdateVABInfoType = {
website
:
string
;
website
:
string
;
phone
:
string
;
phone
:
string
;
address
:
string
;
address
:
string
;
insLink
:
string
;
linked
:
string
;
snapchat
:
string
;
twtLink
:
string
;
fbLink
:
string
;
};
};
src/components/artist-information/VAB-account/index.vue
View file @
2ff46e31
...
@@ -42,7 +42,7 @@
...
@@ -42,7 +42,7 @@
></UploadImage>
></UploadImage>
</div>
</div>
<div
class=
"col-12"
>
<div
class=
"col-12"
>
<div
class=
"row q-col-gutter-lg"
>
<div
class=
"row q-col-gutter-lg"
style=
"margin-top: -30px"
>
<div
class=
"col-12"
>
<div
class=
"col-12"
>
<q-carousel
<q-carousel
v-if=
"banners.length"
v-if=
"banners.length"
...
@@ -367,7 +367,7 @@
...
@@ -367,7 +367,7 @@
>
>
<q-tooltip>
Xóa story
</q-tooltip>
<q-tooltip>
Xóa story
</q-tooltip>
</q-icon>
</q-icon>
<
!-- <
q-icon
<q-icon
v-if=
"stories.length"
v-if=
"stories.length"
style=
"
style=
"
position: absolute;
position: absolute;
...
@@ -379,7 +379,7 @@
...
@@ -379,7 +379,7 @@
name=
"mdi-pencil-circle"
name=
"mdi-pencil-circle"
@
click=
"updateStory"
@
click=
"updateStory"
><q-tooltip>
Cập nhập story
</q-tooltip>
><q-tooltip>
Cập nhập story
</q-tooltip>
</q-icon>
-->
</q-icon>
</div>
</div>
</q-carousel-slide>
</q-carousel-slide>
</q-carousel>
</q-carousel>
...
...
src/components/update-info-vab/update-info-vab-dialog/index.vue
View file @
2ff46e31
...
@@ -30,14 +30,14 @@
...
@@ -30,14 +30,14 @@
style=
"max-height: calc(100vh - 10rem)"
style=
"max-height: calc(100vh - 10rem)"
>
>
<div
class=
"row q-col-gutter-sm"
>
<div
class=
"row q-col-gutter-sm"
>
<div
class=
"col-6"
>
<div
class=
"col-6"
style=
"margin-top: -12px"
>
<div
class=
"row flex-center"
>
<div
class=
"row flex-center"
>
<div
class=
"q-mt-lg"
>
<div
class=
"q-mt-lg"
>
<q-card
v-if=
"logo !== null"
>
<q-card
v-if=
"logo !== null"
>
<q-img
<q-img
@
click=
"uploadAvatar"
@
click=
"uploadAvatar"
:src=
"logo"
:src=
"logo"
style=
"height:
390px; width: 350px
; cursor: pointer"
style=
"height:
6.8rem; width: 12.5rem
; cursor: pointer"
></q-img>
></q-img>
<q-icon
<q-icon
name=
"mdi-close-circle"
name=
"mdi-close-circle"
...
@@ -55,8 +55,8 @@
...
@@ -55,8 +55,8 @@
@
click=
"uploadAvatar"
@
click=
"uploadAvatar"
v-else
v-else
style=
"
style=
"
height:
390px
;
height:
6.8rem
;
width:
350px
;
width:
12.5rem
;
border: 2px dashed #5d319e;
border: 2px dashed #5d319e;
border-radius: 4px;
border-radius: 4px;
cursor: pointer;
cursor: pointer;
...
@@ -64,8 +64,8 @@
...
@@ -64,8 +64,8 @@
>
>
<div
<div
style=
"
style=
"
height:
390px
;
height:
6.8rem
;
width:
350px
;
width:
12.5rem
;
display: flex;
display: flex;
align-items: center;
align-items: center;
justify-content: center;
justify-content: center;
...
@@ -77,7 +77,10 @@
...
@@ -77,7 +77,10 @@
name=
"mdi-cloud-upload"
name=
"mdi-cloud-upload"
size=
"xl"
size=
"xl"
></q-icon>
></q-icon>
Tải ảnh lên
Tải lên logo
<span
style=
"font-size: 10px"
>
(kích cỡ: 160px x 64px)
</span
>
</div>
</div>
</div>
</div>
<div>
<div>
...
@@ -91,18 +94,45 @@
...
@@ -91,18 +94,45 @@
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"col-6"
>
<q-input
<q-input
:model-value=
"comName"
:model-value=
"comName"
@
update:model-value=
"$emit('update:comName', $event)"
@
update:model-value=
"$emit('update:comName', $event)"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.comName')"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.comName')"
type=
"text"
type=
"text"
class=
"q-my-sm q-pt-
md
"
class=
"q-my-sm q-pt-
xl
"
outlined
outlined
:rules=
"nameRules"
:rules=
"nameRules"
clearable
clearable
></q-input>
></q-input>
<q-input
:model-value=
"facebook"
@
update:model-value=
"$emit('update:facebook', $event)"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.facebook')"
type=
"text"
class=
"q-my-sm"
outlined
clearable
></q-input>
<q-input
:model-value=
"instagram"
@
update:model-value=
"$emit('update:instagram', $event)"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.instagram')"
type=
"text"
class=
"q-my-sm"
outlined
clearable
></q-input>
<q-input
:model-value=
"twitter"
@
update:model-value=
"$emit('update:twitter', $event)"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.twitter')"
type=
"text"
class=
"q-my-sm"
outlined
clearable
></q-input>
</div>
<div
class=
"col-6"
>
<q-input
<q-input
:model-value=
"website"
:model-value=
"website"
@
update:model-value=
"$emit('update:website', $event)"
@
update:model-value=
"$emit('update:website', $event)"
...
@@ -142,6 +172,25 @@
...
@@ -142,6 +172,25 @@
class=
"q-my-sm"
class=
"q-my-sm"
outlined
outlined
clearable
clearable
hide-bottom-space
></q-input>
<q-input
:model-value=
"snapchat"
@
update:model-value=
"$emit('update:snapchat', $event)"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.snapchat')"
type=
"text"
class=
"q-my-sm"
outlined
clearable
></q-input>
<q-input
:model-value=
"linkedin"
@
update:model-value=
"$emit('update:linkedin', $event)"
:label=
"$t('infoVAB.dialogLabel.infoVABLabels.linkedin')"
type=
"text"
class=
"q-my-sm"
outlined
clearable
></q-input>
></q-input>
</div>
</div>
</div>
</div>
...
@@ -341,6 +390,11 @@ export default defineComponent({
...
@@ -341,6 +390,11 @@ export default defineComponent({
phone
:
{
type
:
Number
,
required
:
true
},
phone
:
{
type
:
Number
,
required
:
true
},
email
:
{
type
:
String
,
required
:
true
},
email
:
{
type
:
String
,
required
:
true
},
address
:
{
type
:
String
,
required
:
true
},
address
:
{
type
:
String
,
required
:
true
},
facebook
:
{
type
:
String
,
required
:
true
},
instagram
:
{
type
:
String
,
required
:
true
},
twitter
:
{
type
:
String
,
required
:
true
},
snapchat
:
{
type
:
String
,
required
:
true
},
linkedin
:
{
type
:
String
,
required
:
true
},
bankAccountList
:
{
type
:
Array
as
PropType
<
unknown
[]
>
,
required
:
true
},
bankAccountList
:
{
type
:
Array
as
PropType
<
unknown
[]
>
,
required
:
true
},
},
},
setup
(
_
,
context
)
{
setup
(
_
,
context
)
{
...
@@ -451,6 +505,11 @@ export default defineComponent({
...
@@ -451,6 +505,11 @@ export default defineComponent({
'update:email'
,
'update:email'
,
'update:address'
,
'update:address'
,
'update:logo'
,
'update:logo'
,
'update:facebook'
,
'update:instagram'
,
'update:twitter'
,
'update:snapchat'
,
'update:linkedin'
,
'SetAvatar'
,
'SetAvatar'
,
'deleteAvatar'
,
'deleteAvatar'
,
'saveInfoVAB'
,
'saveInfoVAB'
,
...
...
src/i18n/vi/index.ts
View file @
2ff46e31
...
@@ -841,8 +841,8 @@ export default {
...
@@ -841,8 +841,8 @@ export default {
//thông tin chung
//thông tin chung
infoVAB
:
{
infoVAB
:
{
title
:
'Thông tin
VAB
'
,
title
:
'Thông tin
chung
'
,
uploadImg
:
'Tải lên ảnh logo
VAB
'
,
uploadImg
:
'Tải lên ảnh logo'
,
titleBankAccount
:
'Danh sách tài khoản ngân hàng thụ hưởng'
,
titleBankAccount
:
'Danh sách tài khoản ngân hàng thụ hưởng'
,
tableColumnsInfoVAB
:
{
tableColumnsInfoVAB
:
{
stt
:
'STT'
,
stt
:
'STT'
,
...
@@ -863,7 +863,7 @@ export default {
...
@@ -863,7 +863,7 @@ export default {
},
},
dialogLabel
:
{
dialogLabel
:
{
title
:
{
title
:
{
updateInfoVAB
:
'Cập nhật thông tin
VAB
'
,
updateInfoVAB
:
'Cập nhật thông tin'
,
//ngân hàng
//ngân hàng
addBankAccount
:
'Thêm ngân hàng thụ hưởng'
,
addBankAccount
:
'Thêm ngân hàng thụ hưởng'
,
updateBankAccount
:
'Cập nhật ngân hàng thụ hưởng'
,
updateBankAccount
:
'Cập nhật ngân hàng thụ hưởng'
,
...
@@ -874,6 +874,11 @@ export default {
...
@@ -874,6 +874,11 @@ export default {
phone
:
'Số điện thoại *'
,
phone
:
'Số điện thoại *'
,
email
:
'Email *'
,
email
:
'Email *'
,
address
:
'Địa chỉ *'
,
address
:
'Địa chỉ *'
,
facebook
:
'Facebook'
,
instagram
:
'Instagram'
,
twitter
:
'Twitter'
,
snapchat
:
'Snapchat'
,
linkedin
:
'Linkedin'
,
//ngân hàng
//ngân hàng
cardCode
:
'Số tài khoản *'
,
cardCode
:
'Số tài khoản *'
,
numberCard
:
'Số ghi trên thẻ *'
,
numberCard
:
'Số ghi trên thẻ *'
,
...
@@ -910,11 +915,11 @@ export default {
...
@@ -910,11 +915,11 @@ export default {
confirmDeleteInfoVABTitle
:
'Xác nhận'
,
confirmDeleteInfoVABTitle
:
'Xác nhận'
,
confirmDeleteInfoVABCancelBtnLabel
:
'Huỷ'
,
confirmDeleteInfoVABCancelBtnLabel
:
'Huỷ'
,
confirmDeleteInfoVABContent
:
confirmDeleteInfoVABContent
:
'Bạn có chắc chắn muốn xoá Thông tin
VAB
này không?'
,
'Bạn có chắc chắn muốn xoá Thông tin này không?'
,
},
},
actionMessages
:
{
actionMessages
:
{
deleteInfoVABAccess
:
'Xoá thông tin
VAB
thành công'
,
deleteInfoVABAccess
:
'Xoá thông tin thành công'
,
updateInfoVABAccess
:
'Cập nhật thông tin
VAB
thành công'
,
updateInfoVABAccess
:
'Cập nhật thông tin thành công'
,
},
},
},
},
...
...
src/pages/thong-tin-chung/index.vue
View file @
2ff46e31
...
@@ -11,10 +11,6 @@
...
@@ -11,10 +11,6 @@
:columns=
"infoVABTableColumns"
:columns=
"infoVABTableColumns"
row-key=
"infoVABName"
row-key=
"infoVABName"
separator=
"cell"
separator=
"cell"
:rows-per-page-label=
"$t('recordPerPage')"
:pagination=
"
{
rowsPerPage: 0,
}"
wrap-cells
wrap-cells
:no-data-label=
"$t('emptyData')"
:no-data-label=
"$t('emptyData')"
hide-pagination
hide-pagination
...
@@ -33,16 +29,6 @@
...
@@ -33,16 +29,6 @@
$t
(
'infoVAB.toolTipMessage.updateInfoVAB'
)
$t
(
'infoVAB.toolTipMessage.updateInfoVAB'
)
}}
</q-tooltip>
}}
</q-tooltip>
</q-btn>
</q-btn>
<!--
<q-btn
flat
round
color=
"primary"
icon=
"mdi-delete-outline"
>
<q-tooltip
:offset=
"[10, 10]"
>
{{
$t
(
'infoVAB.toolTipMessage.updateInfoVAB'
)
}}
</q-tooltip>
</q-btn>
-->
</q-td>
</
template
>
<
template
v-slot:body-cell-stt=
"item"
>
<q-td
:item=
"item"
style=
"text-align: center"
>
{{
1
+
item
.
rowIndex
+
pageSize
*
(
pageIndex
-
1
)
}}
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-logo=
"logo"
>
<
template
v-slot:body-cell-logo=
"logo"
>
...
@@ -58,16 +44,6 @@
...
@@ -58,16 +44,6 @@
</q-table>
</q-table>
</div>
</div>
<div
class=
"col-12 q-mt-sm"
>
<Pagination
v-model:currentPage=
"pageIndex"
v-model:pageSize=
"pageSize"
:totalPage=
"totalPage"
@
update:pageSize=
"changePageSize"
@
update:currentPage=
"getListVABInfo"
/>
</div>
<UpdateInfoVABDialog
<UpdateInfoVABDialog
v-model:isOpened=
"updateInfoVABDialogIsOpened"
v-model:isOpened=
"updateInfoVABDialogIsOpened"
v-model:com-name=
"comName"
v-model:com-name=
"comName"
...
@@ -76,6 +52,11 @@
...
@@ -76,6 +52,11 @@
v-model:phone=
"phone"
v-model:phone=
"phone"
v-model:email=
"email"
v-model:email=
"email"
v-model:address=
"address"
v-model:address=
"address"
v-model:facebook=
"facebook"
v-model:twitter=
"twitter"
v-model:linkedin=
"linkedin"
v-model:instagram=
"instagram"
v-model:snapchat=
"snapchat"
@
SetAvatar=
"setAvatar($event)"
@
SetAvatar=
"setAvatar($event)"
@
deleteAvatar=
"deleteAvatar"
@
deleteAvatar=
"deleteAvatar"
@
saveInfoVAB=
"updateInfoVAB"
@
saveInfoVAB=
"updateInfoVAB"
...
@@ -89,10 +70,8 @@ import { defineComponent, onMounted, ref, Ref } from 'vue';
...
@@ -89,10 +70,8 @@ import { defineComponent, onMounted, ref, Ref } from 'vue';
import
{
AxiosResponse
}
from
'axios'
;
import
{
AxiosResponse
}
from
'axios'
;
import
{
api
,
BaseResponseBody
}
from
'src/boot/axios'
;
import
{
api
,
BaseResponseBody
}
from
'src/boot/axios'
;
import
{
Notify
}
from
'quasar'
;
import
{
Notify
}
from
'quasar'
;
import
Pagination
from
'components/pagination/index.vue'
;
import
{
import
{
FileUploadType
,
FileUploadType
,
PaginationResponse
,
VABInfoType
,
VABInfoType
,
DetailVABInfoType
,
DetailVABInfoType
,
UpdateVABInfoType
,
UpdateVABInfoType
,
...
@@ -106,19 +85,10 @@ export type AvatarType = {
...
@@ -106,19 +85,10 @@ export type AvatarType = {
export
default
defineComponent
({
export
default
defineComponent
({
components
:
{
components
:
{
Pagination
,
UpdateInfoVABDialog
,
UpdateInfoVABDialog
,
},
},
setup
()
{
setup
()
{
const
infoVABTableColumns
=
[
const
infoVABTableColumns
=
[
{
name
:
'stt'
,
field
:
'stt'
,
required
:
true
,
label
:
'STT'
,
align
:
'center'
,
sortable
:
false
,
},
{
{
name
:
'comName'
,
name
:
'comName'
,
field
:
'comName'
,
field
:
'comName'
,
...
@@ -196,14 +166,12 @@ export default defineComponent({
...
@@ -196,14 +166,12 @@ export default defineComponent({
const
infoVABId
:
Ref
<
number
|
undefined
>
=
ref
(
undefined
);
const
infoVABId
:
Ref
<
number
|
undefined
>
=
ref
(
undefined
);
const
avatarFile
:
Ref
<
File
|
null
>
=
ref
(
null
);
const
avatarFile
:
Ref
<
File
|
null
>
=
ref
(
null
);
const
avatarUploaded
:
Ref
<
string
>
=
ref
(
''
);
const
avatarUploaded
:
Ref
<
string
>
=
ref
(
''
);
const
pageIndex
=
ref
(
1
);
const
pageSize
=
ref
(
20
);
const
totalPage
=
ref
(
1
);
const
changePageSize
=
()
=>
{
pageIndex
.
value
=
1
;
void
getListVABInfo
();
};
const
VABInfoId
:
Ref
<
number
|
undefined
>
=
ref
(
undefined
);
const
VABInfoId
:
Ref
<
number
|
undefined
>
=
ref
(
undefined
);
const
facebook
:
Ref
<
string
>
=
ref
(
''
);
const
twitter
:
Ref
<
string
>
=
ref
(
''
);
const
linkedin
:
Ref
<
string
>
=
ref
(
''
);
const
instagram
:
Ref
<
string
>
=
ref
(
''
);
const
snapchat
:
Ref
<
string
>
=
ref
(
''
);
//gọi api ds
//gọi api ds
const
getListVABInfo
=
async
()
=>
{
const
getListVABInfo
=
async
()
=>
{
...
@@ -211,14 +179,10 @@ export default defineComponent({
...
@@ -211,14 +179,10 @@ export default defineComponent({
const
response
=
(
await
api
({
const
response
=
(
await
api
({
url
:
API_PATHS
.
getListVABInfo
,
url
:
API_PATHS
.
getListVABInfo
,
method
:
'GET'
,
method
:
'GET'
,
params
:
{
params
:
{},
pageIndex
:
pageIndex
.
value
,
}))
as
AxiosResponse
<
BaseResponseBody
<
VABInfoType
[]
>>
;
pageSize
:
pageSize
.
value
,
},
}))
as
AxiosResponse
<
BaseResponseBody
<
PaginationResponse
<
VABInfoType
>>>
;
if
(
response
.
data
.
error
.
code
===
config
.
API_RES_CODE
.
OK
.
code
)
{
if
(
response
.
data
.
error
.
code
===
config
.
API_RES_CODE
.
OK
.
code
)
{
infoVABTableRows
.
value
=
response
.
data
.
data
.
data
;
infoVABTableRows
.
value
=
response
.
data
.
data
;
totalPage
.
value
=
response
.
data
.
data
.
totalPages
;
}
}
}
catch
(
error
)
{}
}
catch
(
error
)
{}
};
};
...
@@ -247,6 +211,11 @@ export default defineComponent({
...
@@ -247,6 +211,11 @@ export default defineComponent({
website
.
value
=
response
.
data
.
data
.
website
;
website
.
value
=
response
.
data
.
data
.
website
;
phone
.
value
=
response
.
data
.
data
.
phone
;
phone
.
value
=
response
.
data
.
data
.
phone
;
address
.
value
=
response
.
data
.
data
.
address
;
address
.
value
=
response
.
data
.
data
.
address
;
instagram
.
value
=
response
.
data
.
data
.
insLink
;
linkedin
.
value
=
response
.
data
.
data
.
linked
;
snapchat
.
value
=
response
.
data
.
data
.
snapchat
;
twitter
.
value
=
response
.
data
.
data
.
twtLink
;
facebook
.
value
=
response
.
data
.
data
.
fbLink
;
}
}
}
catch
(
error
)
{}
}
catch
(
error
)
{}
};
};
...
@@ -270,6 +239,11 @@ export default defineComponent({
...
@@ -270,6 +239,11 @@ export default defineComponent({
website
:
website
.
value
,
website
:
website
.
value
,
address
:
address
.
value
,
address
:
address
.
value
,
phone
:
phone
.
value
,
phone
:
phone
.
value
,
insLink
:
instagram
.
value
,
linked
:
linkedin
.
value
,
snapchat
:
snapchat
.
value
,
twtLink
:
twitter
.
value
,
fbLink
:
facebook
.
value
,
};
};
const
response
=
(
await
api
({
const
response
=
(
await
api
({
url
:
API_PATHS
.
updateInfoVAB
,
url
:
API_PATHS
.
updateInfoVAB
,
...
@@ -339,11 +313,12 @@ export default defineComponent({
...
@@ -339,11 +313,12 @@ export default defineComponent({
callApiUploadAvatar
,
callApiUploadAvatar
,
deleteAvatar
,
deleteAvatar
,
configImg
,
configImg
,
pageIndex
,
pageSize
,
totalPage
,
changePageSize
,
VABInfoId
,
VABInfoId
,
facebook
,
twitter
,
linkedin
,
instagram
,
snapchat
,
};
};
},
},
});
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment