BASE: Update Icons & Name Of The App.

This commit is contained in:
2025-12-04 10:23:59 +05:00
parent b04050384d
commit e602782edd
228 changed files with 34364 additions and 7905 deletions

View File

@@ -12,7 +12,7 @@ import '../models/review_attribute_model.dart';
import '../service/fire_store_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';
import 'package:get/get.dart' hide Trans;
import 'package:image_picker/image_picker.dart';
import '../themes/show_toast_dialog.dart';
@@ -35,7 +35,8 @@ class RateProductController extends GetxController {
Rx<VendorModel> vendorModel = VendorModel().obs;
Rx<VendorCategoryModel> vendorCategoryModel = VendorCategoryModel().obs;
RxList<ReviewAttributeModel> reviewAttributeList = <ReviewAttributeModel>[].obs;
RxList<ReviewAttributeModel> reviewAttributeList =
<ReviewAttributeModel>[].obs;
RxDouble ratings = 0.0.obs;
@@ -54,7 +55,10 @@ class RateProductController extends GetxController {
orderModel.value = argumentData['orderModel'];
productId.value = argumentData['productId'];
await FireStoreUtils.getOrderReviewsByID(orderModel.value.id.toString(), productId.value).then((value) {
await FireStoreUtils.getOrderReviewsByID(
orderModel.value.id.toString(),
productId.value,
).then((value) {
if (value != null) {
ratingModel.value = value;
ratings.value = value.rating ?? 0.0;
@@ -64,23 +68,33 @@ class RateProductController extends GetxController {
}
});
await FireStoreUtils.getProductById(productId.value.split('~').first).then((value) {
await FireStoreUtils.getProductById(
productId.value.split('~').first,
).then((value) {
if (value != null) {
productModel.value = value;
if (ratingModel.value.id != null && ratingModel.value.id!.isNotEmpty) {
if (ratingModel.value.id != null &&
ratingModel.value.id!.isNotEmpty) {
productReviewCount.value = value.reviewsCount! - 1;
productReviewSum.value = value.reviewsSum! - ratings.value;
if (value.reviewAttributes != null) {
value.reviewAttributes!.forEach((key, value) {
ReviewsAttribute reviewsAttributeModel = ReviewsAttribute.fromJson(value);
reviewsAttributeModel.reviewsCount = reviewsAttributeModel.reviewsCount! - 1;
reviewsAttributeModel.reviewsSum = reviewsAttributeModel.reviewsSum! - reviewAttribute[key];
reviewProductAttributes.addEntries([MapEntry(key, reviewsAttributeModel.toJson())]);
ReviewsAttribute reviewsAttributeModel =
ReviewsAttribute.fromJson(value);
reviewsAttributeModel.reviewsCount =
reviewsAttributeModel.reviewsCount! - 1;
reviewsAttributeModel.reviewsSum =
reviewsAttributeModel.reviewsSum! - reviewAttribute[key];
reviewProductAttributes.addEntries([
MapEntry(key, reviewsAttributeModel.toJson()),
]);
});
}
} else {
productReviewCount.value = double.parse(value.reviewsCount.toString());
productReviewCount.value = double.parse(
value.reviewsCount.toString(),
);
productReviewSum.value = double.parse(value.reviewsSum.toString());
if (value.reviewAttributes != null) {
reviewProductAttributes.value = value.reviewAttributes!;
@@ -89,24 +103,33 @@ class RateProductController extends GetxController {
}
});
await FireStoreUtils.getVendorById(productModel.value.vendorID.toString()).then((value) {
await FireStoreUtils.getVendorById(
productModel.value.vendorID.toString(),
).then((value) {
if (value != null) {
vendorModel.value = value;
if (ratingModel.value.id != null && ratingModel.value.id!.isNotEmpty) {
if (ratingModel.value.id != null &&
ratingModel.value.id!.isNotEmpty) {
vendorReviewCount.value = value.reviewsCount! - 1;
vendorReviewSum.value = value.reviewsSum! - ratings.value;
} else {
vendorReviewCount.value = double.parse(value.reviewsCount.toString());
vendorReviewCount.value = double.parse(
value.reviewsCount.toString(),
);
vendorReviewSum.value = double.parse(value.reviewsSum.toString());
}
}
});
await FireStoreUtils.getVendorCategoryByCategoryId(productModel.value.categoryID.toString()).then((value) async {
await FireStoreUtils.getVendorCategoryByCategoryId(
productModel.value.categoryID.toString(),
).then((value) async {
if (value != null) {
vendorCategoryModel.value = value;
for (var element in vendorCategoryModel.value.reviewAttributes!) {
await FireStoreUtils.getVendorReviewAttribute(element).then((value) {
await FireStoreUtils.getVendorReviewAttribute(element).then((
value,
) {
reviewAttributeList.add(value!);
});
}
@@ -129,21 +152,36 @@ class RateProductController extends GetxController {
if (reviewProductAttributes.isEmpty) {
reviewAttribute.forEach((key, value) {
ReviewsAttribute reviewsAttributeModel = ReviewsAttribute(reviewsCount: 1, reviewsSum: value);
reviewProductAttributes.addEntries([MapEntry(key, reviewsAttributeModel.toJson())]);
ReviewsAttribute reviewsAttributeModel = ReviewsAttribute(
reviewsCount: 1,
reviewsSum: value,
);
reviewProductAttributes.addEntries([
MapEntry(key, reviewsAttributeModel.toJson()),
]);
});
} else {
reviewProductAttributes.forEach((key, value) {
ReviewsAttribute reviewsAttributeModel = ReviewsAttribute.fromJson(value);
reviewsAttributeModel.reviewsCount = reviewsAttributeModel.reviewsCount! + 1;
reviewsAttributeModel.reviewsSum = reviewsAttributeModel.reviewsSum! + reviewAttribute[key];
reviewProductAttributes.addEntries([MapEntry(key, reviewsAttributeModel.toJson())]);
ReviewsAttribute reviewsAttributeModel = ReviewsAttribute.fromJson(
value,
);
reviewsAttributeModel.reviewsCount =
reviewsAttributeModel.reviewsCount! + 1;
reviewsAttributeModel.reviewsSum =
reviewsAttributeModel.reviewsSum! + reviewAttribute[key];
reviewProductAttributes.addEntries([
MapEntry(key, reviewsAttributeModel.toJson()),
]);
});
}
for (int i = 0; i < images.length; i++) {
if (images[i].runtimeType == XFile) {
String url = await Constant.uploadUserImageToFireStorage(File(images[i].path), "profileImage/${FireStoreUtils.getCurrentUid()}", File(images[i].path).path.split('/').last);
String url = await Constant.uploadUserImageToFireStorage(
File(images[i].path),
"profileImage/${FireStoreUtils.getCurrentUid()}",
File(images[i].path).path.split('/').last,
);
images.removeAt(i);
images.insert(i, url);
}
@@ -155,7 +193,10 @@ class RateProductController extends GetxController {
photos: images,
rating: ratings.value,
customerId: FireStoreUtils.getCurrentUid(),
id: ratingModel.value.id != null && ratingModel.value.id!.isNotEmpty ? ratingModel.value.id : Constant.getUuid(),
id:
ratingModel.value.id != null && ratingModel.value.id!.isNotEmpty
? ratingModel.value.id
: Constant.getUuid(),
orderId: orderModel.value.id,
vendorId: productModel.value.vendorID,
createdAt: Timestamp.now(),