import 'package:EasyDartModule/EasyDartModule.dart' as edm;
import 'package:ef/ef.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:flutterflow_ui/flutterflow_ui.dart';
import 'package:fluwx/fluwx.dart';
import 'package:vbvs_app/common/color/appConstants.dart';
import 'package:vbvs_app/common/color/app_uri_status.dart';
import 'package:vbvs_app/common/util/CheckNetwork.dart';
import 'package:vbvs_app/common/util/CommonVariables.dart';
import 'package:vbvs_app/common/util/DailyLogUtils.dart';
import 'package:vbvs_app/common/util/FitTool.dart';
import 'package:vbvs_app/common/util/MyUtils.dart';
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
import 'package:vbvs_app/component/tool/CustomCard.dart';
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
import 'package:vbvs_app/controller/login/login_controller.dart';
import 'package:vbvs_app/controller/main_bottom/global_controller.dart';
import 'package:vbvs_app/controller/theme_controller/ThemeController.dart';
import 'package:vbvs_app/controller/time/countdown_controller.dart';
import 'package:vbvs_app/controller/user_info_controller.dart';
import 'package:vbvs_app/main.dart';
import 'package:vbvs_app/model/api_response.dart';

class OtherLoginPage extends StatefulWidget {
  const OtherLoginPage({super.key});

  @override
  State<OtherLoginPage> createState() => _OtherLoginPageState();
}

