Browse Source

支付成功获取unionId

shish 6 years ago
parent
commit
92669d4e5e
1 changed files with 10 additions and 1 deletions
  1. 10 1
      biz/order/classes/OrderClass.php

+ 10 - 1
biz/order/classes/OrderClass.php

@@ -156,15 +156,24 @@ class OrderClass extends BaseClass
 		}
 		return $reachTime;
 	}
-
+	
 	//支付成功获取unionId shish 2020.5.12
 	public static function payToUpdateUnionId($merchant, $merchantExtend, $orderSn, $user)
 	{
 		$mcId = $merchantExtend['wxPayMerchantId'];
 		$miniOpenId = isset($user['miniOpenId']) ? $user['miniOpenId'] : '';
 		$unionId = isset($user['unionId']) ? $user['unionId'] : '';
+		$userId = $user['id'];
 		if (empty($unionId)) {
 			$unionId = miniUtil::getPaidUnionId($merchant, $miniOpenId, $mcId, (string)$orderSn, 0);
+			if (!empty($unionId)) {
+				$findUser = UserClass::getByUnionId($unionId);
+				if (empty($findUser)) {
+					UserClass::updateByCondition(['userId' => $userId], ['unionId' => $unionId]);
+				} else {
+					UserClass::mergeUser($findUser, $user);
+				}
+			}
 		}
 	}