fetchMinaOpenid.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. defined('ONLY_ONLY_ONLY') or exit('Access Denied');
  3. define('LOG_CATALOG',basename(__FILE__));
  4. try{
  5. $subSystem=intval(SUBSYS_CAPITAL2_MINA);
  6. $baseUser=bizwx_fetchMinaOpenid($subSystem);
  7. $FOREND_TOKEN=$baseUser["FOREND_TOKEN"];
  8. $GPC=input_param_handle(false);
  9. $ajaxdata = input_getPostObj();
  10. $regmode = isset($ajaxdata["regmode"]) ? $ajaxdata["regmode"] : $GPC["regmode"];
  11. if(empty(trim($regmode))){
  12. /***UPSERT手机用户对应的业务用户记录**start***/
  13. $sqlTemp="";
  14. $sqlParam=array();
  15. $sqlParam[":nowtime"]=time();
  16. $sqlParam[":base_userid"]=$baseUser["id"];
  17. $sqlParam[":remark"]="[" . date("Y-m-d H:i:s", time()) . "] 初始化注册 \n";
  18. $sqlTemp.=" set @handle_id=0; ";
  19. $sqlTemp.=" select @handle_id:=`id` from biz_trader2 where `base_userid`=:base_userid limit 1;";
  20. $sqlTemp.=" insert into biz_trader2 ( `createtime`,`base_userid`, remark )";
  21. $sqlTemp.=" select :nowtime, :base_userid, :remark from dual where ifnull(@handle_id,0)=0 ;";
  22. $sqlTemp.=" update biz_trader2 SET `updatetime`=:nowtime, remark=concat(:remark,ifnull(remark,'')) where ifnull(@handle_id,0)!=0 and `base_userid`=:base_userid;";
  23. $sqlTemp.=" select @biz_userid:=id from biz_trader2 where `base_userid`=:base_userid limit 1;";
  24. $sqlTemp.=" update base_user SET `updatetime`=:nowtime, biz_userid=ifnull(@biz_userid,0) where id=:base_userid;";
  25. $sqlTemp.=" select * from biz_trader2 where `base_userid`=:base_userid limit 1;";
  26. $dataset=pdo_query3($sqlTemp,$sqlParam);
  27. /***UPSERT手机用户对应的业务用户记录**finish***/
  28. $bizTrader2=$dataset[count($dataset)-1][0];
  29. if(empty($bizTrader2)) throw new GeneralException("","异常");
  30. }else{
  31. $bizTrader2=pdo_fetch("select zu.*,bu.id as buid,bu.wxmina_appid,bu.wxmina_openid
  32. from biz_trader2 as zu
  33. left join base_user as bu on bu.id=zu.base_userid
  34. where zu.`base_userid`=:base_userid limit 1;",array(":base_userid"=>$baseUser["id"],));
  35. }
  36. $ajaxRes->Result=array(
  37. "forendToken"=>$FOREND_TOKEN,
  38. "baseUser"=>$baseUser,
  39. "bizTrader2"=>$bizTrader2,
  40. );
  41. }catch(Throwable $e){
  42. $friendMsg=get_class($e)=='GeneralException'?$e->friendmsg:$e->getMessage();
  43. throw new GeneralException("General","获取用户登录信息时发生异常:".$friendMsg,LOG_CATALOG,0,$e);
  44. }