Authored by hf

code review by hf: fixes some bugs to merge code

@@ -34,7 +34,6 @@ class LoginData @@ -34,7 +34,6 @@ class LoginData
34 $param['area'] = $area; 34 $param['area'] = $area;
35 $param['profile'] = $profile; 35 $param['profile'] = $profile;
36 $param['password'] = $password; 36 $param['password'] = $password;
37 -  
38 if (!empty($shoppingKey)) { 37 if (!empty($shoppingKey)) {
39 $param['shopping_key'] = $shoppingKey; 38 $param['shopping_key'] = $shoppingKey;
40 } 39 }
@@ -65,9 +64,10 @@ class LoginData @@ -65,9 +64,10 @@ class LoginData
65 * @param string $nickname 姓名 64 * @param string $nickname 姓名
66 * @param string $openId 第三方唯一识别码 65 * @param string $openId 第三方唯一识别码
67 * @param string $sourceType 登录方式 66 * @param string $sourceType 登录方式
  67 + * @param string $shoppingKey 未登录用户唯一识别码, 默认为空
68 * @return array 登录返回结果 68 * @return array 登录返回结果
69 */ 69 */
70 - public static function signinByOpenID($nickname, $openId, $sourceType) 70 + public static function signinByOpenID($nickname, $openId, $sourceType, $shoppingKey = null)
71 { 71 {
72 // 构建必传参数 72 // 构建必传参数
73 $param = Yohobuy::param(); 73 $param = Yohobuy::param();
@@ -77,6 +77,9 @@ class LoginData @@ -77,6 +77,9 @@ class LoginData
77 $param['source_type'] = $sourceType; 77 $param['source_type'] = $sourceType;
78 $param['nickname'] = $nickname; 78 $param['nickname'] = $nickname;
79 $param['client_secret'] = Sign::getSign($param); 79 $param['client_secret'] = Sign::getSign($param);
  80 + if (!empty($shoppingKey)) {
  81 + $param['shopping_key'] = $shoppingKey;
  82 + }
80 83
81 return Yohobuy::get(Yohobuy::API_URL, $param); 84 return Yohobuy::get(Yohobuy::API_URL, $param);
82 } 85 }
@@ -782,7 +782,7 @@ class HomeController extends AbstractAction @@ -782,7 +782,7 @@ class HomeController extends AbstractAction
782 $this->auditJumpLogin(); 782 $this->auditJumpLogin();
783 783
784 $this->setTitle('支付中心'); 784 $this->setTitle('支付中心');
785 - $this->setNavHeader('支付中心', Helpers::url('/cart/index/index')); 785 + $this->setNavHeader('支付中心', Helpers::url('/home/orders'));
786 786
787 $orderCode = $this->get('order_code'); 787 $orderCode = $this->get('order_code');
788 if (empty($orderCode)) { 788 if (empty($orderCode)) {
@@ -193,7 +193,8 @@ class LoginController extends AbstractAction @@ -193,7 +193,8 @@ class LoginController extends AbstractAction
193 193
194 $result = array(); 194 $result = array();
195 if (isset($realName, $email, $userId)) { 195 if (isset($realName, $email, $userId)) {
196 - $result = LoginData::signinByOpenID($realName, $userId, 'alipay'); 196 + $shoppingKey = Helpers::getShoppingKeyByCookie();
  197 + $result = LoginData::signinByOpenID($realName, $userId, 'alipay', $shoppingKey);
197 } 198 }
198 199
199 //判定是否需要绑定手机号 200 //判定是否需要绑定手机号
@@ -229,7 +230,8 @@ class LoginController extends AbstractAction @@ -229,7 +230,8 @@ class LoginController extends AbstractAction
229 $partnerInfo = $qqconnect->getUserInfo($access); 230 $partnerInfo = $qqconnect->getUserInfo($access);
230 $result = array(); 231 $result = array();
231 if (!empty($partnerInfo) && isset($partnerInfo['nickname'])) { 232 if (!empty($partnerInfo) && isset($partnerInfo['nickname'])) {
232 - $result = LoginData::signinByOpenID($partnerInfo['nickname'], $access['openid'], 'qq'); 233 + $shoppingKey = Helpers::getShoppingKeyByCookie();
  234 + $result = LoginData::signinByOpenID($partnerInfo['nickname'], $access['openid'], 'qq', $shoppingKey);
233 } 235 }
234 236
235 //判定是否需要绑定手机号 237 //判定是否需要绑定手机号
@@ -266,7 +268,8 @@ class LoginController extends AbstractAction @@ -266,7 +268,8 @@ class LoginController extends AbstractAction
266 268
267 $result = array(); 269 $result = array();
268 if ($partnerInfo && is_array($partnerInfo)) { 270 if ($partnerInfo && is_array($partnerInfo)) {
269 - $result = LoginData::signinByOpenID($partnerInfo['screen_name'], $access['uid'], 'sina'); 271 + $shoppingKey = Helpers::getShoppingKeyByCookie();
  272 + $result = LoginData::signinByOpenID($partnerInfo['screen_name'], $access['uid'], 'sina', $shoppingKey);
270 } 273 }
271 //判定是否需要绑定手机号 274 //判定是否需要绑定手机号
272 if (isset($result['data']['is_bind']) && $result['data']['is_bind'] == 'N') { 275 if (isset($result['data']['is_bind']) && $result['data']['is_bind'] == 'N') {