You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mohemm-flutter-app/lib/ui/dialogs/id/employee_digital_id_dialog....

94 lines
3.5 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/extensions/int_extensions.dart';
import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:mohem_flutter_app/widgets/button/default_button.dart';
import 'package:qr_flutter/qr_flutter.dart';
import 'package:mohem_flutter_app/classes/utils.dart';
import 'package:mohem_flutter_app/main.dart';
class EmployeeDigitialIdDialog extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
width: double.infinity,
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Image.asset("assets/images/bn_logo.png"),
Padding(
padding: const EdgeInsets.all(20.0),
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Row(
children: [
Container(
width: 80,
height: 80,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: const BorderRadius.all(Radius.circular(12)),
boxShadow: [BoxShadow(color: Colors.white60, blurRadius: 10, spreadRadius: 10)],
),
clipBehavior: Clip.antiAlias,
child: (AppState().memberInformationList!.eMPLOYEEIMAGE == null || AppState().memberInformationList!.eMPLOYEEIMAGE!.isEmpty)
? Container(
color: Colors.grey[300],
child: SvgPicture.asset("assets/images/user.svg"),
)
: Image.memory(
Utils.getPostBytes(
AppState().memberInformationList!.eMPLOYEEIMAGE ?? "",
),
fit: BoxFit.cover,
),
),
16.width,
(AppState().memberInformationList!.eMPLOYEENUMBER ?? "").toText20(),
],
),
Container(
width: double.infinity,
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
12.height,
(AppState().memberInformationList!.eMPLOYEEDISPLAYNAME ?? "").toText16(),
4.height,
(showJobName(AppState().memberInformationList!.pOSITIONNAME ?? "")).toText12(isBold: false),
],
),
),
Image.memory(
Utils.getPostBytes(AppState().memberInformationList!.employeeQR ?? ""),
width: 160,
height: 160,
),
DefaultButton("Cancel", () {
Navigator.pop(context);
})
],
),
),
],
),
);
}
String showJobName(String position){
try{
var p=position.split(".");
return p[0]+" "+p[1];
}catch(e){
return "";
}
}
}