shish 6 gadi atpakaļ
vecāks
revīzija
cfd1a9056a

+ 1 - 3
app/business/controllers/BaseController.php

@@ -38,13 +38,11 @@ class BaseController extends PublicController
 		if (in_array($action->id, $this->withoutLogin)) {
 			$this->validate = true;
 		}
-		
+
 		if ($this->validate == false) {
 			util::notLogin();
 		}
-
 		$admin = AdminService::getById($adminId);
-
 		if (empty($admin)) {
 			util::fail('没有找到管理员,但已经获取客户ID:' . $adminId);
 		}

+ 153 - 0
app/saas/controllers/WxOpenController.php

@@ -0,0 +1,153 @@
+<?php
+
+namespace saas\controllers;
+
+use biz\merchant\services\MerchantService;
+use biz\saas\services\ApplyService;
+use common\components\util;
+use Yii;
+use yii\web\Controller;
+use common\components\wxUtil;
+
+class ApplyController extends BaseController
+{
+	
+	public function actionBindOpen()
+	{
+		$merchantId = Yii::$app->request->get('merchantId', 0);
+		$merchant = MerchantService::getMerchantById($merchantId);
+		$wxAppId = $merchant['wxAppId'];
+		$miniAppId = $merchant['miniAppId'];
+		$open_appid = $merchant['openAppId'];
+		
+		echo "<pre>";
+		
+		$id = Yii::$app->request->get('id', 0);
+		//创建平台,并将公众号绑定到平台
+		if ($id == 1) {
+			wxUtil::createOpenAccount($wxAppId, $merchant);
+			$return = wxUtil::getOpenAccount($wxAppId, $merchant);
+			print_r($return);
+			if ($return['errcode'] == 0) {
+				$openAppId = $return['open_appid'];
+				MerchantService::updateById($merchantId, ['openAppId' => $openAppId]);
+			}
+		}
+		//将小程序绑定到平台
+		if ($id == 2) {
+			$openAppId = $merchant['openAppId'];
+			$r = wxUtil::bindOpenAccount($miniAppId, $openAppId, $merchant, true);
+			print_r($r);
+		}
+		//查询公众号 小程序的绑定情况
+		if ($id == 3) {
+			$return = wxUtil::getOpenAccount($wxAppId, $merchant);
+			print_r($return);
+			$return = wxUtil::getOpenAccount($miniAppId, $merchant, true);
+			print_r($return);
+		}
+		
+		//设置小程序服务器域名
+		if ($id == 4) {
+			wxUtil::setDomain($merchant);
+			wxUtil::setWebViewDomain($merchant);
+		}
+		
+		//为授权的小程序帐号上传小程序代码
+		if ($id == 5) {
+			$tId = $_GET['tId'];
+			wxUtil::miniCommit($merchant, $tId);
+		}
+		
+		//获取小程序体验码
+		if ($id == 6) {
+			wxUtil::getExperienceQrCode($merchant);
+		}
+		
+		//获取授权小程序帐号已设置的类目
+		if ($id == 7) {
+			wxUtil::getMiniCategory($merchant);
+		}
+		
+		//获取小程序的第三方提交代码的页面配置
+		if ($id == 8) {
+			wxUtil::getMiniPage($merchant);
+		}
+		
+		//将第三方提交的代码包提交审核
+		if ($id == 9) {
+			wxUtil::miniSubmitAudit($merchant);
+		}
+		
+		//查询最新一次提交的审核状态
+		if ($id == 10) {
+			wxUtil::miniGetLatestAuditStatus($merchant);
+		}
+		
+		//发布已通过审核的小程序
+		if ($id == 11) {
+			wxUtil::miniRelease($merchant);
+		}
+		
+		//撤回审核
+		if ($id == 12) {
+			wxUtil::rollbackCheck($merchant);
+		}
+		//生成 申请会员页 的小程序码
+		if ($id == 13) {
+			wxUtil::generateMemberCode($merchant);
+		}
+		//解绑小程序和公众号绑定的平台
+		if ($id == 14) {
+			wxUtil::unbindAccount($merchant);
+			wxUtil::unbindMiniProgram($merchant);
+		}
+		Yii::$app->end();
+		
+		$r = wxUtil::bindOpenAccount($miniAppId, $open_appid, $merchant, true);
+		print_r($r);
+		echo $miniAppId . ' ' . $open_appid . ' ';
+		
+		$return = wxUtil::getOpenAccount($wxAppId, $merchant);
+		print_r($return);
+		die;
+		
+		$return = wxUtil::createOpenAccount($wxAppId, $merchant);
+		print_r($return);
+		die;
+		
+		$r = wxUtil::bindOpenAccount($miniAppId, $open_appid, $merchant);
+		print_r($r);
+		echo $miniAppId . ' ' . $open_appid . ' ';
+		
+		$return = wxUtil::getOpenAccount($wxAppId, $merchant);
+		print_r($return);
+		$return = wxUtil::getOpenAccount($miniAppId, $merchant);
+		print_r($return);
+		die;
+		
+		if ($return['errcode'] == 0) {
+			$open_appid = isset($return['open_appid']) ? $return['open_appid'] : '';
+		} else {
+			$return = wxUtil::createOpenAccount($wxAppId, $merchant);
+			if ($return['errcode'] == 0) {
+				$open_appid = isset($return['open_appid']) ? $return['open_appid'] : '';
+			}
+		}
+		echo "<br />open_appid:" . $open_appid . "<br />";
+		if (!empty($open_appid)) {
+			xhMerchantService::updateById($merchantId, ['openAppId' => $open_appid]);
+			$r = wxUtil::bindOpenAccount($miniAppId, $open_appid, $merchant);
+			echo "绑定小程序结果:<br />";
+			print_r($r);
+		}
+		echo "<br /><br />";
+		$return = wxUtil::getOpenAccount($wxAppId, $merchant);
+		echo "微信appId:{$wxAppId}<br />";
+		print_r($return);
+		$return = wxUtil::getOpenAccount($miniAppId, $merchant);
+		echo "<br />小程序appId:{$miniAppId}<br />";
+		print_r($return);
+	}
+	
+}

