import 'package:easy_localization/easy_localization.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/generated/locale_keys.g.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: const BoxDecoration(
                        color: Colors.white,
                        borderRadius: 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.dataFromBase64String(
                                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(LocaleKeys.close.tr(), () {
                  Navigator.pop(context);
                })
              ],
            ),
          ),
        ],
      ),
    );
  }

  String showJobName(String position){
    try{
      var p=position.split(".");
      return p[0]+" "+p[1];
    }catch(e){
      return "";
    }

  }
}
