Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
AppUms_Lecturer
Overview
Overview
Details
Activity
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
tungnq
AppUms_Lecturer
Commits
2b8c3aa1
Commit
2b8c3aa1
authored
Aug 20, 2025
by
tungnq
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
TODO: Đã hoàn thiện giao diện hồ sơ
parent
3a37bd9f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
97 additions
and
6 deletions
+97
-6
TextField.js
src/components/Input/TextField.js
+2
-1
RadioGroup.js
src/components/RadioButton/RadioGroup.js
+4
-0
index.js
src/screens/profile/index.js
+36
-2
style.js
src/screens/profile/style.js
+55
-3
view.js
src/screens/profile/view.js
+0
-0
No files found.
src/components/Input/TextField.js
View file @
2b8c3aa1
...
@@ -25,6 +25,7 @@ const TextField = props => {
...
@@ -25,6 +25,7 @@ const TextField = props => {
containerMarginHorizontal
,
containerMarginHorizontal
,
containerMarginBottom
,
containerMarginBottom
,
containerBackgroundColor
,
containerBackgroundColor
,
width
,
}
=
props
;
}
=
props
;
const
renderMess
=
()
=>
{
const
renderMess
=
()
=>
{
if
(
value
&&
value
.
trim
().
length
>
0
)
return
`
${
title
}
không hợp lệ`
;
if
(
value
&&
value
.
trim
().
length
>
0
)
return
`
${
title
}
không hợp lệ`
;
...
@@ -32,7 +33,7 @@ const TextField = props => {
...
@@ -32,7 +33,7 @@ const TextField = props => {
};
};
return
(
return
(
<
View
style
=
{{
marginVertical
:
containerMarginVertical
,
marginHorizontal
:
containerMarginHorizontal
,
marginBottom
:
containerMarginBottom
,
backgroundColor
:
containerBackgroundColor
,
marginTop
:
containerMarginTop
}}
>
<
View
style
=
{{
width
:
width
,
marginVertical
:
containerMarginVertical
,
marginHorizontal
:
containerMarginHorizontal
,
marginBottom
:
containerMarginBottom
,
backgroundColor
:
containerBackgroundColor
,
marginTop
:
containerMarginTop
}}
>
<
Text
<
Text
style
=
{{
style
=
{{
fontSize
:
fontSizeTitle
,
fontSize
:
fontSizeTitle
,
...
...
src/components/RadioButton/RadioGroup.js
View file @
2b8c3aa1
...
@@ -18,7 +18,9 @@ const RadioGroup = ({
...
@@ -18,7 +18,9 @@ const RadioGroup = ({
containerMarginVertical
,
containerMarginVertical
,
containerMarginBottom
,
containerMarginBottom
,
backgroundBoxColor
,
backgroundBoxColor
,
containerBoxColor
,
borderBoxColor
,
borderBoxColor
,
containerWidth
,
editable
=
false
,
editable
=
false
,
})
=>
{
})
=>
{
return
(
return
(
...
@@ -29,6 +31,8 @@ const RadioGroup = ({
...
@@ -29,6 +31,8 @@ const RadioGroup = ({
marginHorizontal
:
containerMarginHorizontal
,
marginHorizontal
:
containerMarginHorizontal
,
marginVertical
:
containerMarginVertical
,
marginVertical
:
containerMarginVertical
,
marginBottom
:
containerMarginBottom
,
marginBottom
:
containerMarginBottom
,
backgroundColor
:
containerBoxColor
,
width
:
containerWidth
}
}
]}
>
]}
>
{
options
.
map
((
option
,
index
)
=>
(
{
options
.
map
((
option
,
index
)
=>
(
...
...
src/screens/profile/index.js
View file @
2b8c3aa1
import
React
from
'react'
;
import
React
,
{
useState
}
from
'react'
;
import
{
Text
,
View
,
StyleSheet
}
from
'react-native'
;
import
{
Text
,
View
,
StyleSheet
}
from
'react-native'
;
import
ProfileView
from
'./view'
;
import
ProfileView
from
'./view'
;
const
Profile
=
(
props
)
=>
{
const
Profile
=
(
props
)
=>
{
const
[
user
,
setUser
]
=
useState
(
{
name
:
'Phạm Minh Quân'
,
role
:
'Trợ lý bộ môn thuộc trường'
,
code
:
'80578'
,
email
:
'quan.pm@uit.edu.vn'
,
authCredential
:
'quanpm'
,
department
:
'Khoa học máy tính'
,
teachingUnit
:
'Trí tuệ nhân tạo'
,
workPlace
:
'Trường Cao Đẳng FPT'
,
extraDuty
:
'Vị trí kiêm nhiệm'
,
employmentType
:[
'Quyền trưởng phòng'
,
'Trợ lý bộ môn thuộc trường'
],
appointmentDecision
:
'QĐ/UIT/2025'
,
appointmentDate
:
'20/03/2025'
,
allowanceSeniorityDate
:
'10/03/2025'
,
teacherType
:
'CBGV trường'
,
academicUnit
:
'Khoa Công nghệ phần mềm'
,
subjectDepartment
:
'Bộ môn Phát triển phần mềm'
,
employmentStatus
:
'Đang công tác'
,
workCommencementDate
:
'20/03/2025'
,
}
)
const
[
selectedValue2
,
setSelectedValue2
]
=
useState
(
'1'
);
const
options2
=
[
{
label
:
'Cơ chế'
,
value
:
'1'
},
{
label
:
'Biên hữu'
,
value
:
'2'
},
];
const
onValueChange2
=
value
=>
{
setSelectedValue2
(
value
);
};
return
(
return
(
<
ProfileView
/>
<
ProfileView
dataProfile
=
{
user
}
selectedValue2
=
{
selectedValue2
}
options2
=
{
options2
}
onValueChange2
=
{
onValueChange2
}
/
>
);
);
};
};
...
...
src/screens/profile/style.js
View file @
2b8c3aa1
...
@@ -7,8 +7,60 @@ const styles = StyleSheet.create({
...
@@ -7,8 +7,60 @@ const styles = StyleSheet.create({
},
},
body
:{
body
:{
flex
:
1
,
flex
:
1
,
backgroundColor
:
R
.
colors
.
white
backgroundColor
:
R
.
colors
.
white
,
padding
:
15
},
headerBody
:{
flexDirection
:
'row'
,
marginBottom
:
15
,
},
headerLeft
:{
// backgroundColor:'red'
},
boxCamera
:{
alignItems
:
'center'
,
justifyContent
:
'center'
,
maxWidth
:
120
,
},
containerImage
:{
backgroundColor
:
R
.
colors
.
grayBorderInputTextHeader
,
width
:
100
,
height
:
150
,
justifyContent
:
'center'
,
alignItems
:
'center'
,
borderRadius
:
10
,
},
image
:{
width
:
25
,
height
:
25
,
tintColor
:
R
.
colors
.
gray2
},
containerButton
:{
marginTop
:
10
,
},
headerRight
:{
flex
:
1
,
marginLeft
:
15
,
justifyContent
:
'flex-start'
,
},
text
:{
fontSize
:
R
.
sizes
.
sm
,
fontFamily
:
R
.
fonts
.
fontRegular
,
fontWeight
:
'400'
,
color
:
R
.
colors
.
black
,
},
bodyProfile
:{
},
containerInput
:{
flexDirection
:
'row'
,
marginBottom
:
15
,
justifyContent
:
'space-between'
,
},
sizedBox
:{
width
:
15
,
}
}
})
})
export
default
styles
export
default
styles
;
\ No newline at end of file
\ No newline at end of file
src/screens/profile/view.js
View file @
2b8c3aa1
This diff is collapsed.
Click to expand it.
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