// ignore_for_file: prefer_const_literals_to_create_immutables import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:flutter/material.dart'; import 'package:flutter_application_1/Project/Admin/HomeAdmin.dart'; import 'package:flutter_application_1/Project/Admin/inforuserB.dart'; const Color aColor = Color.fromARGB(219, 58, 168, 50); const Color cColor = Color.fromARGB(246, 255, 255, 246); const Color bColor = Color.fromARGB(153, 28, 240, 187); class BorrowAdmin extends StatelessWidget { final FirebaseAuth _auth = FirebaseAuth.instance; BorrowAdmin({super.key}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( leadingWidth: 80, automaticallyImplyLeading: false, backgroundColor: bColor, title: Row( children: [ Row( children: [ IconButton( onPressed: () { Navigator.push(context, MaterialPageRoute(builder: ((context) => const HomeAdmin()))); }, icon: const Icon(Icons.arrow_back)), const Text('Borrwed Approval page'), ], ), ], ), ), body: Container( constraints: const BoxConstraints.expand(), decoration: const BoxDecoration( image: DecorationImage( image: NetworkImage( "https://i.pinimg.com/originals/77/7b/07/777b07a784b619eb9840734261133cbd.jpg"), fit: BoxFit.cover), ), child: Padding( padding: const EdgeInsets.only(top: 16.0, left: 16, right: 16), child: StreamBuilder( stream: FirebaseFirestore.instance.collection("request").snapshots(), builder: (context, snapshot) { if (snapshot.hasData) { return ListView.builder( scrollDirection: Axis.vertical, itemCount: snapshot.data!.docs.length, itemBuilder: (context, index) { if (snapshot.data!.docs[index]["Status"] == 'Check') { return Padding( padding: const EdgeInsets.all(16.0), child: Container( decoration: BoxDecoration( color: cColor, border: Border.all(color: aColor, width: 1), borderRadius: BorderRadius.circular(12), ), child: ListTile( leading: IconButton( onPressed: () { editData(snapshot.data!.docs[index].id); Navigator.push( context, MaterialPageRoute( builder: ((context) => inB( ema: snapshot .data! .docs[index] ["EmailUserreq"] .toString(), an: snapshot.data! .docs[index]["Name"] .toString(), bd: snapshot .data! .docs[index] ["BorrowingDay"] .toString(), rd: snapshot .data! .docs[index] ["ReturnDay"] .toString(), )))); // } }, icon: const Icon(Icons.check)), // title: Text(snapshot.data!.docs[index]["Asset_Description"],style: TextStyle(fontSize: 13),), subtitle: Text( snapshot.data!.docs[index]["Name"] + '\n' + 'BorrowingDay: ' + snapshot.data!.docs[index] ['BorrowingDay'] + '\n' + 'ReturnDay: ' + snapshot.data!.docs[index]['ReturnDay'] + '\n' + 'EmailRequest: ' + snapshot.data!.docs[index] ['EmailUserreq'] + '\n' + 'DateTime: ' + snapshot.data!.docs[index]['Timerequest'], style: const TextStyle(fontSize: 10), ), trailing: IconButton( onPressed: () { editData2(snapshot.data!.docs[index].id); }, icon: const Icon(Icons.close)), ), ), ); } return Column(); }, ); } else if (snapshot.hasError) { return Text('Error: ${snapshot.error}'); } else { return const CircularProgressIndicator(); } }, ), ), )); } Future editData(String docId) async { var data = {'Status': 'Accept'}; FirebaseFirestore.instance .collection('request') .doc(docId) .update(data) .then( (value) => print('Updating done!'), onError: (e) => print('Error $e'), ); } Future editData2(String docId) async { var data = {'Status': 'Decine'}; FirebaseFirestore.instance .collection('request') .doc(docId) .update(data) .then( (value) => print('Updating done!'), onError: (e) => print('Error $e'), ); } Future deleteData(String docId) async { FirebaseFirestore.instance.collection('request').doc(docId).delete().then( (value) => print('Updating done!'), onError: (e) => print('Error $e'), ); } }