Commit 414a1393 by tungnq

TODO: Đã fix thành công giao diện tab view

parent 9737b100
...@@ -74,39 +74,19 @@ const Notification = (props) => { ...@@ -74,39 +74,19 @@ const Notification = (props) => {
Tuition: [ Tuition: [
{ {
title_notifi_tuition: 'Thông báo nghỉ học', title_notifi_tuition: 'Thông báo nghỉ học',
date_create: 'Thông báo nghỉ học do tình hình bão số 4 phức tạp', date_create: '16:00 23/07/2025 ',
time_send: '14/4/2024', time_send: '09:00 30/07/2025 ',
style: 'Thông báo cá nhân', style: 'Thông báo cá nhân',
status: 'Chưa gửi', status: 'Chưa gửi',
}, },
{ {
title_notifi_tuition: 'Thông báo nghỉ học', title_notifi_tuition: 'Thông báo nghỉ học',
date_create: 'Thông báo nghỉ học do tình hình bão số 4 phức tạp', date_create: '16:00 23/07/2025 ',
time_send: '14/4/2024', time_send: '09:00 30/07/2025 ',
style: 'Thông báo cá nhân', style: 'Thông báo cá nhân',
status: 'Chưa gửi', status: 'Đã gửi',
},
{
title_notifi_tuition: 'Thông báo nghỉ học',
date_create: 'Thông báo nghỉ học do tình hình bão số 4 phức tạp',
time_send: '14/4/2024',
style: 'Thông báo cá nhân',
status: 'Chưa gửi',
},
{
title_notifi_tuition: 'Thông báo nghỉ học',
date_create: 'Thông báo nghỉ học do tình hình bão số 4 phức tạp',
time_send: '14/4/2024',
style: 'Thông báo cá nhân',
status: 'Chưa gửi',
},
{
title_notifi_tuition: 'Thông báo nghỉ học',
date_create: 'Thông báo nghỉ học do tình hình bão số 4 phức tạp',
time_send: '14/4/2024',
style: 'Thông báo cá nhân',
status: 'Chưa gửi',
}, },
], ],
}); });
const handleTabChange = (tabKey) => { const handleTabChange = (tabKey) => {
......
...@@ -12,7 +12,7 @@ const styles = StyleSheet.create({ ...@@ -12,7 +12,7 @@ const styles = StyleSheet.create({
minWidth:Platform.OS === 'ios' ? 70 : 80, minWidth:Platform.OS === 'ios' ? 70 : 80,
backgroundColor:R.colors.grayButton, backgroundColor:R.colors.grayButton,
borderRadius:10, borderRadius:10,
marginHorizontal:5, marginHorizontal:Platform.OS === 'ios' ? 10 : 5,
alignItems:'center', alignItems:'center',
justifyContent:'center', justifyContent:'center',
}, },
...@@ -69,7 +69,6 @@ const styles = StyleSheet.create({ ...@@ -69,7 +69,6 @@ const styles = StyleSheet.create({
cardItem:{ cardItem:{
paddingVertical:10, paddingVertical:10,
paddingHorizontal:15, paddingHorizontal:15,
borderWidth:1,
borderColor:R.colors.grayBorderInputTextHeader, borderColor:R.colors.grayBorderInputTextHeader,
borderRadius:10, borderRadius:10,
marginVertical:10, marginVertical:10,
...@@ -81,6 +80,16 @@ const styles = StyleSheet.create({ ...@@ -81,6 +80,16 @@ const styles = StyleSheet.create({
shadowRadius:5, shadowRadius:5,
elevation:1, elevation:1,
}, },
cardItemTution:{
flexDirection:'row',
justifyContent:'space-between',
},
boxLeft:{
},
boxRight:{
justifyContent:'center',
alignItems:'center',
},
containerEmpty:{ containerEmpty:{
alignItems:'center', alignItems:'center',
justifyContent:'center', justifyContent:'center',
...@@ -97,9 +106,17 @@ const styles = StyleSheet.create({ ...@@ -97,9 +106,17 @@ const styles = StyleSheet.create({
fontWeight:'500', fontWeight:'500',
fontFamily:R.fonts.fontMedium, fontFamily:R.fonts.fontMedium,
}, },
boxTime:{ boxTimeTution:{
flexDirection:'row',
justifyContent:'space-between',
flex:1
},
sizedBox:{
width:"10%",
},
boxTimeView:{
alignItems:'flex-end', alignItems:'flex-end',
} },
}) })
export default styles; export default styles;
\ No newline at end of file
...@@ -21,6 +21,7 @@ const NotificationView = props => { ...@@ -21,6 +21,7 @@ const NotificationView = props => {
searchText, searchText,
onSearchChange, onSearchChange,
} = props; } = props;
//Xử lý render item cho tab view
const getRenderItemFunction = () => { const getRenderItemFunction = () => {
switch (activeTab) { switch (activeTab) {
case 'Tuition': case 'Tuition':
...@@ -29,6 +30,17 @@ const NotificationView = props => { ...@@ -29,6 +30,17 @@ const NotificationView = props => {
return renderNotificationItemView; return renderNotificationItemView;
} }
}; };
//Xử lý màu trạng thái khi ở tab view
const getStatusColor = (status) => {
switch (status) {
case 'Đã gửi':
return R.colors.green || '#4CAF50';
case 'Chưa gửi':
return R.colors.brown || '#8D6E63';
default:
return R.colors.gray || '#9E9E9E';
}
};
//TabView //TabView
const renderTabViewItem = ({item}) => { const renderTabViewItem = ({item}) => {
const isActivity = activeTab === item.key; const isActivity = activeTab === item.key;
...@@ -83,7 +95,7 @@ const NotificationView = props => { ...@@ -83,7 +95,7 @@ const NotificationView = props => {
<View style={styles.cardItem}> <View style={styles.cardItem}>
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.title_notifi}</Text> <Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.title_notifi}</Text>
<Text style={styles.text} numberOfLines={2} ellipsizeMode="tail">{item.message}</Text> <Text style={styles.text} numberOfLines={2} ellipsizeMode="tail">{item.message}</Text>
<View style={styles.boxTime}> <View style={styles.boxTimeView}>
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.time}</Text> <Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.time}</Text>
</View> </View>
...@@ -93,14 +105,38 @@ const NotificationView = props => { ...@@ -93,14 +105,38 @@ const NotificationView = props => {
}; };
//List Notification Tution //List Notification Tution
const renderNotificationItemTution = ({item}) => { const renderNotificationItemTution = ({item}) => {
const statusColor = getStatusColor(item.status);
return ( return (
<View style={styles.cardItem}> <View style={[styles.cardItem, styles.cardItemTution]}>
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.title_notifi_tuition}</Text> <View style={styles.boxLeft}>
<Text style={styles.text} numberOfLines={2} ellipsizeMode="tail">{item.date_create}</Text> <Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.time_send}</Text> <Text style={styles.text}>Tiêu đề: </Text>
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.style}</Text> {item.title_notifi_tuition}
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">{item.status}</Text> </Text>
<Text style={styles.text} numberOfLines={2} ellipsizeMode="tail">
<Text style={styles.text}>Ngày to: </Text>
{item.date_create}
</Text>
<View style={styles.boxTimeTution}>
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">
<Text style={styles.text}>Thi gian gi: </Text>
{item.time_send}
</Text>
<View style={styles.sizedBox}></View>
<Text style={[styles.text, {color: statusColor}]} numberOfLines={1} ellipsizeMode="tail">
{item.status}
</Text>
</View>
<Text style={styles.text} numberOfLines={1} ellipsizeMode="tail">
<Text style={styles.text}>Loi thông báo: </Text>
{item.style}</Text>
</View>
<Image source={R.images.icNext} resizeMode="contain" style={{width: 10, height: 15, alignSelf:'center'}} />
</View> </View>
); );
}; };
......
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