From 5f9951607893e3144ff015a34da3a5da97011b77 Mon Sep 17 00:00:00 2001 From: payacom <59262811+payacom@users.noreply.github.com> Date: Tue, 15 Sep 2026 13:20:41 +0330 Subject: [PATCH] =?UTF-8?q?fix:=20shop=20profile=20product=20count=20?= =?UTF-8?q?=E2=80=94=20approved-only=20for=20visitors,=20total=20for=20own?= =?UTF-8?q?er?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit توی پروفایل عمومی فروشگاه تعداد کالا فقط شاملِ کالاهای تاییدشده (active) می‌شه؛ خودِ مالک فروشگاه توی پروفایلِ خودش تعداد کل کالاها (هر وضعیتی) رو می‌بینه. Co-Authored-By: Claude Sonnet 5 --- controllers/application/shops/shopController.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/controllers/application/shops/shopController.js b/controllers/application/shops/shopController.js index 9834e3e..b70bc3a 100644 --- a/controllers/application/shops/shopController.js +++ b/controllers/application/shops/shopController.js @@ -212,10 +212,11 @@ const getShopPublic = async (req, res, next) => { return shopError(res, 404, 'فروشگاه یافت نشد') } - const productCount = await ShopProductListingModel.countDocuments({ - shop: shop._id, - status: { $in: ['active', 'pending_shop_approval'] } - }) + // طبق خواسته‌ی کاربر: بازدیدکننده‌ی عمومی فقط تعداد کالاهای تاییدشده (active) رو + // ببینه؛ خودِ مالکِ فروشگاه توی پروفایلِ خودش تعداد کلِ کالاها (هر وضعیتی) رو ببینه + const productCount = isOwner + ? await ShopProductListingModel.countDocuments({ shop: shop._id }) + : await ShopProductListingModel.countDocuments({ shop: shop._id, status: 'active' }) const ratingAgg = await ShopRatingModel.aggregate([ { $match: { shop: shop._id } },