// ignore_for_file: library_private_types_in_public_api import 'package:fikoyt_finans/apps/mesaici/pages/ayarlar/calisma_sureleri/vardiyalar.dart'; import 'package:fikoyt_finans/apps/mesaici/widgets/mesaici_navigasyon/mesaici_navigasyon.dart'; import 'package:fikoyt_finans/core/widgets/fiko_ui/fiko_button/fiko_button.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/scheduler.dart'; import 'package:get/get.dart'; import 'package:vrouter/vrouter.dart'; import '../../../../../core/fikoyt.service.dart'; import '../../../../../core/widgets/base_page/base_page_view.dart'; import '../../../../../core/widgets/draggable_home.dart'; import '../../../../../core/widgets/fikoyt_elastic/fikoyt_elastic.dart'; import '../../../base_page_mesaici_view.dart'; import '../../../widgets/uygulama_baslik/uygulama_baslik.dart'; class PageHesapAyarlariLogic extends GetxController {} class PageMesaiciCalismSureleri extends StatefulWidget { const PageMesaiciCalismSureleri({super.key}); @override _PageMesaiciCalismaSureleriState createState() => _PageMesaiciCalismaSureleriState(); } class _PageMesaiciCalismaSureleriState extends State { PageHesapAyarlariLogic logic = Get.put(PageHesapAyarlariLogic()); BasePageLogic basePageLogic = Get.put(BasePageLogic()); BasePageMesaiciLogic basePageMesaiciLogic = Get.put(BasePageMesaiciLogic()); // final FikoYTMesaiciService FikoYTService.servisMesaici = Get.put(FikoYTMesaiciService()); final FikoYTService servisFikoYT = FikoYTService(); //---> @override Widget build(BuildContext context) { SchedulerBinding.instance.addPostFrameCallback((_) { basePageLogic.subTitle.value = "🕒 Çalışma Süreleri"; }); ScreenSizeTypes screenType = FikoYTElastic.getScreenSizeType(context); [ // ScreenSizeTypes.small, ScreenSizeTypes.mini, ScreenSizeTypes.extraMini ].contains(screenType); return DraggableHome( leading: const UygulamaBaslikSol(), title: UygulamaBaslikOrta(), actions: const [ UygulamaBaslikSag(), ], headerWidget: PageView( children: [ Container( color: Colors.transparent, //Colors.orange, height: 300 - kToolbarHeight - 10, margin: const EdgeInsets.only(top: kToolbarHeight, bottom: 10, right: 10, left: 10), child: Column( children: [ Center( child: CircleAvatar( backgroundColor: Colors.blueAccent.shade700, radius: 64, child: CircleAvatar( backgroundColor: Colors.grey.shade50, radius: 54, child: const CircleAvatar( radius: 54, child: Text( "🕒", style: TextStyle( fontSize: 54, ), ), ), //CircleAvatar ), //CircleAvatar ), //CircleAvatar ), FikoButton1( text: "Çalışma Süreleri", textSize: 24, textStrokeColor: Colors.blue, ), SizedBox( height: 24.0, child: ListView( shrinkWrap: true, scrollDirection: Axis.horizontal, children: [ SizedBox( width: 33, child: MaterialButton( elevation: 0, minWidth: 0, shape: RoundedRectangleBorder( borderRadius: const BorderRadius.all(Radius.circular(5)), side: BorderSide(width: 1, color: Colors.blue.withOpacity(0.5), style: BorderStyle.solid), ), padding: const EdgeInsets.all(0), child: const Text("🏠"), // const Icon(Icons.home, // color: Colors.lightBlue, size: 14), // color: Colors.white, onPressed: () async { // Scaffold.of(context).openEndDrawer(); context.vRouter.to("/mesaici"); }, ), ), const SizedBox(width: 3), SizedBox( width: 33, child: MaterialButton( elevation: 0, minWidth: 0, shape: RoundedRectangleBorder( borderRadius: const BorderRadius.all(Radius.circular(5)), side: BorderSide(width: 1, color: Colors.blue.withOpacity(0.5), style: BorderStyle.solid), ), padding: const EdgeInsets.all(0), // color: Colors.white, onPressed: () async { // Scaffold.of(context).openEndDrawer(); context.vRouter.to("/mesaici/bildirimler"); }, child: const Text("🛎️"), // const Icon(Icons.notifications, // color: Colors.lightBlue, size: 14), ), ), const SizedBox(width: 3), SizedBox( width: 33, child: MaterialButton( elevation: 0, minWidth: 0, shape: RoundedRectangleBorder( borderRadius: const BorderRadius.all(Radius.circular(5)), side: BorderSide(width: 1, color: Colors.blue.withOpacity(0.5), style: BorderStyle.solid), ), padding: const EdgeInsets.all(0), child: const Text("⚙️"), // const Icon(Icons.settings, // color: Colors.lightBlue, size: 14), // color: Colors.white, onPressed: () { // if (kDebugMode) { context.vRouter.to("/mesaici/ayarlar"); // Scaffold.of(context).openEndDrawer(); if (kDebugMode) { print('clicked'); } // } }, ), ), ], ), ), Center( child: Text( "Çalışma Sürelerinizi Bu Sayfadan Düzenleyebilirsiniz", style: TextStyle(color: Colors.grey.shade800, fontSize: 10), ), ), const MesaiciNavigasyon(), ], ), ), ], ), body: [ Padding( padding: const EdgeInsets.all(5), child: Column(children: [ // ListTile( // leading: const SizedBox( // // height: double.infinity, // child: Text( // "📆", // style: TextStyle( // fontSize: 36, // ), // ), // ), // title: const Text( // ' Aylık Çalışma Günü', // style: TextStyle( // fontWeight: FontWeight.w600, // ), // ), // dense: false, // subtitle: Column( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // const Text( // 'Maaşınız Kaç Gün Üzerinden Hesaplanıcak', // style: TextStyle( // fontWeight: FontWeight.w300, // ), // ), // Obx( // () => Slider( // value: FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikMaasGunu?.toDouble() ?? 31, // // label: "", // min: 1, // max: 31, // onChanged: (double value) { // FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikMaasGunu = value.toInt(); // FikoYTService.servisMesaici.ayarlarModel!.refresh(); // }, // ), // ), // Align( // alignment: Alignment.centerRight, // child: Obx( // () => Text( // " ${FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikMaasGunu} Gün", // style: const TextStyle( // fontWeight: FontWeight.bold, // color: Colors.teal, // ), // ), // ), // ), // ], // ), // // trailing: const Icon(Icons.chevron_right_sharp), // isThreeLine: true, // splashColor: Colors.grey.shade300, // onTap: () {}, // ), // ListTile( // leading: const SizedBox( // // height: double.infinity, // child: Text( // "🕥", // style: TextStyle( // fontSize: 36, // ), // ), // ), // title: const Text( // ' Aylık Çalışma Saati', // style: TextStyle( // fontWeight: FontWeight.w600, // ), // ), // dense: false, // subtitle: Column( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // const Text( // 'Bir Aylık Çalışma Saatiniz', // style: TextStyle( // fontWeight: FontWeight.w300, // ), // ), // // Obx( // // () => Slider( // // value: FikoYTService.servisMesaici.aylikMaasGunu.value.toDouble(), // // // label: "", // // min: 1, // // max: 31, // // onChanged: (double value) { // // FikoYTService.servisMesaici.aylikCalismaSaati.value = value; // // FikoYTService.servisMesaici.ayarlariKaydet(); // // }, // // ), // // ), // Row( // mainAxisAlignment: MainAxisAlignment.end, // children: [ // Obx( // () => FikoButton1( // text: "⏳ ${FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati?.insanizeEk( // ekler: ['Saat', 'Dakika', 'Saniye'], // ) ?? 'Yok'}", // textSize: 12, // edgePadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 1), // textColor: Colors.teal, // textStrokeColor: Colors.transparent, // // borderColor: Colors.blue, // onPressed: () async { // FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati = await (FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati ?? const Duration(microseconds: 0)).sureSec(context, // ayarlar: FikoDialogAyarlari(baslik: "Aylık Çalışma Saati Seçiniz", baslikSimge: "🕥", icerik: [ // Row( // mainAxisAlignment: MainAxisAlignment.center, // children: [ // FikoButton1( // text: "⏳ 270 Saat", // textSize: 10, // edgePadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 1), // textColor: Colors.black, // textStrokeColor: Colors.transparent, // borderColor: Colors.blue, // onPressed: () { // FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati = const Duration(hours: 270); // // gunObs.refresh(); // FikoYTService.servisMesaici.ayarlarModel!.refresh(); // Navigator.pop(context, FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati); // }, // ), // const SizedBox( // width: 5, // ), // FikoButton1( // text: "⏳ 225 Saat", // textSize: 10, // edgePadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 1), // textColor: Colors.black, // textStrokeColor: Colors.transparent, // borderColor: Colors.blue, // onPressed: () { // FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati = const Duration(hours: 225); // // gunObs.refresh(); // FikoYTService.servisMesaici.ayarlarModel!.refresh(); // Navigator.pop(context, FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati); // }, // ), // const SizedBox( // width: 5, // ), // FikoButton1( // text: "⏳ 180 Saat", // textSize: 10, // edgePadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 1), // textColor: Colors.black, // textStrokeColor: Colors.transparent, // borderColor: Colors.blue, // onPressed: () { // FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati = const Duration(hours: 180); // // gunObs.refresh(); // FikoYTService.servisMesaici.ayarlarModel!.refresh(); // Navigator.pop(context, FikoYTService.servisMesaici.ayarlarModel!.value.calismaSuresiAyarlari.aylikCalismaSaati); // }, // ), // ], // ), // ])); // FikoYTService.servisMesaici.ayarlarModel!.refresh(); // }, // ), // ), // ], // ), // ], // ), // // trailing: const Icon(Icons.chevron_right_sharp), // isThreeLine: true, // splashColor: Colors.grey.shade300, // onTap: () {}, // ), /** Vardiya Bölümü */ VardiyalarWidget(), /** */ ]), ), ], headerExpandedHeight: 315, // stretchMaxHeight: 100, fullyStretchable: false, backgroundColor: Colors.grey.shade200, centerTitle: true, alwaysShowLeadingAndAction: true, appBarColor: Colors.blue.shade500, alwaysShowTitle: true, curvedBodyRadius: 0, onStretchTrigger: () async { context.vRouter.to("/"); }, ); } @override void dispose() { Get.delete(); super.dispose(); } }