import 'package:ef/ef.dart';
import 'package:flutter/material.dart';
import 'package:flutterflow_ui/flutterflow_ui.dart';
import 'package:vbvs_app/common/color/ServiceConstant.dart';

import 'package:vbvs_app/common/util/FitTool.dart';
import 'package:vbvs_app/common/util/MyUtils.dart';
import 'package:vbvs_app/common/util/requestWithLog.dart';
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
import 'package:vbvs_app/controller/main_bottom/global_controller.dart';
import 'package:vbvs_app/controller/mh_controller/people_info_controller.dart';

class DevicePeopleInfo extends GetView<PeopleInfoController> {
  Map data;
  DevicePeopleInfo({required this.data});

  PeopleInfoController controller = Get.put(PeopleInfoController());
  getInfoRow(context, String str) {
    return Container(
      width: double.infinity,
      height: 60.rpx,
      decoration: BoxDecoration(),
      alignment: Alignment.centerLeft,
      child: Text(
        '$str',
        style: TextStyle(
          fontFamily: 'Readex Pro',
          color: Colors.white,
          fontSize: 26.rpx,
          letterSpacing: 0,
        ),
      ),
    );
  }

  @override
  Widget build(BuildContext context) {
    return LayoutBuilder(
      builder: (context, boxConstraints) => GestureDetector(
          onTap: () => FocusScope.of(context).unfocus(),
          child: Container(
            decoration: const BoxDecoration(
              image: DecorationImage(
                image: AssetImage('assets/images/new_background.png'), // 本地图片
                fit: BoxFit.fill, // 填满整个 Container
              ),
            ),
            child: Scaffold(
              backgroundColor: Colors.transparent,
              appBar: AppBar(
                backgroundColor: Colors.transparent,
                automaticallyImplyLeading: false,
                iconTheme: IconThemeData(color: Colors.white),
                titleSpacing: 0,
                title: AppBar(
                  backgroundColor: Colors.transparent,
                  iconTheme: const IconThemeData(color: Colors.white),
                  automaticallyImplyLeading: false,
                  titleSpacing: 0,
                  title: SizedBox(
                    width: double.infinity,
                    height: 180.rpx,
                    child: Stack(
                      alignment: Alignment.center,
                      children: [
                        // 中间居中的标题
                        Text(
                          '详情',
                          textAlign: TextAlign.center,
                          style: TextStyle(
                            color: Colors.white,
                            fontSize: 30.rpx,
                          ),
                        ),
                        // 左侧图标
                        Positioned(
                          left: 0.rpx,
                          child: returnIconButtomNew,
                        ),
                      ],
                    ),
                  ),
                  centerTitle: false,
                ),
                actions: [],
                centerTitle: false,
              ),
              body: SafeArea(
                top: true,
                child: Obx(
                  () => Container(
                    padding: EdgeInsets.only(
                        left: 30.rpx, right: 30.rpx, top: 30.rpx),
                    width: MediaQuery.sizeOf(context).width,
                    height: MediaQuery.sizeOf(context).height * 1.123,
                    // decoration: BoxDecoration(
                    //   // color: AppColors.bg_color,
                    //   image: DecorationImage(
                    //     image: AssetImage("assets/images/background.png"),
                    //     fit: BoxFit.cover,
                    //   ),
                    // ),
                    child: SingleChildScrollView(
                      child: Column(
                        mainAxisSize: MainAxisSize.max,
                        children: [
                          ClickableContainer(
                              backgroundColor: Color(0xFFFF036060),
                              highlightColor: Colors.transparent,
                              borderRadius: 16.rpx,
                              padding: EdgeInsets.fromLTRB(
                                  30.rpx, 20.rpx, 0, 20.rpx),
                              onTap: () {},
                              child: Container(
                                decoration: BoxDecoration(
                                    borderRadius:
                                        BorderRadius.circular(16.rpx)),
                                child: Column(
                                  crossAxisAlignment: CrossAxisAlignment.start,
                                  children: [
                                    Container(
                                      alignment: Alignment.centerLeft,
                                      child: Text(
                                        '设备信息',
                                        style: TextStyle(
                                          fontFamily: 'Readex Pro',
                                          color: Colors.white,
                                          fontSize: 30.rpx,
                                        ),
                                      ),
                                    ),
                                    getInfoRow(
                                        context, "名称：${data["name"] ?? "-"}"),
                                    getInfoRow(context,
                                        "房间：${data["roomName"] ?? "-"}"),
                                    getInfoRow(
                                      context,
                                      "网络：${data["status"]?["status"] == 1 ? "在线" : data["status"]?["status"] == 0 ? "不在线" : "-"}",
                                    ),
                                    getInfoRow(
                                        context, "MAC：${data["mac"] ?? "-"}"),
                                  ],
                                ),
                              )),
                          if (controller.model.peopleList.isNotEmpty)
                            ...List.generate(controller.model.peopleList.length,
                                (index) {
                              final person = controller.model.peopleList[index];
                              // String location_ = '';
                              // if ("${data["bindMacB"]}".length > 6 &&
                              //     (person["direction"] == 1 ||
                              //         person["direction"] == 2)) {
                              //   location_ =
                              //       person["direction"] == 1 ? '左侧' : '右侧';
                              // }

                              return ClickableContainer(
                                backgroundColor: Color(0xFF003058),
                                highlightColor: Color(0xFF036060),
                                borderRadius: 16.rpx,
                                padding: EdgeInsets.fromLTRB(
                                    30.rpx, 20.rpx, 30.rpx, 20.rpx),
                                onTap: () {},
                                child: Column(
                                  children: [
                                    Container(
                                      width: double.infinity,
                                      alignment: Alignment.centerLeft,
                                      child: Text(
                                        '人员资料${index == 0 ? "A" : "B"}',
                                        style: TextStyle(
                                          fontFamily: 'Readex Pro',
                                          color: Colors.white,
                                          fontSize: 32.rpx,
                                          letterSpacing: 0,
                                        ),
                                      ),
                                    ),
                                    getInfoRow(
                                        context, "姓名：${person["name"] ?? "-"}"),
                                    getInfoRow(context,
                                        "性别：${person["gender"] == null ? "-" : (person["gender"] == 1 ? "男" : "女")}"),
                                    getInfoRow(context,
                                        "身高：${person["height"] == null ? "-" : "${person["height"]}cm"}"),
                                    getInfoRow(context,
                                        "体重：${person["weight"] == null ? "-" : "${person["weight"]}kg"}"),
                                    getInfoRow(context,
                                        "生日：${person["birthday"] == null ? "-" : time_08_Formatter_pattern(person["birthday"], "yyyy年MM月dd日")}"),
                                    getInfoRow(
                                        context, "电话：${person["tel"] ?? "-"}"),
                                    getInfoRow(context,
                                        "紧急联系人：${person["contact"] ?? "-"}"),
                                  ],
                                ),
                              );
                            })
                        ].divide(SizedBox(
                          height: 25.rpx,
                        )),
                      ),
                    ),
                  ),
                ),
              ),
            ),
          )),
    );
  }
}