class _OtherLoginPageState extends State<OtherLoginPage> {
  GlobalController globalController = Get.find();
  UserInfoController userInfoController = Get.find();
  ThemeController themeController = Get.find();
  CountdownController countdownController = Get.find();
  LoginController loginController = Get.find();

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    super.initState();
    LoginController loginController = Get.find();
    Fluwx fluwx = loginController.fluwx;
    if (isiOS) {
      loginController.model.isIos = true;
      fluwx.isWeChatInstalled.then((isWeChatInstalled) {
        debugPrint('is wechat installed: $isWeChatInstalled');
        if (!isWeChatInstalled) {
          // TODO ios未安装微信 隐藏微信一键登录按钮
          loginController.model.isWeChatNotInstalled = false;
        } else {
          loginController.model.isWeChatNotInstalled = true;
        }
        loginController.updateAll();
      });
    }
    // 微信监听回调
    loginController.fluwxCancelable = fluwx.addSubscriber((response) async {
      if (response is WeChatAuthResponse) {
        debugPrint('state :${response.state} \n code:${response.code}');
        int errCode = response.errCode ?? -9999;
        if (errCode == 0) {
          // TODO 微信登录成功 传递code给后台 再操作逻辑
          String code = response.code ?? "";
          //把微信登录返回的code传给后台，剩下的事就交给后台处理
          //首次未注册的用户引导去手机号填写页面
          //已注册的用户直接跳转首页
          if (CommonVariables.isNetWorkOn == false) {
            showToast("网络未连接，请开启设备网络后重试");
            return;
          }
          ApiResponse msg = await loginController.loginByWechatCode(code);
          if (msg.code == HttpStatusCodes.ok) {
            // TODO 操作全部跳转页面前成功以后移除监听，防止重复监听，其他方式登录成功也需要移出监听
            loginController.fluwxCancelable?.cancel();
            // 登录成功移出网络检查监听
            Checknetwork.subscription?.cancel();
            Get.offAndToNamed("/mianPageBottomChange");
          }
          // TODO 操作全部跳转页面前成功以后移除监听，防止重复监听，其他方式登录成功也需要移出监听
          // fluwxCancelable?.cancel();
        } else if (errCode == -4) {
          showToast("用户拒绝授权");
        } else if (errCode == -2) {
          showToast("用户取消授权");
        }
      }
    });
  }

  @override
  Widget build(BuildContext context) {
    return LayoutBuilder(
      builder: (context, bodysize) => GestureDetector(
          onTap: () => FocusScope.of(context).unfocus(),
          child: Container(
            decoration: BoxDecoration(
              image: DecorationImage(
                image: AssetImage('assets/img/bgImage.png'), // 本地图片
                fit: BoxFit.fill, // 填满整个 Container
              ),
            ),
            child: Scaffold(
              resizeToAvoidBottomInset: false,
              backgroundColor: Colors.transparent,
              body: SafeArea(
                top: true,
                child: Padding(
                  padding:
                      EdgeInsetsDirectional.fromSTEB(75.rpx, 0.rpx, 75.rpx, 0),
                  child: Column(
                    mainAxisSize: MainAxisSize.max,
                    crossAxisAlignment: CrossAxisAlignment.start,
                    children: [
                      SizedBox(
                        height: 66.rpx,
                      ),
                      ClickableContainer(
                        backgroundColor: Colors.transparent, // 容器背景色
                        highlightColor:
                            themeController.currentColor.sc21, // 点击时的背景色
                        padding: EdgeInsets.zero, // 这里去掉外部的 padding，避免影响点击范围
                        onTap: () {
                          Get.back();
                        },
                        child: Padding(
                          padding: EdgeInsetsDirectional.fromSTEB(
                              16.rpx, 10.rpx, 16.rpx, 10.rpx),
                          child: SvgPicture.asset(
                            'assets/img/icon/arrow_left.svg',
                            width: 25.rpx,
                            height: 25.rpx, // 如果 SVG 中没有固定颜色，使用 color 设置
                            color: themeController.currentColor.sc3,
                          ),
                        ),
                      ),
                      Expanded(
                        child: SingleChildScrollView(
                          child: Column(
                            mainAxisSize: MainAxisSize.max,
                            children: [
                              Align(
                                alignment: AlignmentDirectional(-1, 0),
                                child: Padding(
                                  padding: EdgeInsetsDirectional.fromSTEB(
                                      0, 141.rpx, 0, 0),
                                  child: Container(
                                    width: double.infinity,
                                    decoration: BoxDecoration(),
                                    child: Align(
                                      alignment: AlignmentDirectional(0, 0),
                                      child: Text(
                                        AppConstants().ent_type == 1?'登录页.欢迎使用太和e护'.tr:"欢迎使用欢睡科技",
                                        style: TextStyle(
                                          fontFamily: 'Inter',
                                          fontSize: 48.rpx,
                                          letterSpacing: 0.0,
                                          color:
                                              themeController.currentColor.sc3,
                                        ),
                                      ),
                                    ),
                                  ),
                                ),
                              ),
                              Align(
                                alignment: AlignmentDirectional(-1, 0),
                                child: Padding(
                                  padding: EdgeInsetsDirectional.fromSTEB(
                                      0, 15.rpx, 0, 0),
                                  child: Container(
                                    width: double.infinity,
                                    decoration: BoxDecoration(),
                                    child: Align(
                                      alignment: AlignmentDirectional(0, 0),
                                      child: Text(
                                        '登录页.科技睡眠 洞悉万千'.tr,
                                        style: TextStyle(
                                          fontFamily: 'Inter',
                                          fontSize: 30.rpx,
                                          letterSpacing: 0.0,
                                          color:
                                              themeController.currentColor.sc3,
                                        ),
                                      ),
                                    ),
                                  ),
                                ),
                              ),
                              Align(
                                alignment: AlignmentDirectional(-1, 0),
                                child: Padding(
                                  padding: EdgeInsetsDirectional.fromSTEB(
                                      0, 95.rpx, 0, 0),
                                  child: Container(
                                    width: double.infinity,
                                    height: bodysize.maxHeight * 0.056,
                                    decoration: BoxDecoration(
                                      color: Colors.transparent,
                                      borderRadius: BorderRadius.circular(
                                          AppConstants()
                                              .button_container_radius),
                                      border: Border.all(
                                        color: themeController.currentColor.sc4
                                            .withOpacity(0.5),
                                        width: AppConstants().border_width,
                                      ),
                                    ),
                                    constraints: BoxConstraints(
                                      minHeight: 90.rpx,
                                    ),
                                    child: Padding(
                                      padding: EdgeInsetsDirectional.fromSTEB(
                                          35.rpx, 0, 35.rpx, 0),
                                      child: Row(
                                        mainAxisSize: MainAxisSize.max,
                                        mainAxisAlignment:
                                            MainAxisAlignment.spaceBetween,
                                        children: [
                                          Expanded(
                                            child: Container(
                                              child: Align(
                                                alignment:
                                                    AlignmentDirectional(-1, 0),
                                                child: TextFormField(
                                                  onChanged: (value) {
                                                    loginController
                                                        .model.phone = value;
                                                  },
                                                  autofocus: false,
                                                  obscureText: false,
                                                  decoration: InputDecoration(
                                                    isDense: true,
                                                    labelStyle: TextStyle(
                                                      fontFamily: 'Inter',
                                                      fontSize: 26.rpx,
                                                      letterSpacing: 0.0,
                                                    ),
                                                    hintText: '其他手机登录页.输入内容'.tr,
                                                    hintStyle: TextStyle(
                                                      fontFamily: 'Inter',
                                                      fontSize: 26.rpx,
                                                      letterSpacing: 0.0,
                                                      color: themeController
                                                          .currentColor.sc4,
                                                    ),
                                                    enabledBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color:
                                                            Color(0x00000000),
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    focusedBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color:
                                                            Color(0x00000000),
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    errorBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color: Colors.red,
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    focusedErrorBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color:
                                                            Colors.red,
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    filled: false,
                                                    fillColor: Colors.white,
                                                  ),
                                                  style: TextStyle(
                                                    fontFamily: 'Inter',
                                                    fontSize: 26.rpx,
                                                    letterSpacing: 0.0,
                                                    color: themeController
                                                        .currentColor.sc3,
                                                  ),
                                                  cursorColor: themeController
                                                      .currentColor.sc3,
                                                  // validator: _model
                                                  //     .textControllerValidator
                                                  //     .asValidator(context),
                                                ),
                                              ),
                                            ),
                                          ),
                                        ],
                                      ),
                                    ),
                                  ),
                                ),
                              ),
                              Align(
                                alignment: AlignmentDirectional(-1, 0),
                                child: Padding(
                                  padding: EdgeInsetsDirectional.fromSTEB(
                                      0, 26.rpx, 0, 0),
                                  child: Container(
                                    height: bodysize.maxHeight * 0.056,
                                    width: double.infinity,
                                    decoration: BoxDecoration(
                                      color: Colors.transparent,
                                      borderRadius: BorderRadius.circular(
                                          AppConstants()
                                              .button_container_radius),
                                      border: Border.all(
                                        color: themeController.currentColor.sc4
                                            .withOpacity(0.5),
                                        width: AppConstants().border_width,
                                      ),
                                    ),
                                    constraints: BoxConstraints(
                                      minHeight: 90.rpx,
                                    ),
                                    child: Padding(
                                      padding: EdgeInsetsDirectional.fromSTEB(
                                          35.rpx, 0, 35.rpx, 0),
                                      child: Row(
                                        mainAxisSize: MainAxisSize.max,
                                        mainAxisAlignment:
                                            MainAxisAlignment.spaceBetween,
                                        children: [
                                          Expanded(
                                            child: Container(
                                              child: Align(
                                                alignment:
                                                    AlignmentDirectional(-1, 0),
                                                child: TextFormField(
                                                  onChanged: (value) {
                                                    loginController.model.code =
                                                        value;
                                                  },
                                                  autofocus: false,
                                                  obscureText: false,
                                                  decoration: InputDecoration(
                                                    isDense: true,
                                                    labelStyle: TextStyle(
                                                      fontFamily: 'Inter',
                                                      fontSize: 26.rpx,
                                                      letterSpacing: 0.0,
                                                    ),
                                                    hintText:
                                                        '其他手机登录页.输入验证码'.tr,
                                                    hintStyle: TextStyle(
                                                      fontFamily: 'Inter',
                                                      fontSize: 26.rpx,
                                                      letterSpacing: 0.0,
                                                      color: themeController
                                                          .currentColor.sc4,
                                                    ),
                                                    enabledBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color:
                                                            Color(0x00000000),
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    focusedBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color:
                                                            Color(0x00000000),
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    errorBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color: Colors.red,
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    focusedErrorBorder:
                                                        OutlineInputBorder(
                                                      borderSide: BorderSide(
                                                        color:
                                                            Colors.red,
                                                        width: 1.rpx,
                                                      ),
                                                      borderRadius:
                                                          BorderRadius.circular(
                                                              8.rpx),
                                                    ),
                                                    filled: true,
                                                    fillColor:
                                                        Colors.transparent,
                                                  ),
                                                  style: TextStyle(
                                                    fontFamily: 'Inter',
                                                    fontSize: 26.rpx,
                                                    letterSpacing: 0.0,
                                                    color: themeController
                                                        .currentColor.sc3,
                                                  ),
                                                  cursorColor: themeController
                                                      .currentColor.sc3,
                                                  // validator: _model
                                                  //     .textControllerValidator
                                                  //     .asValidator(context),
                                                ),
                                              ),
                                            ),
                                          ),
                                          Padding(
                                            padding:
                                                EdgeInsetsDirectional.fromSTEB(
                                                    26.rpx, 0, 0, 0),
                                            child: Row(
                                              mainAxisSize: MainAxisSize.max,
                                              children: [
                                                SizedBox(
                                                  height: 30.rpx,
                                                  child: VerticalDivider(
                                                    thickness: 2.rpx,
                                                    color: themeController
                                                        .currentColor.sc7,
                                                  ),
                                                ),
                                                Obx(() {
                                                  final CountdownController
                                                      countdownController =
                                                      Get.find<
                                                          CountdownController>();
                                                  return InkWell(
                                                    onTap: () async {
                                                      try {
                                                        DailyLogUtils.writeLog(
                                                            "点击获取验证码");
                                                        if (countdownController
                                                                .countdown
                                                                .value !=
                                                            0) {
                                                          return;
                                                        }
                                                        ApiResponse
                                                            apiResponse =
                                                            await loginController
                                                                .getCode(
                                                                    context);
                                                        if (apiResponse.code !=
                                                            HttpStatusCodes
                                                                .ok) {
                                                          TopSlideNotification
                                                              .show(
                                                            context,
                                                            text: apiResponse
                                                                .msg!,
                                                            textColor:
                                                                themeController
                                                                    .currentColor
                                                                    .sc9,
                                                          );
                                                          await DailyLogUtils
                                                              .writeLog(
                                                                  "获取验证码成功,${apiResponse}");
                                                          return;
                                                        } else {
                                                          TopSlideNotification
                                                              .show(
                                                            context,
                                                            text: apiResponse
                                                                .msg!,
                                                            textColor:
                                                                themeController
                                                                    .currentColor
                                                                    .sc2,
                                                          );
                                                          await DailyLogUtils
                                                              .writeLog(
                                                                  "获取验证码失败,${apiResponse}");
                                                        }
                                                        countdownController
                                                                    .countdown
                                                                    .value ==
                                                                0
                                                            ? countdownController
                                                                .startCountdown(
                                                                    AppConstants
                                                                        .code_time)
                                                            : null;
                                                      } catch (e) {
                                                        await DailyLogUtils
                                                            .writeLog(
                                                                "获取验证码异常,${e}");
                                                        edm.EasyDartModule
                                                            .logger
                                                            .info(
                                                                "获取验证码异常:${e}");
                                                      }
                                                    },
                                                    child: Container(
                                                      alignment:
                                                          Alignment.center,
                                                      constraints:
                                                          BoxConstraints(
                                                        minWidth: 150.rpx,
                                                      ),
                                                      child: Text(
                                                        countdownController
                                                                    .countdown
                                                                    .value ==
                                                                0
                                                            ? '其他手机登录页.获取验证码'.tr
                                                            : '${countdownController.countdown.value}' +
                                                                "其他手机登录页.秒".tr,
                                                        style: TextStyle(
                                                          fontFamily:
                                                              'Readex Pro',
                                                          color: themeController
                                                              .currentColor.sc2,
                                                          fontSize: AppConstants()
                                                              .title_text_fontSize,
                                                          letterSpacing: 0,
                                                        ),
                                                      ),
                                                    ),
                                                  );
                                                }),
                                              ].divide(SizedBox(width: 26.rpx)),
                                            ),
                                          ),
                                        ],
                                      ),
                                    ),
                                  ),
                                ),
                              ),
                              Padding(
                                padding: EdgeInsetsDirectional.fromSTEB(
                                    0, 26.rpx, 0, 0),
                                child: CustomCard(
                                  borderRadius: AppConstants()
                                      .button_container_radius, // 圆角半径
                                  onTap: () async {
                                    try {
                                      DailyLogUtils.writeLog("点击登录");
                                      bool agree =
                                          loginController.model.register_agree!;
                                      if (!agree) {
                                        TopSlideNotification.show(
                                          context,
                                          text: "登录页.未同意协议".tr,
                                          textColor:
                                              themeController.currentColor.sc9,
                                        );
                                      } else {
                                        ApiResponse apiResponse =
                                            await loginController
                                                .login(context);
                                        if (apiResponse.code !=
                                            HttpStatusCodes.ok) {
                                          TopSlideNotification.show(
                                            context,
                                            text: apiResponse.msg!,
                                            textColor: themeController
                                                .currentColor.sc9,
                                          );
                                        } else {
                                          // await dealBindProcess();
                                          CountdownController
                                              countdownController = Get.find();
                                          countdownController.countdown.value =
                                              0;
                                          // 登录成功，跳转到主页面
                                          TopSlideNotification.show(
                                            context,
                                            text: "其他手机登录页.登录成功".tr,
                                            textColor: themeController
                                                .currentColor.sc2,
                                          );
                                          // Get.offAllNamed('/homePage');
                                          Get.offAllNamed(
                                              "/mianPageBottomChange");
                                        }
                                      }
                                    } catch (e) {
                                      await DailyLogUtils.writeLog("登录失败,${e}");
                                      edm.EasyDartModule.logger
                                          .info("登录失败:${e}");
                                    }
                                  },
                                  colors: [
                                    themeController.currentColor.sc1,
                                    themeController.currentColor.sc2,
                                  ],

                                  child: Container(
                                    width: bodysize.maxWidth,
                                    height: MediaQuery.sizeOf(context).height *
                                        0.055,
                                    constraints: BoxConstraints(
                                      minWidth: 500.rpx,
                                      minHeight: 90.rpx,
                                    ),
                                    child: Row(
                                      mainAxisSize: MainAxisSize.max,
                                      mainAxisAlignment:
                                          MainAxisAlignment.center,
                                      children: [
                                        Text(
                                          '其他手机登录页.登录'.tr,
                                          style: TextStyle(
                                            color: themeController
                                                .currentColor.sc3,
                                            fontFamily: 'Inter',
                                            fontSize: AppConstants()
                                                .normal_text_fontSize,
                                            letterSpacing: 0.0,
                                          ),
                                        ),
                                      ].divide(SizedBox(
                                        width: 17.rpx,
                                      )),
                                    ),
                                  ),
                                ),
                              ),
                              Padding(
                                padding: EdgeInsetsDirectional.fromSTEB(
                                    25.rpx, 42.rpx, 25.rpx, 50.rpx),
                                child: Container(
                                  width: double.infinity,
                                  decoration: BoxDecoration(),
                                  child: Row(
                                    mainAxisSize: MainAxisSize.max,
                                    crossAxisAlignment:
                                        CrossAxisAlignment.start,
                                    children: [
                                      Theme(
                                          data: ThemeData(
                                            checkboxTheme: CheckboxThemeData(
                                              visualDensity:
                                                  VisualDensity.compact,
                                              materialTapTargetSize:
                                                  MaterialTapTargetSize
                                                      .shrinkWrap,
                                              shape: RoundedRectangleBorder(
                                                borderRadius:
                                                    BorderRadius.circular(64),
                                              ),
                                            ),
                                            unselectedWidgetColor:
                                                Color(0xFFD3D3D3),
                                          ),
                                          child: Obx(
                                            () => Checkbox(
                                              value: loginController
                                                      .model.register_agree ??
                                                  false,
                                              onChanged: (newValue) async {
                                                loginController.model
                                                    .register_agree = newValue;
                                                loginController.updateAll();
                                                // 获取设备信息,需要用户点击确认隐私协议与用户协议选择框时才能获取
                                                // if (newValue == true) {
                                                //   Deviceconfig
                                                //       .initPlatformState();
                                                // }
                                              },
                                              side: BorderSide(
                                                width: 1.5,
                                                color: Colors.white,
                                              ),
                                              activeColor:
                                                  stringToColor("#FF9F66"), //固定
                                              checkColor:
                                                  Colors.white,
                                            ),
                                          )),
                                      Expanded(
                                        child: Padding(
                                          padding:
                                              EdgeInsetsDirectional.fromSTEB(
                                                  0.rpx, 10.rpx, 0.rpx, 0.rpx),
                                          child: Container(
                                            width: bodysize.maxWidth,
                                            constraints: BoxConstraints(
                                              minWidth: 500.rpx,
                                              minHeight: 90.rpx,
                                            ),
                                            child: RichText(
                                              text: TextSpan(
                                                children: [
                                                  TextSpan(
                                                    text: '登录页.协议1'.tr,
                                                    style: TextStyle(
                                                      fontFamily: 'Inter',
                                                      letterSpacing: 0.0,
                                                      fontSize: 20.rpx,
                                                      color: themeController
                                                          .currentColor.sc3,
                                                    ),
                                                  ),
                                                  TextSpan(
                                                    text: '登录页.协议2'.tr,
                                                    style: TextStyle(
                                                      fontFamily: 'Inter',
                                                      letterSpacing: 0.0,
                                                      fontSize: 20.rpx,
                                                      color: stringToColor(
                                                          "#FF9F66"),
                                                    ),
                                                  ),
                                                  TextSpan(
                                                    text: '登录页.协议3'.tr,
                                                    style: TextStyle(
                                                      fontFamily: 'Inter',
                                                      letterSpacing: 0.0,
                                                      fontSize: 20.rpx,
                                                      color: themeController
                                                          .currentColor.sc3,
                                                    ),
                                                  ),
                                                  TextSpan(
                                                    text: '登录页.协议4'.tr,
                                                    style: TextStyle(
                                                      fontFamily: 'Inter',
                                                      letterSpacing: 0.0,
                                                      fontSize: 20.rpx,
                                                      color: stringToColor(
                                                          "#FF9F66"),
                                                    ),
                                                  ),
                                                  TextSpan(
                                                    text: '登录页.协议5'.tr,
                                                    style: TextStyle(
                                                      fontFamily: 'Inter',
                                                      letterSpacing: 0.0,
                                                      fontSize: 20.rpx,
                                                      color: themeController
                                                          .currentColor.sc3,
                                                    ),
                                                  ),
                                                  TextSpan(
                                                    text: '登录页.协议6'.tr,
                                                    style: TextStyle(
                                                      fontFamily: 'Inter',
                                                      letterSpacing: 0.0,
                                                      fontSize: 20.rpx,
                                                      color: stringToColor(
                                                          "#FF9F66"),
                                                    ),
                                                  ),
                                                ],
                                              ),
                                            ),
                                          ),
                                        ),
                                      ),
                                    ].divide(SizedBox(width: 18.rpx)),
                                  ),
                                ),
                              ),
                            ],
                          ),
                        ),
                      ),
                      Container(
                        width: double.infinity,
                        height: MediaQuery.sizeOf(context).height * 0.136,
                        constraints: BoxConstraints(
                          minHeight: 220.rpx,
                        ),
                        decoration: BoxDecoration(),
                        child: Column(
                          mainAxisSize: MainAxisSize.max,
                          children: [
                            Padding(
                              padding: EdgeInsetsDirectional.fromSTEB(
                                  0, 0, 0, 36.rpx),
                              child: Text(
                                '登录页.其他登录方式'.tr,
                                style: TextStyle(
                                  fontFamily: 'Inter',
                                  fontSize: 26.rpx,
                                  letterSpacing: 0.0,
                                  color: themeController.currentColor.sc3,
                                ),
                              ),
                            ),
                            Row(
                              mainAxisSize: MainAxisSize.max,
                              mainAxisAlignment: MainAxisAlignment.center,
                              children: [
                                ClickableContainer(
                                  backgroundColor: Colors.white, // 背景色
                                  highlightColor: Colors.grey, // 点击水波纹颜色
                                  borderRadius: 999.rpx,
                                  padding: EdgeInsets.zero,
                                  onTap: () async {
                                    //loginController.model.isIos == true &&
                                    if (loginController.model.register_agree ==
                                            null ||
                                        loginController.model.register_agree !=
                                            true) {
                                      TopSlideNotification.show(
                                        context,
                                        text: "登录页.未同意协议".tr,
                                        textColor:
                                            themeController.currentColor.sc9,
                                      );
                                      return;
                                    }
                                    await loginController
                                        .wxLoginSendAuth(context);
                                  },
                                  child: Container(
                                    width: 91.rpx,
                                    height: 91.rpx,
                                    clipBehavior: Clip.antiAlias,
                                    decoration: BoxDecoration(
                                      shape: BoxShape.circle,
                                    ),
                                    child: Image.asset(
                                      "assets/img/wechat.png",
                                      width: 30.rpx,
                                      height: 30.rpx,
                                    ),
                                  ),
                                ),
                                ClickableContainer(
                                  backgroundColor: Colors.white,
                                  highlightColor: Colors.grey,
                                  borderRadius: 999.rpx,
                                  padding: EdgeInsets.zero,
                                  onTap: () {
                                    TopSlideNotification.show(context,
                                        text: "待开发功能".tr);
                                  },
                                  child: Container(
                                    width: 91.rpx,
                                    height: 91.rpx,
                                    clipBehavior: Clip.antiAlias,
                                    decoration: BoxDecoration(
                                      shape: BoxShape.circle,
                                    ),
                                    child: Image.asset(
                                      "assets/img/tel.png",
                                      width: 30.rpx,
                                      height: 30.rpx,
                                    ),
                                  ),
                                ),
                                ClickableContainer(
                                  backgroundColor: Colors.white,
                                  highlightColor: Colors.grey,
                                  borderRadius: 999.rpx,
                                  padding: EdgeInsets.zero,
                                  onTap: () {
                                    TopSlideNotification.show(context,
                                        text: "待开发功能".tr);
                                  },
                                  child: Container(
                                    width: 91.rpx,
                                    height: 91.rpx,
                                    clipBehavior: Clip.antiAlias,
                                    decoration: BoxDecoration(
                                      shape: BoxShape.circle,
                                    ),
                                    child: Image.asset(
                                      "assets/img/google.png",
                                      width: 30.rpx,
                                      height: 30.rpx,
                                    ),
                                  ),
                                ),
                              ].divide(SizedBox(width: 35.rpx)),
                            ),
                          ],
                        ),
                      ),
                    ],
                  ),
                ),
              ),
            ),
          )),
    );
  }
}
