Merge remote-tracking branch 'origin/main_design2.0' into main_design2.0

main_design2.0
nextwo 2 years ago
commit 4d07ddc7e8

@ -32,6 +32,7 @@ class _MonthlyFragmentState extends State<MonthlyFragment> {
focusedDay: DateTime.now(), focusedDay: DateTime.now(),
calendarFormat: CalendarFormat.month, calendarFormat: CalendarFormat.month,
weekendDays: const [], weekendDays: const [],
rowHeight: 45,
availableGestures: AvailableGestures.none, availableGestures: AvailableGestures.none,
onCalendarCreated: (controller) { onCalendarCreated: (controller) {
_controller = controller; _controller = controller;

@ -1,145 +0,0 @@
// import 'package:flutter/material.dart';
// import 'package:table_calendar/table_calendar.dart';
// import 'package:test_sa/extensions/int_extensions.dart';
// import 'package:test_sa/extensions/text_extensions.dart';
// import 'package:test_sa/extensions/widget_extensions.dart';
// import 'package:test_sa/new_views/app_style/app_color.dart';
// import 'package:test_sa/new_views/pages/land_page/calender_fragments/monthly_fragment.dart';
// import 'package:test_sa/new_views/pages/land_page/calender_fragments/weekly_fragment.dart';
//
// class CalenderPage extends StatefulWidget {
// CalenderPage({Key key}) : super(key: key);
//
// @override
// _CalenderPageState createState() {
// return _CalenderPageState();
// }
// }
//
// class _CalenderPageState extends State<CalenderPage> {
// int selectedIndex = 0;
// DateTime currentDateTime = DateTime.now();
//
// PageController _pageController;
//
// @override
// void initState() {
// _pageController = PageController();
// super.initState();
// }
//
// @override
// void dispose() {
// _pageController.dispose();
// super.dispose();
// }
//
// @override
// Widget build(BuildContext context) {
// return Scaffold(
// body: Column(
// children: [
// // todo @sikander, hiding My shift view, later when they add data, then will us it.
// Container(
// width: double.infinity,
// padding: const EdgeInsets.all(16),
// decoration: ShapeDecoration(
// color: Colors.white,
// shape: RoundedRectangleBorder(
// borderRadius: BorderRadius.circular(20),
// ),
// shadows: const [
// BoxShadow(
// color: Color(0x07000000),
// blurRadius: 14,
// offset: Offset(0, 0),
// spreadRadius: 0,
// )
// ],
// ),
// child: Column(
// crossAxisAlignment: CrossAxisAlignment.start,
// mainAxisSize: MainAxisSize.min,
// children: [
// Text(
// 'My Shift',
// style: AppTextStyles.heading5.copyWith(color: AppColor.neutral50),
// ),
// 8.height,
// Text(
// 'Sunday to Thursday',
// style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)),
// ),
// Text(
// '09:00 to 18:00',
// style: AppTextStyles.bodyText.copyWith(color: AppColor.neutral50),
// ),
// ],
// ),
// ),
//
// Container(
// width: double.infinity,
// padding: const EdgeInsets.all(4),
// decoration: ShapeDecoration(
// color: const Color(0xFFEAF1F4),
// shape: RoundedRectangleBorder(
// borderRadius: BorderRadius.circular(16),
// ),
// shadows: const [
// BoxShadow(
// color: Color(0x07000000),
// blurRadius: 14,
// offset: Offset(0, 0),
// spreadRadius: 0,
// )
// ],
// ),
// child: Row(
// children: [
// tabItem("Monthly", 0, selectedIndex, () => onTabPress(0)),
// tabItem("Weekly", 1, selectedIndex, () => onTabPress(1)),
// tabItem("Daily", 2, selectedIndex, () => onTabPress(2)),
// ],
// ),
// ),
// 8.height,
// PageView(
// controller: _pageController,
// onPageChanged: (index) => onTabPress(index),
// children: [
// MonthlyFragment(),
// WeeklyFragment(),
// Container(),
// ],
// ).expanded,
// ],
// ),
// );
// }
//
// void onTabPress(index) {
// if (selectedIndex != index) {
// setState(() {
// selectedIndex = index;
// });
// _pageController.jumpToPage(index);
// }
// }
//
// Widget tabItem(String title, int index, int selectedIndex, VoidCallback onPress) {
// return Container(
// alignment: Alignment.center,
// padding: const EdgeInsets.only(top: 14, bottom: 14),
// decoration: ShapeDecoration(
// color: index == selectedIndex ? Colors.white : Colors.transparent,
// shape: RoundedRectangleBorder(
// borderRadius: BorderRadius.circular(13),
// ),
// ),
// child: Text(
// title,
// style: AppTextStyles.bodyText.copyWith(color: index == selectedIndex ? AppColor.neutral60 : const Color(0xFF757575)),
// )).onPress(onPress).expanded;
// }
// }

@ -7,6 +7,7 @@ import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/visits/visit.dart'; import 'package:test_sa/models/visits/visit.dart';
import 'package:test_sa/new_views/common_widgets/default_app_bar.dart'; import 'package:test_sa/new_views/common_widgets/default_app_bar.dart';
import 'package:test_sa/views/pages/user/visits/pantry/edit_pentry.dart';
import '../../../../controllers/providers/api/user_provider.dart'; import '../../../../controllers/providers/api/user_provider.dart';
import '../../../../models/enums/user_types.dart'; import '../../../../models/enums/user_types.dart';
@ -79,8 +80,7 @@ class VisitDetailsPage extends StatelessWidget {
if (userProvider.user.type == UsersTypes.engineer && visit.status.id != 270) if (userProvider.user.type == UsersTypes.engineer && visit.status.id != 270)
AppFilledButton( AppFilledButton(
onPressed: () { onPressed: () {
print(visit.status.id); Navigator.of(context).push(MaterialPageRoute(builder: (_) => EditPentry(visit: visit, pentry: visit.pentry)));
// Navigator.of(context).push(MaterialPageRoute(builder: (_) => EditPentry(visit: visit, pentry: visit.pentry)));
}, },
label: context.translation.updateRequest, label: context.translation.updateRequest,
).paddingAll(16), ).paddingAll(16),

@ -14,83 +14,73 @@ class AssetItemListView extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Container( return Row(
padding: const EdgeInsets.all(16), children: [
decoration: ShapeDecoration( Container(
color: Colors.white, width: 95,
shape: RoundedRectangleBorder( height: 95,
borderRadius: BorderRadius.circular(20), decoration: ShapeDecoration(
color: const Color(0xFFEAF1F4),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
),
image: DecorationImage(
fit: BoxFit.cover,
image: NetworkImage(device.assetPhoto != null ? URLs.getFileUrl(device.assetPhoto) : "https://www.lasteelcraft.com/images/no-image-available.png"),
)),
), ),
shadows: const [BoxShadow(color: Color(0x07000000), blurRadius: 14, offset: Offset(0, 0), spreadRadius: 0)], 15.width,
), Column(
child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ crossAxisAlignment: CrossAxisAlignment.start,
Container( children: [
width: 95, Column(
height: 95, crossAxisAlignment: CrossAxisAlignment.start,
decoration: ShapeDecoration( mainAxisSize: MainAxisSize.min,
color: const Color(0xFFEAF1F4), children: [
shape: RoundedRectangleBorder( Text(
borderRadius: BorderRadius.circular(10), device.modelDefinition.assetName,
maxLines: 2,
style: AppTextStyles.heading5.copyWith(color: Color(0xFF3B3D4A)),
), ),
image: DecorationImage( Text(
fit: BoxFit.cover, "${context.translation.assetNumber} : ${device.assetNumber}",
image: NetworkImage(device.assetPhoto != null ? URLs.getFileUrl(device.assetPhoto) : "https://www.lasteelcraft.com/images/no-image-available.png"), style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)),
)), ),
), Text(
15.width, "${context.translation.model} : ${device.modelDefinition.modelDefCode}",
Column( style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)),
mainAxisAlignment: MainAxisAlignment.spaceBetween, ),
crossAxisAlignment: CrossAxisAlignment.start, ],
children: [ ),
Column( Row(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.end,
mainAxisSize: MainAxisSize.min, children: [
children: [ Text(
Text( "${context.translation.serialNo} : ${device.assetSerialNo}",
device.modelDefinition.assetName, maxLines: 2,
maxLines: 2, style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)),
style: AppTextStyles.heading5.copyWith(color: Color(0xFF3B3D4A)), ).expanded,
), Row(
Text( mainAxisSize: MainAxisSize.min,
"${context.translation.assetNumber} : ${device.assetNumber}", children: [
style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)), Text(
), context.translation.viewDetails,
Text( style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF4A8DB7)),
"${context.translation.model} : ${device.modelDefinition.modelDefCode}", ),
style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)), 4.width,
), const Icon(
], Icons.arrow_forward,
), color: Color(0xFF4A8DB7),
Row( size: 14,
crossAxisAlignment: CrossAxisAlignment.end, )
children: [ ],
Text( ),
"${context.translation.serialNo} : ${device.assetSerialNo}", ],
maxLines: 2, )
style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)), ],
).expanded, ).expanded
Row( ],
mainAxisSize: MainAxisSize.min, ).toShadowContainer(context).onPress(() => onPressed(device));
children: [
Text(
context.translation.viewDetails,
style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF4A8DB7)),
),
4.width,
const Icon(
Icons.arrow_forward,
color: Color(0xFF4A8DB7),
size: 14,
)
],
),
],
)
],
).expanded
],
),
).onPress(() => onPressed(device));
} }
} }

