Commit b3fea5c6 by tungnq

TODO: Đã sửa giao diện báo cáo công việc pop up

parent 63bc0a43
...@@ -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 vic</Text> <Text style={styles.title}>Báo cáo công vic</Text>
<TextMulti
<Text style={styles.label}>Ni 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 liu đính kèm</Text> <Text style={styles.label}>Tài liu đính kèm</Text>
<TouchableOpacity style={styles.attachmentContainer}> <TouchableOpacity style={styles.attachmentContainer}>
<Image source={R.images.icUpload} style={styles.uploadIcon} /> <Image source={R.images.icDocument} style={styles.uploadIcon} />
<Text style={styles.attachmentText}>Thêm tài liu</Text> <Text style={styles.attachmentText}>Thêm tài liu</Text>
</TouchableOpacity> </TouchableOpacity>
<View style={styles.buttonContainer}> <View style={styles.buttonContainer}>
<TouchableOpacity style={styles.cancelButton} onPress={handleCancel}> <Button
<Text style={styles.cancelButtonText}>Hy</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,
......
...@@ -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);
......
...@@ -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);
......
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