Kaynağa Gözat

增加粉丝数优化

shish 6 yıl önce
ebeveyn
işleme
efde4900ee

+ 8 - 7
biz/merchant/classes/MerchantAssetClass.php

@@ -14,24 +14,25 @@ class MerchantAssetClass extends BaseClass
 	public static $baseFile = '\biz\merchant\models\MerchantAsset';
 	
 	//增加客户数和粉丝数 shish 2019.9.7
-	public static function addUser($merchantId, $subscribe)
+	public static function addUser($merchantId, $subscribe, $add = false)
 	{
 		$asset = self::getByMerchantId($merchantId, true);
 		if ($subscribe == 1) {
-			$asset->totalUser += 1;
+			if ($add) {
+				$asset->totalUser += 1;
+			}
 			$asset->totalFans += 1;
 		} else {
 			$asset->totalUser += 1;
 		}
 		$asset->save();
-
 		//每天客户增加
-		StatUserClass::increase($merchantId, $asset, $subscribe);
+		StatUserClass::increase($merchantId, $asset, $subscribe, $add);
 		//每月客户增加
-		StatUserMonthClass::increase($merchantId, $asset, $subscribe);
+		StatUserMonthClass::increase($merchantId, $asset, $subscribe, $add);
 	}
-
-	//取消关注减少粉丝数 shish 2019.9.7
+	
+	//取消关注减少粉丝数 shish 2019.9.7
 	public static function reduceFans($merchantId)
 	{
 		$asset = self::getByMerchantId($merchantId, true);

+ 6 - 3
biz/stat/classes/StatUserClass.php

@@ -11,7 +11,7 @@ class StatUserClass extends BaseClass
 	public static $baseFile = '\biz\stat\models\StatUser';
 	
 	//增加客户数和粉丝数 shish 2020.5.13
-	public static function increase($merchantId, $merchantAsset, $subscribe)
+	public static function increase($merchantId, $merchantAsset, $subscribe, $add)
 	{
 		$time = date("Ymd");
 		$addTime = time();
@@ -21,8 +21,11 @@ class StatUserClass extends BaseClass
 			$stat = self::add($addData, true);
 		}
 		if ($subscribe == 1) {
-			$stat->totalUserNum = $merchantAsset->totalUser;
-			$stat->riseUserNum += 1;
+			//如果关注之前已经留有客户信息,无需再增加客户数
+			if ($add) {
+				$stat->totalUserNum = $merchantAsset->totalUser;
+				$stat->riseUserNum += 1;
+			}
 			$stat->totalFansNum = $merchantAsset->totalFans;
 			$stat->riseFansNum += 1;
 		} else {

+ 6 - 3
biz/stat/classes/StatUserMonthClass.php

@@ -11,7 +11,7 @@ class StatUserMonthClass extends BaseClass
 	public static $baseFile = '\biz\stat\models\StatUserMonth';
 	
 	//增加客户数和粉丝数 shish 2020.5.13
-	public static function increase($merchantId, $merchantAsset, $subscribe)
+	public static function increase($merchantId, $merchantAsset, $subscribe, $add)
 	{
 		$time = date("Ym");
 		$addTime = time();
@@ -21,8 +21,11 @@ class StatUserMonthClass extends BaseClass
 			$stat = self::add($addData, true);
 		}
 		if ($subscribe == 1) {
-			$stat->totalUserNum = $merchantAsset->totalUser;
-			$stat->riseUserNum += 1;
+			//如果关注之前已经留有客户信息,无需再增加客户数
+			if ($add) {
+				$stat->totalUserNum = $merchantAsset->totalUser;
+				$stat->riseUserNum += 1;
+			}
 			$stat->totalFansNum = $merchantAsset->totalFans;
 			$stat->riseFansNum += 1;
 		} else {

+ 5 - 9
biz/user/classes/UserClass.php

@@ -143,9 +143,8 @@ class UserClass extends BaseClass
 				}
 			}
 		}
-		
-		//商家客户数粉丝数增加
-		MerchantAssetClass::addUser($merchantId, $subscribe);
+		//客户数粉丝数增加
+		MerchantAssetClass::addUser($merchantId, $subscribe, true);
 		return $user;
 	}
 	
@@ -189,7 +188,7 @@ class UserClass extends BaseClass
 		if (isset($getUserInfo['headImgUrl']) && !empty($getUserInfo['headImgUrl'])) {
 			$data['isFull'] = 1;
 		}
-		/**更新头像**/
+		//更新头像
 		if (isset($originalUser['avatar']) == false || empty($originalUser['avatar'])) {
 			if (isset($getUserInfo['headImgUrl']) && !empty($getUserInfo['headImgUrl'])) {
 				$imgUrl = $getUserInfo['headImgUrl'];
@@ -199,13 +198,10 @@ class UserClass extends BaseClass
 				}
 			}
 		}
-		
-		//商家增加粉丝
+		//增加粉丝数
 		if (isset($originalUser['subscribe']) && $originalUser['subscribe'] == 0 && isset($getUserInfo['subscribe']) && $getUserInfo['subscribe'] == 1) {
-			MerchantAssetClass::addUser($merchantId, 2);
+			MerchantAssetClass::addUser($merchantId, 1, false);
 		}
-		
-		//更新访问时间
 		self::updateById($userId, $data);
 		if (!empty($assetData)) {
 			UserAssetClass::updateByUserId($userId, $assetData);