@ -22,80 +22,73 @@ class VisitItem extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
UserProvider userProvider = Provider.of<UserProvider>(context); UserProvider userProvider = Provider.of<UserProvider>(context);
return Container( return Row(
decoration: ShapeDecoration( crossAxisAlignment: CrossAxisAlignment.start,
color: Colors.white, children: [
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), Column(
shadows: const [BoxShadow(color: Color(0x07000000), blurRadius: 14, offset: Offset(0, 0), spreadRadius: 0)], crossAxisAlignment: CrossAxisAlignment.start,
), children: [
padding: const EdgeInsets.all(16), Row(
margin: EdgeInsets.only(bottom: 8.toScreenHeight), children: [
child: Row( // StatusLabel(
crossAxisAlignment: CrossAxisAlignment.start, // label: visit.priority.name,
children: [ // id: visit.priority.id,
Column( // textColor: AColors.getPriorityStatusTextColor(visit.priority.id),
crossAxisAlignment: CrossAxisAlignment.start, // backgroundColor: AColors.getPriorityStatusColor(visit.priority.id)),
children: [ // 8.width,
Row( StatusLabel(
children: [ label: visit.status.name,
// StatusLabel( id: visit.status.id,
// label: visit.priority.name, textColor: AColors.getRequestStatusTextColorByName(visit.status.name),
// id: visit.priority.id, backgroundColor: AColors.getRequestStatusColorByName(visit.status.name),
// textColor: AColors.getPriorityStatusTextColor(visit.priority.id), ),
// backgroundColor: AColors.getPriorityStatusColor(visit.priority.id)), 1.width.expanded,
// 8.width, ],
StatusLabel( ),
label: visit.status.name, 8.height,
id: visit.status.id, Text(visit.deviceEnglishName, style: AppTextStyles.heading5.copyWith(color: const Color(0xFF3B3D4A))),
textColor: AColors.getRequestStatusTextColorByName(visit.status.name), 8.height,
backgroundColor: AColors.getRequestStatusColorByName(visit.status.name), Text(
), '${context.translation.assetNumber}: ${visit.deviceNumber}',
1.width.expanded, style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)),
], ),
), Text(
8.height, '${context.translation.assetSN}: ${visit.deviceSerialNumber}',
Text(visit.deviceEnglishName, style: AppTextStyles.heading5.copyWith(color: const Color(0xFF3B3D4A))), style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)),
8.height, ),
Text( Text(
'${context.translation.assetNumber}: ${visit.deviceNumber}', '${context.translation.code}: ${visit.serialNumber}',
style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)), style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)),
), ),
Text( 16.height,
'${context.translation.assetSN}: ${visit.deviceSerialNumber}', Row(
style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)), mainAxisSize: MainAxisSize.min,
), children: [
Text( Text(
'${context.translation.code}: ${visit.serialNumber}', context.translation.viewDetails,
style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF757575)), style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF4A8DB7)),
), ),
16.height, 4.width,
Row( const Icon(Icons.arrow_forward, color: Color(0xFF4A8DB7), size: 14)
mainAxisSize: MainAxisSize.min, ],
children: [ ).onPress(() {
Text( Navigator.of(context).push(MaterialPageRoute(builder: (_) => VisitDetailsPage(visit: visit)));
context.translation.viewDetails, }),
style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF4A8DB7)), ],
), ).expanded,
4.width, 8.width,
const Icon(Icons.arrow_forward, color: Color(0xFF4A8DB7), size: 14) Column(
], crossAxisAlignment: CrossAxisAlignment.end,
).onPress(() { children: [
Navigator.of(context).push(MaterialPageRoute(builder: (_) => VisitDetailsPage(visit: visit))); if (userProvider.user.type == UsersTypes.engineer && visit.status.id != 270)
"edit".toSvgAsset(height: 48, width: 48).onPress(() {
Navigator.of(context).push(MaterialPageRoute(builder: (_) => EditPentry(visit: visit, pentry: visit.pentry)));
}), }),
], if (userProvider.user.type == UsersTypes.engineer && visit.status.id != 270) 8.height,
).expanded, Text(visit.createdOn != null ? visit.createdOn.toServiceRequestCardFormat : "", textAlign: TextAlign.end, style: AppTextStyles.tinyFont.copyWith(color: const Color(0xFF3B3D4A))),
8.width, ],
Column( )
children: [ ],
if (userProvider.user.type == UsersTypes.engineer && visit.status.value != 5 && visit.status.value != 3) ).toShadowContainer(context).paddingOnly(bottom: 8);
context.translation.edit.toSvgAsset(height: 48, width: 48).onPress(() {
Navigator.of(context).push(MaterialPageRoute(builder: (_) => EditPentry(visit: visit, pentry: visit.pentry)));
}),
Text(visit.createdOn != null ? visit.createdOn.toServiceRequestCardFormat : "", textAlign: TextAlign.end, style: AppTextStyles.tinyFont.copyWith(color: const Color(0xFF3B3D4A))),
],
)
],
),
);
} }
} }

Loading…
Cancel
Save