import 'package:carousel_slider/carousel_slider.dart';
import 'package:farmer_client/pages/TabBar/widgets/home/widgets/headers.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:get/get_core/src/get_main.dart';
import '../../../../models/app.dart';
import '../../../../models/entities/banner.dart';
import '../../../../services/homeAPI.dart';
import '../../../../widgets/CarsCard.dart';
import 'package:farmer_client/models/app.dart';
import '../../../../widgets/layout/BasicPage.dart';
import '../../../MoreCars/index.dart';



class HomePage extends BasicPage {

  final bannerList = Rx<List<banner>>([]);

  @override
  void beforeShow() {
    final location = AppController.t.locationStr;

    getHomeBanner('banner').then((value) {
      value.forEach((item) {
        bannerList.value.add(banner.fromJson(item));
      });
    });
  }

  List<Widget>? _renderList() {
    return bannerList.value.map((item) => Container(
      child: Center(
          child: Image.network(item.thumb.toString(),
              fit: BoxFit.cover, width: 350.w)),
    )).toList();
  }

  @override
  Widget builder (BuildContext context) {
    return Container(
      alignment: Alignment.center,
      padding: EdgeInsets.fromLTRB(15.w, 0, 15.w, 0),
      child: Column(
        children: [
          Container(
            child: TypeHeader(
              type: true,
            ),
          ),
          Container(
            margin: EdgeInsets.fromLTRB(0, 15, 0, 0),
            child:
                Obx(() => CarouselSlider(
              items: _renderList(),
              options: CarouselOptions(
                autoPlay: true,
                enlargeCenterPage: false, //图片中心放大
                viewportFraction: 1, //每个页面应占据的视口部分。默认为 0.8,这意味着每个页面填充 80% 的轮播。
                // aspectRatio: 1.6,//纵横比
                height: 214.w,
                initialPage: 1, //初始页
              ),
            )),
          ),
          Container(
              margin: EdgeInsets.fromLTRB(0, 20, 0, 20),
              child: Column(
                children: [
                  Row(
                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
                    children: [
                      Container(
                        child: Row(
                          children: [
                            Padding(
                              padding: EdgeInsets.fromLTRB(0, 0, 8, 0),
                              child: Image(
                                image:
                                    AssetImage('images/icons/carsListImga.png'),
                                fit: BoxFit.cover,
                                width: 20.w,
                              ),
                            ),
                            Text(
                              '农机列表',
                              style: TextStyle(
                                  color: Color(0xff222222),
                                  fontSize: 20.sp,
                                  fontWeight: FontWeight.bold),
                            )
                          ],
                        ),
                      ),
                      Container(
                        child: GestureDetector(
                          child: Text('更多 >>'),
                          onTap: () {
                            print('点我进入农机搜索/更多页');
                            Get.to(MoreCars());
                          },
                        ),
                      )
                    ],
                  ),
                  CarsCard(),
                  CarsCard(),
                  CarsCard(),
                ],
              )),
        ],
      ),
    );
  }
}