addtocart

This commit is contained in:
2025-01-30 18:59:34 +05:30
parent 12056d7521
commit 48fab4a1c0
21 changed files with 1662 additions and 742 deletions

View File

@@ -109,11 +109,7 @@ class _FruitVeggieDetailState extends State<FruitVeggieDetail> {
itemBuilder: (context, index) {
var product = provider.products[index];
print("jndsfkgkdfg ${product.isInWishlist}");
if (product.isInWishlist) {
provider.wishlist.add(product.id);
}
return Container(
height: itemHeight,
decoration: BoxDecoration(
@@ -151,41 +147,61 @@ class _FruitVeggieDetailState extends State<FruitVeggieDetail> {
"https://5.imimg.com/data5/SELLER/Default/2024/2/385126988/OL/DA/VW/8627346/1l-fortune-sunflower-oil.jpg",
backGroundColor: Colors.transparent,
),
// Positioned(
// right: 5,
// top: 5,
// child: InkWell(
// onTap: () async {
// if (await SharedPrefUtils.getToken() !=
// null) {
// if (product.isInWishlist) {
// Fluttertoast.showToast(
// msg: "Item already added!",
// toastLength: Toast.LENGTH_SHORT,
// gravity: ToastGravity.BOTTOM,
// backgroundColor: Colors.green,
// textColor: Colors.white,
// fontSize: 14.0,
// );
// } else {
// //product.isInWishlist=ture;
// provider
// .toggleWishlist1(product.id!);
// }
// } else {
// context.push(MyRoutes.LOGIN);
// }
// },
// child: Icon(
// product.isInWishlist
// ? Icons.favorite
// : Icons.favorite_border,
// color: product.isInWishlist
// ? Colors.red
// : Colors.grey,
// ),
// ),
// ),
Positioned(
right: 5,
top: 5,
child: InkWell(
onTap: () async {
if (await SharedPrefUtils.getToken() !=
null)
{
if (product.isInWishlist)
{
Fluttertoast.showToast(
msg: "Item already added!",
toastLength: Toast.LENGTH_SHORT,
gravity: ToastGravity.BOTTOM,
backgroundColor: Colors.green,
textColor: Colors.white,
fontSize: 14.0,
);
} else
{
//product.isInWishlist=ture;
provider.toggleWishlist1( product.id!);
}
null) {
provider.toggleWishlist(
context, product.id!);
} else {
context.push(MyRoutes.LOGIN);
}
},
child: Icon(
product.isInWishlist
provider.wishlist.contains(product.id)
? Icons.favorite
: Icons.favorite_border,
color: product.isInWishlist
color: provider.wishlist
.contains(product.id)
? Colors.red
: Colors.grey,
),
@@ -246,37 +262,56 @@ class _FruitVeggieDetailState extends State<FruitVeggieDetail> {
),
],
),
Expanded(
child: Align(
alignment: Alignment.centerRight,
child: GestureDetector(
onTap: () async {
if (await SharedPrefUtils.getToken() !=
null) {
provider.isLoading[product.id] ??
false
? null
: () => provider.addToCart(
context, product.id!);
} else {
context.push(MyRoutes.LOGIN);
}
},
child: Container(
height: 40,
width: 60,
decoration: BoxDecoration(
color: APPCOLOR.lightGreen,
borderRadius:
BorderRadius.circular(5),
),
child: Center(
child: Text(
'Add',
style: context.customRegular(
Colors.white, 12),
),
),
Spacer(),
Align(
alignment: Alignment.centerRight,
child: GestureDetector(
onTap: () async {
print(
"Add to Cart Pressed for ${product.id}");
if (await SharedPrefUtils.getToken() !=
null) {
await provider.addToCart(
context, product.id!);
} else {
context.push(MyRoutes.LOGIN);
}
},
child: Container(
height:
MediaQuery.of(context).size.height *
0.035,
width: MediaQuery.of(context).size.width *
0.1,
decoration: BoxDecoration(
color: APPCOLOR.lightGreen,
borderRadius: BorderRadius.circular(5),
),
child: Center(
child: provider.isLoading[product.id] ??
false
? Padding(
padding:
const EdgeInsets.all(8.0),
child: Container(
height: 10,
width: 10,
child:
CircularProgressIndicator(
color: Colors.white,
strokeWidth: 2),
),
)
: Text(
// provider.cartItems
// .contains(bestdealproduct.id)
// ? 'Added'
// :
'Add',
style: context.customRegular(
Colors.white, 12),
),
),
),
),