+ 3 - 9
app/www/controllers/WxOpenController.php

@@ -132,13 +132,7 @@ class WxOpenController extends PublicController
 		
 		//小程序
 		if (isset($authorize_info['MiniProgramInfo']) && !empty($authorize_info['MiniProgramInfo'])) {
-			$merchant = xhMerchantService::getByCondition(['miniAppId' => $authorizeAppId]);
-			if (empty($merchant)) {
-				Yii::info('没有小程序信息 appId:' . $authorizeAppId);
-				util::stop('没有小程序信息 appId:' . $authorizeAppId);
-			}
-			$merchantId = $merchant['id'];
-			xhMerchantExtendService::updateByMerchantId($merchantId, ['miniAccessToken' => $authorize_access_token, 'miniAccessTokenTime' => $accessTokenTime, 'miniRefreshToken' => $authorize_refresh_token]);
+			xhMerchantExtendService::updateByMerchantId($id, ['miniAppId' => $authorizeAppId, 'miniAccessToken' => $authorize_access_token, 'miniAccessTokenTime' => $accessTokenTime, 'miniRefreshToken' => $authorize_refresh_token]);
 			Yii::info('小程序信息更新成功:' . json_encode($authorize_info));
 			util::stop("小程序信息更新成功");
 		}
@@ -155,11 +149,11 @@ class WxOpenController extends PublicController
 		$upData['status'] = 1;//审核通过
 		xhMerchantService::updateById($id, $upData);
 		MerchantExtendClass::updateByCondition(['merchantId' => $id], ['wxAppId' => $authorizeAppId]);
-		
+
 		//还没有完成初始化先进行初始化
 		$extend = MerchantExtendClass::getByMerchantId($id);
 		if (isset($extend['init']) && $extend['init'] == 0) {
-			$data = ['merchantId' => $merchantId];
+			$data = ['merchantId' => $id];
 			$producer = Yii::$app->rabbitmq->getProducer('openShopInitProducer');
 			$msg = serialize($data);
 			$producer->publish($msg, 'openShopInitExchange', 'openShopInitRoute');