update

parent d2fbcd0f
...@@ -11,7 +11,7 @@ export default defineComponent({ ...@@ -11,7 +11,7 @@ export default defineComponent({
props: { props: {
id: { number: String, required: true }, id: { number: String, required: true },
account: { type: String, required: true },
banners: { type: Array as PropType<BannerType[]>, required: true }, banners: { type: Array as PropType<BannerType[]>, required: true },
shortDescription: { type: Array, required: true }, shortDescription: { type: Array, required: true },
socialEmbedded: { type: Array, required: true }, socialEmbedded: { type: Array, required: true },
...@@ -37,13 +37,7 @@ export default defineComponent({ ...@@ -37,13 +37,7 @@ export default defineComponent({
const slide = ref(0); const slide = ref(0);
const slideStory = ref(0); const slideStory = ref(0);
const editor = ref('Customize it.'); const editor = ref('Customize it.');
const accountRules = [
(val?: string) =>
(val && val.trim().length) ||
i18n.global.t(
'artist.artistInformation.validateMessages.requireAccount'
),
];
const uploadBanner = (value: FileList) => { const uploadBanner = (value: FileList) => {
context.emit('selectedFile', encodeImageFileAsURL(value[0])); context.emit('selectedFile', encodeImageFileAsURL(value[0]));
Notify.create({ Notify.create({
...@@ -110,7 +104,7 @@ export default defineComponent({ ...@@ -110,7 +104,7 @@ export default defineComponent({
slide, slide,
slideStory, slideStory,
editor, editor,
accountRules,
uploadBanner, uploadBanner,
deleteImage, deleteImage,
deleteStory, deleteStory,
...@@ -121,7 +115,7 @@ export default defineComponent({ ...@@ -121,7 +115,7 @@ export default defineComponent({
}; };
}, },
emits: [ emits: [
'update:account',
'update:shortDescription', 'update:shortDescription',
'update:formatSchedules', 'update:formatSchedules',
'selectedFile', 'selectedFile',
......
...@@ -3,35 +3,7 @@ ...@@ -3,35 +3,7 @@
class="row q-col-gutter-sm q-mt-md" class="row q-col-gutter-sm q-mt-md"
style="max-height: calc(100vh - 15rem)" style="max-height: calc(100vh - 15rem)"
> >
<div class="col-auto flex flex-center justify-start">
<div>Tên đăng nhập</div>
</div>
<div class="col-2 flex flex-center">
<q-input
v-if="id"
:model-value="account"
@update:model-value="$emit('update:account', $event)"
type="text"
dense
readonly
hide-bottom-space
outlined
></q-input>
<q-input
v-else
:model-value="account"
@update:model-value="$emit('update:account', $event)"
type="text"
dense
hide-bottom-space
outlined
></q-input>
</div>
<div class="col-auto" style="margin-top: 2px">
<q-btn color="primary" no-caps label="Reset Pass"></q-btn>
</div>
<div class="col-12 flex q-mt-sm"> <div class="col-12 flex q-mt-sm">
<div class="text-uppercase text-weight-medium">Thông tin profile</div> <div class="text-uppercase text-weight-medium">Thông tin profile</div>
<q-space /> <q-space />
......
...@@ -53,7 +53,9 @@ export default defineComponent({ ...@@ -53,7 +53,9 @@ export default defineComponent({
emailRules: { type: Boolean, required: true }, emailRules: { type: Boolean, required: true },
emailAdministerRules: { type: Boolean, required: true }, emailAdministerRules: { type: Boolean, required: true },
phoneNumberAdministerRules: { type: Boolean, required: true }, phoneNumberAdministerRules: { type: Boolean, required: true },
// addressRules: { type: Boolean, required: true }, addressRules: { type: Boolean, required: true },
account: { type: String, required: true },
accountRules:{type:Boolean, required: true},
phoneNumberRules: { type: Boolean, required: true }, phoneNumberRules: { type: Boolean, required: true },
sexRules: { type: Boolean, required: true }, sexRules: { type: Boolean, required: true },
nationalityRules: { type: Boolean, required: true }, nationalityRules: { type: Boolean, required: true },
...@@ -68,6 +70,7 @@ export default defineComponent({ ...@@ -68,6 +70,7 @@ export default defineComponent({
errorMessmnBookingEmail: { type: String, required: true }, errorMessmnBookingEmail: { type: String, required: true },
mnBookingEmailRules: { type: Boolean, required: true }, mnBookingEmailRules: { type: Boolean, required: true },
mnBookingPhoneRules: { type: Boolean, required: true }, mnBookingPhoneRules: { type: Boolean, required: true },
// errorMessAccount: { type: String, required: true },
}, },
components: { components: {
UploadImage, UploadImage,
...@@ -117,7 +120,9 @@ export default defineComponent({ ...@@ -117,7 +120,9 @@ export default defineComponent({
openDialog.value = false; openDialog.value = false;
}; };
const errorMessAccount = i18n.global.t( 'artist.artistInformation.validateMessages.requireAccount'
);
const errorMessArtistCode = i18n.global.t( const errorMessArtistCode = i18n.global.t(
'artist.artistInformation.validateMessages.requireArtistCode' 'artist.artistInformation.validateMessages.requireArtistCode'
); );
...@@ -130,15 +135,16 @@ export default defineComponent({ ...@@ -130,15 +135,16 @@ export default defineComponent({
const errorMessBirthday = i18n.global.t( const errorMessBirthday = i18n.global.t(
'artist.artistInformation.validateMessages.requireBirthday' 'artist.artistInformation.validateMessages.requireBirthday'
); );
const errorMessSex = i18n.global.t( const errorMessSex = i18n.global.t(
'artist.artistInformation.validateMessages.requireSex' 'artist.artistInformation.validateMessages.requireSex'
); );
const errorMessNationality = i18n.global.t( const errorMessNationality = i18n.global.t(
'artist.artistInformation.validateMessages.requireNationality' 'artist.artistInformation.validateMessages.requireNationality'
); );
// const errorMessAddress = i18n.global.t( const errorMessAddress = i18n.global.t(
// 'artist.artistInformation.validateMessages.requireAddress' 'artist.artistInformation.validateMessages.requireAddress'
// ); );
const errorMessFields = i18n.global.t( const errorMessFields = i18n.global.t(
'artist.artistInformation.validateMessages.requireField' 'artist.artistInformation.validateMessages.requireField'
); );
...@@ -166,11 +172,13 @@ export default defineComponent({ ...@@ -166,11 +172,13 @@ export default defineComponent({
onCancelClick, onCancelClick,
errorMessArtistCode, errorMessArtistCode,
errorMessFullName, errorMessFullName,
errorMessAccount,
errorMessArtistName, errorMessArtistName,
errorMessBirthday, errorMessBirthday,
errorMessSex, errorMessSex,
errorMessNationality, errorMessNationality,
// errorMessAddress,
errorMessAddress,
errorMessFields, errorMessFields,
errorMessWorks, errorMessWorks,
errorMessQualification, errorMessQualification,
...@@ -211,6 +219,7 @@ export default defineComponent({ ...@@ -211,6 +219,7 @@ export default defineComponent({
'update:mnIns', 'update:mnIns',
'update:mnWhatsapp', 'update:mnWhatsapp',
'update:musics', 'update:musics',
'update:account',
'addNewArtist', 'addNewArtist',
'SetAvatar', 'SetAvatar',
'deleteAvatar', 'deleteAvatar',
......
...@@ -70,6 +70,28 @@ ...@@ -70,6 +70,28 @@
</div> </div>
</div> </div>
</div> </div>
<div class="row flex-center">
<div class="col-3 text-weight-medium" >
<div>Tên đăng nhập <span style="color: red">*</span></div>
</div>
<div class="col-8">
<q-input
:model-value="account"
@update:model-value="$emit('update:account', $event)"
:error="accountRules"
:error-message="errorMessAccount"
class="q-my-sm"
dense
hide-bottom-space
outlined
></q-input>
</div>
</div>
<!-- <div class="col-auto" style="margin-top: 2px">
<q-btn color="primary" no-caps label="Reset Pass"></q-btn>
</div> -->
<div class="row flex-center"> <div class="row flex-center">
<div class="col-3 text-weight-medium"> <div class="col-3 text-weight-medium">
{{ $t('artist.artistInformation.titleDataField.artistCode') }} {{ $t('artist.artistInformation.titleDataField.artistCode') }}
...@@ -222,10 +244,11 @@ ...@@ -222,10 +244,11 @@
</div> </div>
<div class="col-8"> <div class="col-8">
<q-select <q-select
:model-value="address" :model-value="address"
@update:model-value="$emit('update:address', $event)" @update:model-value="$emit('update:address', $event)"
:error="addressRules"
:error-message="errorMessAddress"
:options="provinceOptions" :options="provinceOptions"
option-value="fullName" option-value="fullName"
option-label="fullName" option-label="fullName"
......
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
<PersonalInformation <PersonalInformation
v-model:musics="musics" v-model:musics="musics"
:id="id" :id="id"
v-model:account="account"
v-model:artist-code="artistCode" v-model:artist-code="artistCode"
:avatar="avatar" :avatar="avatar"
v-model:full-name="fullName" v-model:full-name="fullName"
...@@ -64,6 +65,7 @@ ...@@ -64,6 +65,7 @@
v-model:mn-whatsapp="mnWhatsapp" v-model:mn-whatsapp="mnWhatsapp"
v-model:favorite-score="favoriteScore" v-model:favorite-score="favoriteScore"
v-model:check_infoBooking="check_infoBooking" v-model:check_infoBooking="check_infoBooking"
:accountRules="accountRules"
:errorMessmnBookingPhone="errorMessmnBookingPhone" :errorMessmnBookingPhone="errorMessmnBookingPhone"
:errorMessmnBookingEmail="errorMessmnBookingEmail" :errorMessmnBookingEmail="errorMessmnBookingEmail"
:mnBookingEmailRules="mnBookingEmailRules" :mnBookingEmailRules="mnBookingEmailRules"
...@@ -98,7 +100,7 @@ ...@@ -98,7 +100,7 @@
</q-tab-panel> </q-tab-panel>
<q-tab-panel name="vabAccount"> <q-tab-panel name="vabAccount">
<VabAccount <VabAccount
v-model:account="account"
v-model:short-description="shortDescription" v-model:short-description="shortDescription"
v-model:format-schedules="formatSchedules" v-model:format-schedules="formatSchedules"
:id="route.params.id" :id="route.params.id"
......
...@@ -170,7 +170,8 @@ export default defineComponent({ ...@@ -170,7 +170,8 @@ export default defineComponent({
const qualificationRules = ref(false); const qualificationRules = ref(false);
const artistLevelRules = ref(false); const artistLevelRules = ref(false);
const musicRules = ref(false); const musicRules = ref(false);
const errorMessEmail = ref( const accountRules = ref(false);
const errorMessEmail = ref(
i18n.global.t('artist.artistInformation.validateMessages.requireEmail') i18n.global.t('artist.artistInformation.validateMessages.requireEmail')
); );
const errorMessPhoneNumber = ref( const errorMessPhoneNumber = ref(
...@@ -252,14 +253,22 @@ export default defineComponent({ ...@@ -252,14 +253,22 @@ export default defineComponent({
} }
} }
); );
// watch( watch(
// () => address.value, () => address.value,
// (value) => { (value) => {
// if (value) { if (value) {
// addressRules.value = false; addressRules.value = false;
// } }
// } }
// ); );
watch(
() => account.value,
(value) => {
if(value){
accountRules.value = false
}
}
);
watch( watch(
() => phoneNumber.value, () => phoneNumber.value,
(value) => { (value) => {
...@@ -798,10 +807,14 @@ export default defineComponent({ ...@@ -798,10 +807,14 @@ export default defineComponent({
); );
} }
// if (artistLevel.value === null) { if (!account.value === null) {
// hasError = true; hasError = true;
// artistLevelRules.value = true; accountRules.value = true;
// } }
if(!address.value === null){
hasError = true;
addressRules.value = true
}
if (!fields.value) { if (!fields.value) {
hasError = true; hasError = true;
fieldRules.value = true; fieldRules.value = true;
...@@ -898,7 +911,7 @@ export default defineComponent({ ...@@ -898,7 +911,7 @@ export default defineComponent({
whatsapp: whatsapp.value, whatsapp: whatsapp.value,
fullName: fullName.value, fullName: fullName.value,
shortDescription: null, shortDescription: null,
account: null, account: account.value,
socialEmbedded: socialEmbedded.value, socialEmbedded: socialEmbedded.value,
artistLevel: artistLevel.value, artistLevel: artistLevel.value,
fields: [fields.value], fields: [fields.value],
...@@ -1066,6 +1079,7 @@ export default defineComponent({ ...@@ -1066,6 +1079,7 @@ export default defineComponent({
workRules, workRules,
qualificationRules, qualificationRules,
artistLevelRules, artistLevelRules,
accountRules,
errorMessEmail, errorMessEmail,
errorMessPhoneNumber, errorMessPhoneNumber,
confirmChangeIsDefault, confirmChangeIsDefault,
......
...@@ -101,6 +101,7 @@ export default defineComponent({ ...@@ -101,6 +101,7 @@ export default defineComponent({
const artistName: Ref<string | null> = ref(null); const artistName: Ref<string | null> = ref(null);
const birthday: Ref<string | null> = ref(null); const birthday: Ref<string | null> = ref(null);
const sex: Ref<number | null> = ref(null); const sex: Ref<number | null> = ref(null);
const nationality: Ref<NationalityType> = ref({ const nationality: Ref<NationalityType> = ref({
id: 1, id: 1,
name: 'Việt Nam', name: 'Việt Nam',
...@@ -157,7 +158,7 @@ export default defineComponent({ ...@@ -157,7 +158,7 @@ export default defineComponent({
const artistNameRules = ref(false); const artistNameRules = ref(false);
const birthdayRules = ref(false); const birthdayRules = ref(false);
const emailRules = ref(false); const emailRules = ref(false);
// const addressRules = ref(false); const addressRules = ref(false);
const phoneNumberRules = ref(false); const phoneNumberRules = ref(false);
const mnBookingEmailRules = ref(false); const mnBookingEmailRules = ref(false);
const mnBookingPhoneRules = ref(false); const mnBookingPhoneRules = ref(false);
...@@ -168,7 +169,7 @@ export default defineComponent({ ...@@ -168,7 +169,7 @@ export default defineComponent({
const musicRules = ref(false); const musicRules = ref(false);
const qualificationRules = ref(false); const qualificationRules = ref(false);
const artistLevelRules = ref(false); const artistLevelRules = ref(false);
const accountRules=ref(false)
const errorMessEmail = ref( const errorMessEmail = ref(
i18n.global.t('artist.artistInformation.validateMessages.requireEmail') i18n.global.t('artist.artistInformation.validateMessages.requireEmail')
...@@ -178,11 +179,17 @@ export default defineComponent({ ...@@ -178,11 +179,17 @@ export default defineComponent({
'artist.artistInformation.validateMessages.requirePhoneNumber' 'artist.artistInformation.validateMessages.requirePhoneNumber'
) )
); );
const errorMessmnBookingEmail = ref( const errorMessmnBookingEmail = ref(
i18n.global.t( i18n.global.t(
'artist.artistInformation.validateMessages.requireEmailAdminister' 'artist.artistInformation.validateMessages.requireEmailAdminister'
) )
); );
const errorMessAddress = ref(i18n.global.t('artist.artistInformation.validateMessages.requireAddress'))
const errorMessAccount = ref(
i18n.global.t(
'artist.artistInformation.validateMessages.requireAccount')
);
const errorMessmnBookingPhone = ref( const errorMessmnBookingPhone = ref(
i18n.global.t( i18n.global.t(
'artist.artistInformation.validateMessages.requirePhoneNumberAdminister' 'artist.artistInformation.validateMessages.requirePhoneNumberAdminister'
...@@ -208,6 +215,14 @@ export default defineComponent({ ...@@ -208,6 +215,14 @@ export default defineComponent({
} }
} }
); );
watch(
() => account.value,
(value) => {
if(value){
accountRules.value = false
}
}
);
watch( watch(
() => fullName.value, () => fullName.value,
(value) => { (value) => {
...@@ -240,14 +255,14 @@ export default defineComponent({ ...@@ -240,14 +255,14 @@ export default defineComponent({
} }
} }
); );
// watch( watch(
// () => address.value, () => address.value,
// (value) => { (value) => {
// if (value) { if (value) {
// addressRules.value = false; addressRules.value = false;
// } }
// } }
// ); );
watch( watch(
() => phoneNumber.value, () => phoneNumber.value,
(value) => { (value) => {
...@@ -698,7 +713,7 @@ export default defineComponent({ ...@@ -698,7 +713,7 @@ export default defineComponent({
'artist.artistInformation.validateMessages.requireEmail' 'artist.artistInformation.validateMessages.requireEmail'
); );
} }
if ( if (
(!mnBookingPhone.value || !mnBookingPhone.value?.trim().length) && (!mnBookingPhone.value || !mnBookingPhone.value?.trim().length) &&
check_infoBooking.value check_infoBooking.value
...@@ -725,6 +740,14 @@ export default defineComponent({ ...@@ -725,6 +740,14 @@ export default defineComponent({
hasError = true; hasError = true;
fieldRules.value = true; fieldRules.value = true;
} }
if(!account.value){
hasError = true;
accountRules.value = true;
}
if(!address.value){
hasError = true;
addressRules.value = true
}
if (nationality.value === null) { if (nationality.value === null) {
hasError = true; hasError = true;
nationalityRules.value = true; nationalityRules.value = true;
...@@ -738,6 +761,7 @@ export default defineComponent({ ...@@ -738,6 +761,7 @@ export default defineComponent({
workRules.value = true; workRules.value = true;
} }
if (hasError === false) { if (hasError === false) {
void addArtist(); void addArtist();
} }
...@@ -871,6 +895,7 @@ export default defineComponent({ ...@@ -871,6 +895,7 @@ export default defineComponent({
void getMusicTypeOptions() void getMusicTypeOptions()
}); });
return { return {
hidden_img, hidden_img,
tab, tab,
id, id,
...@@ -982,9 +1007,12 @@ export default defineComponent({ ...@@ -982,9 +1007,12 @@ export default defineComponent({
musicRules, musicRules,
qualificationRules, qualificationRules,
artistLevelRules, artistLevelRules,
errorMessEmail, errorMessEmail,
accountRules,
addressRules,
errorMessPhoneNumber, errorMessPhoneNumber,
errorMessAccount,
errorMessAddress,
confirmChangeIsDefault, confirmChangeIsDefault,
favoriteScore, favoriteScore,
check_infoBooking, check_infoBooking,
......
...@@ -64,6 +64,9 @@ ...@@ -64,6 +64,9 @@
v-model:mn-whatsapp="mnWhatsapp" v-model:mn-whatsapp="mnWhatsapp"
v-model:favorite-score="favoriteScore" v-model:favorite-score="favoriteScore"
v-model:check_infoBooking="check_infoBooking" v-model:check_infoBooking="check_infoBooking"
v-model:account="account"
:accountRules="accountRules"
:addressRules="addressRules"
:errorMessmnBookingPhone="errorMessmnBookingPhone" :errorMessmnBookingPhone="errorMessmnBookingPhone"
:errorMessmnBookingEmail="errorMessmnBookingEmail" :errorMessmnBookingEmail="errorMessmnBookingEmail"
:mnBookingEmailRules="mnBookingEmailRules" :mnBookingEmailRules="mnBookingEmailRules"
...@@ -99,7 +102,7 @@ ...@@ -99,7 +102,7 @@
</q-tab-panel> </q-tab-panel>
<q-tab-panel name="vabAccount"> <q-tab-panel name="vabAccount">
<VabAccount <VabAccount
v-model:account="account"
v-model:short-description="shortDescription" v-model:short-description="shortDescription"
v-model:format-schedules="formatSchedules" v-model:format-schedules="formatSchedules"
:id="route.params.id" :id="route.params.id"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment