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
1f8b8064
Commit
1f8b8064
authored
May 19, 2021
by
Võ Quang Thành Đạt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix update user
parent
5d62be61
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
43 additions
and
69 deletions
+43
-69
type.ts
src/assets/type.ts
+1
-1
AddNewUserDialog.ts
...s/user-management/add-new-user-dialog/AddNewUserDialog.ts
+3
-2
index.vue
src/components/user-management/add-new-user-dialog/index.vue
+9
-18
UpdateUserDialog.ts
...ts/user-management/update-user-dialog/UpdateUserDialog.ts
+4
-9
index.vue
src/components/user-management/update-user-dialog/index.vue
+11
-20
User.ts
src/pages/nguoi-dung/User.ts
+15
-17
index.vue
src/pages/nguoi-dung/index.vue
+0
-2
No files found.
src/assets/type.ts
View file @
1f8b8064
...
...
@@ -27,7 +27,7 @@ export type UserObject = {
mobileNumber
:
null
|
string
;
sex
:
number
;
address
:
null
|
string
;
unit
:
null
|
number
;
unit
:
null
|
string
;
status
:
number
;
isAdmin
:
null
|
number
;
createTime
:
null
|
string
;
...
...
src/components/user-management/add-new-user-dialog/AddNewUserDialog.ts
View file @
1f8b8064
import
{
defineComponent
}
from
'vue'
;
import
{
defineComponent
,
PropType
}
from
'vue'
;
import
{
i18n
}
from
'src/boot/i18n'
;
import
{
isEmail
}
from
'../../../boot/functions'
;
import
{
isMobilePhone
}
from
'../../../boot/functions'
;
import
{
GroupInfoType
}
from
'src/pages/nhom-nguoi-dung/UserGroup'
;
export
default
defineComponent
({
props
:
{
...
...
@@ -20,7 +21,7 @@ export default defineComponent({
sex
:
{
type
:
Number
,
required
:
true
},
sexOptions
:
{
type
:
Array
,
required
:
true
},
birthday
:
{
type
:
String
,
required
:
true
},
group
:
{
type
:
Array
,
required
:
true
},
group
:
{
type
:
Array
as
PropType
<
GroupInfoType
[]
>
,
required
:
true
},
listGroup
:
{
type
:
Array
,
required
:
true
},
scheduleAccess
:
{
type
:
String
,
required
:
true
},
listScheduleAccess
:
{
type
:
Array
,
required
:
true
},
...
...
src/components/user-management/add-new-user-dialog/index.vue
View file @
1f8b8064
...
...
@@ -144,24 +144,15 @@
:rules=
"groupRules"
hide-bottom-space
></q-select>
<!-- <q-select
:model-value="scheduleAccess"
@update:model-value="$emit('update:scheduleAccess', $event)"
:label="$t('userPage.dialogLabel.fieldLabels.scheduleAccess')"
:options="listScheduleAccess"
outlined
></q-select> -->
</div>
<q-space></q-space>
<div
class=
"col-6"
>
<span
class=
"text-body1"
>
{{
$t('userPage.dialogLabel.fieldLabels.status')
}}
</span
><q-toggle
:model-value=
"status"
@
update:model-value=
"$emit('update:status', $event)"
/>
<div
class=
"q-ml-md q-mt-md"
>
<span
class=
"text-body1"
>
{{
$t('userPage.dialogLabel.fieldLabels.status')
}}
</span
><q-toggle
:model-value=
"status"
@
update:model-value=
"$emit('update:status', $event)"
/>
</div>
</div>
</div>
</q-card-section>
...
...
src/components/user-management/update-user-dialog/UpdateUserDialog.ts
View file @
1f8b8064
import
{
defineComponent
}
from
'vue'
;
import
{
defineComponent
,
PropType
}
from
'vue'
;
import
{
i18n
}
from
'src/boot/i18n'
;
import
{
isEmail
}
from
'../../../boot/functions'
;
import
{
isMobilePhone
}
from
'../../../boot/functions'
;
import
{
GroupInfoType
}
from
'src/pages/nhom-nguoi-dung/UserGroup'
;
export
default
defineComponent
({
props
:
{
...
...
@@ -18,7 +19,7 @@ export default defineComponent({
sex
:
{
type
:
Number
,
required
:
true
},
sexOptions
:
{
type
:
Array
,
required
:
true
},
birthday
:
{
type
:
String
,
required
:
true
},
group
:
{
type
:
Array
,
required
:
true
},
group
:
{
type
:
Array
as
PropType
<
GroupInfoType
[]
>
,
required
:
true
},
listGroup
:
{
type
:
Array
,
required
:
true
},
scheduleAccess
:
{
type
:
String
,
required
:
true
},
listScheduleAccess
:
{
type
:
Array
,
required
:
true
},
...
...
@@ -50,11 +51,6 @@ export default defineComponent({
(
val
&&
val
.
trim
().
length
)
||
i18n
.
global
.
t
(
'userPage.validateMessages.requireBirthday'
),
];
const
addressRules
=
[
(
val
?:
string
)
=>
(
val
&&
val
.
trim
().
length
)
||
i18n
.
global
.
t
(
'userPage.validateMessages.requireAddress'
),
];
const
unitRules
=
[
(
val
?:
string
)
=>
(
val
&&
val
.
trim
().
length
)
||
...
...
@@ -66,14 +62,13 @@ export default defineComponent({
i18n
.
global
.
t
(
'userPage.validateMessages.requireSex'
),
];
const
groupRules
=
[
(
val
?:
Array
<
unknown
>
)
=>
(
val
?:
Array
<
GroupInfoType
>
)
=>
val
?.
length
||
i18n
.
global
.
t
(
'userPage.validateMessages.requiredGroup'
),
];
return
{
fullNameRules
,
emailRules
,
mobileNumberRules
,
addressRules
,
unitRules
,
sexRules
,
groupRules
,
...
...
src/components/user-management/update-user-dialog/index.vue
View file @
1f8b8064
...
...
@@ -93,6 +93,7 @@
:rules=
"sexRules"
hide-bottom-space
></q-select>
<q-input
:model-value=
"birthday"
@
update:model-value=
"$emit('update:birthday', $event)"
...
...
@@ -116,32 +117,22 @@
:options=
"listGroup"
option-value=
"id"
option-label=
"groupName"
multiple
use-input
use-chips
map-options
emit-valu
e
multipl
e
:rules=
"groupRules"
hide-bottom-space
></q-select>
<!-- <q-select
:model-value="scheduleAccess"
@update:model-value="$emit('update:scheduleAccess', $event)"
:label="$t('userPage.dialogLabel.fieldLabels.scheduleAccess')"
:options="listScheduleAccess"
outlined
></q-select> -->
</div>
<q-space></q-space>
<div
class=
"col-6"
>
<span
class=
"text-body1"
>
{{
$t('userPage.dialogLabel.fieldLabels.status')
}}
</span
><q-toggle
:model-value=
"status"
@
update:model-value=
"$emit('update:status', $event)"
/>
<div
class=
"q-ml-sm q-mt-md"
>
<span
class=
"text-body1"
>
{{
$t('userPage.dialogLabel.fieldLabels.status')
}}
</span
><q-toggle
:model-value=
"status"
@
update:model-value=
"$emit('update:status', $event)"
/>
</div>
</div>
</div>
</q-card-section>
...
...
src/pages/nguoi-dung/User.ts
View file @
1f8b8064
...
...
@@ -11,7 +11,7 @@ import AddNewUserDialogComponent from '../../components/user-management/add-new-
import
UpdateUserDialogComponent
from
'../../components/user-management/update-user-dialog/index.vue'
;
import
{
GroupInfoType
}
from
'../nhom-nguoi-dung/UserGroup'
;
import
Pagination
from
'components/pagination/index.vue'
;
//
import moment from 'moment';
import
moment
from
'moment'
;
export
default
defineComponent
({
components
:
{
...
...
@@ -107,10 +107,10 @@ export default defineComponent({
{
id
:
2
,
text
:
'Nữ'
},
]);
const
address
:
Ref
<
string
|
undefined
>
=
ref
();
const
unit
:
Ref
<
number
|
undefined
>
=
ref
(
);
const
unit
:
Ref
<
string
|
null
>
=
ref
(
null
);
const
status
:
Ref
<
boolean
|
number
>
=
ref
(
true
);
const
listGroup
:
Ref
<
{
id
:
number
;
groupName
:
string
}[]
>
=
ref
([]);
const
group
:
Ref
<
number
[]
>
=
ref
([]);
const
group
:
Ref
<
GroupInfoType
[]
>
=
ref
([]);
const
scheduleAccess
=
ref
(
'Chưa có lịch truy cập'
);
const
listScheduleAccess
=
ref
([
'Chưa có lịch truy cập'
]);
const
$store
=
useStore
();
...
...
@@ -163,7 +163,7 @@ export default defineComponent({
mobileNumber
.
value
=
''
;
sex
.
value
=
undefined
;
address
.
value
=
''
;
unit
.
value
=
undefined
;
unit
.
value
=
null
;
status
.
value
=
true
;
group
.
value
=
[];
};
...
...
@@ -188,7 +188,7 @@ export default defineComponent({
mobileNumber
:
mobileNumber
.
value
.
trim
(),
sex
:
sex
.
value
,
address
:
address
.
value
?.
trim
(),
unit
:
unit
.
value
,
unit
:
unit
.
value
?.
trim
()
,
status
:
status
.
value
?
1
:
0
,
},
groups
:
groups
,
...
...
@@ -305,21 +305,23 @@ export default defineComponent({
if
(
response
.
data
.
error
.
code
===
config
.
API_RES_CODE
.
OK
.
code
)
{
console
.
log
(
response
.
data
.
data
);
const
userInfo
=
response
.
data
.
data
.
user
;
const
groupInfo
=
response
.
data
.
data
.
groups
;
// const groupInfo = response.data.data.groups;
group
.
value
=
response
.
data
.
data
.
groups
;
address
.
value
=
userInfo
.
address
as
string
;
id
.
value
=
userInfo
.
id
;
birthday
.
value
=
userInfo
.
birthday
as
string
;
// birthday.value = moment(userInfo.birthday).format('YYYY-MM-DD') as string;
birthday
.
value
=
moment
(
userInfo
.
birthday
,
'DD/MM/YYYY HH:mm:ss'
).
format
(
'YYYY-MM-DD'
);
email
.
value
=
userInfo
.
email
as
string
;
fullName
.
value
=
userInfo
.
fullName
as
string
;
mobileNumber
.
value
=
userInfo
.
mobileNumber
as
string
;
phoneNumber
.
value
=
userInfo
.
phoneNumber
as
string
;
sex
.
value
=
userInfo
.
sex
;
status
.
value
=
userInfo
.
status
?
true
:
false
;
unit
.
value
=
userInfo
.
unit
as
number
;
unit
.
value
=
userInfo
.
unit
;
userName
.
value
=
userInfo
.
userName
;
groupInfo
.
map
((
item
)
=>
{
group
.
value
.
push
(
item
.
id
);
});
}
}
catch
(
error
)
{}
};
...
...
@@ -327,10 +329,6 @@ export default defineComponent({
const
updateUser
=
async
()
=>
{
console
.
log
(
'updateUser'
);
try
{
const
groups
:
{
id
:
number
}[]
=
[];
group
.
value
.
map
((
item
)
=>
{
groups
.
push
({
id
:
item
as
unknown
as
number
});
});
const
response
=
(
await
api
({
url
:
API_PATHS
.
updateUser
,
method
:
'POST'
,
...
...
@@ -346,10 +344,10 @@ export default defineComponent({
mobileNumber
:
mobileNumber
.
value
.
trim
(),
sex
:
sex
.
value
,
address
:
address
.
value
?.
trim
(),
unit
:
unit
.
value
,
unit
:
unit
.
value
?.
trim
()
,
status
:
status
.
value
?
1
:
0
,
},
groups
:
group
s
,
groups
:
group
.
value
,
pageRoles
:
[],
},
}))
as
AxiosResponse
<
BaseResponseBody
<
unknown
>>
;
...
...
src/pages/nguoi-dung/index.vue
View file @
1f8b8064
...
...
@@ -143,8 +143,6 @@
v-model:birthday=
"birthday"
v-model:group=
"group"
:list-group=
"listGroup"
v-model:schedule-access=
"scheduleAccess"
:list-schedule-access=
"listScheduleAccess"
v-model:status=
"status"
@
click:CloseBtn=
"showDialogUpdate = false"
@
updateUser=
"updateUser"
...
...
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