// ignore_for_file: library_private_types_in_public_api import 'package:fikoyt_merkez/apps/mesaici/servisler/fikoyt.mesaici.service.dart'; import 'package:fikoyt_merkez/apps/mesaici/widgets/mesaici_navigasyon/mesaici_navigasyon.dart'; import 'package:fikoyt_merkez/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:flutter_multi_formatter/flutter_multi_formatter.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 '../../../../core/widgets/yazi_kutulari/yazi_kutulari.dart'; import '../../base_page_mesaici_view.dart'; import '../../widgets/uygulama_baslik/uygulama_baslik.dart'; class PagePrimlerKesintilerLogic extends GetxController {} class PageMesaiciPrimlerKesintiler extends StatefulWidget { const PageMesaiciPrimlerKesintiler({super.key}); @override _PageMesaiciPrimlerKesintilerState createState() => _PageMesaiciPrimlerKesintilerState(); } class _PageMesaiciPrimlerKesintilerState extends State { PagePrimlerKesintilerLogic logic = Get.put(PagePrimlerKesintilerLogic()); BasePageLogic basePageLogic = Get.put(BasePageLogic()); BasePageMesaiciLogic basePageMesaiciLogic = Get.put(BasePageMesaiciLogic()); final FikoYTMesaiciService servisMesaici = Get.put(FikoYTMesaiciService()); final FikoYTService servisFikoYT = FikoYTService(); //---> @override Widget build(BuildContext context) { SchedulerBinding.instance.addPostFrameCallback((_) { basePageLogic.subTitle.value = "💊 Primler / Kesintiler"; }); 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.blueAccent.shade100, radius: 54, child: const CircleAvatar( radius: 54, child: Text( "💊", style: TextStyle( fontSize: 54, ), ), ), //CircleAvatar ), //CircleAvatar ), //CircleAvatar ), FikoButton1( text: "Primler / Kesintiler", 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.people, // // color: Colors.lightBlue, size: 14), // // color: Colors.white, // onPressed: () async { // context.vRouter.to("/mesaici/arkadaslar"); // // Scaffold.of(context).openEndDrawer(); // // context.vRouter.to("/uye/arkadaslar"); // }, // ), // ), // 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: () { // if (kDebugMode) { // context.vRouter.to("/mesaici/mesajlar"); // // Scaffold.of(context).openEndDrawer(); // // print('clicked'); // } // }, // child: const Text("✉️"), // // const Icon(Icons.mail, // // 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( "Primler / Kesintilerinizi Bu Sayfadan Düzenleyebilirsiniz", style: TextStyle(color: Colors.grey.shade800, fontSize: 10), ), ), const MesaiciNavigasyon(), ], ), ), ], ), body: [ Padding( padding: const EdgeInsets.all(5), child: Column( children: [ const Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Expanded( child: Divider( indent: 20.0, endIndent: 10.0, thickness: 1, ), ), Text( "🩺 Sgk Primi", style: TextStyle(color: Colors.blueGrey, fontSize: 14), ), Expanded( child: Divider( indent: 10.0, endIndent: 20.0, thickness: 1, ), ), ], ), ListTile( leading: const SizedBox( // height: double.infinity, child: Text( "⛔", style: TextStyle( fontSize: 36, ), ), ), title: const Text( 'Sgk Primi İstisnası', style: TextStyle( fontWeight: FontWeight.w600, ), ), dense: false, subtitle: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( 'Sgk Primi İstisnası', style: TextStyle( fontWeight: FontWeight.w300, ), ), FikoYaziKutusu( baslik: "Sgk Primi İstisnası", simgeSol: const Text( "⛔", style: TextStyle(fontSize: 22), ), klavyeTipi: TextInputType.number, formatlayicilar: [ CurrencyInputFormatter( trailingSymbol: "₺", ) // MaskedInputFormatter( // '00000-0000-M00-B00-N# ', // allowedCharMatcher: RegExp("^[0-9]*\$"), // ), ], degeri: servisMesaici .mesaiciAyarlar.primAyarlari.sgkPrimiIstisna.value .toCurrencyString(trailingSymbol: '₺'), degisti: (value) { servisMesaici.mesaiciAyarlar.primAyarlari .sgkPrimiIstisna.value = double.parse( value.replaceAll("₺", "").replaceAll(",", "")); }, ), ], ), // trailing: const Icon(Icons.chevron_right_sharp), isThreeLine: true, splashColor: Colors.grey.shade300, ), ListTile( leading: const SizedBox( // height: double.infinity, child: Text( "🩺", style: TextStyle( fontSize: 36, ), ), ), title: const Text( 'Sgk Priminiz', style: TextStyle( fontWeight: FontWeight.w600, ), ), dense: false, subtitle: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( 'Sgk Primi Oranı', style: TextStyle( fontWeight: FontWeight.w300, ), ), FikoYaziKutusu( baslik: "Sgk Primi Oranı", simgeSol: const Text( "🩺", style: TextStyle(fontSize: 22), ), klavyeTipi: TextInputType.number, formatlayicilar: [ CurrencyInputFormatter( trailingSymbol: "%", ) // MaskedInputFormatter( // '00000-0000-M00-B00-N# ', // allowedCharMatcher: RegExp("^[0-9]*\$"), // ), ], degeri: servisMesaici .mesaiciAyarlar.primAyarlari.sgkPrimiOrani.value .toCurrencyString(trailingSymbol: '%'), degisti: (value) { servisMesaici.mesaiciAyarlar.primAyarlari.sgkPrimiOrani .value = double.parse( value.replaceAll("%", "").replaceAll(",", "")); }, ), ], ), // trailing: const Icon(Icons.chevron_right_sharp), isThreeLine: true, splashColor: Colors.grey.shade300, ), const Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Expanded( child: Divider( indent: 20.0, endIndent: 10.0, thickness: 1, ), ), Text( "🚶🏻‍♂️ İşsizlik Primi", style: TextStyle(color: Colors.blueGrey, fontSize: 14), ), Expanded( child: Divider( indent: 10.0, endIndent: 20.0, thickness: 1, ), ), ], ), ListTile( leading: const SizedBox( // height: double.infinity, child: Text( "⛔", style: TextStyle( fontSize: 36, ), ), ), title: const Text( 'İşsizlik Primi İstisnası', style: TextStyle( fontWeight: FontWeight.w600, ), ), dense: false, subtitle: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( 'İşsizlik Primi İstisnası', style: TextStyle( fontWeight: FontWeight.w300, ), ), FikoYaziKutusu( baslik: "İşsizlik Primi İstisnası", simgeSol: const Text( "⛔", style: TextStyle(fontSize: 22), ), klavyeTipi: TextInputType.number, formatlayicilar: [ CurrencyInputFormatter( trailingSymbol: "₺", ) // MaskedInputFormatter( // '00000-0000-M00-B00-N# ', // allowedCharMatcher: RegExp("^[0-9]*\$"), // ), ], degeri: servisMesaici.mesaiciAyarlar.primAyarlari .issizlikPrimiIstisna.value .toCurrencyString(trailingSymbol: '₺'), degisti: (value) { servisMesaici.mesaiciAyarlar.primAyarlari .issizlikPrimiIstisna.value = double.parse( value.replaceAll("₺", "").replaceAll(",", "")); }, ), ], ), // trailing: const Icon(Icons.chevron_right_sharp), isThreeLine: true, splashColor: Colors.grey.shade300, ), ListTile( leading: const SizedBox( // height: double.infinity, child: Text( "🚶🏻‍♂️", style: TextStyle( fontSize: 36, ), ), ), title: const Text( 'İşsizlik Priminiz', style: TextStyle( fontWeight: FontWeight.w600, ), ), dense: false, subtitle: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( 'İşsizlik Primi Oranı', style: TextStyle( fontWeight: FontWeight.w300, ), ), FikoYaziKutusu( baslik: "İşsizlik Primi Oranı", simgeSol: const Text( "🩺", style: TextStyle(fontSize: 22), ), klavyeTipi: TextInputType.number, formatlayicilar: [ CurrencyInputFormatter( trailingSymbol: "%", ) // MaskedInputFormatter( // '00000-0000-M00-B00-N# ', // allowedCharMatcher: RegExp("^[0-9]*\$"), // ), ], degeri: servisMesaici .mesaiciAyarlar.primAyarlari.issizlikPrimiOrani.value .toCurrencyString(trailingSymbol: '%'), degisti: (value) { servisMesaici.mesaiciAyarlar.primAyarlari .issizlikPrimiOrani.value = double.parse( value.replaceAll("%", "").replaceAll(",", "")); }, ), ], ), // trailing: const Icon(Icons.chevron_right_sharp), isThreeLine: true, splashColor: Colors.grey.shade300, ), Row( mainAxisAlignment: MainAxisAlignment.center, children: [ const Expanded( child: Divider( indent: 20.0, endIndent: 10.0, thickness: 1, ), ), const Text( "🍕 Ek Primler", style: TextStyle(color: Colors.blueGrey, fontSize: 14), ), const Expanded( child: Divider( indent: 10.0, endIndent: 20.0, thickness: 1, ), ), 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), ), ), ], ), Column( children: [ Padding( padding: const EdgeInsets.only( left: 24, right: 24, top: 15, bottom: 24), child: Stack( clipBehavior: Clip.none, children: [ Padding( padding: const EdgeInsets.only(top: 20), child: Container( decoration: BoxDecoration( color: Colors.blueAccent.shade100.withOpacity(0.2), borderRadius: const BorderRadius.only( topLeft: Radius.circular(8.0), bottomLeft: Radius.circular(8.0), bottomRight: Radius.circular(8.0), topRight: Radius.circular(8.0)), border: Border.all(color: Colors.blueAccent), boxShadow: [ BoxShadow( color: Colors.grey.withOpacity(0.2), // offset: const Offset(0.9, 0.9), offset: const Offset(3, 3), spreadRadius: 5, blurRadius: 10.0, ), ], ), child: Padding( padding: const EdgeInsets.only( left: 46, bottom: 12, right: 16, top: 12), child: Column( children: [ Text( 'Henüz Ek Prim Tanımlanmamış.', textAlign: TextAlign.left, style: TextStyle( fontWeight: FontWeight.w500, fontSize: 12, letterSpacing: 0.0, color: Colors.blueAccent.shade700, ), ), Align( alignment: Alignment.centerRight, child: TextButton( // icon: const Text("💡"), child: const Text( "➕ Hemen Tanımlayın", style: TextStyle( color: Colors.blue, fontWeight: FontWeight.bold, fontSize: 12, ), ), onPressed: () {}, ), ) ], ), ), ), ), const Positioned( top: -10, left: 0, child: SizedBox( width: 80, height: 80, child: Text( "👻", style: TextStyle(fontSize: 40), ), ), ) ], ), ), ], ), ], ), ), ], // bottomNavigationBar: // BottomNavigationBar( // items: const [ // BottomNavigationBarItem( // icon: Text( // "📋", // style: TextStyle( // fontSize: 18, // ), // ), // label: 'Ayrıntılı', // backgroundColor: Colors.white, // tooltip: "Ayrıntılı"), // BottomNavigationBarItem( // icon: Text( // "🪄", // style: TextStyle( // fontSize: 18, // ), // ), // label: 'Sihirbaz', // tooltip: 'Sihirbaz', // backgroundColor: Colors.green, // ), // ], // currentIndex: 0, // selectedItemColor: Colors.amber[800], // onTap: (value) {}, // ), // const SizedBox( // height: 36, // child: DefaultTabController( // length: 2, // child: TabBar( // labelStyle: TextStyle(fontSize: 10), // labelPadding: EdgeInsets.zero, // indicatorPadding: EdgeInsets.zero, // padding: EdgeInsets.zero, // tabs: [ // Tab( // icon: Tooltip( // message: "Ayrıntılı Ayarlar", // child: Text( // "📋", // style: TextStyle( // fontSize: 18, // ), // ), // ), // // text: "Ayrıntılı", // ), // Tab( // icon: Tooltip( // message: "Ayar Sihirbazı", // child: Text( // "🪄", // style: TextStyle( // fontSize: 18, // ), // ), // ), // // text: "Sihirbaz", // ), // ], // ), // ), // ), 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(); } }