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
b3fea5c6
Commit
b3fea5c6
authored
Sep 04, 2025
by
tungnq
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
TODO: Đã sửa giao diện báo cáo công việc pop up
parent
63bc0a43
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
53 additions
and
34 deletions
+53
-34
index.js
src/screens/list_work/detail/modal_add_report/index.js
+0
-0
view.js
src/screens/list_work/detail/modal_add_report/view.js
+50
-31
index.js
src/screens/list_work/detail/modal_edit_report/index.js
+0
-0
view.js
src/screens/list_work/detail/modal_edit_report/view.js
+1
-1
view.js
src/screens/list_work/detail/view.js
+2
-2
No files found.
src/
components/WorkReportModal
/index.js
→
src/
screens/list_work/detail/modal_add_report
/index.js
View file @
b3fea5c6
File moved
src/
components/WorkReportModal
/view.js
→
src/
screens/list_work/detail/modal_add_report
/view.js
View file @
b3fea5c6
...
@@ -8,7 +8,9 @@ import {
...
@@ -8,7 +8,9 @@ import {
StyleSheet
,
StyleSheet
,
Image
,
Image
,
}
from
'react-native'
;
}
from
'react-native'
;
import
R
from
'../../assets/R'
;
import
TextMulti
from
'../../../../components/Input/TextMulti'
;
import
R
from
'../../../../assets/R'
;
import
Button
from
'../../../../components/Button'
;
const
WorkReportModal
=
({
visible
,
onClose
,
onSubmit
})
=>
{
const
WorkReportModal
=
({
visible
,
onClose
,
onSubmit
})
=>
{
const
[
reportContent
,
setReportContent
]
=
useState
(
''
);
const
[
reportContent
,
setReportContent
]
=
useState
(
''
);
...
@@ -35,34 +37,49 @@ const WorkReportModal = ({visible, onClose, onSubmit}) => {
...
@@ -35,34 +37,49 @@ const WorkReportModal = ({visible, onClose, onSubmit}) => {
<
View
style
=
{
styles
.
overlay
}
>
<
View
style
=
{
styles
.
overlay
}
>
<
View
style
=
{
styles
.
modalContainer
}
>
<
View
style
=
{
styles
.
modalContainer
}
>
<
Text
style
=
{
styles
.
title
}
>
B
á
o
c
á
o
c
ô
ng
vi
ệ
c
<
/Text
>
<
Text
style
=
{
styles
.
title
}
>
B
á
o
c
á
o
c
ô
ng
vi
ệ
c
<
/Text
>
<
TextMulti
<
Text
style
=
{
styles
.
label
}
>
N
ộ
i
dung
b
á
o
c
á
o
*<
/Text
>
<
TextInput
style
=
{
styles
.
textInput
}
multiline
=
{
true
}
numberOfLines
=
{
6
}
placeholder
=
"Nhập nội dung báo cáo..."
placeholder
=
"Nhập nội dung báo cáo..."
value
=
{
reportContent
}
title
=
"Nội dung báo cáo"
onChangeText
=
{
setReportContent
}
required
=
{
true
}
textAlignVertical
=
"top"
containerMarginBottom
=
{
10
}
/
>
/
>
<
Text
style
=
{
styles
.
label
}
>
T
à
i
li
ệ
u
đí
nh
k
è
m
<
/Text
>
<
Text
style
=
{
styles
.
label
}
>
T
à
i
li
ệ
u
đí
nh
k
è
m
<
/Text
>
<
TouchableOpacity
style
=
{
styles
.
attachmentContainer
}
>
<
TouchableOpacity
style
=
{
styles
.
attachmentContainer
}
>
<
Image
source
=
{
R
.
images
.
ic
Upload
}
style
=
{
styles
.
uploadIcon
}
/
>
<
Image
source
=
{
R
.
images
.
ic
Document
}
style
=
{
styles
.
uploadIcon
}
/
>
<
Text
style
=
{
styles
.
attachmentText
}
>
Th
ê
m
t
à
i
li
ệ
u
<
/Text
>
<
Text
style
=
{
styles
.
attachmentText
}
>
Th
ê
m
t
à
i
li
ệ
u
<
/Text
>
<
/TouchableOpacity
>
<
/TouchableOpacity
>
<
View
style
=
{
styles
.
buttonContainer
}
>
<
View
style
=
{
styles
.
buttonContainer
}
>
<
TouchableOpacity
style
=
{
styles
.
cancelButton
}
onPress
=
{
handleCancel
}
>
<
Button
<
Text
style
=
{
styles
.
cancelButtonText
}
>
H
ủ
y
<
/Text
>
title
=
'Huỷ'
<
/TouchableOpacity
>
height
=
{
35
}
<
TouchableOpacity
width
=
{
100
}
style
=
{[
styles
.
submitButton
,
!
reportContent
.
trim
()
&&
styles
.
disabledButton
]}
backgroundColor
=
{
R
.
colors
.
orange
}
borderRadius
=
{
100
}
fontSize
=
{
R
.
fontsize
.
fontSizeContent
}
onPress
=
{
handleCancel
}
txtStyle
=
{{
color
:
R
.
colors
.
white
,
fontWeight
:
'600'
,
fontFamily
:
R
.
fonts
.
fontMedium
,
}}
marginRight
=
{
10
}
/
>
<
Button
title
=
'Báo cáo'
height
=
{
35
}
width
=
{
100
}
backgroundColor
=
{
R
.
colors
.
blue
}
borderRadius
=
{
100
}
fontSize
=
{
R
.
fontsize
.
fontSizeContent
}
onPress
=
{
handleSubmit
}
onPress
=
{
handleSubmit
}
disabled
=
{
!
reportContent
.
trim
()}
>
txtStyle
=
{{
<
Text
style
=
{
styles
.
submitButtonText
}
>
B
á
o
c
á
o
<
/Text
>
color
:
R
.
colors
.
white
,
<
/TouchableOpacity
>
fontWeight
:
'600'
,
fontFamily
:
R
.
fonts
.
fontMedium
,
}}
/
>
<
/View
>
<
/View
>
<
/View
>
<
/View
>
<
/View
>
<
/View
>
...
@@ -85,17 +102,21 @@ const styles = StyleSheet.create({
...
@@ -85,17 +102,21 @@ const styles = StyleSheet.create({
maxWidth
:
400
,
maxWidth
:
400
,
},
},
title
:
{
title
:
{
fontSize
:
18
,
fontSize
:
R
.
fontsize
.
fontsSizeTitle
,
fontWeight
:
'600'
,
fontWeight
:
'600'
,
color
:
R
.
colors
.
blue
,
color
:
R
.
colors
.
blue
,
textAlign
:
'center'
,
textAlign
:
'center'
,
marginBottom
:
20
,
},
},
required
:
{
label
:
{
color
:
R
.
colors
.
red
,
fontSize
:
14
,
fontSize
:
14
,
fontWeight
:
'500'
,
fontWeight
:
'500'
,
},
label
:
{
fontSize
:
R
.
fontsize
.
fontSizeContent
,
fontWeight
:
'600'
,
fontFamily
:
R
.
fonts
.
fontMedium
,
color
:
R
.
colors
.
black
,
color
:
R
.
colors
.
black
,
marginBottom
:
8
,
},
},
textInput
:
{
textInput
:
{
borderWidth
:
1
,
borderWidth
:
1
,
...
@@ -109,18 +130,17 @@ const styles = StyleSheet.create({
...
@@ -109,18 +130,17 @@ const styles = StyleSheet.create({
},
},
attachmentContainer
:
{
attachmentContainer
:
{
borderWidth
:
1
,
borderWidth
:
1
,
borderColor
:
R
.
colors
.
gray
,
borderColor
:
R
.
colors
.
blue
,
borderRadius
:
8
,
borderRadius
:
8
,
borderStyle
:
'dashed'
,
padding
:
20
,
padding
:
20
,
alignItems
:
'center'
,
alignItems
:
'center'
,
marginBottom
:
20
,
marginBottom
:
20
,
},
},
uploadIcon
:
{
uploadIcon
:
{
width
:
40
,
width
:
23
,
height
:
40
,
height
:
28
,
tintColor
:
R
.
colors
.
blue
,
tintColor
:
R
.
colors
.
blue
,
marginBottom
:
8
,
marginBottom
:
5
,
},
},
attachmentText
:
{
attachmentText
:
{
fontSize
:
14
,
fontSize
:
14
,
...
@@ -129,8 +149,7 @@ const styles = StyleSheet.create({
...
@@ -129,8 +149,7 @@ const styles = StyleSheet.create({
},
},
buttonContainer
:
{
buttonContainer
:
{
flexDirection
:
'row'
,
flexDirection
:
'row'
,
justifyContent
:
'space-between'
,
justifyContent
:
'flex-end'
,
gap
:
12
,
},
},
cancelButton
:
{
cancelButton
:
{
flex
:
1
,
flex
:
1
,
...
...
src/
components/EditReportModal
/index.js
→
src/
screens/list_work/detail/modal_edit_report
/index.js
View file @
b3fea5c6
File moved
src/
components/EditReportModal
/view.js
→
src/
screens/list_work/detail/modal_edit_report
/view.js
View file @
b3fea5c6
...
@@ -8,7 +8,7 @@ import {
...
@@ -8,7 +8,7 @@ import {
StyleSheet
,
StyleSheet
,
Image
,
Image
,
}
from
'react-native'
;
}
from
'react-native'
;
import
R
from
'../../assets/R'
;
import
R
from
'../../
../../
assets/R'
;
const
EditReportModal
=
({
visible
,
onClose
,
onSubmit
,
initialContent
=
''
})
=>
{
const
EditReportModal
=
({
visible
,
onClose
,
onSubmit
,
initialContent
=
''
})
=>
{
const
[
reportContent
,
setReportContent
]
=
useState
(
initialContent
);
const
[
reportContent
,
setReportContent
]
=
useState
(
initialContent
);
...
...
src/screens/list_work/detail/view.js
View file @
b3fea5c6
...
@@ -13,8 +13,8 @@ import SubButton from '../../../components/FAB/sub_button';
...
@@ -13,8 +13,8 @@ import SubButton from '../../../components/FAB/sub_button';
import
R
from
'../../../assets/R'
;
import
R
from
'../../../assets/R'
;
import
Header
from
'../../../components/Header/Header'
;
import
Header
from
'../../../components/Header/Header'
;
import
Dropdown
from
'../../../components/DropdownAlert/Dropdown'
;
import
Dropdown
from
'../../../components/DropdownAlert/Dropdown'
;
import
WorkReportModal
from
'../
../../components/WorkReportModal
'
;
import
WorkReportModal
from
'../
detail/modal_add_report
'
;
import
EditReportModal
from
'../
../../components/EditReportModal
'
;
import
EditReportModal
from
'../
detail/modal_edit_report
'
;
const
DetailListWorkView
=
props
=>
{
const
DetailListWorkView
=
props
=>
{
const
{
data
,
dataList
}
=
props
;
const
{
data
,
dataList
}
=
props
;
const
[
showWorkReportModal
,
setShowWorkReportModal
]
=
useState
(
false
);
const
[
showWorkReportModal
,
setShowWorkReportModal
]
=
useState
(
false
);
...
...
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